Prove2Me
Navigate
DiscoverFormalpediaBlogsUsersMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Theorem 4.8: the Milnor–Wolf theorem

Open
Wolf.growth_dichotomy_of_isSolvable_of_fg

by dbenbenn · Sep 20, 2026 · Mathlib 0df444a (Lean v4.33.1)

group-growthgroup-theorynilpotent-groupspolycyclic-groupssolvable-groups

Let Γ\GammaΓ be a finitely generated solvable group. If Γ\GammaΓ has a nilpotent subgroup Δ\DeltaΔ of finite index, then Γ\GammaΓ is polycyclic and has polynomial growth of degree ≤E2(Δ)\le E_2(\Delta)≤E2​(Δ). If Γ\GammaΓ has no nilpotent subgroup of finite index, then Γ\GammaΓ has exponential growth.

Preamble
import Definitions.Def_Chou_Growth
import Definitions.Def_MilnorWolf_Growth
import Mathlib
Formal statement
namespace Wolf

theorem growth_dichotomy_of_isSolvable_of_fg {Γ : Type*} [Group Γ] [Group.FG Γ]
    [Group.IsSolvable Γ] :
    (∀ Δ : Subgroup Γ, Group.IsNilpotent Δ → Δ.FiniteIndex →
        MilnorWolf.IsPolycyclic Γ ∧
          MilnorWolf.HasPolynomialGrowthOfDegreeLE Γ (MilnorWolf.growthExponentTwo Δ)) ∧
      ((¬ ∃ Δ : Subgroup Γ, Group.IsNilpotent Δ ∧ Δ.FiniteIndex) →
        Chou.HasExponentialGrowth Γ) := by
  sorry

end Wolf
Source
Wolf, J. A., Growth of finitely generated solvable groups and curvature of Riemannian manifolds, Journal of Differential Geometry 2 (1968) 421–446, https://doi.org/10.4310/jdg/1214428658, Theorem 4.8, p. 438
Read-back

What the Lean code literally says, in plain math · claude-opus-5

Read-back of the single declaration in the artifact

The file contains exactly one declaration: a theorem whose proof is omitted. What follows renders its statement in full. Everything the statement depends on is expanded here, so nothing below needs the source files.


1. The ambient data and the standing hypotheses

The statement begins by fixing:

  • a type Γ\GammaΓ, living in an arbitrary universe (the universe is an implicit parameter and is otherwise unconstrained);
  • a group structure on Γ\GammaΓ (multiplication, identity 111, inversion, with the group axioms). Γ\GammaΓ is not assumed abelian, nor finite, nor nonempty-by-fiat beyond containing 111.

and then three hypotheses, all supplied as typeclass (instance) assumptions rather than named hypotheses, so they are available throughout but are never referred to by name in the conclusion:

(H1) Γ\GammaΓ is a group. As above.

(H2) Γ\GammaΓ is finitely generated. Literally: the improper subgroup Γ≤Γ\Gamma \le \GammaΓ≤Γ is finitely generated, which unfolds to: there is a finite subset S⊆ΓS \subseteq \GammaS⊆Γ whose generated subgroup is all of Γ\GammaΓ. Here the generated subgroup of a subset kkk is the intersection of all subgroups of Γ\GammaΓ containing kkk — the smallest subgroup containing kkk.

(H3) Γ\GammaΓ is solvable. Literally: there exists n∈Nn \in \mathbb{N}n∈N with Dn(Γ)={1}D^n(\Gamma) = \{1\}Dn(Γ)={1}, where the derived series is

D0(Γ)=Γ,Dk+1(Γ)=[ Dk(Γ), Dk(Γ) ],D^0(\Gamma) = \Gamma, \qquad D^{k+1}(\Gamma) = [\,D^k(\Gamma),\, D^k(\Gamma)\,],D0(Γ)=Γ,Dk+1(Γ)=[Dk(Γ),Dk(Γ)],

and for subgroups H1,H2H_1, H_2H1​,H2​ the bracket [H1,H2][H_1, H_2][H1​,H2​] denotes the subgroup generated by the set of commutators { g1g2g1−1g2−1  :  g1∈H1, g2∈H2 }\{\, g_1 g_2 g_1^{-1} g_2^{-1} \;:\; g_1 \in H_1,\ g_2 \in H_2 \,\}{g1​g2​g1−1​g2−1​:g1​∈H1​, g2​∈H2​} (not that set itself). The commutator convention is [g1,g2]=g1g2g1−1g2−1[g_1, g_2] = g_1 g_2 g_1^{-1} g_2^{-1}[g1​,g2​]=g1​g2​g1−1​g2−1​.

