Michael H.W. Weber hat geschrieben: ↑17.05.2023 09:59
P.S.: Ein kleiner Test-Server läuft übrigens inzwischen und den nutze ich zu Zeiten,
wo ich in meiner Freizeit Spass daran habe, um dort die französische PARI Infrastruktur aufzusetzen. Wenn das
irgendwann ordentlich als BOINC-Server läuft, könnten wir Deinen Code dort laufen lassen. Vorausgesetzt Du verscherzt es Dir mit uns nicht endgültig.
Ist Ihr PARI@home-System bereit?
Ich habe einen neuen Algorithmus.
Programmcode
Code: Alles auswählen
{ tin = fileopen("inp.txt");
i1=eval(filereadstr(tin));
i2=eval(filereadstr(tin));
fileclose(tin);
kp=0;
lmin=17;
ltuple=11;
\\ **********************
M=matrix(10000,36); k=0;
p=nextprime(i1); pt=[p]; n=1;
while(p<i2,
kp++;
pn=nextprime(p+1);
if( (pn-p)%6==0, n++; p=pn; pt=concat(pt,p),
if( n>lmin-1, k++;
pd=vector(n-1,i,pt[i+1]-pt[i]);
M[k,1]=pt[1];
for(l=2,n, M[k,l]=pd[l-1]; ););
n=1; p=pn; pt=[p];
);
);
\\ find symmetrical tuples
fout = fileopen("tuple_sym.txt","w");
ksym=0;
for( iii=1,k,
d=[];
for(l=2,30,
if( M[iii,l]==0, break );
d=concat(d, M[iii,l]);
); \\ l
ld=#d;
forstep( kl=ltuple-1,ld,2,
kl05=kl\2;
kpr=ld-kl+1;
for ( ipr=1,kpr,
for( mm=1, kl05,
if( d[mm+ipr-1]!=d[kl+ipr-mm], next(2) )
); \\ mm
\\ we see symmetrical vector from ipr to ipr+kl
ksym++;
\\printf("from %d", M[iii,1..ld+2]);print();
tp1=M[iii,1];if( ipr>1,tp1=tp1+vecsum(d[1..ipr-1]) );
w=strprintf( "%d %d: %d",kl+1, tp1, d[ipr..ipr+kl-1] );
print(w);
filewrite(fout,w);
); \\ ipr
); \\kl
); \\iii
print(); print("total ", k, " tuples");
print( ksym, " symmetrical tuples");
print(kp," primes in ");
print(i1);print(i2-2000);
fileclose(fout)
}
Ich würde diesen Code gerne ausprobieren.
Wann wird es möglich sein?