The Lucas-Lehmer test is an efficient deterministic primality test for determining if a Mersenne number is prime. Since it is known that Mersenne
numbers can only be prime for prime subscripts, attention can be restricted to Mersenne
numbers of the form
,
where
is an odd prime.
Consider the recurrence equation
(1)
|
with .
For example, ignoring the congruence, the first few terms of this iteration are 4,
14, 194, 37634, 1416317954, ... (OEIS A003010).
It turns out that
is prime iff
, and the value
is called the Lucas-Lehmer residue for
.
For example, the sequence obtained for is given by 4, 14, 67, 42, 111, 0, so
is prime.
For prime ,
the first few Lucas-Lehmer residues are 1, 0, 0, 0, 1736, 0, 0, 0, 6107895, 458738443,
0, 117093979072, ... (OEIS A095847).
This test can also be extended to arbitrary integers. Prior to the work of Pratt (1975), the Lucas-Lehmer test had been regarded purely
as a heuristic that worked a lot of the time (Knuth 1969). Pratt (1975) showed that
Lehmer's primality heuristic could be made a nondeterministic procedure by applying
it recursively to the factors of , resulting in a certification of primality that has come
to be known as the Pratt certificate.
A generalized version of the Lucas-Lehmer test lets
(2)
|
with
the distinct prime factors, and
their respective powers. If
there exists a Lucas sequence
such that
(3)
|
for ,
...,
and
(4)
|
then
is a prime. This reduces to the conventional Lucas-Lehmer
test for Mersenne numbers.