Conjugacy of group elements #
See also mul_aut.conj
and quandle.conj
.
@[simp]
theorem
conj_injective
{α : Type u}
[group α]
{x : α} :
function.injective (λ (g : α), (x * g) * x⁻¹)
The quotient type of conjugacy classes of a group.
Equations
- conj_classes α = quotient (is_conj.setoid α)
@[protected]
The canonical quotient map from a monoid α
into the conj_classes
of α
Equations
- conj_classes.mk a = ⟦a⟧
@[protected, instance]
theorem
conj_classes.mk_eq_mk_iff_is_conj
{α : Type u}
[monoid α]
{a b : α} :
conj_classes.mk a = conj_classes.mk b ↔ is_conj a b
theorem
conj_classes.quot_mk_eq_mk
{α : Type u}
[monoid α]
(a : α) :
quot.mk setoid.r a = conj_classes.mk a
theorem
conj_classes.forall_is_conj
{α : Type u}
[monoid α]
{p : conj_classes α → Prop} :
(∀ (a : conj_classes α), p a) ↔ ∀ (a : α), p (conj_classes.mk a)
@[protected, instance]
theorem
conj_classes.exists_rep
{α : Type u}
[monoid α]
(a : conj_classes α) :
∃ (a0 : α), conj_classes.mk a0 = a
def
conj_classes.map
{α : Type u}
{β : Type v}
[monoid α]
[monoid β]
(f : α →* β) :
conj_classes α → conj_classes β
A monoid_hom
maps conjugacy classes of one group to conjugacy classes of another.
Equations
- conj_classes.map f = quotient.lift (conj_classes.mk ∘ ⇑f) _
@[protected, instance]
def
conj_classes.fintype
{α : Type u}
[monoid α]
[fintype α]
[decidable_rel is_conj] :
fintype (conj_classes α)
Equations
The bijection between a comm_group
and its conj_classes
.
Equations
- conj_classes.mk_equiv = {to_fun := conj_classes.mk (comm_monoid.to_monoid α), inv_fun := quotient.lift id conj_classes.mk_equiv._proof_1, left_inv := _, right_inv := _}
Given an element a
, conjugates a
is the set of conjugates.
Equations
- conjugates_of a = {b : α | is_conj a b}
theorem
is_conj_iff_conjugates_of_eq
{α : Type u}
[monoid α]
{a b : α} :
is_conj a b ↔ conjugates_of a = conjugates_of b
Given a conjugacy class a
, carrier a
is the set it represents.
Equations
- conj_classes.carrier = quotient.lift conjugates_of conj_classes.carrier._proof_1
theorem
conj_classes.mem_carrier_mk
{α : Type u}
[monoid α]
{a : α} :
a ∈ (conj_classes.mk a).carrier
theorem
conj_classes.mem_carrier_iff_mk_eq
{α : Type u}
[monoid α]
{a : α}
{b : conj_classes α} :
a ∈ b.carrier ↔ conj_classes.mk a = b
theorem
conj_classes.carrier_eq_preimage_mk
{α : Type u}
[monoid α]
{a : conj_classes α} :
a.carrier = conj_classes.mk ⁻¹' {a}