Классы NP, coNP, Σ₁, Π₁ — различия между версиями
Iloskutov (обсуждение | вклад) (→Примеры языков из NP: Добавил простой пример, удалил пример про клики) |
Iloskutov (обсуждение | вклад) м (→Связь P и NP) |
||
Строка 108: | Строка 108: | ||
== Связь P и NP == | == Связь P и NP == | ||
− | Очевидно, что <tex>\mathrm{P} \subseteq \mathrm{NP}</tex>, так как детерминированные программы можно рассматривать как недетерминированные, в которых не используется недетерминированный выбор. Вопрос о равенстве данных классов до сих пор остается открытым. Были осуществлены различные подходы к разрешению этой задачи: попытка найти [[Теорема_Махэни|редкий <tex>\mathrm{NP}</tex>-полный язык]]; было доказано, что [[Теорема_Бейкера_—_Гилла_—_Соловэя|доказательство должно быть нерелятивизующимся]] | + | Очевидно, что <tex>\mathrm{P} \subseteq \mathrm{NP}</tex>, так как детерминированные программы можно рассматривать как недетерминированные, в которых не используется недетерминированный выбор. Вопрос о равенстве данных классов до сих пор остается открытым. Были осуществлены различные подходы к разрешению этой задачи: попытка найти [[Теорема_Махэни|редкий <tex>\mathrm{NP}</tex>-полный язык]]; было доказано, что [[Теорема_Бейкера_—_Гилла_—_Соловэя|доказательство должно быть нерелятивизующимся]]. |
− | *«решение» 3SAT за полиномиальное время<ref>[http://arxiv.org/abs/1011.3944 Non-Orthodox Combinatorial Models Based on Discordant Structures]</ref> | + | Кроме того, были предприняты различные попытки найти полиномиальные решения для задач из <tex>\mathrm{NPC}</tex>: |
− | *задача о коммивояжёре<ref>[http://www.cse.yorku.ca/~aaw/Zambito/TSP_Survey.pdf The Traveling Salesman Problem: A Comprehensive Survey]</ref>. | + | * «решение» 3SAT за полиномиальное время<ref>[http://arxiv.org/abs/1011.3944 Non-Orthodox Combinatorial Models Based on Discordant Structures]</ref> |
+ | * задача о коммивояжёре<ref>[http://www.cse.yorku.ca/~aaw/Zambito/TSP_Survey.pdf The Traveling Salesman Problem: A Comprehensive Survey]</ref>. | ||
Некоторые задачи из <tex>\mathrm{P}</tex> очень похожи на задачи из <tex>\mathrm{NP}</tex>, при этом различие между задачами кажется совершенно незначительным: | Некоторые задачи из <tex>\mathrm{P}</tex> очень похожи на задачи из <tex>\mathrm{NP}</tex>, при этом различие между задачами кажется совершенно незначительным: |
Версия 23:24, 31 марта 2016
Содержание
Определения, связь Σ₁ и NP
Определение: |
. |
То есть недетерминированной программой за полиномиальное время.
— это множество языков, разрешимыхОпределение: |
. |
То есть
— это множество языков, дополнение к которым лежит в .Определение: |
. |
Нестрого говоря,
— это множество языков, для которых существует работающая за полиномиальное время детерминированная программа-верификатор , а для каждого слова из языка (и только для слова из языка) можно предъявить сертификат полиномиальной длины, подтверждающий принадлежность слова языку и проверяемый верификатором.Определение: |
. |
То есть
— это множество языков, для которых существует работающая за полиномиальное время детерминированная программа-верификатор , а для каждого слова из языка (и только для слова из языка) нельзя предъявить сертификат длины, ограниченной неким полиномом, опровергающий принадлежность слова языку и проверяемый верификатором. Легко видеть, что — множество языков, дополнения к которым лежат в .Теорема: |
. |
Доказательство: |
.
return
.
|
Примечание: определение
часто называют также «определением на языке сертификатов», а , соответственно, «определением на языке сертификатов».Свойства
Теорема: |
Пусть . Тогда:
|
Доказательство: |
Пусть разрешает , а разрешает .
return and
return or
return and
do if not return false while return true
|
Примеры языков из NP
Язык палиндромов
Этот язык разрешается автоматом с магазинной памятью, то есть принадлежит
, а следовательно, и .Язык задачи о раскраске вершин графа в цветов
Переформулируем задачу в терминах принадлежности языку: пусть
вершины можно раскрасить в цветов .Этот язык разрешается следующей недетерминированной программой за полиномиальное относительно числа вершин и рёбер время:
for in if == return false return true
Язык гамильтоновых графов
for in if return false for to if return false return true
Два последних языка также являются . По -полнымитеореме Ладнера, если , то существует язык из , не являющийся -полным.
Примеры языков из coNP
Язык графов, не являющихся гамильтоновыми
Этот язык принадлежит
, так как является дополнением к языку гамильтоновых графов, принадлежащему , как показано выше.TAUT
Язык булевых формул, являющихся тавтологиями. К этому языку тривиально сводится дополнение к
: если отрицание формулы невыполнимо, то она является тавтологией, и наоборот.Связь P и NP
Очевидно, что редкий ; было доказано, что -полный языкдоказательство должно быть нерелятивизующимся. Кроме того, были предприняты различные попытки найти полиномиальные решения для задач из :
, так как детерминированные программы можно рассматривать как недетерминированные, в которых не используется недетерминированный выбор. Вопрос о равенстве данных классов до сих пор остается открытым. Были осуществлены различные подходы к разрешению этой задачи: попытка найтиНекоторые задачи из
очень похожи на задачи из , при этом различие между задачами кажется совершенно незначительным:Принадлежит | -полная |
---|---|
Поиск самых коротких простых путей | Поиск самых длинных простых путей |
Эйлеров цикл | Гамильтонов цикл |
2-CNF выполнимость | 3-CNF выполнимость |