Hodos

Comparing processes as curves of distributions

PRIVATE — Shared, not announced. A working research record: it contains negative results and retracted claims on purpose. Findings here predate their preprint DOIs. Not indexed.
active 14provisional 1negative 6retracted 6total 27

Counts and the table below are generated from manifest.json, so they cannot disagree with the record. Newest finding: 2026-07-26.

FindingStatusRungDate
1A process is literally a curve on a sphereactive52026-07-21
2Time-averaging is quadratically blind to a brief eventprovisional22026-07-21
3The information-geometry ground beats Euclidean on real speech across voicesactive32026-07-23
4The same win replicates on handwriting, with no audio at allactive42026-07-23
5The method fails where identity is static — the predicted boundaryretracted32026-07-23
6The corrected boundary: two lanes, not oneactive32026-07-24
7Pitch invariance by construction, not by trainingactive52026-07-22
8The distinctive ground does NOT generalise across light, echo and turbulencenegative52026-07-22
9The min-mean distance 'win' was a padding degeneracyretracted52026-07-22
10Doppler / velocity measurement is not an edgenegative52026-07-22
11Against a published method: the field's warp is better, our ground still winsactive62026-07-23
12The win decomposes: trajectory > ground > warpactive42026-07-24
13The geometry needs 5–10× less data than a standard networkactive42026-07-25
14It does not forget — and cannot, by constructionactive52026-07-26
15A compressed latent representation does NOT helpnegative52026-07-25
16Anything between the landed point and the answer must start as a pass-throughactive52026-07-25
17On discrete aligned data the warp HURTS and the ground is neutralretracted52026-07-25
18Hierarchy does not beat a flat representationnegative52026-07-25
19The geometry is not fp16-saferetracted12026-07-24
20Measurement error: a growing label space looked like memory decayingretracted22026-07-26
21An impossible value exposed a flaw that only a second dataset could revealactive52026-07-26
22The Riemann work reproduces known mathematics and proves nothing newnegative52026-07-22
23Character spacing is not Riemann level repulsionnegative52026-07-25
24Memory helps a language model, but the geometry is not whyretracted52026-07-25
25The Fisher-Rao ground IS a better retrieval key than L2 -- once characters have a learned metricactive52026-07-26
26The learned character metric encodes linguistic class, and it is not frequencyactive32026-07-26
27The equation predicts the next step better than a trained network, with no trainingactive52026-07-24

The record, newest first

27The equation predicts the next step better than a trained network, with no trainingactive

2026-07-24 · rung 5 — survives a fair control designed to kill it

Claim

Continuing the curve along its geodesic — a closed-form step with zero learned parameters — predicts the next frame of a real signal 3-16x more accurately than a matched dense network that was trained to do it.

Evidence

Fisher-Rao error, lower is better. AUDIO (FSDD cochlea, F=32): geodesic continuation 0.0054 vs fair dense 0.0860 vs naive repeat-last 0.0866. PEN (handwriting, F=16): 0.1796 vs 0.3863 vs 0.3903. Paired: audio 646 wins / 2 losses, p=4e-190; pen 591/129, p=2e-71. The LEARNED geometry model beats fair dense on audio (p=2e-122) but only TIES on pen (397/353, p=0.12) — reported because it qualifies the headline: learning helps complex dynamics, not smooth real signals.

Scope / limits

Next-step prediction on continuous real sequences, two unrelated modalities. This is one-step continuation, NOT generation over long horizons, and not language.

Controls that could have killed it

  • THE FAIR-ANCHORED BASELINE, added after a red flag rather than before. The first dense baseline scored WORSE than naive repeat-last on audio, which is not a believable result for a trained net. The cause: it predicted an absolute frame while the geometry methods predict a STEP FROM THE LAST FRAME. `std_res` was rebuilt anchored the same way, which roughly halved its error (0.176 -> 0.086) — and the geometry still wins. The control strengthened the opponent and the result survived.
  • naive repeat-last floor — the fair dense net barely beats it on audio, the geometry beats it 16x
  • matched parameter budget across arms
  • paired per-sequence statistics rather than a difference of means
This is the result that separates PREDICTING from RECOGNISING, and it is the strongest form of the project's central claim: the prediction is not learned, it falls out of the geometry. Note what it does NOT say — one step ahead on smooth continuous signals is a long way from language, where the same continuation currently costs 16% perplexity against an ordinary recurrent net (finding 24's successor).

validate/headtohead.py

26The learned character metric encodes linguistic class, and it is not frequencyactive

2026-07-26 · rung 3 — measured on real data, one modality

Claim

Trained only to predict the next character, the model places characters on the simplex so that Fisher-Rao distance tracks linguistic class -- case pairs, vowels, sentence terminators, whitespace -- and this is not explained by how often the characters occur.

Evidence

Off-diagonal Fisher-Rao spread 0.5050 (min 0.1298, max 0.6349) against exactly 0.0000 for one-hot. Correlation with frequency is nil: Spearman +0.009, ~0.0% of rank variance. After residualising distance on the frequency gap, within-class pairs are closer than cross-class pairs by 0.0226; a 10,000-shuffle permutation null over class labels gives z=+4.46, p=0.00010. Tightest classes are the terminators . ? ! (-0.256) and separators , ; : (-0.212).

Scope / limits

One trained checkpoint (HODOS_embed, 30k steps, val ppl 5.29) on TinyShakespeare. Learned embeddings clustering by character class is a KNOWN property of neural language models and is not claimed as novel here. It is recorded because it is the precondition that makes finding 25 interpretable: without it there is no metric for the Fisher-Rao ground to act on.

