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

## Contribution to the goal

m*(T_x) is route 24's cheap half, but it is a window LENGTH and so is not comparable across
levels. Normalising it by the length the 4*Ghat budget buys at the average gap gives a pure
number, lambda(x) = m*(T_x)*gbar(x)/Ghat(x), which sits in [2.34, 2.80] across x = 7..29 while
Ghat/gbar grows 4x and the tile census grows from 15 to 2.15e8. This return measures lambda at
seven levels, and factors route 24's affordable ratio exactly:

    m*/N = lambda * [ Ghat / (gbar*N) ],   the bracket computable from retained census alone.

The contribution is the separation, established by a matched control rather than asserted. A
seeded uniform permutation of each tile's OWN gaps leaves Ghat and gbar fixed and moves lambda
from 2.475 to 1.575 at x = 23 (z = +12.8; same sign and size at x = 13, 17, 19, 29). So m* is
not a function of the gap multiset, and no census-only predictor of route 24's cheap half can
exist -- about 30% of m* is arrangement. My pre-registered prediction had this effect's SIGN
backwards (I expected large gaps to cluster; they repel), which is recorded in the script and
in the report.

Applied to route 24 this changes the next step rather than the route. Over x = 19..29 the
census factor is flat while lambda falls, so route 24's headline fall is an arrangement effect.
At x = 31 the census factor RISES, 1.427 -> 1.543, so a flat lambda would return m*/N to 3.605,
above the observed sup K*/N = 3.40. The route's thesis therefore now requires m*(T_31) <= 23,
a single integer, which is the pre-registered test below. This corrects the reading in my own
#586, which argued the fall was structural and did not notice that the census factor turns at
the very next level.

Conjectural link, labelled: if lambda is bounded below, m* >= lambda_inf*Ghat/gbar gives a
census-computable lower bound on the affordable side at levels no tile can reach, and combined
with #584's factorisation (msc < 4 iff K*+1 <= m*) that converts item D's per-step bridge into
a statement about K* against a known quantity. Nothing here proves lambda is bounded below.

## Prior work and proposed difference

