Tracking States or Tracking Cosets? An Algebraic Account of Learned State Tracking
Organizations: Conflux Labs Ltd · Michigan State University
Abstract
State tracking requires composing a sequence of updates, but accuracy alone does not reveal what a model has learned. We study neural networks trained to predict the running product of group elements. We identify quotient solutions in Transformers, where models recover the quotient class while predicting nearly uniformly among its members. The reciprocal of class size predicts partial accuracy without a fitted parameter, extending parity-based accounts to non-parity quotients. Our baseline Transformers' predictions change little under prefix reordering beyond the exact-tracking frontier. We prove that, for finite groups under uniform i.i.d. full-group inputs, optimal order-blind exact accuracy converges to the reciprocal of abelianization class size as prefix length grows, consistent with the observed abelianization plateaus. Sequential updates permit more: any partition into right cosets of a subgroup, normal or not, survives sequential updates. In our census of standard Transformers, every recovered coset partition comes from a normal subgroup, whereas parameter-matched recurrent networks pass through both normal and non-normal right-coset stages during training. On , we identify low-dimensional subspaces of the recurrent state that encode non-normal cosets. In the three-dimensional cases, coset mean vectors form approximate dodecahedra, and swapping the state components in these subspaces transfers the donor's coset state through a shared input suffix. Our results connect partial accuracy, learning stages, and internal computation through the subgroup cosets that models learn to track.
Figures & tables
| Cond. (%) | Quot. (%) | chance | ||||
|---|---|---|---|---|---|---|
| 8 | 1 | 1 | – | – | 7.88–7.96 | |
| 8 | 2 | 49.95–50.05 | 99.94–99.99 | 4.00 | ||
| 8 | 2 | 49.91–49.96 | 99.92–99.93 | 3.99 | ||
| 6 | 3 | 33.32–33.39 | 99.89–99.92 | 2.00 | ||
| 12 | 3 | 33.31–33.47 | 99.86–99.97 | 3.99–4.01 | ||
| 12 | 3 | 33.25–33.36 | 99.51–99.93 | 3.97–3.99 |
Appendix figures & tables29 assets
Supplementary material from the paper’s appendix.
Appendix
| Group | Model | Seed | Sustained subgroup orders | Final exact accuracy |
|---|---|---|---|---|
| LSTM | 42 | .9996 | ||
| LSTM | 43 | .9923 | ||
| LSTM | 44 | (two intervals) | .0877 ∗ | |
| GRU | 42 | .9938 | ||
| GRU | 43 | .9961 | ||
| GRU | 44 | .9950 |
| Group | Stages | : mean SD | : range | : mean SD | : range | |
|---|---|---|---|---|---|---|
| 9 | – | – | ||||
| 7 | – | – | ||||
| 1 | (—) | – | (—) | – | ||
| 1 | (—) | – | (—) | – | ||
| 3 | – | – | ||||
| 1 | (—) | – | (—) | – |
| Configuration | Seed | Sustained subgroup | Last census exact |
|---|---|---|---|
| No feedback | 42 / 43 / 44 | .0825 / .0836 / .0808 | |
| One round | 42 / 43 | .0849 / .0840 | |
| One round | 44 | .2466 | |
| Four rounds, restart | 42 | then | .2709 |
| Four rounds | 43 | none | .1398 |
| Four rounds | 44 | .5412 |
| Model | Step | Top | Rest | Full | Residual | ||
|---|---|---|---|---|---|---|---|
| LSTM 42 | 1,500 | 0.987 | 7 | 0.987 | 0.985 | 0.988 | 0.00172 |
| LSTM 42 | 1,900 | 0.995 | 7 | 0.994 | 0.992 | 0.994 | 0.00155 |
| LSTM 42 | 2,100 | 0.993 | 7 | 0.993 | 0.989 | 0.992 | 0.00106 |
| LSTM 43 | 1,450 | 0.993 | 3 | 0.985 | 0.987 | 0.989 | 0.00056 |
| LSTM 43 | 1,600 | 0.999 | 3 | 0.999 | 0.997 | 0.999 | 0.00051 |
| LSTM 43 | 1,700 | 0.999 | 3 | 0.999 | 0.997 | 0.999 | 0.00047 |
| Group | Seed | Updates | Full (%) | Quotient (%) | KL | LL | |
|---|---|---|---|---|---|---|---|
| 43 | 148,438 | 50.063 | 99.948 | 50.000 | 0.313 | -0.329 | |
| 42 | 148,438 | 49.910 | 99.927 | 50.000 | 0.230 | -0.251 | |
| 42 | 74,219 | 33.353 | 99.906 | 33.333 | 0.346 | -0.337 | |
| 44 | 148,438 | 33.364 | 99.968 | 33.333 | 0.236 | -0.179 | |
| 44 | 74,219 | 33.235 | 99.933 | 33.333 | 0.593 | -0.667 | |
| 42 | 74,219 | 20.078 | 99.993 | 20.000 | 0.244 | -0.212 |
| Model | Input / recipe | Updates | Seeds | (%) | Full (%) |
|---|---|---|---|---|---|
| NeoX | full / A | 74,219 | 3 | 81.727 | 50.043 |
| NeoX | full / A | 148,438 | 2 | 99.932 | 49.987 |
| GPT-2 | full / A | 74,219 | 3 | 99.945 | 49.990 |
| Llama | full / A | 74,219 | 3 | 99.990 | 49.902 |
| NeoX | gen. / A | 74,219 | 3 | 72.575 | 50.015 |
| GPT-2 | full / B | 312,500 | 3 | 94.214 | 49.959 |
| non-sweep mass | |||||||
|---|---|---|---|---|---|---|---|
| 3 | 0.3009 | 0.2130 | 0.0516 | 0.0120 | 0.0019 | 8.4e-06 ( ) | |
| 2 | 0.2188 | 0.1484 | 0.0323 | 0.0070 | 0.0010 | 2.3e-05 ( ) | |
| 2 | 0.2188 | 0.1484 | 0.0323 | 0.0070 | 0.0010 | 2.3e-05 ( ) | |
| 3 | 0.3009 | 0.2130 | 0.0516 | 0.0120 | 0.0027 6.8e-04 | 3.9e-04 ( ) | |
| 3 | 0.3009 | 0.2130 | 0.0516 | 0.0120 | 0.0031 9.4e-04 | 3.9e-04 ( ) | |
| 4 | 0.2500 | 0.1568 | 0.0200 | 0.0023 | 1.6e-04 5.2e-05 | 1.1e-05 ( ) |
| Architecture | Recipe / measure | Groups; seeds | Outcome | Status; location |
|---|---|---|---|---|
| GPT-NeoX 4L, =256, 4 heads, quarter rotary (recipe A) | A; full alphabet | 13 groups; 3 | plateau law | completed; § 3 |
| Recipe A at 2 and 6 layers | A; full alphabet | ; 3+3 | ratio .4986–.5034; frontier 2–3 at two layers, 5–12 at six | completed; § 5 |
| Recipe A at 2/3/5/6 layers, widths 364/296/228/208 (parameter-matched) and 256 (shared grid) | A; full alphabet | ; 3 each | ratio .4991–.5017, frontier 3–8, no escape | completed; § 5 |
| Recipe A at 2 and 6 layers, and at the doubled budget | A; full alphabet | , ; 3 each | ratio ; frontier / on , / on | completed; § 5 |
| Recipe A at 4, 8, 12 layers | A; full alphabet | ; 36 pairs | parity-first or no progress; 0 of 36 associative | completed; § 5 |
| Recipe A at =512, 8 heads | A; full alphabet | ; 3 | plateau, ratio .4998–.5013 | completed; § 5 |
| Architecture | Recipe / measure | Groups; seeds | Outcome | Status; location |
|---|---|---|---|---|
| NeoX 4L/256, no position embedding | A; full alphabet | ; 1 | frontier 5, quotient unfinished, ratio .5002 | completed; § 5 |
| Recipe A on the generator stream | A; | ; 3 | plateau, ratio .499–.516 | completed; App. O |
| GPT-2 sinusoidal 3L, =512, 8 heads (recipe B) | Liu; | ; 3 (+1 at depth 4, +1 at ) | escape 3/3; depth 4 escapes; partial | completed; App. O |
| Recipe B minus PE; on full alphabet; with recipe A optimizer; MLP 2048 | Liu / A block | ; 3 each | chance; plateau 2/3; frozen frontier; escape | completed; App. O |
| GPT-2 rotary; NeoX sinusoidal; NeoX rotary, all 3L/512 | Liu; | ; 3 each | escape 1 / partial 2 (ratio .82–.998); escape 1 / partial 2 (.86–.99); plateau (.524–.532) | completed; NeoX-rotary cell in § 5 , the other two only here |
| NeoX rotary 3L/512 at 4 and 5 layers | Liu; | ; 3 each | ratio .814, .951; frontier 31–32, 51–58 | completed; § 5 |
| Architecture | Recipe / measure | Groups; seeds | Outcome | Status; location |
|---|---|---|---|---|
| Looped transformer, 2 shared blocks, no position encoding, =128 | curriculum to 16 | ; 1 | one position per loop; no quotient shelf | pilot; not used |
| Expert-split MLP; MoE readout | A | ; 1 pair each | frontier 11 vs 6; fiber .498–.506 | exploratory; not used |
| Bilinear recurrence, state 128 | Adam ; full alphabet | 10 groups; 3 (+10) | floors 13/13; acquired across positions in 16/16 | completed; § 5 |
| Two-layer polynomial net on group-Fourier input | 6 configs, 30k | ; 1 | amplitude sets learning order | exploratory; not used |
| Pooled (order-blind by construction) MLP; pooled + recurrent sum | Adam , 20k | ; 1 | quotient only .40 at 20k; registered ceiling test missed (gap .255) | exploratory; not used |
| Two-layer LSTM, width 444 (parameter-matched to recipe A) | A; full alphabet | , , ; 3 per arm, 2 arms | escape 18/18; transient stages at levels | completed; § 5 |
| Training support / encoding | Recipe | Groups; seeds | Outcome | Location |
|---|---|---|---|---|
| Full alphabet, i.i.d. uniform | A, C, LSTM, bilinear, 160M | all | quotient stages and levels | § 3 |
| Generator stream , i.i.d. | B; A | ; 3 per arm | escape (B); plateau (A) | App. O |
| Two -cosets of , , lift bias | B | ; 3 at =0 and .99, 1 otherwise | crawl or escape at =0; the axis is retired as an explanatory variable | App. O |
| Three -cosets of | B | ; 3 | flat, frontier 7–11 | App. O |
| Two cosets of , ; matched full-support baseline | B | ; 3+1 | all crawl; baseline flat | App. O |
| Single reflection coset of , , | B | 3, 1, 3 | escape at 3; crawl at 5, 7 | App. O |
| Training support / encoding | Recipe | Groups; seeds | Outcome | Location |
|---|---|---|---|---|
| Frozen Peter–Weyl encoding, tied scores | A | ; 3 | characters learned, 2-dim irrep not | App. N |
| encoding: frozen / trainable amplitude 1, 2 | A | 1 each, 10k steps | no rescue of the 2-dim irrep | pilot; incomplete; not used |
| Equal-dimension embedding rows, four arms | 12L/256, Li schedule | , ; 1k steps | frontier 2 in every arm | inconclusive; not used |
| Coset-union flows of , , , , , | 3L/128 pilot, 6k steps, length 64 | 6 groups; 1 | quotient learned; exact quotient stays at ; gain vanishes on the full stream | exploratory; not used |
| Exact Fourier degree of the fiber and quotient sectors under a measure family from the full alphabet to the generator stream | zero training | , , , | pure degree under the full alphabet; reduced degree only on unpaired-lift supports | completed; App. O |
| Released pipeline of Li et al. [2025] on : fixed 1M-sequence dataset repeated for 20 epochs, bf16 | their code and architecture | ; 1 | remained at chance under bf16; excluded from mechanism analysis | not used |
| seed | budget | exact quotient | quotient | exact | |
|---|---|---|---|---|---|
| 42 | 74k | 0.9918 | – | 0.9918 | |
| 43 | 74k | 0.9945 | – | 0.9945 | |
| 44 | 74k | 0.9849 | – | 0.9849 | |
| 42 | 74k | 0.5002 | 0.990 | 0.4950 | |
| 43 | 74k | 0.4992 | 0.951 | 0.4748 | |
| 44 | 74k | 0.4999 | 0.849 | 0.4245 |
| Seed | Exact quotient | Quotient | Exact | |
|---|---|---|---|---|
| 42 | 0.3343 | 0.9991 | 0.3339 | |
| 43 | 0.3332 | 0.9982 | 0.3326 | |
| 44 | 0.3336 | 0.9996 | 0.3334 | |
| 42 | 0.1999 | 0.9966 | 0.1993 | |
| 43 | 0.1997 | 0.9786 | 0.1954 | |
| 44 | 0.1986 | 0.9458 | 0.1879 |
| Seed | Updates | Exact quotient | Quotient | Exact | |
|---|---|---|---|---|---|
| 42 | 148k | 0.2502 | 0.9997 | 0.2501 | |
| 43 | 148k | 0.2502 | 0.9997 | 0.2501 | |
| 44 | 148k | 0.2500 | 0.9997 | 0.2500 | |
| 42 | 148k | 0.1249 | 0.9998 | 0.1249 | |
| 43 | 148k | 0.1245 | 0.9998 | 0.1245 | |
| 44 | 148k | 0.1246 | 0.9995 | 0.1245 |
| Cond. (%) | Quot. (%) | Exact (%) | Chance (%) | chance | Updates | ||||
| 8 | 1 | 1 | – | – | 98.49–99.45 | 12.50 | 7.88–7.96 | 74k | |
| 8 | 2 | 49.95–50.05 | 99.94–99.99 | 49.94–50.02 | 12.50 | 4.00 | 148k | ||
| 8 | 2 | 49.91–49.96 | 99.92–99.93 | 49.87–49.93 | 12.50 | 3.99 | 148k | ||
| 6 | 3 | 33.32–33.39 | 99.89–99.92 | 33.29–33.36 | 16.67 | 2.00 | 74k | ||
| 12 | 3 | 33.31–33.47 | 99.86–99.97 | 33.26–33.45 | 8.33 | 3.99–4.01 | 148k | ||
| 12 | 3 | 33.25–33.36 | 99.51–99.93 | 33.11–33.26 | 8.33 | 3.97–3.99 | 74k |
| Group | Exact 17–100 | Quotient 17–100 | Exact 70–100 | Exact 101–128 |
|---|---|---|---|---|
| 53.33 | 99.55 | 49.65 | 15.04 | |
| (43) | 35.47 | 99.96 | 25.13 | 19.87 |
| (44) | 33.13 | 99.98 | 25.01 | 18.09 |
| 8.30 | 99.69 | 8.31 | 4.43 |
| Seed | Sign | ||||
|---|---|---|---|---|---|
| 42 | 99.88 | 99.89 | 33.37 | 100 | 3 |
| 43 | 99.58 | 99.66 | 33.35 | 100 | 2 |
| 44 | 98.60 | 99.80 | 33.36 | 100 | 2 |
| Group | Layers | Initial LR | Seed | Exact | Quotient | Exact quotient |
|---|---|---|---|---|---|---|
| 2 | 42 | 31.17 | 62.54 | 49.84 | ||
| 2 | 43 | 30.29 | 60.69 | 49.90 | ||
| 2 | 44 | 20.83 | 41.70 | 49.97 | ||
| 2 | 42 | 49.06 | 98.11 | 50.01 | ||
| 2 | 43 | 49.84 | 99.85 | 49.91 | ||
| 2 | 44 | 49.86 | 99.91 | 49.91 |
| Alphabet | Cosets | Form | Runs | Outcome (recipe B) |
|---|---|---|---|---|
| (preregistered) | 2 | yes | 3 | conditional .9997–1.000 at 25–45k updates |
| (two cosets) | 2 | yes | 3 | frontiers 44, 81, 100 |
| 2 | yes | 2 | frontier 38 rising; 24 stalled (300k) | |
| (preregistered) | 3 | no | 3 | frontiers 25, 26, 23; conditional .50 |
| 3 | no | 1 | frontier 20 | |
| 3 | no | 1 | frontier 14 |
| Seed | Joint 17–100 | Quotient 17–100 | Joint at 100 | Joint 101–128 |
|---|---|---|---|---|
| 42 | 98.10 | 100.00 | 92.90 | 36.82 |
| 43 | 98.17 | 100.00 | 93.74 | 37.32 |
| 44 | 98.07 | 100.00 | 92.81 | 27.32 |
| count | count | Net count | ||||
|---|---|---|---|---|---|---|
| Position | MAE | Exact (%) | MAE | Exact (%) | MAE | Exact (%) |
| 32 | 0.0381 | 100.00 | 0.0366 | 100.00 | 0.0040 | 100.00 |
| 64 | 0.0887 | 100.00 | 0.0847 | 100.00 | 0.0069 | 100.00 |
| 100 | 0.1513 | 99.22 | 0.1465 | 99.42 | 0.0088 | 100.00 |
| Seed | 8 | 12 | 16 | 24 | 32 | 48 | 64 | 80 | 100 |
|---|---|---|---|---|---|---|---|---|---|
| 42 | 0.9786 | 0.9919 | 0.9942 | 0.9962 | 0.9977 | 0.9983 | 0.9984 | 0.9988 | 0.9986 |
| 43 | 0.9767 | 0.9926 | 0.9948 | 0.9977 | 0.9979 | 0.9982 | 0.9984 | 0.9988 | 0.9985 |
| 44 | 0.9775 | 0.9911 | 0.9935 | 0.9967 | 0.9973 | 0.9974 | 0.9969 | 0.9980 | 0.9972 |
| Seed | MLP readout | Isolated | Layer-3 KV | Exact shift (%) |
|---|---|---|---|---|
| 42 | .861 | .00021 | .909 | 83.08 |
| 43 | .983 | -.00021 | .638 | 27.44 |
| 44 | .651 | -.00001 | .812 | 61.21 |
| Group | Seed | Accuracy at | |||
|---|---|---|---|---|---|
| 42 | 5 | 53.44 | 30.33 | 1.93 | |
| 43 | 5 | 58.79 | 38.58 | 2.27 | |
| 44 | 4 | 81.93 | 45.25 | 2.53 | |
| 42 | 4 | 50.21 | 40.95 | 2.34 | |
| 43 | 4 | 36.27 | 46.01 | 3.51 | |
| 44 | 3 | 88.59 | 37.97 | 1.13 |
| Sub. | Comp. | Rand. | ||||||
|---|---|---|---|---|---|---|---|---|
| 3 | 2 | 2 | 0.997–1.000 | 0.930–0.991 | 0.000–0.009 | 0.000–0.001 | ||
| 5 | 2 | 2 | 1.000 | 0.999–1.000 | 0.000–0.001 | 0.000–0.001 | ||
| 3 | 2 | 2 | 1.000 | 1.000 | 0.000 | 0.000 | ||
| 4 | 1,2 | 2 | 0.510–1.000 | 0.482–1.000 | 0.000–0.172 | 0.000–0.166 | ||
| 3 | 2 | 2 | 1.000 | 1.000 | 0.000 | 0.000 | ||
| 4 | 2 | 2 | 1.000 | 1.000 | 0.000–0.001 | 0.000–0.001 |