Multiplicative and additive equivalence acting on units. #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
An additive group is isomorphic to its group of additive units
A multiplicative equivalence of monoids defines a multiplicative equivalence of their groups of units.
Equations
- units.map_equiv h = {to_fun := (units.map h.to_monoid_hom).to_fun, inv_fun := ⇑(units.map h.symm.to_monoid_hom), left_inv := _, right_inv := _, map_mul' := _}
Left addition in an add_group is a permutation of the underlying type.
Equations
- equiv.add_left a = (⇑to_add_units a).add_left
Extra simp lemma that dsimp can use. simp will never use this.
Extra simp lemma that dsimp can use. simp will never use this.
Extra simp lemma that dsimp can use. simp will never use this.
Extra simp lemma that dsimp can use. simp will never use this.
A version of equiv.add_left a (-b) that is defeq to a - b.
A version of equiv.mul_left a b⁻¹ that is defeq to a / b.
A version of equiv.add_right (-a) b that is defeq to b - a.
A version of equiv.mul_right a⁻¹ b that is defeq to b / a.
When the add_group is commutative, equiv.neg is an add_equiv.
Equations
- add_equiv.neg G = {to_fun := has_neg.neg (sub_neg_monoid.to_has_neg G), inv_fun := has_neg.neg (sub_neg_monoid.to_has_neg G), left_inv := _, right_inv := _, map_add' := _}
In a division_comm_monoid, equiv.inv is a mul_equiv. There is a variant of this
mul_equiv.inv' G : G ≃* Gᵐᵒᵖ for the non-commutative case.
Equations
- mul_equiv.inv G = {to_fun := has_inv.inv (div_inv_monoid.to_has_inv G), inv_fun := has_inv.inv (div_inv_monoid.to_has_inv G), left_inv := _, right_inv := _, map_mul' := _}