Lucas-Lehmer test: Difference between revisions

Content added Content deleted
No edit summary
No edit summary
Line 39: Line 39:


=={{header|Agena}}==
=={{header|Agena}}==
Because of the very large numbers computed, the mapm binding is used to compute with arbitrary precision.
Because of the very large numbers computed, the mapm binding is used to calculate with arbitrary precision.
<lang agena>readlib 'mapm'
<lang agena>readlib 'mapm';


mapm.xdigits(100);
mapm.xdigits(100);
Line 52: Line 52:
else
else
for i from 3 to p do
for i from 3 to p do
s := (mapm.xnumber(s)^2 - 2) % m;
s := (mapm.xnumber(s)^2 - 2) % m
od;
od;
return mapm.xtoNumber(s) = 0
return mapm.xtoNumber(s) = 0