maths2u
Tier
⌕ Search ⌘K
Theorem

The orbit–stabiliser theorem

T-058Home MU-204Threads structure
Statement

Let \(G\) be a finite group acting on a nonempty set \(X\). Fix \(x \in X\), and let \(G_x = \{g \in G : g\cdot x = x\}\) be its stabiliser and \(Gx = \{g\cdot x : g \in G\}\) be its orbit. Then \(G_x \leq G\) is a subgroup, and there is a bijection between the set of left cosets \(G/G_x\) and the orbit \(Gx\), sending \(gG_x \mapsto g\cdot x\). Consequently \[ |G| = |Gx| \cdot |G_x|. \] In particular \(|Gx|\) divides \(|G|\).

Why it matters

The orbit-stabiliser theorem is the arithmetic engine of finite group theory: almost every counting argument involving a group action — Cayley's theorem, Burnside's lemma, the class equation, Sylow's theorems, the classification of transitive actions — reduces to comparing orbit sizes and stabiliser sizes via this one identity. It converts a geometric or combinatorial question ("how many objects of this type are there, and how do symmetries move them around?") into a purely divisibility-theoretic one.

It is also the conceptual bridge between two ways of measuring a group action: orbits measure how much the action "spreads points around", while stabilisers measure how much of the group "fixes a point in place". The theorem says these two measurements are exactly reciprocal, with product the fixed quantity \(|G|\).