Controls that could have killed it

  • FREQUENCY CONTROL -- the obvious confound, since vowels and whitespace are all common. Distance is residualised on the log-frequency gap before the class test.
  • PERMUTATION NULL -- 10,000 shuffles of the class labels, so 'looks clustered' cannot be eyeballed into a result.
  • INTERNAL NEGATIVE CONTROL -- the grab-bag 'other' category (digits, quotes, $, &) is not a linguistic class, and it is the ONE category with a POSITIVE residual (+0.117): its members are FURTHER apart than frequency predicts. The non-class is the one that does not cluster.
This is what the 4,225 parameters buy, and it is worth 7x perplexity on its own: the same architecture with characters pinned to one-hot corners scores 37.63 against 5.29 with the positions learned, at matched parameters and identical steps.

validate/char_metric_structure.py

25The Fisher-Rao ground IS a better retrieval key than L2 -- once characters have a learned metricactive

2026-07-26 · rung 5 — survives a fair control designed to kill it

Claim

Given character positions that carry a real metric, retrieving past contexts under the Hodos process distance predicts the next character better than retrieving under plain L2 over the identical frames. The only difference between the two arms is the distance function.

Evidence

Pooled over 5 seeds, 1000 held-out positions, each seed tuning its own temperature and blend weight on its own separate half: Hodos beats L2 by +0.0970 nats, p=2.0e-05. The warp HELPS by 0.0674 nats (p=2.5e-03) and the ground helps by 0.0296 nats (p=0.024) -- both reversing the retracted findings 17 and 24. The same experiment run in the old one-hot space reads -0.0249 nats, p=0.25: indistinguishable from zero, as a constant ground must be.

Scope / limits

k-NN character language modelling on TinyShakespeare against a unigram term. The learned metric is the 4,225-parameter embedding table from the trained HODOS_embed language model, so this shows the geometry works ON a learned metric -- it does not show the metric can be obtained without learning one.

Controls that could have killed it

  • ONE-HOT CONTROL ARM AS A MACHINE CHECK -- pre-registered to read zero, because the ground is provably constant there. It read -0.0249, p=0.25. Had it moved, the run was to be discarded rather than explained.
  • TUNE/TEST SPLIT -- each arm is swept over 9 temperatures x 7 blend weights = 63 settings; selecting the best of 63 on the same positions the verdict is read from would inflate the noisiest arm most. Selection happens on one half, every statistic is reported on the other.
  • REPRESENTATION ATTRIBUTION -- the learned edge exceeds the one-hot edge by +0.1219 nats, p=2.7e-07, position-paired within seed, so the effect is the representation and not the arm.
  • NO PREFILTER -- the exact distance is computed against the entire store. Learned frames are near-uniform (row entropy 4.133 of a 4.174 maximum), so a cheap signature shortlist would have been noise-dominated and would have silently decided the comparison.
  • BATCHED SOFT-DTW ASSERTED EQUAL to hodos.warp.soft_dtw before any result is produced (max abs err 6.6e-15). The first attempt disagreed at 2.4e-06, traced to float32 softmax rows that ground.bhattacharyya renormalises internally and this path did not.
  • random-retrieval floor (every trip of it was non-significant, all p > 0.17)
  • per-arm temperature tuning
This is a CORRECTION of findings 17 and 24, not a new capability claim. It does not make the language model competitive -- the geodesic head still costs 16% perplexity against a matched GRU (5.29 vs 4.56, 30k steps, 4.07M params). What it establishes is narrower and was previously mis-measured: where the geometry has a metric to act on, it acts, and the alignment machinery earns its place rather than costing.

frontier/lm_memory_pooled.py · frontier/lm_memory_pooled_result.json · supersedes finding [17, 24]

24Memory helps a language model, but the geometry is not whyretracted

2026-07-25 · rung 5 — survives a fair control designed to kill it

Claim

ORIGINAL WORDING, NOW KNOWN TO BE WRONG: 'Retrieval is what helps; the geometric distance is not better than a flat one for this.'

Evidence

Memory improves by +0.105 nats, p=2.7e-06. Plain L2 retrieval beats Hodos retrieval by 0.121 nats, p=7.35e-04, and this survives per-arm temperature tuning.

Scope / limits

RETRACTED 2026-07-26. The geometry was never given a metric to work with.

Controls that could have killed it

  • plain-L2 arm
  • random-retrieval floor
  • per-arm temperature tuning

Why this was wrong

Both of these were measured in a space where the Fisher-Rao ground is a CONSTANT FUNCTION. Contexts were built as label-smoothed one-hot rows, and on the actual vocabulary (V=65, eps=0.03) the Fisher-Rao distance between every pair of distinct characters is identical: min 2.9971, mean 2.9971, max 2.9971 -- spread exactly 0.0000. In that space Fisher-Rao and L2 induce the SAME ranking, so 'the ground ties L2' was an algebraic identity, not a measurement, and the warp was the only thing left that could move. The experiment could not have produced any other answer. Re-measured in a non-degenerate metric (finding 25) both conclusions reverse: the ground beats L2 and the warp HELPS. The H1 half of this finding -- that memory helps a language model at all -- survives and is carried into finding 25. Only the control's verdict on the geometry is withdrawn.

Reported as it came out. An H1 pass alone would have been enough to claim a Hodos win; the control is what prevented that.

frontier/lm_memory.py · superseded by finding 25

23Character spacing is not Riemann level repulsionnegative

2026-07-25 · rung 5 — survives a fair control designed to kill it

Claim

The apparent 'empty band' in character separations is an artifact of one-hot encoding, not a repulsion signature.

Evidence

One-hot characters have exactly ONE distinct pairwise distance — all 2080 pairs at 1.498555, spread 0.00e+00. Arbitrary points on the SAME simplex give 1334 distinct distances, so the constraint is the encoding.

