Group theory / group actions

The Orbit-Stabilizer Theorem: Counting Symmetries

Want to know how many rotations a cube has? Don't enumerate them — pick a single face, note that 6 faces can land where it sits and 4 rotations fix it in place, and read off 6 × 4 = 24. That trick is the Orbit-Stabilizer Theorem, one of the most quietly powerful counting devices in all of mathematics.

Precisely: if a group G acts on a set X, then for every point xX the size of its orbit equals the index of its stabilizer — |orbit(x)| = [G : Stab(x)] = |G| / |Stab(x)| when G is finite. Symmetry gets converted into arithmetic: the number of places a point can go, times the number of symmetries that pin it down, is the total number of symmetries.

  • FieldGroup theory / group actions
  • Statement|Orbit(x)| = [G : Stab(x)] = |G|/|Stab(x)|
  • Key hypothesisG acts on X; |G| finite for the division form
  • Proof techniqueExplicit bijection between G/Stab(x) and Orbit(x)
  • Attributed toCauchy, Burnside, Frobenius (19th c.); named 20th c.
  • GeneralizesLagrange's theorem (via G acting on cosets)

Interactive visualization

Press play, or step through manually. The visualization is yours to drive — try it before reading on.

Open visualization fullscreen ↗

Watch the 60-second explainer

A condensed visual walkthrough — narrated, captioned, under a minute.

The precise statement

