Nilpotent groups #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
An API for nilpotent groups, that is, groups for which the upper central series
reaches ⊤
.
Main definitions #
Recall that if H K : subgroup G
then ⁅H, K⁆ : subgroup G
is the subgroup of G
generated
by the commutators hkh⁻¹k⁻¹
. Recall also Lean's conventions that ⊤
denotes the
subgroup G
of G
, and ⊥
denotes the trivial subgroup {1}
.
upper_central_series G : ℕ → subgroup G
: the upper central series of a groupG
. This is an increasing sequence of normal subgroupsH n
ofG
withH 0 = ⊥
andH (n + 1) / H n
is the centre ofG / H n
.lower_central_series G : ℕ → subgroup G
: the lower central series of a groupG
. This is a decreasing sequence of normal subgroupsH n
ofG
withH 0 = ⊤
andH (n + 1) = ⁅H n, G⁆
.is_nilpotent
: A group G is nilpotent if its upper central series reaches⊤
, or equivalently if its lower central series reaches⊥
.nilpotency_class
: the length of the upper central series of a nilpotent group.is_ascending_central_series (H : ℕ → subgroup G) : Prop
andis_descending_central_series (H : ℕ → subgroup G) : Prop
: Note that in the literature a "central series" for a group is usually defined to be a finite sequence of normal subgroupsH 0
,H 1
, ..., starting at⊤
, finishing at⊥
, and with eachH n / H (n + 1)
central inG / H (n + 1)
. In this formalisation it is convenient to have two weaker predicates on an infinite sequence of subgroupsH n
ofG
: we say a sequence is a descending central series if it starts atG
and⁅H n, ⊤⁆ ⊆ H (n + 1)
for alln
. Note that this series may not terminate at⊥
, and theH i
need not be normal. Similarly a sequence is an ascending central series ifH 0 = ⊥
and⁅H (n + 1), ⊤⁆ ⊆ H n
for alln
, again with no requirement that the series reaches⊤
or that theH i
are normal.
Main theorems #
G
is defined to be nilpotent if the upper central series reaches ⊤
.
nilpotent_iff_finite_ascending_central_series
:G
is nilpotent iff some ascending central series reaches⊤
.nilpotent_iff_finite_descending_central_series
:G
is nilpotent iff some descending central series reaches⊥
.nilpotent_iff_lower
:G
is nilpotent iff the lower central series reaches⊥
.- The
nilpotency_class
can likeways be obtained from these equivalent definitions, seeleast_ascending_central_series_length_eq_nilpotency_class
,least_descending_central_series_length_eq_nilpotency_class
andlower_central_series_length_eq_nilpotency_class
. - If
G
is nilpotent, then so are its subgroups, images, quotients and preimages. Binary and finite products of nilpotent groups are nilpotent. Infinite products are nilpotent if their nilpotent class is bounded. Corresponding lemmas about thenilpotency_class
are provided. - The
nilpotency_class
ofG ⧸ center G
is given explicitly, and an induction principle is derived from that. is_nilpotent.to_is_solvable
: IfG
is nilpotent, it is solvable.
Warning #
A "central series" is usually defined to be a finite sequence of normal subgroups going
from ⊥
to ⊤
with the property that each subquotient is contained within the centre of
the associated quotient of G
. This means that if G
is not nilpotent, then
none of what we have called upper_central_series G
, lower_central_series G
or
the sequences satisfying is_ascending_central_series
or is_descending_central_series
are actually central series. Note that the fact that the upper and lower central series
are not central series if G
is not nilpotent is a standard abuse of notation.
If H
is a normal subgroup of G
, then the set {x : G | ∀ y : G, x*y*x⁻¹*y⁻¹ ∈ H}
is a subgroup of G
(because it is the preimage in G
of the centre of the
quotient group G/H
.)
Equations
Instances for upper_central_series_step
The proof that upper_central_series_step H
is the preimage of the centre of G/H
under
the canonical surjection.
An auxiliary type-theoretic definition defining both the upper central series of a group, and a proof that it is normal, all in one go.
Equations
- upper_central_series_aux G (n + 1) = let un : Σ' (H : subgroup G), H.normal := upper_central_series_aux G n, un_normal : un.fst.normal := _ in ⟨upper_central_series_step un.fst un_normal, _⟩
- upper_central_series_aux G 0 = ⟨⊥, _⟩
upper_central_series G n
is the n
th term in the upper central series of G
.
Equations
- upper_central_series G n = (upper_central_series_aux G n).fst
Instances for upper_central_series
A group G
is nilpotent if its upper central series is eventually G
.
A sequence of subgroups of G
is an ascending central series if H 0
is trivial and
⁅H (n + 1), G⁆ ⊆ H n
for all n
. Note that we do not require that H n = G
for some n
.
A sequence of subgroups of G
is a descending central series if H 0
is G
and
⁅H n, G⁆ ⊆ H (n + 1)
for all n
. Note that we do not requre that H n = {1}
for some n
.
Any ascending central series for a group is bounded above by the upper central series.
The upper central series of a group is an ascending central series.
A group G
is nilpotent iff there exists a descending central series which reaches the
trivial group in a finite time.
The lower central series of a group G
is a sequence H n
of subgroups of G
, defined
by H 0
is all of G
and for n≥1
, H (n + 1) = ⁅H n, G⁆
Equations
- lower_central_series G (n + 1) = ⁅lower_central_series G n, ⊤⁆
- lower_central_series G 0 = ⊤
Instances for lower_central_series
The lower central series of a group is a descending central series.
Any descending central series for a group is bounded below by the lower central series.
A group is nilpotent if and only if its lower central series eventually reaches the trivial subgroup.
The nilpotency class of a nilpotent group is the smallest natural n
such that
the n
'th term of the upper central series is G
.
Equations
The nilpotency class of a nilpotent G
is equal to the smallest n
for which an ascending
central series reaches G
in its n
'th term.
The nilpotency class of a nilpotent G
is equal to the smallest n
for which the descending
central series reaches ⊥
in its n
'th term.
The nilpotency class of a nilpotent G
is equal to the length of the lower central series.
A subgroup of a nilpotent group is nilpotent
A the nilpotency class of a subgroup is less or equal the the nilpotency class of the group
The preimage of a nilpotent group is nilpotent if the kernel of the homomorphism is contained in the center
The range of a surjective homomorphism from a nilpotent group is nilpotent
The nilpotency class of the range of a surejctive homomorphism from a nilpotent group is less or equal the nilpotency class of the domain
Nilpotency respects isomorphisms
A quotient of a nilpotent group is nilpotent
The nilpotency class of a quotient of G
is less or equal the nilpotency class of G
Quotienting the center G
reduces the nilpotency class by 1
The nilpotency class of a non-trivial group is one more than its quotient by the center
If the quotient by center G
is nilpotent, then so is G.
A custom induction principle for nilpotent groups. The base case is a trivial group
(subsingleton G
), and in the induction step, one can assume the hypothesis for
the group quotiented by its center.
Abelian groups are nilpotent
Abelian groups have nilpotency class at most one
Groups with nilpotency class at most one are abelian
Equations
Products of nilpotent groups are nilpotent
The nilpotency class of a product is the max of the nilpotency classes of the factors
products of nilpotent groups are nilpotent if their nipotency class is bounded
n-ary products of nilpotent groups are nilpotent
The nilpotency class of an n-ary product is the sup of the nilpotency classes of the factors
A nilpotent subgroup is solvable
A p-group is nilpotent
If a finite group is the direct product of its Sylow groups, it is nilpotent
A finite group is nilpotent iff the normalizer condition holds, and iff all maximal groups are normal and iff all sylow groups are normal and iff the group is the direct product of its sylow groups.