Miller–Rabin primality test: Difference between revisions
Content added Content deleted
(→{{header|Common Lisp}}: added D) |
m (→{{header|D}}) |
||
Line 508: | Line 508: | ||
if (modpow(a, d, n) == 1) |
if (modpow(a, d, n) == 1) |
||
return false; |
return false; |
||
foreach (i; 0 .. s+1) { |
foreach (i; 0 .. s + 1) { |
||
if (modpow(a, 2^^i * d, n) == n-1) |
if (modpow(a, 2^^i * d, n) == n - 1) |
||
return false; |
return false; |
||
} |
} |
||
return true; |
return true; |
||
} |
} |
||
foreach ( |
foreach (_; 0 .. k + 1) { |
||
if (isComposite(uniform(2, n))) |
if (isComposite(uniform(2, n))) |
||
return false; |
return false; |