English
A type is cancellative if there exists an injective map to a cancellative target preserving the multiplication; equivalently both left and right cancellativity follow.
Русский
Тип является отменяемым, если существует инъективное отображение в отменяемый мономи, сохраняющее умножение; эквивалентно левую и правую отменяемость.
LaTeX
$$$$ \\text{If } f: M_1 \\to M_2 \\text{ is injective and preserves multiplication, and } M_2 \\text{ is cancellative}, \\text{ then } M_1 \\text{ is cancellative.} $$$$
Lean4
/-- A type has cancellative multiplication, if it admits an injective map that
preserves `*` to another type with cancellative multiplication. -/
@[to_additive /-- A type has cancellative addition, if it admits an injective map that
preserves `+` to another type with cancellative addition. -/
]
protected theorem isCancelMul [Mul M₂] [IsCancelMul M₂] (f : M₁ → M₂) (hf : Injective f)
(mul : ∀ x y, f (x * y) = f x * f y) : IsCancelMul M₁
where
__ := hf.isLeftCancelMul f mul
__ := hf.isRightCancelMul f mul