Miller–Rabin primality test: Difference between revisions

m
→‎{{Header|OCaml}}: minor clarifications and improvements
m (→‎{{Header|OCaml}}: minor clarifications and improvements)
Line 3,561:
let get_rd n =
let rec loop r d =
if(* not (Z.equaleven Z.(d mod ~$2*) Z.zero) then
if Z.(equal (logand d one) one) then
(r,d)
else
Line 3,585 ⟶ 3,586:
loop 0 x
in
let n = Z.abs n in
if Z.(equal n one) then false
else if Z.(equal (logand n ~$3one) zero) then false
else if Z.(equal (n mod ~$23) zero) then false
else
let r, d = get_rd Z.(n - one) in
Anonymous user