Miller–Rabin primality test: Difference between revisions

Content added Content deleted
(Refactored the code in a way that is more idiomatic to Forth.)
Line 1,553: Line 1,553:
swap 1+ swap 2/
swap 1+ swap 2/
repeat ;
repeat ;

4.759.123.141 drop constant mr-det-3 \ Deterministic threshold; 3 bases


: fermat-square-test ( n m s -- ? ) \ perform n = n^2 (mod m), s-1 times
: fermat-square-test ( n m s -- ? ) \ perform n = n^2 (mod m), s-1 times
Line 1,572: Line 1,570:
else r> rot fermat-square-test
else r> rot fermat-square-test
then ;
then ;

4.759.123.141 drop constant mr-det-3 \ Deterministic threshold; 3 bases


create small-prime-bases 2 , 7 , 61 , \ deterministic up to mr-det-3
create small-prime-bases 2 , 7 , 61 , \ deterministic up to mr-det-3