Я хочу знать, помогает ли неравномерность вычислительным функциям на практике. Легко показать, что в есть функции, возьмем любую невычислимую функцию и рассмотрим язык { }, который явно имеет простые неоднородные схемы , но не вычисляется равномерно, но это не тот тип функций, который меня интересует.f 0 f ( n ) : n ∈ ω
Есть ли функция, которую мы знаем, что она может быть вычислена неравномерно, но мы не знаем, может ли она быть вычислена равномерно (или хотя бы доказательство того, что она не может быть вычислена равномерно, не очевидно)?
Как можно использовать неоднородность схем для вычисления функций, которые, как известно, не могут быть вычислены равномерно (с почти одинаковым количеством ресурсов)?
Пожалуйста, обратите внимание, что я не хочу патологических функций, таких как невычислимые, упомянутые выше, я хочу естественные функции, которые люди действительно интересуют вычислениями, и вполне вероятно, что они могут или могли бы быть вычислены равномерно.
Редактировать: я знаю, что . Поэтому ответ, который не является результатом дерандомизации, для меня более интересен.
Редактировать 2: Как Андрас Саламон и Цуёси Ито в своих ответах сказали: , и в есть интересные проблемы, о которых неизвестно , что они есть в , поэтому формально они ответили на мои вопросы, но это не помогает с тем, что меня действительно интересует, поскольку причина, по которой они находятся в заключается в возможности жесткого кодирования разреженного языка в схему. Не редкий язык был бы более интересным.S р R сек е Р Р / р о л у
Ответы:
Я не знаю, удовлетворяет ли это вашим требованиям, но в блоге Билла Гасарча в июле 2010 года спрашивается о языках в SPARSE ∩NP, которых, как считается, нет в P, приводя пример из теории Рэмси. Любые такие языки принадлежат (P / poly) ∩NP.
В связи с этим для любого языка L ∈NP язык T L = {1 n : L содержит некоторую строку длины n } в TALLY ∩NP ⊆ SPARSE∩NP ⊆ (P / poly) ∩NP. В зависимости от выбора языка L , T L может не иметь явной причины принадлежать к P.
источник
Изящно редкая формулировка Цуёси Ито в другом ответе прямо не говорит об этом, но, возможно, стоит указать: любой разреженный язык написан на P / poly. Тогда также любой язык подсчета находится в P / poly (так как каждый язык подсчета редок).
Таким образом, один из способов найти «естественные» языки в P / poly, но не в P, - это поиск «жестких» разреженных языков. Как вы указали, «самыми трудными» являются неразрешимые, когда они кодируются разреженным способом, например, в унарном. В более общем случае, унарно-кодированная версия любого языка вне EXP будет тогда за пределами P. (Если нет, то рассмотрим машину Тьюринга с экспоненциальным временем, которая генерирует унарное кодирование, составленную из машины, которая во времени решает результирующий унар-кодированный язык это полиномиально в унарной кодировке. Это экспоненциально по размеру исходного экземпляра. Общая машина затем работает за экспоненциальное время.) Некоторый удобный язык с 2-EXP-завершением может тогда подойти вам как «естественная» проблема.
Обратите внимание, что редкий теоретико-логический язык Билла Гасарха, похоже, попадает в категорию языков, созданных путем разбора жесткого языка. Если один кодирует экземпляр как тройку двоичных чисел вместо двух одинарных и одного двоичного, то раскраска больше не будет иметь полиномиальный размер, поэтому язык явно не в NP.
источник
Это больше похоже на комментарий в ответ на пересмотренный вопрос (редакция 3), чем на ответ, но он слишком длинный для комментария.
Простое исключение разреженных языков недостаточно для исключения таких языков, как { x ∈ {0,1} * : | x | ∈ S } вместо {1 n : n ∈ S }, где S - бесконечное подмножество {0, 1, 2,…}. Я хотел бы отметить, что может быть трудно провести различие между случаем, когда язык принадлежит P / poly, потому что он «по существу редок» (такой как {1 n : n ∈ S } и { x : | x | ∈ S}) и случай, когда язык принадлежит P / poly по другим причинам. Проблема здесь, очевидно, состоит в том, как определить термин «по существу разреженный».
Возможно, вы захотите определить «существенную разреженность» следующим образом: язык по существу редок, если его сводить к разреженному языку. Однако необходимо соблюдать осторожность, потому что если в этом определении вы используете сводимость Тьюринга за полиномиальное время, определение эквивалентно членству в P / poly!
Таким образом, очевидная вещь, которую стоит попробовать - это использовать многозначную сводимость за полиномиальное время. Я не знаю, эквивалентно ли это членству в P / poly, не говоря уже о том, содержит ли P / poly какой-либо естественный язык, который в этом смысле существенно не редок.
источник