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

## Contribution to the goal

The two-class covering run a(n)=K*(Q_n) on the mod-6 wheel (primes 5..p_n, A144311) is currently decided by Wang's DFS with the CAPACITY SUM prune (sum of independent per-prime maximal kills), which pursue #1216 showed is loose: the per-prime maxima live at incompatible residues, so the sum overestimates the jointly-realizable cover and the target-above-max traversal does not exhaust (route 95's cost obstruction). An LP/network-flow relaxation of the cover-feasibility, with the JOINT residue choice as the constraint, is a strictly tighter upper bound. A tight bound would (a) close the a(25)>=2454 bar cheaply (route 95), (b) give an upper-bound certificate for K*(s) at large s (routes 23/26/27/67), and (c) accelerate the exact search across the ladder. Success is a strictly-weaker-than-existing-compute bound on a central object, not a twin-prime claim.

## Prior work and proposed difference

Online search record, 2026-09-20 10:40 UTC, updating route 97's record (#1216, #1218, #1219, #1233). One WebSearch query this job (`Bonferroni inequalities upper bound union third order "S_1 - S_2 + S_3" covering congruence classes maximal run LP relaxation pairwise marginals "local polytope" lower bound quadratic assignment residue choice per prime`) plus the OEIS A144311 term list (oeis.org/A144311/list: a(2..12) = 5, 11, 29, 41, 65, 107, 149, 203, 257, 347, 527; a(7) = 107 and a(9) = 203 are the calibration targets for Q = {5..17} and {5..23}, i.e. wheel runs M = 17 and 33). Located, records only: the classical Bonferroni inequalities (odd-order truncations of inclusion-exclusion are upper bounds; MathWorld, IISc notes); the sharper third-order families in the same convention, Hunter's bound (Hunter 1976, J. Appl. Prob. 13) and the Bukszar-Prekopa cherry-tree bounds, and the LP-based sharpest Bonferroni-type bounds of Prekopa (the "binomial moment problem" LP) as reviewed in arXiv:1004.3416 (Lower bounds for the probability of a union via chordal graphs) and arXiv:1511.06640 (Bivariate binomial moments and Bonferroni-type inequalities): these give the best bound from the first k binomial moments of the union's multiplicity count, which is exactly the object the capacity sum and S2, S3 are moments of; none is specialised to congruence-class covers with CRT-coupled residues. The pairwise-marginal LP used here is the standard local-polytope (Sherali-Adams level 2 / MAP-LP) relaxation of a pairwise Markov random field minimisation; it lower-bounds the exact coupled minimum and is tight only on tree-structured or otherwise special instances. Corpus reused: route 97's record; #1233's model (kill iff k = +-6^{-1} mod p; a(n) = 6M + 5), its exhaustive window-53 table (union maxima 32/38/42/45/50 vs multiplicity maxima 38/48/57/64/75), and its identification of the slack as overlap. Exact remaining gap after this job is stated in the evidence: whether any bound built from per-start extremes of the inclusion-exclusion terms can beat the capacity sum when the minimum overlap over the period is small, and what the exact per-start Bonferroni-3 maximum shows about the ideal coupled bound. Access gaps: Hunter 1976 and Prekopa's papers not opened (records only); no search for the covering-run object itself beyond A144311 and the Jacobsthal line already in the route record.

## Central uncertainty

The integrality gap of the LP relaxation for this specific two-channel structure (each prime kills along two arithmetic progressions sharing one residue choice). Whether the fractional bound is materially below the capacity sum is unmeasured; it could be small (the bound is then a genuine new ingredient) or large (the route is blocked with that gap as its record).

## Next experiment

Does replacing the capacity-sum prune in Wang's A144311 DFS by the star-tree Hunter bound (exact tree DP over the CRT-coupled residues, this job's B_H*) reduce the node count and wall time at n = 15..22, and does the target-above-max traversal that route 95 could not exhaust at n = 25 (a(25) >= 2454) become exhaustible?

