Quotients of groups by normal subgroups #
This files develops the basic theory of quotients of groups by normal subgroups. In particular it proves Noether's first and second isomorphism theorems.
Main definitions #
mk'
: the canonical group homomorphismG →* G/N
given a normal subgroupN
ofG
.lift φ
: the group homomorphismG/N →* H
given a group homomorphismφ : G →* H
such thatN ⊆ ker φ
.map f
: the group homomorphismG/N →* H/M
given a group homomorphismf : G →* H
such thatN ⊆ f⁻¹(M)
.
Main statements #
QuotientGroup.quotientKerEquivRange
: Noether's first isomorphism theorem, an explicit isomorphismG/ker φ → range φ
for every group homomorphismφ : G →* H
.QuotientGroup.quotientInfEquivProdNormalQuotient
: Noether's second isomorphism theorem, an explicit isomorphism betweenH/(H ∩ N)
and(HN)/N
given a subgroupH
and a normal subgroupN
of a groupG
.QuotientGroup.quotientQuotientEquivQuotient
: Noether's third isomorphism theorem, the canonical isomorphism between(G / N) / (M / N)
andG / M
, whereN ≤ M
.
Tags #
isomorphism theorems, quotient groups
The additive congruence relation generated by a normal additive subgroup.
Equations
- QuotientAddGroup.con N = { toSetoid := QuotientAddGroup.leftRel N, add' := ⋯ }
Instances For
The congruence relation generated by a normal subgroup.
Equations
- QuotientGroup.con N = { toSetoid := QuotientGroup.leftRel N, mul' := ⋯ }
Instances For
Equations
Equations
The additive group homomorphism from G
to G/N
.
Equations
- QuotientAddGroup.mk' N = AddMonoidHom.mk' QuotientAddGroup.mk ⋯
Instances For
The group homomorphism from G
to G/N
.
Equations
- QuotientGroup.mk' N = MonoidHom.mk' QuotientGroup.mk ⋯
Instances For
Two AddMonoidHom
s from an additive quotient group are equal if
their compositions with AddQuotientGroup.mk'
are equal.
See note [partially-applied ext lemmas].
Two MonoidHom
s from a quotient group are equal if their compositions with
QuotientGroup.mk'
are equal.
See note [partially-applied ext lemmas].
Equations
- ⋯ = ⋯
Instances For
Equations
Equations
An AddGroup
homomorphism φ : G →+ M
with N ⊆ ker(φ)
descends (i.e. lift
s)
to a group homomorphism G/N →* M
.
Equations
- QuotientAddGroup.lift N φ HN = AddCon.lift (QuotientAddGroup.con N) φ ⋯
Instances For
A group homomorphism φ : G →* M
with N ⊆ ker(φ)
descends (i.e. lift
s) to a
group homomorphism G/N →* M
.
Equations
- QuotientGroup.lift N φ HN = Con.lift (QuotientGroup.con N) φ ⋯
Instances For
An AddGroup
homomorphism f : G →+ H
induces a map G/N →+ H/M
if N ⊆ f⁻¹(M)
.
Equations
- QuotientAddGroup.map N M f h = QuotientAddGroup.lift N (AddMonoidHom.comp (QuotientAddGroup.mk' M) f) ⋯
Instances For
A group homomorphism f : G →* H
induces a map G/N →* H/M
if N ⊆ f⁻¹(M)
.
Equations
- QuotientGroup.map N M f h = QuotientGroup.lift N (MonoidHom.comp (QuotientGroup.mk' M) f) ⋯
Instances For
QuotientAddGroup.congr
lifts the isomorphism e : G ≃ H
to G ⧸ G' ≃ H ⧸ H'
,
given that e
maps G
to H
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
QuotientGroup.congr
lifts the isomorphism e : G ≃ H
to G ⧸ G' ≃ H ⧸ H'
,
given that e
maps G
to H
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The induced map from the quotient by the kernel to the codomain.
Equations
Instances For
The induced map from the quotient by the kernel to the codomain.
Equations
Instances For
The induced map from the quotient by the kernel to the range.
Equations
Instances For
The induced map from the quotient by the kernel to the range.
Equations
Instances For
The first isomorphism theorem (a definition): the canonical isomorphism between
G/(ker φ)
to range φ
.
Equations
Instances For
Noether's first isomorphism theorem (a definition): the canonical isomorphism between
G/(ker φ)
to range φ
.
Equations
Instances For
The canonical isomorphism G/(ker φ) ≃+ H
induced by a homomorphism
φ : G →+ H
with a right inverse ψ : H → G
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The canonical isomorphism G/(ker φ) ≃* H
induced by a homomorphism φ : G →* H
with a right inverse ψ : H → G
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The canonical isomorphism G/⊥ ≃+ G
.
Equations
- QuotientAddGroup.quotientBot = QuotientAddGroup.quotientKerEquivOfRightInverse (AddMonoidHom.id G) id ⋯
Instances For
The canonical isomorphism G/⊥ ≃* G
.
Equations
- QuotientGroup.quotientBot = QuotientGroup.quotientKerEquivOfRightInverse (MonoidHom.id G) id ⋯
Instances For
The canonical isomorphism G/(ker φ) ≃+ H
induced by a surjection φ : G →+ H
.
For a computable
version, see QuotientAddGroup.quotientKerEquivOfRightInverse
.
Equations
Instances For
The canonical isomorphism G/(ker φ) ≃* H
induced by a surjection φ : G →* H
.
For a computable
version, see QuotientGroup.quotientKerEquivOfRightInverse
.
Equations
Instances For
If two normal subgroups M
and N
of G
are the same, their quotient groups are
isomorphic.
Equations
- QuotientAddGroup.quotientAddEquivOfEq h = let __src := AddSubgroup.quotientEquivOfEq h; { toEquiv := __src, map_add' := ⋯ }
Instances For
If two normal subgroups M
and N
of G
are the same, their quotient groups are
isomorphic.
Equations
- QuotientGroup.quotientMulEquivOfEq h = let __src := Subgroup.quotientEquivOfEq h; { toEquiv := __src, map_mul' := ⋯ }
Instances For
Let A', A, B', B
be subgroups of G
. If A' ≤ B'
and A ≤ B
, then there is a map
A / (A' ⊓ A) →+ B / (B' ⊓ B)
induced by the inclusions.
Equations
Instances For
Let A', A, B', B
be subgroups of G
. If A' ≤ B'
and A ≤ B
,
then there is a map A / (A' ⊓ A) →* B / (B' ⊓ B)
induced by the inclusions.
Equations
- QuotientGroup.quotientMapSubgroupOfOfLe h' h = QuotientGroup.map (Subgroup.subgroupOf A' A) (Subgroup.subgroupOf B' B) (Subgroup.inclusion h) ⋯
Instances For
Let A', A, B', B
be subgroups of G
. If A' = B'
and A = B
, then the quotients
A / (A' ⊓ A)
and B / (B' ⊓ B)
are isomorphic. Applying this equiv is nicer than rewriting along
the equalities, since the type of (A'.addSubgroupOf A : AddSubgroup A)
depends on on A
.
Equations
Instances For
Let A', A, B', B
be subgroups of G
.
If A' = B'
and A = B
, then the quotients A / (A' ⊓ A)
and B / (B' ⊓ B)
are isomorphic.
Applying this equiv is nicer than rewriting along the equalities, since the type of
(A'.subgroupOf A : Subgroup A)
depends on A
.
Equations
Instances For
The map of quotients by multiples of an integer induced by an additive group homomorphism.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- ⋯ = ⋯
Instances For
The map of quotients by powers of an integer induced by a group homomorphism.
Equations
Instances For
The equivalence of quotients by multiples of an integer induced by an additive group isomorphism.
Equations
Instances For
The equivalence of quotients by powers of an integer induced by a group isomorphism.
Equations
Instances For
The second isomorphism theorem: given two subgroups H
and N
of a group G
, where
N
is normal, defines an isomorphism between H/(H ∩ N)
and (H + N)/N
Equations
- One or more equations did not get rendered due to their size.
Instances For
Noether's second isomorphism theorem: given two subgroups H
and N
of a group G
, where
N
is normal, defines an isomorphism between H/(H ∩ N)
and (HN)/N
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
The map from the third isomorphism theorem for additive groups:
(A / N) / (M / N) → A / M
.
Equations
Instances For
The map from the third isomorphism theorem for groups: (G / N) / (M / N) → G / M
.
Equations
- QuotientGroup.quotientQuotientEquivQuotientAux N M h = QuotientGroup.lift (Subgroup.map (QuotientGroup.mk' N) M) (QuotientGroup.map N M (MonoidHom.id G) h) ⋯
Instances For
Noether's third isomorphism theorem for additive groups: (A / N) / (M / N) ≃+ A / M
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Noether's third isomorphism theorem for groups: (G / N) / (M / N) ≃* G / M
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If the quotient by an additive subgroup gives a singleton then the additive subgroup is the whole additive group.
If the quotient by a subgroup gives a singleton then the subgroup is the whole group.
If F
and H
are finite such that ker(G →+ H) ≤ im(F →+ G)
, then G
is finite.
Equations
- AddGroup.fintypeOfKerLeRange f g h = Fintype.ofEquiv ((G ⧸ AddMonoidHom.ker g) × ↥(AddMonoidHom.ker g)) AddSubgroup.addGroupEquivQuotientProdAddSubgroup.symm
Instances For
If F
and H
are finite such that ker(G →* H) ≤ im(F →* G)
, then G
is finite.
Equations
- Group.fintypeOfKerLeRange f g h = Fintype.ofEquiv ((G ⧸ MonoidHom.ker g) × ↥(MonoidHom.ker g)) Subgroup.groupEquivQuotientProdSubgroup.symm
Instances For
If F
and H
are finite such that ker(G →+ H) = im(F →+ G)
, then G
is finite.
Equations
Instances For
If F
and H
are finite such that ker(G →* H) = im(F →* G)
, then G
is finite.
Equations
- Group.fintypeOfKerEqRange f g h = Group.fintypeOfKerLeRange f g ⋯
Instances For
If ker(G →+ H)
and H
are finite, then G
is finite.
Equations
- AddGroup.fintypeOfKerOfCodom g = AddGroup.fintypeOfKerLeRange (AddMonoidHom.comp (AddEquiv.toAddMonoidHom AddSubgroup.topEquiv) (AddSubgroup.inclusion ⋯)) g ⋯
Instances For
If ker(G →* H)
and H
are finite, then G
is finite.
Equations
- Group.fintypeOfKerOfCodom g = Group.fintypeOfKerLeRange (MonoidHom.comp (MulEquiv.toMonoidHom Subgroup.topEquiv) (Subgroup.inclusion ⋯)) g ⋯
Instances For
If F
and coker(F →+ G)
are finite, then G
is finite.
Equations
Instances For
If F
and coker(F →* G)
are finite, then G
is finite.