/* BC program irregular */ /* irreg(p) returns 1 if p is an irregular prime and prints the B_2n which p divides. */ /* returns 0 if p is a regualr prime.*/ define irreg(p){ auto a[],b[],flag,limit,n,sum,t,s,r,i flag=0 a[p-1]=p-1 a[p-2]=1 for(i=p-2;i>=2;i--){ a[i-1]=(a[i]*i)%p /* print "a[",i-1,"]=",a[i-1],","*/ } /* print "\n"*/ t=inv(2,p) b[0]=1 limit=(p-3)/2 for(n=1;n<=limit;n++){ sum=0 r=n+n for(i=0;i=2;i--){ a[i-1]=(a[i]*i)%p print "a[",i-1,"]=",a[i-1],"\n" } }