Combinatorics
Burnside's Lemma
|X/G| = (1/|G|) Σ_{g∈G} |Fix(g)| — average over the group of fixed-point counts
Burnside's lemma (sometimes "Cauchy-Frobenius"; Burnside's 1897 book popularized it but Cauchy proved it earlier and Frobenius generalized): for a finite group G acting on a finite set X, the number of orbits is |X/G| = (1/|G|) Σ_{g ∈ G} |Fix(g)|, where Fix(g) = {x ∈ X : g·x = x}. Average number of fixed points over the group equals the number of orbits. Classic application: counting necklaces with k beads of c colors up to rotation — answer is (1/k) Σ_{d|k} φ(d) c^(k/d). Generalization: Pólya enumeration theorem (1937) refines this with cycle index polynomials, allowing counting under permutation groups with weights — used to enumerate isomers in chemistry (Pólya's original motivation).
- Statement|X/G| = (1/|G|) Σ |Fix(g)|
- Earliest proofCauchy 1845, Frobenius 1887, Burnside 1897
- Necklace count(1/n) Σ_{d|n} φ(d) c^(n/d)
- RefinementPólya 1937
- Fix(g){x : g · x = x}
- ApplicationChemistry isomer counts
Watch the 60-second explainer
A condensed visual walkthrough — narrated, captioned, under a minute.
Why Burnside matters
Counting "up to symmetry" is a recurring task: how many distinct necklaces, colored cubes, molecular isomers, switching networks, or graph labelings are there if we identify configurations that differ by a symmetry? Naive enumeration overcounts each true configuration by exactly the size of its stabilizer subgroup, and stabilizers vary across configurations — so simple division does not work. Burnside's lemma is the trick that makes the count tractable: average fixed-point counts over the group instead of dividing.
- Enumeration up to symmetry. Whenever you have a group acting on a set of structures and want orbit count — count "essentially distinct" things — Burnside is the first tool. Pólya's enumeration theorem refines it when you also want generating-function output (number of orbits with prescribed weight statistics).
- Chemistry — isomer counting. Pólya's original 1936 motivation. The number of structural isomers of an alkane C_n H_{2n+2} is the number of orbits of n-vertex 4-regular trees under the natural label group; Pólya enumeration handles this. Modern cheminformatics still uses cycle-index machinery for isomer enumeration.
- Coding theory. Equivalence classes of codes under permutations of coordinates, error-correcting codes up to isomorphism, and weight enumerators all use Burnside / Pólya.
- Switching networks. Boolean function classification — how many distinct n-input Boolean functions are there up to permutations of inputs? — uses Burnside on the symmetric group acting on truth tables.
- Graph theory. Counting unlabeled graphs is an iconic Burnside / Pólya application: |unlabeled graphs on n vertices| = |labeled graphs| / |aut| where the average is taken via Burnside on S_n acting on edge sets. This gives the Erdős-Pólya asymptotic 2^(C(n, 2)) / n!.
- Crystallography and design theory. Counting symmetry classes of designs, matrix decompositions, and combinatorial geometries on lattices.
- Game theory and bracket problems. Counting distinct tournaments up to relabeling teams, distinct seedings of brackets, or distinct rotations of round-robin schedules.
Proof sketch (the double-counting argument)
Let G be a finite group acting on a finite set X. Define the set S = {(g, x) : g · x = x} of fixed-point incidences. We count |S| in two ways.
- By g. For each g ∈ G, Fix(g) is exactly the set of x with (g, x) ∈ S. So |S| = Σ_{g ∈ G} |Fix(g)|.
- By x. For each x ∈ X, Stab(x) = {g : g · x = x} is the stabilizer subgroup. So |S| = Σ_{x ∈ X} |Stab(x)|.
By the orbit-stabilizer theorem, |Stab(x)| · |Orbit(x)| = |G|, so |Stab(x)| = |G| / |Orbit(x)|. Sum over x: Σ_{x ∈ X} |G| / |Orbit(x)| = |G| · Σ_{orbits O} Σ_{x ∈ O} (1 / |O|) = |G| · (number of orbits). Equating the two expressions for |S| and dividing by |G| gives Burnside's identity. The whole proof is two pages, no machinery beyond orbit-stabilizer.
Worked examples
- Necklaces with 6 beads, 3 colors, rotation group C_6. Divisors of 6: {1, 2, 3, 6}; Euler totients φ(1) = 1, φ(2) = 1, φ(3) = 2, φ(6) = 2. Distinct necklaces = (1/6)(1 · 3^6 + 1 · 3^3 + 2 · 3^2 + 2 · 3^1) = (1/6)(729 + 27 + 18 + 6) = 130.
- Bracelets with 6 beads, 3 colors, dihedral group D_6. Add reflections to the cyclic count. Six reflections; for n even, three pass through opposite vertices (cycle 2-cycles plus 2 fixed beads, fixed colorings = c^4 = 81) and three through opposite edges (cycle 2-cycles only, fixed = c^3 = 27). Total = (1/12)(729 + 27 + 18 + 6 + 3 · 81 + 3 · 27) = (1/12)(780 + 243 + 81) = (1/12)(1104) = 92.
- Colorings of the cube faces with 2 colors. Cube rotation group has 24 elements. Cycle index Z = (1/24)(a_1^6 + 6 a_1^2 a_4 + 3 a_1^2 a_2^2 + 8 a_3^2 + 6 a_2^3). Substitute a_i = 2: (1/24)(2^6 + 6 · 2^3 + 3 · 2^4 + 8 · 2^2 + 6 · 2^3) = (1/24)(64 + 48 + 48 + 32 + 48) = 240/24 = 10.
- Coloring 4 corners of a square, 2 colors, rotation C_4. (1/4)(2^4 + 2^1 + 2^2 + 2^1) = (1/4)(16 + 2 + 4 + 2) = 6 distinct colorings.
- Coin-arrangement on a circle. n indistinguishable coins on a regular n-gon up to rotation, c colors: (1/n) Σ_{d | n} φ(d) c^(n/d). Direct application.
The cycle index polynomial
To make Pólya's refinement explicit, introduce variables a_1, a_2, … and define the cycle index of a group G acting on n elements:
Z(G; a_1, a_2, …) = (1/|G|) Σ_{g ∈ G} ∏_i a_i^{c_i(g)}.
Here c_i(g) is the number of i-cycles in the disjoint-cycle decomposition of g. Substituting a_i = c gives Burnside's count for c-color colorings. Substituting a_i = (x_1^i + x_2^i + ⋯ + x_c^i) — the i-th power-sum — gives the multivariate orbit-generating function in which the coefficient of x_1^{n_1} ⋯ x_c^{n_c} is the number of orbits with exactly n_j beads of color j.
Standard cycle indices:
- Cyclic group C_n. Z(C_n) = (1/n) Σ_{d | n} φ(d) a_d^{n/d}.
- Dihedral group D_n. Cyclic part plus reflections. For n odd: + (1/2) a_1 a_2^{(n−1)/2}. For n even: + (1/4)(a_1^2 a_2^{(n−2)/2} + a_2^{n/2}).
- Symmetric group S_n. Sum over conjugacy classes (partitions of n) weighted by class size; encodes set partitions of {1, …, n}.
- Alternating group A_n. Even permutations of S_n.
Common misconceptions
- "Needs G abelian." Burnside works for any finite group action, abelian or not. The cube rotation group (order 24, isomorphic to S_4) is non-abelian; Burnside still applies.
- "Complicated to compute." The lemma reduces an orbit count to fixed-point counts for individual group elements, often dramatically simpler. For symmetric groups acting nicely, the sum is by conjugacy classes — at most a partition-of-n count of terms.
- "Burnside's first proof." Cauchy proved it in 1845. Frobenius generalized in 1887. Burnside (1897) popularized it without attribution; modern texts increasingly write "Cauchy-Frobenius lemma" or "orbit-counting theorem".
- "Average fixed-point count is the orbit count." Strictly true only when G is finite. The infinite-group analogue requires Haar measure on G (compact case) — measure of fixed-point set replaces fraction of group elements that fix a point.
- "Pólya enumeration is just Burnside." Pólya's theorem refines Burnside by tracking weights / colors, not just counts. The cycle index polynomial encodes the action structurally, allowing multivariate generating-function output.
- "Stabilizers must be the same size." Different orbits can have stabilizers of different sizes. Burnside averages over the group, not over the orbits — this avoids the size-of-stabilizer trap.
Frequently asked questions
Why does averaging fixed-point counts give the orbit count?
The proof is a clever double-count. Consider pairs (g, x) with g · x = x — fixed-point incidences. Counting by g: Σ_{g ∈ G} |Fix(g)|. Counting by x: Σ_{x ∈ X} |Stab(x)|, where Stab(x) is the stabilizer subgroup. By the orbit-stabilizer theorem, |Stab(x)| = |G| / |Orbit(x)|. Sum over x: Σ_{x ∈ X} |G| / |Orbit(x)| = |G| · Σ_{orbits O} (|O| / |O|) = |G| · (number of orbits). Equating the two counts and dividing by |G| gives |X/G| = (1/|G|) Σ_g |Fix(g)|. The lemma is essentially orbit-stabilizer turned around.
How do you count necklaces with this lemma?
A necklace with n beads chosen from c colors, considered the same under rotation, is an orbit of the cyclic group C_n acting on c^n colorings. Each rotation by k positions has c^gcd(k, n) fixed colorings — beads at positions in the same orbit must match. Burnside gives the number of distinct necklaces as (1/n) Σ_{k=0}^{n−1} c^gcd(k, n) = (1/n) Σ_{d | n} φ(d) c^(n/d), where the second form groups rotations by their order d. For n = 6 beads and c = 3 colors: divisors d ∈ {1, 2, 3, 6} with φ values 1, 1, 2, 2; total (1/6)(3^6 + 3^3 + 2 · 3^2 + 2 · 3^1) = (1/6)(729 + 27 + 18 + 6) = 130.
What is the Pólya enumeration theorem?
Pólya (1937) refined Burnside to track not just orbit count but a generating function over orbit weights. The cycle index polynomial Z(G) = (1/|G|) Σ_{g ∈ G} ∏_i a_i^{c_i(g)}, where c_i(g) is the number of i-cycles of g (acting on the underlying set), encodes the action. Substituting a_i = x_1^i + x_2^i + ⋯ + x_c^i gives the multivariate generating function for the colorings; the coefficient of x_1^{n_1} ⋯ x_c^{n_c} counts colorings with n_j beads of color j, up to G-equivalence. Powerful enough to enumerate isomers in chemistry — Pólya's original motivation, applied to alkane structural isomers in 1936.
How does it apply to coloring cube faces?
The rotation group of a cube has 24 elements: identity (cycle a_1^6), 6 face rotations of 90° and 270° (cycle a_1^2 a_4 — two opposite faces fixed, four faces in a 4-cycle), 3 face rotations of 180° (cycle a_1^2 a_2^2), 8 vertex rotations of 120° and 240° (cycle a_3^2 — faces in two 3-cycles), 6 edge rotations of 180° (cycle a_2^3). Cycle index Z = (1/24)(a_1^6 + 6 a_1^2 a_4 + 3 a_1^2 a_2^2 + 8 a_3^2 + 6 a_2^3). Substituting a_i = c gives the count of distinct colorings with c colors: (c^6 + 6 c^3 + 3 c^4 + 8 c^2 + 6 c^3)/24, which for c = 2 evaluates to (64 + 48 + 48 + 32 + 48)/24 = 10.
What is a cycle index polynomial?
Z(G; a_1, a_2, …) = (1/|G|) Σ_{g ∈ G} ∏_i a_i^{c_i(g)} where c_i(g) is the number of i-cycles in the cycle decomposition of g acting on the underlying set. Each group element g contributes a monomial that records how many cycles of each length g produces; Z(G) averages these monomials over the group. Substituting a_i = c gives Burnside's count. Substituting a_i = x_1^i + ⋯ + x_k^i gives the colored generating function (Pólya). The cycle index for the symmetric group S_n is Σ products that match the conjugacy classes; the cycle index for the cyclic group C_n is (1/n) Σ_{d | n} φ(d) a_d^{n/d}.
Why was it called Burnside despite earlier proofs?
Cauchy proved the lemma in 1845 and Frobenius generalized it in 1887, but Burnside's 1897 textbook "Theory of Groups of Finite Order" popularized it without attribution to Cauchy — common practice at the time but resulting in the misnomer. Modern texts often write "Cauchy-Frobenius lemma" or "orbit-counting theorem" as a more honest name. Burnside himself credited Frobenius. The persistence of "Burnside's lemma" is a textbook accident: once a name catches on in undergraduate combinatorics, it is hard to dislodge. Stigler's law of eponymy at work — no scientific discovery is named after its original discoverer.