"""Independent GRH9 presieved middle pieces and full M=11 sieve cover. 256-bit Arb; exact rational grid; no author module imported. """ import os for k in ['OPENBLAS_NUM_THREADS','OMP_NUM_THREADS','MKL_NUM_THREADS','NUMEXPR_NUM_THREADS']:os.environ[k]='1' from pathlib import Path from fractions import Fraction import math,json from flint import arb,arb_poly,ctx ctx.prec=256;ctx.threads=1 OUT=Path(__file__).resolve().parent/'resume1' def primes(n): s=bytearray(b'\x01')*(n+1);s[:2]=b'\x00\x00' for p in range(2,math.isqrt(n)+1): if s[p]:s[p*p::p]=b'\x00'*len(s[p*p::p]) return [p for p in range(2,n+1) if s[p]] PR=primes(250000) def D(l):return 1/(10*l*l)+arb(4)/(15*l**3) def up(v):return arb(v.upper()) BHI=arb('.26149721284765');BLO=arb('.26149721284764') CT=1+arb(1)/36260 def middle(w,Ltop,Llow,delta): ll=arb(Llow) if Llow else arb('4e18').log();lt=arb(Ltop);d=arb(delta) rempr=[p for p in PR if p>w];wp=rempr[0] km=int(float(lt/arb(wp).log()));assert km*arb(wp).log()=1 and 0=errors[p];suffix[p]=run U=2*(-arb.const_euler()).exp()*arb('.6601617536');good=arb('.146')*U rows=[];first=Fraction(73);top=Fraction(7700000) while first=10372:sz=up(D(l));pk=None else: pk=max(p for p in table if arb(p)<=arb(z.lower())) sz=suffix[pk] assert arb(pk)<=z and all(p<=pk or arb(p)>z for p in table) eps=sz+D(l)+1/z;mu=[arb(1)] for j in range(1,W): nj=sum((math.comb(j,i)*eps**i*J[j-i] for i in range(j+1)),arb(0)) mu.append(nj/math.factorial(j)+(mu[j-2]/(z-1) if j>=2 else 0)) def A(a):return a*(l/z**a+l/((a-1)*z**(a-1))+1/((a-1)**2*z**(a-1))) phi=CT*mu[9]+sum((A(a)*mu[10-a] for a in range(2,11)),arb(0)) vals=[] for ds in ['.30','.25','.20','.15','.10','.05','.02','.01']: d=arb(ds) if d*l1<2:continue v=l2*phi/((1-d)*good)+(l1**2*(-d*l1).exp()+5*l2**2*(-l1).exp())/good vals.append((up(v),ds)) best,ds=min(vals,key=lambda pair:float(pair[0]));assert best<1 rows.append({'L1':str(first),'L2':str(last),'delta':ds,'pk':pk,'S':sz.str(25),'eps':eps.str(25),'Phi':phi.str(25),'upper':best.str(25)}) first=last assert len(rows)==238 and rows[0]['L1']=='73' and rows[-1]['L2']=='7700000' assert all(a['L2']==b['L1'] for a,b in zip(rows,rows[1:])) idx=max(range(len(rows)),key=lambda i:float(arb(rows[i]['upper']))) assert arb(rows[idx]['upper'])