Введение
В теории вычислительной сложности, полиномиальная иерархия (иногда называемая иерархией полиномиального времени) — это иерархия классов сложности, обобщающих классы NP и co NP. Каждый класс в иерархии содержится в PSPACE. Иерархия может быть определена с использованием оракульных машин или чередующихся машин Тьюринга. Она является аналогом арифметической и аналитической иерархий из математической логики, ограниченным по ресурсам. Объединение классов в иерархии обозначается PH. Классы в иерархии имеют полные задачи (относительно полиномиального сведения), которые проверяют истинность квантифицированных булевых формул с ограничениями на порядок кванторов. Известно, что равенство классов на одном или соседних уровнях иерархии привело бы к "схлопыванию" иерархии до этого уровня.
In computational complexity theory, the polynomial hierarchy (sometimes called the polynomial time hierarchy) is a hierarchy of complexity classes that generalize the classes NP and co NP. Each class in the hierarchy is contained within PSPACE. The hierarchy can be defined using oracle machines or alternating Turing machines. It is a resource bounded counterpart to the arithmetical hierarchy and analytical hierarchy from mathematical logic. The union of the classes in the hierarchy is denoted PH. Classes within the hierarchy have complete problems (with respect to polynomial time reductions) that ask if quantified Boolean formulae hold, for formulae with restrictions on the quantifier order. It is known that equality between classes on the same level or consecutive levels in the hierarchy would imply a "collapse" of the hierarchy to that level.
Определения
Существует несколько эквивалентных определений классов полиномиальной иерархии.
Определение количественных булевых формул
Для экзистенциального/универсального определения полиномиальной иерархии, пусть L будет языком (т.е. задачей принятия решения, подмножеством {0,1}*), пусть p – полином, и определим
where is some standard encoding of the pair of binary strings x and w as a single binary string. The language L represents a set of ordered pairs of strings, where the first string x is a member of , and the second string w is a "short" witness testifying that x is a member of In other words, if and only if there exists a short witness w such that Similarly, define
Note that De Morgan's laws hold: and , where Lc is the complement of L.
Let be a class of languages. Extend these operators to work on whole classes of languages by the definition
Again, De Morgan's laws hold: and , where
The classes NP and co NP can be defined as , and , where P is the class of all feasibly (polynomial time) decidable languages. The polynomial hierarchy can be defined recursively as
Note that , and
This definition reflects the close connection between the polynomial hierarchy and the arithmetical hierarchy, where R and RE play roles analogous to P and NP, respectively. The analytic hierarchy is also defined in a similar way to give a hierarchy of subsets of the real numbers.
где – некоторое стандартное кодирование пары двоичных строк x и w в одну двоичную строку. Язык L представляет собой множество упорядоченных пар строк, где первая строка x принадлежит , а вторая строка w является "коротким" свидетелем, подтверждающим, что x принадлежит . Иными словами, если и только если существует короткий свидетель w такой, что. Аналогично, определим
where is some standard encoding of the pair of binary strings x and w as a single binary string. The language L represents a set of ordered pairs of strings, where the first string x is a member of , and the second string w is a "short" witness testifying that x is a member of In other words, if and only if there exists a short witness w such that Similarly, define
Note that De Morgan's laws hold: and , where Lc is the complement of L.
Let be a class of languages. Extend these operators to work on whole classes of languages by the definition
Again, De Morgan's laws hold: and , where
The classes NP and co NP can be defined as , and , where P is the class of all feasibly (polynomial time) decidable languages. The polynomial hierarchy can be defined recursively as
Note that , and
This definition reflects the close connection between the polynomial hierarchy and the arithmetical hierarchy, where R and RE play roles analogous to P and NP, respectively. The analytic hierarchy is also defined in a similar way to give a hierarchy of subsets of the real numbers.
Законы Де Моргана выполняются: и , где Lc – дополнение к L. Пусть – класс языков. Расширим эти операторы для работы с целыми классами языков следующим образом:
where is some standard encoding of the pair of binary strings x and w as a single binary string. The language L represents a set of ordered pairs of strings, where the first string x is a member of , and the second string w is a "short" witness testifying that x is a member of In other words, if and only if there exists a short witness w such that Similarly, define
Note that De Morgan's laws hold: and , where Lc is the complement of L.
Let be a class of languages. Extend these operators to work on whole classes of languages by the definition
Again, De Morgan's laws hold: and , where
The classes NP and co NP can be defined as , and , where P is the class of all feasibly (polynomial time) decidable languages. The polynomial hierarchy can be defined recursively as
Note that , and
This definition reflects the close connection between the polynomial hierarchy and the arithmetical hierarchy, where R and RE play roles analogous to P and NP, respectively. The analytic hierarchy is also defined in a similar way to give a hierarchy of subsets of the real numbers.
и , где классы NP и co-NP могут быть определены как , и , где P – класс всех языков, разрешимых за полиномиальное время. Полиномиальная иерархия может быть определена рекурсивно как
where is some standard encoding of the pair of binary strings x and w as a single binary string. The language L represents a set of ordered pairs of strings, where the first string x is a member of , and the second string w is a "short" witness testifying that x is a member of In other words, if and only if there exists a short witness w such that Similarly, define
Note that De Morgan's laws hold: and , where Lc is the complement of L.
Let be a class of languages. Extend these operators to work on whole classes of languages by the definition
Again, De Morgan's laws hold: and , where
The classes NP and co NP can be defined as , and , where P is the class of all feasibly (polynomial time) decidable languages. The polynomial hierarchy can be defined recursively as
Note that , and
This definition reflects the close connection between the polynomial hierarchy and the arithmetical hierarchy, where R and RE play roles analogous to P and NP, respectively. The analytic hierarchy is also defined in a similar way to give a hierarchy of subsets of the real numbers.
и . Это определение отражает тесную связь между полиномиальной иерархией и арифметической иерархией, где R и RE играют роли, аналогичные P и NP соответственно. Аналитическая иерархия также определяется аналогичным образом, чтобы получить иерархию подмножеств действительных чисел.
where is some standard encoding of the pair of binary strings x and w as a single binary string. The language L represents a set of ordered pairs of strings, where the first string x is a member of , and the second string w is a "short" witness testifying that x is a member of In other words, if and only if there exists a short witness w such that Similarly, define
Note that De Morgan's laws hold: and , where Lc is the complement of L.
Let be a class of languages. Extend these operators to work on whole classes of languages by the definition
Again, De Morgan's laws hold: and , where
The classes NP and co NP can be defined as , and , where P is the class of all feasibly (polynomial time) decidable languages. The polynomial hierarchy can be defined recursively as
Note that , and
This definition reflects the close connection between the polynomial hierarchy and the arithmetical hierarchy, where R and RE play roles analogous to P and NP, respectively. The analytic hierarchy is also defined in a similar way to give a hierarchy of subsets of the real numbers.
Определение чередующихся машин Тьюринга
Переключающаяся машина Тьюринга — это недетерминированная машина Тьюринга, в которой нефинальные состояния разделены на экзистенциальные и универсальные. Машина в конечном итоге принимает из своей текущей конфигурации, если: она находится в экзистенциальном состоянии и может перейти в некоторую в конечном итоге принимающую конфигурацию; или, она находится в универсальном состоянии и каждый переход ведёт в некоторую в конечном итоге принимающую конфигурацию; или, она находится в принимающем состоянии. Определим как класс языков, распознаваемых переключающейся машиной Тьюринга за полиномиальное время, при условии, что начальное состояние является экзистенциальным, и каждый путь вычисления машины выполняет не более чем k – 1 переключений между экзистенциальными и универсальными состояниями. Определим аналогично, но с начальным универсальным состоянием. Если опустить требование о не более чем k – 1 переключениях между экзистенциальными и универсальными состояниями, требуя лишь полиномиального времени работы переключающейся машины Тьюринга, то получим определение класса AP, который равен PSPACE.
Отношения с другими классами
Полиномиальная иерархия является аналогом (с гораздо меньшей сложностью) экспоненциальной иерархии и арифметической иерархии. Известно, что PH содержится в PSPACE, но неизвестно, равны ли эти два класса. Одной из полезных переформулировок этой проблемы является то, что PH = PSPACE тогда и только тогда, когда логика второго порядка над конечными структурами не приобретает дополнительной мощности от добавления оператора транзитивного замыкания над отношениями отношений (то есть над переменными второго порядка). Если в полиномиальной иерархии существуют полные задачи, то она имеет лишь конечное число различных уровней. Поскольку существуют PSPACE-полные задачи, мы знаем, что если PSPACE = PH, то полиномиальная иерархия схлопнется, так как PSPACE-полная задача будет полной задачей для некоторого k.
Каждый класс в полиномиальной иерархии содержит полные задачи (задачи, полные относительно полиномиального времени с помощью многих-к-одному сведений). Более того, каждый класс в полиномиальной иерархии замкнут относительно сведений: это означает, что для класса в иерархии и языка L, если L ≤p A, то L также принадлежит этому классу. Эти два факта вместе подразумевают, что если A является полной задачей для Σp, то L ≤p A, и A ≤p Σp. Например, другими словами, если язык определяется на основе некоторого оракула в Σp, то мы можем предположить, что он определяется на основе полной задачи для Σp. Полные задачи, следовательно, выступают в качестве "представителей" класса, для которого они полны. Теорема Сипсера — Лаутемана утверждает, что класс BPP содержится на втором уровне полиномиальной иерархии. Теорема Каннана утверждает, что для любого k, Σpk не содержится в SIZE(nk). Теорема Тоды утверждает, что полиномиальная иерархия содержится в P#P.
Общие ссылки
А. Р. Мейер и Л. Дж. Стокмейер. Проблема эквивалентности для регулярных выражений с операцией возведения в квадрат требует экспоненциального пространства. В материалах 13-го симпозиума IEEE по теории коммутации и автоматов, с. 125–129, 1972. Статья, в которой впервые была введена полиномиальная иерархия. Л. Дж. Стокмейер. Полиномиальная иерархия времени. Теоретическая информатика, т. 3, с. 1–22, 1976. С. Пападимитриу. Вычислительная сложность. Эддисон Уэсли, 1994. Глава 17. Полиномиальная иерархия, с. 409–438. Раздел 7.2: Полиномиальная иерархия, с. 161–167.