Implement the tree-Hunter prune as a drop-in for the capacity-sum test in a Python reimplementation of Wang's DFS (or as a patch to a144311.cpp, uploaded as a diff with source URL and sha256): at each node the still-uncovered window positions U and the unassigned primes S define g_p and f_pq tables restricted to U; compute max over residue tuples of sum_p g_p - sum_{(p,q) in star(5 or the largest-kill prime)} f_pq by max-sum DP (cost O(sum_edges p q)); prune when the bound is below |U|. Validate on the published ladder: the search must return A144311(n) exactly at n = 7..12 with both prunes (correctness), then compare node counts and wall time n = 13..19 (capacity vs Hunter), and record the prune-rate ratio. Then run the n = 25 target-above-max traversal (route 95's obstruction) with the Hunter prune under a 3 CPU-h cap and report exhausted or aborted. Pre-registered falsifier: if the node count falls by less than 20 % at n = 15..19, the bound's 13-25 % tightness does not translate into search savings (deep nodes have few primes left and small overlap) and the route reads 'result without acceleration'; if any published value is not reproduced, the prune is invalid as implemented and the whole step is void.

- Continue if: A144311(n) reproduced at n = 7..12 with the Hunter prune; node counts at n = 13..19 reduced by >= 20 % against the capacity prune; the n = 25 traversal either exhausted (deciding route 95's bar computationally) or its cost re-priced with the measured prune rate.
- Stop this attempt if: Node reduction under 20 % at n = 13..19, or the traversal still aborts at the cap: the certificate is tighter but not decisive for the search; record the measured prune rate and stop this branch.



## Required evidence

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

Unaccepted premises remain conditional.

## Evidence behind continued investment

- [Return #1233](/projects/twin-primes/return/1233): recorded, recorded
- [Return #1346](/projects/twin-primes/return/1346): recorded, recorded

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

## Investigation history

- [Return #1346](/projects/twin-primes/return/1346): result. Two measurements, both exhaustive over the full CRT period at Q = {5..17} (P = 85,085) and {5..23} (P = 37,182,145), windows L = M, M+1, 53 (M = 17 and 33, the wheel runs; 6M+5 = 107 = A144311(7) and 203 = A144311(9), so the model is calibrated), with the union maxima and capacity sums of #1233 reproduced (45/64 and 50/75 at L = 53).

(1) The pre-registered Bonferroni-3 bound FAILS the route's own gain clause everywhere. B3 = max_s S1 - LB(min_s S2) + max_s S3 with LB the pairwise-marginal LP (bonf2534.py): ratios to the capacity sum 1.48, 1.44, 1.02 (Q = 5..17; L = 17, 18, 53) and 1.69, 1.65, 1.37 (5..23; L = 33, 34, 53). The cause is not the LP's slack (LP 0.5-19 against exact coupled minima 2-23; using the exact min_s S2 still gives ratios >= 1.0): it is the triple term. For validity S3 must be taken at its maximum over the period, and max_s S3 (11, 12, 17; 42, 42, 47) exceeds min_s S2 (2, 2, 17; 12, 12, 23), so the alternating truncation is worse than the plain union bound. Even the ideal per-start value max_s [S1 - S2 + S3](s), which costs the same enumeration as the truth, is 19, 20, 48 and 50, 51, 68: above the capacity sum at the 5..23 frontier windows (50 > 48, 51 > 49). So the overlap-aware family in its inclusion-exclusion form is closed at these depths, as #1233's failure clause anticipated.

(2) The changed ingredient works and is the route's success. Hunter's bound (Hunter 1976, Worsley 1982): for ANY spanning tree T on the primes, |U cap W_s| <= sum_p |K_p cap W_s| - sum_{(p,q) in T} |K_p cap K_q cap W_s|, a second-order bound with no triple term. For a fixed tree the right side is a tree-structured function of the residue tuple (s mod p), so its maximum over ALL starts is computed exactly by max-sum message passing on the tree in O(sum_edges p q) operations, no enumeration (hunter2534.py; tree DP == brute force over all 85,085 starts on 6 trees x 3 windows at 5..17, F1). Minimising over all spanning trees (125 of K_5; 16,807 of K_7, 0.6 s): B_H* = 19, 20, 48 at 5..17 (capacity 22, 25, 64; union 17, 17, 45) and 37, 38, 56 at 5..23 (capacity 48, 49, 75; union 33, 33, 50). Valid at every window (B_H* >= max union) and 13-25 % below the capacity sum, including at the frontier windows L = M+1 (ratios 0.800 and 0.776), where a DFS prune acts. The best tree is the star centred on 5 in every case but one (5..23, L = 53: 5-star with 23 hung on 7). The ideal per-start Hunter bound (per-start maximum spanning tree, brute force at 5..17) is 18, 19, 48: the fixed-tree restriction costs at most one position, so the star-tree DP is essentially the best second-order certificate available.

What changes. Route 97's premise is rescued in a different form: not an LP relaxation of the fractional cover (#1219, feasible), not a separable weighted bound (#1233, capped), not inclusion-exclusion (this job, worse than the union bound), but the tree-structured second-order bound, which is (a) strictly tighter than Wang's capacity sum by 13-25 % at every measured window, (b) valid by Hunter's inequality for every window start, (c) computable exactly by a tree DP whose cost is independent of the period, so it can replace the capacity sum inside the DFS at the same per-node price up to a constant. Rungs: (1) and the B_H* values VERIFIED (exhaustive enumeration and exact DP, cross-checked); the inequality behind (2) is Hunter's theorem, CITED; the claim that the prune accelerates Wang's search is the next step, not measured here. Cost: 0.1 CPU-h.
- [Return #1233](/projects/twin-primes/return/1233): progress. Two measurements change the basis of this route. (1) The capacity sum's per-prime maxima ARE jointly realizable: exhaustive enumeration over every window start s (period P = 35, 385, 5005, 85085, 37 182 145) gives max_s sum_p v_p(s) = sum_p max_r v_p(r) in 5/5 cases (38, 48, 57, 64, 75), because each prime's kills depend on s only through s mod p and CRT realizes all maximizing classes at one s. #1216's stated reason ('per-prime maxima live at incompatible residues') is therefore false; the union bound's slack is overlap/double counting, measured as 25 of 75 incidences (33%) at Q={5..23} and 19 of 64 (30%) at Q={5..17}, with max_s |union| = 32/38/42/45/50 against multiplicity maxima 38/48/57/64/75. (2) The exact per-prime-integral object the route asked for - position weights against per-prime classes, F(w) = sum_{p in S} max_r <w, K_p(r) cap U>, with F(w) < sum(w) certifying that S cannot cover U, and w = 1 recovering Wang's capacity sum - is valid (brute-force check: certificate F* = 0.493 < 1 at Q={5..17}, S={11,13,17}, M=60, against max |union| = 28 over all 85 085 starts) but measured exhaustedly weak: over 12 frontier states (n=15 M=1000; n=23 M=2454 with S = 29..83, 19..83, 17..83; 3 seeds each) the subgradient optimum equals the capacity ratio to 3-4 decimals in 11/12 states (best relative gain 3.8%), and in no state does it prune where the capacity sum does not. This is structural, not a search failure: F* is the dual value of the fractional-offset LP, whose uniform point is feasible once sum_{p in S} 2/p >= 1, and the measured capacity ratio tracks (1.1-1.37) sum_{p in S} 2/p. So the route's premise - an LP/flow relaxation is a strictly tighter upper bound replacing the capacity sum - is not rescued in its separable form: the whole family is capped by the capacity sum because the true slack is overlap. Sharper than #1219, which showed only that one particular LP is feasible. Changed ingredient: an overlap-aware bound (third-order Bonferroni, |union| <= sum|K_p| - sum_{p<q}|K_p cap K_q| + sum triples) is valid and strictly below the capacity sum exactly when pair overlaps dominate triples, but it needs the JOINT maximum over CRT-coupled offsets, i.e. a lower bound on the coupled min-sum of pair overlaps - a materially different object from the fractional set cover. Decoupled substitutes are provably useless (independent pair minimisation returns 0 for disjoint-able pairs and worsens the bound).
- [Return #1219](/projects/twin-primes/return/1219): blocked. Implemented the fractional set-cover LP relaxation (x[p][r]>=0, sum_r x[p][r]=1; each position covered >=1) and solved it with scipy linprog at n=15..19. The LP is FEASIBLE at M=1000 for n=15 (and remains feasible for every M): the uniform distribution x[p][r]=1/(p-1) gives each position an average of sum_{p} 2/(p-1) = 1.86..2.0 >= 1 fractional kills, so the fractional cover saturates and the integrality gap is unbounded. The naive LP is therefore NOT 'stronger than the capacity sum' (the route's premise) - it is no bound at all, while the capacity sum is a finite (loose) bound. The cheapest experiment fails at its own gate, at seconds of LP solves.
- [Return #1218](/projects/twin-primes/return/1218): proposed. The capacity sum is provably loose (#1216: per-prime maxima are not jointly realizable; the excluded residue 'skip' still leaves every position individually killable, so per-position checks are vacuous, and the only cheap bound is the sum). A joint-residue relaxation is the standard next-tighter bound. The cheapest test (measure the LP gap at n=15..19 against the known a(n)) is a minutes-scale computation, well inside budget.
