Scoping + holdout validation of the VERIFIED canonical-comparison producer (the ADR-0206 §5 math-serving widening's gate). Records the empirical verdict so it is not re-chased: on holdout_dev the fold-derivation reader is 2 correct / 87 wrong on candidate-graph-refused cases, and a pure-chain certifier would admit 37 wrong (a wrong=0 breach) — the train_sample 3/7 was overfit. math_verifier.verify is solver-replay soundness, not correctness; the R1 graph reader is nested (0 flips). Math serving is comprehension-bound; the math seam correctly stays inert; the real lever is the general COMPREHEND organ, not a narrow GSM8K certifier. No code change.
6.1 KiB
Scoping: the VERIFIED canonical-comparison producer (the real math-serving unlock)
Date: 2026-06-06 · Status: scoping (no code) · Unblocks: the ADR-0206 §5 math-serving widening (the seam is built + inert; this is the gate it waits on).
The gap
select_self_verified proves soundness — grounding ∧ cue ∧ unit ∧ uniqueness — and
refuses on disagreement. It does not prove correctness: that the committed value
is the right answer to the question. Serving has no gold, so correctness can't be
checked by comparison to an answer key. EpistemicState.VERIFIED is reserved precisely
for the capability that closes this gap, and it is "the only state that will license
widening past gold" (ADR-0206 §4). Until a producer exists, the math seam stays inert and
the absolute wrong == 0 is safe.
Why a statistical license can't substitute
A reliability license (Step E) is a Wilson lower bound — it permits the cognition path
to serve a disclosed estimate. Math answers aren't disclosed; a licensed-but-wrong
math serve is a silent wrong. The absolute invariant needs absolute evidence, not a
0.99 bound. So VERIFIED must be a proof of correctness, not a confidence score.
Candidate mechanisms (in order of promise)
- Back-substitution / constraint satisfaction (recommended first target). For a problem reducible to a constraint system over its stated quantities, plug the candidate answer back in and verify it satisfies every constraint. This is a genuine correctness check without gold — it decides truth against the problem's own structure ("decode a reality that already is", the canonical-form thesis). Well-posed for a constraint-bearing subset (e.g., "x of the N are red, the rest blue; how many blue?" → answer must satisfy red+blue=N). The binding constraint is the same comprehension wall (word → constraint system), so scope it to shapes the reader already extracts cleanly.
- Independent canonical re-derivation. Stronger than today's disagreement rule:
require K structurally disjoint derivations to converge on the same canonical normal
form. Caveat — convergence is still evidential, not a proof; this raises confidence but
does not by itself justify
VERIFIEDfor an absolute invariant. Use only as a necessary pre-filter, never the sole gate. - Reuse a domain where correctness is decidable. Deductive logic already produces
proven-correct answers (the sound+complete ROBDD — project-deductive-logic-flagship).
That is the existence proof that
VERIFIEDis real; but it flows through the logic path, notselect_self_verified. A bridge would let logic-checkable arithmetic sub-claims earnVERIFIED.
Recommended arc (each its own PR, wrong=0-gated)
- Contract. Define
VERIFIED's canonical-comparison obligation: a predicate that, given a candidateResolution+ the problem, returns proven-correct / not — with a meaningful-fail test (it must reject a sound-but-wrong answer, the20/5==4class). - Producer for ONE checkable class (back-substitution over a constraint-bearing
shape). Emit
EpistemicState.VERIFIEDonly when the back-substitution check passes. - Wire
_canonically_verified(the seam's gate, already built + tested) to that producer. The math seam then widens for exactly that class — and only it. - Re-pin the serving-lane SHAs under the freeze (the deferred
reach_levelemission; ADR-0206 §5) — re-pinning a frozen gate is a deliberate, reviewed act, with the eval delta as the truth test (sealed run must show wrong=0 preserved + the new served class). - Independent oracle on a holdout (INV-25 discipline): the widened class must hold wrong=0 against a separate gold lane, not just the back-substitution check.
Honest risk
The hard part is comprehension (word → constraints), not the check. So the first producer should target the narrowest shape the reader extracts reliably, proving the mechanism end-to-end (build → emit VERIFIED → seam widens → wrong=0 holds on holdout) before widening the shape coverage. This is the "checkable-conclusion domains" direction (project-self-check-soundness-not-correctness) made concrete for math serving.
Empirical verdict (2026-06-06) — DO NOT BUILD the fold-reader certifier
A validate-first probe killed the back-substitution / pure-chain-certifier idea on the independent holdout, BEFORE any build:
- The serving
verify(math_verifier.verify) is solver-replay soundness, not correctness — it proves the solver executed the graph faithfully, NOT that the parse (text→graph) is right. wrong=0 holds by the candidate-graph parser's conservative refusal. - No independent second reader helps. On the refused set the R1 graph reader covers
0/44(train_sample) — it is nested in candidate-graph, not complementary. Cross-reader agreement → 0 flips. - The fold-derivation reader IS complementary but unsafe: on
holdout_devit answers 89 of the 495 refused cases at 2 correct / 87 WRONG. The train_sample looked like 3 correct / 7 wrong — overfit. - A pure-chain certifier (admit when no unhandled-structure cue: profit/per/%/more-than/…) splits the holdout fold-answers into 1 correct / 37 WRONG (admit) vs 1/50 (refuse). It would admit 37 wrong answers — a wrong=0 breach. The mis-reads carry no shallow structural signature; separating the 2 correct from the 87 wrong is the comprehension problem. A certifier strict enough to reject all 87 rejects the 2 too.
Conclusion: the VERIFIED-for-arithmetic producer via the existing readers is not
buildable at wrong=0. Math serving is comprehension-bound: the candidate-graph parser
refuses what it cannot model, and the only complementary reader is ~98% wrong on those. The
ADR-0206 §5 math seam correctly stays inert; the real lever is the general COMPREHEND
organ (helps every domain), not a narrow GSM8K certifier. Re-open only if a genuinely
complementary, independently-validated reader lands. Probe: resolve_pooled vs
_score_one_candidate_graph over evals/gsm8k_math/holdout_dev/v1/cases.jsonl.