You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
pls_393_p080_085_<strong>de</strong>lahaye.xp_mm_26_05 4/06/10 17:38 Page 83<br />
R e g a r d s<br />
consiste à trouver <strong>de</strong>s relations entre une<br />
somme a 1<br />
+ a 2<br />
+ ... + a n<br />
+ a n +1<br />
+ ... + a 2n<br />
et les <strong>de</strong>ux sous-sommes a 1<br />
+ a 2<br />
+ ... + a n<br />
et a n +1<br />
+ ... + a 2n<br />
. Ces relations, exploitées<br />
systématiquement en redécoupant en <strong>de</strong>ux<br />
les morceaux, limitent la complexité totale<br />
du <strong>calcul</strong> et ren<strong>de</strong>nt alors compétitives <strong>de</strong>s<br />
séries comme celle <strong>de</strong>s Chudnowski. Ce<br />
découpage en <strong>de</strong>ux récursif, classique en<br />
algorithmique, est au cœur <strong>de</strong>s meilleurs<br />
algorithmes <strong>de</strong> tri ou d’évaluation <strong>de</strong> x n<br />
quand n est grand. Il se peut que Y. Kanada<br />
ait lui aussi exploité la métho<strong>de</strong> du scindage<br />
binaire pour son record <strong>de</strong> 2002.<br />
Une secon<strong>de</strong> idée, peu utilisée jusquelà<br />
pour , a été associée au procédé <strong>de</strong><br />
découpage. Puisqu’on manipule <strong>de</strong>s fractions<br />
dont les tailles <strong>de</strong>viennent <strong>de</strong> plus en<br />
plus gran<strong>de</strong>s, les simplifier en cherchant le<br />
PGCD (plus grand commun diviseur) du numérateur<br />
et du dénominateur évite une augmentation<br />
trop forte <strong>de</strong> la taille <strong>de</strong>s entiers<br />
manipulés. Pendant le <strong>calcul</strong>, comme pour<br />
celui du PGCD, il se révèle intéressant <strong>de</strong> représenter<br />
certains entiers comme <strong>de</strong>s produits<br />
<strong>de</strong> facteurs premiers. Il faut alors décomposer<br />
les entiers à chaque étape. Il n’était pas<br />
évi<strong>de</strong>nt que cette décomposition au « coût »<br />
important soit efficace ; c’est cependant ce<br />
que <strong>de</strong>s tests ont montré.<br />
<strong>Le</strong>s divisions nécessaires, en <strong>par</strong>ticulier<br />
quand on simplifie les fractions,<br />
ont été effectuées avec un algorithme fondé<br />
sur la métho<strong>de</strong> inventée <strong>par</strong> Isaac Newton<br />
en 1669 et présentée dans son ouvrage<br />
De analysi per aequationes numero terminorum<br />
infinitas. Cette métho<strong>de</strong> ramène<br />
le <strong>calcul</strong> d’une division à un petit nombre<br />
<strong>de</strong> multiplications qu’on sait traiter <strong>de</strong><br />
manière efficace (bien plus que la métho<strong>de</strong><br />
indienne qu’on apprend à l’école primaire).<br />
Pour les multiplications, là encore F. <strong>Bellard</strong>,<br />
très bien informé <strong>de</strong> tous les progrès<br />
récents dans le domaine, a soigneusement<br />
choisi et organisé leurs <strong>calcul</strong>s. Selon la<br />
taille <strong>de</strong>s entiers concernés, une technique<br />
ou une autre est appliquée, dont celle à<br />
base <strong>de</strong> transformées <strong>de</strong> Fourier rapi<strong>de</strong>s<br />
que F. <strong>Bellard</strong> a reprogrammée et optimisée<br />
spécifiquement.<br />
Si, pour mener tous les <strong>calcul</strong>s exploitant<br />
la série <strong>de</strong>s frères Chudnowski, F. <strong>Bellard</strong> travaille<br />
en base 2, il veut le résultat en base 10.<br />
La conversion finale, contrairement à ce que<br />
l’on penserait, n’est guère plus facile que le<br />
<strong>calcul</strong> <strong>de</strong> lui-même. F. <strong>Bellard</strong> l’a menée<br />
avec un algorithme ajusté et perfectionné.<br />
Dans un <strong>calcul</strong> à l’extrême limite <strong>de</strong> ce<br />
qui est possible, chaque point est important.<br />
En <strong>par</strong>ticulier, il faut être attentif pour<br />
utiliser au mieux la mémoire disponible,<br />
ne jamais perdre d’espace, ne pas avoir à<br />
manipuler <strong>de</strong>s données trop gran<strong>de</strong>s et<br />
ne pas avoir à écrire trop sur les disques<br />
utilisés pour stocker le gros <strong>de</strong>s informations<br />
durant les opérations. Notons que<br />
l’espace <strong>de</strong> travail sur disque nécessaire<br />
n’a été que <strong>de</strong> 6,42 fois la taille du résultat<br />
final (1,12 téraoctet) et que la mémoire<br />
rapi<strong>de</strong> interne <strong>de</strong> l’ordinateur était <strong>de</strong><br />
6 gigaoctets, soit 70 fois moins que la taille<br />
du résultat.<br />
Contrôler chaque<br />
erreur possible<br />
Quand on manipule <strong>de</strong>s nombres <strong>de</strong> plusieurs<br />
milliards <strong>de</strong> chiffres, le risque d’erreurs<br />
<strong>de</strong> copie ou <strong>de</strong> <strong>calcul</strong> faux à un moment<br />
du déroulement <strong>de</strong> l’algorithme <strong>de</strong>vient<br />
important, car les matériels informatiques<br />
ne sont jamais <strong>par</strong>faits (et il subsiste <strong>de</strong>s<br />
erreurs possibles dues aux arrondis que certaines<br />
<strong>de</strong>s métho<strong>de</strong>s choisies <strong>par</strong> F. <strong>Bellard</strong><br />
engendrent). Divers systèmes <strong>de</strong> contrôle<br />
et <strong>de</strong> re<strong>calcul</strong> ont donc été mis en place pour<br />
vali<strong>de</strong>r chaque étape du processus.<br />
Pour contrôler le résultat final <strong>de</strong><br />
manière globale, un second <strong>calcul</strong>, utilisant<br />
une autre formule <strong>de</strong> série (cette fois due<br />
au mathématicien indien Srinivasa Ramanujan,<br />
1887-1920) qui donne huit chiffres<br />
<strong>de</strong> plus pour chaque terme, avait été entrepris<br />
<strong>par</strong> F. <strong>Bellard</strong>. Malheureusement, une<br />
défaillance technique grave d’un disque l’a<br />
rendu inutilisable. C’est pourquoi F. <strong>Bellard</strong><br />
a utilisé à la place le <strong>calcul</strong> d’un paquet<br />
<strong>de</strong> chiffres binaires placés à l’extrémité <strong>de</strong>s<br />
chiffres <strong>calcul</strong>és en base 2. La concordance<br />
<strong>de</strong> ces chiffres avec ceux du <strong>calcul</strong> massif<br />
<strong>par</strong> la formule <strong>de</strong>s Chudnowski ne garantit<br />
pas <strong>de</strong> manière absolue le résultat <strong>de</strong><br />
F. <strong>Bellard</strong>, mais rend très improbable la présence<br />
d’une erreur : si les <strong>de</strong>rniers chiffres<br />
4. Statistiques sur <br />
A. Sur les 2 699 999 990 000 chiffres<br />
<strong>calcul</strong>és, l’équilibre entre 0, 1, 2, ... et 9<br />
est presque <strong>par</strong>fait.<br />
i Nombre <strong>de</strong> i Pourcentage<br />
0 269999112082 9,9999671<br />
1 269999947599 9,9999981<br />
2 270000971073 10,0000360<br />
3 269999844559 9,9999942<br />
4 270000455307 10,0000169<br />
5 269999596957 9,9999851<br />
6 269999464860 9,9999802<br />
7 269999767215 9,9999914<br />
8 270001112056 10,0000412<br />
9 269999718292 9,9999896<br />
B. La plus longue répétition <strong>de</strong> 0 en<br />
comporte 12 et se termine en position<br />
1 755 524 129 973. Dans les décimales<br />
connues, seul le 8 présente une<br />
répétition <strong>de</strong> longueur 13 qui se termine<br />
en position 2 164 164 669 332.<br />
i Longueur Emplacement<br />
0 12 1755524129973<br />
1 12 1041032609981<br />
2 12 1479132847647<br />
3 12 1379574176590<br />
4 12 1379889220413<br />
5 12 1618922020656<br />
6 12 1221587715177<br />
7 12 368299898266<br />
8 13 2164164669332<br />
9 12 897831316556<br />
C. Dans les décimales <strong>de</strong> , le 0, le<br />
plus long à se montrer, n’ap<strong>par</strong>aît qu’en<br />
position 32 après la virgule. Pour les<br />
séquences <strong>de</strong> <strong>de</strong>ux chiffres, la<br />
séquence 68, la plus longue à ap<strong>par</strong>aître,<br />
vient en position 606. Ce type <strong>de</strong> <strong>calcul</strong>s<br />
vérifie que est un nombre normal<br />
(toutes les séquences <strong>de</strong> chiffres<br />
ap<strong>par</strong>aissent à la même fréquence), ce<br />
qui n’a pas encore été démontré.<br />
Séquence Emplacement<br />
1 0 32<br />
2 68 606<br />
3 483 8555<br />
4 6716 99849<br />
5 33394 1369564<br />
6 569540 14118312<br />
7 1075656 166100506<br />
8 36432643 1816743912<br />
9 172484538 22445207406<br />
10 5918289042 241641121048<br />
11 56377726040 2512258603207<br />
© Pour la Science - n° 393 - Juillet 2010 Logique & <strong>calcul</strong> [83