Animated groups · prep for the SymHub call, Tue 27 Oct 2026

Symmetric Animation Analogs

Each toy here has to loop while obeying a local rule and a global symmetry at once. Each one is live on this page, and each says something about how the clockwork films are found.

For Chaim Goodman-Strauss, Scott Vorthmann and Vladimir Bulatov. Written Mon 26 Oct 2026 (week 44). Every number here comes from code that was run for this page, or from a cited source.

Every demo box has one blue button, the thing to press, and four of them have something to drag. Short on time? Read the box below, then §3, then the questions for Tuesday.

The global rule is bookkeeping, not a second equation. For every symmetry gg of the pattern,

q(g x, t+τgT)=q(x,t):q(g\,x,\ t + \tau_g T) = q(x,t):

moving the picture by gg shows you the film τg\tau_g of a period later. Apply it twice and τhg=τh+τg\tau_{hg} = \tau_h + \tau_g falls out, so τ\tau is a homomorphism G→R/ZG \to \mathbb{R}/\mathbb{Z}: a clock hung on the symmetry group. Its kernel KK is the symmetry a single frame shows, and G/KG/K is a cyclic clock with mm positions.

Why the global rule can coexist with the local one at all: the Brusselator cannot tell one copy of the plane from another, or one moment from the next. So every gg, with its time shift, carries solutions to solutions, and a clockwork film is a film that this group action leaves fixed. Finding one is finding a fixed point. There are three ways to do that: fold the rule into the domain, project onto it, or twist the boundary condition in time. Each toy below does one of them, on something small enough to watch.

1 · The smallest clockworkTurn the triangle and the clock jumps a third of a period

Three identical oscillators on a ring, each pushed away from its neighbours: that is the local rule. They settle into a wave, each one a third of a period behind the last. Turn the ring by one cell and you see the film a third of a period later, τ(turn)=13\tau(\text{turn}) = \tfrac13. Nothing in the equation asked for that. It is the compromise in which every bond is equally unhappy.

On a ring of NN cells the whole global rule is one integer, the twist qq, with τ(turn)=q/N\tau(\text{turn}) = q/N. There are exactly NN such clocks, because there are exactly NN homomorphisms ZN→R/Z\mathbb{Z}_N \to \mathbb{R}/\mathbb{Z}. The centre is the one point every turn fixes, so for every q≠0q \neq 0 the average there must vanish (it reads about 10−1610^{-16}). That is the forced zero of the magic theorem’s Theorem B, the reason the film is still at α and β.

Drag the coupling through zero and the same twisted wave turns from attractor into repeller. Which twists a simulation can find is set by the local rule, not by the symmetry: with attractive coupling a twist is stable only when ∣q∣<N/4\lvert q\rvert \lt N/4, counting qq from −N/2-N/2 to N/2N/2.

Theorem A (the time cost is a character of the group) and Theorem B (a point fixed by a turn that costs time must be dark), in a system with three moving parts.

Sources
  • Twisted states and their stability: D. A. Wiley, S. H. Strogatz, M. Girvan, Chaos 16, 015103 (2006); M. Goebel, M. S. Mizuhara, S. Stepanoff, Chaos 31 (2021) (stable iff ∣q∣<n/4\lvert q\rvert \lt n/4).
  • P. Ashwin, J. W. Swift, “The dynamics of n weakly coupled identical oscillators”, J. Nonlinear Sci. 2 (1992).
  • Measured here: the centre reads 1.0 for q=0q = 0 and below 10−1510^{-15} for every other qq, at N=3N = 3 and N=6N = 6.

2 · The film’s own symmetry, without a PDEA lattice of repelling oscillators carries g227 exactly

Now put an oscillator on every site of a triangular lattice, each pushing away from its six neighbours. Two neighbours would like to be half a period apart, but around a triangle that cannot work: the lattice is frustrated. The compromise is 120° on every bond. Three interleaved sublattices form, and the whole pattern turns steadily. (Physicists know it as the ground state of the triangular XY antiferromagnet.)

That rotating state has exactly the symmetry r33₁3₂, catalogue entry g227, the symmetry of the published film. A turn about a lattice site costs nothing (γ), about an up-triangle centre a third of a period (α), and about a down-triangle centre two thirds (β). A slide by one lattice vector costs a third or two thirds, depending on its direction: the r prefix, derived rather than assumed. Measured against the project’s own group file, all nine time costs agree to 1.7×10−161.7\times10^{-16}.

