The abelianization of a group #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
This file defines the commutator and the abelianization of a group. It furthermore prepares for the
result that the abelianization is left adjoint to the forgetful functor from abelian groups to
groups, which can be found in algebra/category/Group/adjunctions
.
Main definitions #
commutator
: defines the commutator of a groupG
as a subgroup ofG
.abelianization
: defines the abelianization of a groupG
as the quotient of a group by its commutator subgroup.abelianization.map
: lifts a group homomorphism to a homomorphism between the abelianizationsmul_equiv.abelianization_congr
: Equivalent groups have equivalent abelianizations
The commutator subgroup of a group G is the normal subgroup
generated by the commutators [p,q]=p*q*p⁻¹*q⁻¹
.
Instances for commutator
Instances for ↥commutator
The abelianization of G is the quotient of G by its commutator subgroup.
Equations
- abelianization G = (G ⧸ commutator G)
Instances for abelianization
Equations
- abelianization.comm_group G = {mul := group.mul (quotient_group.quotient.group (commutator G)), mul_assoc := _, one := group.one (quotient_group.quotient.group (commutator G)), one_mul := _, mul_one := _, npow := group.npow (quotient_group.quotient.group (commutator G)), npow_zero' := _, npow_succ' := _, inv := group.inv (quotient_group.quotient.group (commutator G)), div := group.div (quotient_group.quotient.group (commutator G)), div_eq_mul_inv := _, zpow := group.zpow (quotient_group.quotient.group (commutator G)), zpow_zero' := _, zpow_succ' := _, zpow_neg' := _, mul_left_inv := _, mul_comm := _}
Equations
- abelianization.inhabited G = {default := 1}
Equations
of
is the canonical projection from G to its abelianization.
Equations
- abelianization.of = {to_fun := quotient_group.mk (commutator G), map_one' := _, map_mul' := _}
If f : G → A
is a group homomorphism to an abelian group, then lift f
is the unique map from
the abelianization of a G
to A
that factors through f
.
Equations
- abelianization.lift = {to_fun := λ (f : G →* A), quotient_group.lift (commutator G) f _, inv_fun := λ (F : abelianization G →* A), F.comp abelianization.of, left_inv := _, right_inv := _}
The map operation of the abelianization
functor
Equations
Equivalent groups have equivalent abelianizations
Equations
- e.abelianization_congr = {to_fun := ⇑(abelianization.map e.to_monoid_hom), inv_fun := ⇑(abelianization.map e.symm.to_monoid_hom), left_inv := _, right_inv := _, map_mul' := _}
An Abelian group is equivalent to its own abelianization.
Equations
- abelianization.equiv_of_comm = {to_fun := ⇑abelianization.of, inv_fun := ⇑(⇑abelianization.lift (monoid_hom.id H)), left_inv := _, right_inv := _, map_mul' := _}
Representatives (g₁, g₂) : G × G
of commutator_set ⁅g₁, g₂⁆ ∈ G
.
Equations
- commutator_representatives G = set.range (λ (g : ↥(commutator_set G)), (Exists.some _, Exists.some _))
Instances for ↥commutator_representatives
Subgroup generated by representatives g₁ g₂ : G
of commutators ⁅g₁, g₂⁆ ∈ G
.