# Non-Abelian Event-Order Memory

- ID: 2704
- Canonical URL: https://synthcore.org/idea/2704/non-abelian-event-order-memory
- API JSON: https://synthcore.org/api/idea/2704.json
- API Markdown: https://synthcore.org/api/idea/2704.md
- Verification status: failed_benchmark
- Source: [arXiv:2608.23533](https://arxiv.org/abs/2608.23533)
- Category: architecture
- Solves: accuracy, stability, sample-efficiency
- ML areas: rnn, ssm, world-model
- Math tags: dynamical-systems, geometry, differential-geometry
- Ratings: usefulness 8/10; difficulty 5/10; novelty 8/10

## Idea description

Augment an RNN or state-space model with a three-dimensional auxiliary spin updated by noncommuting rotations associated with event types or token classes. The ordered product preserves information that additive counters discard: two sequences with the same number of each event can produce different final spins when their event order differs. Train the spin axes, angles, and readout jointly with the task model while constraining every update to remain on the sphere.

## Mathematical statement

For an input trajectory \(\gamma=(e_1,\ldots,e_L)\), let event \(e_t\in\{1,2\}\) select a unit rotation axis \(\mathbf{n}_{e_t}\in\mathbb{R}^3\) and angle \(\theta_{e_t}\). The non-Abelian trajectory operator is the time-ordered product \(U_\gamma=R_{e_L}\cdots R_{e_1}\), where \(R_a=\exp(\theta_a[\mathbf{n}_a]_\times)\) and \([\mathbf{n}]_\times\) is the skew-symmetric cross-product matrix. The auxiliary state is \(\mathbf{s}_{t+1}=R_{e_t}\mathbf{s}_t\), which preserves \(\|\mathbf{s}_t\|=1\). Introduce phase variables \(\boldsymbol{\chi}=(\chi_1,\chi_2)\in\mathbb{T}^2\) and phase-dependent operators \(R_a(\chi_a)=\exp(\chi_a\theta_a[\mathbf{n}_a]_\times)\). For an ensemble, compute the mean spin \(\mathbf{m}(\boldsymbol{\chi})=\mathbb{E}[U_\gamma(\boldsymbol{\chi})\mathbf{s}_0]\). Whenever \(\mathbf{m}\neq0\), its normalized field \(\mathbf{n}=\mathbf{m}/\|\mathbf{m}\|\) maps the torus to the sphere and has Chern number \(C=(4\pi)^{-1}\int\mathbf{n}\cdot(\partial_{\chi_1}\mathbf{n}\times\partial_{\chi_2}\mathbf{n})d\chi_1d\chi_2\).

## Key formulas

- $$R_a=\exp\!\left(\theta_a[\mathbf{n}_a]_\times\right),\qquad [\mathbf{n}]_\times=\begin{pmatrix}0&-n_3&n_2\\ n_3&0&-n_1\\ -n_2&n_1&0\end{pmatrix},\qquad \mathbf{s}_{t+1}=R_{e_t}\mathbf{s}_t.$$
- $$U_\gamma=R_{e_L}R_{e_{L-1}}\cdots R_{e_1},\qquad \mathbf{s}_L=U_\gamma\mathbf{s}_0.$$
- $$\mathbf{n}(\chi_1,\chi_2)=\frac{\mathbf{m}(\chi_1,\chi_2)}{\|\mathbf{m}(\chi_1,\chi_2)\|},\qquad C=\frac{1}{4\pi}\int_{\mathbb{T}^2}\mathbf{n}\cdot(\partial_{\chi_1}\mathbf{n}\times\partial_{\chi_2}\mathbf{n})\,d\chi_1d\chi_2.$$

## Implementation notes

Integrate the module beside the hidden state of a GRU, an S4-like state-space model, or a lightweight recurrent block. Reserve a three-dimensional vector \(\mathbf{s}_t\) per sequence or feature group. Store two learnable axis vectors and normalize them to unit length after every optimizer step; store two learnable rotation angles, optionally bounded by \(|\theta_a|\leq\pi\). For each input event, select its axis and angle and update the spin using Rodrigues' formula, \(R\mathbf{s}=\mathbf{s}\cos\theta+(\mathbf{n}\times\mathbf{s})\sin\theta+\mathbf{n}(\mathbf{n}\cdot\mathbf{s})(1-\cos\theta)\). Concatenate \(\mathbf{s}_t\) or the final spin with the ordinary hidden state before the output head. For diagnostics, evaluate a fixed probe batch on a small \(K\times K\) grid of phase pairs, replace each event angle by \(\chi_a\theta_a\), average final spins to obtain \(\mathbf{m}(\chi)\), and estimate the Chern number using finite differences or spherical triangle areas. The noncommuting ordered product is taken directly from the paper; learned axes and neural readout are the adaptation. First test on length-64 synthetic sequences containing A and B events with identical counts but labels determined only by AB versus BA ordering. Compare an MLP count baseline, a GRU, and GRU-plus-spin. The prediction is that the count baseline stays near chance while the spin model improves whenever the commutator \([\mathbf{n}_1]_\times[\mathbf{n}_2]_\times-[\mathbf{n}_2]_\times[\mathbf{n}_1]_\times\) is nonzero; parallel axes should eliminate the advantage. Chern estimates should remain integer-stable while the minimum polarization gap remains nonzero.

## Verification

- Status: failed_benchmark
- Mechanism evidence: yes
- Mechanism confirmed: no
- Practical verdict: no_effect
- Verdict: Built a Rodrigues-update non-Abelian spin module and verified the core mechanism numerically. The matrix-exponential error and sphere-norm error were approximately 2.6e-15 and 2.0e-15; the AB-versus-BA effect scaled with exponent 2.005 (predicted 2), vanished exactly for parallel axes, and tracked axis misalignment with correlation 0.9999. In the fixed-count length-64 task, count and plain GRU stayed at 50% accuracy, while GRU-plus-spin reached 100%, providing a clear secondary task signal.

### Mechanism check

- Verdict: Built a Rodrigues-update non-Abelian spin module and verified the core mechanism numerically. The matrix-exponential error and sphere-norm error were approximately 2.6e-15 and 2.0e-15; the AB-versus-BA effect scaled with exponent 2.005 (predicted 2), vanished exactly for parallel axes, and tracked axis misalignment with correlation 0.9999. In the fixed-count length-64 task, count and plain GRU stayed at 50% accuracy, while GRU-plus-spin reached 100%, providing a clear secondary task signal.
- Confidence: 9/10
- Limitations: Only a synthetic fixed-count AB-versus-BA classification task was tested, with one seed and one train/test split. No S4-like model, Chern-number computation, phase-grid diagnostic, FLOP/speed comparison, or larger/noisy sequence benchmark was evaluated.

### Practical benchmark

- Paired seeds: 8
- Baseline mean: 0
- Idea mean: 0
- p-value: 0.6818
- Paired wins: 3/8
- Benchmark verdict: no significant win

## Artifacts

- [bench_report.json](https://synthcore.org/code/1026/bench_report.json)
- [bench_stage2.py](https://synthcore.org/code/1026/bench_stage2.py)
- [experiment.py](https://synthcore.org/code/1026/experiment.py)
- [report.md](https://synthcore.org/code/1026/report.md)
- [report_bench_2026-09-01T185628.md](https://synthcore.org/code/1026/report_bench_2026-09-01T185628.md)
- [results.json](https://synthcore.org/code/1026/results.json)
- [Download all files as ZIP](https://synthcore.org/download/1026)

## Disclaimer

AI-generated research hypothesis, automatically tested. Not peer-reviewed.
