Может ли вероятностная машина Тьюринга решить проблему остановки?

29

Компьютер с бесконечным потоком действительно случайных битов является более мощным, чем компьютер без него. Вопрос: достаточно ли он силен, чтобы решить проблему остановки?

То есть может ли вероятностный компьютер определить, останавливается ли детерминированная программа?

Пример вероятностного компьютера, который делает что-то детерминированное, чего не может сделать: Рассмотрим небольшую программу (длиной менее килобайта), которая выводит строку с колмогоровской сложностью, превышающей гигабайт. Сложность Колмогоровастроки - это длина самой короткой детерминированной программы, создающей эту строку. Таким образом, по определению детерминированная программа не может создать строку, сложность которой превышает ее собственную длину. Однако при наличии бесконечного потока действительно случайных битов небольшая программа способна выполнить задачу с успехом 99,99999 ...%, просто отобразив, скажем, 10 миллиардов случайных битов и надеясь, что колмогоровская сложность этих битов достаточно высока , Следовательно, создание цепочки превосходящей колмогоровской сложности находится в пределах горизонта вероятности вероятностной программы, но совсем не возможно для детерминированной программы.

Тем не менее, я задаюсь вопросом, можно ли использовать действительно случайные биты, чтобы покончить с проблемой остановки. Например, алгоритм может случайным образом генерировать теоремы и доказывать / опровергать / отбрасывать их, пока он не узнает достаточно, чтобы доказать / опровергнуть, что данная детерминированная программа останавливается.

Джои Адамс
источник
3
@ downvoter: Это не должно было получить отрицательное голосование без комментария.
Дэйв Кларк
3
Что мешает детерминированной ТМ перечислять все случаи? Здесь проверка догадки - это проблема, а не угадывание самого себя. Также обратите внимание, что вы не можете сказать, что вы действительно более сильны, если вы создаете желаемый результат только с вероятностью . p<1
Рафаэль
1
«детерминированная программа не может создать строку, сложность которой превышает ее собственную длину». Достаточно того, чтобы какая-то другая детерминированная машина выдала тот же результат Обратите внимание, что детерминированные ТМ могут моделировать не только вероятностные, но даже недетерминированные ТМ (с произвольным числом чередований).
Каве
Вчера я собирался сказать - глядя на Kaveh et al. - это был слишком простой вопрос для этого сайта (тот же вопрос для NTM - основной результат в каждом первом курсе теории). Учитывая, что для формализации «вероятностной ТМ» потребовалось немало усилий, я рад, что не сделал этого.
Рафаэль
1
И посмотрите разъясняющие ответы на мой ранее связанный вопрос TCS: cstheory.stackexchange.com/questions/1263/…
Джозеф О'Рурк

Ответы:

22

редактировать: я только что понял, что некоторые вещи, которые я написал, были полной ерундой, извините за это. Теперь я изменил доказательство и сделал определение вероятностной машины, которую я использую, более точным.

Я не знаю, правильно ли я понимаю ваше определение вероятностной машины Тьюринга: это машина с дополнительной лентой, на которой записана бесконечная несжимаемая строка, и помимо этого она действует как детерминированная машина? Если мы исправим несжимаемую строку, класс, который мы получим, не будет интересным.

Я думаю, что мы можем определить вероятностную машину Тьюринга несколькими способами. Я буду использовать определение, которое кажется вполне естественным (и для которого работает мое доказательство;) Давайте определим вероятностную машину следующим образом: она получает дополнительную ленту, на которой записана какая-то бесконечная строка, мы говорим, что эта машина решает язык если каждый он останавливается и принимает с вероятностью , когда вероятность берется по этим дополнительным случайным строкам, а для каждого он останавливается и отклоняется с вероятностью .x L > 1LxL xL>1>12xL>12

Теперь мы покажем, что если существует такая вероятностная машина которая решает проблему остановки для детерминированных машин, мы могли бы использовать ее для построения детерминированной машины которая решает проблему остановки для детерминированных машин - и мы знаем, что такая машина не может существоватьHPH

Предположим, что такой существует. Мы можем построить детерминированную машину которая принимает в качестве входных данных вероятностную машину с некоторым входом , котораяM R xPMRx

  • останавливается и принимает, если и только если принимает (то есть останавливает и принимает более чем на половине случайных строк).x R xRxRx
  • останавливается и отклоняется тогда и только тогда, когда отклоняет (т.е. останавливает и отклоняет более чем на половине случайных строк).x R xRxRx
  • петли в противном случае

По сути, для всех имитирует на входе и на каждой строке из в качестве префикса строки на случайной лентеВ настоящее время:я 1 , 2 , . , , R x 0 , 1 i RMi1,2,...Rx0,1iR

  • если для префиксы длины останавливаются и принимаются, не пытаясь прочитать больше, чем битов со случайной ленты, останавливает и принимает яRяM>12i RiM
  • если для префиксы длины останавливаются и отклоняются, не пытаясь прочитать больше, чем битов со случайной ленты, останавливает и отклоняет яRяM>12i RiM
  • в противном случае запускает симуляцию с .i : = i + 1Mi:=i+1

Теперь мы должны убедить себя, что если принимает (отклоняет) с вероятностью , то для некоторых он будет принимать (отклонять) префиксы длина случайной строки без попыток прочитать больше, чем бит со случайной ленты. Это технически, но довольно просто - если мы примем иное, тогда вероятность принятия (отклонения) приближается к мере того, как уходит в бесконечность, поэтому для некоторых это должно быть .x p > 1Rx я>1p>12i яяр>1>12ii яяр>1p>12iip>12