Note that (H3) is solvable, not polycyclic and not nilpotent; and nnn is not bounded.


2. Word balls and the counting convention

All the growth notions below are stated in terms of the following object. For a group GGG, an arbitrary subset S⊆GS \subseteq GS⊆G and an n∈Nn \in \mathbb{N}n∈N, the word ball

BS(n)  =  { g∈G  :  there is a finite list (x1,…,xl) of elements of G with l≤n,  (∀i) (xi∈S or xi−1∈S), and x1x2⋯xl=g }.B_S(n) \;=\; \bigl\{\, g \in G \;:\; \text{there is a finite list } (x_1, \dots, x_l) \text{ of elements of } G \text{ with } l \le n,\ \ (\forall i)\ \bigl(x_i \in S \ \text{or}\ x_i^{-1} \in S\bigr),\ \text{and } x_1 x_2 \cdots x_l = g \,\bigr\}.BS​(n)={g∈G:there is a finite list (x1​,…,xl​) of elements of G with l≤n,  (∀i) (xi​∈S or xi−1​∈S), and x1​x2​⋯xl​=g}.

Four points about this, all of which are consequences of how it is literally written:

  • The list is a list, not a set: repetitions are allowed and the order is fixed. The product is taken in list order — it is defined by folding multiplication from the right against the identity, i.e. x1(x2(⋯(xl⋅1)))x_1\bigl(x_2(\cdots(x_l \cdot 1))\bigr)x1​(x2​(⋯(xl​⋅1))), which by associativity is the ordinary ordered product x1x2⋯xlx_1 x_2 \cdots x_lx1​x2​⋯xl​.
  • The length bound is l≤nl \le nl≤n, not l=nl = nl=n. The empty list (l=0l = 0l=0) is permitted and its product is 111, so 1∈BS(n)1 \in B_S(n)1∈BS​(n) for every nnn, and in particular BS(0)={1}B_S(0) = \{1\}BS​(0)={1}. Also BS(m)⊆BS(n)B_S(m) \subseteq B_S(n)BS​(m)⊆BS​(n) whenever m≤nm \le nm≤n.
  • The letters xix_ixi​ range over all of GGG, constrained only by xi∈Sx_i \in Sxi​∈S or xi−1∈Sx_i^{-1} \in Sxi−1​∈S. So SSS is implicitly symmetrized: the ball is built from S∪S−1S \cup S^{-1}S∪S−1, and SSS itself is not required to be symmetric or to contain 111.
  • SSS is an arbitrary subset here; in the growth definitions it will be the underlying set of a finite subset.

Counting convention. Where a cardinality of BS(n)B_S(n)BS​(n) appears, it is the number of elements of BS(n)B_S(n)BS​(n) as a natural number, with the convention that an infinite set is assigned the value 000. Write #BS(n)\#B_S(n)#BS​(n) for this natural number. This convention matters below and is flagged where it does.


3. The two growth notions, expanded

Exponential growth. A group GGG has exponential growth means, literally:

there exists a finite subset S⊆GS \subseteq GS⊆G whose generated subgroup is all of GGG, and there exists a real number ccc with 1<c1 < c1<c (strict), such that for every n∈Nn \in \mathbb{N}n∈N,

c n  ≤  #BS(n)c^{\,n} \;\le\; \#B_S(n)cn≤#BS​(n)

