for some positive constant a. Here, O(...) is the big O notation.
More precise estimates of are now known. For example, in 2002, Kevin Ford proved that[7]
Mossinghoff and Trudgian proved[8] an explicit upper bound for the difference between and :
for .
For values of that are not unreasonably large, is greater than . However, is known to change sign infinitely many times. For a discussion of this, see Skewes' number.
The Riemann hypothesis suggests that every such non-trivial zero lies along Re(s) = 1/2.
Table of π(x), x / log x, and li(x)
The table shows how the three functions π(x), x / log x and li(x) compare at powers of 10. See also,[3][11] and[12]
x
π(x)
π(x) − x / log x
li(x) − π(x)
x / π(x)
x / log x % Error
10
4
0
2
2.500
-8.57%
102
25
3
5
4.000
13.14%
103
168
23
10
5.952
13.83%
104
1,229
143
17
8.137
11.66%
105
9,592
906
38
10.425
9.45%
106
78,498
6,116
130
12.739
7.79%
107
664,579
44,158
339
15.047
6.64%
108
5,761,455
332,774
754
17.357
5.78%
109
50,847,534
2,592,592
1,701
19.667
5.10%
1010
455,052,511
20,758,029
3,104
21.975
4.56%
1011
4,118,054,813
169,923,159
11,588
24.283
4.13%
1012
37,607,912,018
1,416,705,193
38,263
26.590
3.77%
1013
346,065,536,839
11,992,858,452
108,971
28.896
3.47%
1014
3,204,941,750,802
102,838,308,636
314,890
31.202
3.21%
1015
29,844,570,422,669
891,604,962,452
1,052,619
33.507
2.99%
1016
279,238,341,033,925
7,804,289,844,393
3,214,632
35.812
2.79%
1017
2,623,557,157,654,233
68,883,734,693,928
7,956,589
38.116
2.63%
1018
24,739,954,287,740,860
612,483,070,893,536
21,949,555
40.420
2.48%
1019
234,057,667,276,344,607
5,481,624,169,369,961
99,877,775
42.725
2.34%
1020
2,220,819,602,560,918,840
49,347,193,044,659,702
222,744,644
45.028
2.22%
1021
21,127,269,486,018,731,928
446,579,871,578,168,707
597,394,254
47.332
2.11%
1022
201,467,286,689,315,906,290
4,060,704,006,019,620,994
1,932,355,208
49.636
2.02%
1023
1,925,320,391,606,803,968,923
37,083,513,766,578,631,309
7,250,186,216
51.939
1.93%
1024
18,435,599,767,349,200,867,866
339,996,354,713,708,049,069
17,146,907,278
54.243
1.84%
1025
176,846,309,399,143,769,411,680
3,128,516,637,843,038,351,228
55,160,980,939
56.546
1.77%
1026
1,699,246,750,872,437,141,327,603
28,883,358,936,853,188,823,261
155,891,678,121
58.850
1.70%
1027
16,352,460,426,841,680,446,427,399
267,479,615,610,131,274,163,365
508,666,658,006
61.153
1.64%
1028
157,589,269,275,973,410,412,739,598
2,484,097,167,669,186,251,622,127
1,427,745,660,374
63.456
1.58%
1029
1,520,698,109,714,272,166,094,258,063
23,130,930,737,541,725,917,951,446
4,551,193,622,464
65.759
1.52%
Graph showing ratio of the prime-counting function π(x) to two of its approximations, x/log x and Li(x). As x increases (note x axis is logarithmic), both ratios tend towards 1. The ratio for x/log x converges from above very slowly, while the ratio for Li(x) converges more quickly from below.
The value for π(1024) was originally computed by J. Buethe, J. Franke, A. Jost, and T. Kleinjung assuming the Riemann hypothesis.[13]
It was later verified unconditionally in a computation by D. J. Platt.[14]
The value for π(1025) is due to J. Buethe, J. Franke, A. Jost, and T. Kleinjung.[15]
The value for π(1026) was computed by D. B. Staple.[16] All other prior entries in this table were also verified as part of that work.
The value for 1027 was announced in 2015 by David Baugh and Kim Walisch.[17]
The value for 1028 was announced in 2020 by David Baugh and Kim Walisch.[18]
The value for 1029 was announced in 2022 by David Baugh and Kim Walisch.[19]
Algorithms for evaluating π(x)
A simple way to find , if is not too large, is to use the sieve of Eratosthenes to produce the primes less than or equal to and then to count them.
A more elaborate way of finding is due to Legendre (using the inclusion–exclusion principle): given , if are distinct prime numbers, then the number of integers less than or equal to which are divisible by no is
(where denotes the floor function). This number is therefore equal to
when the numbers are the prime numbers less than or equal to the square root of .
In a series of articles published between 1870 and 1885, Ernst Meissel described (and used) a practical combinatorial way of evaluating Let be the first primes and denote by the number of natural numbers not greater than which are divisible by none of the for any Then
Given a natural number if and if then
Using this approach, Meissel computed for equal to 5×105, 106, 107, and 108.
In 1959, Derrick Henry Lehmer extended and simplified Meissel's method. Define, for real and for natural numbers and as the number of numbers not greater than m with exactly k prime factors, all greater than Furthermore, set Then
where the sum actually has only finitely many nonzero terms. Let denote an integer such that and set Then and when Therefore,
The computation of can be obtained this way:
where the sum is over prime numbers.
On the other hand, the computation of can be done using the following rules:
Using his method and an IBM 701, Lehmer was able to compute the correct value of and missed the correct value of by 1.[20]
Further improvements to this method were made by Lagarias, Miller, Odlyzko, Deléglise, and Rivat.[21]
Other prime-counting functions
Other prime-counting functions are also used because they are more convenient to work with.
Riemann's prime-power counting function
Riemann's prime-power counting function is usually denoted as or It has jumps of at prime powers and it takes a value halfway between the two sides at the discontinuities of That added detail is used because the function may then be defined by an inverse Mellin transform.
Formally, we may define by
where the variable p in each sum ranges over all primes within the specified limits.
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.[23]
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 we have a more complicated formula
Riemann's explicit formula using the first 200 non-trivial zeros of the zeta function
Again, the formula is valid for x > 1, while ρ are the nontrivial zeros of the zeta function ordered according to their absolute value. The integral is equal to the series 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(ρ log x), where Ei is the analytic continuation of the exponential integral function from negative reals to the complex plane with branch cut along the positive reals.
is Riemann's R-function[24] and μ(n) is the Möbius function. The latter series for it is known as Gram series.[25][26] Because for all , this series converges for all positive x by comparison with the series for . The logarithm in the Gram series of the sum over the non-trivial zero contribution should be evaluated as and not .
Folkmar Bornemann proved,[27] when assuming the conjecture that all zeros of the Riemann zeta function are simple,[note 1] that
where runs over the non-trivial zeros of the Riemann zeta function and .
The sum over non-trivial zeta zeros in the formula for describes the fluctuations of while the remaining terms give the "smooth" part of prime-counting function,[28] so one can use
as a good estimator of for x > 1. In fact, since the second term approaches 0 as , while the amplitude of the "noisy" part is heuristically about estimating by alone is just as good, and fluctuations of the distribution of primes may be clearly represented with the function
Inequalities
Here are some useful inequalities for π(x).
for x ≥ 17.
The left inequality holds for x ≥ 17 and the right inequality holds for x > 1. The constant 1.25506 is to 5 decimal places, as has its maximum value at x = 113.[29]
^Mossinghoff, Michael J.; Trudgian, Timothy S. (2015). "Nonnegative trigonometric polynomials and a zero-free region for the Riemann zeta-function". J. Number Theory. 157: 329–349. arXiv:1410.3926. doi:10.1016/J.JNT.2015.05.010. S2CID117968965.
^Riesel, Hans (1994). Prime Numbers and Computer Methods for Factorization. Progress in Mathematics. Vol. 126 (2nd ed.). Birkhäuser. pp. 50–51. ISBN0-8176-3743-5.