Теперь мы просто определяем нашу детерминированную машину решающую проблему остановки (т.е. решаем, принимает ли данная детерминированная машина данное слово ) a как . Обратите внимание, что всегда останавливается, потому что выбор языка нашими вероятностными машинами был определен таким образом, что всегда происходит одно из этих двух:N x H ( N , x ) = M ( P ( N , x ) ) M ( P ( N , x ) )HNxH(N,x)=M(P(N,x))M(P(N,x))

  • машина останавливается и принимает более половины случайных строк
  • машина останавливается и отклоняет более половины случайных строк.
Каролина Солтыс
источник
Спасибо за разработку моего комментария! ;) Два технических комментария: В первом пункте вы имеете в виду ? В конце концов, вы имеете в виду ? S ( Q )>2i1S(Q)
Рафаэль
1
Обратите внимание, что если вам не требуется, чтобы P всегда останавливался, тривиально построить даже детерминированную машину Тьюринга P, которая принимает, если и только если данная детерминированная машина Тьюринга останавливается.
Цуёси Ито
Каково ваше предположение? Вы не можете отрицать вероятностную машину Тьюринга, если она не гарантированно остановится.
Цуёси Ито
Вероятность остановки берется за дополнительную строку И входные слова, или как?
М. Алагган
1
@ Мохаммад АЛАГГАН: Нет, эта часть верна, как написано: вероятность берется только за дополнительную строку (с указанием результатов бросков монеты). Поскольку мы не предполагаем какого-либо распределения вероятностей во входной строке, вероятность для входной строки не является четко определенной. Даже если распределение вероятностей во входной строке определено, высокая вероятность правильного ответа над входной строкой подразумевает только то, что алгоритм корректен для большинства входных данных, что отличается от обычного требования к алгоритму.
Цуёси Ито
14

Это зависит от того, что вы подразумеваете под вероятностным алгоритмом, определяющим некоторый предикат.

Существует тривиальный Вероятностный алгоритм Р такие , что для детерминированной машины Тьюринга М ,

  • P ( M ) принимает с ненулевой вероятностью, если M останавливается,
  • P ( M ) никогда не принимает, если M не останавливается, и
  • Р ( М ) останавливается с вероятностью 1 для каждого М .

Следовательно, вероятностный алгоритм P решает проблему остановки для детерминированных машин Тьюринга в этом смысле. (Здесь « M halts» означает « M halts на пустом входе».)

Однако, если вы ужесточаете требования любым разумным способом, маловероятно, что вы сможете решить проблему остановки для детерминированных машин Тьюринга. Например,

  • Если вам требуется, чтобы P ( M ) останавливался всегда, а не просто с вероятностью 1 , тогда ясно, что P можно моделировать детерминистическим алгоритмом. (См. Википедию для объяснения разницы между «всегда» и «с вероятностью 1.»)
  • Если вы устанавливаете строгие границы ошибки, требуя, чтобы P ( M ) остановился и дал правильный ответ с вероятностью, строго превышающей 1/2, для каждого M (то есть вам все равно , не остановится ли P ( M ) или не остановится и дайте неправильный ответ в остальных случаях), тогда P можно смоделировать с помощью детерминированного алгоритма, используя аргумент, указанный в ответе Каролины Солтыс .

Следовательно, вероятностный алгоритм не может решить проблему остановки для детерминированных машин Тьюринга в этих смыслах.

Цуёси Ито
источник
Простите мое невежество, но в чем разница между остановкой «всегда» и остановкой с вероятностью 1?
Роб Симмонс
1
@Rob: Я думаю, что это сложный вопрос. Рассмотрим простую вероятностную машину Тьюринга, которая просто несколько раз подбрасывает монету, пока результатом не станут головы. Эта машина Тьюринга останавливается за исключением случаев, когда все броски монет приводят к хвостам. Следовательно, он останавливается с вероятностью 1, но не всегда останавливается.
Цуёси Ито
Я нашел объяснение разницы между «всегда» и «с вероятностью 1» в Википедии , и я добавил ту же ссылку в ответ.
Цуёси Ито
Если вы позволите P (M) потерпеть неудачу, не останавливаясь, то я не знаю, как вы можете провести детерминистическое моделирование. Например, предположим, что вы выполняете детерминированное моделирование для некоторого набора строк префикса длины N, и через некоторое время <50% префиксов остановились и дали ответ. Как вы узнаете, нужно ли оставшимся префиксным строкам просто больше времени для возврата ответа или они все застряли в бесконечном цикле как часть условия сбоя? Если первый, вы продолжаете ждать. Если последнее, вы завершаете текущий раунд и снова запускаете все префиксы длины-N + 1.
Майк Батталья
Но это невозможно определить, потому что это проблема остановки! У нас нет возможности узнать, остановится ли машина Тьюринга на этих входах или нет.
Майк Батталья
12

PPP

Я думаю, что это был смысл комментария Рафаэля.

Марк
источник
7

ANA

де Леу К., Мур Е.Ф., Шеннон К.Е. и Шапиро Н. Вычислимость с помощью вероятностных машин. Автоматические исследования, с. 183–212. Летописи математических исследований, нет. 34. Издательство Принстонского университета, Принстон, Нью-Джерси, 1956.

Дж. Сакс, Степени неразрешимости, Издательство Принстонского университета, 1963.

Бьёрн Кьос-Хансен
источник