Everything the magic theorem predicts can be seen here, with no differential equation in sight. The smoothed field vanishes at α and β (to 10−1610^{-16}), the phase winds −1-1 and +1+1 around them and 00 around γ, and the windings in a cell sum to zero. The character law holds with the minus sign; with the plus sign it is off by exactly 3\sqrt3, the same number the magic-theorem page measured on the published film.

One sign separates this toy from the real thing. Here the clockwork is the attractor and unison is the repeller. For the Brusselator it is the other way round, which is why the tutorial has to solve for its film rather than simulate it. Flip the coupling in the demo and you watch the Brusselator’s failure mode in ten seconds.

Imposing more of the symmetry buys reliability. From 100 random starts, free relaxation reaches the perfect state 13 times (the rest freeze with walls between the two chiralities; the demo opens on one of the lucky 13, so press Scramble to meet the usual outcome). Averaging once over the nine operations of one box gives 74, and projecting onto the whole group gives 100. This lattice holds 48 such boxes, so there the nine are only 9 of its 432 operations and do not form a group. On the catalogue’s single box the nine are the whole group, and step 2’s average is an exact projector.

Step 2’s projector and Theorems A, B and C, on the project’s own symbol. The stability is inverted, so you can watch the film assemble instead of fall apart.

Sources
  • The 120° three-sublattice ground state: S. Miyashita, H. Shiba, J. Phys. Soc. Jpn. 53, 1145 (1984); H. Kawamura, arXiv:cond-mat/0202109.
  • Repulsively coupled phase oscillators and their domains: M. Giver, Z. Jabeen, B. Chakraborty, Phys. Rev. E 83, 046206 (2011).
  • Measured here, against the project’s wallpaper-groups.json entry g227: worst time-cost error 1.665×10−161.665\times10^{-16}, worst symmetry residual 1.3×10−151.3\times10^{-15} rad over 144 sites; ∣A∣\lvert A\rvert at α and β below 10−1510^{-15} of its maximum; character law 2.0×10−142.0\times10^{-14} with the minus sign, 1.73205081.7320508 with the plus sign.
  • A related experiment-scale pattern: L. Yang, M. Dolnik, A. M. Zhabotinsky, I. R. Epstein, a three-phase oscillating hexagonal lattice in reaction–diffusion, Phys. Rev. Lett. 88, 208303 (2002).

3 · How a global rule gets imposedFold it, project onto it, or twist time

Part of the rule fits in a single frame (the time-free symmetries KK), and part relates different moments. Every method on this page, and every step of the tutorial, is one of three moves.

Fold

Put the rule in the domain. Divide by the group, solve on one tile with its edges glued, and a symmetry that costs time becomes a delay on the gluing. Nothing has to be checked, because nothing can fail.

The delayed glue (146 of the 1,296 nodes). The tile editor.

Project

Put the rule in the unknowns. Averaging over the group with phases, 19∑ge2πiτgB(gx)\tfrac19\sum_g e^{2\pi i \tau_g} B(gx), deletes every Fourier coefficient the rule forbids. On a Brusselator frame it reaches only the three time-free relations. On the envelope’s rotating wave, where waiting is the same as turning the phase, it reaches all nine: that is the trick of step 2.

Steps 2 and 3, and step 4’s averaging. The figure eight, the lattice.

Twist

Put the rule in the boundary condition in time: run T/mT/m, apply gg, land where you started. It is the only move that reaches the relations no frame can carry, and the only one that never asks whether the answer is stable.

Step 4’s equation. The Brusselator ring, the billiard, Life.

The five steps use all three: step 2 projects (and step 3 keeps what it projected), step 4 projects the kernel and twists the rest (which is why one relation is the equation and the other five follow), and step 5 checks. The delayed glue swaps step 4’s twist for a fold.

4 · TwistRun a third of a period, turn, land where you started: the tutorial’s method on 7 numbers

A ring of three Brusselator cells, with the project’s own a=1a = 1 and b=2.3b = 2.3, coupled by diffusion. Step 1 gives the job’s numbers exactly: eigenvalues 0.15±0.9887 i0.15 \pm 0.9887\,i and T0=6.3551T_0 = 6.3551. Step 4 is the same equation,

