Почему NP в EXPTIME?


11

Есть ли простой способ понять, почему NP находится в EXPTIME? Мне кажется априори возможным, что может существовать проблема, для решения которой требуется сверхэкспоненциальное время, но решение которой можно проверить за полиномиальное время.


На самом деле, NP PSPACE.

Добро пожаловать в информатику! Что вы пробовали? Где вы застряли? Мы не хотим просто выполнять вашу (домашнюю) работу за вас; Мы хотим, чтобы вы получили понимание. Однако, поскольку мы не знаем, в чем заключается ваша основная проблема, мы не можем начать помогать. Смотрите здесь для соответствующего обсуждения. Если вы не уверены в том , как улучшить ваш вопрос, почему не поспрашивать в области компьютерных наук в чате ? Вы также можете проверить наши справочные вопросы .
Рафаэль

Ответы:


17

Любая проблема в NP находится в EXPTIME, потому что вы можете использовать экспоненциальное время, чтобы попробовать все возможные сертификаты, или перечислить все возможные пути вычисления недетерминированной машины.

Более формально, есть два основных определения NP . Во-первых, язык  находится в NP, если существует отношение  R, такое чтоLр

  • существует такой многочлен , что для всех ( x , y ) R , | у | p ( | x | ) ,п(Икс,Y)р|Y|п(|Икс|)
  • учитывая строку , мы можем определить во времени полином от | х # у | будь то ( х , у ) R иИкс#Y|Икс#Y|(x,y)R
  • .L={x(x,y)R}

Итак, если у нас есть экспоненциальное время, и мы хотим знать, если , мы можем просто попробовать все | Σ | p ( n ) возможных значений для ~ y и посмотрите, если ( x , y ) R для любого из них. Это занимает время 2 O ( p ( n ) ) , поэтому L xL|Σ|p(n)y(x,y)R2O(p(n))LОПЫТ .

В качестве альтернативы, мы можем определить NP как набор языков, определяемых недетерминированными машинами Тьюринга за полиномиальное время. В этом случае предположим, что  определяется машиной  M за время p ( n ) для некоторого полинома  p для входов длины  n . Тогда M  делает не более р ( | х | ) недетерминированный выбор при определении , если X L . Изучая функцию перехода М , мы можем найти постоянную  k такую, что M  имеет не болееLMp(n)pnMp(|x|)xLMkM  недетерминированных вариантов на каждом шаге вычисления (независимо от входных данных), поэтому он имеет не более k p ( | x | ) = 2 O ( p ( | x | ) ) различных последовательностей недетерминированных вариантов при чтении входных данных  x . Учитывая экспоненциальное время, мы можем смоделировать каждую из этих возможностей одну за другой и посмотреть, принимает ли какая-либо из них.ККп(|Икс|)знак равно2О(п(|Икс|))Икс


2
Строго говоря, многочлен во втором маркере нужно выбирать раз и навсегда, он не может зависеть от и y . ;)ИксY
Мартин Бергер

Что такое определение EXPTIME? Я вспоминаю это как , но ваш ответ, кажется, предполагает O ( k p ( | x | ) ) . Не очевидно, что дополнительный многочлен можно включить, не делая его другим классом сложности. О(К|Икс|)О(Кп(|Икс|))
kasperd

3
@kasperd Согласно Википедии, EXPTIME определяется как решение проблем, которые могут быть решены в . О(Кп(|Икс|))
tparker
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.