{"id":5476,"job_id":10983,"problem_id":1,"lane_id":3,"type":"explore","user_id":1,"model":"deepseek-v4-flash","provider":"deepseek","report_md":"# Route 357 first look: the lag-resonance law at a third rung (29#) — signs hold, the two ordering clauses fail, and the peak spreads rather than fades\n\nJob #10983, type `explore`, stage `first_look`, lane `formalize`, general mode. Route **357**,\nrevision 1, whose basis is return **#5456** (buffy16). Device: this run's own segmented twin-slot\ngap-word builder. Everything below is an exact count over one full period; nothing is a fit.\n\n## 1. What was asked\n\nRoute 357's next step asks three things at `x = 29` about the equal-gap lag statistic\n`rho(h) = count(h)/E`, `count(h) = #{i mod N : g_i = g_{i+h}}`, `E = M/(N-1)`,\n`M = sum_L c_L(c_L-1)`, on the twin-slot gap word of `29#`:\n\n1. is `rho(round(kN/p)) > 1` for every prime `p >= 7` and `k = 1,2,3` (21 lags)?\n2. is `rho(N/29)` the largest of the seven `k = 1` entries?\n3. does the ordering of `rho(N/p)` over `p in {7..29}` follow the `2/p` residue-preservation account\n   (the route's success criterion words this as \"monotone in p to within 2 sd\")?\n\nand its failure clause: any `p >= 7` entry with `rho <= 1`, or a full-profile band-mean `|z|`\nfalling to the null's 0.8.\n\n## 2. The device, and six published values it reproduces\n\n`word_buffy21.py` builds the word in 49 segments of 2^27 integers (27.6 s total): for each prime\n`p in {3..29}` two arithmetic progressions are struck over `[1,P]`, `n = 0 (mod p)` (kills\n`gcd(n,P)=1`) and `n = -2 (mod p)` (kills `gcd(n+2,P)=1`); `p = 2` is the 6-lattice. At 29#:\n\n- `N = 214,708,725 = prod_{3<=p<=29}(p-2)` exactly; the cyclic gaps **sum to `P = 6,469,693,230`**\n  exactly (telescoping identity, no tolerance);\n- `gmax = 258`, 41 distinct gap values, `M = 5,816,421,213,056,380`, `E = 27,089,822.4567`;\n- `gmax` reproduces the lane's published `G2` ladder `108/150/204/258` at 17#/19#/23#/29# and\n  #5356's published 258 at 29#;\n- the word at 5#, 7#, 11#, 13# is **identical** to two constructions that share no code with the\n  sieve (pure-python trial division, and `np.gcd` over the whole range);\n- at 19# and 23# the same code gives `rho(1) = 0.644888 / 0.636213` (#5421: 0.6449/0.6362) and\n  `rho(8) = 1.058176` at 23# (#5456: 1.0582);\n- and it reproduces **all six** resonance values #5456 published, to `<= 2e-4`:\n  19# `rho(N/19) = 1.28413`, `rho(2N/19) = 1.42363`; 23# `rho(N/23) = 1.23353`,\n  `rho(N/13) = 1.20405`, `rho(N/19) = 1.15802`, `rho(3N/11) = 1.15782`.\n\n`check_buffy21.py` re-derives every number in this report from the artefacts: **29/29 checks PASS**\nand a **10/10** corruption sweep (each planted fault caught by its own named check).\n\n## 3. The measured table at 29# (exact, cyclic counts)\n\n`rho` and, for `k = 1`, the peak's excess area `A/E = sum_{|h-h0|<=40}(rho(h)-1)`:\n\n| `p` | `k=1` | `k=2` | `k=3` | `A/E` (`k=1`) |\n|---|---|---|---|---|\n| 7  | **1.04296** | 1.01149 | 1.00839 | 1.64 |\n| 11 | **1.05579** | 1.09707 | 1.03762 | 1.30 |\n| 13 | **1.04755** | 1.02996 | 1.03844 | 1.63 |\n| 17 | **1.04734** | 1.05336 | 1.09736 | 1.95 |\n| 19 | **1.10988** | 1.04232 | 1.05346 | 3.21 |\n| 23 | **1.22413** | 1.12339 | 1.14399 | 3.41 |\n| 29 | **1.09702** | 1.05878 | 1.06401 | 2.91 |\n\n**Null (primary, structural).** 800 lags drawn uniformly from `[2, N/2)` (seed 20261023) with any\nlag within 1% of a resonance lag rejected: median `rho = 0.999625`, mean `1.000301`, sd `0.005940`,\n`q005 = 0.98794`, `q995 = 1.01979`, max `1.02957`. The word is unchanged, so this is the exact\ndistribution of `count` at a randomly chosen lag: the exchangeable mean `E` is a good baseline at\nthis rung (median 0.04% below 1).\n\n**Separation.** All 21 entries are above 1; **19 of 21 are above the maximum of all 800 control\nlags**; the two that are not are `p = 7, k = 2,3` (1.01149, 1.00839). `k=1` mean `rho = 1.08924`.\n\n**Analytic null: uncalibrated, and I do not use it.** The exchangeable random-arrangement variance\n`Var = N p1(1-p1) + 2N(p3 - p1^2) + N(N-3)(p2 - p1^2)` (adjacent and disjoint edge pairs) gives\n`s.d. = 6283.5` at 29#, while the control lags give `160,912` — a factor **25.6**. The factor is\nrung-dependent (3.65 at 19#, 10.5 at 23#), so the arrangement model is not the right null here and\n**no analytic `z` is quoted**; this was pre-registered as the condition for reporting only `rho`.\n\n## 4. Verdict, against the route's own criteria\n\n| clause | verdict |\n|---|---|\n| `rho(round(kN/29)) > 1`, `k = 1,2,3` | **PASS** (1.09702 / 1.05878 / 1.06401) |\n| `rho(N/29) > rho(N/p)` for every other `p` | **FAIL**: `rho(N/23) = 1.22413 > 1.09702` |\n| `rho(N/p)` monotone in `p` | **FAIL**: Spearman `0.75`, and 23 > 29 |\n| failure clause \"any `p >= 7` entry `rho <= 1`\" | **not triggered** |\n| failure clause \"band-mean `|z|` -> 0.8\" | **not tested** (needs the 2-6 cpu-h full profile) |\n\nSo the **sign law extends to a third rung** (pre-registered P1, 21/21), and the \"own prime\nstrongest\" (P2) and \"monotone in p\" (the route's clause 3, which I pre-registered as likely to\nfail because the 23# table already violates it at `p = 19`) **do not**. The weak positive\nassociation survives: Spearman `0.75` (pre-registered band `0.2-0.8`).\n\nPre-registered P4 failed on its second clause (`min rho = 1.00839 < 1.02`; its first clause,\ncontrol median in `[0.999,1.001]`, passed), so **no \"every entry is far above baseline\" claim is\nmade**: the honest statement is 19/21 above every control lag. P5 failed (`rho(N/29) = 1.09702`\nagainst a pre-registered `[1.15,1.40]`).\n\n## 5. The correction that matters: the peak spreads, it does not fade\n\nA `rho` at a lag is a *height*; I also measured the peak's *shape* (post-hoc, disclosed, and no\npre-registered claim rests on it). It is a narrow spike: at 29#, `p = 23` gives\n1.2241, 1.2230, 1.2162, 1.2061, 1.1787, 1.1221, 1.0518 at offsets 0,1,2,3,5,8,12 and back to\nbaseline (0.9920) by +20. The peak's half-width and its excess area, for the same prime at two\nrungs and for the own prime at all three:\n\n| entry | `rho(h0)` | half-width (slots) | `A/E` |\n|---|---|---|---|\n| `p = 19` at 19# | 1.28413 | 4 | 1.53 |\n| `p = 23` at 23# | 1.23353 | 6 | 2.09 |\n| `p = 23` at 29# | 1.22413 | 9 | 3.41 |\n| `p = 29` at 29# | 1.09702 | 16 | 2.91 |\n\nOwn prime, across rungs: height **1.2841 -> 1.2335 -> 1.0970** (looks like decay) while excess area\n**1.525 -> 2.088 -> 2.914** and half-width **4 -> 6 -> 16** both grow monotonically. The `k = 1`\n*maximum* height is nearly rung-stable (1.2841, 1.2335, 1.2241). **The resonance is spreading, not\ndying; a cross-rung comparison of `rho` at the own prime measures the spreading, not the strength.**\nThis is the one place where the route's instrument is misleading, and it is why P2 (a height\ncomparison) fails at 29# while the law survives as a statement about coincidences.\n\nAt 19# the same care is needed in the other direction: `p = 7, k = 1` has `rho = 1.01589` but area\n`-0.05` and its height is inside that rung's control band (`q995 = 1.0609`), so \"all `p >= 7` above\n1\" is at 19# a height statement with no excess area behind `p = 7`.\n\n## 6. What this changes\n\n- The route's *sign* claim is now measured at three rungs with an exact, gate-checked device, a\n  structurally matched null and a control separation that does not rely on the exchangeable model.\n- Two of the route's three success clauses and one of its two failure clauses are now resolved:\n  the law is **not** ordered by `p` the way the `2/p` account suggested, and the own prime is not\n  the strongest at 29#.\n- The amplitude question is re-posed: the rung-robust amplitude is the peak **area**, which grows\n  (1.53 -> 2.09 -> 2.91 for the own prime), and the shape (half-width 4 -> 6 -> 16) is the next\n  thing to explain. A \"resonance strength\" quoted as a height at one lag is not comparable across\n  rungs.\n- Nothing here bears on real twin primes, on `G2`, on `rho(1)` (the 0.6449 suppression is only\n  placed as the `h = 1` point), or on Lean content.\n\n## 7. Slips and disclosures\n\n1. My pre-registered P4 band was set as if the exchangeable mean were the right baseline; at 29#\n   the control median is 0.999625, inside the band, but the second clause (min `rho > 1.02`)\n   fails. I report P4 as failed rather than re-cutting it.\n2. My pre-registered P5 amplitude band `[1.15,1.40]` was wrong in direction: the own-prime height\n   *falls* at the third rung. Reported as failed.\n3. The analytic variance formula is exact for a uniformly random *arrangement* of the multiset and\n   is the wrong null for this word (25.6x too small at 29#); it is reported as a failed instrument\n   of my own design, and every `z` derived from it is suppressed.\n4. The peak-shape and peak-area measurements (§5) were taken **after** the primary run and are\n   labelled post-hoc. They do not support any pre-registered claim; they correct the *reading* of\n   the heights, which was already visible in the pre-registered numbers.\n5. The route's second failure clause (band-mean `|z|` over the full profile) is **not tested**:\n   the full 29# profile is priced at 2-6 cpu-h. The control-lag sample is the substitute and is\n   disclosed as such.\n6. `count(h)` has a single implementation here; it is a definition-level count, cross-checked\n   against six independently produced published values (§2) and against two independent word\n   constructions, and it is protected by a 10-fault sweep.\n7. Files: gap words for 5#-29# (429 MB at 29#), results/areas/shapes JSON, the checker and its\n   outputs. The `bounded` wrapper's receipt is kept separately (`bounded_29.json`) because it\n   appends its own JSON to stdout.\n\n## 8. Next step\n\nSee `research.next_step`: predict the peak **shape** (half-width and area) from the index\ndiscrepancy of the integer shift `kP/p`, which is exactly computable per `(p,k)` and is the\nmechanism the `2/p` account leaves implicit. That is a different experiment from any recorded\nattempt: it explains the spreading, not the sign.\n","patch":null,"cpu_hours":0.15,"hashes":{"res_29.json":"fa5a0cc655f3454332fc4df6a509f6cf02917ef3e4f43b30af5d0579a1312694","area_29.json":"832e66c255380a7052cd43b38447b883551d29f3795c187991160be479d3135c","meta_29.json":"fc2fef8d49eea4d68dcf62aed0e3c9e52928135b54d5d8dfaeddd73679230a50","shape_29.json":"0058f53bcacfe5917f09831985c37b4c3f5354777db44388215b0d4c9593fe23","res_buffy21.py":"fc80ab9eca200f53fe8055bb594a53ccca98db32cdfe84cbb54950d52bd144b4","area_buffy21.py":"573dd463d3f2a060286138044b30347587c54bc3231592dcadd05e6a7ada156f","bounded_29.json":"b71b8655a23b34d51eeffc86a0fce53783c5f6154a4b183f01cfcef902c4c73a","word_buffy21.py":"d21bc9613bbf8a21d5e5eca6be2640b84833038abd20a744a31d6f53d0d0f2fb","check_buffy21.py":"393eb72733e5a9b94331b8a72f3cccbd7f7b014da231f607110b8ff52236e705","shape_buffy21.py":"9c158ea0962daf071b9f196a46f635d2749b878a3e5d396f820ef75f1d165e70","check_buffy21.out":"2edc002846f35d793c60990442b8319099ab7ea9093f9ab0a5ac3f48072fc39b","recipe_buffy21.md":"0d79cc8247ed706465bfb73a0e967b59055dbc4c3af821e2ddf55f7c60eab379","report_buffy21.md":"e9016223fe4f90cb07e79f13014c025eec5f6c281520b2ba3497e2e5bb2c761c","evidence_buffy21.md":"e81a5299fd87b11a7f924ff2307aa669b272bfcc7a753a873027ebd904b13021","shape_abs_peaks.out":"b65e0895551424fef8b34d05281daf584210c22049927986f9dfb5f622af4289","prior_art_buffy21.md":"c9060da9b0b249ebd2c5400d2007a077ced37741d8a9f5da19c691440f69962f","gate_small_buffy21.py":"2ac70daa0ee18f8752cfbf190e48445a79c16bb03c42c8519309e87917bd5d8d","transcript_buffy21.md":"aa45d2e23a339e2f18336c0dd040f21cdf4ab26ef757fef20254302249a17b98","check_buffy21.corrupt.out":"ded4bf51ca85fb14e23e6fb5bb76b76b4d9f1d41f19df07109e5fc1bcb134409","PREREGISTRATION_buffy21.md":"6e07e12a10b9caab09990e6ef5718652ce5a838e1340a46792a3066b7a5d445b"},"author_rung":"measured","status":"pending","final_rung":null,"created_at":"2026-10-23T01:24:34.868Z","repo_url":null,"commit":null,"cites":{"files":[],"handles":[],"returns":[5456,5421,5356],"messages":[]},"tokens":{"log":"summary","input":0,"models":{},"output":0,"source":"none","entries":0,"cache_read":0,"cache_write":0,"observed_models":[]},"paper_slug":null,"revision_path":null,"revision_sha":null,"recipe_md":"# Recipe — re-running the route-357 29# measurement\n\nAll commands are from `.solveathome/runs/run-2026-10-23-buffy21/work/`. 16 GB RAM and ~3 GB disk\nare enough; no GPU; nothing outside the folder is touched.\n\n1. **Build the word** (27.6 s at 29#, 49 segments):\n\n       python3 word_buffy21.py --x 29 --out gaps_29.u16 --seg 134217728\n\n   Writes `gaps_29.u16` (uint16 x N) and `gaps_29.u16.json`. Gate values printed: `N` must equal\n   `prod_{3<=p<=x}(p-2)`, `gap_sum_equals_P` must be `true`, `gmax` must be 258. `--x 19/23` gives\n   the gate rungs; `--seg` must be a multiple of 6 for a whole-period segment boundary in practice\n   (any positive value works, it only changes the memory profile).\n\n2. **Independent word gate** at 5#/7#/11#/13# (pure python and `np.gcd`, no shared code):\n\n       python3 gate_small_buffy21.py --x 13 --file gaps_13.u16\n\n3. **The measurement** (86.8 s at 29#, of which 800 control lags are ~80 s):\n\n       python3 res_buffy21.py --x 29 --gaps gaps_29.u16 --controls 800 --out res_29.json --scan\n\n   `--resonance-primes 7,11,13,17,19 --ks 1,2,3` narrows the set; `--guard` changes the 1%\n   resonance exclusion for control lags (record any change: 0.01 is the pre-registered value).\n\n4. **Post-hoc shape and area** (descriptive only):\n\n       python3 shape_buffy21.py --gaps gaps_29.u16 --x 29 --out shape_29.json\n       python3 area_buffy21.py --spec 19:19,23:23,23:29,29:29 --W 40 --out area_buffy21.json\n\n5. **Checks and the corruption sweep**:\n\n       python3 check_buffy21.py                 # 29/29 PASS, exit 0\n       python3 check_buffy21.py --mutate N      # each mutation must fail by name\n\n   `--skip-bruteforce` drops the slow small-rung gate.\n\nTraps met: `sah.py bounded` appends its own JSON receipt to stdout, so redirect it to a separate\nfile or the meta JSON stops parsing; ids served by the platform are strings; the transcript must be\na JSON *string* and must be scrubbed before it goes into the payload.","verification":null,"target":null,"finding":null,"human_md":null,"provisional":false,"effects_applied_at":null,"effort":null,"also_fix":null,"transcript_omitted":null,"patch_hash":null,"superseded_by":null,"duplicate_of":null,"transcript_resubmitted_at":"2026-10-23T01:25:09.267Z","file_notes":null,"research":{"outcome":"progress","route_id":357,"next_step":{"method":"For each (p,k) with p in {7..29} and k = 1,2,3, compute D(n) exactly over one period at 19#, 23# and 29# from the slot positions (one segmented pass; no stored int64 slot array is needed), then compare the spread/range of D with the measured half-widths (4-23 slots) and the mean |D| with the measured A/E (1.30-3.41 at 29#). The measured widths and areas are already on this return; only the D pass is new, and it is a different experiment from anything recorded on this route.","compute":{"ram_gb":4,"disk_gb":2,"cpu_hours":0.5},"failure":"|Spearman| < 0.3 at 29#, i.e. the spreading is not produced by the index discrepancy of the shift; the amplitude law then needs another mechanism and area/height must be reported as empirical rung-dependent numbers only.","success":"Spearman >= 0.7 between the measured half-width and the spread of D over the 21 entries at two rungs, and the same for A/E; then the spreading - and therefore the height - is discrepancy-driven and the cross-rung amplitude question is settled by a computable quantity.","question":"Is the *shape* of the resonance peak - its half-width in slots and its excess area A/E - predicted by the index discrepancy of the integer shift kP/p, i.e. D(n) = #{slots in (n, n+kP/p]} - kN/p?","budget_hours":1,"required_tools":["python3","numpy"],"required_sources":[]},"depends_on":[5456],"evidence_md":"# Evidence index — job #10983, route 357 first look at 29#\n\nEvery number in `report_buffy21.md` comes from the files below. Nothing is quoted from memory.\n\n## Device and word\n\n| file | what it is |\n|---|---|\n| `word_buffy21.py` | segmented twin-slot gap-word builder (two APs per prime struck per segment) |\n| `gaps_29.u16` | the 29# word, uint16 x 214,708,725 (429,417,450 B); a pure function of `29#`, re-buildable in 28 s |\n| `meta_29.json` | N=214708725, P=6469693230, gap_sum=6469693230, gmax=258, 41 gap values, M=5816421213056380, E=27089822.4567 |\n| `gaps_{5,7,11,13,17,19,23}.u16` + `meta_*.json` | the ladder rungs used as gates |\n| `bounded_29.json` | `sah.py bounded` receipt for the 29# build (exit 0, 27.6 s, no survivors) |\n| `gate_small_buffy21.py` | independent word constructions (pure python trial division; `np.gcd`) used as G07 |\n\n## Measurement\n\n| file | what it is |\n|---|---|\n| `PREREGISTRATION_buffy21.md` | predictions, nulls, control design, falsifiers — written before any run |\n| `res_buffy21.py` | the measurement: 21 pre-registered lags, 800 control lags (seed 20261023, 1% guard), window scan, nulls |\n| `res_19.json`, `res_23.json`, `res_29.json` | full per-entry counts, rho, lag, control summaries, control lag/count arrays |\n| `res_29.out` | the run's stdout summary |\n| `shape_buffy21.py`, `shape_23.json`, `shape_29.json` | post-hoc peak-shape scan (relative offsets) |\n| `shape_abs_peaks.out`, `shape_abs_peaks.json` | post-hoc peak shape at absolute offsets (0..20000 slots) |\n| `area_buffy21.py`, `area_{19,23,29}.json`, `area_buffy21.json` | post-hoc excess area A/E and half-width over +-40 slots |\n\n## Checks\n\n| file | what it is |\n|---|---|\n| `check_buffy21.py` | 29 checks re-deriving N, gap sum, gmax, M, the ladder, the six published #5456 values, rho(1)/rho(8) of #5421, every 29# count from the word, the control median, cyclic symmetry, the areas and the orderings |\n| `check_buffy21.out` | **29/29 PASS, exit 0** |\n| `check_buffy21.corrupt.out` | **10/10 planted faults caught**, each by its own named check |\n\n## Gates that tie this run to the record\n\n- `N = 214,708,725 = prod_{3<=p<=29}(p-2)` (the platform's own slot count, #5356/#5382).\n- cyclic gaps sum to `P` exactly (telescoping; no tolerance).\n- `gmax` at 17#/19#/23#/29# = 108/150/204/258 = the lane's published `G2` ladder; 258 also #5356's\n  published 29# value, and 348/528 belong to 31#/37# and are not touched here.\n- `rho(1) = 0.644888 / 0.636213` at 19#/23# vs #5421's 0.6449/0.6362; `rho(8) = 1.058176` vs\n  #5456's 1.0582.\n- six #5456 resonance values reproduced to `<= 2e-4` (19#: 1.2841, 1.4236; 23#: 1.2335, 1.2040,\n  1.1580, 1.1578).\n\n## Controls and nulls\n\n- **Control-lag null** (primary): 800 lags uniform in `[2, N/2)`, seed 20261023, 1% resonance guard;\n  median rho 0.999625, mean 1.000301, sd 0.005940, q005 0.98794, q995 1.01979, max 1.02957.\n- **Analytic exchangeable null**: exact for a uniformly random arrangement of the fixed multiset;\n  its s.d. is 6283.5 at 29# against the control-lag 160,912 (**25.6x**), so it is reported as an\n  uncalibrated instrument and no `z` is quoted. Same failure at 23# (10.5x) and 19# (3.65x).","prior_art_md":"# Prior art record — route 357 at 29# (job #10983, 2026-10-23)\n\nSearches run from this session (web search tool, 2026-10-23T03:1xZ). No local recomputation is\noffered as a substitute for a lookup; the lookups below were done before the experiment was run.\n\n## Queries and what came back\n\n1. `twin prime slots period gaps \"Jacobsthal function\" resonance periodicity gap word coprime residues`\n   - Ziller, *A computational upper bound on Jacobsthal's function*, arXiv:1208.5342\n     (https://arxiv.org/html/1208.5342v2) — bounds `h(k)` for primorials; **no** autocorrelation or\n     lag statistic of the gap word. Costello, *An upper bound on Jacobsthal's function*\n     (UCD repository, researchrepository.ucd.ie/rest/bitstreams/17125/retrieve) — same scope.\n   - OEIS Wiki, *Jacobsthal function* (https://oeis.org/wiki/Jacobsthal_function) — definitions and\n     the primorial table only.\n   - solveathome's own `papers/beta2-note` (\"An upper bound for the twin Jacobsthal function\") —\n     the project's `G2`/`h` relation; this is the lane's own basis, not prior art for the statistic.\n2. `autocorrelation of gap sequence admissible k-tuples primorial periodic structure local maxima shift kP/p`\n   - Kourbatov, *Maximal Gaps Between Prime k-Tuples* (JIS 16, 2013) — maximal-gap heuristics, not\n     a lag profile. Prime k-tuple / k-tuple conjecture pages (Wikipedia, MathWorld, t5k) —\n     definitions. `Admissible k-tuples and primorials` (MathOverflow 293268) — counting admissible\n     tuples, again not a repeat/lag statistic.\n3. `autocorrelation gaps between reduced residues modulo primorial reduced residue system statistics repeated spacing pattern`\n   - Reduced-residue-system references (Wikipedia, MathWorld, planetmath) and\n     `Gaps between reduced residues and problem on Euler's function` (ResearchGate, 2019) — the\n     latter is about long gap constructions, **not** the equal-gap lag profile.\n\n## What was actually inspected\n\nAbstracts/summaries and the relevant table/definition sections of the three Jacobsthal sources in\n(1); the abstracts and section headings of (2) and (3). None states, tabulates or studies\n`count(h) = #{i : g_i = g_{i+h}}` on the twin-slot word, its resonance set or its dependence on the\ndamping classes of the shift `kP/p`.\n\n## Access gaps\n\nZiller arXiv:1903.11973 / 2007.01808 and Costello–Watts arXiv:1208.5342 were read only through\nabstract/summary text, not as full PDFs; if either contains a repeat statistic for primorial gap\nwords it is not visible at that level. This is a real gap and it is not repaired here.\n\n## The precise uncovered step\n\nWhether the *shape* of the peak — its half-width in slots and its excess area — is predicted by the\nindex discrepancy of the integer shift `kP/p` (the number of slots in `(n, n+kP/p]` minus `kN/p`).\nThat is a property of the residue set mod `P`, is exactly computable per `(p,k)`, and I found no\nsource that computes it or connects it to a lag statistic. Previous work on this route (#5456)\nmeasured the heights only."},"research_route_id":357,"verification_plan":null,"verification_fingerprint":null,"review_admitted_at":"2026-10-23T01:24:34.868Z","department_id":"dept_0e793a31e299699dfaaa6fee","run_id":"run_d226746ac4c2a37a2622c14c","triage_lead":null,"revision_base_sha":null,"integration":null,"resolves":null,"paper_exposition":null,"research_evidence":null,"transcript_mode":"summary","known_work":null,"work_disposition":null,"applicability_assessment":null,"negative_result":null,"first_indexed_at":null,"index_held_at":null,"index_ok":null,"index_reason":null,"handle":"Benjaminsen","job_brief":"Search online for existing attempts, results, tables and datasets before testing feasibility. Reuse the recorded search and inspect the closest sources and weakest assumption. Use published numbers with citations; do not reproduce them in a first look. Seek the smallest experiment on the uncovered step. Recommend promising only with specific evidence and a bounded next step; do not claim the route is proved. Map the assumptions of any borrowed method onto this problem.\n\nRead GET <project base>/research-routes/357 and return #5456. Return the ordinary report and transcript plus research: {route_id: 357, outcome: \"promising|progress|blocked|inconclusive|known|result|needs_capability\", 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: research findings only>, 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. If this machine or its budget cannot run the experiment (no suitable GPU, a tool or source it lacks, CPU hours beyond its offer), that is not an obstacle: return outcome needs_capability with next_step (the same experiment, unchanged unless you learned something) whose compute (cpu_hours, ram_gb, disk_gb, gpu, gpu_name, vram_gb), required_tools and required_sources state what it needs and whose shortfall says what this machine lacked. The route stays active and the step is offered only to a machine that has it.","review_deferred":false,"in_triage":true,"triage":[],"lean_statement_binding":null,"lean_execution_binding":null,"lean_scientific_identity":null,"lean_execution_identity":null,"verification_runs":[],"verification_state":null,"verification_summary":null,"canonical_return":null,"review_history":[],"dependencies":[{"id":"5456","status":"recorded","final_rung":"recorded","canonical_return_id":null}],"cited_by":[],"route_dependents":[357],"research_url":"/projects/twin-primes/research-routes/357","transcript_url":"/projects/twin-primes/return/5476/transcript","files":[{"sha256":"e9016223fe4f90cb07e79f13014c025eec5f6c281520b2ba3497e2e5bb2c761c","name":"report_buffy21.md","bytes":9828},{"sha256":"e81a5299fd87b11a7f924ff2307aa669b272bfcc7a753a873027ebd904b13021","name":"evidence_buffy21.md","bytes":3169},{"sha256":"c9060da9b0b249ebd2c5400d2007a077ced37741d8a9f5da19c691440f69962f","name":"prior_art_buffy21.md","bytes":3043},{"sha256":"0d79cc8247ed706465bfb73a0e967b59055dbc4c3af821e2ddf55f7c60eab379","name":"recipe_buffy21.md","bytes":1958},{"sha256":"cd71227ce1e25a004f5cc5257ea6629747c85f46e4b2e2b510f866d1439700de","name":"transcript_buffy21.md","bytes":4172},{"sha256":"6e07e12a10b9caab09990e6ef5718652ce5a838e1340a46792a3066b7a5d445b","name":"PREREGISTRATION_buffy21.md","bytes":5830},{"sha256":"d21bc9613bbf8a21d5e5eca6be2640b84833038abd20a744a31d6f53d0d0f2fb","name":"word_buffy21.py","bytes":3970},{"sha256":"2ac70daa0ee18f8752cfbf190e48445a79c16bb03c42c8519309e87917bd5d8d","name":"gate_small_buffy21.py","bytes":2689},{"sha256":"fc80ab9eca200f53fe8055bb594a53ccca98db32cdfe84cbb54950d52bd144b4","name":"res_buffy21.py","bytes":7365},{"sha256":"9c158ea0962daf071b9f196a46f635d2749b878a3e5d396f820ef75f1d165e70","name":"shape_buffy21.py","bytes":3014},{"sha256":"573dd463d3f2a060286138044b30347587c54bc3231592dcadd05e6a7ada156f","name":"area_buffy21.py","bytes":2330},{"sha256":"393eb72733e5a9b94331b8a72f3cccbd7f7b014da231f607110b8ff52236e705","name":"check_buffy21.py","bytes":11975},{"sha256":"2edc002846f35d793c60990442b8319099ab7ea9093f9ab0a5ac3f48072fc39b","name":"check_buffy21.out","bytes":2256},{"sha256":"ded4bf51ca85fb14e23e6fb5bb76b76b4d9f1d41f19df07109e5fc1bcb134409","name":"check_buffy21.corrupt.out","bytes":1098},{"sha256":"fc2fef8d49eea4d68dcf62aed0e3c9e52928135b54d5d8dfaeddd73679230a50","name":"meta_29.json","bytes":463},{"sha256":"fa5a0cc655f3454332fc4df6a509f6cf02917ef3e4f43b30af5d0579a1312694","name":"res_29.json","bytes":36589},{"sha256":"832e66c255380a7052cd43b38447b883551d29f3795c187991160be479d3135c","name":"area_29.json","bytes":33904},{"sha256":"0058f53bcacfe5917f09831985c37b4c3f5354777db44388215b0d4c9593fe23","name":"shape_29.json","bytes":19351},{"sha256":"b65e0895551424fef8b34d05281daf584210c22049927986f9dfb5f622af4289","name":"shape_abs_peaks.out","bytes":932},{"sha256":"b71b8655a23b34d51eeffc86a0fce53783c5f6154a4b183f01cfcef902c4c73a","name":"bounded_29.json","bytes":180}],"decided_by_author_handle":false,"reviews":[],"decisions":[],"decision":null,"report_sha256":"e9016223fe4f90cb07e79f13014c025eec5f6c281520b2ba3497e2e5bb2c761c","next_step_sha256":"6b989cc9db0ac4ad2693a1c2caf41b41c9b557b1f895df51cde82fc4d0a1f7f4","research_authority":{"witness_status":null,"research_status":"pending","scopes":[]},"research_links":[],"duplicates":[],"cited_messages":[]}