Article 43TXV Searching for Fermat primes

Searching for Fermat primes

by
John
from John D. Cook on (#43TXV)

Fermat numbers have the form

fermat_number.svg

Fermat numbers are prime if n = 0, 1, 2, 3, or 4. Nobody has confirmed that any other Fermat numbers are prime. Maybe there are only five Fermat primes and we've found all of them. But there might be infinitely many Fermat primes. Nobody knows.

There's a specialized test for checking whether a Fermat number is prime, Pi(C)pin's test. It says that for n a 1, the Fermat number Fn is prime if and only if

pepin_test.svg

We can verify fairly quickly that F1 through F4 are prime and that F5 through F14 are not with the following Python code.

 def pepin(n): x = 2**(2**n - 1) y = 2*x return y == pow(3, x, y+1) for i in range(1, 15): print(pepin(i))

After that the algorithm gets noticeably slower.

We have an efficient algorithm for testing whether Fermat numbers are prime, efficient relative to the size of numbers involved. But the size of the Fermat numbers is growing exponentially. The number of digits in Fn is

fermat_digits.svg

So F14 has 4,933 digits, for example.

The Fermat numbers for n = 5 to 32 are known to be composite. Nobody knows whether F33 is prime. In principle you could find out by using Pi(C)pin's test, but the number you'd need to test has 2,585,827,973 digits, and that will take a while. The problem is not so much that the exponent is so big but that the modulus is also very big.

The next post presents an analogous test for whether a Mersenne number is prime.

VtZW-t3_s0M
External Content
Source RSS or Atom Feed
Feed Location http://feeds.feedburner.com/TheEndeavour?format=xml
Feed Title John D. Cook
Feed Link https://www.johndcook.com/blog
Reply 0 comments