# Formula for primes

In number theory, a formula for primes is a formula generating the prime numbers, exactly and without exception. No such formula which is easily computable is presently known. A number of constraints are known: what such a "formula" can and cannot be.

## Prime formulas and polynomial functions

It is known that no non-constant polynomial function P(n) with integer coefficients exists that evaluates to a prime number for all integers n. The proof is as follows: Suppose such a polynomial existed. Then P(1) would evaluate to a prime p, so $P(1) \equiv 0 \pmod p$. But for any k, $P(1+kp) \equiv 0 \pmod p$ also, so $P(1+kp)$ cannot also be prime (as it would be divisible by p) unless it were p itself, but the only way $P(1+kp) = P(1)$ for all k is if the polynomial function is constant.

The same reasoning shows an even stronger result: no non-constant polynomial function P(n) exists that evaluates to a prime number for almost all integers n.

Euler first noticed (in 1772) that the quadratic polynomial

P(n) = n2n + 41

is prime for all positive integers less than 41. The primes for n = 1, 2, 3... are 41, 43, 47, 53, 61, 71... The differences between the terms are 2, 4, 6, 8, 10... For n = 41, it produces a square number, 1681, which is equal to 41×41, the smallest composite number for this formula. If 41 divides n it divides P(n) too. The phenomenon is related to the Ulam spiral, which is also implicitly quadratic, and the class number; this polynomial is related to the Heegner number $163=4\cdot 41-1$, and there are analogous polynomials for $p=2, 3, 5, 11, \text{ and } 17$, corresponding to other Heegner numbers.

It is known, based on Dirichlet's theorem on arithmetic progressions, that linear polynomial functions $L(n) = an + b$ produce infinitely many primes as long as a and b are relatively prime (though no such function will assume prime values for all values of n). Moreover, the Green–Tao theorem says that for any k there exists a pair of a and b with the property that $L(n) = an+b$ is prime for any n from 0 to k − 1. However, the best known result of such type is for k = 26:

43142746595714191 + 5283234035979900n is prime for all n from 0 to 25 (Andersen 2010).

It is not even known whether there exists a univariate polynomial of degree at least 2 that assumes an infinite number of values that are prime; see Bunyakovsky conjecture.

## Formula based on a system of Diophantine equations

A system of 14 Diophantine equations in 26 variables can be used to obtain a Diophantine representation of the set of all primes. Jones et al. (1976) proved that a given number k + 2 is prime if and only if the following system of 14 Diophantine equations has a solution in the natural numbers:

α0 = $wz + h + j - q$ = 0
α1 = $(gk + 2g + k + 1)(h + j) + h - z$ = 0
α2 = $16(k + 1)^3(k + 2)(n + 1)^2 + 1 - f^2$ = 0
α3 = $2n + p + q + z - e$ = 0
α4 = $e^3(e + 2)(a + 1)^2 + 1 - o^2$ = 0
α5 = $(a^2 - 1)y^2 + 1 - x^2$ = 0
α6 = $16r^2y^4(a^2 - 1) + 1 - u^2$ = 0
α7 = $n + l + v - y$ = 0
α8 = $(a^2 - 1)l^2 + 1 - m^2$ = 0
α9 = $ai + k + 1 - l - i$ = 0
α10 = $((a + u^2(u^2 - a))^2 - 1)(n + 4dy)^2 + 1 - (x + cu)^2$ = 0
α11 = $p + l(a - n - 1) + b(2an + 2a - n^2 - 2n - 2) - m$ = 0
α12 = $q + y(a - p - 1) + s(2ap + 2a - p^2 - 2p - 2) - x$ = 0
α13 = $z + pl(a - p) + t(2ap - p^2 - 1) - pm$ = 0

The 14 equations α0, …, α13 can be used to produce a prime-generating polynomial inequality in 26 variables:

$(k+2)(1-\alpha_0^2-\alpha_1^2-\cdots-\alpha_{13}^2) > 0$

i.e.:

$(k+2) (1 -$
$[wz + h + j - q]^2 -$
$[(gk + 2g + k + 1)(h + j) + h - z]^2 -$
$[16(k + 1)^3(k + 2)(n + 1)^2 + 1 - f^2]^2 -$
$[2n + p + q + z - e]^2 -$
$[e^3(e + 2)(a + 1)^2 + 1 - o^2]^2 -$
$[(a^2 - 1)y^2 + 1 - x^2]^2 -$
$[16r^2y^4(a^2 - 1) + 1 - u^2]^2 -$
$[n + l + v - y]^2 -$
$[(a^2 - 1)l^2 + 1 - m^2]^2 -$
$[ai + k + 1 - l - i]^2 -$
$[((a + u^2(u^2 - a))^2 - 1)(n + 4dy)^2 + 1 - (x + cu)^2]^2 -$
$[p + l(a - n - 1) + b(2an + 2a - n^2 - 2n - 2) - m]^2 -$
$[q + y(a - p - 1) + s(2ap + 2a - p^2 - 2p - 2) - x]^2 -$
$[z + pl(a - p) + t(2ap - p^2 - 1) - pm]^2)$
$> 0$

