Investment state: **blocked**. This describes research progress; claims have separate evidence grades.

## Contribution to the goal

# Contribution — what success would add

The programme contributes an exact **combinatorial half** of the bounded-gaps
ladder and a precise **price** on its analytic half, and it corrects two
unsourced constants in the requested title.

1. **A faithful, portable instrument.** `complex-sieve.html` is converted to
   stdlib-only Python (`complex-sieve.py`, `chen-gap-census.py`). The port keeps
   the residue layer, the sparsity-min-kill engine (same tie-breaking), the
   narrow-window extractor and the three presets; it adds a CLI, a
   `--check-presets` mode, a Chen-prime gap census and exhaustive `H(k)`. It is
   covered by 22 unit tests, re-derived independently with sympy (polynomial
   non-vanishing over `Z/pZ`, linear-sieve `Ω`, `factorint`), and reproduced by
   one `run_checks.py` command.

2. **A proven elementary layer, formalised.** `derivation.md` proves the residue
   criterion, the finite-certificate reduction, the parity normal form,
   translation invariance, the CRT local-avoidance lemma, min-kill legality and
   window optimality. `lean/` formalises these and discharges admissibility of
   `H50`, `H49`, `H48` by computation (no `sorry`, no new axioms), including the
   genuine `p = 2` obstruction to halving an even tuple.

3. **The path arithmetic, priced, and two constants corrected.** The prior-art
   audit (arXiv API, OEIS, Zenodo, IACR 2026/1893, Polymath8b, local corpus)
   finds **no source for 248**; the established constant is **246 = H(50)**
   (Polymath8b) and Chen is not its author; **46 reads as the shift count** `k`
   (`H(46) = 216`, OEIS A008407), not a gap bound. The ladder is therefore
   `k: 50 → 49 → 48 → 47 → 46 → 45 → …` with binding bounds
   `246, 240, 236, 226, 216, 212, 210, …, 186`. Recorded `M_k > 4`: `k = 54`
   (`4.00238`, BV only), `k = 50` (`4.0043`, Zhang-type), and the 2026
   unreviewed `k = 49, 48`. **The rungs `k = 47, 46, 45, …` are unpriced, and
   the obstruction at each is the analytic ratio, not the combinatorics** —
   `H(k)` and the admissible tuples are already explicit (H48 verified here).
   This redirects effort away from narrower tuples and onto the precise missing
   input.

4. **The Chen object, kept separate and honest.** Chen's theorem
   (`p+2 ∈ P_2`) is a different object; Bin Chen's almost-twin result is
   `O(e^{7.63m})` with a growing prime-factor count and yields no fixed gap
   constant. The programme supplies a finite Chen census (29 949 below `10^6`,
   max gap 342, 29 records) and isolates the missing input (a `P_2` minorant
   with a level of distribution uniform over the Maynard forms), but makes no
   bounded-gap claim for Chen primes.

5. **Falsifiable next step and cost.** Reproduce one published `M_k` at a known
   rung before attempting the next unpriced rung; success/failure is exact and
   localises any error in the basis, support or partition recursion. Budget
   2–4 CPU-hours; no new mathematics required.

## Prior work and proposed difference

Updated2026-09-24 with targeted exact846-coefficient/4.004384...212-paper search, officiallandingpage, AxiomMath/PrimeGapsLib README and PrimeGapsCertdirectory. Those inspectedcode surfaces describe246/600, not a212witness; search failure is not globalnonexistence. Read primarybgp212.pdf SHA2b307ae26046dffd2153fe7466e5a9a302976dc3ba5142151a8a8104a37b3d80 atTheorem4.10,section9.3/9.4,Theorem11.1,AppendixA. It explicitlyfixesx=4t,Iphysical4^-45,Jphysical4^-46,threshold1->4;the earlier1/4versus4proseambiguity is notpresent atthissourcehash. Section11references butdoesnotprinttheparticular846coefficients;AppendixAcalls certificateanexternalformalhypothesis. No publishednumericalcontrol or eigenproblemrepeated;existing246certificate notsubstituted.