(non-strict inequality; the right-hand side is the natural number #BS(n)\#B_S(n)#BS​(n) regarded as a real).

Two things this does and does not say. The generating set is quantified existentially: the inequality is required to hold for some finite generating set, not for all of them. And the inequality is required for all nnn including n=0n = 0n=0, where it reads 1≤#{1}=11 \le \#\{1\} = 11≤#{1}=1. Because of the counting convention, if some ball BS(n)B_S(n)BS​(n) with n≥1n \ge 1n≥1 were infinite its count would be 000 and the inequality cn≤0c^n \le 0cn≤0 would fail; so this condition can only be met by a generating set all of whose balls are finite.

Polynomial growth of degree at most EEE, for a natural number EEE. A group GGG has polynomial growth of degree ≤E\le E≤E means, literally:

there exists a finite subset S⊆GS \subseteq GS⊆G whose generated subgroup is all of GGG, and there exists a real number ccc with 0<c0 < c0<c (strict), such that for every m∈Nm \in \mathbb{N}m∈N with 1≤m1 \le m1≤m,

#BS(m)  ≤  c⋅mE.\#B_S(m) \;\le\; c \cdot m^{E}.#BS​(m)≤c⋅mE.

Again the generating set is existential. The bound is imposed only for m≥1m \ge 1m≥1; the case m=0m = 0m=0 is excluded, so nothing is asserted about #BS(0)\#B_S(0)#BS​(0). The exponent EEE is a natural number, so E=0E = 0E=0 is permitted and then the assertion is that #BS(m)≤c\#B_S(m) \le c#BS​(m)≤c for all m≥1m \ge 1m≥1, i.e. the balls are uniformly bounded. Here the counting convention cuts the other way: an infinite ball would be counted as 000, and 0≤c mE0 \le c\, m^E0≤cmE holds automatically, so an infinite ball would satisfy rather than violate this inequality.

The quantity counted in this definition is written via an intermediate name (a "growth function"), but that name is defined to be exactly #BS(m)\#B_S(m)#BS​(m) for the same word ball as above, so the two definitions count the same thing.


4. Polycyclic, expanded

A group GGG is polycyclic means, literally: there exist a natural number ttt and a family of subgroups A0,A1,…,AtA_0, A_1, \dots, A_tA0​,A1​,…,At​ of GGG (indexed by {0,1,…,t}\{0, 1, \dots, t\}{0,1,…,t}) such that

  1. A0=GA_0 = GA0​=G (the improper subgroup);
  2. At={1}A_t = \{1\}At​={1} (the trivial subgroup);
  3. for every i∈{0,1,…,t−1}i \in \{0, 1, \dots, t-1\}i∈{0,1,…,t−1}, both of the following hold:
    • Ai+1≤AiA_{i+1} \le A_iAi+1​≤Ai​, and
    • writing Ai+1 ⁣↾AiA_{i+1}\!\restriction_{A_i}Ai+1​↾Ai​​ for the subgroup of AiA_iAi​ obtained by pulling Ai+1A_{i+1}Ai+1​ back along the inclusion Ai↪GA_i \hookrightarrow GAi​↪G — that is, Ai+1∩AiA_{i+1} \cap A_iAi+1​∩Ai​ regarded as a subgroup of the group AiA_iAi​, which in the presence of the containment just stated is Ai+1A_{i+1}Ai+1​ itself — the subgroup Ai+1 ⁣↾AiA_{i+1}\!\restriction_{A_i}Ai+1​↾Ai​​ is normal in AiA_iAi​ and the quotient group
Ai/Ai+1 ⁣↾AiA_i \big/ A_{i+1}\!\restriction_{A_i}Ai​/Ai+1​↾Ai​​
 is **cyclic**, meaning: there is an element $g$ of that quotient such that every element of the
 quotient is $g^{\,k}$ for some $k \in \mathbb{Z}$.

Points worth making explicit. The normality and the cyclicity are packaged together (the normality witness is what makes the quotient a group at all, and it is a proposition, so requiring its existence is the same as requiring normality); the net content of the third clause is "each consecutive quotient is a normal subgroup with cyclic quotient". "Cyclic" here includes the trivial group and both the finite and the infinite cyclic groups. The subgroups AiA_iAi​ are required to be normal only in AiA_iAi​, not in GGG. The chain is descending from GGG to {1}\{1\}{1}, of some finite length ttt that is existentially quantified and otherwise unconstrained. The degenerate case t=0t = 0t=0 is allowed: then the family is the single subgroup A0A_0A0​, clause 3 is vacuous, and clauses 1 and 2 read A0=GA_0 = GA0​=G and A0={1}A_0 = \{1\}A0​={1} together — so t=0t = 0t=0 is satisfiable exactly when GGG is trivial.


5. The numerical exponent, expanded

The polynomial-growth degree appearing in the theorem is a specific natural number attached to a group HHH. It is built in four layers.

(a) Lower central series, in the indexing the definition actually uses. For a group HHH set

Γ0(H)=H,Γk+1(H)=[ Γk(H), H ],\Gamma_0(H) = H, \qquad \Gamma_{k+1}(H) = [\,\Gamma_k(H),\, H\,],Γ0​(H)=H,Γk+1​(H)=[Γk​(H),H],

the bracket again being the subgroup generated by the relevant commutators. Note the indexing starts at Γ0=H\Gamma_0 = HΓ0​=H (so Γ1=[H,H]\Gamma_1 = [H,H]Γ1​=[H,H]); in the more common 111-based convention this Γk\Gamma_kΓk​ is the (k+1)(k+1)(k+1)-st term.

(b) Nilpotency class, with its junk value. The upper central series of HHH is

Z0={1},Zn+1={ x∈H  :  [x,y]∈Zn for all y∈H },Z_0 = \{1\}, \qquad Z_{n+1} = \{\, x \in H \;:\; [x,y] \in Z_n \text{ for all } y \in H \,\},Z0​={1},Zn+1​={x∈H:[x,y]∈Zn​ for all y∈H},

and HHH is nilpotent iff Zn=HZ_n = HZn​=H for some nnn. The nilpotency class c(H)c(H)c(H) is the least such nnn when HHH is nilpotent, and is defined to be 000 when HHH is not nilpotent. So the value 000 is ambiguous between "trivial group" and "not nilpotent at all".

(c) The kkk-th factor and its rank. For k∈Nk \in \mathbb{N}k∈N, take the abelianization of Γk(H)\Gamma_k(H)Γk​(H) — that is, Γk(H)/[Γk(H),Γk(H)]\Gamma_k(H)\big/[\Gamma_k(H), \Gamma_k(H)]Γk​(H)/[Γk​(H),Γk​(H)] — and quotient it further by the image, under the abelianization map, of the subgroup Γk+1(H)∩Γk(H)\Gamma_{k+1}(H) \cap \Gamma_k(H)Γk+1​(H)∩Γk​(H) viewed inside Γk(H)\Gamma_k(H)Γk​(H). Call the resulting abelian group Fk(H)F_k(H)Fk​(H). (Every subgroup of an abelian group is normal, so this second quotient is formed without an extra hypothesis.)

Regard Fk(H)F_k(H)Fk​(H) additively, as a module over Z\mathbb{Z}Z, with n⋅xn \cdot xn⋅x the nnn-th power of xxx in Fk(H)F_k(H)Fk​(H). Then

rk(H)  =  the Z-rank of Fk(H),r_k(H) \;=\; \text{the } \mathbb{Z}\text{-rank of } F_k(H),rk​(H)=the Z-rank of Fk​(H),

where "rank" is: take the supremum, as a cardinal, of the cardinalities of the Z\mathbb{Z}Z-linearly independent subsets of Fk(H)F_k(H)Fk​(H), and convert that cardinal to a natural number with the convention that an infinite cardinal is sent to 000. Consequences of this convention that the reader should not miss: a finite Fk(H)F_k(H)Fk​(H), or more generally a torsion one, gives rk(H)=0r_k(H) = 0rk​(H)=0; and an Fk(H)F_k(H)Fk​(H) of infinite rank also gives rk(H)=0r_k(H) = 0rk​(H)=0. So rk(H)r_k(H)rk​(H) records only a finite free rank, and 000 is again ambiguous.

(d) The exponent. Finally

E2(H)  =  ∑k=0c(H)−12 k⋅rk(H),E_2(H) \;=\; \sum_{k=0}^{c(H)-1} 2^{\,k} \cdot r_k(H),E2​(H)=k=0∑c(H)−1​2k⋅rk​(H),

the sum being over k∈{0,1,…,c(H)−1}k \in \{0, 1, \dots, c(H)-1\}k∈{0,1,…,c(H)−1} — the weights are powers of 222, not the weights k+1k+1k+1 of the other exponent defined alongside it in the same source, which this statement does not use. If c(H)=0c(H) = 0c(H)=0 the index set is empty and E2(H)=0E_2(H) = 0E2​(H)=0.


6. The statement itself

With Γ\GammaΓ a finitely generated solvable group as in §1, the theorem asserts the conjunction of the following two claims.

Claim (a). For every subgroup Δ\DeltaΔ of Γ\GammaΓ, if

  • Δ\DeltaΔ, regarded as a group in its own right (the type of elements of Γ\GammaΓ lying in Δ\DeltaΔ, with the inherited multiplication), is nilpotent in the sense of §5(b); and
  • Δ\DeltaΔ has finite index in Γ\GammaΓ, which unfolds to: the number of cosets in the quotient Γ/Δ\Gamma/\DeltaΓ/Δ, counted as a natural number under the same "infinite ↦0\mapsto 0↦0" convention, is ≠0\ne 0=0 — i.e. that quotient is finite,

then both

  • Γ\GammaΓ is polycyclic in the sense of §4, and
  • Γ\GammaΓ has polynomial growth of degree at most E2(Δ)E_2(\Delta)E2​(Δ) in the sense of §3, where the exponent is computed from Δ\DeltaΔ's own lower central series and nilpotency class as in §5, not from Γ\GammaΓ's.

Claim (b). If there is no subgroup Δ\DeltaΔ of Γ\GammaΓ that is simultaneously nilpotent and of finite index — i.e. the negation of "∃Δ≤Γ\exists \Delta \le \Gamma∃Δ≤Γ with Δ\DeltaΔ nilpotent and Δ\DeltaΔ of finite index" — then Γ\GammaΓ has exponential growth in the sense of §3.


7. Quantifier structure, degenerate cases, and what the shape forces

  • The two claims have complementary antecedents: (a)'s hypothesis is that a given Δ\DeltaΔ is nilpotent of finite index, and (b)'s hypothesis is that no such Δ\DeltaΔ exists. Exactly one of "some nilpotent finite-index subgroup exists" and "none does" holds of any Γ\GammaΓ, so in each case one of the two claims is vacuously true and the other carries the content.

  • In claim (a) the quantifier over Δ\DeltaΔ is universal, and the conclusion's first half, "Γ\GammaΓ is polycyclic", does not mention Δ\DeltaΔ. So (a) says: if at least one nilpotent finite-index subgroup exists then Γ\GammaΓ is polycyclic; and the polynomial bound is asserted with the exponent E2(Δ)E_2(\Delta)E2​(Δ) for every qualifying Δ\DeltaΔ, which is the strongest such statement (equivalently, with the smallest exponent arising this way). It does not merely assert the bound for one convenient Δ\DeltaΔ.

  • Δ={1}\Delta = \{1\}Δ={1} always satisfies the nilpotence requirement (the trivial group is nilpotent, of class 000). It satisfies the finite-index requirement exactly when Γ\GammaΓ is finite. When Γ\GammaΓ is finite, then, (a) applies with this Δ\DeltaΔ, and since c({1})=0c(\{1\}) = 0c({1})=0 we get E2({1})=0E_2(\{1\}) = 0E2​({1})=0: so for finite Γ\GammaΓ the claim includes "Γ\GammaΓ is polycyclic" and "#BS(m)≤c\#B_S(m) \le c#BS​(m)≤c for all m≥1m \ge 1m≥1, for some finite generating set SSS and some c>0c > 0c>0".

  • Δ=Γ\Delta = \GammaΔ=Γ satisfies the finite-index requirement always (the quotient has one element), and the nilpotence requirement exactly when Γ\GammaΓ itself is nilpotent; in that case (a) applies with exponent E2(Γ)E_2(\Gamma)E2​(Γ).

  • No hypothesis beyond nilpotence and finite index is placed on Δ\DeltaΔ — in particular Δ\DeltaΔ is not assumed normal in Γ\GammaΓ, and the coset space Γ/Δ\Gamma/\DeltaΓ/Δ in the index is a space of cosets, not necessarily a group.

  • Both growth conditions are existential in the generating set, so neither claim asserts anything about an arbitrary finite generating set of Γ\GammaΓ; nothing in the statement asserts that the growth type or the bound is independent of the choice of generators.

  • The exponent E2(Δ)E_2(\Delta)E2​(Δ) is asserted only as an upper bound on the degree (≤\le≤, and the bound is c⋅mE2(Δ)c \cdot m^{E_2(\Delta)}c⋅mE2​(Δ) with ccc existentially quantified). Nothing asserts that this degree is attained, sharp, or minimal, and nothing asserts a matching lower bound.

  • The two exponents built in the imported source differ in their weights (2k2^k2k versus k+1k+1k+1); this statement uses the 2k2^k2k one only.

  • Claim (b) concludes exponential growth with some base c>1c > 1c>1; no particular base, and no relation between ccc and any invariant of Γ\GammaΓ, is asserted.

  • The proof of the theorem is not part of what is being read back here.

Human review
  • Endorsed by Shuze Chen · Sep 22, 2026

  • Endorsed by dbenbenn · Sep 22, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, licensed under Apache 2.0.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTermsJoin SlackJoin Zulip© 2026 Prove2Me