Scope / limits

The structural question is genuinely shared — both ask what a distribution of separations looks like near zero. But level repulsion is a statement about a DENSE 1-D spectrum, and 65 points in 65 dimensions is the sparsest possible arrangement.

Controls that could have killed it

  • coordinate-shuffle matched null
  • the repulsion statistic turned out to have NO dynamic range — a dead measurement, not a null
Reported as a failed measurement rather than a null result. A z of 0 against a null with zero spread means the instrument could not move.

validate/char_repulsion_null.py

22The Riemann work reproduces known mathematics and proves nothing newnegative

2026-07-22 · rung 5 — survives a fair control designed to kill it

Claim

The distance works as a REFEREE — it correctly ranks a quantum-chaotic drum closest to the real Riemann zeros — but every attempt to use it to find a load-bearing arithmetic operator returned a null.

Evidence

Referee ranks GUE 0.0435 closest, GOE 0.0695 second, noise far. Reproduces Montgomery–Odlyzko (known). The relationship-kernel looked load-bearing at 4–6σ against random integers — but a density-matched control scored BETTER (0.062 vs 0.128), so the signal was a density-envelope artifact.

Scope / limits

RH is not proven, not approached. The real limiter is resolution: an arithmetic fingerprint needs ~10³–10⁴ zeros and we have hundreds.

Controls that could have killed it

  • density-matched sharp control — this is what killed the 4σ result
Catching the artifact via the fair control IS the result. Kept as an honest appendix, not a claim.

validate/drum_referee.py

21An impossible value exposed a flaw that only a second dataset could revealactive

2026-07-26 · rung 5 — survives a fair control designed to kill it

Claim

A negative forgetting score — sequential beating joint — is impossible if the store is order-invariant, and chasing that impossibility found a real defect in the comparison.

Evidence

Handwriting reported hodos forgetting −0.083 on one seed. Cause: an incomplete final chunk is dropped from the task list, but the joint comparison arms still iterated ALL classes — so joint faced a 17-way problem while sequential faced 16-way.

Scope / limits

Speech divides evenly into pairs, so nothing was orphaned there and the flaw could ONLY surface on a second modality.

After the fix the net's forgetting ROSE from 0.692 to 0.801 — the bug had been FLATTERING the opponent. Replication on a second modality is not just confirmation of a number; it is a different defect detector.

validate/catastrophic_forgetting.py

20Measurement error: a growing label space looked like memory decayingretracted

2026-07-26 · rung 2 — measured once, synthetic data

Claim

ORIGINAL WORDING, NOW KNOWN TO BE WRONG: 'the geometry forgets too — task-1 accuracy drops 0.500 as later tasks arrive.'

Evidence

The raw drop, which is real but means something else.

Scope / limits

RETRACTED same day. This is a flaw in the METRIC, not in either system.

Controls that could have killed it

  • comparison against the joint-trained ceiling

Why this was wrong

In class-incremental learning the LABEL SPACE GROWS: task 1 is a 2-way choice when first learned and a 10-way choice at the end. Comparing those two numbers makes the task getting harder look like memory degrading. Measuring against the joint-trained ceiling makes the growing label space cancel, leaving only the cost of having learned in sequence — which for this system is exactly zero. The file's own docstring warned about this trap before the first version was written that way anyway.

validate/catastrophic_forgetting.py

19The geometry is not fp16-saferetracted

2026-07-24 · rung 1 — reasoned, unmeasured

Claim

ORIGINAL WORDING, NOW KNOWN TO BE WRONG: 'sph_log takes arccos of an inner product very close to 1.0; fp16 resolution there is coarser than the guard clamp, so every Log map collapses to zero and the geometry dies silently.'

Evidence

None — this was reasoned, never measured. Rung 1.

Scope / limits

RETRACTED 2026-07-24 by direct measurement on a T4.

Controls that could have killed it

  • real-text measurement
  • naive-autocast dtype check

Why this was wrong

Both halves were wrong. The premise is BACKWARDS: characters are label-smoothed one-hots, so two DIFFERENT consecutive characters are nearly ORTHOGONAL (real-text mean inner product 0.096), nowhere near 1.0. The fp16 danger band contains 0.0000 of real pairs and zero pairs lose real motion. And naive autocast never reaches the geometry anyway — the manifold tensors come out float32. The 'safety' code written to guard this imaginary hazard then introduced the only real bug the run found.

The clearest example in this project of why reasoning is not evidence.

frontier/gpu_check/gpu_validate.py

18Hierarchy does not beat a flat representationnegative

2026-07-25 · rung 5 — survives a fair control designed to kill it

Claim

Lifting a trajectory into nested levels gives no advantage over the flat version on either modality.

Evidence

Speech: flat 0.920, lifted 0.935 — but the SMOOTHING control also 0.935, identical. Handwriting: lifted 0.870 < flat 0.877.

Scope / limits

FSDD utterances are 24 frames, so a lift yields ~5 — shallow. A null here means 'no benefit on short sequences', NOT 'no benefit'. The case hierarchy exists for is long sequences.

Controls that could have killed it

  • bin-wise smoothing control — MATCHED it exactly, which is what killed it
  • length-matched subsampling control
A clean kill by a control built specifically so it could kill the idea.

kaggle_pack/hodos_science.py

17On discrete aligned data the warp HURTS and the ground is neutralretracted

2026-07-25 · rung 5 — survives a fair control designed to kill it

Claim

ORIGINAL WORDING, NOW KNOWN TO BE WRONG: 'For character contexts, the Fisher-Rao ground ties plain L2 exactly, and the entire performance gap is the alignment machinery.'

