Pseudo-gerador de números aleatórios (PRNG)

Um gerador de números pseudo-aleatórios (PRNG) é um programa escrito para, e usado em, aplicações de probabilidade e estatística quando grandes quantidades de dígitos aleatórios são necessários. A maioria destes programas produz cadeias infinitas de números de um dígito, geralmente na base 10, conhecida como sistema decimal. Quando grandes amostras de números pseudo-aleatórios são tomadas, cada um dos 10 dígitos do conjunto {0,1,2,3,4,5,6,7,8,9} ocorre com igual frequência, mesmo que não estejam distribuídos uniformemente na sequência.

Muitos algoritmos foram desenvolvidos numa tentativa de produzir sequências verdadeiramente aleatórias de números, cadeias infinitas de dígitos em que é teoricamente impossível prever o próximo dígito na sequência com base nos dígitos até um determinado ponto. Mas a própria existência do algoritmo, não importa quão sofisticado, significa que o próximo dígito pode ser previsto! Isto deu origem ao termo pseudo-aleatória para tais cadeias de dígitos gerados por máquinas. Eles são equivalentes a sequências de números aleatórios para a maioria das aplicações, mas não são verdadeiramente aleatórios de acordo com a definição rigorosa.

Os dígitos nas expansões decimais de números irracionais tais como pi (a razão entre a circunferência de um círculo e seu diâmetro em um plano euclidiano), e (a base logarítmica natural), ou as raízes quadradas de números que não são quadrados perfeitos (tais como 2 1/2 ou 10 1/2 ) são acreditados por alguns matemáticos como sendo verdadeiramente aleatórios. Mas os computadores podem ser programados para expandir tais números para milhares, milhões, bilhões ou trilhões de casas decimais; sequências podem ser selecionadas que começam com dígitos distantes à direita do ponto decimal (radix), ou que usam cada segundo, terceiro, quarto, ou n º dígito. Contudo, mais uma vez, a existência de um algoritmo para determinar os dígitos em tais números é usada por alguns teóricos para argumentar que mesmo estas sequências de números de um único dígito são pseudo-aleatórios, e não verdadeiramente aleatórios. A questão torna-se então, Será o algoritmo exacto (ou seja, aleatório) até ao infinito, ou não? -- e porque ninguém pode responder a tal pergunta definitivamente porque é impossível viajar ao infinito e descobrir, a questão torna-se filosófica.