Comments 14
Несложно написать простейшую программу, которая проверяет системный random, собственно что я когда-то и сделал. Чем больше запусков, тем ближе количество решек к количеству орлов. Но если к примеру взять не только количество комбинаций из одного символа, но и из нескольких, то есть:
Однобуквенные:
1) а
2) б
Двубуквенные:
1) аа
2) аб
3) ба
4) бб
И так далее, то по каждой из таких категорий у меня получилось верно следующее:
пусть для n-буквенной категории А — количество выпавших аааа… аааа (всего n букв), а С — среднее количество выпадений каждой из 2^n комбинаций. Тогда чем выше количество запусков, тем меньше по модулю (A — C) / C, но тем выше A — C само по себе. Иначе говоря, точность увеличивается вовсе нелинейно, а куда медленнее. И это конечно грустно, что сейчас ваш смартфон и компьютер неспособен давать более менее случайные числа.
Быть может, квантовый компьютер не только сможет это делать более "рандомно", но и личные компьютеры смогут скачивать следующую случайную последовательность с некоторого централизованного сервера.
Если в ваш алгоритм вбить «aa,ab,ba,bb,aa,ab,ba,bb,...» — ваша проверка даст ответ — случайный, хотя совершенно не случайный
И это конечно грустно, что сейчас ваш смартфон и компьютер неспособен давать более менее случайные числа.
Почему грустно? Если у вас есть генератор псевдослучайных чисел, который выдаёт случайные (с точки зрения статистического анализа) последовательности, при этом вы не в состоянии предсказать что будет дальше (даже зная всю предыдущую последовательность и алгоритм) — то с практической точки разницы между «настоящими» и «псевдо» нет — псевдо для наблюдателя выглядит ровно также как и настоящие случайные числа.
Собственно, всё симметричное шифрование на этом построено — есть ключ (который используется для получения начального состояния), есть меняющееся состояние, есть генератор псевдослучайных байт которые xor'ятся с открытым текстом — и многие из нормальных алгоритмов даже квантовым компутерам будут не по зубам (например, AES-256), по крайней мере в более-менее обозримом (и даже слегка необозримом) будущем.
Задается одна часть клешни в виде n-битного числа, в которой мы знаем какая позиция относится к «зубу/выемки», так как клешня должна цеплять. Например
х = 10000010001
И алгоритм, для квантового компьютера, который в суперпозицию ставит другую часть клешни:
у = 10000000001
После того как приходит запрос на получение Z, то исходные части клешни свертываются до одной из частей. И мы эту часть можем получить.
И определяя какое значение стоит на позиции «зуб/выемка» определяем случайное число.
Тогда высказывание:
«С количеством кубитов равным 50 или 70 она не будет практичной», — сказал Ааронсон
Можно интерпретировать, что у них нет рабочего алгоритма по которому определяется номер позиции «зуб/выемка» для количества кубитов более 50.
Вот это уже интересно почему
Как превратить квантовый компьютер в идеальный генератор случайных чисел