со-НП

Класс сложности
Нерешенная проблема в информатике :
⁠ ⁠ НП   = ?   со-НП {\displaystyle {\textsf {NP}}\ {\overset {?}{=}}\ {\textsf {co-NP}}}

В теории вычислительной сложности co-NP — это класс сложности . Задача принятия решений X является членом co-NP тогда и только тогда, когда ее дополнение X находится в классе сложности NP . Класс можно определить следующим образом: задача принятия решений находится в co-NP тогда и только тогда, когда для каждого no -экземпляра у нас есть « сертификат » полиномиальной длины и существует алгоритм полиномиального времени, который можно использовать для проверки любого предполагаемого сертификата.

То есть, co-NP — это множество задач принятия решений, где существует полином ⁠ ⁠ п ( н ) {\displaystyle p(n)} и ограниченная полиномиальным временем машина Тьюринга M, такие, что для каждого экземпляра x , x является не -экземпляром тогда и только тогда, когда: для некоторого возможного сертификата c длины, ограниченной ⁠ ⁠ п ( н ) {\displaystyle p(n)} , машина Тьюринга M принимает пару ( x , c ) . [1]

Дополнительные проблемы

В то время как задача NP спрашивает, является ли данный экземпляр да -экземпляром, ее дополнение спрашивает, является ли экземпляр нет -экземпляром, что означает, что дополнение находится в co-NP. Любой да -экземпляр для исходной задачи NP становится нет -экземпляром для ее дополнения, и наоборот.

Неудовлетворительность

Примером NP-полной задачи является задача выполнимости булевой формулы : дана ли булева формула, выполнима ли она (существует ли возможный вход, для которого формула выводит истину)? Дополнительная задача спрашивает: «дана ли булева формула, невыполнима ли она (выводят ли все возможные входы в формулу ложь)?». Поскольку это дополнение задачи выполнимости, сертификат для экземпляра «нет» такой же, как и для экземпляра «да» из исходной задачи NP: набор назначений булевых переменных, которые делают формулу истинной. С другой стороны, сертификат для экземпляра «да» для дополнительной задачи (какую бы форму она ни принимала) был бы столь же сложным, как и для экземпляра «нет» исходной задачи выполнимости NP.

ко-NP-полнота

Задача L является co-NP-полной тогда и только тогда, когда L принадлежит co-NP и для любой задачи из co-NP существует полиномиальное по времени сведение этой задачи к задаче L.

Редукция тавтологии

Определение того, является ли формула в пропозициональной логике тавтологией , является ко-NP-полным: то есть, если формула принимает значение истинности при каждом возможном назначении ее переменным. [1]

Связь с другими классами

Включены классы сложности, включая P , NP , co-NP, BPP , P/poly , PH и PSPACE.

P , класс задач, разрешимых за полиномиальное время, является подмножеством как NP, так и co-NP. P считается строгим подмножеством в обоих случаях. Поскольку P замкнуто относительно дополнения, а NP и co-NP являются дополнительными, оно не может быть строгим в одном случае и не строгим в другом: если P равно NP, оно также должно быть равно co-NP, и наоборот. [2]

NP и co-NP также считаются неравными. [3] Если это так, то никакая NP-полная задача не может быть в co-NP, и никакая co-NP-полная задача не может быть в NP. [4] Это можно показать следующим образом. Предположим ради противоречия, что существует NP-полная задача X , которая находится в co-NP. Поскольку все задачи в NP можно свести к X , следует, что для каждой задачи в NP мы можем построить недетерминированную машину Тьюринга , которая решает ее дополнение за полиномиальное время; т. е. ⁠ ⁠ НП со-НП {\displaystyle {\textsf {NP}}\subseteq {\textsf {co-NP}}} . Из этого следует, что множество дополнений задач в NP является подмножеством множества дополнений задач в co-NP; т. е. ⁠ ⁠ со-НП НП {\displaystyle {\textsf {co-NP}}\subseteq {\textsf {NP}}} . Таким образом ⁠ ⁠ со-НП = НП {\displaystyle {\textsf {co-NP}} = {\textsf {NP}}} . Доказательство того, что никакая co-NP-полная задача не может быть в NP, если ⁠ ⁠ , НП со-НП {\displaystyle {\textsf {NP}}\neq {\textsf {co-NP}}} симметрично.

co-NP является подмножеством PH , которое, в свою очередь, является подмножеством PSPACE .

Факторизация целых чисел

Примером проблемы, которая, как известно, принадлежит как NP, так и co-NP (но неизвестно, принадлежит ли она P), является факторизация целых чисел : даны положительные целые числа m и n , определите, имеет ли m множитель, меньший n и больший единицы. Членство в NP очевидно; если у m есть такой множитель, то сам множитель является сертификатом. Членство в co-NP также просто: можно просто перечислить простые множители m , все большие или равные n , которые проверяющий может подтвердить как действительные с помощью умножения и теста на простоту AKS . В настоящее время неизвестно, существует ли алгоритм факторизации с полиномиальным временем, что эквивалентно тому, что факторизация целых чисел принадлежит P, и, следовательно, этот пример интересен как одна из самых естественных задач, известных как принадлежащие NP и co-NP, но неизвестные как принадлежащие P. [5]

Ссылки

  1. ^ ab Arora, Sanjeev; Barak, Boaz (2009). Теория сложности: современный подход. Cambridge University Press. стр. 56. ISBN 978-0-521-42426-4.
  2. ^ Майордомо, Эльвира (2004). «П против НП». Монографии Real Academia de Ciencias de Zaragoza . 26 : 57–68 .
  3. ^ Хопкрофт, Джон Э. (2000). Введение в теорию автоматов, языки и вычисления (2-е изд.). Бостон: Addison-Wesley. ISBN 0-201-44124-1.Гл. 11.
  4. ^ Голдрайх, Одед (2010). P, NP и NP-полнота: основы вычислительной сложности . Cambridge University Press . стр. 155. ISBN 9781139490092.
  5. ^ Ааронсон, Скотт (2016). "P ≟ NP" (PDF) . В Нэш, Джон Форбс-младший ; Рассиас, Майкл Т. (ред.). Открытые проблемы в математике . Springer International Publishing. стр.  1– 122. doi :10.1007/978-3-319-32162-2_1. ISBN 9783319321622.См. раздел 2.2.4 Факторизация и изоморфизм графов, стр. 19–20 книги (стр. 17–18 связанной версии).
Взято с "https://en.wikipedia.org/w/index.php?title=Co-NP&oldid=1259204348"