Lemmas about commuting pairs of elements involving units. #
theorem AddCommute.addUnits_neg_right {M : Type u_1} [AddMonoid M] {a : M} {u : AddUnits M} :
AddCommute a ↑u → AddCommute a ↑(-u)
@[simp]
theorem AddCommute.addUnits_neg_left {M : Type u_1} [AddMonoid M] {a : M} {u : AddUnits M} :
AddCommute (↑u) a → AddCommute (↑(-u)) a
@[simp]
theorem AddCommute.addUnits_val {M : Type u_1} [AddMonoid M] {u₁ u₂ : AddUnits M} :
AddCommute u₁ u₂ → AddCommute ↑u₁ ↑u₂
theorem AddCommute.addUnits_of_val {M : Type u_1} [AddMonoid M] {u₁ u₂ : AddUnits M} :
AddCommute ↑u₁ ↑u₂ → AddCommute u₁ u₂
@[simp]
def AddUnits.leftOfAdd {M : Type u_1} [AddMonoid M] (u : AddUnits M) (a b : M) (hu : a + b = ↑u) (hc : AddCommute a b) :
AddUnits M
If the sum of two commuting elements is an additive unit, then the left summand is an additive unit.
Instances For
def AddUnits.rightOfAdd {M : Type u_1} [AddMonoid M] (u : AddUnits M) (a b : M) (hu : a + b = ↑u) (hc : AddCommute a b) :
AddUnits M
If the sum of two commuting elements is an additive unit, then the right summand is an additive unit.
Equations
- u.rightOfAdd a b hu hc = u.leftOfAdd b a ⋯ ⋯
Instances For
@[simp]
theorem AddCommute.addUnits_zsmul_right {M : Type u_1} [AddMonoid M] {a : M} {u : AddUnits M} (h : AddCommute a ↑u) (m : ℤ) :
AddCommute a ↑(m • u)
@[simp]
theorem AddCommute.addUnits_zsmul_left {M : Type u_1} [AddMonoid M] {a : M} {u : AddUnits M} (h : AddCommute (↑u) a) (m : ℤ) :
AddCommute (↑(m • u)) a
If a ^ n = 1, n ≠ 0, then a is a unit.
Equations
- Units.ofPowEqOne a n ha hn = Units.ofPow 1 a hn ha
Instances For
def AddUnits.ofNSMulEqZero {M : Type u_1} [AddMonoid M] (a : M) (n : ℕ) (ha : n • a = 0) (hn : n ≠ 0) :
AddUnits M
If n • x = 0, n ≠ 0, then x is an additive unit.
Equations
- AddUnits.ofNSMulEqZero a n ha hn = AddUnits.ofNSMul 0 a hn ha
Instances For
theorem AddCommute.sub_eq_sub_iff_of_isAddUnit {M : Type u_1} [SubtractionMonoid M] {a b c d : M} (hbd : AddCommute b d) (hb : IsAddUnit b) (hd : IsAddUnit d) :