Evidence

Per-arm tuned: full Hodos 3.1117, ground-without-warp 2.9949, L2 2.9903. Ground vs L2: −0.0046, p=0.586 — a dead tie. The warp costs +0.1168, the whole gap.

Scope / limits

RETRACTED 2026-07-26. The tie was forced by the representation, not observed.

Controls that could have killed it

  • plain-L2 retrieval arm
  • random-retrieval floor — hurts at every setting, proving the gain is real retrieval not smoothing
  • PER-ARM temperature tuning — a single temperature was unfair because the distances scale differently (FR sums linearly in mismatches, L2 as a square root); best temperatures differed by 40×

Why this was wrong

Both of these were measured in a space where the Fisher-Rao ground is a CONSTANT FUNCTION. Contexts were built as label-smoothed one-hot rows, and on the actual vocabulary (V=65, eps=0.03) the Fisher-Rao distance between every pair of distinct characters is identical: min 2.9971, mean 2.9971, max 2.9971 -- spread exactly 0.0000. In that space Fisher-Rao and L2 induce the SAME ranking, so 'the ground ties L2' was an algebraic identity, not a measurement, and the warp was the only thing left that could move. The experiment could not have produced any other answer. Re-measured in a non-degenerate metric (finding 25) both conclusions reverse: the ground beats L2 and the warp HELPS.

This is a MECHANISM for the demarcation rather than an observation: rigid aligned windows have no timing to align away, so warping can only manufacture false matches. Actionable: on discrete aligned data, use the ground WITHOUT the warp.

frontier/lm_memory_temp.py · frontier/lm_memory_temp_result.json · superseded by finding 25

16Anything between the landed point and the answer must start as a pass-throughactive

2026-07-25 · rung 5 — survives a fair control designed to kill it

Claim

A randomly-initialised readout layer costs ~21 perplexity — a 2.5× degradation — regardless of its form. Initialised as a pass-through, the cost vanishes entirely.

Evidence

At identical dimension and parameters: no readout 13.528, random-init readout 34.318, identity-init readout 13.187. Both readout FORMS cost the same, so it is not which readout but having one.

Scope / limits

Applies to anything built downstream of a landed point — the memory, reasoning and decoder organs all sit there.

Controls that could have killed it

  • mixture vs logit readout — identical, proving form is not the variable
The same disease the distance-attention layer had in June, and the same cure: start as identity so a layer can only refine, never replace.

frontier/hodos_lm.py

15A compressed latent representation does NOT helpnegative

2026-07-25 · rung 5 — survives a fair control designed to kill it

Claim

Squeezing characters onto a lower-dimensional concept simplex is monotonically worse, at matched parameters, with a working readout.

Evidence

13.545 (65 dims) → 16.089 (32) → 19.418 (16) → 23.113 (8) perplexity. No sweet spot.

Scope / limits

Character language modelling, small local config.

Controls that could have killed it

  • parameter matching to within 1% — without it, a small-K model is simply a SMALLER model
  • sharp-readout arm to separate the readout from the dimension
The first version of this measured through a broken readout (see finding 16) and reached the right conclusion for the wrong reason.

validate/lm_latent_sweep.py

14It does not forget — and cannot, by constructionactive

2026-07-26 · rung 5 — survives a fair control designed to kill it

Claim

Taught classes in sequence, a standard network loses half to four-fifths of its first-task accuracy. This system loses nothing, because learning is appending to a store rather than overwriting weights.

Evidence

Forgetting measured against the joint-trained ceiling so the growing label space cancels. Speech: net +0.500, hodos +0.000. Handwriting: net +0.801, hodos +0.000. Per-seed hodos [0,0,0] on both. Learning INCREMENTALLY beats the network trained on EVERYTHING AT ONCE: 0.544 vs 0.422 (speech), 0.845 vs 0.702 (handwriting).

Scope / limits

Two modalities, 3 seeds each. Handwriting uses a random per-class holdout (no speaker axis), a weaker split than the across-speaker speech version.

Controls that could have killed it

  • joint-trained ceiling — without it, task difficulty masquerades as forgetting
  • replay (full retrain each step) — also 0.000 forgetting, but costs a retrain every step and still lands lower
  • ORDER INVARIANCE: building the store in REVERSE gives byte-identical answers, 1.000 on every seed
Order invariance at 1.000 is what makes this structural rather than lucky: the final state provably cannot depend on the sequence, so forgetting is impossible rather than merely absent. Two of our own errors were caught here — see findings 20 and 21.

validate/catastrophic_forgetting.py · frontier/forgetting_result.json

13The geometry needs 5–10× less data than a standard networkactive

2026-07-25 · rung 4 — replicated on a second, unrelated modality

Claim

Class-barycenter prototypes with NO training reach a standard method's 50-example accuracy using 5 examples (speech) or 10 (handwriting).

Evidence

Speech across-speaker: hodos 0.416/0.539/0.654/0.715/0.746 at 1/2/5/10/50 shots vs GRU 0.189/0.291/0.417/0.520/0.624. Handwriting: hodos 0.730→0.894 vs GRU 0.403→0.828. At ONE example the network is near chance (0.189 vs 0.10).

Scope / limits

Two modalities, 5 seeds, 200 test items, full shot sweep to 50.

Controls that could have killed it

  • 1-NN L2
  • mean-pool + logistic regression
  • GRU classifier
  • all arms on identical splits and shots
A pre-registered criterion predicted the gap would SHRINK with data (the signature of a prior). On handwriting it does, monotonically (+0.098→+0.018). On speech it RISES to a peak at 10 shots then falls — the local 5-shot sweep had only seen the rising half. Describing it as a 'prior' without that check would have been wrong.

