English
Let f: S → R be injective. If R has a NonUnitalRing structure (i.e., with addition, multiplication, and unary minus) and the usual modules, then S inherits a NonUnitalRing structure pulled back along f, with f preserving the operations.
Русский
Пусть f: S → R инъективна. Если R обладает структурой NonUnitalRing, то S перенимает её через f: S получает структуру NonUnitalRing, и f сохраняет операции.
LaTeX
$$$\\exists\\, \\mathcal{S}: \\text{NonUnitalRing}(S),\\quad f(0)=0,\\quad \\forall x,y, f(x+y)=f(x)+f(y),\\quad \\forall x,y, f(x\\cdot y)=f(x)\\cdot f(y),\\quad \\forall x, f(-x)=-f(x),\\quad \\forall x, y, f(x-y)=f(x)-f(y),\\quad \\forall n,x, f(n\\cdot x)=n\\cdot f(x).$$$
Lean4
/-- Pullback a `NonUnitalRing` instance along an injective function. -/
-- See note [reducible non-instances]
protected abbrev nonUnitalRing [NonUnitalRing R] (zero : f 0 = 0) (add : ∀ x y, f (x + y) = f x + f y)
(mul : ∀ x y, f (x * y) = f x * f y) (neg : ∀ x, f (-x) = -f x) (sub : ∀ x y, f (x - y) = f x - f y)
(nsmul : ∀ (n : ℕ) (x), f (n • x) = n • f x) (zsmul : ∀ (n : ℤ) (x), f (n • x) = n • f x) : NonUnitalRing S
where
toNonUnitalNonAssocRing := hf.nonUnitalNonAssocRing f zero add mul neg sub nsmul zsmul
__ := hf.nonUnitalSemiring f zero add mul nsmul