Miller–Rabin primality test: Difference between revisions

Line 2,888:
g.times do
a = 2 + rand(n - 4)
x = mod_exp(a, d, n) # x = (a**d) % n
next if x == 1 || x == n - 1
for r in (1..s - 1)
x = mod_exp(x, 2, n) # x = (x**2) % n
return false if x == 1
break if x == n - 1
Line 2,897:
return false if x != n - 1
end
true # probably
end