Generatore di numeri pseudocasuali (PRNG)

Un generatore di numeri pseudocasuali (PRNG) è un programma scritto e utilizzato in applicazioni di probabilità e statistiche quando sono necessarie grandi quantità di cifre casuali. La maggior parte di questi programmi produce stringhe infinite di numeri a una cifra, solitamente in base 10, noto come sistema decimale. Quando vengono presi grandi campioni di numeri pseudocasuali, ciascuna delle 10 cifre dell'insieme {0,1,2,3,4,5,6,7,8,9} si presenta con la stessa frequenza, anche se non lo sono distribuito uniformemente nella sequenza.

Molti algoritmi sono stati sviluppati nel tentativo di produrre sequenze di numeri veramente casuali, stringhe infinite di cifre in cui è teoricamente impossibile prevedere la cifra successiva nella sequenza in base alle cifre fino a un dato punto. Ma l'esistenza stessa dell'algoritmo, non importa quanto sofisticato, significa che la cifra successiva può essere prevista! Ciò ha dato origine al termine pseudo-casuale per tali stringhe di cifre generate dalla macchina. Sono equivalenti a sequenze di numeri casuali per la maggior parte delle applicazioni, ma non sono veramente casuali secondo la definizione rigorosa.

Le cifre nelle espansioni decimali dei numeri irrazionali s come pi (il rapporto tra la circonferenza di un cerchio e il suo diametro in un piano euclideo), e (la base del logaritmo naturale), o le radici quadrate dei numeri che non sono quadrati perfetti ( come 2 1/2 o 10 1/2) sono ritenuti da alcuni matematici veramente casuali. Ma i computer possono essere programmati per espandere tali numeri a migliaia, milioni, miliardi o trilioni di cifre decimali; È possibile selezionare sequenze che iniziano con cifre a destra del punto decimale (radice) o che utilizzano ogni seconda, terza, quarta o en-esima cifra. Tuttavia, ancora una volta, l'esistenza di un algoritmo per determinare le cifre in tali numeri viene utilizzata da alcuni teorici per sostenere che anche queste sequenze di numeri a una cifra sono pseudo-casuali e non veramente casuali. La domanda quindi diventa: l'algoritmo è accurato (cioè casuale) all'infinito o no? - e poiché nessuno può rispondere definitivamente a una domanda del genere perché è impossibile viaggiare verso l'infinito e scoprirlo, la questione diventa filosofica.