I was reading the stronglucas code and I think this small change may improve clarity
diff -r 970b7221873f mpz/stronglucas.c --- a/mpz/stronglucas.c Mon Nov 16 19:48:04 2020 +0100 +++ b/mpz/stronglucas.c Thu May 12 14:10:15 2022 -0700 @@ -134,7 +134,7 @@ int jac; /* n is odd, to possibly be a square, n % 8 = 1 is needed. */ - if (((*PTR (n) & 6) == 0) && UNLIKELY (mpz_perfect_square_p (n))) + if (((*PTR (n) & 7) == 1) && UNLIKELY (mpz_perfect_square_p (n))) return 0; /* A square is composite. */ /* Check Ds up to square root (in case, n is prime) Technically n/x should be odd per the function comment but IMO this improves readability by having the "n % 8 = 1" in the nearer comment match the code. It's also possible lines 122-124 should also be indented _______________________________________________ gmp-devel mailing list gmp-devel@gmplib.org https://gmplib.org/mailman/listinfo/gmp-devel