is a polynomial inequality in 26 variables, and the set of prime numbers is identical to the set of positive values taken on by the left-hand side as the variables a, b, …, z range over the nonnegative integers.

A general theorem of Matiyasevich says that if a set is defined by a system of Diophantine equations, it can also be defined by a system of Diophantine equations in only 9 variables. Hence, there is a prime-generating polynomial as above with only 10 variables. However, its degree is large (in the order of 1045). On the other hand, there also exists such a set of equations of degree only 4, but in 58 variables.(Jones 1982)

## Formulas using the floor function

Using the floor function $\lfloor x\rfloor$ (defined to be the largest integer less than or equal to the real number x), one can construct several formulas that take only prime numbers as values for all positive integers n.

### Mills' formula

The first such formula known was established in 1947 by W. H. Mills, who proved that there exists a real number A such that

$\lfloor A^{3^{n}}\;\rfloor$

is a prime number for all positive integers n. If the Riemann hypothesis is true, then the smallest such A has a value of around 1.3063... and is known as Mills' constant. This formula has no practical value, because very little is known about the constant (not even whether it is rational), and there is no known way of calculating the constant without finding primes in the first place.

### Converting the sieve of Eratosthenes to prime number formulas

There is another, quite different formula discovered by Sebastián Martín-Ruiz (Rivera n.d.) and proved with Jonathan Sondow (Martin-Ruiz & Sondow 2002):

$\pi(k) = k - 1 + \sum_{j=1}^k \left\lfloor {2 \over j} \left(1 + \sum_{s=1}^{\left\lfloor\sqrt{j}\right\rfloor} \left(\left\lfloor{ j-1 \over s}\right\rfloor - \left\lfloor{j \over s}\right\rfloor\right) \right)\right\rfloor$

Note the following equalities:

$\left\lfloor{ j \over s}\right\rfloor - \left\lfloor{j-1 \over s}\right\rfloor = \begin{cases} 1 & s \text{ divides } j \\ 0 & s \text{ does not divide } j \end{cases}$
$2\sum_{s=1}^{\left\lfloor\sqrt{j}\right\rfloor} \left(\left\lfloor{ j \over s}\right\rfloor - \left\lfloor{j-1 \over s}\right\rfloor\right) = \begin{cases} \text{number of divisors of } j & j \text{ is not square number} \\ 1 + \text{number of divisors of } j & j \text{ is square number} \end{cases}$
$\left\lfloor {-1 \over j} \sum_{s=2}^{\left\lfloor\sqrt{j}\right\rfloor} \left(\left\lfloor{ j \over s}\right\rfloor - \left\lfloor{j-1 \over s}\right\rfloor\right)\right\rfloor=\begin{cases} 0 & j \text{ is prime} \\ -1 & j \text{ is composite} \end{cases}$
$\operatorname{IsPrime}(j)=1+\left\lfloor {-1 \over j} \sum_{s=2}^{\left\lfloor\sqrt{j}\right\rfloor} \left(\left\lfloor{ j \over s}\right\rfloor - \left\lfloor{j-1 \over s}\right\rfloor\right) \right\rfloor=\begin{cases} 1 & j \text{ is prime} \\ 0 & j \text{ is composite} \end{cases}$
$\pi(k) =\sum_{j=2}^k \operatorname{IsPrime}(j),$

where $\pi(k)$ is the prime counting function.

### Converting primality tests to prime number formulas

Any primality test can be used as the basis for a prime number formula. In effect, a test for the primality of n is a computation of the function IsPrime(n), defined by:

$\operatorname{IsPrime}(n) = \begin{cases} 1 & n \text{ prime} \\ 0 & n \text{ composite} \end{cases}$

If the primality test is given by a condition on some formula involving $n,$ then that formula gives a formula for IsPrime(n). Using a product,

$\prod_{k=2}^{n} \prod_{l=2}^{n} (n-kl) = 0\text{ if and only if n is not a prime (and integer more than 1)}$

For a prime $n \ge 2$,the product above is not 0. So,

$\operatorname{IsPrime}(n) = \operatorname{abs} \left( \operatorname{sgn} \left( \prod_{k=2}^{n} \prod_{l=2}^{n} (n-kl)\right) \right)$

where n is more than 1. However, the product is very large or very small where n is a prime so

$\operatorname{IsPrime}(n) = \operatorname{abs}\left( \prod_{k=2}^{n} \prod_{l=2}^{n} \operatorname{sgn} (n-kl)\right).$