Hypotheses
\(G\) is a group acting on a set \(X\). Without an actual group action (i.e. without \(g\cdot(h\cdot x) = (gh)\cdot x\) and \(e\cdot x = x\)), the map \(gG_x \mapsto g\cdot x\) is not even guaranteed to respect the coset structure; the entire correspondence collapses. E.g. an arbitrary function \(G \times X \to X\) with no compatibility axioms need not send cosets of any subgroup bijectively onto any subset of \(X\).
\(G\) is finite (for the numerical form \(|G| = |Gx||G_x|\)). The bijective form \(G/G_x \leftrightarrow Gx\) holds for infinite \(G\) too, but the "multiply cardinalities" statement needs care: e.g. \(G = (\mathbb{R}, +)\) acting on \(X = \mathbb{R}/\mathbb{Z}\) by translation has \(G_x = \mathbb{Z}\) and \(Gx = \mathbb{R}/\mathbb{Z}\), both infinite, and \(|G| = |G_x|\cdot|Gx|\) as an equation of infinite cardinals is either vacuous or requires cardinal arithmetic conventions — it is no longer the clean divisibility statement used in finite group theory (e.g. to bound orbit sizes or prove Sylow's theorems).
\(x\) is a fixed, specific point of \(X\) (the identity is applied to one orbit at a time). If one tried to apply the count to two points \(x, y\) in different orbits using \(G_x\) alone, the formula fails: e.g. \(G = S_3\) acting on \(X=\{1,2,3,4\}\) with \(4\) a fixed point disjoint from \(\{1,2,3\}\) has orbit \(\{4\}\) of size \(1\) and stabiliser of \(4\) equal to all of \(S_3\) (size \(6\)), giving \(1 \times 6 = 6 = |G|\) correctly for \(x=4\) — but using \(G_4\) to try to count the orbit of \(1\) would be meaningless, since stabiliser and orbit must correspond to the *same* point.
Proof
1
G_x = \{g \in G : g\cdot x = x\} \text{ is a subgroup of } G.
\(e \in G_x\) since \(e\cdot x = x\) by the identity axiom of a group action. If \(g,h \in G_x\) then \((gh)\cdot x = g\cdot(h\cdot x) = g\cdot x = x\), so \(gh \in G_x\) (closure, using the compatibility axiom). If \(g \in G_x\) then applying \(g^{-1}\) to both sides of \(g\cdot x = x\) gives \(x = g^{-1}\cdot x\), so \(g^{-1}\in G_x\). Hence \(G_x\) satisfies the subgroup criterion. A
2
\text{Define } \varphi : G/G_x \to Gx \text{ by } \varphi(gG_x) = g\cdot x.
Since \(G_x \leq G\) (Step 1), the set of left cosets \(G/G_x\) is well-defined and partitions \(G\) (Lagrange's theorem setup). We attempt to define \(\varphi\) on cosets rather than on elements, since the eventual bijection is between cosets and orbit points. B
3
\varphi \text{ is well-defined: } gG_x = hG_x \implies g\cdot x = h\cdot x.
If \(gG_x = hG_x\) then \(h^{-1}g \in G_x\) (standard coset criterion: two left cosets are equal iff the "difference" of their representatives lies in the subgroup), so \((h^{-1}g)\cdot x = x\). Applying \(h\) to both sides and using compatibility, \(g\cdot x = h\cdot((h^{-1}g)\cdot x) = h\cdot x\). This confirms \(\varphi\) does not depend on the choice of coset representative. A
4
\varphi \text{ is injective: } g\cdot x = h\cdot x \implies gG_x = hG_x.
Suppose \(g\cdot x = h\cdot x\). Applying \(h^{-1}\) to both sides and using compatibility and the identity axiom, \((h^{-1}g)\cdot x = h^{-1}\cdot(g\cdot x) = h^{-1}\cdot(h\cdot x) = (h^{-1}h)\cdot x = x\). So \(h^{-1}g \in G_x\), which by the coset criterion (same fact used in Step 3, run in reverse) gives \(gG_x = hG_x\). This is the converse of Step 3, so together they show \(\varphi\) is a well-defined injection. B
5
\varphi \text{ is surjective onto } Gx.
Any element of \(Gx\) has the form \(g\cdot x\) for some \(g \in G\), by definition of the orbit. Then \(\varphi(gG_x) = g\cdot x\), so every element of \(Gx\) is hit. This is immediate from the definitions of \(\varphi\) and of the orbit \(Gx\). A
6
\varphi : G/G_x \to Gx \text{ is a bijection of sets.}
Steps 4 and 5 give injectivity and surjectivity respectively, and Step 3 confirms \(\varphi\) is a genuine function. Note this step uses no group structure on \(Gx\) itself — \(Gx\) is merely a subset of \(X\), and \(\varphi\) is a bijection of sets, not (in general) of groups; \(G/G_x\) need not even be a group unless \(G_x \trianglelefteq G\). C
7
|G| = [G:G_x]\cdot |G_x|, \quad [G:G_x] = |G/G_x|.
This is Lagrange's theorem, applied to the subgroup \(G_x \leq G\) established in Step 1: the left cosets of \(G_x\) partition \(G\) into \([G:G_x]\) blocks each of size \(|G_x|\) (via the bijection \(g_0 G_x \to G_x\), \(g_0 h \mapsto h\), applied to each coset), so \(|G| = [G:G_x]|G_x|\). This step is cited as a known prior theorem, not reproved here. A
8
|Gx| = [G:G_x] \implies |G| = |Gx|\cdot|G_x|.
Step 6 gives a bijection \(G/G_x \leftrightarrow Gx\), so (for finite \(G\), hence finite \(G/G_x\) and finite \(Gx\)) these two finite sets have equal cardinality: \(|Gx| = [G:G_x]\). Substituting into the Lagrange identity of Step 7 gives \(|G| = |Gx|\cdot|G_x|\), the desired formula. B
Result
|G| = |Gx|\cdot|G_x|

Reading. For a group acting on a set, the number of places a point can be moved to (its orbit size) times the number of group elements that leave it fixed (its stabiliser size) always equals the total size of the group — no matter which point you start from. Orbit and stabiliser are reciprocal measurements of the same fixed budget \(|G|\).

Scope. Applies to any action of a finite group \(G\) on any nonempty set \(X\) (not necessarily finite itself, though \(Gx\) and \(G_x\) will be finite whenever \(G\) is). Applies pointwise: different points in the same orbit have conjugate, hence equal-size, stabilisers, but points in different orbits may have stabilisers of different sizes. The bijective form (Step 6) survives for infinite \(G\); the multiplicative numerical form is the finite-group statement.

Corollaries & converses
  • Orbit size divides \(|G|\). Immediate from \(|G| = |Gx||G_x|\): \(|Gx|\) is a positive integer divisor of \(|G|\). This is the single fact underlying Cauchy's theorem and Sylow's theorems.
  • Conjugate stabilisers. If \(y = g\cdot x\) lies in the same orbit as \(x\), then \(G_y = gG_xg^{-1}\); in particular all stabilisers within one orbit are conjugate, hence isomorphic, hence of equal size — consistent with the formula giving the same \(|G_x|\) for every point of a given orbit.
  • Class equation. Applying the theorem to the conjugation action of \(G\) on itself gives \(|G| = |Z(G)| + \sum_i [G:C_G(x_i)]\), summed over one representative \(x_i\) per non-central conjugacy class — the key tool in the proof of Sylow's first theorem and in classifying \(p\)-groups.
  • Converse does not hold as stated. Knowing only that \(|G| = ab\) for some factorisation does not produce an action with orbit size \(a\) and stabiliser size \(b\) at a given point — the theorem is a one-directional consequence of an action already existing, not an equivalence; existence of subgroups of given index is a separate, harder question (cf. Sylow's existence theorems, which are not automatic from Lagrange or orbit-stabiliser alone).
  • Transitive actions are exactly cosets actions. If the action is transitive (single orbit \(Gx = X\)), the theorem gives \(|X| = [G:G_x]\), and in fact \(X\) is isomorphic as a \(G\)-set to \(G/G_x\) with its natural left-translation action — every transitive action arises this way, up to relabelling.
Fails without
  • Drop "group action" (keep only a function \(G\times X \to X\)): Let \(G=\{e,a\}\) with any group structure act on \(X=\{1,2\}\) via a function that is not compatible with composition, e.g. \(e\cdot 1 = 1\), \(a\cdot 1 = 2\), but \(a\cdot(a\cdot 1) = a\cdot 2 = 1 \ne (aa)\cdot 1 = e\cdot 1 = 1\) — actually forcing an inconsistency: define instead \(a \cdot 2 = 2\) while \(a^2 = e\) demands \(a\cdot(a\cdot 1)=1\), yet the assignment gives \(a\cdot 2 = 2 \ne 1\). Such an inconsistent assignment is not a group action, and Steps 1, 3, 4 (which all invoke the compatibility and identity axioms) fail outright — there is no guarantee \(G_x\) is even a subgroup or that \(\varphi\) is well-defined.
  • Drop finiteness of \(G\): \(G=(\mathbb{Z},+)\) acting on \(X=\mathbb{Z}/n\mathbb{Z}\) by \(k \cdot \bar{m} = \overline{k+m}\). Here \(G_x = n\mathbb{Z}\) and \(Gx = \mathbb{Z}/n\mathbb{Z}\), and the bijection \(G/G_x \leftrightarrow Gx\) still holds (Step 6 survives), but \(|G|=\infty\), \(|G_x|=\infty\), \(|Gx|=n\) finite, so the numerical identity \(|G|=|Gx|\cdot|G_x|\) becomes \(\infty = n \cdot \infty\) — true only in a degenerate cardinal-arithmetic sense, and useless as a counting tool (it no longer bounds \(|Gx|\) or determines \(|G_x|\) from data).
  • Conflating stabilisers of different points: In the action of \(S_3\) on \(\{1,2,3\}\), the stabiliser of \(1\) is \(\{e,(23)\}\) (size 2) and the orbit of \(1\) is all of \(\{1,2,3\}\) (size 3), giving \(3\times 2=6=|S_3|\) correctly. But mixing point \(1\)'s orbit with the stabiliser of a different point in a different orbit under a different action — e.g. using the stabiliser of a fixed point under one action to compute an orbit size under a completely different action on a different set — produces nonsense, since the theorem is tied to one action and one point throughout.
Common errors
  • Writing \(|G| = |Gx| + |G_x|\) (addition instead of multiplication) — confusing this with the additive class-equation-style decomposition of a set into orbits, rather than the multiplicative relation within a single orbit.
  • Assuming \(G_x\) is normal in \(G\), and hence that \(G/G_x\) is automatically a group — the theorem only produces a bijection of sets between \(G/G_x\) and \(Gx\); \(G/G_x\) is a group only when \(G_x \trianglelefteq G\), which is not assumed or implied.
  • Using the stabiliser of one point to compute the orbit size of a different point in a different orbit, forgetting that stabiliser size can vary between orbits (though not within an orbit).
  • Forgetting to check the action is transitive before asserting \(|X| = [G:G_x]\) for the whole set \(X\); if the action has several orbits, this equality holds orbit-by-orbit, not for all of \(X\) at once (unless \(X\) itself is a single orbit).
  • Believing every divisor \(d\) of \(|G|\) is realised as an orbit size for some action and point — divisibility is necessary, not sufficient; realising specific orbit sizes requires actually exhibiting an action, and not every subgroup index is "achievable" for an arbitrary target set without constructing the action explicitly.
Discussion

The orbit-stabiliser theorem is, at heart, a rebranding of Lagrange's theorem: the real content is the bijection \(G/G_x \leftrightarrow Gx\) of Step 6, and everything numerical follows by combining that bijection with Lagrange's count of coset sizes. This is why the theorem generalises so cleanly to infinite groups in its bijective form, while the "multiply the sizes" slogan is really a finite-group corollary. Seeing the theorem this way — as "transitive actions are the same thing as coset spaces" — is the more structural statement, and it is the one that generalises furthest (to actions of topological or Lie groups, where \(G/G_x\) becomes a homogeneous space with genuine geometric structure, e.g. spheres as \(O(n)/O(n-1)\)).

Historically the result crystallises ideas already implicit in Cauchy's and Lagrange's work on permutations, but its formulation in terms of abstract group actions is a product of the late-19th/early-20th-century abstraction of group theory, alongside Burnside's development of counting arguments for permutation groups (Burnside's 1897 text on the theory of groups of finite order is an early systematic source). The theorem's role as the engine behind Sylow's theorems (proved by Sylow in 1872, predating the fully abstract action-theoretic language) is a good illustration of how a clean abstract statement can retroactively organise older, more computational results.

The theorem is a special case of a much more general phenomenon: whenever a group acts transitively on a set, that set is "the same" as a quotient of the group by a subgroup, and the size (or measure, or dimension) of the quotient reflects the "index" of the subgroup in the appropriate sense. This same pattern — total space = orbit space bijected with fibre-weighted count — reappears as the orbit-counting (Burnside/Cauchy-Frobenius) lemma for counting orbits themselves, and in the fibration-style decomposition seen in covering space theory.

A subtlety worth flagging: the bijection \(\varphi\) of Step 6 is a bijection of \(G\)-sets when \(G/G_x\) is given its natural left-translation action, i.e. \(\varphi\) intertwines the \(G\)-action on cosets with the \(G\)-action on the orbit: \(\varphi(h\cdot(gG_x)) = \varphi((hg)G_x) = (hg)\cdot x = h\cdot(g\cdot x) = h\cdot\varphi(gG_x)\). This means the theorem is really an isomorphism-of-\(G\)-sets statement, of which the cardinality equation is a shadow; this is precisely the "orbit theorem" used to classify all transitive \(G\)-sets up to isomorphism as exactly the coset spaces \(G/H\) for subgroups \(H \leq G\) up to conjugacy.

Common misconceptions: Students often think the theorem requires the action to be transitive; it does not — it holds pointwise for any point of any action, transitive or not, and transitivity is only needed if one wants to conclude something about the size of the whole set \(X\) rather than just one orbit within it.

Worked examples
1
\text{Let } G = S_4 \text{ act on } X=\{1,2,3,4\} \text{ by its natural action. Find } |G_1| \text{ where } G_1 \text{ stabilises } 1.
The action is transitive: every point can be sent to every other point by some permutation, so \(G\cdot 1 = \{1,2,3,4\}\), giving \(|G\cdot 1| = 4\). A
2
|G| = |S_4| = 4! = 24.
Standard fact: the symmetric group on \(n\) letters has order \(n!\). A
3
|G_1| = \frac{|G|}{|G\cdot 1|} = \frac{24}{4} = 6.
Direct application of the orbit-stabiliser theorem, solved for \(|G_x|\). B
4
\text{Check: } G_1 \cong S_{\{2,3,4\}} \cong S_3, \quad |S_3| = 6.
Permutations fixing \(1\) permute \(\{2,3,4\}\) arbitrarily and independently, giving a subgroup isomorphic to \(S_3\); this confirms the count obtained purely from the theorem without needing to list all 6 permutations explicitly. A
|G_1| = 6

Reading. The theorem let us compute the stabiliser size from the group order and orbit size alone, without constructing \(G_1\) directly.

Scope. Works identically for the natural action of \(S_n\) on \(n\) points: stabiliser of a point has order \((n-1)!\).

1
\text{Let } G \text{ be the rotation group of a cube, acting on the set } X \text{ of the cube's 6 faces. Find } |G|.
The rotation group acts transitively on faces: any face can be rotated to any other, so the action has a single orbit \(Gx = X\), \(|Gx| = 6\), for any fixed face \(x\). A
2
\text{The stabiliser of a face } x \text{ consists of rotations about the axis through the centres of } x \text{ and its opposite face.}
A rotation fixes face \(x\) as a set (i.e. maps \(x\) to itself, though it may permute the axis-through-\(x\) rotations of the square face) exactly when its axis passes through the centre of \(x\); such rotations form a cyclic group of order 4 (rotations by \(0^\circ, 90^\circ, 180^\circ, 270^\circ\) about that axis), since a square face has 4-fold rotational symmetry. B
3
|G_x| = 4.
Direct count of the stabilising rotations identified in Step 2. A
4
|G| = |Gx|\cdot|G_x| = 6 \times 4 = 24.
Direct application of the orbit-stabiliser theorem to the transitive action on faces. B
|G| = 24

Reading. The rotation group of the cube has exactly 24 elements — recovered purely by counting one orbit (6 faces) and one stabiliser (4 axis-rotations), without listing all rotations directly.

Scope. The same technique computes the order of any finite rotation/symmetry group from any convenient transitive action (faces, vertices, edges), and consistency across choices is itself a useful check: acting on the cube's 8 vertices instead gives orbit size 8 and stabiliser size 3 (rotations about a vertex-to-opposite-vertex axis), again \(8\times3=24\).

Problems
  1. Let \(G = D_4\) (symmetries of a square, order 8) act naturally on the 4 vertices of the square. Compute the stabiliser size of one vertex, and verify the orbit-stabiliser identity.
    SolutionThe action is transitive (any vertex can be moved to any other by a rotation), so the orbit of a vertex \(x\) is all 4 vertices: \(|Gx|=4\). Since \(|G|=|D_4|=8\), the theorem gives \(|G_x| = 8/4 = 2\). Indeed, the stabiliser of a vertex consists of the identity and the single reflection through the diagonal passing through that vertex (and the opposite vertex) — exactly 2 elements, confirming \(|Gx|\cdot|G_x| = 4\times 2 = 8 = |G|\).
  2. A group \(G\) of order 60 acts on a set of size 14 with no fixed points (i.e. every orbit has size \(\gt 1\)). Explain why the action cannot be transitive, using the orbit-stabiliser theorem.
    SolutionIf the action were transitive, the single orbit would be all of \(X\), so \(|Gx| = 14\) for any \(x\). But the orbit-stabiliser theorem requires \(|Gx|\) to divide \(|G| = 60\). Since \(14 \nmid 60\) (as \(60 = 4\times14 + 4\), remainder 4, not 0), no orbit of size 14 is possible, so the action cannot be transitive on a 14-element set.
  3. Let \(G = S_5\) act on the set of 2-element subsets of \(\{1,2,3,4,5\}\) by \(g\cdot\{a,b\} = \{g(a),g(b)\}\). Find the size of the stabiliser of \(\{1,2\}\).
    SolutionThere are \(\binom{5}{2}=10\) two-element subsets, and the action is transitive (any pair can be sent to any other pair by a suitable permutation), so \(|Gx| = 10\). Since \(|G| = |S_5| = 120\), the orbit-stabiliser theorem gives \(|G_x| = 120/10 = 12\). (Check: the stabiliser consists of permutations either fixing both \(1,2\) individually and permuting \(\{3,4,5\}\) arbitrarily — \(3! = 6\) such — or swapping \(1\leftrightarrow2\) while permuting \(\{3,4,5\}\) arbitrarily — another \(6\) — totalling \(12\).)
  4. Suppose \(G\) has order \(p^2\) for a prime \(p\), and acts on a set \(X\) with \(|X|\) not divisible by \(p\). Show that the action has a fixed point (a point \(x\) with \(Gx=\{x\}\)), given that \(X\) is a single orbit under this action... or more generally, show some orbit must be a single point. (Hint: consider all possible orbit sizes.)
    SolutionBy the orbit-stabiliser theorem, every orbit size divides \(|G|=p^2\), so each orbit has size \(1\), \(p\), or \(p^2\). If every orbit had size \(p\) or \(p^2\), then \(|X|\) — being a sum of these orbit sizes over all orbits — would be divisible by \(p\) (a sum of multiples of \(p\) is a multiple of \(p\)). This contradicts the hypothesis that \(p \nmid |X|\). Hence at least one orbit must have size \(1\), i.e. some point \(x\) satisfies \(Gx = \{x\}\), a fixed point.
  5. A finite group \(G\) acts transitively on a set \(X\) with \(|X| = 15\). If the stabiliser of a point is cyclic, list the possible values of \(|G|\) subject only to the constraint that \(15\) divides \(|G|\) with quotient equal to the stabiliser order, and give one concrete example of such a \(G\) and action for the smallest nontrivial case beyond \(|G|=15\).
    SolutionBy the theorem, \(|G| = |X|\cdot|G_x| = 15\cdot|G_x|\), so \(|G|\) must be a multiple of 15: \(|G| \in \{15, 30, 45, 60, \ldots\}\) depending on the (unconstrained beyond cyclicity) stabiliser order. The smallest case beyond the trivial stabiliser (\(|G_x|=1\), \(|G|=15\)) is \(|G_x|=2\), \(|G|=30\): concretely, \(G = D_{15}\) (dihedral group of order 30, symmetries of a regular 15-gon) acting on the 15 vertices of the 15-gon is transitive, with stabiliser of a vertex being the cyclic group of order 2 generated by the reflection through that vertex, matching \(|G|=30=15\times2\).