Dato che sono l'attuale detentore del record mondiale per il maggior numero di cifre di pi, aggiungerò i miei due centesimi :
A meno che tu non stia effettivamente stabilendo un nuovo record mondiale, la pratica comune è solo quella di verificare le cifre calcolate rispetto ai valori noti. Quindi è abbastanza semplice.
In effetti, ho una pagina web che elenca frammenti di cifre allo scopo di verificare i calcoli contro di loro: http://www.numberworld.org/digits/Pi/
Ma quando entri in un territorio da record mondiale, non c'è nulla da confrontare.
Storicamente, l'approccio standard per verificare che le cifre calcolate siano corrette è quello di ricalcolare le cifre utilizzando un secondo algoritmo. Quindi, se uno dei due calcoli non va a buon fine, le cifre alla fine non corrisponderanno.
Questo di solito fa più del doppio del tempo necessario (poiché il secondo algoritmo è generalmente più lento). Ma è l'unico modo per verificare le cifre calcolate una volta che hai vagato nel territorio inesplorato di cifre mai calcolate prima e un nuovo record mondiale.
Ai tempi in cui i supercomputer stavano stabilendo i record, venivano comunemente usati due diversi algoritmi AGM :
Questi sono entrambi O(N log(N)^2)
algoritmi che erano abbastanza facili da implementare.
Tuttavia, al giorno d'oggi, le cose sono un po 'diverse. Negli ultimi tre record del mondo, invece di eseguire due calcoli, abbiamo eseguito un solo calcolo usando la formula più veloce conosciuta (formula di Chudnovsky ):
Questo algoritmo è molto più difficile da implementare, ma è molto più veloce degli algoritmi AGM.
Quindi verifichiamo le cifre binarie utilizzando le formule BBP per l'estrazione delle cifre .
Questa formula consente di calcolare cifre binarie arbitrarie senza calcolare tutte le cifre precedenti. Quindi viene utilizzato per verificare le ultime cifre binarie calcolate. Pertanto è molto più veloce di un calcolo completo.
Il vantaggio di questo è:
- È necessario solo un calcolo costoso.
Lo svantaggio è:
- È necessaria un'implementazione della formula Bailey – Borwein – Plouffe (BBP).
- È necessario un passaggio aggiuntivo per verificare la conversione radix da binario a decimale.
Ho esaminato alcuni dettagli del perché la verifica delle ultime cifre implica che tutte le cifre sono corrette. Ma è facile vederlo poiché qualsiasi errore di calcolo si propagherà alle ultime cifre.
Ora quest'ultimo passaggio (verifica della conversione) è in realtà abbastanza importante. Uno dei precedenti detentori del record del mondo ci ha effettivamente invitato a questo perché, inizialmente, non ho fornito una descrizione sufficiente di come ha funzionato.
Quindi ho estratto questo frammento dal mio blog:
N = # of decimal digits desired
p = 64-bit prime number
Calcola A usando l'aritmetica di base 10 e B usando l'aritmetica binaria.
Se A = B
, quindi con "probabilità estremamente elevata", la conversione è corretta.
Per ulteriori informazioni, vedere il mio post sul blog Pi - 5 Trilioni di cifre .