Prime-counting function

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

In mathematics, the prime-counting function is the function counting the number of prime numbers less than or equal to some real number x.[1][2] It is denoted by \scriptstyle\pi(x) (unrelated to the number π).

File:PrimePi.svg
The values of π(n) for the first 60 integers

History

Of great interest in number theory is the growth rate of the prime-counting function.[3][4] It was conjectured in the end of the 18th century by Gauss and by Legendre to be approximately

 x/\operatorname{ln}(x)\!

in the sense that

\lim_{x\rightarrow\infty}\frac{\pi(x)}{x/\operatorname{ln}(x)}=1.\!

This statement is the prime number theorem. An equivalent statement is

\lim_{x\rightarrow\infty}\pi(x) / \operatorname{li}(x)=1\!

where li is the logarithmic integral function. The prime number theorem was first proved in 1896 by Jacques Hadamard and by Charles de la Vallée Poussin independently, using properties of the Riemann zeta function introduced by Riemann in 1859.

More precise estimates of \pi(x)\! are now known; for example[citation needed]

\pi(x) = \operatorname{li}(x) + O\bigl(xe^{-\sqrt{\ln x}/15}\bigr)\!

where the O is big O notation. For most values of x we are interested in (i.e., when x is not unreasonably large) \operatorname{li}(x)\! is greater than \pi(x)\!, but infinitely often the opposite is true. For a discussion of this, see Skewes' number.

Proofs of the prime number theorem not using the zeta function or complex analysis were found around 1948 by Atle Selberg and by Paul Erdős (for the most part independently).[5]

Table of π(x), x / ln x, and li(x)

The table shows how the three functions π(x), x / ln x and li(x) compare at powers of 10. See also,[3][6][7] and[8]

x π(x) π(x) − x / ln x li(x) − π(x) x / π(x)
10 4 −0.3 2.2 2.500
102 25 3.3 5.1 4.000
103 168 23 10 5.952
104 1,229 143 17 8.137
105 9,592 906 38 10.425
106 78,498 6,116 130 12.740
107 664,579 44,158 339 15.047
108 5,761,455 332,774 754 17.357
109 50,847,534 2,592,592 1,701 19.667
1010 455,052,511 20,758,029 3,104 21.975
1011 4,118,054,813 169,923,159 11,588 24.283
1012 37,607,912,018 1,416,705,193 38,263 26.590
1013 346,065,536,839 11,992,858,452 108,971 28.896
1014 3,204,941,750,802 102,838,308,636 314,890 31.202
1015 29,844,570,422,669 891,604,962,452 1,052,619 33.507
1016 279,238,341,033,925 7,804,289,844,393 3,214,632 35.812
1017 2,623,557,157,654,233 68,883,734,693,281 7,956,589 38.116
1018 24,739,954,287,740,860 612,483,070,893,536 21,949,555 40.420
1019 234,057,667,276,344,607 5,481,624,169,369,960 99,877,775 42.725
1020 2,220,819,602,560,918,840 49,347,193,044,659,701 222,744,644 45.028
1021 21,127,269,486,018,731,928 446,579,871,578,168,707 597,394,254 47.332
1022 201,467,286,689,315,906,290 4,060,704,006,019,620,994 1,932,355,208 49.636
1023 1,925,320,391,606,803,968,923 37,083,513,766,578,631,309 7,250,186,216 51.939
1024 18,435,599,767,349,200,867,866 339,996,354,713,708,049,069 17,146,907,278 54.243
1025 176,846,309,399,143,769,411,680 3,128,516,637,843,038,351,228 55,160,980,939 56.546
1026 1,699,246,750,872,437,141,327,603 28,883,358,936,853,188,823,261 155,891,678,121 58.850
File:Prime number theorem ratio convergence.svg
Graph showing ratio of the prime-counting function π(x) to two of its approximations, x/ln x and Li(x). As x increases (note x axis is logarithmic), both ratios tend towards 1. The ratio for x/ln x converges from above very slowly, while the ratio for Li(x) converges more quickly from below.