F(q0,T)=Sg ΦT/3(q0)−q0=0,F(q_0, T) = S_g\,\Phi_{T/3}(q_0) - q_0 = 0,

in 7 unknowns instead of 2,593. Newton converges in 2 to 6 steps onto a loop whose disturbances grow ×1.47 per period. A free simulation started on that loop collapses into unison within 100 periods: the published film’s ×1.16 per period and “by period 135 none are left”, in miniature.

Two other solvers land on the same unstable loop. One makes the whole loop the unknown, as a Fourier series in time; it agrees to 8.5×10−98.5\times10^{-9}, a gap that is all the shooting route’s time step, since at a tenth of the step the two agree to 8.6×10−138.6\times10^{-13} (the demo’s Fourier button does both). The other, run in the research code rather than in this demo, is the delayed glue: one cell fed its own history from T/3T/3 and 2T/32T/3 ago. It agrees to 8×10−108\times10^{-10}.

Step 4 entire: the kernel averaged in, one time-costing symmetry as the equation, the rest following, and the instability that defeats plain simulation reproduced.

Sources
  • The project’s tutorial, How to find a time-symmetric animation, steps 1 to 5.
  • Measured here: N=3N = 3, D=0.03D = 0.03: the twisted loop T=6.3528903276T = 6.3528903276, dominant Floquet multiplier 1.474442; the in-phase loop T=6.4276201228T = 6.4276201228, stable. All relations hold on a freely simulated period to 5.8×10−95.8\times10^{-9} at the project’s own time step of 0.02 (the job’s step 5 reads 4.4×10−94.4\times10^{-9}).
  • The same method in fluid dynamics, for comparison: Y. Lan, P. Cvitanović, “Unstable recurrent patterns in Kuramoto–Sivashinsky dynamics”, Phys. Rev. E 78, 026208 (2008) (orbits that close up to a reflection; their published periods were reproduced here to five decimals); D. Viswanath, J. Fluid Mech. 580 (2007) (Newton–Krylov with a hookstep).

5 · FoldDivide by the group and the global rule becomes a gluing rule on one tile

Folding the plane by p3 gives Conway’s 333 turnover: one hexagonal tile whose six edges are glued in pairs by the three 120° turns. Drag the six dots on three of the edges into any shape you like, and the group writes the other three. The global symmetry has become a local rule at the seams. This is the delayed glue with the delay set to zero. Switch on the clockwork and every tile takes the time offset its symmetry costs.

The folded domain is also the right size for the solver. Burnside’s lemma over the nine box operations counts the orbits of the 1,296 mesh nodes:

19 (1296+0+0+3+3+3+3+3+3)=146,\tfrac19\,(1296 + 0 + 0 + 3 + 3 + 3 + 3 + 3 + 3) = 146,

That is exactly the 146 of 1,296 nodes the delayed-glue code simulates (1296/9=1441296/9 = 144 would be wrong). The three time-free symmetries alone leave (1296+3+3)/3=434(1296 + 3 + 3)/3 = 434 orbits, and 2×434=8682 \times 434 = 868 is the tutorial’s “868 free numbers”. Both sizes are point counts of quotients, so for each of the other 67 entries they follow from counting fixed points, before any solver runs.

Fold: the delayed glue solves on the orbifold (146 nodes), step 4’s averaging on the quotient by the time-free symmetries (434 nodes, 868 numbers), and Burnside fixes both counts before any solver runs.

Sources
  • J. H. Conway, H. Burgiel, C. Goodman-Strauss, The Symmetries of Things (2008): orbifold notation, the Magic Theorem.
  • Isohedral tilings: B. Grünbaum, G. C. Shephard, Math. Proc. Camb. Phil. Soc. 82 (1977); C. S. Kaplan, C. Goodman-Strauss, Isohedral tiles, tilings and notations.
  • Measured here: 2,500 random points covered exactly once under five random edge deformations; glued edges coincide to 3×10−163\times10^{-16}; the tile’s area never moves (spread 2.7×10−152.7\times10^{-15}). The 146 and 868 come out of three independent counting codes; the 146 is also the size of the fundamental domain in the project’s delayed-glue code (dde.py).

6 · ProjectChange the global rule and the same solver returns a different orbit

