|Workload type||ECPP, BLS75,|
ECPP-DJ is a primality testing program created by Dana Jacobsen.
It is written in C using the GMP library. It is a standalone version of the ECPP implementation written for the Perlmodule Math::Prime::Util::GMP (MPU) in 2013.
It implements the following algorithms:
- ECPP test
- BPSW test (strong PRP-2 test followed by extra strong Lucas-Selfridge test)
- AKS test
- BLS75 (particularly, theorems 5/7 and 19)
Most of the utility functions closely follow the algorithms presented in Henri Cohen's book "A Course in Computational Algebraic Number Theory" (1993). The ECM factoring and manipulation was heavily inspired by GMP-ECM by Paul Zimmermann and many others.
Unlike Primo, this is an open-source implementation of ECPP test. However, Primo runs much faster for 1000+ digit numbers, especially on multi-core machines (ECPP-DJ is single threaded).
To verify M12 using BLS75:
- $./ecpp-dj -V -bls 170141183460469231731687303715884105727
- N: 170141183460469231731687303715884105727
- BLS75 proof using N-1