Moreover, we need not calculate product up to k=l=n.

$\operatorname{IsPrime}(n) = \operatorname{abs}\left( \prod_{k=2}^{\lfloor\frac{n}{2}\rfloor } \prod_{l=2}^{\operatorname{min}(k,\lfloor\frac{n}{k}\rfloor)} \operatorname{sgn} (n-kl)\right).$

Wilson's theorem states that n is prime if and only if it divides $(n - 1)! + 1.$ To express this by an explicit formula, two intermediate functions are introduced:

$r(n) = \frac{(n - 1)! + 1}{n},$
$\operatorname{IsInteger}(x) = \begin{cases} 1 & x \text{ is an integer} \\ 0 & x \text{ is not an integer} \end{cases}$

Then Wilson's theorem says that

$\operatorname{IsPrime}(n) = \operatorname{IsInteger}\bigl(r(n)\bigr).$

This can be further specified by an explicit formula for IsInteger(x). Some options are:

$\operatorname{IsInteger}(x) = \lfloor x\rfloor + \lfloor -x \rfloor + 1$
$\operatorname{IsInteger}(x) = \left\lfloor \frac{\lfloor x \rfloor}{x} \right\rfloor$
$\operatorname{IsInteger}(x) = \lfloor \cos^2(\pi x) \rfloor$ : formula by C. P. Willans (Bowyer n.d.)

Then, for example, taking the first option gives a formula for IsPrime(n) using Wilson's theorem:

$\operatorname{IsPrime}(n) = \left\lfloor \frac{(n - 1)! + 1}{n} \right\rfloor + \left\lfloor -\frac{(n - 1)! + 1}{n} \right\rfloor + 1$

Not using the function IsInteger,

$\operatorname{IsPrime}(n) = \operatorname{abs}\left(\prod_{k=1}^{(n-1)!} \operatorname{sgn}((n-1)!+1-kn)\right).$

Once IsPrime(n) can be computed, the prime counting function $\pi(n)$ can as well, since by definition

$\pi(n) = \text{number of primes less than or equal to } n = \sum_{k = 1}^n \operatorname{IsPrime}(k).$

$\pi(n)$ can then compute a function testing whether a given integer n is the mth prime:

$\operatorname{IsNthPrime}(n,m) = \operatorname{IsPrime}(n) * \operatorname{IsZero}(\pi(n) - m) = \begin{cases} 1 & n \text{ is the } m^\text{th} \text{ prime} \\ 0 & \text{otherwise} \end{cases}$

The function IsZero(x) can likewise be expressed by a formula:

$\operatorname{IsZero}(n) = \left\lfloor {1 \over {1+|n|}}\right\rfloor,$

Finally, the IsNthPrime($n,m$) function can be used to produce a formula for the nth prime:

$p_n = \sum_{m = 1}^{2^n} m * \operatorname{IsNthPrime}(m,n).$

The upper bound 2n comes from Bertrand's postulate, which implies that there is a sequence of primes

$2 = p_1 < p_2 < \dots < p_n,$ where $p_{i + 1} < 2 p_i.$ Thus, $p_n < 2^n.$

Substituting the formulas above and applying Wilson's theorem gives a formula for $p_n$ involving the arithmetic operations and the floor function. Other such formulas are:

$p_n = 1 + \sum_{k=1}^{2^n} \left\lfloor \left\lfloor { n \over 1 + \pi(k) } \right\rfloor^{1 \over n} \right\rfloor.$

in which the following equality is important:

$\left\lfloor \left\lfloor { n \over 1 + \pi(k) } \right\rfloor^{1 \over n} \right\rfloor={\begin{cases} 1, & \text{if } \pi(k) \le n-1 \\ 0, & \text{if } \pi(k) > n-1 \end{cases}}$

and

$p_n = 1 + \sum_{k=1}^{2(\lfloor n \ln(n)\rfloor+1)} \left(1 - \left\lfloor{\pi(k) \over n} \right\rfloor\right)$

by Sebastián Martín-Ruiz and proved with Jonathan Sondow (Martin-Ruiz & Sondow 2002). A similar formula for $p_n$ was given earlier by Stephen Regimbal (Regimbal 1975).

## Recurrence relation

Another prime generator is defined by the recurrence relation

$a_n = a_{n-1} + \operatorname{gcd}(n,a_{n-1}), \quad a_1 = 7,$

where gcd(x, y) denotes the greatest common divisor of x and y. The sequence of differences an + 1an starts with 1, 1, 1, 5, 3, 1, 1, 1, 1, 11, 3, 1, 1 (sequence A132199 in OEIS). Rowland (2008) proved that this sequence contains only ones and prime numbers.