In the On-Line Encyclopedia of Integer Sequences, the π(x) column is sequence OEISA006880, π(x) - x / ln x is sequence OEISA057835, and li(x) − π(x) is sequence OEISA057752.

The value for π(1024) was originally computed by J. Buethe, J. Franke, A. Jost, and T. Kleinjung assuming the Riemann hypothesis.[9] It was later verified unconditionally in a computation by D. J. Platt.[10] The value for π(1025) is due to J. Buethe, J. Franke, A. Jost, and T. Kleinjung.[11] The value for π(1026) was computed by D. B. Staple.[12] All other entries in this table were also verified as part of that work.

Algorithms for evaluating π(x)

A simple way to find \pi(x), if x is not too large, is to use the sieve of Eratosthenes to produce the primes less than or equal to x and then to count them.

A more elaborate way of finding \pi(x) is due to Legendre: given x, if p_1,p_2,\ldots,p_n are distinct prime numbers, then the number of integers less than or equal to x which are divisible by no p_i is

\lfloor x\rfloor - \sum_{i}\left\lfloor\frac{x}{p_i}\right\rfloor + \sum_{i<j}\left\lfloor\frac{x}{p_ip_j}\right\rfloor - \sum_{i<j<k}\left\lfloor\frac{x}{p_ip_jp_k}\right\rfloor + \cdots

(where \lfloor\cdots\rfloor denotes the floor function). This number is therefore equal to

\pi(x)-\pi\left(\sqrt{x}\right)+1

when the numbers p_1, p_2,\ldots,p_n are the prime numbers less than or equal to the square root of x.

In a series of articles published between 1870 and 1885, Ernst Meissel described (and used) a practical combinatorial way of evaluating \pi(x). Let p_1p_2,\ldots,p_n be the first n primes and denote by \Phi(m,n) the number of natural numbers not greater than m which are divisible by no p_i. Then

\Phi(m,n)=\Phi(m,n-1)-\Phi\left(\frac{m}{p_n},n-1\right)

Given a natural number m, if n=\pi\left(\sqrt[3]{m}\right) and if \mu=\pi\left(\sqrt{m}\right)-n, then

\pi(m)=\Phi(m,n)+n(\mu+1)+\frac{\mu^2-\mu}{2}-1-\sum_{k=1}^\mu\pi\left(\frac{m}{p_{n+k}}\right)

Using this approach, Meissel computed \pi(x), for x equal to 5×105, 106, 107, and 108.

In 1959, Derrick Henry Lehmer extended and simplified Meissel's method. Define, for real m and for natural numbers n and k, P_k(m,n) as the number of numbers not greater than m with exactly k prime factors, all greater than p_n. Furthermore, set P_0(m,n)=1. Then

\Phi(m,n)=\sum_{k=0}^{+\infty}P_k(m,n)

where the sum actually has only finitely many nonzero terms. Let y denote an integer such that \sqrt[3]{m}\le y\le\sqrt{m}, and set n=\pi(y). Then P_1(m,n)=\pi(m)-n and P_k(m,n)=0 when k ≥ 3. Therefore,

\pi(m)=\Phi(m,n)+n-1-P_2(m,n)

The computation of P_2(m,n) can be obtained this way:

P_2(m,n)=\sum_{y<p\le\sqrt{m}}\left(\pi\left(\frac mp\right)-\pi(p)+1\right)

On the other hand, the computation of \Phi(m,n) can be done using the following rules:

  1. \Phi(m,0)=\lfloor m\rfloor
  2. \Phi(m,b)=\Phi(m,b-1)-\Phi\left(\frac m{p_b},b-1\right)

Using his method and an IBM 701, Lehmer was able to compute \pi\left(10^{10}\right).

Further improvements to this method were made by Lagarias, Miller, Odlyzko, Deléglise and Rivat.[13]

Other prime-counting functions