kaggle_pack/hodos_science.py · kaggle_pack/out/hodos_science_result.json

12The win decomposes: trajectory > ground > warpactive

2026-07-24 · rung 4 — replicated on a second, unrelated modality

Claim

The advantage over mean-pooling splits cleanly into three ingredients in a fixed order: using the trajectory at all, then the Fisher–Rao ground, then the alignment.

Evidence

FSDD across-speaker 5-shot, 3 seeds: FR+warp 0.657 / FR+nowarp 0.637 / L2raw+warp 0.602 / L2raw+nowarp 0.573 / mean-pool 0.483. Trajectory +9, ground +5–6, warp +2–3. Handwriting: same ordering, +25 / +3.4 / +1.8.

Scope / limits

Same ordering on a sound task AND a non-sound task, so it is not a speech artifact.

Controls that could have killed it

  • L2-on-RAW-frames arm — the earlier L2-on-sqrt arm was a BAD control (≈ Hellinger, same geometry) and produced a spurious 'FR doesn't help'

validate/nn_decompose.py

11Against a published method: the field's warp is better, our ground still winsactive

2026-07-23 · rung 6 — survives comparison against a published method

Claim

soft-DTW beats our hard-DTW warp — but the Fisher–Rao ground beats Euclidean under BOTH warps on BOTH modalities. The transferable contribution is the ground, and it composes with the field's better alignment.

Evidence

Handwriting z=2.75, errors 0.045→0.025 for soft-DTW over hard-DTW.

Scope / limits

Recommended distance is therefore soft-DTW + Fisher–Rao — adopt the field's warp, keep our geometry.

Controls that could have killed it

  • both warps × both grounds × both modalities
The claim survived contact with the field and got narrower and stronger.

validate/abx_vs_softdtw.py

10Doppler / velocity measurement is not an edgenegative

2026-07-22 · rung 5 — survives a fair control designed to kill it

Claim

The conceptual link (Doppler is a time-warp, so the method should measure velocity) is real and elegant, but empirically purpose-built DSP measures it better.

Evidence

Matched filter is perfect (0.000 clean); Hodos ~0.13. On the velocity PROFILE — supposedly the structural edge — the Hodos warp-slope is too noisy (0.14–0.20) and loses even to a FLAT single-α baseline (0.07–0.12).

Scope / limits

Two fair benchmarks. Stopped after two rather than trying a third variant.

Controls that could have killed it

  • matched-filter baseline
  • flat-α baseline

validate/doppler_benchmark.py

9The min-mean distance 'win' was a padding degeneracyretracted

2026-07-22 · rung 5 — survives a fair control designed to kill it

Claim

ORIGINAL WORDING, NOW KNOWN TO BE WRONG: 'min-MEAN + Fisher–Rao beats standard DTW on light by +0.21 (0.61→0.82), and it survives 6→12/class.'

Evidence

The apparent win.

Scope / limits

RETRACTED. Caught by Flouk: 'why does it track one better than the other — that doesn't make sense.'

Controls that could have killed it

  • mechanism investigation, scratchpad/diag_minmean.py

Why this was wrong

min-mean degenerates into long, padded, cheap-repeat paths (path padding 0.00 for standard DTW vs 0.61 for min-mean) which makes it behave MORE like plain averaging (correlation with mean-pool 0.779 → 0.845). Light is precisely the task where averaging wins — so it 'won' for the wrong reason, and the same collapse HURT on echo where timing is the signal. The object is Marzal–Vidal's Normalized Edit Distance (1993), proven non-metric. RETIRED.

An unexplained win-here/lose-there is a red flag, not a result. Explain the mechanism BEFORE banking a win.

hodos/warp.py

8The distinctive ground does NOT generalise across light, echo and turbulencenegative

2026-07-22 · rung 5 — survives a fair control designed to kill it

Claim

The Fisher–Rao ground shows no edge over plain L2 on light spectra, sonar range-profiles or turbulence. It ties; it does not beat.

Evidence

1-NN LOO, 3 seeds, ground ablation, noise swept to break the ceiling. At 18/class: light 0.45 vs 0.44, echo 0.73 vs 0.75, turbulence 0.62 vs 0.68. The ground earns its keep in 0 of 3 modalities.

Scope / limits

Recognition only. Does not test barycenter, morph, pooling or the physics reproduction.

Controls that could have killed it

  • 18/class robustness re-check after a 6/class small-sample artifact reversed the apparent result
This killed the universal-distinctiveness claim. It is the reason the paper's claim is narrow.

validate/crossmodal_benchmark.py

7Pitch invariance by construction, not by trainingactive

2026-07-22 · rung 5 — survives a fair control designed to kill it

Claim

Quotienting the process space by the global bin-shift group gives a distance between ORBITS, making recognition invariant to transposition exactly — not approximately, and with no examples required.

Evidence

Same vowel shifted 6 bins: distance collapses 61× (0.4611→0.0075) while a DIFFERENT vowel is preserved (0.2911) — a 39× separation. The invariant recogniser REPAIRS a real base-engine misclassification.

Scope / limits

Exact-zero only for an exact array roll; independently synthesised transpositions carry edge-tail truncation (D_inv ≈ 7.5e-3, not 1e-16). Pad-mode invariance is approximate.

Controls that could have killed it

  • theorem verified |ΔD| = 4.4e-16
  • W1 claim self-corrected mid-build
Shipped into Auris, closing that project's own documented pitch-sensitivity limit.

hodos/quotient.py

6The corrected boundary: two lanes, not oneactive

2026-07-24 · rung 3 — measured on real data, one modality

Claim

