More lemmas about irreducible elements #
theorem not_addIrreducible_nsmul {M : Type u_2} [AddMonoid M] {x : M} {n : ℕ} :
n ≠ 1 → ¬AddIrreducible (n • x)
theorem MulEquiv.irreducible_iff {F : Type u_1} {M : Type u_2} {N : Type u_3} [Monoid M] [Monoid N] {x : M} [EquivLike F M N] [MulEquivClass F M N] (f : F) :
theorem AddEquiv.addIrreducible_iff {F : Type u_1} {M : Type u_2} {N : Type u_3} [AddMonoid M] [AddMonoid N] {x : M} [EquivLike F M N] [AddEquivClass F M N] (f : F) :
theorem Irreducible.map {F : Type u_1} {M : Type u_2} {N : Type u_3} [Monoid M] [Monoid N] {x : M} [EquivLike F M N] [MulEquivClass F M N] (f : F) :
Irreducible x → Irreducible (f x)
Irreducibility is preserved by multiplicative equivalences.
Note that surjective + local hom is not enough. Consider the additive monoids M = ℕ ⊕ ℕ, N = ℕ,
with x surjective local (additive) hom f : M →+ N sending (m, n) to 2m + n.
It is local because the only add unit in N is 0, with preimage {(0, 0)} also an add unit.
Then x = (1, 0) is irreducible in M, but f x = 2 = 1 + 1 is not irreducible in N.
theorem AddIrreducible.map {F : Type u_1} {M : Type u_2} {N : Type u_3} [AddMonoid M] [AddMonoid N] {x : M} [EquivLike F M N] [AddEquivClass F M N] (f : F) :
AddIrreducible x → AddIrreducible (f x)
Irreducibility is preserved by additive equivalences.
theorem Irreducible.of_map {F : Type u_1} {M : Type u_2} {N : Type u_3} [Monoid M] [Monoid N] {f : F} {x : M} [FunLike F M N] [MonoidHomClass F M N] [IsLocalHom f] (hfx : Irreducible (f x)) :