Fermat's little theorem


Fermat's little theorem states that if is a prime number, then for any integer, the number is an integer multiple of. In the notation of modular arithmetic, this is expressed as
For example, if = 2 and = 7, then 27 = 128, and 128 − 2 = 126 = 7 × 18 is an integer multiple of 7.
If is not divisible by, Fermat's little theorem is equivalent to the statement that is an integer multiple of, or in symbols:
For example, if = 2 and = 7, then 26 = 64, and 64 − 1 = 63 = 7 × 9 is thus a multiple of 7.
Fermat's little theorem is the basis for the Fermat primality test and is one of the fundamental results of elementary number theory. The theorem is named after Pierre de Fermat, who stated it in 1640. It is called the "little theorem" to distinguish it from Fermat's last theorem.

History

first stated the theorem in a letter dated October 18, 1640, to his friend and confidant Frénicle de Bessy. His formulation is equivalent to the following:
If is a prime and is any integer not divisible by, then is divisible by.

Fermat's original statement was
Tout nombre premier mesure infailliblement une des puissances – 1 de quelque progression que ce soit, et l'exposant de la dite puissance est sous-multiple du nombre premier donné – 1 ; et, après qu'on a trouvé la première puissance qui satisfait à la question, toutes celles dont les exposants sont multiples de l'exposant de la première satisfont tout de même à la question.

This may be translated, with explanations and formulas added in brackets for easier understanding, as:

Every prime number divides necessarily one of the powers minus one of any progression , and the exponent of this power divides the given prime minus one . After one has found the first power that satisfies the question, all those whose exponents are multiples of the exponent of the first one satisfy similarly the question .

Fermat did not consider the case where is a multiple of nor prove his assertion, only stating:
Et cette proposition est généralement vraie en toutes progressions et en tous nombres premiers; de quoi je vous envoierois la démonstration, si je n'appréhendois d'être trop long.


Euler provided the first published proof in 1736, in a paper titled "Theorematum Quorundam ad Numeros Primos Spectantium Demonstratio" in the Proceedings of the St. Petersburg Academy, but Leibniz had given virtually the same proof in an unpublished manuscript from sometime before 1683.
The term "Fermat's little theorem" was probably first used in print in 1913 in Zahlentheorie by Kurt Hensel:
Für jede endliche Gruppe besteht nun ein Fundamentalsatz, welcher der kleine Fermatsche Satz genannt zu werden pflegt, weil ein ganz spezieller Teil desselben zuerst von Fermat bewiesen worden ist.


An early use in English occurs in A.A. Albert's Modern Higher Algebra, which refers to "the so-called 'little' Fermat theorem" on page 206.

Further history

Some mathematicians independently made the related hypothesis that if and only if is prime. Indeed, the "if" part is true, and it is a special case of Fermat's little theorem. However, the "only if" part is false: For example,, but 341 = 11 × 31 is a pseudoprime. See [|below].

Proofs

Several proofs of Fermat's little theorem are known. It is frequently proved as a corollary of Euler's theorem.

Generalizations

is a generalization of Fermat's little theorem: for any modulus and any integer coprime to, one has
where denotes Euler's totient function. Fermat's little theorem is indeed a special case, because if is a prime number, then.
A corollary of Euler's theorem is: for every positive integer, if the integer is coprime with then
for any integers and.
This follows from Euler's theorem, since, if, then for some integer, and one has
If is prime, this is also a corollary of Fermat's little theorem. This is widely used in modular arithmetic, because this allows reducing modular exponentiation with large exponents to exponents smaller than.
If is not prime, this is used in public-key cryptography, typically in the RSA cryptosystem in the following way: if
retrieving from the values of and is easy if one knows In fact, the extended Euclidean algorithm allows computing the modular inverse of modulo that is the integer such It follows that
On the other hand, if is the product of two distinct prime numbers, then In this case, finding from and needs knowing . If one knows and the factors and are easy to deduce, as one knows their product and their sum The basic idea of RSA cryptosystem is thus: if a message is encrypted as using public values of and, then, with the current knowledge, it cannot be decrypted without finding the factors and of.
Fermat's little theorem is also related to the Carmichael function and Carmichael's theorem, as well as to Lagrange's theorem in group theory.

Converse

The converse of Fermat's little theorem is not generally true, as it fails for Carmichael numbers. However, a slightly stronger form of the theorem is true, and it is known as Lehmer's theorem. The theorem is as follows:
If there exists an integer such that
and for all primes dividing one has
then is prime.
This theorem forms the basis for the Lucas–Lehmer test, an important primality test.

Pseudoprimes

If and are coprime numbers such that is divisible by, then need not be prime. If it is not, then is called a pseudoprime to base. The first pseudoprime to base 2 was found in 1820 by Pierre Frédéric Sarrus: 341 = 11 × 31.
A number that is a Fermat pseudoprime to base for every number coprime to is called a Carmichael number. Alternately, any number satisfying the equality
is either a prime or a Carmichael number.

Miller–Rabin primality test

The Miller–Rabin primality test uses the following extension of Fermat's little theorem:
If is an odd prime number, and, with odd, then for every prime to, either, or there exists such that and

This result may be deduced from Fermat's little theorem by the fact that, if is an odd prime, then the integers modulo form a finite field, in which has exactly two square roots, 1 and −1.
The Miller–Rabin test uses this property in the following way: given, with odd, an odd integer for which primality has to be tested, choose randomly such that ; then compute ; if is not 1 nor −1, then square it repeatedly modulo until you get 1, −1, or have squared times. If and −1 has not been obtained, then is not prime. Otherwise, may be prime or not. If is not prime, the probability that this is proved by the test is higher than 1/4. Therefore, after non-conclusive random tests, the probability that is not prime is lower than, and may thus be made as low as desired, by increasing .
In summary, the test either proves that a number is not prime, or asserts that it is prime with a probability of error that may be chosen as low as desired.
The test is very simple to implement and computationally more efficient than all known deterministic tests. Therefore, it is generally used before starting a proof of primality.