Experiments · E119

Written down rung by rung, does the checking ladder do what we thought it did?

No. The cheapest check is not in the ladder's walk, the second runs at its worst setting, and two rungs were never timed.

In the log: The ladder written down, and what writing it down found

recordedDate not stated in the log; it was written between the commit of 2026-09-13 08:16 and the first commit that contains it, 2026-09-16 02:04unclassified0 predictions · 0 result paragraphsEXPERIMENTS.md lines 7071–7111
exp E119 diagram
What E119 did and how it came out, drawn from this record and the files it names (book/assets/diagrams/exp/E119.svg).

Results

No result paragraph for this entry was found in the log.

The full record

EXPERIMENTS.md · lines 7071–7111

E119 — The ladder written down, and what writing it down found

forager/spec.py states each rung of the fidelity ladder as measured: its question, cost, error, promotion rule and blind spots. Nothing in it runs a calculation. Every number carries where it came from, and an absent number reads UNMEASURED rather than zero - which is the failure mode it exists to stop, since rung costs are hardcoded 0.0 elsewhere.

The first draft was wrong, and being wrong is what made this worth doing. It described an idealised ladder - screen, ordering, relaxation, DFT. The ladder that runs is:

0 · screen              0.082 s    NOT IN THE WALK
1 · expansion          24.000 s
2 · lattice            90.000 s
3 · kinetics         UNMEASURED
4 · first principles UNMEASURED

Four findings, none of which were visible before the rungs were laid side by side.

1. The generator and the verifier do not start at the same rung. Verifier.__call__ begins at expansion, the Monte Carlo. screen - the 82 ms function - is not in its walk at all; it is what stage_b calls. So the generator ranks compositions with one model and the ladder begins verifying with a different, 300-times dearer one. That is why E117 could rank 1705 compositions in minutes while the ladder cannot.

2. Rung 1 runs at the worst corner of its own budget table. Verifier.expansion hardcodes steps_per_site=90, seeds=(1,). E113 measured exactly that setting at 67 K scatter and a +11 per cent bias no number of seeds removes. The 300- and 1000-sweep settings that fix it exist, in forager.rungs.default_ladder - and expansion never consults them. The precision sub-ladder is built and not wired in.

3. Rung 3's number is not trustworthy and the rung still runs. The Q proxy was falsified in E92 - over-predicted by 1.58 eV on an 8-element alloy, in the unsafe direction. Nothing was changed afterwards, so a candidate can still be promoted on it.

4. Two of five rungs have never been timed, so no budget over the ladder can be planned. Five fields across the ladder are unmeasured; spec.unmeasured() lists them.

Fourteen blind spots are recorded, and one is shared by every rung: Cr's Neel transition at 311 K, Ni's Curie point at 627 K and Co's hcp-fcc transition at 695 K all sit inside the 90-1000 K window, and the expansion and MACE are both spin-blind. No rung of this ladder can see the way its current best candidate most likely fails. That is task 2 of the night.

Related entries

Built with PRISMWebsite and visualizations made using Claude