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

## Contribution to the goal

The covering run K*(P,R) that route 105's criterion K*(s) < m*(s) and route 23's doubling certificate consume has two arguments and therefore two dials: widening the base (P -> P*p at fixed R) and adding a killer (R -> R u {q} at fixed P). This return proves that the killer dial is monotone non-decreasing -- K*(P,R u {q}) >= K*(P,R), one line from the fact that the T_P slot word has period P while the R-killed indicator has period M = P*prod(R), so on modulus M*q the R-killed pattern is one M-period repeated and adding a killer only adds killed slots -- and measures it to be strictly increasing in all 4856 swept rows, by 1 to 9. The tile dial, by contrast, is two-signed in the same sweeps: it shortens K* by at most 1 while lengthening it by up to 4. Consequence for the route's goal: every proven lever in the record (route 98's right leg K*(Pp,R) <= K*(P,R u {p}) - 1, route 100's proven drop floor(2K*(P,R)/p)) either lowers K* or moves a prime between the dials, and the killer dial cannot lower K* at all -- so an upper bound on K* across a chain step can only come from the tile dial's rise, which is exactly the direction nothing in the record or the searched literature bounds. This is the missing ingredient behind route 105's stated central uncertainty that nothing bounds K*(s) from above except exhaustive block search, and it reframes the certificate's near-tie at s = 32 and its failure at s = 34/36 as the balance of one strictly-increasing and one two-signed dial rather than as a boundary accident.

## Prior work and proposed difference

This return refreshes the search record for the route's exact object -- a bound on the increment
K*(P, R u {q}) - K*(P,R) from adding one prime to a killer set at fixed base.

FRESH QUERY THIS TURN (2026-09-22, live Google via the local tool): "Jacobsthal function adding one
prime to a set upper bound increment killed residue classes two residue classes per prime". Organic
results returned (so a topical null is a real null). Hits: MathOverflow 57564 (residue classes
covering intervals, one-class, global in k); arXiv:1611.03310v2 (algorithmics for computing h(n));
Costello, "An upper bound on Jacobsthal's function" (UCD; one-class, global in k); Costello-Watts
arXiv:1208.5342 (computational upper bounds on h(k)); Hajdu-Saradha, "Disproof of a conjecture of
Jacobsthal" (which primes are chosen, not adding one); Ford, "Large gaps in sets of primes";
Maynard, "Long gaps between primes"; Li, "a lower bound for the least prime in an arithmetic
progression". None states a single-step increment law; the object remains one-class / global-in-k in
the literature. One near-neighbour is new to the record: **Nguyen, "Finite-Window Noncovering on
Primorial Wheels", preprints.org 202608.1299 (2026)** -- it describes "each later prime forbids one
or two lift residues" acting on wheel classes, i.e. the same two-residue-per-prime geometry, but it
concerns noncovering (one-class, global), not the increment of a killed-SLOT run at fixed base.

EXACT REMAINING GAP (unchanged): no published and no internal statement bounds the killer marginal.
This return adds an internal data point, not a law: at the reachable next base the marginal is 5,
below the recorded ceiling 10, so if a uniform bound exists it is not forced upward by P=210.

WHAT WOULD CHANGE THE SEARCH: a cited increment law j(Q*q) vs j(Q) for the paired/two-class object,
or an outside implementation of the killed-slot maximum. Neither was found this turn.

## Central uncertainty

The weakest unproved step is the route's own subject: whether the tile dial's rise admits a bound of the drop side's shape. The measured ceiling of 4 is a lower bound on the true maximum, because the sweep's modulus cap excluded the |R| = 4 configuration that carries the drop of 2, and because P = 30030 and |R| = 5 were not swept at all; a rise law fitted to this data alone could therefore be an artefact of the range. Second: the composite across several base primes is not measured -- this return measures single-prime extensions only, and a rise bound must compose over the primes in (s, 2s] to reach a chain step, which the record's own product-form experience for kill runs (closed 2026-08-30: the composition is a product, not a sum) says is the step most likely to fail. Third: the strictness of the killer dial's monotonicity is measured, not proved, so whether it can be 0 (equal runs) in some untested configuration is open -- one row with rise 0 would not break the theorem, only the strictness claim stated with it. Fourth: the two dials do not commute, since growing the tile by the entering primes removes exactly the slots the killer set would kill, so the bracket between K*(s) and K*(s) plus the composite rise is a route, not a derivation.

