# Fonction de compte des nombres premiers

En mathématiques, la fonction de compte des nombres premiers est la fonction comptant le nombre de nombres premiers inférieurs ou égaux à un nombre réel x. Elle est notée π(x) (à ne pas confondre avec la constante π).
L’image ci-contre illustre la fonction π(n) pour les valeurs entières de la variable. Elle met en évidence les augmentations de 1 que la fonction subit à chaque fois que x est égal à un nombre premier.

## Définition

Soit $\mathbb {P}$ l'ensemble des nombres premiers et $x$ un nombre réel. Alors la fonction de comptant des nombres premiers inférieurs ou égaux à $x$ est définie comme
    $\pi (x):=\left|\{p\in \mathbb {P} \mid p\leq x\}\right|.$

## Historique

Depuis Euclide, il est connu qu'il existe des nombres premiers en quantité infinie. Pour affiner la connaissance de ces nombres, la théorie des nombres s'est attelée à en déterminer le taux de croissance. À la fin du XVIIIe siècle, Gauss et Legendre ont conjecturé que cette quantité était « proche de » x/ln(x), où ln est la fonction logarithme népérien.
Plus précisément,
* $\lim _{x\rightarrow +\infty }{\frac {\pi (x)}{x/\ln(x)}}=1$
Cette affirmation constitue le théorème des nombres premiers, prouvé indépendamment par Hadamard et La Vallée Poussin, en 1896, grâce à la fonction zêta de Riemann. Une assertion équivalente est :
$\lim _{x\rightarrow +\infty }{\frac {\pi (x)}{{\rm {li}}(x)}}=1,$
où la fonction logarithme intégral ${\rm {li}}(x)=\int _{0}^{x}{\frac {\mathrm {d} t}{\ln(t)}}$ est en fait une approximation plus précise.
Des preuves du théorème des nombres premiers n'utilisant pas l'analyse complexe furent proposées en 1948 par Atle Selberg et Paul Erdős.

## Algorithmes d'évaluation de π(x)

Une façon simple de calculer π(x), si x est un nombre petit, est d'utiliser le crible d'Ératosthène de manière à trouver tous les premiers inférieurs à x et ensuite de les compter.
Une manière plus élaborée pour trouver π(x) a été inventée par Legendre : étant donné un entier x, si p$_1$, p$_2$,…,p$_l$ sont des nombres premiers distincts, alors le nombre d'entiers inférieurs ou égaux à x qui ne sont divisibles par aucun p$_i$ est
    $x-\sum _{i}\left\lfloor {\frac {x}{p_{i}}}\right\rfloor +\sum _{i<j}\left\lfloor {\frac {x}{p_{i}p_{j}}}\right\rfloor -\sum _{i<j<k}\left\lfloor {\frac {x}{p_{i}p_{j}p_{k}}}\right\rfloor +\cdots$, où $\lfloor \cdot \rfloor$ désigne la fonction partie entière (cette formule est une application du principe d’inclusion-exclusion).
Ce nombre est donc égal à :$\pi (x)-\pi \left({\sqrt {x}}\right)+1\,$ où les nombres p$_1$, p$_2$,…,p$_l$ sont les nombres premiers inférieurs ou égaux à la racine carrée de x.
Dans une série d'articles publiés entre 1870 et 1885, Ernst Meissel décrivit (et utilisa) une manière combinatoire pratique pour évaluer π(x). Soit p$_1$, p$_2$,…,p$_n$ les premiers n nombres premiers et notons par Φ(m,n) le nombre de nombres naturels inférieurs à m qui ne sont divisibles par aucun $p_{i}\,$. Alors
    $\Phi (m,n)=\Phi (m,n-1)-\Phi \left(\left[{\frac {m}{p_{n}}}\right],n-1\right),\,$
Soit un nombre naturel donné m, si $n=\pi \left({\sqrt[{3}]{m}}\right)\,$ et si $\mu =\pi \left({\sqrt {m}}\right)-n\,$, alors
    $\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).\,$
En utilisant cette approche, Meissel calcula π(x), pour x égal à 5×10$^5$, 10$^6$, 10$^7$ et 10$^8$.
En 1959, Derrick Lehmer étendit et simplifia la méthode de Meissel. Définissons, pour un réel m et pour des nombres naturels n et k, P$_k$(m, n) comme le nombre de nombres inférieurs à m avec exactement k facteurs premiers, tous plus grands que p$_n$. De plus, fixons P$_0$(m, n) = 1. Alors
    $\Phi (m,n)=\sum _{k=0}^{+\infty }P_{k}(m,n),\,$
où la somme actuelle possède seulement de manière finie plusieurs termes différents de zéro. Soit y désignant un entier tel que ${\sqrt[{3}]{m}}\leq y\leq {\sqrt {m}}\,$, et fixons n = π(y). Alors $P_{1}(m,n)=\pi (m)-n\,$ et $P_{k}(m,n)=0\,$ lorsque k ≥ 3. Par conséquent
    $\pi (m)=\Phi (m,n)+n-1-P_{2}(m,n)\,$.
Le calcul de P$_2$(m, n) peut être obtenu de cette manière :
    $P_{2}(m,n)=\sum _{y<p\leq {\sqrt {m}}}\left(\pi \left({\frac {m}{p}}\right)-\pi (p)+1\right).\,$