Three equal masses chase one another around one closed curve. Newton’s law is the local rule; a group acting on loops is the global one. Under the figure-eight group (“half a period later is a mirror image”) the action falls to the Chenciner–Montgomery figure eight, and its period matches Simó’s published value to three parts in 10910^{9}. Under “half a period later is a half turn”, the same solver, started from noise, falls to Lagrange’s rotating triangle. Same equation, same solver: the global rule picks the answer.

The rule never appears as a residual. Solved once by hand, it says which Fourier modes may appear: in xx only cosines with k≡±1(mod6)k \equiv \pm 1 \pmod 6, in yy only sines with k≡±2(mod6)k \equiv \pm 2 \pmod 6. Those surviving coefficients are the unknowns, 20 instead of 80, and every relation then holds identically. Palais’ principle of symmetric criticality is what makes this legal: a critical point of the action among the symmetric loops is a true orbit.

Project at full strength. Theorem A already says which space-time Fourier modes of a g227 film can be non-zero. Making only those the unknowns would turn all nine relations into identities, instead of averaging three and shooting one. Sized on the published film’s own spectrum (91% of its time-varying energy is in the first harmonic), that is 4,917 unknowns at eight harmonics.

Sources
  • A. Chenciner, R. Montgomery, “A remarkable periodic solution of the three-body problem in the case of equal masses”, Annals of Mathematics 152 (2000); C. Moore, “Braids in classical dynamics”, PRL 70 (1993).
  • R. S. Palais, “The principle of symmetric criticality”, Comm. Math. Phys. 69 (1979).
  • J. Montaldi, K. Steckles, “Classification of symmetry groups for planar n-body choreographies”, Forum Math. Sigma 1 (2013) e5: the figure eight’s group is D′(3,2)D'(3,2).
  • Measured here: eight, action 13.207782336994 (80 L-BFGS iterations as the demo runs it; 107 at a tighter tolerance, same action to twelve digits), period 6.3259140 in Simó’s units against the published 6.32591398, 3.3×10−93.3\times10^{-9} relative; circle, action 10.624096524001, twelve digits against the closed form. With no extra rule (80 unknowns), 40 random starts gave 24 circles, 15 eights and 1 other.

7 · BilliardsA path can close in space and still not close in time

A ball in a mirrored equilateral triangle: go straight, bounce at equal angles. Unfold the triangle instead of the ray and the path becomes a straight line through a field of reflected triangles. It closes exactly when the group element it has collected carries the start point forward along that same line (a translation along it, or a glide along it), so a loop on the orbifold is the same thing as a group element.

Now hang a clock on each mirror. A reflection done twice is nothing, so a mirror can cost only 0 or half a period, and the relations of the triangle group force all three mirrors to agree. Exactly 2 of the 8 decorations are legal, and they are the catalogue’s two p3m1 entries, g230 and g231. Under the half-period one, Fagnano’s three-bounce orbit closes in space and comes back half a period late. It takes two circuits to close in spacetime, and that 2 is mm.

Step 4’s closure condition in two dimensions (the path must land on a moved copy of where it started), and Theorem E (a mirror costs 0 or ½) as something you can watch.

Sources
  • H. Masur, S. Tabachnikov, “Rational billiards and flat structures”, Handbook of Dynamical Systems 1A (2002): unfolding.
  • A. M. Baxter, R. Umble, “Periodic orbits of billiards on an equilateral triangle”, arXiv:math/0509292: Fagnano’s is the only odd-period orbit.
  • Measured here (side 1): shortest translation 3\sqrt3, shortest glide 1.5; Fagnano’s orbit, 3 bounces of total length 1.5, collects a glide.

8 · Conway’s LifeThe blinker is a clockwork and the pulsar is not

Life is the clockwork problem in exact integers. Measured, not remembered: the blinker’s two phases are quarter turns of each other, so a quarter turn costs half a period (m=2m = 2), and its always-on centre cell is Theorem B’s forced zero, A1=0A_1 = 0 exactly. The pulsar, the most symmetric small oscillator anyone names, is not a clockwork at all: every symmetry it has shows in a single frame.

