Чому NP в EXPTIME?


11

Чи є простий спосіб зрозуміти, чому NP знаходиться в EXPTIME? Мені апріорі здається, що може виникнути проблема, яка потребує розв'язання надекспоненціального часу, але вирішення якої можна перевірити в поліноміальний час.


Насправді, NP PSPACE.

Ласкаво просимо до інформатики! Що ви пробували? Де ти застряг? Ми не хочемо просто робити вашу (домашню) роботу за вас; ми хочемо, щоб ви зрозуміли. Однак ми не знаємо, у чому полягає ваша основна проблема, тому ми не можемо почати допомагати. Дивіться тут відповідну дискусію. Якщо ви не впевнені, як поліпшити своє питання, чому б не розпитати в « Комп'ютерному чаті» ? Ви також можете перевірити наші довідкові запитання .
Рафаель

Відповіді:


17

Будь-яка проблема в NP полягає в EXPTIME, тому що ви можете використовувати експоненціальний час, щоб спробувати всі можливі сертифікати, або перерахувати всі можливі шляхи обчислення недетермінованої машини.

Більш формально є два основні визначення НП . Одне полягає в тому, що мова  знаходиться в NP iff, якщо таке відношення  таке, щоLR

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

Отже, якщо у нас є експоненціальний час і ми хочемо знати, чи , ми можемо просто спробувати всі можливі значення для ~ і побачити, чи для будь-якого з них. Для цього потрібен час , тому EXPTIME .xL|Σ|p(n)y(x,y)R2O(p(n))L

В якості альтернативи, ми можемо визначити NP як набір мов, визначений поліноміальними недетермінованими машинами Тьюрінга. У цьому випадку припустимо, що  визначається машиною  в часі для деякого многочлена  , для входів довжини  . Тоді  робить не більше недетермінований вибір при визначенні , якщо . Вивчаючи функцію переходу , ми можемо знайти константу  таку, що  має максимум  недетермінований вибір на кожному кроці обчислення (незалежно від введення), тому вона має максимумLMp(n)pnMp(|x|)xLMkMkkp(|x|)=2O(p(|x|)) різні послідовності недетермінованого вибору під час читання вводу  . Враховуючи експоненціальний час, ми можемо моделювати кожну з цих можливостей одна за одною і бачити, чи приймає хтось із них.x


2
Строго кажучи, поліном у другій кулі потрібно обирати раз і назавжди, він не може залежати від і . ;)xy
Мартін Бергер

Що саме таке визначення EXPTIME? Я згадую це як , але, здається, ваша відповідь передбачає . Не очевидно, що додатковий многочлен можна включити, не роблячи його різним класом складності. O(k|x|)O(kp(|x|))
kasperd

3
@kasperd Згідно з Вікіпедією, EXPTIME визначається як проблеми рішення, які можна вирішити в . O(kp(|x|))
tparker
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.