Пусть будет константой. Как мы можем с уверенностью построить псевдослучайный генератор, который обманывает конечные автоматы d- состояния?
Здесь, -state имеет конечные автоматы d узлов, начальный узел, набор узлов , представляющие принимают состояния, и две направленных ребер помечены 0, 1 , выходят из каждого узла. Он изменяет состояние естественным образом, так как читает входные данные. Для заданного find найдите f : { 0 , 1 } k → { 0 , 1 } n такое, что для любого конечного автомата d-состояния, вычисляющего некоторую функцию A ,
Здесь обозначает равномерное распределение по k переменным, и мы хотим, чтобы k было как можно меньше (например, log n ). Я думаю о том, что d порядка n , хотя мы также можем задать вопрос более широко (например, увеличится ли число требуемых битов с n ?).
Некоторый фон
Построение псевдослучайных генераторов важно для дерандомизации, но общая проблема (PRG для алгоритмов полиномиального времени) до сих пор оказалась слишком сложной. Тем не менее, был достигнут прогресс в PRG для расчета в ограниченном пространстве. Например, эта недавняя статья ( http://homes.cs.washington.edu/~anuprao/pubs/spaceFeb27.pdf ) дает оценку приблизительно для обычных программ разветвления с однократным чтением. Вопрос с общими одноразовыми ветвящимися программами остается открытым (с k = log n ), поэтому мне интересно, известен ли ответ на это упрощение. (Конечный автомат похож на разветвляющуюся программу с однократным чтением, где все слои одинаковы.)
Ответы:
источник
это, по-видимому, то же самое доказательство также приводит RJlipton в своем блоге «Гарантия на генератор Nisans» . доказательство, по-видимому, исходит из статьи. Насколько силен псевдослучайный генератор Нисана? Давид, Папаконстантину, Сидиропулос (2010). также обратите внимание на более глубокий вопрос, и лучшие оценки связаны с разделением классов по сложности:
источник