Полиномиальная иерархия - Polynomial hierarchy

В теория сложности вычислений, то полиномиальная иерархия (иногда называют полиномиальная иерархия) это иерархия из классы сложности которые обобщают классы НП и со-НП.[1] Каждый класс в иерархии содержится внутри PSPACE. Иерархию можно определить с помощью машины-оракулы или чередующиеся машины Тьюринга. Это ограниченный ресурсами аналог арифметическая иерархия и аналитическая иерархия от математическая логика. Объединение классов в иерархии обозначается PH.

У классов внутри иерархии есть полные проблемы (в отношении редукции за полиномиальное время ) которые спрашивают, если количественные булевы формулы для формул с ограничениями на порядок кванторов. Известно, что равенство между классами на одном уровне или последовательных уровнях в иерархии будет означать «коллапс» иерархии на этот уровень.

Определения

Существует несколько эквивалентных определений классов полиномиальной иерархии.

Определение Oracle

Для определения оракула полиномиальной иерархии определите

где п это набор проблемы решения разрешимый в полиномиальное время. Тогда для i ≥ 0 определим

где это набор проблемы решения разрешима за полиномиальное время Машина Тьюринга дополненный оракул для некоторой полной задачи в классе A; классы и определяются аналогично. Например, , и - класс задач, решаемых за полиномиальное время с оракулом для некоторой NP-полной задачи.[2]

Определение количественных логических формул

Для экзистенциального / универсального определения полиномиальной иерархии пусть L быть язык (т.е. проблема решения, подмножество {0,1}*), позволять п быть многочлен, и определим

где некоторая стандартная кодировка пары двоичных строк Икс и ш как одну двоичную строку. L представляет собой набор упорядоченных пар строк, где первая строка Икс является членом , а вторая строка ш это «короткий» () свидетель, свидетельствующий, что Икс является членом . Другими словами, тогда и только тогда, когда существует короткий свидетель ш такой, что . Аналогичным образом определим

Обратите внимание, что Законы де Моргана держать: и , где Lc является дополнением L.

Позволять C быть классом языков. Расширить эти операторы для работы со всеми классами языков по определению

Опять же, законы Де Моргана гласят: и , где .

Классы НП и со-НП можно определить как , и , где п является классом всех допустимо (полиномиально-временных) разрешимых языков. Полиномиальная иерархия может быть определена рекурсивно как

Обратите внимание, что , и .

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

Определение чередующихся машин Тьюринга

An переменная машина Тьюринга представляет собой недетерминированную машину Тьюринга с неконечными состояниями, разделенными на экзистенциальные и универсальные состояния. В конечном итоге он принимает текущую конфигурацию, если: он находится в экзистенциальном состоянии и может перейти в некоторую, в конечном итоге, принимающую конфигурацию; или он находится в универсальном состоянии, и каждый переход находится в некоторой, в конечном итоге, принимающей конфигурации; или он находится в принимающем состоянии.[3]

Мы определяем быть классом языков, принимаемых чередующейся машиной Тьюринга за полиномиальное время, так что начальное состояние является экзистенциальным состоянием, и каждый путь, по которому машина может проходить, не более k - 1 раз между экзистенциальным и универсальным состояниями. Мы определяем аналогично, за исключением того, что начальное состояние является универсальным.[4]

Если мы опустим требование не более чем k - 1 меняет местами экзистенциальное и универсальное состояния, так что нам нужно только, чтобы наша чередующаяся машина Тьюринга работала за полиномиальное время, тогда у нас есть определение класса AP, что равно PSPACE.[5]

Отношения между классами в полиномиальной иерархии

Коммутативная диаграмма, эквивалентная иерархии полиномиального времени. Стрелки обозначают включение.

Объединение всех классов в полиномиальной иерархии - это класс сложности PH.

Под определениями подразумеваются отношения:

В отличие от арифметических и аналитических иерархий, чьи включения считаются правильными, остается открытым вопрос, являются ли какие-либо из этих включений правильными, хотя широко распространено мнение, что все они правильны. Если есть , или если есть , то иерархия коллапсирует до уровня k: для всех , .[6] В частности, мы имеем следующие последствия, связанные с нерешенными проблемами:

  • п = НП если и только если п = PH.[7]
  • Если НП = со-НП тогда НП = PH. (со-НП является .)

Отношения с другими классами

Вопрос, Web Fundamentals.svgНерешенная проблема в информатике:
(больше нерешенных проблем в информатике)

Полиномиальная иерархия является аналогом (с гораздо меньшей сложностью) экспоненциальная иерархия и арифметическая иерархия.