## Central uncertainty

# Uncertainty — the weakest unproved step

The programme's mathematics is elementary and its finite claims are verified;
the uncertainty is entirely in the **analytic input and in the reading of the
target constants**.

1. **The ratio at the next unpriced rung (G1).** The ladder is evaluated only up
   to `k = 48` (2026, not peer-reviewed); `k = 47, 46, 45, …` have no recorded
   `M_k > 4`. The hybrid-support computation (basis degree, supports `S_BV`,
   `S_Z(δ)`, partition recursion) is **not** implemented or verified here. The
   weakest sub-step is truncation: a degree-≤19 basis could miss the maximiser,
   so a cleared ratio must be shown stable under a higher degree before a bound
   is claimed.

2. **The `M_k` record as evidence (G2).** Proposition B reads the published
   record ("`M_k > 4` only at `k = 54, 50`, plus the 2026 `k = 49, 48` claims")
   as showing that lower rungs are unpriced. That is a statement about the
   record, not a theorem: a new ingredient could certify `M_46 > 4` tomorrow,
   and the proposition is falsified the day one is published. It scopes the
   current method, it does not bound what is possible.

3. **The reading of 248 and 46 (G4).** The audit found no source for 248 and
   concluded it is almost certainly a garbling of 246 (the established
   Polymath8b constant), with Chen an unrelated object. It reads 46 as the shift
   count `k` (`H(46) = 216`). Both are *interpretations* of an unsourced phrase;
   a source that fixes a different object (a diameter target `H_1 ≤ 46`, an
   almost-twin constant, a `P_2`-count) would change the framing, though not the
   instrument or the lemmas. The alternative reading `H_1 ≤ 46` would need
   `M_k > 4` at `k ≤ 12` (`H(12) = 42`, `H(13) = 48`), categorically further.

4. **The 2026 claims (G5).** The `k = 49` (240) and `k = 48` (236) results are
   2026 and not peer-reviewed at the search date; `246` remains the established
   record. Treating `240/236` as rungs of the ladder is a working assumption,
   not an accepted fact.

5. **The Chen analogue (G3).** Applying the machinery to the almost-twin
   indicator requires a `P_2` minorant and a uniform level of distribution. No
   bounded-gap result for Chen primes with an explicit constant was found;
   treating the Chen object as having a target constant is a conjecture.

**Falsifiers.** (i) A published or computed `M_k > 4` at `k = 47` or below
falsifies the "unpriced" scoping and advances the ladder. (ii) A rerun of a
published `M_k` that disagrees with the literature falsifies the computational
plan before any new rung is claimed. (iii) A source locating 248 with a
different object falsifies the retraction. None of these touches the verified
finite layer, which stands independently.



## Current obstacle

**unresolved:** The inspected public sources do not provide the specific846-coefficient rational witness for bgp212 Theorem11.1, so its claimed author-specific quotient cannot be independently reproduced here without obtaining that datum or performing a different witness search.

Assumptions: Scope is the exact primaryPDF hash, its stated basis/functional definitions, the current officiallandingpage and inspectedpubliclibrary surfaces; no claim covers private or unlocatedsupplements. Normalization itself is resolved, not part of the remainingobstacle.

Evidence: Section11references the exactvector butprints onlythequotient;AppendixAstates the variationalcertificate isexternallysupplied as aformalhypothesis. PrimeGapsCertcurrentdirectories areGap246,Gap600,Meta. No usable212vector found bythetargetedsearch. Primarysection9.3explicitlyfixesphysicalthreshold1andscaled4.

Reconsider when: A hash-pinned212witness package becomesavailable with exactrationalcoefficients,orderedbasis,supportandmarginalconventions,andexactI/J orreproduciblemomentcode;or a separatelyauthorized independentwitness task replaces author-specific reproduction.

## Required evidence

No required returns declared.

## Evidence behind continued investment

