Fermat numbers #
The Fermat numbers are a sequence of natural numbers defined as Nat.fermatNumber n = 2^(2^n) + 1
,
for all natural numbers n
.
Main theorems #
Nat.coprime_fermatNumber_fermatNumber
: two distinct Fermat numbers are coprime.Nat.pepin_primality
: For 0 < n, Fermat number Fₙ is prime if3 ^ (2 ^ (2 ^ n - 1)) = -1 mod Fₙ
fermat_primeFactors_one_lt
: For 1 < n, Prime factors the Fermat number Fₙ are of formk * 2 ^ (n + 2) + 1
.
Fermat numbers: the n
-th Fermat number is defined as 2^(2^n) + 1
.
Equations
- n.fermatNumber = 2 ^ 2 ^ n + 1
Instances For
@[deprecated Nat.fermatNumber_strictMono (since := "2024-11-25")]
Alias of Nat.fermatNumber_strictMono
.
@[deprecated Nat.prod_fermatNumber (since := "2024-11-25")]
Alias of Nat.prod_fermatNumber
.
Goldbach's theorem : no two distinct Fermat numbers share a common factor greater than one.
From a letter to Euler, see page 37 in [juskevic2022].
theorem
Nat.pairwise_coprime_fermatNumber :
Pairwise fun (m n : ℕ) => m.fermatNumber.Coprime n.fermatNumber
Fₙ = 2^(2^n)+1
is prime if 3^(2^(2^n-1)) = -1 mod Fₙ
(Pépin's test).
Fₙ = 2^(2^n)+1
is prime if 3^((Fₙ - 1)/2) = -1 mod Fₙ
(Pépin's test).