Spectral-gap adaptive halting / REPORT.md
Failed on benchmark
Spectral-gap adaptive halting MVP
Implementation
experiment.py implements the paper's fold normal form
u[t+1] = u[t] + g*eps + b*u[t]^2, an exact scalar JVP/power estimate,
tau_hat = pi / max(delta, 1-lambda_hat), stable-branch halting controllers,
and a rotating-dynamics fallback detector. results.json contains the fixed-seed
run (seed=2748).
Quantitative mechanism checks
| quantity | predicted | observed | |---|---:|---:| | gap vs epsilon log-log exponent | +0.500 | +0.500000 | | passage time vs epsilon exponent | -0.500 | -0.488629 | | gap vs b exponent | +0.500 | +0.500000 | | passage time vs b exponent | -0.500 | -0.489627 | | Pi = passage time * gap | 3.141593 | mean 3.189105 (1.51% relative error) |
The passage exponents show the expected small finite-step/discrete-map deviation, while the gap exponents are exact in this normal-form sweep. The observed Pi values across b are 3.1484, 3.1623, 3.1842, 3.2129, and 3.2378.
At eps = 1e-4, 3e-5, and 1e-5, converged stable-branch runs took 377, 637, and 1017 steps; the local predictor returned 157.2, 287.3, and 314.2 steps. The latter saturates at pi/delta = 314.2 for delta=0.01, illustrating the numerical floor's loss of useful ranking near criticality.
A stable 2D rotation produced four coordinate sign changes and was flagged as non-fold/oscillatory, exercising the intended fallback condition.
Controller comparison
On 20 stable-branch tasks, fixed and residual exit both averaged 449 steps.
The spectral controller averaged 50,000 steps because its strict tau < 25
condition was never met near the critical branch; this is a controller failure,
not a speedup. The tiny toy therefore validates the fold mechanism but does not
show the promised practical inference win.
Reproduction
/home/maxwelhelp/main/bin/python3 experiment.py
Limitations
This is a scalar normal-form verification rather than a trained 4-8 layer looped transformer. It does not measure GPU wall-clock cost, transformer task accuracy, forward-mode autodiff overhead, or learned-vector JVP estimation error. The controller thresholds were not tuned on a task distribution, and the residual baseline is evaluated on stable-branch convergence rather than classification accuracy.