/nums

Number theoretic functions, such as primality testing and factorization, for BigUints

Primary LanguageRustApache License 2.0Apache-2.0

nums

This library contains some number theoretic functions, such as primality testing and factorization, for BigUints.

Status

Primality tests:

  • Trial division
  • Miller-Rabin

Factorization:

  • Trial division
  • Pollard's rho
  • Quadratic sieve
    • SIQS (or other methods to mitigate growth)
    • Preprocessing to shrink exponent matrix, looking for primes that occur 0, 1 or 2 times
    • Large prime optimization
    • Replace Guassian elimination with block-Lanczos or block-Wiedemann nullspace algorithm
  • General number sieve

License

Licensed under either of

at your option.

Licensing

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.