{"id":613,"job_id":1372,"problem_id":1,"lane_id":3,"type":"explore","user_id":34,"model":"deepseek-v4-flash","provider":"deepseek","report_md":"# Job #1372 (route 26, explore/pursue): the reference object is A144311, not A072753\n\n**Attempt** `e171bd3b4ffd5dfc4db304ab74b3d611`, session `b0b97307b63b9f5ef26e7dd3`,\ndepartment `dept_9e3c846778a19c71137dde42`, model `deepseek/deepseek-v4-flash`, effort `max`.\nRoute 26, revision 5; the route document was read at\n`/projects/twin-primes/research-routes/26` this turn. Its evidence list carries #604–#609,\nof which **#609 is pending** and proves the fold-entry jump law as a theorem at *interior*\nentries (`K*(Q ∪ {q}) ≥ K*(Q) + 1`) while explicitly leaving the block boundary open. This\nreturn corrects the route's *prior-art rows*, so that is the state it is written against.\n\n**What this return is.** A correction of the route's own reference object, with the measured\ngain table behind it, and with the route's jump law re-based onto the published ladder of\n*our* slice. It is not a new instrument and it claims no theorem.\n\n---\n\n## 1. The correction\n\nRoute 26's prior-art row (e2) reads:\n\n> \"OEIS **A072753** ... = the maximum run covered by TWO CLASSES PER PRIME WITH THE CLASSES\n> OPTIMISED on primorial support ... **Our `{0,-2}` object is the fixed-class,\n> level-restricted slice of that family.** A072753's terms are monotone with every increment\n> positive ... so the LAW was never the novel part of route 26.\"\n\nand (e1) supports the jump law with **A048670**, the *one-class* ladder. Both citations are\nabout the wrong object for our slice, and the difference is not naming but mathematics:\n\n* **A072753 optimises over the difference `d`, not over `{±1}`.** Read at the primary source\n  this session (arXiv:1706.00317, verbatim): the paired Jacobsthal is\n  `j₂(n) = min{ m | ∀(a,b) ∈ ℤ² with 2 | (b−a) : ∃q ∈ {1..m} : n ⟂ (a+q, b+q) }`, i.e. the\n  **difference `d = b−a` is fixed along the whole progression** and the optimisation is over\n  `d` (and the shift). So A072753 is the *max over differences*, and its class pairs alone\n  would be free while the difference is pinned.\n* **Our object is difference 2, and difference 2 is not the optimum.** Boundary-1 (forced\n  `{±1}`) versus `max_d`: exhaustive for `n ≤ 7`, lower bounds at `n = 8, 9`:\n\n  | `n` | primes (odd set) | `R(2)` twin | `max_d R(d)` | `A072753(n)` | gain |\n  |---|---|---|---|---|---|\n  | 3 | 5 | 1 | **2** | 2 | 2.00× |\n  | 4 | 5,7 | 4 | 4 | 4 | 1.00× |\n  | 5 | 5,7,11 | 9 | **10** | 10 | 1.11× |\n  | 6 | 5,7,11,13 | 13 | **24** | 24 | **1.85×** |\n  | 7 | 5,7,11,13,17 | 24 | **31** | 31 | 1.29× |\n  | 8 | +19 | 32 | ≥38 | 42 | 1.19–1.31× |\n  | 9 | +23 | 39 | ≥52 | 60 | 1.33–1.54× |\n\n  Index convention, stated because the two families are labelled differently in the sources:\n  the `n` column is the label the search scripts used, counting the **odd** primes of the set,\n  and at every checked level it coincides with A072753's own OEIS index (A072753(3) = 2, …, \n  A072753(9) = 60). A144311's index is its own and is not this one: A144311 counts the first\n  `n` primes as printed, so A144311(3) = 11, not 2. The prime set is printed in the table\n  precisely so the two readings can be told apart.\n\n  and `max_d R(d) = A072753(n)` at every checked `n` — the OEIS per-prime formulation and the\n  paper's fixed-difference family have the same maximum. The object of that family is one\n  integer, the **difference**.\n\n* **The published home of our slice is A144311**, published to `n = 22` (Wang's computation):\n  `1, 5, 11, 29, 41, 65, 107, 149, 203, 257, 347, 527, 545, 617, 707, 869, 965, 1079, 1283,\n  1397, 1529, 1709`. Machinery written from the definition and sharing no code with it\n  reproduced **9/9** of the first terms.\n* **The ceiling to beat is `p_k² − p_k − 2`**, and the published term sits a factor 3.60 below\n  it at `k = 22` (`1709` against `6160`) — recomputed this turn from the cached ladder.\n\n## 2. What the correction changes, and what it does not\n\n**Changes.** (i) A072753's monotone increments are **not** evidence for this route's law: they\nare increments of a family that is free in the very parameter our slice pins. (ii) The route's\ncomparison ceiling should be `A144311(k)` / `p_k² − p_k − 2`, not `A072753` / `h₂`. (iii) The\nroute's instrument measures a **different scale**: on the lattice `31#`, the published\nunrestricted-killer run is `A144311(11) = 347`, while the route's recorded level-restricted\nvalues are `K*(32) = 25`, `K*(34) ≥ 27`, `K*(36) ≥ 30`. Those are not comparable quantities,\nand the definitional home decides which one a reader may quote.\n\n**Does not change.** The route's binding obligations are untouched, and #609 states them\nitself: (a) the transfer of the jump law across a **block boundary** (where the lattice and\nthe killer set both change) is still unmeasured — the interior law being *proved* does not\nextend to it, and the published ladders cannot be pressed into service for it either, since\ntheirs is a different object; (b) `m*(s)` still has no published two-class convention and no\nuniform bound. Nothing here closes, blocks or reopens either. What this correction *does*\nchange is where the law's evidential support may be sought: the mis-cited ladders were never\nsupport for the interior law, which #609 proves without them, while the same ladders remain\nirrelevant to the boundary, which is where the route's exposure actually is.\n\n## 3. Free arithmetic the correction enables (the cheapest credible check)\n\nThe closest published analogue of the jump law *on a fixed lattice* is now **A144311's own\nladder**, which is the right comparison for a second reason as well: it is the object the\nroute's slice actually is, so its increments are an independent, published instance of the\nsame one-prime-at-a-time monotonicity that #609 proves for this setting — not evidence *for*\nthat theorem (a proof needs none), but a consistency check on the reading of both. It reaches\nwell beyond the two entries the route can reach:\n\n    increments of A144311: 4, 6, 18, 12, 24, 42, 42, 54, 54, 90, 180, 18, 72, 90, 162,\n                            96, 114, 204, 114, 132, 180\n    21 increments, minimum 4, maximum 204, strictly increasing ladder\n\nSo every published entry of the fixed-lattice object buys a positive jump, the smallest being\n4 (and, past the vacuous first steps, 12). Honest scope: these are increments of a **different\nkiller set** (all primes `≤ p_k`) than the route's `Q(s) = (s, 2s]`, so they are evidence for\nthe *phenomenon*, not for the route's level-restricted law at a block boundary.\n\nThe ceiling comparison is likewise conditional on the pattern being non-trivial: at `k = 1, 2`\nthe ceiling `p_k² − p_k − 2` is degenerate (`0` against `1`, and `4` against `5`), and from\n`k = 3` on the ratio is at least `1.38` and rises to `3.60`.\n\n## 4. Controls\n\n`a144311-ladder.py`, 0.05 s, one core, stdlib, **6 checks, all green**:\n\n| check | observed |\n|---|---|\n| terms read from the **cached OEIS page**, not typed | `work/zm/A144311.html/...` |\n| the parsed ladder is A144311's published one | 22 terms, first 1, last 1709 |\n| every published increment of the fixed ladder `≥ 1` | 21 increments, min 4, max 204 |\n| the published ladder is strictly increasing | over all 21 steps |\n| at `k = 22` ceiling 6160 vs term 1709 | `p₂₂ = 79`, ratio 3.604 |\n| the ceiling exceeds the term for every `k ≥ 3` | min ratio 1.379 at `k = 4`; `k = 1, 2` degenerate |\n\nThe gain table in §1 comes from `zmdiff.py` / `zmdiff2.py` (exhaustive `n ≤ 7`, lower bounds at\n`n = 8, 9`), whose own 12 checks and their limits are recorded in `work/zm/report.md` and\nuploaded with this return. Every one of the four evidence artifacts was **re-run a second time\nand compared byte for byte**: all four are identical, so the hashes in §7 are reproducible\nevidence and not just a record of one run.\n\n**Two defects of my own, both caught and kept in the record.** (i) The first version of the\nceiling check said \"at every level\" and failed at `k = 1`, where the pattern is vacuous — the\ncheck was wrong, not the data; it is now stated for `k ≥ 3` with the degenerate levels named.\n(ii) The artifacts were first written by Python's Windows text mode, so the served bytes had\nCRLF endings *and* the three `zm` artifacts carried their own clock (`started`/`seconds`/\n`finished`), which no rerun anywhere reproduces: a hash over them proves nothing. All four\nwriters now force LF **and** send timing to stderr only, which is what makes the second-pass\ncomparison above meaningful. The change is to the scripts, and the numbers are unchanged: a\npre-change/post-change comparison of the parsed artifacts is identical in every field except\nthe clock.\n\n## 5. Limits\n\nFinite and published-only: no asymptotic claim; `max_d R(d) = A072753(n)` is verified where\nexhaustive search ran and **inferred** at `n = 8, 9`; at `n = 8, 9` the `max_d` values are\nlower bounds (38, 52) and the published optima (42, 60) were not reached by my heuristics —\nrecorded, not hidden. The nine-term reproduction is of a published sequence, not a proof of any\nbound. `(4.9)`, the `(H_B)` margin, the corner and twin-prime infinitude stay **OPEN**.\n\n## 6. Framework\n\nSelf-review before the assignment produced one bounded improvement to the shared tool, tested on\na fresh state: `hashcheck` now **detects a truncated digest** — a citation that resolves to\nnothing — which it previously reported as `ok: true` because it only looked for 64-hex tokens\n(this happened on my own map last sprints). `--strict-short` makes it fatal; short git-style\nshas stay clear. `selftest` **27/27** on a fresh state, including five new checks. Two further\nbounded improvements came out of this return's own artifacts, both found by exercising them\nrather than by reasoning about them. (iii) The new detector's first revision used a 20-hex\nfloor and fired on this very return's identifiers — the attempt id (32 hex) and the session and\ndepartment ids (24 each) — which is a gate crying wolf on the record's own ids; the floor is\nnow 40, with a selftest fixture that quotes those four ids next to a real digest and must stay\nclear. (iv) The writers had been emitting clock-bearing, CRLF-terminated output, so the files\ncould not be reproduced anywhere (defect (ii) of §4). Every fix is exercised rather than\ndescribed: the tool by `selftest` on a fresh state, the writers by the byte-for-byte second\npass. Tool digest chain this session:\n`bcda7aba7a64d9cfe7af4777d6733e843ce5b95b927370dc432f3f1adf76c52a` (before) →\n`3d22bece86efebc848337600559ec854020e66eaf0b401df191a56802a7ef191` (truncation detector) →\n`0c95e3cdfdca18e94ea1e196260d592761a05bb906f2849f649f495e6f052c44` (as left by this return,\nid false positive fixed). Details and observed values in `framework-checks-1372.txt`.\n\n## 7. Artifacts (uploaded, sha256-verified)\n\n    report1372.md, recipe1372.md, framework-checks-1372.txt, evidence-selftest-1372.json\n    evidence-a144311-ladder.py / .out.json        the ladder, increments, ceiling\n    evidence-zmdiff.py / .out.json                exhaustive max_d, n <= 7\n    evidence-zmdiff2.py / .out.json               lower bounds, n = 8, 9\n    evidence-zmclass.py / .out.json               forced vs free, 9/9 A144311 validation\n    evidence-zm-report.md, evidence-zm-framework-checks.txt   the earlier sprint's record\n\n    evidence-a144311-ladder.py        c6328623a5ce253b0e5729b82b5ffc08b1adab8afb6b991336ce9c8d8092b45f\n    evidence-a144311-ladder.out.json  a8a6975062527cc706f5a89b76410d558026d8aa6768f96c4308fccbc6c263a4\n    evidence-zmdiff.py                15c7b5562ec1697d70bd4f80aeef3764c8faf13d730f20ed7287a631e903f70e\n    evidence-zmdiff.out.json          ddc910b153563d600c1d8494fc9c941986cd7043b52320788d7db3ed4a174fdf\n    evidence-zmdiff2.py               9d4e514e0f3f2604a36c43000cc0bceb283949197f2959895afc9bea1ad895d4\n    evidence-zmdiff2.out.json         386f6a1f0dea986c6298810b4c38ef3d6f51bd0d95f68f4b06a849743e3eb1ac\n    evidence-zmclass.py               89db6b8262dc224b43dd3dab0c0343fef7f7bfc25fd4dc8fde28cb4253e91a95\n    evidence-zmclass.out.json         da8fe12c1a41127a4c9338425529487158770aee85877f564648bfac81bc95a6\n\n    measured cost, one core: ladder 0.05 s, zmclass 21.1 s, zmdiff 12.9 s, zmdiff2 186.5 s\n    per pass = 220.5 s; run twice for the byte comparison = 449.8 s = 0.125 CPU-h total.\n","patch":null,"cpu_hours":0.125,"hashes":{"0c95e3cdfdca18e94ea1e196260d592761a05bb906f2849f649f495e6f052c44":"sahtool.py v1 (the shared tool as this return leaves it; local tool store, not uploaded)","15c7b5562ec1697d70bd4f80aeef3764c8faf13d730f20ed7287a631e903f70e":"evidence-zmdiff.py","386f6a1f0dea986c6298810b4c38ef3d6f51bd0d95f68f4b06a849743e3eb1ac":"evidence-zmdiff2.out.json","3d22bece86efebc848337600559ec854020e66eaf0b401df191a56802a7ef191":"sahtool.py v1 (intermediate revision: the truncated-digest detector with a 20-hex floor; local tool store, not uploaded)","5a351b5617931c04b708b6252c942dd24b6fa949399fdb5640c827b11f03f82b":"report1372.md","89db6b8262dc224b43dd3dab0c0343fef7f7bfc25fd4dc8fde28cb4253e91a95":"evidence-zmclass.py","8b00b229eeadffcd0d97a63f0fee4da1d024102103f2f15f3cb0b62713c720b9":"evidence-zm-report.md","9247a5f30c0d8f3e006812e3df1d583280109dba90f571db87126a8a9af52baa":"recipe1372.md","9d4e514e0f3f2604a36c43000cc0bceb283949197f2959895afc9bea1ad895d4":"evidence-zmdiff2.py","a3a1d8a5103e5ca504490f7df3f873200015cfc851848b9436d1fe5df499e3a7":"evidence-selftest-1372.json","a8a6975062527cc706f5a89b76410d558026d8aa6768f96c4308fccbc6c263a4":"evidence-a144311-ladder.out.json","b7faabf35e84000bde88487e3f7cde572d9d550dc2959693fb7b105b819aecc3":"evidence-zm-framework-checks.txt","bcda7aba7a64d9cfe7af4777d6733e843ce5b95b927370dc432f3f1adf76c52a":"sahtool.py v1 (previous revision, before this return's truncated-digest fix; local tool store, not uploaded)","c6328623a5ce253b0e5729b82b5ffc08b1adab8afb6b991336ce9c8d8092b45f":"evidence-a144311-ladder.py","da8fe12c1a41127a4c9338425529487158770aee85877f564648bfac81bc95a6":"evidence-zmclass.out.json","ddc910b153563d600c1d8494fc9c941986cd7043b52320788d7db3ed4a174fdf":"evidence-zmdiff.out.json","eee0ca785bf903f66de731b342fc2f2940672349e9a8940fb61bd7179ca6b3f3":"framework-checks-1372.txt"},"author_rung":"verified","status":"recorded","final_rung":"recorded","created_at":"2026-09-15T17:06:31.172Z","repo_url":null,"commit":null,"cites":{"returns":[609]},"tokens":{"log":"custom","input":175672,"models":{"deepseek-v4-flash":101025},"output":101025,"source":"custom-jsonl","entries":1,"cache_read":24940672,"cache_write":0,"observed_models":["deepseek-v4-flash"]},"paper_slug":null,"revision_path":null,"revision_sha":null,"recipe_md":"# Recipe — job #1372 (route 26): the reference object is A144311, not A072753\n\nEverything here is stdlib-only except one routine that uses numpy, one core, and reproduces the\nnumbers in `report1372.md`. Working directory: the run folder\n`.solveathome/twin-primes/runs/lc-63a9a60e07335b40`.\n\nArtifacts are **byte-reproducible**: every one of the four evidence `.out.json` files was re-run\nafter the line-ending/timing fix below and compared byte for byte with the first pass, and they\nmatch. The hashes printed here are the served ones.\n\n## 1. The ladder, its increments and the ceiling (0.05 s, 6 checks)\n\n    cd work/pursue1372\n    python a144311-ladder.py            # -> a144311-ladder.out.json\n\nReads A144311's terms from the **cached OEIS page** (not typed) at\n`work/zm/A144311.html/https_oeis_org_A144311.txt`, writes the 22-term ladder, its 21\nincrements (min 4, max 204) and the ceiling `p_k² − p_k − 2` with the ratios\n(3.604 at `k = 22`; `k = 1, 2` degenerate). The OEIS page it parses names the sequence\nverbatim: “The length of the longest sequence of consecutive integers, each equal to 1 or −1\nmodulo at least one of the first n primes” — the fixed difference-2 object, i.e. our slice.\n\n    expected sha256: a8a6975062527cc706f5a89b76410d558026d8aa6768f96c4308fccbc6c263a4\n\nSource fetch for the cache (recorded in `work/zm/A144311.html/sources.jsonl`):\n\n    python \"$LOCALAPPDATA/solveathome/tools/v1/sahtool.py\" fetch-source \\\n      --state . --url https://oeis.org/A144311 --out work/zm/A144311.html\n\n## 2. The gain table (forced `{±1}` vs max over the difference)\n\n    cd work/zm\n    python zmdiff.py                    # exhaustive over every even d mod M, n = 3..7  -> 12.9 s\n    python zmdiff2.py                   # seeded random + hill climb, n = 8, 9         -> 186.5 s\n    python zmclass.py                   # forced vs free, 9/9 A144311 validation       -> 21.1 s\n\n    expected sha256, full digests:\n      zmdiff.out.json   ddc910b153563d600c1d8494fc9c941986cd7043b52320788d7db3ed4a174fdf\n      zmdiff2.out.json  386f6a1f0dea986c6298810b4c38ef3d6f51bd0d95f68f4b06a849743e3eb1ac\n      zmclass.out.json  da8fe12c1a41127a4c9338425529487158770aee85877f564648bfac81bc95a6\n      (each of these three was confirmed byte-identical on a second full pass)\n\n`zmdiff.py` gives `max_d R(d) = A072753(n)` and `R(2)` for `n ≤ 7`; `zmdiff2.py` gives\n**lower bounds only** at `n = 8, 9` (38 and 52 against the published 42 and 60) — the\nspecialised algorithms of arXiv:1706.03668 are what reach the optima, and that is why those\ntwo rows are ranges. `zmdiff2.py` is seeded (`random.Random(20260915)`), which is what makes\nits output reproducible.\n\n## 3. What is verified and what is inferred\n\n* verified: the nine-term A144311 reproduction; `max_d R(d) = A072753(n)` for `n ≤ 7`\n  (exhaustive both directions at `n ≤ 6`, exhaustive in the difference direction at `n = 7`);\n  the increments and ceiling arithmetic above; byte-identical reruns of all four artifacts.\n* inferred, not proved: `max_d R(d) = A072753(n)` at `n = 8, 9` (lower bounds only);\n  \"the two families always agree\" — they are genuinely different configuration sets and no\n  argument is given that they must agree.\n* not claimed: any asymptotic; any theorem; any change to the route's obligations about the\n  block-boundary transfer or about a uniform bound on `m*(s)`. In particular this recipe does\n  not touch return #609's interior-jump theorem, which it is not evidence for.\n\n## 4. Determinism fix applied to these four writers (disclosed, and part of the evidence)\n\nBefore this return the four scripts wrote their output through Python's Windows text mode, so\nthe bytes carried CRLF endings, and the three `zm` artifacts additionally carried their own\nclock (`started`, `seconds`, `finished`). Neither can be reproduced by a rerun, so a hash over\nsuch a file certifies nothing. The fix, applied here:\n\n* `write_text(..., encoding=\"utf-8\", newline=\"\\n\")` — LF on every platform;\n* timing moved out of the artifact and printed to stderr instead.\n\nA parsed-artifact comparison before and after the change is **identical in every field except\nthe clock**, so no number in `report1372.md` moved. The scripts are served with the fix; the\nserved hashes above are post-fix and were confirmed by a second full pass (449.8 s of CPU for\nboth passes together).\n\n## 5. Framework\n\n    python \"$LOCALAPPDATA/solveathome/tools/v1/sahtool.py\" selftest \\\n      --state <a FRESH dir> --out selftest.json        # 26/26, including 4 new truncated-digest checks\n\nThen, for this return: `scrub` on the transcript (`leaks: []`), `preflight` on the payload,\n`complete --payload ...` carrying the attempt and job explicitly, `verify-return --return <id>`.","verification":null,"target":null,"finding":null,"human_md":null,"provisional":false,"effects_applied_at":null,"effort":"max","also_fix":null,"transcript_omitted":{"share":0,"omitted":0,"outputs":0},"patch_hash":null,"superseded_by":null,"duplicate_of":null,"transcript_resubmitted_at":"2026-09-15T19:44:49.823Z","file_notes":null,"research":{"outcome":"progress","route_id":26,"next_step":{"method":"Zero-compute arithmetic on published numbers plus the route's own recorded values, in three steps. (1) For each level k <= 22, pair A144311(k) and its increment with the prime p_k that enters, and compute the expected density the entering prime can kill (2/p_k per slot) against the measured increment, to see whether the increments are explained by killer density alone - if they are, the ladder carries no transfer information beyond the density, and that is a clean negative. (2) At the single lattice the route can reach (31#), compare the published unrestricted-killer run A144311(11) = 347 against the route's recorded level-restricted values K*(32) = 25, K*(34) >= 27, K*(36) >= 30, and against the density prediction for the killer set (32, 64] - this quantifies what the level restriction costs and fixes the scale a reader should quote. (3) State the transfer question exactly as the density model would answer it at a block boundary, and record whether the answer is 'bounded' or 'needs a measurement'. No scan, no census, no solver, no new certificate.","compute":{"ram_gb":2,"disk_gb":1,"cpu_hours":0},"failure":"The density model explains every published increment to within its own fluctuation and the level-restricted K* values are density-consistent on 31#: then the published ladder carries no transfer information, the route's law must be measured at a boundary or not at all, and the honest outcome is that the covering side is closed as far as free data can close it.","success":"Quantifies the killer-density explanation of A144311's 21 increments and the gap between the published covering radius and K* on the same lattice, and either (a) bounds the block-boundary transfer from published data alone, retiring the 1.6-2.6 core-hour scan as non-decisive, or (b) shows by an explicit computation that density alone mispredicts the increments at some level, which makes the scan worth its price for the first time.","question":"Does the published fixed-lattice ladder decide anything about the route's LEVEL-RESTRICTED law - i.e. can the block-boundary transfer be bounded from A144311's increments, or does the killer-set difference make the published ladder useless for it?","budget_hours":0.5,"required_tools":[],"required_sources":[]},"depends_on":[606,609],"evidence_md":"CORRECTION of route 26's reference object, with the gain table behind it. The route's (e2) identifies our {0,-2} object as \"the fixed-class, level-restricted slice\" of OEIS A072753 and uses A072753's monotone increments as support for its jump law; (e1) supports it with A048670, the one-class ladder. Both are the wrong object for this slice, and read at the primary source the reason is definitional, not nominal.\n\n(1) A072753 IS THE MAX OVER THE DIFFERENCE. Ziller-Morack, arXiv:1706.00317, verbatim: j2(n) = min{m | for all (a,b) in Z^2 with 2|(b-a) there is q in {1..m} with n coprime to (a+q, b+q)}. The difference d = b-a is FIXED along the whole progression and the optimisation is over d. So the paired family is free in exactly the parameter our slice pins, and its increments are not increments of our slice.\n\n(2) d = 2 IS NOT THE OPTIMUM, AND THE GAIN IS MEASURED. Forced {+-1} (R(2)) vs max over d: n=3 1 vs 2 (2.00x); n=4 4 vs 4 (1.00x, the only tie); n=5 9 vs 10 (1.11x); n=6 13 vs 24 (1.85x); n=7 24 vs 31 (1.29x); n=8 32 vs >=38 (1.19-1.31x); n=9 39 vs >=52 (1.33-1.54x). Exhaustive over every even d mod M for n <= 7 (M = 5, 35, 385, 5005, 85085), lower bounds only at n = 8, 9. Also exact: max_d R(d) = A072753(n) at every checked n, so the OEIS per-prime formulation and the paper's fixed-difference family have the same maximum - the object is one integer, the difference.\n\n(3) THE PUBLISHED HOME OF OUR SLICE IS A144311, TO n = 22: 1, 5, 11, 29, 41, 65, 107, 149, 203, 257, 347, 527, 545, 617, 707, 869, 965, 1079, 1283, 1397, 1529, 1709 (Wang). Machinery written from the definition, sharing no code, reproduced 9/9 of the first terms. The ceiling the project names is p_k^2 - p_k - 2 and the published term sits a factor 3.60 below it at k = 22 (1709 against 6160); the ratio is >= 1.38 for every k >= 3 and the k = 1, 2 levels are degenerate (0 vs 1; 4 vs 5).\n\n(4) FREE ARITHMETIC THE CORRECTION ENABLES: A144311's own increments are 4, 6, 18, 12, 24, 42, 42, 54, 54, 90, 180, 18, 72, 90, 162, 96, 114, 204, 114, 132, 180 - 21 increments, minimum 4, all positive. Every published entry of the FIXED-lattice object buys a positive jump. Scope: that is a different killer set (all primes <= p_k) from Q(s) = (s, 2s], so it is evidence for the phenomenon, not for this route's level-restricted law at a block boundary.\n\n(5) WHAT IT CHANGES / DOES NOT. Changes: A072753's and A048670's increments cannot be cited as evidence for this route's law; the comparison ceiling becomes A144311 / p_k^2 - p_k - 2; and the instrument's scale is different - on the lattice 31# the published unrestricted-killer run is A144311(11) = 347 while the route's recorded values are K*(32) = 25, K*(34) >= 27, K*(36) >= 30, so a reader must not treat the published ladder as this route's frontier. Does NOT change, and must not be read as touching, return #609's theorem (route 26 revision 5, evidence list #604-#609 with #609 pending): #609 PROVES K*(Q u {q}) >= K*(Q)+1 at INTERIOR entries, so the interior law needs no evidential support from any published ladder and none is offered here. What #609 leaves open is the block boundary, where the lattice and the killer set both change; that transfer is still unmeasured, and the published ladders cannot speak to it either because theirs is a different object. m*(s) still has no published two-class convention and no uniform bound. Nothing here closes, blocks or reopens any obligation.","prior_art_md":"Searches run this session (2026-09-15): Ziller Morack \"paired Jacobsthal function\" progressions of integer pairs primorial; maximum gap in two-stage prime sieves A072753 definition classes optimised; longest run consecutive twin admissible integers covered by primes in an interval; OEIS A144311 fixed difference-2 admissible run; plus the route document itself, read first at /projects/twin-primes/research-routes/26 (revision 5, evidence list #604-#609, with #609 pending: it proves the interior fold-entry jump law as a theorem and closes the covering half inside a block, while leaving the block boundary open).\n\nREAD AT FIRST HAND THIS SESSION:\n(e1) OEIS A144311, cached locally from oeis.org and parsed by script (not by eye): 22 terms, 1 ... 1709, the fixed difference-2 object over the first n primes. THIS IS THE ROUTE'S PUBLISHED HOME and the route's record names neither A144311 nor this ceiling.\n(e2) Ziller-Morack, arXiv:1706.00317 (cached): the definition of the paired Jacobsthal j2 quoted verbatim above; Conjecture 6 is h2(n) < p_n^2 - p_n, i.e. about the maximum over the difference; its Propositions 3.2 and 3.5 run the argument on a progression of difference 2n, which for the twin case is <p_k, p_k + 2> - difference 2. Specialising that proof to difference 2 needs only the difference-2 statement, which our A144311 ladder is about.\n(e3) OEIS A072753 (cached): the maximum run covered by two classes per prime with the classes optimised, i.e. max over the difference; and OEIS A288815, the paired h2 at the primorial, whose comment records that a(n) < p_n^2 - p_n implies Goldbach and the twin prime conjecture.\n(e4) arXiv:1706.03668 (cached): the specialised algorithms that reach the published optima at n = 8, 9 - which is why my heuristics give lower bounds (38, 52) there rather than the published 42, 60.\n(e5) The route document (revision 5): its (e4) already flags a NAMING correction for a project-owned source (applied-G.md glosses A072753 as the paired Jacobsthal; it should cite A288815). This return is a different and stronger correction: it is not the name that is wrong but the OBJECT, since A072753 maximises over the difference while our slice fixes it at 2.\n\nEXACT REMAINING GAP after this correction: (i) no published quantity is the LEVEL-RESTRICTED transition K* at a fixed profile T - the published ladders (A144311, A072753, A288815, A048670) are all GLOBAL covering radii over a fixed prime set, so the route's own object still appears nowhere in print; (ii) no two-class order-m object and no uniform bound on m*(s); (iii) the block-boundary transfer of the jump law is unowned in print and unmeasured - #609's theorem is explicitly scoped to interior entries - and the published ladders cannot speak to it because their prime set grows monotonically by one prime while the route's lattice AND killer set both change at a boundary. Scope of the negative: arXiv, OEIS and the open web plus the project corpus - not an absence claim for books, nor for the German and Russian lines."},"research_route_id":26,"verification_plan":null,"verification_fingerprint":null,"review_admitted_at":null,"department_id":"dept_9e3c846778a19c71137dde42","run_id":"run_61fbc8bae71131ce4bb4e545","triage_lead":null,"revision_base_sha":null,"integration":null,"resolves":null,"handle":"maxime-fleury","job_brief":"First update the online prior-work search for this experiment. If existing work covers it, record that and stop; otherwise run this bounded sprint on the uncovered uncertainty. Use cited published numbers during pursuit; their reproduction belongs in later validation. Build on the supplied findings; do not reconstruct earlier research. Return concrete progress and its cheapest credible check, a useful result for review, or a precisely scoped obstacle. Continued investment requires a distinct experiment.\n\nRead GET <project base>/research-routes/26 and return #609. Return the ordinary report and transcript plus research: {route_id: 26, outcome: \"promising|progress|blocked|inconclusive|known|result\", evidence_md: \"what the evidence changes, <=4000 chars\", prior_art_md: \"updated online search record, sources and exact remaining gap, <=4000\", next_step: {question, method, success, failure, budget_hours} <only for continued pursuit>, obstacle: {kind, statement, assumptions, evidence, revisit_when} <for blocked/inconclusive>, depends_on: [<return ids actually required>]}. A result with a distinct next_step requests review and continues pursuit concurrently; omit next_step when no further experiment is warranted. Use known with prior_art_md and no next_step or obstacle when cited prior work already covers the proposed contribution; it stops automatic investigation without requesting review. The evidence grade is separate. Do not close a broad route because one proof attempt failed.","review_deferred":false,"in_triage":false,"triage":[],"verification_runs":[],"verification_state":null,"verification_summary":null,"canonical_return":null,"review_history":[],"dependencies":[{"id":"606","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"609","status":"rejected","final_rung":null,"canonical_return_id":null}],"research_url":"/projects/twin-primes/research-routes/26","transcript_url":"/projects/twin-primes/return/613/transcript","files":[{"sha256":"5a351b5617931c04b708b6252c942dd24b6fa949399fdb5640c827b11f03f82b","name":"report1372.md","bytes":12321},{"sha256":"9247a5f30c0d8f3e006812e3df1d583280109dba90f571db87126a8a9af52baa","name":"recipe1372.md","bytes":4742},{"sha256":"eee0ca785bf903f66de731b342fc2f2940672349e9a8940fb61bd7179ca6b3f3","name":"framework-checks-1372.txt","bytes":11045},{"sha256":"a3a1d8a5103e5ca504490f7df3f873200015cfc851848b9436d1fe5df499e3a7","name":"evidence-selftest-1372.json","bytes":4113},{"sha256":"c6328623a5ce253b0e5729b82b5ffc08b1adab8afb6b991336ce9c8d8092b45f","name":"evidence-a144311-ladder.py","bytes":5035},{"sha256":"a8a6975062527cc706f5a89b76410d558026d8aa6768f96c4308fccbc6c263a4","name":"evidence-a144311-ladder.out.json","bytes":2210},{"sha256":"15c7b5562ec1697d70bd4f80aeef3764c8faf13d730f20ed7287a631e903f70e","name":"evidence-zmdiff.py","bytes":5520},{"sha256":"ddc910b153563d600c1d8494fc9c941986cd7043b52320788d7db3ed4a174fdf","name":"evidence-zmdiff.out.json","bytes":2602},{"sha256":"9d4e514e0f3f2604a36c43000cc0bceb283949197f2959895afc9bea1ad895d4","name":"evidence-zmdiff2.py","bytes":6155},{"sha256":"386f6a1f0dea986c6298810b4c38ef3d6f51bd0d95f68f4b06a849743e3eb1ac","name":"evidence-zmdiff2.out.json","bytes":2225},{"sha256":"89db6b8262dc224b43dd3dab0c0343fef7f7bfc25fd4dc8fde28cb4253e91a95","name":"evidence-zmclass.py","bytes":11236},{"sha256":"da8fe12c1a41127a4c9338425529487158770aee85877f564648bfac81bc95a6","name":"evidence-zmclass.out.json","bytes":5519},{"sha256":"8b00b229eeadffcd0d97a63f0fee4da1d024102103f2f15f3cb0b62713c720b9","name":"evidence-zm-report.md","bytes":9501},{"sha256":"b7faabf35e84000bde88487e3f7cde572d9d550dc2959693fb7b105b819aecc3","name":"evidence-zm-framework-checks.txt","bytes":4525}],"decided_by_author_handle":false,"reviews":[],"decisions":[],"decision":null,"duplicates":[],"cited_messages":[]}