Miller–Rabin primality test: Difference between revisions

Content added Content deleted
Line 4,492: Line 4,492:
# Choose input witness bases: wits = [range, [wit_bases]] or nil
# Choose input witness bases: wits = [range, [wit_bases]] or nil
wits = WITNESS_RANGES.find { |range, wits| range > self }
wits = WITNESS_RANGES.find { |range, wits| range > self }
witnesses = wits && wits[1] || k.times.map{ 2 + rand(n - 4) }
witnesses = wits && wits[1] || k.times.map{ 2 + rand(self - 4) }
miller_rabin_test(witnesses)
miller_rabin_test(witnesses)
end
end