- Miller-Rabin
- Fermat
- Lucas
- Baillie-PSW
- Deterministic variants of Miller-Rabin
- Weierstrass form
- Montgomery form
- Generic class for other int implementations
- For Montgomery: PRAC and safe Ladder
- Add other curves and formulas from the Explicit-Formulas Database?
- https://wstein.org/edu/124/lenstra/lenstra.pdf
- https://wstein.org/edu/124/misc/montgomery.pdf
- https://wstein.org/edu/124/misc/arjen_lenstra_factoring.pdf
- https://wstein.org/edu/124/misc/koblitz_ecc.pdf
- gmpy2 support for elliptic curves
- implement alternative faster sieves using gmpy2 or numpy
- interface the Advanced Number Theory Functions from gmpy2 and replicate them in pure Python for compatibility
- Lenstra's algorithm on elliptic curves
- Multiple polynomial quadratic sieve
- Parallelism with SCOOP
- Hart's one line factoring algorithm (pdf)
- Other algorithms from primefac
- Modular square root: Tonelli--Shanks and Cipolla's algorithms
- Algorithms from E. Bach, J.O. Shallit Algorithmic Number Theory: Efficient algorithms MIT Press, (1996)
- Multiprocessing support: better than SCOOP locally and because of the ability to terminate
- General number field sieve, see also https://github.com/radii/msieve