Same torus, bigger ambient group
3×3 torus patterns with quarter turns
Allow rotation as well as translation and the ambient group grows from 9 elements to 36 — and stops being abelian. That single change alters what a stabilizer even is: patterns in one orbit no longer share a stabilizer, they only share a conjugacy class.
The ambient group
The quarter turn r(a,b) = (−b, a) is an order-4 automorphism of
(ℤ/3)², so it acts on the wrapped 3×3 grid. Together with the
nine translations it generates
Γ = (ℤ/3)² ⋊ C₄, of order 36,
acting faithfully on the nine cells.
A cell has orbit 9 and stabilizer of order 4 (the quarter turns about it), and 9 × 4 = 36 — the same frame-counting argument as for the square grid, with the four reflections dropped.
What changes
| translations only | with quarter turns | |
|---|---|---|
| ambient order | 9 | 36 |
| abelian? | yes | no |
| orbits of the 512 patterns | 64 | 28 |
| distinct stabilizer subgroups | 6 | 32 |
| conjugacy classes of stabilizers | 6 | 6 |
| patterns with nontrivial stabilizer | 26 | 224 |
The new phenomenon
With only translations, the ambient group was abelian, so
Stab(t·P) = t·Stab(P)·t⁻¹ = Stab(P) — orbit-mates
had identical stabilizers. That fails here. Take the nine patterns with a single
filled cell: they form one orbit, and each is fixed by the quarter turns about
its own cell, so the orbit carries nine different subgroups of
order 4, all conjugate.
That is why the table above shows 32 subgroups but still only 6 classes, and it is the same
distinction that forces Conway’s G/H/K notation: the three colour
stabilizers of an S₃ colouring are conjugate but distinct. The abelian
torus cannot show it; this one can.
The six classes
Filled cells are 1, outlined cells are 0. Rows are ordered by stabilizer size; every pattern with a nontrivial stabilizer is drawn, grouped by orbit.
|K| = 36 — Γ itself
- Stabilizer
- Generated by C₃×C₃ ⋊ C₄, everything. The constant patterns. Nothing can distinguish any cell, so the whole ambient group fixes them.
- Orbits
- Orbit–stabilizer forces every orbit to have size 36 / 36 = 1. Here every pattern in an orbit has the same stabilizer.
orbit 1 · 1 patterns
orbit 2 · 1 patterns
|K| = 6 — S₃ — rows and columns
- Stabilizer
- Generated by three translations along a line, inverted by half-turns. A striped pattern. The stripe direction is preserved by translations along it and by half-turns about points on it, but a quarter turn tilts it.
- Orbits
- Orbit–stabilizer forces every orbit to have size 36 / 6 = 6. Here patterns in one orbit have conjugate but different stabilizers.
orbit 1 · 6 patterns
orbit 2 · 6 patterns
|K| = 6 — S₃ — diagonals
- Stabilizer
- Generated by three translations along a line, inverted by half-turns. A striped pattern. The stripe direction is preserved by translations along it and by half-turns about points on it, but a quarter turn tilts it.
- Orbits
- Orbit–stabilizer forces every orbit to have size 36 / 6 = 6. Here patterns in one orbit have conjugate but different stabilizers.
orbit 1 · 6 patterns
orbit 2 · 6 patterns
|K| = 4 — C₄
- Stabilizer
- Generated by quarter turns about a single cell. Patterns built from full quarter-turn orbits around one fixed cell.
- Orbits
- Orbit–stabilizer forces every orbit to have size 36 / 4 = 9. Here patterns in one orbit have conjugate but different stabilizers.
orbit 1 · 9 patterns
orbit 2 · 9 patterns
orbit 3 · 9 patterns
orbit 4 · 9 patterns
orbit 5 · 9 patterns
orbit 6 · 9 patterns
|K| = 2 — C₂
- Stabilizer
- Generated by one half-turn. Patterns symmetric under a 180° turn about a point, but nothing more.
- Orbits
- Orbit–stabilizer forces every orbit to have size 36 / 2 = 18. Here patterns in one orbit have conjugate but different stabilizers.
orbit 1 · 18 patterns
orbit 2 · 18 patterns
orbit 3 · 18 patterns
orbit 4 · 18 patterns
orbit 5 · 18 patterns
orbit 6 · 18 patterns
orbit 7 · 18 patterns
orbit 8 · 18 patterns
|K| = 1 — trivial
- Stabilizer
- Generated by nothing. Patterns with no symmetry at all.
- Orbits
- Orbit–stabilizer forces every orbit to have size 36 / 1 = 36. Here every pattern in an orbit has the same stabilizer.
288 patterns in 8 orbits of size 36 — not drawn.
Summary
| class | orbit size | orbits | patterns | subgroups | within an orbit |
|---|---|---|---|---|---|
| |K| = 36 — Γ itself | 1 | 2 | 2 | 1 | same |
| |K| = 6 — S₃ — rows and columns | 6 | 2 | 12 | 6 | conjugate only |
| |K| = 6 — S₃ — diagonals | 6 | 2 | 12 | 6 | conjugate only |
| |K| = 4 — C₄ | 9 | 6 | 54 | 9 | conjugate only |
| |K| = 2 — C₂ | 18 | 8 | 144 | 9 | conjugate only |
| |K| = 1 — trivial | 36 | 8 | 288 | 1 | same |
Checks: orbit sizes are exactly 36 / |K|; the orbit total is 28, matching
Burnside’s lemma over Γ independently; and the pattern total is 512.
Why the four lines became two classes
In the translation-only version the four line subgroups —
rows, columns, and the two diagonals — were four separate rows, fused only by
GL(2,𝔽₃) at the classification level. The quarter turn is now
inside the group: it carries rows to columns and each diagonal to the other. So
they merge into two classes of six subgroups each, and the merging happens in the ambient
group rather than in the equivalence on groups.
Note also that the striped stabilizers are S₃, not C₆:
three translations along the stripe, inverted by the half-turns about points on it. The
smallest nonabelian group appears here without being asked for.
Generated by scripts/generate_torus_patterns_c4.py. Companion to the torus tutorial and the translation-only pattern page.