D'un autre côté, le calcul de Φ(m,n) peut être fait en utilisant les règles suivantes :
* $\Phi (m,0)=\lfloor m\rfloor ;\,$
* $\Phi (m,b)=\Phi (m,b-1)-\Phi \left({\frac {m}{p_{b}}},b-1\right).\,$
En utilisant cette méthode et un IBM 701, Lehmer a été capable de calculer π(10$^{10}$). Cette méthode a ensuite été améliorée par Lagarias, Miller, Odlyzko, Deléglise, et Rivat.
Des résultats plus délicats de théorie analytique des nombres, et l'utilisation de machines de plus en plus puissantes, ont permis en 2010 le calcul exact de π(10$^{24}$) (en admettant l'hypothèse de Riemann).

## Autres fonctions de compte des nombres premiers

D'autres fonctions de compte des nombres premiers sont aussi utilisées car elles sont plus pratiques pour travailler. Une d'elles est la fonction de compte des nombres premiers de Riemann, notée Π(x) ou J(x). Celle-ci possède des sauts de 1/n pour les puissances de nombres premiers p$^n$, qui prennent une valeur à mi-chemin entre les deux côtés des discontinuités. Elle peut être aussi définie par une transformation de Mellin inverse. Formellement, nous pouvons définir J par
    $J(x)={\frac {1}{2}}\left(\sum _{p^{n}<x}{\frac {1}{n}}\ +\sum _{p^{n}\leq x}{\frac {1}{n}}\right)$
où p est un nombre premier.
Nous pouvons aussi écrire
    $J(x)=\sum _{2}^{x}{\frac {\Lambda (n)}{\ln(n)}}-{\frac {\Lambda (x)}{2\ln(x)}}=\sum _{n=1}^{\infty }{\frac {\pi _{0}(x^{1/n})}{n}}$
où Λ est la fonction de von Mangoldt et
$\pi _{0}(x)=\lim _{\varepsilon \to 0}{\frac {\pi (x-\varepsilon )+\pi (x+\varepsilon )}{2}}$
et ainsi (par inversion de Möbius),
$\pi _{0}(x)=\sum _{n=1}^{\infty }{\frac {\mu (n)J(x^{1/n})}{n}}$.
En connaissant la relation entre le logarithme de la fonction zeta de Riemann et la fonction Λ, et la formule de Perron, nous avons pour Re(s)>1:
    $\ln(\zeta (s))=s\int _{0}^{\infty }J(x)x^{-s-1}~{\rm {d}}x$
La fonction de Tchebychev pondère les nombres premiers ou les puissances de nombres premiers p$^n$ par ln p :
    $\theta (x)=\sum _{p\leq x}\ln p,$
    $\psi (x)=\sum _{p^{n}\leq x}\ln p=\sum _{n=1}^{\infty }\theta (x^{1/n})=\sum _{n\leq x}\Lambda (n).$

## Inégalités

Ci-dessous se trouvent quelques inégalités pour π(x).
Pour tout réel x ≥ 17 (et tout entier x ≥ 11), et même pour x > 1 en ce qui concerne la majoration
    ${\frac {x}{\ln x}}<\pi (x)<1,25506\ {\frac {x}{\ln x}}$.
Pour x ≥ 67, et même pour x > e$^{3/2}$ en ce qui concerne la majoration
    ${\frac {x}{\ln x-{1 \over 2}}}<\pi (x)<{\frac {x}{\ln x-{3 \over 2}}}$.
D'autres inégalités fournissent des approximations du n-ième nombre premier.

## L'hypothèse de Riemann

L'hypothèse de Riemann équivaut à une majoration beaucoup plus serrée de l'erreur dans l'approximation de π(x), donc à une distribution plus régulière des nombres premiers :
$\pi (x)={\rm {li}}(x)+O\left({\sqrt {x}}\ln(x)\right).$

## Formules pour les fonctions de compte des nombres premiers

Celles-ci sont de deux sortes, les formules arithmétiques et les formules analytiques. Ces dernières sont celles qui nous permettent de prouver le théorème des nombres premiers. Elles proviennent des travaux de Riemann et de von Mangoldt, et sont généralement connues comme formules explicites pour les fonctions L (en).
Nous avons l'expression suivante pour $\psi _{0}(x)=\lim _{\varepsilon \to 0}{\frac {\psi (x-\varepsilon )+\psi (x+\varepsilon )}{2}}~:$
    $\psi _{0}(x)=x-\sum _{\rho }{\frac {x^{\rho }}{\rho }}-\ln 2\pi -{\frac {1}{2}}\ln(1-x^{-2}).$
Ici, les ρ sont les zéros de la fonction zêta de Riemann dans la bande critique, où la partie réelle de ρ est comprise entre 0 et 1. La formule est valide pour les valeurs de x plus grandes que 1, qui est la région qui nous intéresse, et la somme des racines est convergente sous conditions, et devrait être prise en ordre croissant des valeurs absolues des parties imaginaires.
Pour J, nous avons une formule plus compliquée :
    $J(x)=\operatorname {li} (x)-\sum _{\rho }\operatorname {li} (x^{\rho })-\ln 2+\int _{x}^{\infty }{\frac {{\rm {d}}t}{t(t^{2}-1)\ln t}}.$
De nouveau, la formule est valide pour x > 1, et ρ représente les zéros non triviaux de la fonction zêta ordonnés en accord avec leurs valeurs absolues. Le premier terme li(x) est le logarithme intégral habituel ; néanmoins, il est moins facile de décrire ce que représente li dans les autres termes. La meilleure manière de concevoir cela est de considérer l'expression li(x$^ρ$) comme une abréviation de Ei(ρ ln(x)), où Ei est le prolongement analytique de la fonction exponentielle intégrale à partir des réels positifs vers le plan complexe muni d'une coupure le long des réels négatifs.