LP[0](x):=2; LP[1](x):=x; LP[n](x):=x*LP[n-1](x)+LP[n-2](x); for n:1 thru 11 step 2 do print(expand('LP[n](x)=LP[n](x))); H[n](x):=if oddp(n) then ratsubst(x,x^2,expand(LP[n](x)/x)) else ratsubst(x,x^2,expand(LP[n](x))); for n:1 thru 11 step 2 do print('H[n](x)=expand(H[n](x))); [hipow(H[7](x),x),hipow(H[17](x),x),hipow(H[19](x),x)]; [H[7](0),H[17](0),H[19](0)]; [polymod(H[7](x),7),polymod(H[17](x),17),polymod(H[19](x),19)]; [resultant(H[7](x),H[11](x),x),resultant(H[19](x),H[11](x),x),resultant(H[19](x),H[3](x),x),resultant(H[21](x),H[5](x),x)]; [jacobi(11,7),jacobi(11,19),jacobi(3,19),jacobi(5,21)]; 'resultant('H[p](x),'H[q](x),x)=mod('resultant(x^((p-1)/2),'H[q](x)),p); 'resultant(x^n,'f(x))=f(0)^n; resultant(x^6,x^2+3*x+a,x); 'resultant(x^((p-1)/2),'H[q](x),x)='H[q](0)^((p-1)/2); 'H[q](0)^((p-1)/2)=q^((p-1)/2);