Life’s search programs take the global rule as two declared settings: a symmetry that merges cell variables, and a transform applied after the last generation of the period. Those are step 4’s two ingredients. A 5×5 box with two mirrors and a quarter-turn twist has 9 free cells, and its 512 seeds give the blinker in milliseconds. Imposing D4D_4 on a 13×13 box cuts 169 unknowns to 28; its 268 million seeds took 171 s here (the demo times your own machine first) and find 13 patterns, the pulsar among them.

Step 4’s interface as a declared triple: the frame symmetry KK, the twist gg, the clock order mm. One solver could take that triple for all 68 catalogue entries, the way Life searches take a symmetry and a transform.

Sources
  • LifeWiki, Kinetic symmetry and Mod: the Life community’s own τ\tau (“mod”).
  • rlifesrc, the Transform setting; D. Eppstein, “Searching for spaceships”, More Games of No Chance (2002).
  • Measured here: of 20 classic patterns, 6 have m=1m = 1, 11 have m=2m = 2 and 3 have m=4m = 4 (the eleven in the demo are grouped by mm); the 13×13, D4D_4, period-3 search tried 268,435,455 seeds in 171 s and found 13 patterns, the pulsar among them.

9 · Which global rules can exist9 of the 27 ways to hang offsets on 333 survive, and they are the catalogue’s p3 groups

Which global rules exist is arithmetic, settled before any solver runs. Hang a time offset on each of the three cone points of 333: 27 ways. The loop that goes once round all three is trivial on the orbifold, so its clock must read a whole number of periods, ∑ckc/nc∈Z\sum_c k_c/n_c \in \mathbb{Z}. That is the magic theorem’s residue identity. 9 of the 27 pass, and up to relabelling they are 4: exactly the catalogue’s four p3 groups, g224 to g227.

Because τ\tau lands in an abelian group, a clockwork structure is a character of GG, and the count is the number of characters, ∣Gab∣\lvert G^{\mathrm{ab}}\rvert: 8 for 2222, 9 for 333, 8 for 442, 6 for 632. Up to relabelling those are 3, 4, 6 and 6 distinct entries, and adding the torus gives the catalogue’s 20 orientation-preserving entries, with no misses and no extras.

The general answer: the H/K theorem

Let Γ\Gamma be a finite group acting on Rn\mathbb{R}^n. Some Γ\Gamma-equivariant system of ODEs has a periodic solution with spatio-temporal symmetries HH and frame symmetries KK if and only if

  1. H/KH/K is cyclic;
  2. KK is an isotropy subgroup;
  3. dim⁡Fix⁡(K)≥2\dim \operatorname{Fix}(K) \ge 2, and if it equals 2 then H=KH = K or H=NΓ(K)H = N_\Gamma(K);
  4. HH fixes a connected component of Fix⁡(K)∖LK\operatorname{Fix}(K) \setminus L_K, where LKL_K is the union of Fix⁡(γ)\operatorname{Fix}(\gamma) over γ∈H∖K\gamma \in H \setminus K.

Moreover, when these hold, some such system has an asymptotically stable limit cycle with exactly those symmetries. The job as run is such a system: the Brusselator on the 36×36 mesh is an ODE in 2,592 variables, Γ\Gamma is the nine operations of the box, ∣K∣=3\lvert K\rvert = 3, H/K=Z3H/K = \mathbb{Z}_3, and dim⁡Fix⁡(K)=868\dim\operatorname{Fix}(K) = 868, the tutorial’s own count. The published film is a periodic solution with exactly these symmetries, so by the “only if” the four conditions hold for r33₁3₂, and by the “moreover” some equivariant system has a stable film with this symmetry. The published film’s ×1.16 instability is a fact about the Brusselator, not about the symbol. The caveat: the theorem’s system need not be a reaction–diffusion equation. For the 22 catalogue entries with a non-zero offset and no Brusselator record, the conditions have not been checked.

Other classifications, for contrast. Planar choreographies come in two infinite families plus three exceptional groups for odd nn (Montaldi and Steckles); that list is infinite because rotation orders are unbounded there, while the crystallographic restriction caps them for the films. On Life’s square grid the clock can only have 1, 2 or 4 positions, because 3 does not divide 8. And all of it sits inside Xu and Wu’s 275 spacetime groups in 2+1 dimensions, whose 68 forward-in-time groups are the clockwork catalogue.

