In number theory, the **Fermat pseudoprimes** make up the most important class of pseudoprimes that come from Fermat's little theorem.

## Contents

## Definition

Fermat's little theorem states that if *p* is prime and *a* is coprime to *p*, then *a*^{p−1} − 1 is divisible by *p*. For an integer *a* > 1, if a composite integer *x* divides *a*^{x−1} − 1, then *x* is called a **Fermat pseudoprime** to base *a*. In other words, a composite integer is a Fermat pseudoprime to base *a* if it successfully passes the Fermat primality test for the base *a*. It follows that if *x* is a Fermat pseudoprime to base *a*, then *x* is coprime to *a*.

The smallest base-2 Fermat pseudoprime is 341. It is not a prime, since it equals 11·31, but it satisfies Fermat's little theorem: 2^{340} ≡ 1 (mod 341) and thus passes the Fermat primality test for the base 2.

Pseudoprimes to base 2 are sometimes called **Poulet numbers**, after the Belgian mathematician Paul Poulet, **Sarrus numbers**, or **Fermatians** (sequence A001567 in the OEIS).

A Fermat pseudoprime is often called a **pseudoprime**, with the modifier **Fermat** being understood.

An integer *x* that is a Fermat pseudoprime for all values of *a* that are coprime to *x* is called a Carmichael number.

## Variations

Some sources use variations of the definition, for example to only allow odd numbers to be pseudoprimes.

Every odd number *q* satisfies

*q*is a Fermat pseudoprime to a base

*a*, if

## Distribution

There are infinitely many pseudoprimes to a given base (in fact, infinitely many strong pseudoprimes (see Theorem 1 of ) and infinitely many Carmichael numbers ) , but they are rather rare. There are only three pseudoprimes to base 2 below 1000, 245 below one million, and only 21853 less than 25·10^{9} (see Table 1 of ).

Starting at 17·257, the product of consecutive Fermat numbers is a base-2 pseudoprime, and so are all Fermat composite and Mersenne composite.

## Factorizations

The factorizations of the 60 Poulet numbers up to 60787, including 13 Carmichael numbers (in bold), are in the below table.

(sequence A001567 in the OEIS)

A Poulet number all of whose divisors *d* divide 2^{d} − 2 is called a super-Poulet number. There are infinitely many Poulet numbers which are not super-Poulet Numbers.

## Smallest Fermat pseudoprimes

The smallest pseudoprime for each base *a* ≤ 200 is given in the following table; the colors mark the number of prime factors. Unlike in the definition at the start of the article, pseudoprimes below *a* are excluded in the table. (For that to allow pseudoprimes below *a*, see A090086)

(sequence A007535 in the OEIS)

## List of Fermat pseudoprimes in fixed base n

For more information (base 31 to 100), see A020159 to A020228, and for all bases up to 150, see table of Fermat pseudoprimes (text in German), this page does not define *n* is a pseudoprime to a base congruent to 1 or -1 (mod *n*)

## Which bases b make n a Fermat pseudoprime?

The following is a table about all base *b* < *n* which *n* is a Fermat pseudoprime (all composite number is a pseudoprime to base 1, and for *b* > *n*, the solutions are just shifted by *k***n* for *k* > 0), if a composite number *n* is not listed in the table (or *n* is in the sequence A209211), then *n* is a pseudoprime only in base 1, or the bases which congruent to 1 (mod *n*) (that is, the number of the values of *b* is 1), these *n*s are up to 200)

For more information (*n* = 201 to 5000), see, this page does not define *n* is a pseudoprime to a base congruent to 1 or -1 (mod *n*). Note that when *p* is a prime, *p*^{2} is a Fermat pseudoprime to base *b* if and only if *p* is a Wieferich prime to base *b*. For example, 1093^{2} = 1194649 is a Fermat pseudoprime to base 2, and 11^{2} = 121 is a Fermat pseudoprime to base 3.

The number of the values of *b* for *n* are (For *n* prime, the number of the values of *b* must be *n* - 1, since all *b* satisfy the Fermat little theorem)

The least base *b* > 1 which *n* is a pseudoprime to base *b* (or prime number) are

The number of the values of *b* for *n* must divides
*n*), or A000010(*n*) = 1, 1, 2, 2, 4, 2, 6, 4, 6, 4, 10, 4, 12, 6, 8, 8, 16, 6, 18, 8, 12, 10, 22, 8, 20, 12, 18, 12, 28, 8, 30, 16, 20, 16, 24, 12, 36, 18, 24, 16, 40, 12, 42, 20, 24, 22, 46, 16, 42, 20, ... (The quotient can be any natural number, and the quotient = 1 if and only if *n* is a prime or a Carmichael number (561, 1105, 1729, 2465, 2821, 6601, 8911, 10585, 15841, ... A002997), the quotient = 2 if and only if *n* is in the sequence: 4, 6, 15, 91, 703, 1891, 2701, 11305, 12403, 13981, 18721, ... A191311)

The least number with *n* values of *b* are (or 0 if no such number exists)

*n*is a nontotient, then the

*n*th term of this sequence is 0)

## Weak pseudoprimes

A composite number *n* which satisfy that *b ^{n}* =

*b*(mod

*n*) is called

**weak pseudoprime to base**. A pseudoprime to base a (under the usual definition) satisfies this condition. Conversely, a weak pseudoprime that's coprime with the base is a pseudoprime in the usual sense, otherwise this may or may not be the case. The least weak pseudoprime to base

*b**b*are (start with

*b*= 0)

Note that all terms are less than or equal to the smallest Carmichael number, 561. Except for 561, only semiprimes can occur in the above sequence, but not all semiprimes less than 561 occur, a semiprime *pq* (*p* ≤ *q*) less than 561 occurs in the above sequences if and only if *p* - 1 divides *q* - 1. (see A108574)

If we require *n* > *b*, they are (start with *b* = 0)

Carmichael numbers are weak pseudoprimes to all bases.

## Euler–Jacobi pseudoprimes

Another approach is to use more refined notions of pseudoprimality, e.g. strong pseudoprimes or Euler–Jacobi pseudoprimes, for which there are no analogues of Carmichael numbers. This leads to probabilistic algorithms such as the Solovay–Strassen primality test, the Baillie-PSW primality test, and the Miller–Rabin primality test, which produce what are known as industrial-grade primes. Industrial-grade primes are integers for which primality has not been "certified" (i.e. rigorously proven), but have undergone a test such as the Miller–Rabin test which has nonzero, but arbitrarily low, probability of failure.

## Applications

The rarity of such pseudoprimes has important practical implications. For example, public-key cryptography algorithms such as RSA require the ability to quickly find large primes. The usual algorithm to generate prime numbers is to generate random odd numbers and test them for primality. However, deterministic primality tests are slow. If the user is willing to tolerate an arbitrarily small chance that the number found is not a prime number but a pseudoprime, it is possible to use the much faster and simpler Fermat primality test.