Il determinismo è essenzialmente una funzione. Ricorda da Algebra che una funzione è una corrispondenza tra un dominio e un intervallo tale che ogni membro del dominio corrisponde esattamente a un membro dell'intervallo.
Quindi se f (x) = z, f (x)! = y a meno che y sia z. Questa è una funzione. Immagina JavaScript:
function Add(A, B) {
return A + B;
}
var addedNumber = Add(2,3);//returns 5
addedNumber = Add(2,3);//still 5
Non importa quante volte chiami Add(2,3)
tornerà sempre 5. In altre parole, Add () è una funzione deterministica.
I fattori esterni possono rendere Add comportarsi in modo non deterministico. Ad esempio, se si introduce il multithreading nell'equazione. L'input umano causa anche non determinismo.
Ora, è qui che le cose si fanno interessanti.
“Anyone who considers arithmetical methods of producing random digits is, of course, in a state of sin.”
Nota Von Neumann afferma, "metodi aritmetici per produrre [...]". Non si tratta di input umani, concorrenza, velocità del vento del campione lette da uno strumento preciso o altri modi non algoritmici di produrre un input casuale in una funzione deterministica.
Questo semplicemente afferma che una funzione o un sistema di funzioni non diventerà improvvisamente non deterministico. In altre parole, Aggiungi (2,3) non restituirà in qualche modo 6 o qualsiasi cosa diversa da 5 dati gli stessi input . Questo è impossibile.
L'autore delle citazioni fa un ulteriore passo in avanti.
The best we can hope for are pseudo-random numbers, a stream of numbers that appear as if they were generated randomly.
Il contesto è definito in precedenza come "su qualsiasi dispositivo deterministico". Potrei concludere la discussione qui. Ma, cosa succede se cambiamo il contesto introducendo un nuovo elemento nel sistema? Un elemento non deterministico aggiunto come input rende il sistema un sistema non deterministico. Sebbene, rimuovendo l'elemento non deterministico, ci si riduca a un sistema deterministico. Se possiamo in qualche modo tracciare o riprodurre in altro modo gli input, possiamo riprodurre un risultato. Ma questo intero paragrafo è tangente a quello che sta dicendo l'autore. Ricorda il contesto.
Si potrebbe discutere sul significato del non-determinismo. Ancora una volta, tangetenial. Ricorda il contesto.
Quindi ha ragione. Su qualsiasi dispositivo deterministico è impossibile per un sistema deterministico produrre un risultato casuale reale.