Theorem D is a character count, Hom⁡(H1(O),R/Z)\operatorname{Hom}(H_1(\mathcal{O}), \mathbb{R}/\mathbb{Z}). The H/K theorem is the tool that could separate “the symbol forbids it” from “this solver did not find it” for the 22 catalogue entries with no Brusselator record.

Sources

10 · Side by sideEvery analog carries the group theory exactly, and the dynamics only sometimes

ToyLocal ruleGlobal ruleImposed byWhat transfers
Oscillator ringSine coupling to two neighboursTurn by a cell = wait q/Nq/NExact solution; stability in closed formTheorems A and B; stability belongs to the local rule
Triangular latticeRepulsive coupling to six neighboursr33₁3₂ itselfRelaxation, or the full projectorStep 2; Theorems A–D with no PDE
Brusselator ringThe project’s own equationTurn by a cell = wait T/3T/3Twist (Newton), whole-loop Fourier, glueStep 4 entire, instability included
p3 tile editorEdges must matchp3, orbifold 333FoldThe glue; 146 and 868 by Burnside
Figure eightNewton’s law (critical action)A group on loopsProject: allowed Fourier modes onlyAll nine relations as identities
Kaleidoscope billiardStraight lines, equal anglesThe group element a loop collectsUnfold to the coverClosure condition; Theorem E
Conway’s LifeB3/S23state(p)=g⋅state(0)\text{state}(p) = g\cdot\text{state}(0)Merged variables + twisted wrapDeclared (K, g, m) interface
Kaleidocycle (7 links)Rigid tetrahedra, hingesRelabel by 3 = wait T/7T/7Solve on the quotientOne function read at 7 delays: a glue
Kuramoto–SivashinskyA chaotic PDEA reflection or half-box slide = wait half a periodTwist (Newton)A published benchmark for step 4
Wang tilesMatching edge coloursPeriodic: a tiling of a torusA trace counts the solutionsA local rule can forbid every symmetry

The last three rows were researched and checked but are not built as demos here. The seven-link kaleidocycle has no symmetry in any single frame, yet a relabelling by three tetrahedra costs exactly a seventh of the period (to 10−1010^{-10}). Jeandel and Rao’s 11 Wang tiles fill a 32×32 square, but close onto no torus up to 12×12.

11 · Honest limitsWhat does not transfer

12 · For the callQuestions for Tuesday

  1. Chaim: Theorem D’s count is exactly the number of characters, ∣Gab∣\lvert G^{\mathrm{ab}}\rvert, on all four cone-point orbifolds. Is the right statement “clockwork structures on an orbifold are H1(O;R/Z)H^1(\mathcal{O};\mathbb{R}/\mathbb{Z})”, and is it already known in that form?
  2. Chaim: every dynamics classification splits into symmetries that shift time and symmetries that reverse it; the catalogue of 68 is the shifting half. Is there a sensible orbifold decoration for a symmetry that costs a reversal of time, and does a magic theorem still close on it?
  3. Chaim: both solvers’ sizes are point counts of quotients, by Burnside: 146 nodes for the glue, 868 numbers for step 4. Worth stating on the project’s pages, so the other 67 entries can be sized before any solver runs?
  4. Scott: Life searches take the global rule as two declared inputs. Should a clockwork solver take one declared triple (K, g, m), and is that the right object for vZome or Orthohedra to draw as a decorated fundamental domain?
  5. Scott: could Orthohedra carry a time offset on each gluing, so that filling space from a decorated fundamental domain gives a clockwork animation directly? On the Klein quartic the Magic Theorem’s total changes, but the residue identity is only τ applied to the orbifold relation, so it should hold unchanged.
  6. Vladimir: the lattice toy turns the stability around: there the clockwork assembles itself from noise, while the Brusselator’s film has to be solved for. Is “flip one sign” the right way to show the difference between a pattern nature makes and a pattern you have to solve for? Which of these demos would you want to play with together next week?
  7. Everyone: the H/K theorem promises an equivariant system with a stable r33₁3₂ film. Worth hunting for a reaction–diffusion system where the film is an attractor, which would make the solver unnecessary?
  8. Everyone: two cheap experiments nobody has run: seed a disturbance into the g227 delayed glue and measure its growth; and try a space-time Fourier solve whose unknowns are only the modes Theorem A allows (4,917 at eight harmonics), with no time stepping inside the residual.