The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

Changes for version 0.15 - 2013-09-30

  • Functions Added
    • miller_rabin_random
    • A tree sieve is done in trial factor for large (900+ digits) inputs. This improves performance greatly for very large inputs.
    • is_prob_prime uses more trial division for large inputs. For very large inputs (e.g. 50,000+ digits) this can greatly speed up probable prime testing, for instance in next_prime or similar sieving. Time for next_prime(99992 * 10**10101 - 100): 1m 4s MPUGMP 0.15 3m 34s Pari/GP (needs 450MB of stack!) 4m 1s mpz_nextprime 9m 33s Math::Primality
    • Use shallow product tree for primorials. Large primorials are 2 to 12 times faster. Break consecutive_integer_lcm into four sub-products so it runs 2-4x faster for large inputs.
    • Trim ECPP and adjust its heuristics.
    • Standalone ECPP now has consistent return codes, making it easier to use in applications without having to parse return text. The return codes are consistent with the certificate verifier.
    • factor() in scalar context is now consistent.

Modules

Utilities related to prime numbers and factoring, using GMP