Генераторы псевдослучайных последовательностей

Пример 1

В процессе работы линейного конгруэнтного генератора псевдослучайных чисел (mod 16) последовательно получены числа 3,2,13,4,7,6,1. Числа совпадают с внутренним состоянием.

Предскажите следующее число последовательности.

Мы можем утверждать, что имеет место следующая система уравнений: \[3 a+c = 2 \mod 16\] \[2 a+c = 13 \mod 16\]

Эту систему уравнений несложно решить:

\[\begin{align} 6 a+2 c & = 4 \mod 16 \\ 6 a+3 c & = 3\cdot 13 \mod 16 = 7 \mod 16 \\ \end{align}\]

Тогда \[\begin{align} c & = 3 \mod 16 \\ a & = 5 \mod 16 \\ \end{align}\]

Тогда следующее число в последовательности \[s_{i+1} = as_i + c \mod 16\] \[s_{i+1} = 5\cdot1 + 3 \mod 16 = 8\]

Пример 2

В процессе работы инверсного конгруэнтного генератора псевдослучайных чисел (mod 11) последовательно получены числа 1,8,5,4,7,10. Числа совпадают с внутренним состоянием.

Предскажите следующее число последовательности.

Мы можем утверждать, что имеет место следующая система уравнений: \[a/1+c = 8 \mod 11\] \[a/8+c = 5 \mod 11\]

\[\begin{align} c & = 3 \mod 11 \\ a & = 5 \mod 11 \\ \end{align}\]

Тогда следующее число в последовательности \[s_{i+1} = a/s_i + c \mod 11\] \[s_{i+1} = 5/10 + 3 \mod 11 = 6+3\mod 11 = 9 \mod 11\]