The project relies primarily on the Lucas–Lehmer primality test as it is an algorithm that is both specialized for testing Mersenne primes and particularly efficient on binary computer architectures. There is also a trial division phase, used to rapidly eliminate many Mersenne numbers with small factors. Pollard's "p" − 1 algorithm is also used to search for smooth factors. In 2017, GIMPS adopted the Fermat primality test as an alternative option for primality testing. In 2020, GIMPS has started using PRP proofs, which together with the very reliable error-check, devised by Robert Gerbicz, provide a complete confidence in the correctness of the test result, and thus eliminating the need for double checks.