Класс NP — различия между версиями
м |
|||
Строка 34: | Строка 34: | ||
==Примеры задач класса NP== | ==Примеры задач класса NP== | ||
− | * Задача | + | * [[NP-полнота задачи BH1N|Задача BH1N]]. |
− | * Задача о | + | * Задача о [[NP-полнота задач о вершинном покрытии, клике и независимом множестве|вершинном покрытии, клике и независимом множестве]]. |
− | * Задача о | + | * Задача о [[NP-полнота задачи о выполнимости булевой формулы в форме КНФ|удовлетворении булевой формулы, заданной в КНФ]]. SAT |
− |
Версия 18:32, 18 марта 2010
В теории сложности Класс
— класс языков (задач), ответ на которые можно проверить за полиномиальное время.Содержание
Определение
Определение класса NP через класс NTIME и класс NSPACE.
Класс
Альтернативным определением класса NP является определение на языке сертификатов. Классом
называется класс языков (задач) L, таких что для каждого из них существует полиномиальный верификатор сертификата(утверждения) R, а также полином p, такие что слово l принадлежит языку L тогда и только тогда, когда существует сертификат (утверждение) y, длина которого не превосходит заданного полинома p, и сертификат удовлетворяет верификатору.
Теорема о равенстве и
Формулировка
Доказательство
Построим доказательство равенство из доказательств двух взаимных включений.
Построим программу, работающую за полином (из свойств машины Тьюринга, возможно построить аналогичную машину Тьюринга, работающюю за полиномиальное время, возможно большее), которая будет проверять решение задачи, входящей в класс
. Таким образом покажем вхождение класса в .Вхождение доказано.
Пусть
. Тогда существует НМТ m, распознающая L. Построим сертификат y как последовательность недетерминированных выборов машины m, приводящих к допуску слова. Верификатором сертификата R выберем структуру, симулирующую НМТ, возвращающую 0 при ошибке выполнения или завершении работы в недопускающем состоянии, и 1, если работа НМТ завершилась корректно в допускающем состоянии. Таким образом, , что и требовалось доказать.Теорема доказана.
Теорема о равенстве и
Примеры задач класса NP
- Задача BH1N.
- Задача о вершинном покрытии, клике и независимом множестве.
- Задача о удовлетворении булевой формулы, заданной в КНФ. SAT