Let a group G act on a set X — meaning there is a map G × XX, written (g, x) ↦ g·x, satisfying e·x = x and g·(h·x) = (ghx for all g, hG. Fix a point xX. Two objects attach to it:

  • The orbit Orbit(x) = { g·x : gG } ⊆ X, the set of all places x can be sent.
  • The stabilizer Stab(x) = { gG : g·x = x }, which is a subgroup of G.

Theorem (Orbit-Stabilizer). There is a natural bijection between the orbit of x and the set G/Stab(x) of left cosets of its stabilizer. Hence |Orbit(x)| = [G : Stab(x)]. When G is finite, Lagrange gives the division form |Orbit(x)| = |G| / |Stab(x)|. In particular orbit size always divides |G|.

The picture: trading motion for rigidity

Think of G as a bag of symmetries and x as a marked spot you can shove around. The orbit is the shadow x sweeps out; the stabilizer is the redundancy — the symmetries that move everything else but leave x exactly where it was. The theorem says these two quantities are exactly complementary: the more symmetries fix x, the fewer distinct places it can reach, and their product is a constant, |G|.

Concretely, imagine rotating a square (dihedral group, |G| = 8) and watching one corner. It can land on any of the 4 corners, so the orbit has size 4. That forces the stabilizer to have size 8/4 = 2 — indeed the identity and the reflection through that corner's diagonal fix it. You never had to hunt for the stabilizer; the orbit size told you it had 2 elements. This complementarity — freedom of motion inversely proportional to rigidity — is the whole theorem in one sentence.

The key idea: one clean bijection

The engine is a single well-defined map. Write H = Stab(x). Define φ : G/H → Orbit(x) by φ(gH) = g·x.

  • Well-defined. If gH = g′H then g′ = gh for some hH, so g′·x = g·(h·x) = g·x. The output doesn't depend on the coset representative.
  • Injective. If g·x = g′·x, then (g⁻¹g′x = x, so g⁻¹g′H, i.e. gH = g′H. This step is exactly where the subgroup property of H is used.
  • Surjective. Every orbit element is g·x = φ(gH) by definition.

A bijection between a set of cosets and the orbit gives equality of cardinalities — and it works whether or not G is finite. The finite division formula is then just Lagrange's theorem applied to HG. That is the entire proof; its elegance is that it constructs, rather than merely counts.

Worked example: the rotations of a cube

Let G be the group of rotational symmetries of a cube, acting on X = the 6 faces. Pick the top face x.

  • Orbit. Any face can be rotated to the top, so Orbit(x) is all 6 faces: |Orbit(x)| = 6.
  • Stabilizer. Rotations fixing the top face are the spins about the vertical axis: 0°, 90°, 180°, 270°. So |Stab(x)| = 4.

Orbit-Stabilizer then reads off |G| = 6 × 4 = 24 — no enumeration needed. Cross-check with a different action: G also acts on the 8 vertices. One vertex's orbit is all 8 vertices, and its stabilizer is the three rotations (0°, 120°, 240°) about the long diagonal through it, size 3. Again |G| = 8 × 3 = 24. The same |G| emerges from any transitive action, factored differently — a robust sanity check that also proves the cube's rotation group is isomorphic to S₄.

Why the hypotheses matter, and how it connects

The bijection form needs only that G acts on X — no finiteness required. What finiteness buys is the division statement |Orbit(x)| = |G|/|Stab(x)|. Drop it and this can fail: let G = ℤ act on X = ℝ by n·t = t + n. The orbit of 0 is ℤ (countably infinite), the stabilizer is trivial, and "∞/1" is not the useful arithmetic statement — only the coset bijection [G : Stab] survives, and it correctly gives an infinite index. The one indispensable structural fact is that Stab(x) really is a subgroup; injectivity of φ collapses without it.

Connections. Take G acting on itself by left multiplication: every stabilizer is trivial, so every orbit has size |G| — that is the regular representation. Take the action on cosets of a subgroup H and you recover Lagrange's theorem. Take conjugation and orbits become conjugacy classes, yielding the class equation — the springboard for Cauchy's and the Sylow theorems.

Applications and significance

Orbit-Stabilizer is the load-bearing beam under a surprising amount of algebra and combinatorics:

  • Counting symmetric objects. Combined with the averaging step it becomes Burnside's lemma (#orbits = average number of fixed points), the workhorse for counting distinct colorings of a necklace, cube, or molecule up to symmetry, and the foundation of Pólya enumeration.
  • Structure of finite groups. The class equation |G| = |Z(G)| + ∑ [G : C(xᵢ)] proves that every p-group has nontrivial center, drives Cauchy's theorem and the Sylow theorems, and underlies the classification effort.
  • Geometry and beyond. Identifying a homogeneous space as G/Stab — the sphere as SO(3)/SO(2), for instance — is the orbit-stabilizer theorem for Lie group actions, the entry point to representation theory and the study of symmetric spaces.

Its significance is conceptual: it is the precise dictionary translating geometry (orbits, where things can go) into algebra (subgroups and indices, how many symmetries do what).

Orbit-Stabilizer and its close relatives in the counting toolkit
ResultWhat it countsPrecise statementRelationship
Orbit-StabilizerSize of one orbit|Orbit(x)| = [G : Stab(x)]The base identity
Lagrange's theoremCosets of a subgroup|G| = [G:H]·|H|Special case: G acts on G/H by left mult., Stab = H
Class equationConjugacy classes|G| = |Z(G)| + ∑ [G : C_G(xᵢ)]Orbit-Stab applied to G acting on itself by conjugation
Burnside's lemmaNumber of orbits#orbits = (1/|G|) ∑_{g∈G} |Fix(g)|Sums Orbit-Stab counts to average fixed points
Cauchy's theoremElements of order pp | |G| ⇒ ∃ element of order pProved via a ℤ/p action + orbit sizes ∈ {1, p}

Frequently asked questions

What exactly is the orbit-stabilizer theorem?

For a group G acting on a set X and any point x, it states that the orbit of x is in bijection with the left cosets of its stabilizer: |Orbit(x)| = [G : Stab(x)]. When G is finite this becomes |Orbit(x)| = |G| / |Stab(x)|. In words, orbit size times stabilizer size equals the group's order.

Why is the stabilizer guaranteed to be a subgroup?

The identity fixes x, so e ∈ Stab(x). If g and h fix x then (gh)·x = g·(h·x) = g·x = x, so it is closed. And if g·x = x then x = g⁻¹·x, so inverses stay in. These are exactly the subgroup axioms. This subgroup property is what makes the coset bijection injective.

Does the theorem require the group to be finite?

No — the core statement, the bijection between G/Stab(x) and the orbit, holds for any group action whatsoever, giving |Orbit(x)| = [G : Stab(x)] as cardinalities. Finiteness is needed only to rewrite the index as the quotient |G|/|Stab(x)|, since that division formula depends on Lagrange's theorem for finite groups.

How does orbit-stabilizer prove Lagrange's theorem?

Let the whole group G (not H) act on the set of left cosets G/H by left multiplication g·(aH) = gaH, and take x = the coset H itself. Its orbit is all of G/H (the action is transitive) and its stabilizer is exactly H. Orbit-Stabilizer then gives [G : H] = |Orbit| = |G|/|Stab| = |G|/|H|, i.e. |G| = [G:H]·|H| — Lagrange's theorem.

What's the difference between orbit-stabilizer and Burnside's lemma?

Orbit-Stabilizer measures the size of a single orbit from the stabilizer of one of its points. Burnside's lemma counts the total number of orbits by averaging fixed points: #orbits = (1/|G|) ∑_g |Fix(g)|. You derive Burnside by summing the orbit-stabilizer relation over all points and reorganizing the double count, so Burnside sits one level above.

Who proved it and where does the name come from?

The underlying counting ideas trace to Cauchy and were systematized by Camille Jordan, William Burnside (whose 1897 book popularized group actions), and Frobenius in the 19th century; no single person is credited with the theorem in its modern coset form. The descriptive name 'orbit-stabilizer' is a 20th-century pedagogical convention, not an original attribution.