Other prime-counting functions are also used because they are more convenient to work with. One is Riemann's prime-counting function, usually denoted as \Pi_0(x) or J_0(x). This has jumps of 1/n for prime powers pn, with it taking a value half-way between the two sides at discontinuities. That added detail is because then it may be defined by an inverse Mellin transform. Formally, we may define \Pi_0(x) by

\Pi_0(x) = \frac12 \bigg(\sum_{p^n < x} \frac1n\ + \sum_{p^n \le x} \frac1n\bigg)

where p is a prime.

We may also write

\Pi_0(x) = \sum_2^x \frac{\Lambda(n)}{\ln n} - \frac12 \frac{\Lambda(x)}{\ln x} = \sum_{n=1}^\infty \frac1n \pi_0(x^{1/n})

where Λ(n) is the von Mangoldt function and

\pi_0(x) = \lim_{\varepsilon \rightarrow 0}\frac{\pi(x-\varepsilon)+\pi(x+\varepsilon)}2.

The Möbius inversion formula then gives

\pi_{0}(x) = \sum_{n=1}^\infty \frac{\mu(n)}n \Pi_0(x^{1/n})

Knowing the relationship between log of the Riemann zeta function and the von Mangoldt function \Lambda, and using the Perron formula we have

\ln \zeta(s) = s \int_0^\infty \Pi_0(x) x^{-s-1}\,dx

The Chebyshev function weights primes or prime powers pn by ln(p):

\theta(x)=\sum_{p\le x}\ln p
\psi(x) = \sum_{p^n \le x} \ln p = \sum_{n=1}^\infty \theta(x^{1/n}) = \sum_{n\le x}\Lambda(n).

Riemann's prime-counting function has an ordinary generating function that can be expressed in terms of formal power series as:[citation needed]

\sum_{n=1}^\infty \Pi_0(n)x^n = \sum_{a=2}^\infty \frac{x^{a}}{1-x} - \frac{1}{2}\sum_{a=2}^\infty 
\sum_{b=2}^\infty \frac{x^{ab}}{1-x} + \frac{1}{3}\sum_{a=2}^\infty \sum_{b=2}^\infty \sum_{c=2}^\infty \frac{x^{abc}}{1
-x} - \frac{1}{4}\sum_{a=2}^\infty \sum_{b=2}^\infty \sum_{c=2}^\infty \sum_{d=2}^\infty \frac{x^{abcd}}{1-x} + 
\cdots

Formulas for prime-counting functions

Formulas for prime-counting functions come in two kinds: arithmetic formulas and analytic formulas. Analytic formulas for prime-counting were the first used to prove the prime number theorem. They stem from the work of Riemann and von Mangoldt, and are generally known as explicit formulas.[14]

We have the following expression for ψ:

\psi_0(x) = x - \sum_\rho \frac{x^\rho}{\rho} - \ln 2\pi - \frac12 \ln(1-x^{-2})

where

\psi_0(x) = \lim_{\varepsilon \rightarrow 0}\frac{\psi(x-\varepsilon)+\psi(x+\varepsilon)}2.

Here ρ are the zeros of the Riemann zeta function in the critical strip, where the real part of ρ is between zero and one. The formula is valid for values of x greater than one, which is the region of interest. The sum over the roots is conditionally convergent, and should be taken in order of increasing absolute value of the imaginary part. Note that the same sum over the trivial roots gives the last subtrahend in the formula.

For \scriptstyle\Pi_0(x) we have a more complicated formula

\Pi_0(x) = \operatorname{li}(x) - \sum_{\rho}\operatorname{li}(x^{\rho}) - \ln 2 + \int_x^\infty \frac{dt}{t(t^2-1) \ln t}.

Again, the formula is valid for x > 1, while ρ are the nontrivial zeros of the zeta function ordered according to their absolute value, and, again, the latter integral, taken with minus sign, is just the same sum, but over the trivial zeros. The first term li(x) is the usual logarithmic integral function; the expression li(xρ) in the second term should be considered as Ei(ρ ln x), where Ei is the analytic continuation of the exponential integral function from positive reals to the complex plane with branch cut along the negative reals.