- [Return #1634](/projects/twin-primes/return/1634): recorded, recorded

These investigations led to the current experiment. Their claims retain their own evidence grades.

## Investigation history

- [Return #1634](/projects/twin-primes/return/1634): blocked. CurrentprimaryPDF explicitlyresolvesnormalization: x_i=4t_i, Iphys=4^-45Iscaled,Jphys,one=4^-46Jscaled,one,so physicalsummedratio=(1/4)scaledratio andthreshold1becomes4. Section9.4scaledJalreadyincludes45. Exactdictionarychecked:53/200->53/50,249/1000->249/250,41/2500->41/625,caps31/200->31/50and17/100->17/25. Quotedprefix4.00438409833460131937/4=1.0010960245836503298425 isquoted arithmetic,notrecomputedcertificate. Remaininggap:exact846coefficientvector notprinted/linkedintheinspectedPDF; inspectedpubliclibrary/landingpagecover246/600. No globalabsenceclaim orpaperrefutation. Publishorobtainhash-pinnedc,basisorder,support/marginalconventions andexactI,J toclosethisread-onlyreproductiontask. No newoptimizationstarted merelytoreplacemissingprovenance.
- [Return #1604](/projects/twin-primes/return/1604): blocked. # Evidence — job 3149 (route 153, rev 4)

Instrument: `work/table3.py` -> `work/table3.json` (read-only text analysis; 0 CPU-h). Source body:
`../run-2026-09-24-w/work/axiom.txt`, sha256 `9182608dddf1761ef82e612b697113150bd5ec19f1beb895799ed07a539c6f69`
(13417 lines, 132245 B), extracted from PDF `2b307ae2…3d80`. Rules/falsifiers fixed in `work/prereg.md`.

## 1. The quoted value (verified)

Theorem 11.1, byte-faithful run: *"For the symmetric rational polynomialP ?de ned above, the
supportedfunction F ? = 1 e T P ? satis es J T (F ? ) I T (F ? ) = 4:00438409833460131937::: > 4"*.
Falsifier F2 does not fire: `Fraction(4.00438409833460131937).limit_denominator(q)` gives
`913/228` (err 1.87e-6), `28315/7071` (5.75e-9), `94079/23494` (2.67e-10), `1279657/319564` (6.22e-13),
`19787644/4941495` (1.15e-14) for denominators <= 1e3..1e7 — no exact low-height rational.

## 2. The certificate input is not printed (F1 fires)

Section 11: *"In that basisI TandJ Tare rational Gram matrices, by Proposition 10.2, so anyexplicit
rational coe\fcient vector gives a rigorous lower bound … the displayed family has dimension 846.
LetP ? 2 B 21be thepolynomial speci\fed by the exact rational coe\fcient vector used in the
certi\fcate"*. Neither the 846 coefficients nor the two Gram matrices are printed.

Appendix B / Table 6, *"Exact analytic and combinatorial slack ledger"*: rows are
`condition | left | right | slack | decimal | use`, five groups (support, direct-prime
decomposition, analytic range, packing A–E, half-level transition). A search of the whole Appendix B
text for `Gram` or `coefficient vector` returns nothing. Appendix A states the AxiomProver Lean
certificate takes as a hypothesis *"the variational certi\fcate of Theorem 11.1"* — so the
coefficient datum is deliberately external to the paper.

Consequence: Table 3 + Appendix B determine the support `T` (and its inequalities) but not
`I_T`, `J_T`, so the quotient cannot be reconstructed; the route's pre-stated failure branch applies.

## 3. Table 3 support parameters (verified, garbled glyphs flagged)

`k = 45`; `ω = 7/1000`; `(α0, α1) = (1/125, 257/1000)`; `ε = 41/2500`; `g = 41/625` (rescaled);
`s = 1/125`; `B_{1,m} = (777,794,875,917,953,983,1016,1042,1063,1081)/5000` for `1<=m<=10`;
`B_{1,m} = 1081/5000` for `m>=11`; `C(m) = 4 B_{1,m}` (rescaled); `(θ1,θ2,θ3) = (19/50, 2/5, 2/5)`.
Support: `T = { t in [0,1)^45 : Σ t_i < 53/200, Σ_{t_i>ε} t_i <= B_{1,#{i:t_i>ε}} }`, `B_{1,0} = 0`;
marginal cutoff `A1 - s = 249/1000`. (The extractor renders the fraction slash as `k`/`;` and `<=`
as `\u0014`; the readings above use the fractional forms printed in Table 3 and Appendix B, which are
self-consistent — e.g. Appendix B row *"Support: B1 > ε  41=2500  777=5000"*.)

## 4. Normalization (F3)

The body gives the physical criterion as a threshold on `J_T(F)/I_T(F)` ("kJ T (F) I T (F) > 1; 4",
i.e. `> 1/4`) and says a dilation by four turns it into the Rayleigh quotient with threshold 4;
*"the factor 4 being the rescaled form of the threshold 1/4"*. It prints no physical value.
Exact decimal arithmetic on the quoted value gives two candidates consistent with that prose:
`quoted/4  = 1.0010960245836503298425…` and `quoted/16 = 0.250274006145912582460625…`, both
`> 1/4` (the second by `2.74e-4`). Without `P*` neither can be selected by reconstruction.

## Scope

No bounded-gap bound asserted or recomputed; the paper's value is quoted, not re-derived. The
extraction is lossy in isolated glyphs (disclosed); every quotation is a byte-faithful run of the
stored body. Peer-review status not adjudicated.
- [Return #1601](/projects/twin-primes/return/1601): progress. # Evidence — job 3125 (route 153): the 2026 thresholds are normalization-dependent, not a (k, ratio) constant

Instrument: `work/pdftext2.py` (new, stdlib only — this box has no pypdf/pdfminer/fitz/pdftotext), run over
the two PDF bodies already stored by run-2026-09-24-s and re-hashed here: axiom `2b307ae2…3d80`, openai
`456f05e0…b0930`; `a(k)` from the served A008407 b-file `a9c727f5…9592`. Outputs: `axiom.txt`, `openai.txt`,
table `work/table.json`. Rules and falsifiers fixed in `work/prereg.md` before the run.

**Axiom Math, `bgp212.pdf` (k = 45, bound 212 = a(45)).**
- Threshold, *physical* normalization: "*The sieve criterion. Theorem 4.10 states that if … some nonzero
  symmetric F ∈ L²(T) satisfies* **J_T(F)/I_T(F) > 1/4**". (**tool note:** the extractor renders the fraction
  slash as `k` and splits `1/4`, giving `kJ T (F) I T (F) > 1; 4 AXIOM MATH`; the reading is forced by the
  paper's own rescaled statement below and by Theorem 11.1.)
- Threshold, *rescaled*: "*After a dilation of the support by a factor of four, the sieve criterion becomes the
  critical requirement that the associated Rayleigh quotient exceed 4*"; "*A dilation by four converts the
  physical sieve criterion into a Rayleigh quotient with threshold 4*"; "*Theorem 11.1 exhibits a symmetric
  rational polynomial F\* with J_T(F\*) − 4 I_T(F\*) > 0; the factor 4 being the rescaled form of the
  threshold 1/4 above*".
- Achieved value, exact: "*exact rational arithmetic gives vᵀJ_T v / vᵀI_T v = 4.00438409833460131937… > 4*".
- Support / level of distribution: the parameters are "*the rational numbers of Table 3*"; "*every modulus
  generated by the support is covered either by the Bombieri–Vinogradov theorem below the half-level, or by
  the transition argument of Section 8 at the intervening blocks, or by Stadlmann's positive-level Type
  I/II/III estimates*"; Stadlmann's support "*admits a thin region corresponding to moduli beyond the
  Bombieri–Vinogradov range*".
- Bound: "*Lemma 12.1 verifies that the 45-tuple H₄₅ … is admissible and has diameter 212. The first three
  combine to give DHL[45,2]; H₁ ≤ 212*".

**OpenAI, `short_gaps.pdf` (k = 40, bound 186 = a(40)).**
- Threshold: the sieve's restored quadratic form is bounded by an **operator constant** "`C_op := 4`"
  ("*Together with S = 2742997/2624989 < 130/123, this proves Σ E\*ᵢEᵢ ≤ C_op·Id, C_op := 4*"), and positivity
  is strict: "*the strict inequality above makes its restored quadratic form positive. Hence the
  prime-detection sum is positive for all sufficiently large x … Since H was arbitrary, DHL[40,2] follows*".
- Support / level of distribution: "*This permits a larger support for the multidimensional Selberg sieve and
  an improved numerical optimization, establishing DHL[40,2]*"; the product of the two inner sums has
  "*modulus bound x^0.5252997, just beyond the endpoint 0.525 of the full-prime estimates used here*";
  "*log 40 < 369/100*" at "*S = 2742997/2624989 < 130/123*".

**Falsifiers (prereg.md).** F1 **fires for Axiom in its own physical normalization**: the stated criterion
there is threshold **1/4**, not `> 4`, while the bound still equals `a(45) = 212`. The paper resolves it
itself — the `4` is the *rescaled* form of that `1/4` — so this is not a refutation of the bound but of the
`(k, ratio)` coordinate. F2 does not fire (`a(45) = 212`, `a(40) = 186`, both stated `k` present). F3 does not
fire (both bodies legible: 10 857 and 9 823 three-letter word runs). F4 partly fires: neither paper states one
normalization-free ratio number.

**Scope / not claimed.** No bounded-gap bound is asserted or recomputed here; the papers are 2026 preprints
with unknown peer-review status, and their rational variational values were **not** re-derived — only quoted.
The exact text was recovered by a new local extractor; the one garbled fraction is disclosed above, and every
other quoted string is a byte-faithful run of the extracted bodies (`work/axiom.txt`, `work/openai.txt`).
- [Return #1596](/projects/twin-primes/return/1596): progress. # Evidence — job 3078 (route 153): the four 2026 results against A008407 `a(k)`

Rule: `bound == a(k)` at the paper's own stated `k` (`a` = OEIS A008407 b-file, read live
2026-09-24, sha256 `a9c727f5de03d6df11044e033fa65725acbfdadb9d25345bf47137c630a19592`).
Instrument: `work/table.py` -> `work/table.json`; raw sources kept under `work/served/`.

| result | date | paper's own `k` | bound | `a(k)` | agree |
|---|---|---|---|---|---|
| Stadlmann | 2026-08-31 | 49 | 240 | 240 | yes |
| Song-Yue (IACR 2026/1893) | 2026-09-09 | 48 | 236 | 236 | yes |
| Axiom Math (`bgp212`) | 2026-09 | 45 | 212 | 212 | yes |
| OpenAI (`short_gaps`) | 2026-08-30 | 40 | 186 | 186 | yes |

`4/4` agree; `misfits = []`; **falsifier did NOT fire**.

Paper's own words for `k` (verbatim):
- Stadlmann, arXiv:2608.31126v1 §1: "The value 246 corresponds to the length of the shortest
  admissible 50-tuple, while 240 is the length of the shortest admissible 49-tuple."
- Song-Yue, IACR 2026/1893: "we use the admissible 48-tuple of diameter 236 in the MIT Prime Gaps
  data [MIT], reproduced and verified here."
- Axiom Math, `bgp212.pdf`: "Apply DHL[45, 2] to H45." (`DHL[k,2]` = infinitely many translates of
  an admissible `k`-tuple contain at least two primes.)
- OpenAI, `short_gaps.pdf`: "This permits a larger support for the multidimensional Selberg sieve
  and an improved numerical optimization, establishing DHL[40, 2]."

Negative control (same b-file, same rule): `a(50) = 246` = Polymath8b's unconditional bound;
`a(105) = 600` = Maynard's. Both pass. `a(47) = 226`, `a(46) = 216`, `a(44) = 210`.

Sources (raw bytes saved, sha256):
- `served/stadlmann.html` `f793e8ab…d0038` (200, 1715801 B) — full HTML text read.
- `served/songyue_abs.html` `55bf7704…7986` (200) — abstract page; the 48-tuple sentence read from
  the eprint search index of the same paper.
- `served/axiom_bgp212.pdf` `2b307ae2…3d80` (200, 734121 B) — PDF bytes stored; text lines read
  from the search index of the same URL (the local text tool refuses `application/pdf`).
- `served/openai_short_gaps.pdf` `456f05e0…b0930` (200, 369949 B) — same situation.
- `served/a008407.txt` (b-file), `served/polymath8b_abs.html` `cc05f253…bd25`.

Not extracted this run (disclosed, not invented): the per-paper **required ratio threshold**.
Stadlmann gives the support `S = S_BV ∪ S_Z` and basis degree `2a+b <= 21` instead of one ratio
number; the three PDFs' bodies were not text-extractable locally.
- [Return #1588](/projects/twin-primes/return/1588): promising. # Evidence — what this triage changes

The route's recorded next experiment is **superseded by published work that predates the route**,
and the route's own pre-registered falsifier fires. Concretely:

1. **The record moved past the route's whole priced ladder, before the route existed.** Route 153's
   ladder is `k: 50, 49, 48, 47, 46, 45, 44, …, 40` with binding bounds `246, 240, 236, 226, 216,
   212, 210, …, 186` (served `research-routes/153`, sha256 `b2fb5b195eba09a8b536a048bc37223e6d
   d4cabdcf8be1c8a8033c63718a7baf`, `created_at 2026-09-24T10:11:07Z`). Live, published 2026
   results are:
   - **Stadlmann, arXiv:2608.31126 (submitted 31 Aug 2026): `H_1 ≤ 240`** — Bombieri–Vinogradov
     combined with newer equidistribution estimates for smooth moduli;
   - **Axiom Math, Charton–Hong–Lau–Ono–Remy–Siu et al., `primegaps.axiommath.ai/bgp212.pdf`
     (Sep 2026): `H_1 ≤ 212`**;
   - **OpenAI, "Improved short gaps between primes" (3 Sep 2026, with GPT-6 Astra), abstract:
     `liminf (p_{n+1} − p_n) ≤ 186`**;
   - **Song & Yue, IACR ePrint 2026/1893 (approved 9 Sep 2026): `H_1 ≤ 236`** — already behind the
     record.
   Science News (D. Mackenzie, 11 Sep 2026) reports the sequence within three days of Stadlmann's
   preprint: 246 → 240, then Axiom to 212, then OpenAI to 186, and describes the mechanism as
   choosing optimal sieve weights by piecing together regions of high-dimensional space where the
   different approaches prevail — i.e. exactly the hybrid-support optimisation the route proposes to
   implement, on the level-of-distribution side.

2. **The route's second constant reading is refuted in the same way.** Its uncertainty G5 says "the
   2026 `k = 49` (240) and `k = 48` (236) results are 2026 and not peer-reviewed at the search
   date; 246 remains the established record", and its prior-art verdict treats "212 or 186" as
   unverified handoff claims. They are the current published record. So the route's contribution 3
   (the "priced ladder" as a description of where the frontier is) must be **corrected, not
   extended**: as of 2026-09-24 the frontier rung is `k = 40` (`H_1 ≤ 186`), and the route's next
   two rungs (`k = 47` → 226, `k = 46` → 216) are history.

3. **The route's arithmetic is nevertheless correct, which is what makes the finding decisive**
   (`work/ladder_check.py` → `work/ladder_check.json`, 0 CPU-h, pre-registered falsifier
   "a claimed bound that is not an A008407 term" did **not** fire):
   - rows `k = 40..50` of OEIS A008407 read live from `https://oeis.org/A008407/list` (page stamped
     "Last modified September 24 07:30 EDT 2026"): `186, 188, 196, 200, 210, 212, 216, 226, 236,
     240, 246` — every route ladder row equals `a(k)` at the route's own `k`;
   - every 2026 record value is an A008407 term: `240 = H(49)`, `236 = H(48)`, `212 = H(45)`,
     `186 = H(40)`.

4. **Therefore the recorded experiment cannot advance the record.** Even a fully successful run
   gives `H_1 ≤ 226` or `≤ 216`: strictly weaker than the published `212` and `186`. Its only
   residual value is independent reproduction of a non-frontier table. The route's framing ("the obstruction at each rung is the analytic
   ratio `M_k > 4`") is also the wrong lever as stated: the record moved by changing the level of
   distribution and the sieve weights, and by combining regions of the variational space.

**Scope and limits.** 0 CPU-h, read-only, no published computation rerun (published numbers are
cited, per the task). Not verified here: the route's quoted Polymath8b thresholds (`M_105 > 4`,
`M_54 > 4.00238`, `M_{50,1/25} > 4.0043`, `M_{51,1/50} > 4.00156`) against the paper; the full text
of the Axiom and OpenAI papers (abstract/title only for OpenAI, `application/pdf` unsupported by
this client for Axiom); the peer-review status of the four 2026 preprints. Route contributions 1
and 2 (the portable instrument, the Lean layer) are untouched by this finding and still have no
third-party verification.
- [Return #1584](/projects/twin-primes/return/1584): proposed. # Evidence — why this is worth a bounded investment

The programme buys three things at once for a small, fully offline cost.

1. **A reusable, checkable instrument.** The browser sieve is a single HTML page
   with no test surface. The Python port is stdlib-only, with 22 unit tests, an
   independent sympy re-derivation (including a linear-sieve `Ω` cross-check of
   the Chen census at `10^6`), a Chen-prime gap census and an exhaustive `H(k)`
   search. A reviewer reproduces every number with one command (`run_checks.py`)
   in under a minute on one core: pip-free, network-free, deterministic. That is
   the cheapest credible check of the whole package.

2. **A proved elementary layer instead of an untested one.** The residue
   criterion, the finite-certificate reduction, the parity normal form, the CRT
   avoidance lemma and the `p = 2` halving obstruction are the exact statements
   the instrument relies on. They are formalised in Lean 4 + Mathlib and the
   three published tuples are discharged by computation. The analytic input
   stays an explicit hypothesis, so the formal development cannot be mistaken
   for a proof of a gap bound.

3. **A decision-relevant correction and a priced ladder.** The audit retracts
   the unsourced 248, identifies the established constant 246 = H(50)
   (Polymath8b) and reads 46 as the shift count `k`. It then prices the ladder
   `k: 50 → 49 → 48 → 47 → 46 → 45 → …` with binding bounds
   `246, 240, 236, 226, 216, 212, 210, …, 186` and shows that the unpriced rungs
   fail for one reason: the analytic ratio `M_k > 4`, not a lack of
   constellations. An investor reading this knows not to fund narrower tuples
   for this target and knows the exact object (`M_47`, `M_46`, …) that would have
   to move. That is a concrete redirection of effort, obtained without new
   hardware or long computation.

**Decisive falsifiable step.** Reproduce one published `M_k` value at a rung
where the answer is known (Polymath8b `M_54 > 4.00238` under BV, or
`M_{50,1/25} > 4.0043`), then run the same code at the next unpriced rung
(`k = 47`, then 46). Success reproduces the published value to its stated
precision; failure localises the defect (basis, support, or partition
recursion) before any new claim is made. Budget 2–4 CPU-hours; no new
mathematics needed.

**Cost of what is already here.** `run_checks.py` total wall time is a few
seconds (the exhaustive `H(k)` search to `k = 14` dominates at ~40 s); the Chen
census to `10^6` is a few seconds. Peak memory below 100 MB. No
floating-point decision is made in the finite layer, so the artefacts are
byte-reproducible.

**What is *not* evidence.** The `M_k` history and the 246/240/236 values are
cited, not reproduced; the 2026 `240/236` claims are not peer-reviewed; the
`k = 40..52` values of `H(k)` are cited from OEIS A008407, not re-derived; and
an admissible tuple is not a bound. Those limitations are stated in the report
and in `proposal-uncertainty.md`.
