\\ Helper function isquadro(k,n) = { local(i1); i1=isprime(2^n-k); i1+=isprime(2^n+k); i1+=isprime(k*2^n+1); i1+=isprime(k*2^n-1); return(i1); } \\ Verify whether (k,n) is DodecaProth \\ Set v=0 to suppress text output. isddp(k,n,v=1) = { local(i2, i3); \\ Is DodecaProth ? i2=isquadro(k,n); i2+=isquadro(k,n+1); i2+=isquadro(k,n+2); if(i2==12, if(v, print1(k," ",n," is DodecaProth!")), return(0); ); \\ Count legs if(v, i2=isquadro(k,n-1); i3=isquadro(k,n+3); print(" ... Left_legs=", i2, ", Rigth_legs=", i3,"."); ); return(1); }