Multiplicative and additive equivalence acting on units. #
Left addition of an additive unit is a permutation of the underlying type.
Equations
- AddUnits.addLeft u = { toFun := fun (x : M) => ↑u + x, invFun := fun (x : M) => ↑(-u) + x, left_inv := ⋯, right_inv := ⋯ }
Instances For
Left multiplication by a unit of a monoid is a permutation of the underlying type.
Equations
- Units.mulLeft u = { toFun := fun (x : M) => ↑u * x, invFun := fun (x : M) => ↑u⁻¹ * x, left_inv := ⋯, right_inv := ⋯ }
Instances For
Right addition of an additive unit is a permutation of the underlying type.
Equations
- AddUnits.addRight u = { toFun := fun (x : M) => x + ↑u, invFun := fun (x : M) => x + ↑(-u), left_inv := ⋯, right_inv := ⋯ }
Instances For
Right multiplication by a unit of a monoid is a permutation of the underlying type.
Equations
- Units.mulRight u = { toFun := fun (x : M) => x * ↑u, invFun := fun (x : M) => x * ↑u⁻¹, left_inv := ⋯, right_inv := ⋯ }
Instances For
Left addition in an AddGroup
is a permutation of the underlying type.
Equations
- Equiv.addLeft a = AddUnits.addLeft (toAddUnits a)
Instances For
Left multiplication in a Group
is a permutation of the underlying type.
Equations
- Equiv.mulLeft a = Units.mulLeft (toUnits a)
Instances For
Extra simp lemma that dsimp
can use. simp
will never use this.
Extra simp lemma that dsimp
can use. simp
will never use this.
Right addition in an AddGroup
is a permutation of the underlying type.
Equations
- Equiv.addRight a = AddUnits.addRight (toAddUnits a)
Instances For
Right multiplication in a Group
is a permutation of the underlying type.
Equations
- Equiv.mulRight a = Units.mulRight (toUnits a)
Instances For
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.addLeft a (-b)
that is defeq to a - b
.
Equations
- Equiv.subLeft a = { toFun := fun (b : G) => a - b, invFun := fun (b : G) => -b + a, left_inv := ⋯, right_inv := ⋯ }
Instances For
A version of Equiv.mulLeft a b⁻¹
that is defeq to a / b
.
Equations
- Equiv.divLeft a = { toFun := fun (b : G) => a / b, invFun := fun (b : G) => b⁻¹ * a, left_inv := ⋯, right_inv := ⋯ }
Instances For
A version of Equiv.addRight (-a) b
that is defeq to b - a
.
Equations
- Equiv.subRight a = { toFun := fun (b : G) => b - a, invFun := fun (b : G) => b + a, left_inv := ⋯, right_inv := ⋯ }
Instances For
A version of Equiv.mulRight a⁻¹ b
that is defeq to b / a
.
Equations
- Equiv.divRight a = { toFun := fun (b : G) => b / a, invFun := fun (b : G) => b * a, left_inv := ⋯, right_inv := ⋯ }
Instances For
In a DivisionCommMonoid
, Equiv.inv
is a MulEquiv
. There is a variant of this
MulEquiv.inv' G : G ≃* Gᵐᵒᵖ
for the non-commutative case.
Equations
- MulEquiv.inv G = let __src := Equiv.inv G; { toEquiv := { toFun := Inv.inv, invFun := Inv.inv, left_inv := ⋯, right_inv := ⋯ }, map_mul' := ⋯ }