Thus, Möbius inversion formula gives us[15]

\pi_{0}(x) = \operatorname{R}(x) - \sum_{\rho}\operatorname{R}(x^{\rho}) - \frac1{\ln x} + \frac1\pi \arctan \frac\pi{\ln x}

valid for x > 1, where

\operatorname{R}(x) = \sum_{n=1}^{\infty} \frac{ \mu (n)}{n} \operatorname{li}(x^{1/n}) = 1 + \sum_{k=1}^\infty \frac{(\ln x)^k}{k! k \zeta(k+1)}

is so-called Riemann's R-function.[16] The latter series for it is known as Gram series [17] and converges for all positive x.

File:PlotDelta.gif
Δ-function (red line) on log scale

The sum over non-trivial zeta zeros in the formula for \scriptstyle\pi_0(x) describes the fluctuations of \scriptstyle\pi_0(x), while the remaining terms give the "smooth" part of prime-counting function,[18] so one can use

\operatorname{R}(x) - \frac1{\ln x} + \frac1\pi \arctan \frac\pi{\ln x}

as the best estimator of \scriptstyle\pi(x) for x > 1.

The amplitude of the "noisy" part is heuristically about \scriptstyle\sqrt x/\ln x, so the fluctuations of the distribution of primes may be clearly represented with the Δ-function:

\Delta(x) = \left( \pi_0(x) - \operatorname{R}(x) + \frac1{\ln x} - \frac1{\pi}\arctan\frac{\pi}{\ln x} \right) \frac{\ln x}{\sqrt x}.

An extensive table of the values of Δ(x) is available.[7]

Inequalities

Here are some useful inequalities for π(x).

 
\frac {x} {\ln x} < \pi(x) < 1.25506  \frac {x} {\ln x}
\! for x ≥ 17.[19]

The left inequality holds for x ≥ 17 and the right inequality holds for x > 1.

An explanation of the constant 1.25506 is given at (sequence A209883 in OEIS).

Pierre Dusart proved in 2010:

 \frac {x} {\ln x - 1} < \pi(x) for x \ge 5393, and
 \pi(x) <  \frac {x} {\ln x - 1.1} for x \ge 60184.[20]

Here are some inequalities for the nth prime, pn.[21]

 
n (\ln (n \ln n) - 1) < p_n < n {\ln (n \ln n)}
\! for n ≥ 6.

The left inequality holds for n ≥ 1 and the right inequality holds for n ≥ 6.

An approximation for the nth prime number is

 p_n = n (\ln (n \ln n) - 1) + \frac {n (\ln \ln n - 2)} {\ln n} + 
O\left( \frac {n (\ln \ln n)^2} {(\ln n)^2}\right).

The Riemann hypothesis

The Riemann hypothesis is equivalent to a much tighter bound on the error in the estimate for \pi(x), and hence to a more regular distribution of prime numbers,

\pi(x) = \operatorname{li}(x) + O(\sqrt{x} \log{x}).

Specifically,[22]

|\pi(x) - \operatorname{li}(x)| < \frac{1}{8\pi} \sqrt{x} \, \log{x}, \qquad \text{for all } x \ge 2657.

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Weisstein, Eric W., "Prime Counting Function", MathWorld.
  3. 3.0 3.1 Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. 7.0 7.1 Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Weisstein, Eric W., "Riemann Prime Counting Function", MathWorld.
  17. Weisstein, Eric W., "Gram Series", MathWorld.
  18. Lua error in package.lua at line 80: module 'strict' not found.
  19. Lua error in package.lua at line 80: module 'strict' not found.
  20. Lua error in package.lua at line 80: module 'strict' not found.
  21. Lua error in package.lua at line 80: module 'strict' not found.
  22. Lua error in package.lua at line 80: module 'strict' not found.

External links