Free Group

lean4-proofgroup-theoryvisualization
Hom(F(X),G)GX\mathrm{Hom}(F(X),\, G) \cong G^X

Statement

For any set XX, the free group F(X)F(X) is a group together with a function ι:XF(X)\iota : X \to F(X) satisfying the following universal property: for every group GG and every function f:XGf : X \to G, there exists a unique group homomorphism f~:F(X)G\tilde{f} : F(X) \to G such that f~ι=f\tilde{f} \circ \iota = f.

Hom(F(X),G)    GX(as sets)\operatorname{Hom}(F(X),\, G) \;\cong\; G^X \quad (\text{as sets})

Elements of F(X)F(X) are reduced words — finite sequences of generators xix_i and their inverses xi1x_i^{-1}, with consecutive cancellations xixi1x_i x_i^{-1} and xi1xix_i^{-1} x_i removed. The group operation is concatenation followed by reduction.

Visualization

Take X={a,b}X = \{a, b\}, so F2=F({a,b})F_2 = F(\{a,b\}) — the free group on two generators.

Reduction in F_2:

  a b a b⁻¹ a⁻¹
  ─────────────   (nothing cancels — already reduced)

  a b b⁻¹ a⁻¹
= a (b b⁻¹) a⁻¹
= a   1     a⁻¹
= a a⁻¹
= 1             (fully cancelled)

  a a a⁻¹ b
= (a a a⁻¹) b
= a b         (partial cancellation in the middle)

Universal property illustration — to define a homomorphism f~:F2S3\tilde{f} : F_2 \to S_3, it suffices to pick where aa and bb go:

GeneratorImage in S3S_3
aa(12)(12)
bb(23)(23)

Then f~(aba1)=(12)(23)(12)=(13)\tilde{f}(aba^{-1}) = (12)(23)(12) = (13), fully determined by ff.

Proof Sketch

  1. Construct F(X)F(X) as the set of reduced words over XX1X \cup X^{-1}, with concatenation-then-reduce as multiplication. Verify this is a group (associativity follows from confluence of the reduction relation).
  2. Let ι(x)\iota(x) be the single-letter word xx.
  3. Given f:XGf : X \to G, define f~\tilde{f} on words by f~(x1ε1xnεn)=f(x1)ε1f(xn)εn\tilde{f}(x_1^{\varepsilon_1} \cdots x_n^{\varepsilon_n}) = f(x_1)^{\varepsilon_1} \cdots f(x_n)^{\varepsilon_n}. Reduction steps map to f(x)f(x)1=1f(x)f(x)^{-1} = 1, so f~\tilde{f} is well-defined.
  4. Uniqueness: any homomorphism gg with gι=fg \circ \iota = f must satisfy g(x1ε1xnεn)=f~(x1ε1xnεn)g(x_1^{\varepsilon_1} \cdots x_n^{\varepsilon_n}) = \tilde{f}(x_1^{\varepsilon_1} \cdots x_n^{\varepsilon_n}) by the homomorphism property.

Connections

Free groups are the raw material from which all groups arise: every group is a quotient of a free group, making the First Isomorphism TheoremFirst Isomorphism TheoremG/ker(f)im(f)G / \ker(f) \cong \operatorname{im}(f)The image of a homomorphism is isomorphic to the domain modulo the kernelRead more → apply universally. Group presentations (next note) formalize this: GF(X)/N(R)G \cong F(X)/N(R) for generators XX and relations RR. Free groups also appear in Cayley's TheoremCayley's TheoremGSGG \hookrightarrow S_{|G|}Every group embeds into a symmetric groupRead more → — the permutation representation of a group GG extends naturally to F(G)F(G).

Lean4 Proof

import Mathlib.GroupTheory.FreeGroup.Basic

/-- **Universal property of the free group**: maps from FreeGroup α to G
    are in bijection with functions α → G via `FreeGroup.lift`.
    The lift satisfies `FreeGroup.lift f (FreeGroup.of x) = f x`. -/
theorem free_group_universal_property
    {α G : Type*} [Group G] (f : α  G) (x : α) :
    FreeGroup.lift f (FreeGroup.of x) = f x :=
  FreeGroup.lift_apply_of