Notons p1, p2, … , pi, … la suite des nombres premiers. On calcule le plus grand entier k tel que σk = p1 + … + pk ≤ n. Pour cela, on peut, très simplement, additionner les nombres premiers successifs jusqu'à ce que la somme dépasse n. Cette méthode convient pour des valeurs de n jusqu'à environ 1020.
Nous donnons une méthode plus sophisiquée utilisant un algorithme de calcul de la somme des nombres premiers jusqu'à x dont le temps de calcul est O(x2/3/(log2 x)). La tables puiss10-35 donne les valeurs de pk et les temps de calcul, pour quelques valeurs de n, jusqu'à 1035.
Notons Nk = p1 p2 … pk, où k est l'entier calculé lors de la première étape. Quand n tend vers l'infini, les logarithmes de Nk et de h(n) sont équivalents à sqrt(n log n). Nk et h(n) sont donc des trè grands nombres. Par exemple, pour n=1010, h(n) = 502261/424129 Nk, et les écritures décimales de Nk et de h(n) sont toutes les deux composées de 217 826 chiffres. Pour n=1020, l'écriture décimale de h(n) nécessite plus de 67 milliards de chiffres.
Dans cette étape on calcule le rapport h(n)/Nk. Nous sommes incapables d'estimer le coût de cette étape. En pratique il est faible, négligeable devant le coût de la première étape. Jamais plus d'une seconde pour toutes les valeurs de n que nous avons considérées. Le fichier hnexemples.txt donne les valeurs de h(n)/n pour n=10a, 1 ≤ a ≤ 35.
Landau's function for one million billions, with and . preprint, February 2008. Let Sn denote the symmetric group with n letters, and g(n) the maximal order of an element of Sn. If the standard factorization of M into primes is M=q1a1 q2a2… qkak, we define l(M) to be q1a1 + q2a2 + … + qkak; one century ago, E. Landau proved that g(n)=maxl(M) ≤ n M and that, when n goes to infinity, log g(n) ~ sqrt(n log(n)). There exists a basic algorithm to compute g(n) for 1 ≤ n ≤ N; its running time is O(N3/2 / sqrt(log N)) and the needed memory is O(N); it allows computing g(n) up to, say, one million. We describe an algorithm to calculate g(n) for n up to 1015. The main idea is to use the so-called l-superchampion numbers. Similar numbers, the superior highly composite numbers, were introduced by S. Ramanujan to study large values of the divisor function tau(n)= which counts the divisors of n. A Maple program implementing the algorithm described in this paper is available from Jean-Louis Nicolas web page.
On note pi(x,k,j) le nombre des nombres premiers ≤ x et de la forme ak + j. Les suites des pi(10n, 4, 1) et pi(10n, 4, 3) sont les suites A091098 et A091099 dans l'encyclopédie de Sloane.
Voici une table des valeurs de pi(x, 4, 1) et pi(x, 4, 3), pour x = 10, 100, …, 1020. On pourra consulter l'article Counting primes in residue classes pour plus de détails.
La suite dont le nème élément est le nombre premier de rang 10n est la suite A006988 dans l'encyclopédie de Sloane. Tout programme qui calcule pi(x), le nombre des nombres premiers jusqu'à x, permet, pour le même coût, de calculer le neme nombre premier pour n inférieur à x/log x. La table 10n ème prime donne les 19 premiers termes de cette suite. Aujourd'hui (juin 2008), 19 est la plus grande valeur de n pour laquelle on connait le 10n ème nombre premier.