Torsion-free monoids and groups #
This file proves lemmas about torsion-free monoids.
A monoid M is torsion-free if n • · : M → M is injective for all non-zero natural numbers n.
theorem AddCommute.eq_of_nsmul_eq_nsmul {M : Type u_1} [AddMonoid M] [IsAddTorsionFree M] {n : ℕ} {a b : M} (hab : AddCommute a b) (hn : n ≠ 0) (habn : n • a = n • b) :
theorem AddCommute.nsmul_right_inj {M : Type u_1} [AddMonoid M] [IsAddTorsionFree M] {n : ℕ} {a b : M} (hab : AddCommute a b) (hn : n ≠ 0) :
See sq_eq_one_iff for a version that holds in rings.
theorem AddCommute.eq_of_zsmul_eq_zsmul {G : Type u_2} [AddGroup G] {n : ℤ} {a b : G} [IsAddTorsionFree G] (hab : AddCommute a b) (hn : n ≠ 0) (habn : n • a = n • b) :
theorem AddCommute.zsmul_right_inj {G : Type u_2} [AddGroup G] {n : ℤ} {a b : G} [IsAddTorsionFree G] (hab : AddCommute a b) (hn : n ≠ 0) :
theorem zpow_left_injective {G : Type u_2} [Group G] [HasUniqueRoots G] {n : ℤ} (hn : n ≠ 0) :
Function.Injective fun (a : G) => a ^ n
theorem zsmul_right_injective {G : Type u_2} [AddGroup G] [HasUniqueDiv G] {n : ℤ} (hn : n ≠ 0) :
Function.Injective fun (a : G) => n • a
@[deprecated zpow_left_inj (since := "2026-09-30")]
theorem zpow_eq_zpow_iff' {G : Type u_2} [Group G] [HasUniqueRoots G] {n : ℤ} {a b : G} (hn : n ≠ 0) :
Alias of zpow_left_inj.
@[deprecated zsmul_right_inj (since := "2026-09-30")]
theorem zsmul_eq_zsmul_iff' {G : Type u_2} [AddGroup G] [HasUniqueDiv G] {n : ℤ} {a b : G} (hn : n ≠ 0) :
Alias of zsmul_right_inj.