Comme je suis l'actuel détenteur du record du monde du plus grand nombre de chiffres de pi, je vais ajouter mon deux cents :
À moins que vous n'établissiez un nouveau record du monde, la pratique courante consiste simplement à vérifier les chiffres calculés par rapport aux valeurs connues. C'est donc assez simple.
En fait, j'ai une page web qui répertorie des extraits de chiffres dans le but de vérifier les calculs effectués à partir de ceux-ci : http://www.numberworld.org/digits/Pi/
Mais quand on entre dans le domaine des records du monde, il n'y a rien à quoi se comparer.
Historiquement, l'approche standard pour vérifier que les chiffres calculés sont corrects consiste à recalculer les chiffres à l'aide d'un second algorithme. Ainsi, si l'un des deux calculs échoue, les chiffres obtenus à la fin ne correspondront pas.
Cela fait généralement plus que doubler le temps nécessaire (puisque le deuxième algorithme est généralement plus lent). Mais c'est le seul moyen de vérifier les chiffres calculés une fois que vous vous êtes aventuré sur le territoire inexploré des chiffres jamais calculés auparavant et d'un nouveau record mondial.
À l'époque où les superordinateurs établissaient des records, deux différents Algorithmes de l'AGA étaient couramment utilisés :
Ce sont à la fois O(N log(N)^2)
des algorithmes qui étaient assez faciles à mettre en œuvre.
Cependant, de nos jours, les choses sont un peu différentes. Dans les trois derniers records du monde, au lieu d'effectuer deux calculs, nous avons effectué un seul calcul en utilisant la formule connue la plus rapide ( Formule de Chudnovsky ) :
Cet algorithme est beaucoup plus difficile à mettre en œuvre, mais il est beaucoup plus rapide que les algorithmes AGM.
Ensuite, nous vérifions les chiffres binaires à l'aide de la fonction Formules BBP pour l'extraction des chiffres .
Cette formule vous permet de calculer des chiffres binaires arbitraires. sin en calculant tous les chiffres qui le précèdent. Il est donc utilisé pour vérifier les derniers chiffres binaires calculés. Il est donc beaucoup plus rapide qu'un calcul complet.
L'avantage de cette méthode est le suivant :
- Un seul calcul coûteux est nécessaire.
L'inconvénient est que :
- Une mise en œuvre de la Bailey-Borwein-Plouffe (BBP) est nécessaire.
- Une étape supplémentaire est nécessaire pour vérifier la conversion du radix de binaire en décimal.
J'ai passé sous silence certains détails expliquant pourquoi la vérification des derniers chiffres implique que tous les chiffres sont corrects. Mais il est facile de s'en rendre compte puisque toute erreur de calcul se propage aux derniers chiffres.
Cette dernière étape (vérification de la conversion) est en fait assez importante. L'un des précédents détenteurs du record du monde nous a en fait appelé sur ce sujet car, au départ, je n'ai pas donné une description suffisante de son fonctionnement.
J'ai donc tiré cet extrait de mon blog :
N = # of decimal digits desired
p = 64-bit prime number
Calculez A en utilisant l'arithmétique en base 10 et B en utilisant l'arithmétique binaire.
Si A = B
alors, avec une "probabilité extrêmement élevée", la conversion est correcte.
Pour en savoir plus, consultez mon article de blog Pi - 5 trillions de chiffres .
20 votes
Il s'agit plutôt d'un problème mathématique. Les bons algorithmes donnent également une estimation de l'erreur.
4 votes
La valeur de pi est disponible littéralement partout. Utilisez plusieurs sources qui correspondent pour être sûr que c'est exact. J'ai vu une fois un site web "1000 chiffres de pi" qui était complètement faux.
3 votes
Utilisez le Algorithme de l'embout . Après l'étape
n
l'erreur sera inférieure à 1/16^n. L'article original contient une preuve de la raison pour laquelle cela converge vers pi .37 votes
Comparer avec pi ?
55 votes
@chris : "Littéralement partout" ?
3 votes
@LightnessRacesinOrbit, Donc j'ai un peu exagéré. Pour ce que je voulais dire, regardez ceci . C'est fou le nombre de sites différents qui présentent les chiffres de pi, et si vous ne pouvez compter sur aucun d'entre eux, vous savez qu'il est temps de trouver la réponse de Mysticial. Bien sûr, le site de Mysticial est assez fiable ;)
3 votes
@Mr.Mindor - Il n'y a pas besoin d'obscurcir la question, tout comme il n'y a pas besoin d'avoir peur des fractions.
33 votes
Je peux vérifier pour vous jusqu'à 3.141592653589793238462643383279502, au-delà, pourquoi avez-vous besoin d'un si grand nombre de chiffres ? (C'est quelque chose comme une précision de niveau atomique avec un cercle de la taille de l'univers).
1 votes
@chris "un petit peu"... hmm... 25.270.000.000 de résultats vs 1 950 000 résultats .
2 votes
Cela semble être un problème plus philosophique que mathématique. Comme vous l'avez dit, cette question peut s'appliquer à n'importe quel algorithme, mais elle est encore plus générale que cela. Comment pouvons-nous connaître que tout ce que nous croyons est vrai ? La méthode scientifique ne prouve rien au sens mathématique du terme, elle fournit simplement une confirmation qui renforce la croyance. Et même les preuves mathématiques dépendent de la vérité des axiomes du système et de l'algèbre logique. Lisez GEB pour voir comment ceci est une reductio ad infinitum.
67 votes
Pourquoi ne pas diviser par pi et vérifier si le résultat est égal à 1 ? (je plaisante)
0 votes
@AJHenderson L'IP de plus haute précision peut être utilisé à des fins mathématiques.
1 votes
@AJHenderson, trouver un très grand nombre de chiffres de pi est une méthode standard pour tester les nouveaux superordinateurs.
3 votes
@user1073106 - Merci pour l'info. Je n'avais pas l'intention de dire qu'il n'y avait pas de raisons légitimes de calculer plus de chiffres de pi. Je suis tout à fait d'accord pour le faire simplement pour voir jusqu'où nous pouvons aller et comme test de référence. Je sais juste qu'un grand nombre de personnes qui veulent avoir la possibilité d'aller plus loin pour la précision ne comprennent pas que le niveau de précision qui est pratiquement nécessaire peut être mémorisé. Sur la base de la discussion, je ne pense pas que ce soit le cas ici, mais je voulais noter le fait que nous parlons de facteur "plaisir/défi" plutôt que d'utilité pratique (autre que l'utilisation pratique du défi).
3 votes
Une vérification très facile consiste à évaluer votre algorithme jusqu'à 768 décimales (ne l'arrondissez pas). Les chiffres corrects dans ce voisinage sont : ...34999999837... C'est ce qu'on appelle le point de Feynman. Il est très facile à repérer si votre programme n'affiche pas cette chaîne de neuf. 768 est une précision assez élevée, de sorte qu'une erreur potentielle a largement le temps de s'accumuler lorsque vous y arrivez.