The GROUND earns its keep wherever identity lives in the relative-space pattern — INCLUDING static posture. The WARP earns its keep only where identity lives in temporal motion. These are separate lanes; the earlier single-axis 'motion vs static' framing conflated them.

Evidence

With a representation that preserves relative space (distribution over TOTAL acceleration orientation), subject-disjoint sit-vs-stand = 0.758 against chance 0.500. Fisher–Rao ground contributes +5.8 points over Euclidean on a task with NO motion; the warp contributes 0, correctly.

Scope / limits

One dataset (UCI HAR). The two-lane structure is supported by findings 3, 4 and 17 jointly. PRIOR ART, added 2026-07-26: the same demarcation is already stated in the pooling literature — orderless pooling suffices for stationary or weakly nonstationary signals with little discriminative temporal structure, while order-aware pooling is needed where the cues are transient or phase-dependent. This finding independently REPRODUCES a known boundary; it does not establish a new one. It stays active because it is measured and it is true.

Controls that could have killed it

  • subject-disjoint split

validate/nn_har_orientation.py · supersedes finding 5

5The method fails where identity is static — the predicted boundaryretracted

2026-07-23 · rung 3 — measured on real data, one modality

Claim

ORIGINAL WORDING, NOW KNOWN TO BE WRONG: 'Fisher–Rao does not beat Euclidean on human-activity windows because activity identity in a short window is static — exactly what the principle predicts.'

Evidence

HAR: averaging won, 0.24 vs 0.26–0.27.

Scope / limits

RETRACTED 2026-07-24. The null was OUR OWN BROKEN INPUT, not a property of the method.

Why this was wrong

The adapter fed gravity-removed acceleration reduced to a MAGNITUDE — a representation with direction deleted. Sitting and standing are both 'at rest, no direction', so under that input they were identical BY CONSTRUCTION. The method was not failing on static identity; it was succeeding on an input from which the answer had already been removed. A null produced by a crippled representation is not a boundary.

validate/nn_har_orientation.py · superseded by finding 6

4The same win replicates on handwriting, with no audio at allactive

2026-07-23 · rung 4 — replicated on a second, unrelated modality

Claim

The identical claim holds on pen motion — a completely different modality — and more strongly than on speech.

Evidence

UCI Character Trajectories, 2858 real handwritten characters, 4000 triples: paired McNemar z≈4.95 (Fisher–Rao fixes 49 errors, breaks 10).

Scope / limits

Single-writer temporal recognition, not an across-body handwriting split. Not a published leaderboard.

Controls that could have killed it

  • paired McNemar
  • fresh seed
This is what took finding 3 from 'a sound trick' to a modality-independent claim. The method was never about sound.

validate/abx_pen.py

3The information-geometry ground beats Euclidean on real speech across voicesactive

2026-07-23 · rung 3 — measured on real data, one modality

Claim

Recognising the same spoken word through a DIFFERENT human voice, the Fisher–Rao ground reduces error ~17% vs Euclidean.

Evidence

FSDD, 2000 triples, fresh seed: 0.1500±0.0080 vs 0.1805±0.0086 (~2.6σ).

Scope / limits

Word-level ABX on FSDD, not the published phone-level ZeroSpeech leaderboard. Within-speaker is a TIE — the N=400 within-speaker 'win' did NOT replicate and was a small-sample mirage.

Controls that could have killed it

  • confirm-at-scale with a fresh seed
  • binomial standard errors

validate/abx_fsdd.py

2Time-averaging is quadratically blind to a brief eventprovisional

2026-07-21 · rung 2 — measured once, synthetic data

Claim

Averaging a signal over time loses a short event at O(ρ²) while the curve distance loses it at Θ(ρ) — so pooling destroys exactly what a process comparison keeps.

Evidence

Log-log slopes 1.90 vs 1.00.

Scope / limits

