Exact SO(3) spectral differential layer
Implementation & benchmark of arXiv:2608.21235 — A Harmonic Framework for Vector Fields and Differential Operators on SO(3)
Source paper: A Harmonic Framework for Vector Fields and Differential Operators on SO(3) arXiv:2608.21235 ⓘ · analyzed Sep 1, 2026
AI-generated research hypothesis, automatically tested. Not peer-reviewed.
Idea description
Represent a rotation-dependent scalar or feature field by truncated Wigner-D coefficients and apply Lie derivatives, gradients, and divergence using fixed generator matrices in frequency space. This replaces noisy coordinate-space finite differences and gives an exactly band-limited rotational differential layer with predictable computational cost.
Formulas
Mathematical statement
The paper represents a tangent field as \(\vec{F}(R)=\sum_{a=1}^{3}F_a(R)\vec{X}_a(R)\), where \(R\in\mathrm{SO}(3)\), \(\vec{X}_a\) are a global left- or right-invariant frame, and \(F_a\) are scalar component functions. Expand a scalar field as \(f(R)=\sum_{\ell=0}^{L}(2\ell+1)\sum_{m,n=-\ell}^{\ell}\hat f^{\ell}_{mn}D^{\ell}_{mn}(R)\), where \(D^{\ell}_{mn}\) is the Wigner-D matrix and \(\hat f^{\ell}\) is its coefficient matrix. For a fixed convention, define the angular-momentum generator matrices \(J_a^{\ell}\) by \(X_a^L D^{\ell}_{mn}(R)=\sum_{m'}(J_a^{\ell})_{mm'}D^{\ell}_{m'n}(R)\). Thus \(\widehat{X_a^Lf}^{\ell}=J_a^{\ell}\hat f^{\ell}\). For a left-invariant field on the unimodular group SO(3), \(\operatorname{div}\vec F=\sum_aX_a^LF_a\), giving \(\widehat{\operatorname{div}\vec F}^{\ell}=\sum_aJ_a^{\ell}\hat F_a^{\ell}\). The matrices act within each irreducible degree \(\ell\), so derivatives preserve band limit \(L\). In the standard basis, \(J_3^{\ell}|m\rangle=im|m\rangle\), \(J_\pm^{\ell}|m\rangle=i\sqrt{\ell(\ell+1)-m(m\pm1)}|m\pm1\rangle\), with \(J_1=(J_++J_-)/2\) and \(J_2=(J_+-J_-)/(2i)\).
Implementation notes
Integrate this as a rotational spectral block for data whose input is a function on SO(3), such as an orientation distribution, pose-conditioned feature, or rotational world-model state. The input tensor should be a complex coefficient array with shape [batch, channels, degree, m, n], where degree indexes l=0,...,L and the last two dimensions each have size 2l+1; real signals should preserve Wigner coefficient conjugate symmetry or use a real basis. Precompute sparse generator matrices J1[l], J2[l], and J3[l] for every degree. Pseudocode: compute F=SO3_FFT(x); for each l and channel calculate d1=J1[l] @ F[l], d2=J2[l] @ F[l], and d3=J3[l] @ F[l]; concatenate F,d1,d2,d3 along channels; apply a learned degree-wise linear map that mixes channels but does not mix m,n indices; for vector coefficients calculate div[l]=sum_a J_a[l] @ F_vector[a,l]; finally apply the inverse SO(3) FFT. The paper's mathematics supplies the frame decomposition, generator action, divergence formula, and band-limit preservation. No derivatives need to be estimated from data. First compare against Euler-angle finite differences, coordinate autodiff, and a generic SO(3) convolution at matched parameter count. Use L=8 on synthetic random Wigner fields with analytically known derivatives, then test an orientation-regression or molecular-pose model. Measure derivative error, equivariance error, wall-clock time, and validation loss. Success means substantially lower derivative error, no Euler-angle singularity spikes, and faster loss descent or lower validation error at equal FLOPs.
Verification
Stage 1 · Toy mechanism gate: Passed ✓
Stage 2 · Mechanism transferred to benchmark: Not reproduced ✗
Stage 2 · Practical benchmark result: Inconclusive
Methodology: 8 paired seeds, permutation test (p<0.05) against a learning-rate-tuned baseline. How verification works
Stage 1 — Mechanism check agent confidence 9/10
Built an exact SO(3) generator layer with derivative and divergence operations in coefficient space. The mechanism manifested: Casimir scaling matched the predicted l(l+1) for l=0..8 with residuals below 1.5e-14, derivative-energy scaling matched with relative errors below 3.5e-16, and central finite differences converged at observed order 1.72–2.00 as h decreased. This is a mathematical toy verification rather than a full learned-model win.
- Agent confidence
- 9/10
- Baseline
- Group-step central finite difference at l=6: relative derivative error 0.5718, 0.1732, 0.04545, 0.01150, 0.002884, 0.000721 for h=0.4 through 0.0125; asymptotic convergence slope 2.00.
- Idea
- Exact generator derivative: Casimir residual <=1.42e-14 for l<=8; derivative-energy ratio matched predicted l(l+1) with relative error <=3.49e-16; divergence identity relative error 0.0.
Limitations: Did not implement SO(3) FFT/IFFT, real Wigner coefficient symmetry, learned degree-wise channel mixing, GPU execution, or an end-to-end orientation/molecular pose model. The finite-difference baseline uses exact matrix exponentials in coefficient space rather than Euler-angle grid finite differences, so wall-clock and singularity claims were not tested.
How to run: python3 run_experiment.py
Stage 2 — Benchmark vs. tuned baseline (arXiv:2608.21235)
No significant difference vs. the tuned baseline (+1.7%, p=0.5754, wins 3 / 8 paired seeds).
- Benchmark
- So3_spectral_regression
- Model
- mlp_tiny
- Paired seeds
- 8
- Baseline mean
- 0.0143
- Idea mean
- 0
- Effect (Δ)
- 0.0002 (+1.7%; negative = idea better)
- Wins
- 3 / 8 paired seeds
- p-value
- 0.5754 (permutation test, 20 000 shuffles)
- Smallest detectable effect
- n/a
- Mechanism
- Not confirmed ✗
- Practical effect
- Inconclusive
- Baseline tuning
- swept over 0 configs
This is a compact coefficient-regression proxy, not a full SO(3) FFT/IFFT pose or molecular model. Wall-clock speed, trained-model equivariance, vector divergence heads, sparse GPU kernels, and real Wigner-D symmetry were not tested.
How to run: python3 run_bench.py
Verdict computed by deterministic test code from paired-seed statistics — not by the language model.
Stage 2 — Benchmark latest Failed ✗
Agent confidence: 9/10
Built and ran a custom SO(3)-structured regression track because no built-in track contains orientation-field differential structure. The exact-generator system was slightly worse than the matched finite-difference baseline (MSE 0.014595 vs 0.014346), with paired delta +0.000249 and permutation p=0.57535, so no transfer win was observed.
- Baseline
- 8-seed tuned MSE 0.0143462 ± 0.0012082; best lr=0.003, h=0.2, epochs=12.
- Idea
- 8-seed exact-generator MSE 0.0145949 ± 0.0017917; paired delta +0.0002487, 3/8 wins, permutation p=0.57535.
Benchmark result
No significant difference vs. the tuned baseline (+1.7%, p=0.5754, wins 3 / 8 paired seeds).
- Benchmark
- So3_spectral_regression
- Model
- mlp_tiny
- Paired seeds
- 8
- Baseline mean
- 0.0143
- Idea mean
- 0
- Effect (Δ)
- 0.0002 (+1.7%; negative = idea better)
- Wins
- 3 / 8 paired seeds
- p-value
- 0.5754 (permutation test, 20 000 shuffles)
- Smallest detectable effect
- n/a
- Mechanism
- Not confirmed ✗
- Practical effect
- Inconclusive
- Baseline tuning
- swept over 0 configs
This is a compact coefficient-regression proxy, not a full SO(3) FFT/IFFT pose or molecular model. Wall-clock speed, trained-model equivariance, vector divergence heads, sparse GPU kernels, and real Wigner-D symmetry were not tested.
How to run: python3 run_bench.py
Artifacts
- bench_report.json 4.7 KB View Raw
- report.md 1.5 KB View
- report_bench_2026-09-01T181348.md 3.4 KB View
- results.json 3.0 KB View Raw
- run_bench.py 4.0 KB View Raw
- run_experiment.py 2.6 KB View Raw
- so3_custom_track.py 2.1 KB View Raw
- so3_spectral.py 1.4 KB View Raw