Equivalences conjugating (· + a)
to (· + b)
#
In this file we define AddConstEquiv G H a b
(notation: G ≃+c[a, b] H
)
to be the type of equivalences such that ∀ x, f (x + a) = f x + b
.
We also define the corresponding typeclass and prove some basic properties.
structure
AddConstEquiv
(G : Type u_1)
(H : Type u_2)
[Add G]
[Add H]
(a : G)
(b : H)
extends G ≃ H, AddConstMap G H a b :
Type (max u_1 u_2)
An equivalence between G
and H
conjugating (· + a)
to (· + b)
,
denoted as G ≃+c[a, b] H
.
- toFun : G → H
- invFun : H → G
- left_inv : Function.LeftInverse self.invFun self.toFun
- right_inv : Function.RightInverse self.invFun self.toFun
Instances For
An equivalence between G
and H
conjugating (· + a)
to (· + b)
,
denoted as G ≃+c[a, b] H
.
Equations
Instances For
theorem
AddConstEquiv.toEquiv_injective
{G : Type u_1}
{H : Type u_2}
[Add G]
[Add H]
{a : G}
{b : H}
:
instance
AddConstEquiv.instEquivLike
{G : Type u_4}
{H : Type u_5}
[Add G]
[Add H]
{a : G}
{b : H}
:
EquivLike (AddConstEquiv G H a b) G H
Equations
instance
AddConstEquiv.instAddConstMapClass
{G : Type u_4}
{H : Type u_5}
[Add G]
[Add H]
{a : G}
{b : H}
:
AddConstMapClass (AddConstEquiv G H a b) G H a b
theorem
AddConstEquiv.ext
{G : Type u_1}
{H : Type u_2}
[Add G]
[Add H]
{a : G}
{b : H}
{e₁ e₂ : AddConstEquiv G H a b}
(h : ∀ (x : G), e₁ x = e₂ x)
:
theorem
AddConstEquiv.ext_iff
{G : Type u_1}
{H : Type u_2}
[Add G]
[Add H]
{a : G}
{b : H}
{e₁ e₂ : AddConstEquiv G H a b}
:
@[simp]
theorem
AddConstEquiv.coe_toEquiv
{G : Type u_1}
{H : Type u_2}
[Add G]
[Add H]
{a : G}
{b : H}
(e : AddConstEquiv G H a b)
:
def
AddConstEquiv.symm
{G : Type u_1}
{H : Type u_2}
[Add G]
[Add H]
{a : G}
{b : H}
(e : AddConstEquiv G H a b)
:
AddConstEquiv H G b a
Inverse map of an AddConstEquiv
, as an AddConstEquiv
.
Equations
Instances For
def
AddConstEquiv.Simps.symm_apply
{G : Type u_1}
{H : Type u_2}
[Add G]
[Add H]
{a : G}
{b : H}
(e : AddConstEquiv G H a b)
:
H → G
A custom projection for simps
.
Equations
Instances For
@[simp]
theorem
AddConstEquiv.symm_symm
{G : Type u_1}
{H : Type u_2}
[Add G]
[Add H]
{a : G}
{b : H}
(e : AddConstEquiv G H a b)
:
@[simp]
def
AddConstEquiv.trans
{G : Type u_1}
{H : Type u_2}
{K : Type u_3}
[Add G]
[Add H]
[Add K]
{a : G}
{b : H}
{c : K}
(e₁ : AddConstEquiv G H a b)
(e₂ : AddConstEquiv H K b c)
:
AddConstEquiv G K a c
Composition of AddConstEquiv
s, as an AddConstEquiv
.
Equations
Instances For
@[simp]
theorem
AddConstEquiv.trans_apply
{G : Type u_1}
{H : Type u_2}
{K : Type u_3}
[Add G]
[Add H]
[Add K]
{a : G}
{b : H}
{c : K}
(e₁ : AddConstEquiv G H a b)
(e₂ : AddConstEquiv H K b c)
(a✝ : G)
:
@[simp]
theorem
AddConstEquiv.trans_toEquiv
{G : Type u_1}
{H : Type u_2}
{K : Type u_3}
[Add G]
[Add H]
[Add K]
{a : G}
{b : H}
{c : K}
(e₁ : AddConstEquiv G H a b)
(e₂ : AddConstEquiv H K b c)
:
@[simp]
theorem
AddConstEquiv.trans_refl
{G : Type u_1}
{H : Type u_2}
[Add G]
[Add H]
{a : G}
{b : H}
(e : AddConstEquiv G H a b)
:
@[simp]
theorem
AddConstEquiv.refl_trans
{G : Type u_1}
{H : Type u_2}
[Add G]
[Add H]
{a : G}
{b : H}
(e : AddConstEquiv G H a b)
:
@[simp]
theorem
AddConstEquiv.coe_symm_toEquiv
{G : Type u_1}
{H : Type u_2}
[Add G]
[Add H]
{a : G}
{b : H}
(e : AddConstEquiv G H a b)
:
@[simp]
theorem
AddConstEquiv.toEquiv_trans
{G : Type u_1}
{H : Type u_2}
{K : Type u_3}
[Add G]
[Add H]
[Add K]
{a : G}
{b : H}
{c : K}
(e₁ : AddConstEquiv G H a b)
(e₂ : AddConstEquiv H K b c)
:
Equations
Equations
Equations
Equations
Equations
Equations
Equations
Projection from G ≃+c[a, a] G
to permutations G ≃ G
, as a monoid homomorphism.
Equations
Instances For
@[simp]
Projection from G ≃+c[a, a] G
to G →+c[a, a] G
, as a monoid homomorphism.
Equations
Instances For
@[simp]
theorem
AddConstEquiv.toAddConstMapHom_apply
{G : Type u_1}
[Add G]
{a : G}
(self : AddConstEquiv G G a a)
:
Group equivalence between G ≃+c[a, a] G
and the units of G →+c[a, a] G
.
Equations
Instances For
@[simp]
theorem
AddConstEquiv.equivUnits_symm_apply_apply
{G : Type u_1}
[Add G]
{a : G}
(u : (AddConstMap G G a a)ˣ)
:
@[simp]
theorem
AddConstEquiv.coe_val_equivUnits_apply
{G : Type u_1}
[Add G]
{a : G}
(a✝ : AddConstEquiv G G a a)
(a✝¹ : G)
:
@[simp]
theorem
AddConstEquiv.equivUnits_symm_apply_symm_apply
{G : Type u_1}
[Add G]
{a : G}
(u : (AddConstMap G G a a)ˣ)
:
@[simp]
theorem
AddConstEquiv.coe_val_inv_equivUnits_apply
{G : Type u_1}
[Add G]
{a : G}
(a✝ : AddConstEquiv G G a a)
(a✝¹ : G)
: