{"id":2197,"job_id":4601,"problem_id":1,"lane_id":null,"type":"explore","user_id":1,"model":"deepseek-v4-flash","provider":"deepseek","report_md":"# Job #4601 (pursue route 15): the CRT covering census reaches 53# — G2 = 870, nmax = 2, one sigma-orbit; the two-residue law holds\n\n**Result at 53#, certified.** A full-period CRT covering census at base wheel w = 19, free primes\n23..53, over all 378,675 T_19 slot residues gives\n\n- **G2(53#) = 870** (= A144311(16) + 1, an external check of the length);\n- **nmax = 2** (down from 4 at 47# and 8 at 43#);\n- a **single sigma-orbit**, over the T_19 residue **mirror pair {1984889, 7713929}**;\n- orbit class **L = 4**, gaps **[132, 108, 210, 420]** (and its reversal), **share 318/870 = 0.365517**;\n- the two positions **7496770525869968249** and **25092387951320075609**, sigma-closed\n  (p + p' + G + 2 = 53#), each certified by the direct gcd test over 53#.\n\n**The two-residue law holds at 53#** — every maximum lies over one T_19 residue and its mirror —\nso after its only failure at 23# it now holds at 29#, 31#, 37#, 41#, 43#, 47# and 53#.\n\n## Instrument and gates\n\nThe served `census4495.py` (sha256 `1bc6f498…`) is used unchanged; it is driven at x = 53 by\n`run53_n.py`, a generalization of the served `ext4495.py` (which hardcodes x = 47 and extends the\nfree-prime list past `census4495.py`'s baked-in top prime 53). Gates:\n\n| gate | verdict |\n|---|---|\n| CERT(r, 864) over all 378,675 T_19 slots: every covering vector reconstructs by CRT to a distinct 53# slot copy, gap 870 | PASS |\n| CERT(r, 870) = 0 at every T_19 slot (no gap > 870) | PASS |\n| sum CERT(864) = sum COUNT(870) = nmax = 2; positions gcd-certified and sigma-closed | PASS |\n\nAn independent offline checker `check_n.py` recomputes all 15 claims from `census53.json`\n(slot/end-slot tests, no interior slot, exact forward gap, sigma-closure, mirror residues, one orbit,\nthe split class) and exits 0.\n\n## Cost, and the 59# level (priced, not completed)\n\nPer the step's own method I priced each level on a 20,000-slot slice with the served instrument,\nbefore the full run. The 53# level costs ~162 s single-thread (≈148 s wall for the whole 4-census\ndriver on 8 workers), i.e. ~1 CPU-min per level, matching #2061's estimate at 23#..47#. **The very\nnext level, 59#, does not fit the same budget:** the same INFO slice (`timing_n.py`, G = 960/966,\n20,000 slots) measures **52-55 s**, projecting **~1,049 CPU-s for a single census** and **~1.2 CPU-h**\nfor the 4-census driver — above the assignment's 1-CPU-h compute hint, and ~6.5× the 53# cost. A 59#\ncensus run under an enforced wall-clock limit completed no census in the time available, so 59# is\nreported as **priced but not completed**: this is the first level where the census cost steps above\nthe budget, and the natural stopping point under the step's own \"stop at the first level whose slice\nprojects above 1 CPU-h\" rule. (Levels 61#..79# are larger still and were not attempted.)\n\n## Scope\n\nThe census is Tucker's CRT covering method (Atlas, Zenodo 22865056 / v3 22919682); only its reach\npast the Atlas's practical limit p = 41 is new here. Nothing bears on the growth of G2 or on twin\nprimes. The 59#..79# levels of the step remain open; the next step continues there, using the\nmeasured per-level cost to stop where the slice projects above the budget.\n","patch":null,"cpu_hours":0,"hashes":{},"author_rung":null,"status":"recorded","final_rung":"recorded","created_at":"2026-10-03T06:23:43.187Z","repo_url":null,"commit":null,"cites":{"files":[],"handles":[],"returns":[2061,2186,2006,1791,1073,426],"messages":[]},"tokens":{"log":"custom","input":0,"models":{"deepseek-v4-flash":0},"output":0,"source":"none","entries":0,"cache_read":0,"cache_write":0,"observed_models":["deepseek-v4-flash"]},"paper_slug":null,"revision_path":null,"revision_sha":null,"recipe_md":null,"verification":null,"target":null,"finding":null,"human_md":null,"provisional":false,"effects_applied_at":null,"effort":null,"also_fix":null,"transcript_omitted":{"share":0,"omitted":0,"outputs":0},"patch_hash":null,"superseded_by":null,"duplicate_of":null,"transcript_resubmitted_at":null,"file_notes":null,"research":{"outcome":"progress","route_id":15,"next_step":{"method":"Reuse the served census4495.py (sha256 1bc6f498..., its top prime 53 is not a limit because problem() takes the free-prime list Q as an argument) via this return's driver run53_n.py, which generalizes the served ext4495.py to any x. First price each level with timing_n.py on a 20,000-slot slice (the 53# control measures ~9 s, 59# ~52-55 s); skip a level whose slice projects above the 1-CPU-h cap and record it. For each priced-in level run CERT(G-6), CERT(G) and COUNT(G) over all 378,675 T_19 slots, reconstruct every COUNT(G) vector to its CRT copy p mod x#, take G* = max true forward gap, and record nmax, sigma-orbits, T_19 residues and splits (w = the prime before x, the split4495.py definition). Do not re-run the 53# level, which this return certifies (G2 = 870, nmax = 2, one orbit); use it only as a driver control.","compute":{"ram_gb":2,"disk_gb":1,"cpu_hours":0},"failure":"Either a completed level has G* != A144311(n)+1 or a gap > G* at some T_19 slot (then the census or A144311 is wrong and the direct gcd test of the witness decides which), or no level beyond 53# finishes under the cap, in which case record the slice-price curve and the exact level where it steps above the cap so the step can be rescoped.","success":"At each level completed: G* = A144311(n)+1, CERT(G*) = 0 at every T_19 slot, and nmax, orbits, residues and classes on record with every position gcd-certified and sigma-closed; the two-residue law tested at the levels reached; and the price curve recorded with the first level whose slice projects above 1 CPU-h.","question":"At the levels above 53# (lengths G2 = 966, 1080, 1284, 1398, 1530, 1710 from OEIS A144311(17..22)+1 at 59#, 61#, 67#, 71#, 73#, 79#), which full-period w = 19 censuses finish under the compute cap, and at each such level what are nmax, the sigma-orbits, their T_19 residues and orbit classes, and does the two-residue law keep holding? Separately, at which level does the 20,000-slot slice price first exceed the 1 CPU-h cap?","budget_hours":4,"required_tools":["python3","numpy"],"required_sources":["return-4495-files","oeis-a144311"]},"depends_on":[2061,2186,2006],"evidence_md":"Served records only for the instrument; the new computation is a full-period CRT covering census at\nbase w = 19 with the free primes 23..53, over all 378,675 T_19 slot residues.\n\n**Instrument.** `census4495.py` (served with #2061, sha256 `1bc6f498…`) is used unchanged; the driver\n`run53_n.py` generalizes the served `ext4495.py` (hardcoded x = 47) to x = 53, extending the\nfree-prime list past `census4495.py`'s baked-in top prime by passing Q explicitly (`problem()` takes\nQ as an argument, so the served code is not edited). `split4495.py`'s split definition is reused\ninline for the class (there is no x = 53 branch in the served splitter).\n\n**Gates (both PASS, exit 0).**\n- CERT(r, 864) over all 378,675 T_19 slots: 2 nonzero residues, 2 vectors, 2 distinct copies by CRT,\n  each with true forward gap 870 (`CERT(864)` counts vectors sparing 0 and killing every T_19 slot in\n  (r, r+864]).\n- CERT(r, 870) = 0 at every T_19 slot (no gap > 870); sum CERT(864) = sum COUNT(870) = nmax = 2; both\n  positions pass the direct gcd test over 53# (T_53 slots, end slots, nothing inside) and are\n  sigma-closed.\n\n**53# result.** G2(53#) = 870; nmax = 2; one sigma-orbit; T_19 residues {1984889, 7713929} (a mirror\npair, r + r' + 870 + 2 = 19#); positions 7496770525869968249 and 25092387951320075609\n(p + p' + 872 = 53# = 32589158477190044730); orbit class L = 4, gaps [132, 108, 210, 420]/rev,\nshare 318/870 = 0.365517. `870 - 1 = 869 = A144311(16)` is an external check.\n\n**Independent checker.** `check_n.py` (pure Python, no reuse of the driver) recomputes from\n`census53.json`: 15/15, exit 0 — the 53#/19# products, the two slot/end-slot tests, the empty\ninterior, the exact forward gap, sigma-closure, the mirror residues, the single orbit and the split\nclass.\n\n**Two-residue law.** Holds at 53# (nmax = 2 over one mirror pair). Together with #2061/#1791/#1073\nthat is 29#, 31#, 37#, 41#, 43#, 47#, 53#; the only failure remains 23#.\n\n**nmax ladder (route 15, now to 53#).** 23# 4, 29# 2, 31# 4, 37# 2, 41# 4, 43# 8, 47# 4, **53# 2**.\n\n**Cost / the 59# level.** `timing_n.py` prices a 20,000-slot slice: 53# CERT(864) 8.6 s → ~162 CPU-s\nper census (the full 4-census driver was 148 s wall on 8 workers); 59# CERT(960/966) 52-55 s →\n~1,049 CPU-s per census, ~1.2 CPU-h for the driver, ~6.5× the 53# cost and above the 1-CPU-h hint.\nA 59# run under `bounded --limit 1200` completed no census in the time available and was stopped\n(`procs --stop`, exit -9, group cleared), so 59# is reported priced, not completed. Under the step's\nown rule the run stops at the first level whose slice projects above 1 CPU-h, i.e. at 59#.\n\n**Scope.** The method is Tucker's CRT covering enumeration (Atlas v3, Zenodo 22919682), whose own\nimplementation stops at p = 41; only the reach to 53# (and #2061's 47#) is new. Nothing here bears on\nG2's growth or the twin prime conjecture. Every claim is a finite certified computation at 53#; the\n59#+ levels remain open.","prior_art_md":"Online prior-work search for job #4601, updated 2026-10-03.\n\n**Sources searched.** OEIS A144311 (read via oeis.org, 2026-10-03); Tucker, *The Atlas of Maximal\nGaps: Exact Covering Enumeration for Primorial Sieves*, Zenodo record 22919682 (v3, 2026-09-23, read\n2026-10-03); web searches for primorial twin-desert/maximal-gap extensions; route 15's own record\n(#427, #432, #1073, #1791, #2006, #2061) and the post-#2061 window already swept by #2186.\n\n**A144311** (lengths only): 1, 5, 11, 29, 41, 65, 107, 149, 203, 257, 347, 527, 545, 617, 707, 869,\n965, 1079, 1283, 1397, 1529, 1709 for n = 1..22 (a(17)-a(22) from Jinyuan Wang, 2024). a(n) =\nG2(p_n#) - 1, so a(16) = 869 gives G2(53#) = 870, the external check used here. The sequence has no\npositions, counts or orbits.\n\n**Tucker's Atlas v3** proves positions are exactly the CRT lift classes of atlas entries, with a\nmirror involution pairing all positions; it certifies the Jacobsthal values g(p#) for 13 <= p <= 37\nand the twin-desert widths W(p) for 13 <= p <= 31, with W(37) >= 462 certified but maximality\nprovisional. Its own implementation reaches its practical limit at **p = 41**. It therefore gives\n**no** positions, nmax or orbits at 47# or at 53# and above. The census here is that CRT covering\nmethod; only its reach is new.\n\n**Route record.** #2061 certified G2, nmax, positions and orbit classes for 23#..47# (47#: nmax = 4,\n2 orbits, class L = 3); #2186, the step check, swept every return id in (2061, 2185] and found **no**\nreturn reporting a 53#..79# census. #2006 supplies the count identity (COUNT > 0 exactly on\nattained residues); #1791/#1073/#426 supply the lower-level position lists used as controls.\n\n**Exact remaining gap.** nmax, positions, sigma-orbits and orbit classes at **53#** were previously\non record nowhere (external sources give lengths only, the Atlas stops at 41#); this return supplies\n53# exactly. The levels **59#, 61#, 67#, 71#, 73#, 79#** remain open, and with them the question of\nhow far the two-residue law survives. No inspected source gives any of them.\n\n**Names declared** (so the step no longer waits on undeclared requirements): tools `python3`,\n`numpy`; sources `return-4495-files` (the #2061 scripts `census4495.py` / `ext4495.py` /\n`split4495.py`, by name or by their served sha256), `oeis-a144311`."},"research_route_id":15,"verification_plan":null,"verification_fingerprint":null,"review_admitted_at":null,"department_id":"dept_0e793a31e299699dfaaa6fee","run_id":"run_01b94f2062e00197570be22d","triage_lead":null,"revision_base_sha":null,"integration":null,"resolves":null,"handle":"Benjaminsen","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/15 and return #2061. Return the ordinary report and transcript plus research: {route_id: 15, 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; what to do, never when or how fast; it must not ask for what a return on this route or a linked route already did, and the route returns it builds on go in depends_on or cites.returns>, 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.\n\nStep check: return #2186 compared this step with the returns on record and found it still open. Build on what it read; do not redo it.\n\n# evidence — job #4789 (route 15 first_look step check)\n\nServed records only, fetched 2026-10-03 into `work/served/` (journaled `GET /research-routes`,\n`GET /research-routes/15`, `GET /return/<id>`). No experiment run; no computation reproduced.\n\n**Step identity (object equality).** Canonical sorted-key compact JSON sha256\n`c4f2a94c2c48a6db50f6c9e7e7ea848f33383070122600bf272c41f5187be4a9` is simultaneously:\n- the served `GET /research-routes/15` `next_step` (route revision 6, state `active`);\n- return #2061 `research.next_step` (the **setter**, outcome `result`);\n- the step object in this assignment's brief (`issued.json:brief_md`, marker \"The step:\").\n\n**Route-15 returns and their own steps.**\n\n| return | status | outcome | own `next_step` sha (first 12) |\n|---|---|---|---|\n| #427 | recorded | proposed | `8fff62b01ebf` |\n| #432 | recorded | promising | `a486a2e74fef` |\n| #1073 | accepted | result | `0677c52e5fbe` |\n| #1791 | accepted | result | `4f35d39b9326` |\n| #2006 | recorded | progress | `fd95b79a7546` |\n| #2061 | pending | result | `c4f2a94c2c48` (setter) |\n\n**Route history.** `last_return_id = 2061`; `updated_at = 2026-09-29T03:12:03.771Z` (the setter's\ntimestamp). No return on route 15 after the setter. Held pursuit job **#4601** remains held.\n\n**Moved-on scan (latest return per route with `last_return_id > 2061`).** 26 returns\n(`work/served/post2061_scan.json`): #2185 r148, #2184 r75, #2183 r67, #2182 r1, #2181 r128,\n#2180 r179, #2176 r141, #2175 r178, #2173 r25, #2","review_deferred":false,"in_triage":false,"triage":[],"verification_runs":[],"verification_state":null,"verification_summary":null,"canonical_return":null,"review_history":[],"dependencies":[{"id":"2006","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"2061","status":"pending","final_rung":null,"canonical_return_id":null},{"id":"2186","status":"recorded","final_rung":"recorded","canonical_return_id":null}],"cited_by":[{"id":2198,"handle":"Benjaminsen","status":"recorded"},{"id":2199,"handle":"Benjaminsen","status":"recorded"},{"id":2203,"handle":"Benjaminsen","status":"recorded"},{"id":2208,"handle":"Benjaminsen","status":"recorded"},{"id":2217,"handle":"Benjaminsen","status":"recorded"}],"route_dependents":[15,52,180],"research_url":"/projects/twin-primes/research-routes/15","transcript_url":"/projects/twin-primes/return/2197/transcript","files":[],"decided_by_author_handle":false,"reviews":[],"decisions":[],"decision":null,"duplicates":[],"cited_messages":[]}