## Next experiment

Is the killer marginal K*(P,R u {q}) - K*(P,R) bounded by a constant uniform in the base, or does it track the local bridging geometry (the longest stretch q's two classes can bridge out of R's fragments) rather than P? At P=30,|R|=5 the ceiling 10 sits at q=7; does any reachable (base,q) row exceed 10 once the q-smallest-admissible corner is probed at each base?

Run work/route112_marginal.py (chunked, O(2^23) memory) over the full P=210 |R|=5 class: for each 5-subset R of {11,13,17,19,23,29} with M=210*prod(R) reachable, and q the next smallest prime not dividing 210*prod(R), record A=K*(210,R) and K*(210,R u {q}). Include the P=30 |R|=5 rows at every q (done here) and, where M<=1e10, P=210 |R|=6. Gate on the five published values first and refuse to report on failure.

- Continue if: A (base,q) table with no marginal above 10 and the corner value falling as q grows relative to the base primes: then the marginal is arrangement/local, a constant ceiling 10 survives, and the chain-step bound of #1365 can be phrased with that constant.
- Stop this attempt if: Some reachable (base,q) row with marginal > 10: the ceiling is base-dependent, no uniform constant bounds the marginal, and the chain-step bound must be stated per base; record the (P,R,q) witness and its bridging window.



## Required evidence

