1 2 3 4 5 6 7 8 9 10
puimod(a,p,n):={ //calcule de facon recursive la puissance rapide a^p modulo n if (p==0){ return(1); } if (irem(p,2)==0){ return(puimod(irem(a*a,n),iquo(p,2),n)); } return(irem(a*puimod(a,p-1,n),n)); };