Como soy el actual poseedor del récord mundial de la mayoría de los dígitos de pi, agregaré mis dos centavos :
A menos que esté estableciendo un nuevo récord mundial, la práctica común es verificar los dígitos calculados con los valores conocidos. Entonces eso es bastante simple.
De hecho, tengo una página web que enumera fragmentos de dígitos con el fin de verificar los cálculos en su contra: http://www.numberworld.org/digits/Pi/
Pero cuando entras en territorio de récord mundial, no hay nada con lo que comparar.
Históricamente, el enfoque estándar para verificar que los dígitos calculados son correctos es recalcular los dígitos usando un segundo algoritmo. Entonces, si cualquiera de los cálculos falla, los dígitos al final no coincidirán.
Esto suele hacer más del doble de la cantidad de tiempo necesaria (ya que el segundo algoritmo suele ser más lento). Pero es la única forma de verificar los dígitos calculados una vez que te has adentrado en el territorio desconocido de dígitos nunca antes calculados y un nuevo récord mundial.
En los días en que las supercomputadoras establecían los registros, se usaban comúnmente dos algoritmos AGM diferentes :
Ambos son O(N log(N)^2)
algoritmos que fueron bastante fáciles de implementar.
Sin embargo, hoy en día, las cosas son un poco diferentes. En los últimos tres récords mundiales, en lugar de realizar dos cálculos, realizamos solo un cálculo utilizando la fórmula más rápida conocida ( Fórmula Chudnovsky ):
Este algoritmo es mucho más difícil de implementar, pero es mucho más rápido que los algoritmos AGM.
Luego verificamos los dígitos binarios usando las fórmulas BBP para la extracción de dígitos .
Esta fórmula le permite calcular dígitos binarios arbitrarios sin calcular todos los dígitos anteriores. Por lo tanto, se utiliza para verificar los últimos dígitos binarios calculados. Por lo tanto, es mucho más rápido que un cálculo completo.
La ventaja de esto es:
- Solo se necesita un cálculo costoso.
La desventaja es:
- Se necesita una implementación de la fórmula Bailey – Borwein – Plouffe (BBP).
- Se necesita un paso adicional para verificar la conversión de radix de binario a decimal.
He pasado por alto algunos detalles de por qué verificar los últimos dígitos implica que todos los dígitos son correctos. Pero es fácil ver esto, ya que cualquier error de cálculo se propagará a los últimos dígitos.
Ahora este último paso (verificar la conversión) es bastante importante. Uno de los poseedores del récord mundial anterior nos llamó la atención sobre esto porque, inicialmente, no di una descripción suficiente de cómo funcionaba.
Así que saqué este fragmento de mi blog:
N = # of decimal digits desired
p = 64-bit prime number
Calcule A usando aritmética de base 10 y B usando aritmética binaria.
Si A = B
, entonces con "probabilidad extremadamente alta", la conversión es correcta.
Para leer más, vea la publicación de mi blog Pi - 5 Trillion Digits .