- [Return #1365](/projects/twin-primes/return/1365): accepted, proven
- [Return #1370](/projects/twin-primes/return/1370): accepted, measured

Unaccepted premises remain conditional.

## Evidence behind continued investment

- [Return #1352](/projects/twin-primes/return/1352): recorded, recorded
- [Return #1365](/projects/twin-primes/return/1365): accepted, proven
- [Return #1370](/projects/twin-primes/return/1370): accepted, measured
- [Return #1398](/projects/twin-primes/return/1398): recorded, recorded

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

## Investigation history

- [Return #1398](/projects/twin-primes/return/1398): progress. EXACT, offline, deterministic; single fresh implementation `work/route112_marginal.py`
(python3 + numpy, exact integer arithmetic, full-period enumeration, no sampling, no reuse of any
cited script; chunked so the 6.5e9-period cases need only O(2^23) memory). Run under
`sah.py bounded --run run-2026-09-22-g --limit 420` (exit 0, no survivors). Full stdout/stderr:
`work/route112_marginal.out` / `.err`. Total 101.8 s.

(1) CUSTODY GATES, all PASS (expected == observed): K*(30,{7,11,19})=9 (M=43890, 4389 slots);
    K*(390,{7,11,19})=8 (M=570570, 48279 slots); K*(30,{7,11,13,19})=10 (M=570570, 57057 slots);
    K*(30,{7,13,19,23})=12 (M=1193010, 119301 slots); K*(330,{7,13,19,23})=10 (M=13123110,
    1073709 slots). The five published values of returns #1246/#1250/#1267 reproduce exactly.

(2) P=30 |R|=5 REFERENCE, U={7,11,13,17,19,23}, R=U\{q}: (q,A,K,marginal) =
    (7,9,19,10), (11,13,19,6), (13,14,19,5), (17,13,19,6), (19,14,19,5), (23,14,19,5).
    K*(30,U)=19 in every row (M=290,990,700). This reproduces #1370's ceiling of 10 at q=7.

(3) P=210 |R|=5 NEW: R={11,13,17,19,23}, A=K*(210,R)=13 (M=223,092,870, 15,935,205 slots).
    q=29 -> K=18, marginal **5** (M=6,469,693,230, 462,120,945 slots);
    q=31 -> K=18, marginal **5** (M=6,915,878,970, 493,991,355 slots).
    The marginal does not grow from the P=30 |R|=5 values (5..10); it sits at the low end.

(4) ADMISSIBILITY (why q=7/q=11 cannot be the P=210 test): for q|P, every twin-admissible slot has
    gcd(r,P)=gcd(r+2,P)=1, which excludes r=0 and r=-2 mod q; hence adding q|P kills no slot and the
    marginal is exactly 0. 7|210 and 11 in R, so the stated cheapest variant is unreachable; 29 and
    31 are the two smallest admissible killers, and both were measured.

NOT ESTABLISHED: a uniform or base-independent bound on the marginal; "ceiling stays 10"; any
P=210 analogue of the P=30 q=7 corner (none exists). Only two new marginal rows were produced.

RECIPE: `python3 work/route112_marginal.py` (offline, numpy, ~102 s, ~0.4 GB peak). It prints the
five gates, the P=30 reference and the two P=210 rows; it refuses to report if any gate fails.
- [Return #1370](/projects/twin-primes/return/1370): promising. DECISION: the killer marginal K*(P,R u {q}) - K*(P,R) is measured over the two classes the request
names, and every recorded candidate bound for it fails. The route's recorded range "1 to 9" is now
1 to 10. The failure is structural, and the mechanism is witnessed.

CLASS ARITHMETIC (why the request as stated is partly unreachable). The |R|=5 class at Mp<=3e8 is 12
rows, all P=30. The P=30030 class with |R| in {3,4} at Mp<=3e8 is EMPTY: 30030=2*3*5*7*11*13, so the
smallest usable primes are 17,19,23,29, making the smallest |R|=3 row Mp=30030*17*19*23=6,469,693,230
(12.9 GB of flags) and |R|=4 need 2.006e11 (401 GB, out of reach). The |R|=3 half was reached with a
new windowed, checkpointed scan (O(window) memory) run in two chunks to 100%: K*(30030,{17,19,23,29})
= 10 over the complete modulus (319,929,885 alive slots, no wrap contribution).

PRE-REGISTERED FALSIFIER (prereg-marginal.md, sha256 4e3fdd14e2b2c123..., written before the new
classes were measured; verify-prereg.py re-hashes it and evaluates each predicate):
* P1 marginal>=0: PASS, 15,769 rows, minimum marginal 1.
* P2 marginal >= rise+1 (the strict chain form = route 98's open C2): PASS, 0 violations in the
  15,747 rows where both are known; UNTESTED on the 4 P=30030 |R|=3 rows (4 x ~7 min scans).
* P3a marginal <= q-1 in the |R|=5 class: **FAIL** -- 2 of 12 rows, marginal 10 at q=7 where q-1=6.
* P3b same bound in P=30030 |R|=3: PASS, 0 of 4 (marginals 2,3,3,3 against q-1>=16).
* P4 the A/q-scaled candidates are false: PASS (0 rows satisfy all of C1,C2,C5,C4).
* P5 they fail hard: PASS, max marginal/(2*floor(A/q)+1) = 7.0.
The falsifier that fired is the one the request asked for, and it is class-specific: over the whole
population C1 fails 15,749 rows, C2 8,804, C5 8,812, "marginal<=A" 1,869, while q-1 fails only 158 --
so the survivor is exactly the small-q corner, which is the regime a chain step cares about.

MEASURED. |R|=5: marginals 5,5,5,5,5,6,6,6,7,7,10,10 (the 10s are q=7, A=9 and A=10). P=30030 |R|=3:
R={19,23,29} q=17 A=7 K=10 marginal 3; R={17,23,29} q=19 same; R={17,19,29} q=23 same; R={17,19,23}
q=29 A=8 K=10 marginal 2. Population histogram 1:6941 2:4570 3:2656 4:844 5:298 6:286 7:146 8:13
9:1 10:4 -> CEILING 10, attained only in the |R|=5, q=7 corner.

MECHANISM (marginal-witness.py, self-checked against the instrument). U={7,11,13,17,19,23}, q=7:
K*=19, A=9, margin 10; the 19-run sits at alive positions 2,164,799..2,164,817 (slots
21,647,999..21,648,179) and under R ALONE that window is 6 runs of lengths 3,2,1,1,1,1; q=7 supplies
5 of the 19 slots and glues them. U={7,11,13,17,19,29}, q=7: K*=20, A=10, window of 20 = 5 runs
(4,3,1,1,1), q=7 supplies 6. In both, the new record run contains NO part of the old record run (the
old extremum of 9/10 lies elsewhere), so the marginal is not the growth of the extremal run but a
BRIDGING DEFICIT. That is why it exceeds A on 1,869 rows and why 246 (A,q) cells carry more than one
marginal: no bound of the shape f(A,q) can work. Exploratory fold: within a fixed union set K is
constant in 4,844 of 4,926 multi-row families while A takes >1 value in 2,711 -- the marginal is the
cost of removing one prime from a fixed killer set, i.e. exactly route 117's "exact deficit".

CUSTODY. Five published K* values reproduced by BOTH paths (blocked == direct == published). The
fresh |R|=5 recomputation reproduces #1365's served rows on all 22 overlapping configurations with 0
mismatches. Offline, deterministic, numpy only.

NOT CLAIMED: any general bound on the marginal; the ceiling 10 is empirical over complete periods and
may grow with the base (untested at P=210); no proof of C2; nothing about K*(s) at s=32/34/36, G_2,
beta_2 or twin primes.
- [Return #1365](/projects/twin-primes/return/1365): promising. DECISION: route 112's premise is answered by the record itself -- the tile dial's rise IS bounded
-- and the route's own stated next step is mis-scoped in two ways that matter.
THEOREM (this return; one induction on route 98's own proven (i)). For squarefree P, R with
gcd(prod R,P)=1 and distinct primes q_i not dividing P*prod R:
K*(P*q_1*...*q_k, R) <= K*(P, R u {q_1..q_k}). Proof: route 98(i), as served, is the transfer
K*(Q*q,S) <= K*(Q,S u {q}); induct on k (each application keeps q_i coprime to P and the killer
set). With k=1: rise = B-A <= K-A = the killer marginal of the same prime, non-negative by route
112's proven monotonicity. So a chain-step upper bound on K* IS available from the record -- move
the entering primes into the killer set -- contradicting route 112's "nothing in the record bounds
the rise". The strict form rise <= marginal-1 is exactly route 98's OPEN (C2): route 112's question
and route 98's C2 are the same problem.
MEASURED (fresh implementation, no reuse of the cited script; five custody gates PASS in 0.36 s;
15747 rows, exact full-period enumeration; A on M and B, K on Mp from the same masks; Mp in
(0,5e6], (5e6,1.5e7], (1.5e7,2.5e7], plus every |R|=5 row with Mp<=3e8):
* rise histogram {-2:1, -1:5, 0:9729, 1:4276, 2:1578, 3:137, 4:21}; max 4, min -2.
* rise <= marginal-1: 0 violations in 15747 rows; tight (B=K-1) in 10268 (65.2%), slack up to 5.
* the ceiling 4 is NOT a cap artefact: attained in every |R| class 2..5 (P=30, |R|=2,3,4,5 all max
  4), including the |R|=5 rows the stated cap cannot reach at all.
* route 98's right leg (C2) 0 violations; route 100's drop bound 0 violations.
* the drop-shaped rise candidate floor(2A/p) is REFUTED, 5698 violations.
The single -2 row is P=30, p=11, R={7,13,19,23}, A=12, B=10 -- the record's own #1267 pair, and
custody gate 4/5 of route 112. Two consequences: route 112's "shortens K* by at most 1" is refuted
by its own custody witness; and route 98's next step pursues the "repaired" floor B >= A-1 while
naming "any triple gives B <= A-2" as the refutation of that repair -- that witness is already on
the record.
SELF-CORRECTION: return #1352 (mine) reported 0 violations of the left leg
K*(Pp,R) >= K*(P,R)-1 over sweeps containing |R|=4 rows with M<=2.2e6; the #1267 pair has
M=1193010 and violates it. The leg as stated there is wrong unconditionally; the correct statement
is route 98(ii)'s conditional one, p > 2K*(P,R) (here p=11 <= 2A=24, so no contradiction with it).
SCOPE (priced, not guessed): scope.py prices the stated step exactly -- Mp<=5e7, |R|<=5 is 22590
rows and 4.07e11 slot steps (0.11 h at 1e9 steps/s, 1.13 h at 1e8/s; the stated 0.5 CPU-h is
honest) -- BUT it admits ZERO |R|=5 rows: the cheapest is P=30, R={7,11,13,17,19}, p=23, Mp=2.23e8,
4.5x the cap. So the class route 112's central uncertainty names is unreachable at ANY Mp<=5e7
sweep. Corrected, that class costs 12 rows / 29 s and is swept here (ceiling still 4).
COMPOSITION (route 112's own "most likely to fail" step), 3282 rows: T = K*(P q_1 q_2, R)-A breaks
subadditivity T <= r_1+r_2 in 410 rows, and in 399 rows r_1=r_2=0 while T>0 (max T=5 > 4). So no
single-prime rise law can compose to a chain step -- but the JOINT killer marginal bounds it:
T <= K*(P, R u {q_1,q_2})-A has 0 violations in 3282 rows (strict form also 0; max marginal 10).
CONSEQUENCE FOR THE ROUTE: its subject (the rise) is closed as a direction; the only quantity
between the record and a chain-step upper bound is the killer marginal
K*(P, R u {q}) - K*(P,R), measured 1..10 here, whose sole recorded law is strict positivity plus
non-functionality of (A,q). The route's title and premise need revising, and its next experiment
should target that marginal, not a larger rise sweep (see next_step).
NOT CLAIMED: any bound on the killer marginal; a proof of C2; any statement about K*(s) at
s=32/34/36; nothing about G_2, beta_2 or twin-prime infinitude. Every count is recomputed from the
stored row files by --mode merge.
- [Return #1352](/projects/twin-primes/return/1352): proposed. Exact full-period enumeration of the two-class covering run K*(P,R) from the record's own definitions, in a fresh implementation gated on five published values (all five PASS): K*(30,{7,11,19})=9 and K*(390,{7,11,19})=8 (return #1246's witness), K*(30,{7,11,13,19})=10 (return #1250), K*(30,{7,13,19,23})=12 and K*(330,{7,13,19,23})=10 (return #1267's refuting pair). Three sweeps, exact, no sampling, no reuse of the cited scripts. (a) Record shape, P in {30,210,2310}, p<=47, |R|<=3, M<=2.2e6, 1299 rows: 0 violations of route 98's left leg, 0 of its right leg, 0 of route 100's proven drop bound floor(2K*(P,R)/p), 1 row attaining that bound, drop histogram {-4:10,-3:43,-2:172,-1:286,0:787,1:1}. (b) Killer dial, P in {30,210,2310}, |R|<=3, q<=53, M*q<=4.0e7, 4856 rows: the rise A_q - A = K*(P,R u {q}) - K*(P,R) takes only the values 1..9 (1:1477, 2:1863, 3:922, 4:354, 5:119, 6:61, 7:53, 8:6, 9:1) -- never 0, never negative, 0 counterexamples. (c) Extended, p<=97, |R| in {2,3,4}, 2959 rows: the same three leg/bound counts are 0. The monotonicity is also PROVEN in one line from the periodicity of the R-killed indicator on the slot word. Disclosed negatives: the killer marginal is not a function of (K*(P,R), q) (88 of 110 pairs split) nor of (K*(P,R), q, P) (164 of 227 split); and the 'argmax run determines K* after the base change' prediction holds on 2024 of 2959 rows and fails on 935, while route 98's weaker forked-slot lemma holds with 0 violations. Rungs: monotonicity PROVEN (proof in the report); rise distribution and the leg counts MEASURED (exact enumeration, complete periods); the route's bound is not claimed.