Известно, что PH содержится в PSPACE, но неизвестно, равны ли два класса. Одна полезная переформулировка этой проблемы состоит в том, что PH = PSPACE тогда и только тогда, когда логика второго порядка над конечными структурами не получает дополнительной мощности от добавления переходное закрытие оператор.

Если в полиномиальной иерархии есть полные проблемы, то у него есть только конечное число различных уровней. Поскольку есть PSPACE-полный мы знаем, что если PSPACE = PH, то иерархия полиномов должна разрушиться, поскольку проблема с PSPACE-полным -полная проблема для некоторых k.[8]

Каждый класс в полиномиальной иерархии содержит -полные задачи (задачи, завершенные при полиномиальном времени много-однозначных редукций). Кроме того, каждый класс в полиномиальной иерархии закрыт под -снижения: означает, что для класса C в иерархии и языке , если , тогда также. Эти два факта вместе означают, что если это полная проблема для , тогда , и . Например, . Другими словами, если язык определен на основе некоторого оракула в C, то можно считать, что он определен на основе полной задачи для C. Таким образом, завершенные задачи действуют как «представители» того класса, для которого они завершены.

В Теорема Сипсера – Лаутеманна. заявляет, что класс BPP содержится на втором уровне иерархии полиномов.

Теорема Каннана заявляет, что для любого k, не содержится в РАЗМЕР(пk).

Теорема Тоды утверждает, что полиномиальная иерархия содержится в P.

Проблемы

  • Пример естественной проблемы в является минимизация схемы: задано число k и цепь А вычисление Логическая функция ж, определите, есть ли в цепи не более k ворота, которые вычисляют ту же функцию ж. Позволять C быть набором всех логических схем. Язык

    разрешима за полиномиальное время. Язык

    язык минимизации схем. потому что L разрешима за полиномиальное время и потому, что, учитывая , если и только если Существует цепь B такой, что для всех входы Икс, .
  • Полная проблема для является выполнимость для количественных булевых формул с k - 1 чередование кванторов (сокращенно QBFk или QSATk). Это версия проблема логической выполнимости для . В этой задаче дана булева формула ж с переменными, разделенными на k наборы Икс1, ..., Иксk. Мы должны определить, правда ли, что
    То есть есть ли присвоение значений переменным в Икс1 так что для всех присвоений значений в Икс2, существует присвоение значений переменным в Икс3, ... ж верно? Вариант выше подходит для . Вариант, в котором первый квантор - «для всех», второй - «существует» и т. Д., Является полным для . Каждый язык - это подмножество проблемы, полученной путем снятия ограничения k - 1 чередование, PSPACE-полная проблема TQBF.
  • Список проблем в стиле Гэри / Джонсона, которые известны как полные для второго и более высоких уровней полиномиальной иерархии, можно найти в этот компендиум.

Смотрите также

использованная литература

  1. ^ Арора и Барак, 2009, стр.97
  2. ^ Полнота в иерархии полиномиального времени A Compendium, M. Schaefer, C. Umans
  3. ^ Арора и Барак, стр. 99–100.
  4. ^ Арора и Барак, стр.100
  5. ^ Арора и Барак, стр.100
  6. ^ Арора, Барак, 2009, теорема 5.4.
  7. ^ Хемаспандра, Лейн (2018). «17.5 Классы сложности». В Розене, Кеннет Х. (ред.). Справочник по дискретной и комбинаторной математике. Дискретная математика и ее приложения (2-е изд.). CRC Press. С. 1308–1314. ISBN  9781351644051.
  8. ^ Арора и Барак, 2009 г., утверждение 5.5.

Общие ссылки

  1. Арора, Санджив; Варак, Вооз (2009). Теория сложности: современный подход. Издательство Кембриджского университета. ISBN  978-0-521-42426-4. раздел 1.4, «Машины как струны и универсальная машина Тьюринга» и 1.7, «Доказательство теоремы 1.9»
  2. А. Р. Мейер и Л. Дж. Штокмейер. Проблема эквивалентности регулярных выражений с возведением в квадрат требует экспоненциального пространства. В материалах 13-го IEEE Симпозиум по теории переключений и автоматов, pp. 125–129, 1972. Статья, в которой была введена полиномиальная иерархия.
  3. Л. Дж. Штокмейер. Иерархия полиномиального времени. Теоретическая информатика, vol.3, pp. 1–22, 1976.
  4. К. Пападимитриу. Вычислительная сложность. Эддисон-Уэсли, 1994. Глава 17. Полиномиальная иерархияС. 409–438.
  5. Майкл Р. Гарей и Дэвид С. Джонсон (1979). Компьютеры и непреодолимость: руководство по теории NP-полноты. W.H. Фримен. ISBN  0-7167-1045-5. Раздел 7.2: Полиномиальная иерархия, стр. 161–167.

Цитаты