Holds under an interior/support condition (corrected by Lee's review, 2026-07-22). A novelty check found the underlying effect is KNOWN prior art in detection theory and the DTW-averaging literature — the exponent statement may be a small novel instance at most. Do NOT claim as a new theorem.

Controls that could have killed it

  • novelty check vs literature, 2026-07-22

hodos/

1A process is literally a curve on a sphereactive

2026-07-21 · rung 5 — survives a fair control designed to kill it

Claim

The map p ↦ √p sends the simplex onto the unit sphere, under which Fisher–Rao becomes ordinary great-circle geometry. A signal over time is therefore a curve on a sphere, and comparing signals is comparing curves.

Evidence

2·geodesic == fisher_rao to 1e-9; chi² ≈ ¼·d_FR² with correlation 0.987 on real audio frames.

Scope / limits

Mathematical identity, not an empirical claim. Prior art (information geometry); reused, not invented.

hodos/sphere.py

Every equation, with an honest label on each

Every equation the project rests on, with an honest label on each: ASSEMBLED from known parts, KNOWN and merely reused, or OURS. Read ASSEMBLED carefully — it is not a lesser category. Nearly every method in this field is a composition, and §1, the Hodos distance itself, is ASSEMBLED: the contribution is which ground it is composed with, and that composition is not something we found elsewhere. What the labels buy is that nothing here can be dismissed by pointing at a part of it.

A signal becomes a process P = (pⁱ, …, pᵀ), each frame a probability distribution over F bins. Δ^{F−1} is the probability simplex. BC(p,q) = Σᵇ √(pᵇ qᵇ) is the Bhattacharyya coefficient.

§1 The master distance

ASSEMBLED — the composition IS the contribution

D(P,Q) = ( min_{π ∈ Π_β}  Σ_{(i,j)∈π}  g(p⁽ⁱ⁾, q⁽ʲ⁾) )  /  |π★|

Plain: Line the two signals up in time so the total per-step difference is smallest, then divide by the length of that alignment.

Provenance: Dynamic Time Warping (Sakoe–Chiba 1978) composed with an information-geometry ground g. The warp is standard and reused; the ground is classical; THE COMPOSITION IS THE CONTRIBUTION — an elastic distance whose local cost is the exact Fisher–Rao geodesic between distributions, with closed-form geodesic operators on top. A literature check on 2026-07-26 found the neighbouring families (OTW, TiOT, TAOT, Riemannian Time Warping) but not this composition as a working engine with these operators. D is an alignment-tolerant divergence, NOT a metric; ordinary DTW fails the triangle inequality.

Correction: An earlier version of this sheet presented the minimum-MEAN alignment as 'the distinctive object'. That is RETIRED: minimising the mean directly is the Normalized Edit Distance (Marzal–Vidal 1993), whose optimum pads the path with cheap repeats and collapses toward plain averaging. Its one apparent benchmark win was that padding artifact (finding 9).

§2 The ground metrics, frame against frame

KNOWN

chi2(p,q)       = ½ Σᵇ (pᵇ − qᵇ)² / (pᵇ + qᵇ)
fisher_rao(p,q) = 2·arccos( BC(p,q) )
hellinger(p,q)  = √( 1 − BC(p,q) )
wasserstein1    = Σᵇ | CDF_p(b) − CDF_q(b) |

Plain: Five interchangeable ways to measure the difference between two single frames. All closed-form, none learned.

Provenance: All established — Le Cam / Topsøe, Rao 1945, Amari, Bhattacharyya, optimal transport. We reuse them; we do not claim them. Our only move here is making the ground pluggable in one engine.

§3 The sphere lemma — a process is literally a curve on a sphere

KNOWN, load-bearing framing

φ(p) = √p          maps the simplex onto the positive orthant of S^{F−1}
‖√p‖² = Σᵇ pᵇ = 1
geodesic(p,q) = arccos( BC(p,q) )
d_FR(p,q) = 2·arccos( BC(p,q) )

Plain: Taking the square root of a distribution puts it on a sphere, and the distance between distributions becomes the plain great-circle angle. So a signal over time is a curve on a sphere, and comparing signals is comparing curves.

Provenance: Classical information geometry (Rao 1945; Amari). Known — used as the exact geometric home of the engine. It is what makes the closed-form geodesics and means below possible.

§4 Geodesic operations on the sphere

KNOWN math, our operators

slerp(p,q,t)  = unembed[ ( sin((1−t)θ)·√p + sin(tθ)·√q ) / sin θ ]
karcher_mean({pᵢ}) = the point m minimising Σᵢ d_FR(m, pᵢ)²

Plain: How to walk between two distributions along the shortest path, and how to average a set of them without leaving the space.

Provenance: Standard Riemannian geometry and DTW-barycenter averaging (Petitjean 2011). Known. These drive the morph and barycenter operators, and the zero-training prototypes behind findings 13 and 27.

§5 The temporal-pooling information-loss theorem

ASSEMBLED — downgraded from OURS on 2026-07-26

D(A,B)   = Θ( ρ · g(s,s′) )        — LINEAR in ρ
g(ā, b̄) = O(ρ²)   under the interior/support condition
         = O(ρ)    otherwise — the honest boundary

so  D / g(ā,b̄) = Θ(1/ρ) → ∞

Plain: Averaging a signal over time is QUADRATICALLY blind to a brief event riding on an ongoing one — the final /t/ against /p/ on a sustained vowel — while the warp distance stays LINEARLY sensitive. Averaging can only lose; on brief transients it loses badly.

Provenance: DOWNGRADED after the literature check this section had been carrying a warning about since 2026-07-22. It splits into three parts and they do not have equal status. (a) The O(ρ²) half is CLASSICAL: every smooth f-divergence is locally quadratic, its second derivative IS the Fisher information, and for chi-squared the literature states χ²(P₁‖P₂) = (θ₁−θ₂)² I_F + o(·) directly. Our proof is that expansion applied to the perturbation ρu. (b) Our 'honest boundary' — the O(ρ) case where mass moves where the baseline is ≈0 — is the classical regularity condition under which the local expansion holds at all. We rediscovered the caveat that ships with the theorem. (c) The warp's Θ(ρ) half is one line from the definition, and that averaging dilutes brief events is not only known but actively engineered around (attention pooling exists for it). The COMPOSED separation Θ(1/ρ)→∞ was not found anywhere — but six web searches are weak evidence of absence, and a composition of two textbook facts is a thin novelty claim regardless. Full write-up: paper/LITERATURE-CHECK-S5.md.

Correction: This section was tagged 'OURS — the main new result' from 2026-07-22 to 2026-07-26, always carrying its own warning that its novelty was unchecked. The check was run and the warning was justified. The measured consequence (finding 2 — averaging is quadratically blind to a brief event) STANDS and is unaffected; what changes is only the claim to have discovered the mathematics behind it.

§6 The pitch / shift quotient

OURS — new extension

D_inv(P,Q) = min_s  D(P, σ_s Q)

isometry:  g(σ_s p, σ_s q) = g(p, q)  EXACTLY, for the full cyclic group   (verified to 4.4×10⁻¹⁶)

Plain: A pitch shift is a translation along a log-frequency axis, so quotient the space by that shift. What is left is relative formant spacing — which is identity. Invariance by construction, with nothing trained.

Provenance: OURS as an extension, BUT the idea — shift-invariant and transposition-invariant distances, chroma/CQT shift, quotient and orbit metrics — already exists in music information retrieval and group theory. A specific clean instance, not a first. Measured as finding 7: a same-vowel transposition collapses 61× while a different vowel is preserved.

§7 Instruments applied to the Riemann side

KNOWN — reproductions, NOT ours

R₂(r) = 1 − ( sin(πr)/(πr) )²      GUE pair correlation (Montgomery 1973)
H = (XP + PX)/2                    Berry–Keating operator
Weil/Connes explicit-formula operator

Plain: Established results run THROUGH Hodos as a referee, not equations we made.

Provenance: Everything reproduces known mathematics. RH is NOT proven. Hodos's role is the measuring instrument — it correctly ranks the GUE spectrum closest to the real zeros. Two exciting signals died to fair controls here (findings 22 and 23), both density artifacts. The honest limiter is resolution: the arithmetic fingerprint needs 10³–10⁴ zeros and we compute a few hundred.

The one-paragraph honest summary

We assembled a real, working, model-free engine — DTW plus an information-geometry (Fisher–Rao √-sphere) ground over sequences of distributions — with clean geodesic operators and a quotient extension for pitch invariance. The composition in §1 and the quotient in §6 are the parts that are ours. §5 was demoted on 2026-07-26 when the literature check it had been flagged for was finally run. The strongest results in this project are not in this tab at all — they are the MEASUREMENTS (findings 13, 14 and 27), which were built with controls designed to kill them and survived.

The rules, and why each one exists

Every rule here was written after something went wrong. They are not general good practice; they are scar tissue.

Write the criterion before running the test

A test whose bar is set afterwards can always be read as a success. Finding 13 predicted that the advantage would shrink with data — the signature of a prior. It grew instead. That makes it a better representation rather than a better prior: a different claim, and one we would have described wrongly had the criterion not been fixed in advance.

Build the control that can kill the result

Findings 8, 9, 18 and 22 were all killed by a control built for that purpose. Finding 18's smoothing arm matched the result exactly, which is what ended it. A benchmark with no arm capable of producing a negative is a demonstration, not a test.

Design the test to exercise the mechanism

Findings 5 and 19 both passed on inputs that could not have shown the effect. The activity adapter deleted direction, so two postures were identical by construction. The fp16 test used random data that never approaches the regime in question. A null from a crippled input is not a boundary.

An unexplained win is a red flag

Finding 9 won on one modality and lost on another with no account of why. Investigating the mechanism showed it was collapsing toward plain averaging — which is exactly why it won on the task where averaging wins. Explain the mechanism before banking the win.

Distinguish "measured nothing" from "could not measure"

Finding 23 returned a statistic that was identically zero for the real data and for all 900 shuffled controls. A z of zero against a null with zero spread is a dead instrument, not a null result. It is reported as a failed measurement.

An impossible number is worth chasing even when the headline is good

Finding 21 reported a negative forgetting score, which cannot happen if the store is order-independent. Chasing it found a real defect — and fixing it made the opposing method look worse, meaning the bug had been flattering the opponent.

Replicate on a second, unrelated modality

Speech and handwriting share no sensor, no physics and no preprocessing. Finding 4 is what turned finding 3 from a sound trick into a claim. And per finding 21, a second dataset is not only confirmation — it is a different defect detector.

Retractions stay visible

6 findings on this page are retracted, with the original wording kept and labelled. 6 more are outright negatives. Deleting them would make the record look stronger and be worth less.

Status meanings

activeSurvives the controls it was tested against; currently believed.
provisionalMeasured, but on one task or at small scale; not yet replicated.
negativeTested and did NOT hold. Reported because a negative is a result.
retractedWe claimed it, then our own measurement refuted it. Original wording kept visible.
untestedStated but never measured. Carries no weight.

Confidence rungs

What it takes
1reasoned, unmeasured
2measured once, synthetic data
3measured on real data, one modality
4replicated on a second, unrelated modality
5survives a fair control designed to kill it
6survives comparison against a published method
7reproduced independently, outside this project

What this claims

A signal is a curve of probability distributions on a statistical manifold; comparison is a geodesic distance between curves.

The narrow version, which is the one that survived

The ground — the information-geometry representation, not the alignment machinery — is what earns a measurable advantage, and it does so wherever identity lives in the relative-space pattern of a process. The warp is a separate lane: it earns its keep only where identity lives in temporal motion, and on discrete already-aligned data it actively hurts (finding 17).

These are two lanes. Conflating them was our own error, retracted as finding 5 and corrected in finding 6.

What it is good at, stated as capabilities

It learns from 5–10× less data than a matched standard network, on two unrelated modalities (finding 13). At one example the network is barely above chance.

It does not forget (finding 14). Taught in sequence, a standard network loses half to four-fifths of what it first learned. This loses nothing — and cannot, because building the store in reverse order yields byte-identical answers, so the final state provably does not depend on the sequence.

It is invariant by construction rather than by training (finding 7). A transposed signal collapses 61× while a genuinely different one is preserved. A network has to learn that from examples and only ever approximates it.

What it costs

The store grows. Consolidation folds repeated episodes into one prototype per concept, so it scales with how many distinct things are known rather than with how much has been seen — but lookup gets slower as it learns, where a network's does not. That is the real trade, and it is why a fast retrieval index exists.

What it is not

Not a universal oracle. It solves what can be posed as a least-cost path on a distribution-manifold; it does not invent a domain's law and does not reach discrete or logical truths. The Riemann work (finding 22) reproduces known mathematics and proves nothing new.

Not better on language. Memory helps a language model, but a plain distance retrieves better than this one for text (finding 24), and the mechanism is understood (finding 17).

Not novel wholesale. Dynamic time warping, Fisher–Rao, the square-root sphere, soft-DTW, barycenter averaging and optimal transport are all prior art, reused. What is ours is the synthesis, the pitch quotient, and the measurements on this page.