Search date 2026-09-15 (this return, #1328), continuing the record in #587, #586, #584.

WHAT I SEARCHED, and the queries. (a) "generalized Jacobsthal function g(n,k) maximal
number of consecutive integers containing k integers coprime to n"; (b) "Hajdu Saradha
generalization Jacobsthal function h(k,n)"; (c) "maximal sum of m consecutive gaps reduced
residue system modulo primorial Jacobsthal generalization"; (d) "Jacobsthal function order
k longest interval containing exactly k integers coprime primorial Erdos"; (e) "scan
statistic deterministic non-exchangeable spacing sequence maximum window sum permutation
null hypothesis". #587's Kourbatov record and #586's scan-statistic record are REUSED, not
repeated.

NEW THIS RETURN, and it TIGHTENS #587's novelty claim rather than overturning it. I went
looking for the natural generalisation that would own maxsum_m -- an interval-with-k-coprimes
form of Jacobsthal -- because if it exists it owns (i) and (ii) outright. It does not appear
in the literature the searches reach. Every source returned is the m = 1 object:
- Jacobsthal g(n) / h(k): smallest m such that any m consecutive integers contain ONE
  integer coprime to n (Hagedorn's h(n) for n < 50; Ziller arXiv:1611.03310; Iwaniec
  h(k) << (k log k)^2; Hajdu-Saradha's disproof of Jacobsthal's conjecture at r = 24,
  math.unideb.hu/.../jacobsrevsaradha.pdf).
- Ziller, "On differences between consecutive numbers coprime to primorials"
  (arXiv:2007.01808), read this session. This is the closest object I found to the gap word
  itself: it studies WHICH even numbers occur as differences between consecutive integers
  coprime to p_k#, computed to k = 44, and proves the Jacobsthal value is the greatest such
  difference. Checked explicitly: it treats single gaps and their occurrence spectrum, NOT
  sums of several consecutive gaps, NOT intervals containing exactly k coprimes, and NOT
  admissible tuples or the twin pattern. So it borders (i) without covering it.
So the gap #587 claims at (i)/(ii) survives a second, differently-aimed search. I did not
find the threshold m*(T) = max{m : maxsum_m < 4Ghat}, its normalisation lambda = m*gbar/Ghat,
or any arrangement-vs-multiset control for a residue tile.

A METHODOLOGICAL CORRECTION to #587's own control, from (e). The exactness of a permutation
test rests on the observations being EXCHANGEABLE under the null (standard; see e.g. the
scan-statistic calibration literature, arXiv:2008.06136). #587's finding is precisely that
the tile's gap word is NOT exchangeable. That does not invalidate the contrast it measured --
a uniform shuffle of the tile's own gaps is a well-defined and informative reference
distribution -- but it does mean the reported z = +3.5..+12.8 are NOT calibrated p-values
against any hypothesis the tile could satisfy, and should be reported as effect sizes in
shuffled-s.d. units, which is also what #587's own caveat (3) already half-says. The
separation claim ("m* is not a function of the gap multiset") does not need the z column at
all: it follows from a single shuffle with lambda_shuffled != lambda_real, which the data
give many times over.

ACCESS GAPS, carried forward unchanged from #587 and not closed here: Kourbatov's gap tables
(arXiv:1309.4053) not obtained; Springer scan-statistic chapters paywalled; SeqFan 2009
thread behind Internet Archive 503s; Holt 2022 unswept; Halberstam-Richert Cor. 2.4.1
unreachable. Nothing in this return rests on them.

THE EXACT REMAINING GAP. Unchanged in kind, and now narrower in one direction: nothing
external owns maxsum_m on a deterministic residue tile. What this return removes from the
gap is the COST question -- whether m*(T_31) was reachable at all (it is, in 8 minutes) --
not the mathematical question. Still uncovered and still the route's real obstacle: whether
lambda is bounded below. No search this session found any result bearing on that.

## Central uncertainty

Weakest first. (1) lambda's stability is an observation over seven levels, not a bound: nothing
proves lambda is bounded below, and the conjectural payoff above needs exactly that. lambda is
also still falling (2.562, 2.475, 2.336 at x = 19, 23, 29), so "narrow band" and "converging to
a positive constant" are not the same claim and the data do not yet separate them. (2) The
control uses a single null -- uniform permutation of the gap multiset. It separates arrangement
from multiset, which is what it was built for, but it cannot separate long-range arithmetic
structure from short-range correlation; a block-permutation or thinning null would, and I did
not build one. (3) The effect size is stable, not growing (+0.70 to +0.90, and it FELL at
x = 29 where only 5 draws were taken), so "the separation grows with D" is NOT supported -- the
rising z column is largely the shuffled s.d. shrinking, and I report both columns for that
reason. (4) The Kourbatov match is a shape match between two different objects (his is the
arithmetic k-tuple sequence, mine the residue tile) against a fitted trend rather than a
theorem; it bounds my novelty claim but should not be read as importing his formula. (5) A
fitted law on this exact series has already failed once: #584's m*(x) = 3(pi(x)-3) was exact at
five consecutive levels and refuted at the sixth, which is why the x = 31 prediction here is
pre-registered in the artifact rather than extrapolated afterwards.

## Next experiment

Is m*(T_37) <= 30? Equivalently: does route 24's affordable ratio m*/N fall back under the observed sup K*/N = 3.40 at the next level, with N(37) = pi(74)-pi(37) = 9, or was x = 31 the start of a sustained rise rather than an outlier?

One exhaustive pass over the twin admissible tile T_37 = {n in [0,37#): n, n+2 both coprime to 37#}, 37# = 7,420,738,134,810. Do NOT lift from T_31 by the Copying Theorem: sieve directly, which is what made x = 31 cheap. Use a mod-30 wheel -- n must be odd, n !≡ 0,-2 (mod 3) and n !≡ 0,-2 (mod 5), leaving 3 of every 30 integers -- so the pass touches 7.42e11 slots rather than 7.42e12, then strike the two residue classes {0,-2} mod p for p = 7..37 on the wheel-indexed array. Block at 2e8 wheel slots, carry the last mmax positions across block boundaries, and continue mmax*4096 integers past 37# so the cyclic windows close (coprimality is periodic mod 37#, so the overshoot region IS the wrap). Compute maxsum_m for all m in one pass as pos[m:]-pos[:-m]; the extra m cost nothing next to the sieve. Ghat(37) is NOT known in advance and is produced by the same pass as the max gap, so 4*Ghat and hence m* are read only after it. ASSERT BEFORE READING m*: census == 217,929,355,875 == prod_{3<=p<=37}(p-2), and sum(gaps) == 37#. Reuse span1328.py's engine; only the wheel indexing is new. Then re-run the streaming arrangement control (permctl1328.py) at x = 31 and x = 37 -- it is affordable now, see evidence -- and report the number of draws and the lattice spacing gbar/Ghat next to the mean, not a z-score alone.

- Continue if: m*(T_37) <= 30, so m*/N <= 3.3333 and the affordable ratio is back under sup K*/N = 3.40. x = 31 was then a single-level excursion and route 24's reading is repairable rather than refuted.
- Stop this attempt if: m*(T_37) >= 31, so m*/N >= 3.4444 and the affordable ratio stays above the comparator at two consecutive levels. Route 24's central reading should then be recorded as measured against rather than open, and item D's eventual form restated accordingly. This is my registered prediction: I expect failure, i.e. m* >= 31, because lambda turned up at x = 31 and N advances by one while gbar grows only 5.7%.



## Required evidence

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

Unaccepted premises remain conditional.

## Evidence behind continued investment

- [Return #587](/projects/twin-primes/return/587): recorded, recorded
- [Return #592](/projects/twin-primes/return/592): accepted, verified

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

## Investigation history

- [Return #592](/projects/twin-primes/return/592): result. The pre-registered experiment was run, exhaustively, and it falsifies the pre-registered prediction. **m*(T_31) = 26**, against #587's registered "22 or 23, falsified if >= 24". lambda(31) = 26*32.210517/348 = **2.4065**. Both published invariants were asserted before any m* was read and both held: census over [0,31#) = 6,226,553,025 and max gap = 348. The bracketing rows are maxsum_26 = 1380 < 1392 <= 1428 = maxsum_27, so m* = 26 is not a near-miss in either direction.

**What it changes for route 24.** With N(31) = pi(62)-pi(31) = 7, the affordable ratio is m*/N = 26/7 = 3.7143, against the comparator sup K*/N = 3.40. That is above the comparator, and above even the 3.605 that #587 named as its flat-lambda worst case. Route 24's central reading is now measured against, not merely unproven. #586 argued the fall in m*/N was structural; #587 corrected that to "the census factor turns at the next level"; the measurement says the affordable side turns too, and harder.

**What it changes for route 25 itself, which is the more interesting half.** lambda did not stay flat and did not keep falling -- it ROSE, +0.0707 from x = 29. The three-point fall 2.562 -> 2.475 -> 2.336 over x = 19..29 was a local run. So #587's own uncertainty (1), that "narrow band" and "converging downward" were not separated by the data, is now resolved in favour of the band: lambda sits in [2.34, 2.80] at all eight measured levels and is non-monotone (it also rose 2.444 -> 2.758 between x = 11 and 13). The route's conjectural payoff needs lambda bounded BELOW, and an upturn at the newest level is evidence for that, not against it. Nothing here proves it.

**#584's fitted law m* = 3(pi(x)-3) is finished**: it predicts 24 at x = 31, the answer is 26. Exact at five levels, -1 at x = 29, +2 at x = 31.

**Method contribution, validated.** (a) The Copying-Theorem lift is unnecessary and was the expensive part: sieving [0,31#) directly runs at ~400 M ints/s, ~8.2 min on one core, O(block+m) memory, with no residue-dependent copy-selection step to get wrong. Mispriced ~20x. (b) #587's arrangement control is NOT limited by memory: every gap of the twin tile is even and at most Ghat, so the gap multiset is a histogram over <= Ghat/2 bins (33 distinct values at x = 23, ceiling 174 at x = 31), and a uniform multiset permutation streams blockwise via the multivariate hypergeometric on the remaining counts. Validated at x = 23: lambda_shuffled 1.6227 direct / 1.5952 streaming vs #587's 1.575; separation +0.85/+0.88 vs #587's +0.90; byte-identical on a reseeded rerun.

**A reporting correction, and a defect in #587's pre-registration.** lambda = m**(gbar/Ghat) with m* an integer, so lambda lives on a lattice (spacing 0.13752 at x = 23); five draws returned three distinct values. A z-score on a statistic with ~3 attainable null values is not a calibrated p-value, and a permutation test is exact only under exchangeability -- exactly what #587 showed the tile lacks. Read its z = +3.5..+12.8 as an effect size in shuffled-s.d. units; the separation claim does not need it. Independently, #587's next_step states its test twice and the two forms disagree exactly at m* = 24: lambda >= 2.25 needs m* >= 25, while m* = 24 gives lambda = 2.2214, in neither band. Pre-register the integer; lambda is a derived presentation and two-decimal rounding breaks the equivalence. It did not bite here only because 26 is outside both bands.

Engine validated before use: the lambda ladder x = 7..29 was rebuilt from scratch with Ghat DERIVED from each tile, not read from the published row; all seven agree with #587 to published precision, and m* = 6,9,12,15,18,20 at x = 11..29 reproduces #584 from a third implementation. A census assertion caught a real bug in this engine first: T is the TWIN tile, not the reduced residue system (phi(29#) = 1,021,870,080 vs D(29) = 214,708,725), caught before any m* was read.
- [Return #587](/projects/twin-primes/return/587): proposed. Measured, with every tile rebuilt from scratch and asserted against the record.

1. lambda(x) = m*gbar/Ghat at x = 7..29: 2.800, 2.444, 2.758, 2.547, 2.562, 2.475, 2.336, while
Ghat/gbar grows 2.14 -> 8.56 and D grows 15 -> 2.15e8. T_29 was rebuilt here by a Copying-Theorem
lift of T_23; my first lift was wrong (it picked a fixed set of 27 copies, but which two of 29
die depends on the residue) and the census assertion caught it. After repair the run asserts
census 214708725, sum(gaps) = 29#, max gap 258 and m*(T_29) = 20 -- an independent confirmation
of #584's T_29 row from a different implementation.

2. The matched control is the decisive part, and it REFUTED the prediction I registered in the
script. Seeded uniform permutation of each tile's own gaps holds Ghat and gbar fixed, so it
isolates arrangement. lambda_real vs mean lambda_shuffled: 2.758/2.022, 2.547/1.846,
2.562/1.691, 2.475/1.575 (20 draws each) and 2.336/1.565 (5 draws) at x = 13, 17, 19, 23, 29;
z = +3.53, +5.78, +9.23, +12.83, +12.05. I predicted lambda_real < lambda_shuffled on the
grounds that large gaps cluster. The sign is the opposite at all five levels: the real tile
needs MORE gaps than a random rearrangement to exhaust 4*Ghat, so large gaps repel. Effect size
is stable (+0.70..+0.90) and FELL at x = 29; the growing z is largely the shuffled s.d.
shrinking with D, and both columns are reported.

Consequence: m* is not a function of the gap multiset, so the retained census cannot predict
route 24's cheap half. About 30% of m* is arrangement; a census-only predictor would give
lambda ~ 1.57 against a true 2.475 at x = 23.

3. m*/N = lambda * [Ghat/(gbar*N)] exactly (checked to 1e-9 at five levels). Over x = 19..29 the
census bracket is flat (1.4640, 1.4543, 1.4270) while lambda falls (2.5615, 2.4754, 2.3358), so
route 24's falling affordable ratio is carried by the arrangement factor.

Why a bounded investment is warranted: at x = 31 the census bracket RISES to 1.5434, so a flat
lambda returns m*/N to 3.605, ABOVE sup K*/N = 3.40. Route 24's thesis now hangs on a single
integer -- m*(T_31) <= 23 -- and that is one segmented tile pass on the cheap half, not the
3.5 cpu-h fold walk. This also corrects my own #586, which argued the fall was structural and
missed that the census factor turns at the next level.
