Вариант Критического САТ в ДП

10

Язык входит в класс если есть два языка и такие чтоD P L 1 N P L 2 c o N P L = L 1 L 2LDPL1NPL2coNPL=L1L2

Канонической -полной проблемой является SAT-UNSAT: учитывая два выражения 3-CNF, и , верно ли, что выполнимо, а нет?F G F GDPFGFG

Известно также, что критическая проблема SAT является полной: если задано 3-CNF-выражение , верно ли, что неудовлетворительно, но удаление любого предложения делает его удовлетворительным?F FDPFF

Я рассматриваю следующий вариант проблемы Critical SAT: учитывая выражение из 3-CNF , верно ли, что выполнимо, но добавление любого 3-предложения (из но с использованием тех же переменных, что и ) делает его неудовлетворительным? Но мне не удается найти сокращение от SAT-UNSAT или даже доказать, что это или трудно.F F F N P c o N PFFFFNPcoNP

Мой вопрос: является ли этот вариант DP-полным?

Спасибо за ответ.

Ксавье Лабуз
источник
Я не знал о DP: интересный класс, особенно если CRITICAL-SAT для него завершен.
Суреш Венкат
1
Если существует два удовлетворяющих условия , то φ не является максимальным. (Предположим, что они различаются по переменной p , тогда p не подразумевается формулой, и добавление ее или содержащего ее предложения не изменит выполнимости.) Если мы можем найти предложение, не подразумеваемое формулой за полиномиальное время, мы можем добавить его Отрицание к формуле и просто использование правила единичного предложения. В конце концов мы найдем значение всех переменных для удовлетворительного присваивания. Тогда нам просто нужно проверить, эквивалентна ли формула канонической формуле для этого назначения. ττφφpp
Каве
1
@Kaveh: я неправильно понял ваш уточненный вопрос. В вашей версии вопроса «нет выражения, которое не подразумевается формулой и может быть добавлено к нему, не делая его неудовлетворительным», эквивалентно условию, что существует ровно одно удовлетворяющее присвоение, и это стандартное US - полная (следовательно, coNP-hard) задача.
Цуёси Ито
1
Ксавье: Вы правы в том, что язык в версии @ Kaveh является подмножеством языка в вашей версии. Но это не означает сводимости между двумя проблемами (в любом направлении). Помните, что при сокращении необходимо сопоставлять экземпляры yes с экземплярами yes, а no-instance - с экземплярами no.
Цуёси Ито
1
Извините, я написал в обратном направлении. Язык в вашей версии является подмножеством языка в версии Kaveh.
Цуёси Ито

Ответы:

2

[Я сделал это в правильный ответ, потому что кто-то дал это -1]

Если какое-либо предложение разрешено добавлять, то язык будет пустым - очевидно, что к любой выполнимой формуле можно добавить 3-предложение c, составленное из переменных, которые не появляются в F : F { c } будет выполнимым.FcFF{c}

Если добавленные предложения должны использовать переменные , то язык находится в P.F

Обоснование заключается в следующем:

Возьмем любой , то есть F S A T и для любого 3-п с о переменных F , F { C } U N S T . Скажите c = l 1l 2l 3F , где l i - литерал. Поскольку F { c } является UNSAT, все модели F должны иметь l iFLFSATcFF{c}UNSATc=l1l2l3FliF{c}F (для i = 1 , 2 , 3 ) - потому что если в некоторой модели, например, l 1 = 1 , то она будет удовлетворять c, и поэтому F { c } . Теперь предположимчто существует другое условие C ' , которое так жекак с , но с одним или более буквальным переворачивается такимчто с 'F , скажем , гр ' = ¬ л 1л 2л 3li=0i=1,2,3l1=1cF{c}cccFc=¬l1l2l3, Тогда по тому же аргументу все модели должны иметь l 1 = 1 . Таким образом, необходимым условием для F L является то, что для каждого предложения c F есть ровно 6 других предложений в F, которые используют три переменные c - давайте назовем эти подмножества из 7 предложений F- блоков . Обратите внимание, что каждый блок подразумевает уникальное удовлетворяющее присваивание его переменным. Когда это необходимое условие выполнено, F либо однозначно выполнимо, либо неудовлетворительно. Два случая можно различить, проверяя, являются ли назначения, подразумеваемые блоками FFl1=1FLcFFcF FF Столкновение, которое можно четко сделать в линейном времени.

Антон Белов
источник
1
Ваше наблюдение в основном: чтобы получить ответ Да, F должен содержать ровно семь из восьми предложений на любой выбор трех различных переменных. Поэтому поиск уникального назначения (или обнаружение несоответствия) легко выполняется за полиномиальное время.
Цуёси Ито
2
@Xavier: Эти две проблемы могут выглядеть одинаково, но наблюдение Антона показывает, что они просто очень разные. Это очень распространено в вычислительной сложности. Типичные примеры включают сравнение между 2SAT и 3SAT и между эйлеровой цепью и гамильтоновой цепью.
Цуёси Ито
2
@Xavier - неверный ответ Тайфуна . Он показывает, что проблема в DP - это нормально, любая проблема в P автоматически в DP. Чтобы показать, что проблема является DP-полной, он должен показать редукцию к другой DP-полной проблеме (например, первый вариант Critical SAT). Я отправил правку на его ответ, но в очереди на «экспертную оценку».
Антон Белов
3
@Anton: редактирование ответов, опубликованных другими пользователями, обычно не рекомендуется. Если вы считаете, что ответ Тайфуна в корне неверен, вам не следует пытаться исправить его, отредактировав.
Цуёси Ито
1
Из задачи SAT-UNSAT очень ясно, что для одной формулы вы проверяете выполнимость для другой формулы, которую вы проверяете на неудовлетворенность ... В исходном критическом наборе проблем вы не принимаете как должное, что данная булева формула является неудовлетворительной. Вы должны проверить это. То же самое с версией Xaviers, вы должны проверить, что данная логическая формула выполнима.
Тайфун Pay
-1

Могу ли я предложить ответ на свой вопрос благодаря вашим комментариям: вариант Critical SAT находится в P.

Давайте назовем «Задача 1» вариантом критического SAT: учитывая 3-CNF выражение , верно ли, что F выполнимо, но добавление любого предложения из F делает его неудовлетворительным?FFF

И "Проблема 2": учитывая выражение из 3-CNF , верно ли, что F содержит все предложения, которые оно подразумевает, и имеет уникальную модель?FF

Учитывая формулу 3-CNF, .F

Если является да экземпляром задачи 2, то любой пункт из F не вытекают F , а затем покрывает только один возможное удовлетворяющее назначение для F . Добавление такого условия в F делает его неустранимым. Следовательно, F является положительным примером проблемы 1.FFFFFF

Если является не экземпляром задачи 2, то: Случай 1: она существует пункт из F , которая вытекающая F . Тогда добавление этого предложения к F не изменит его выполнимости. Следовательно, F не является проблемой 1. Случай 2: F содержит все предложения, которые он подразумевает, но не удовлетворяет требованиям. Следовательно, F не является проблемой 1. Случай 3: F содержит все предложения, которые он подразумевает, но имеет как минимум 2 разные модели. Как подчеркивает комментарий Каве, «предположим, что модели различаются по переменной p, то добавление предложения, содержащего его, не изменит выполнимости. » F , следовательно, не является проблемой 1.FFFFFFFFF

FF

F n(n-1)(n-2)(n3) нn(n1)(n2)3n

Ксавье Лабуз
источник
2
Вы перефразировали исходную проблему по своему вкусу.
Тайфун Pay
Я не уверен насчет версии 3-SAT. Учитывая булеву формулу в CNF с M-предложениями и N-переменной, если IF M = (3 ^ N) - (2 ^ N), то данная булева формула либо UNSATISFIABLE, либо имеет только ОДНО решение. Тем не менее, проверить на удовлетворенность в этом случае все еще NP.
Твоей
1
@Xavier: Этот ответ кажется правильным, но я думаю, что это то же самое, что делает Антон в своем ответе.
Цуёси Ито
@ Tsuyoshi, вы правы, просто представьте задачу 2, первая часть которой (проверка, содержит ли формула все пункты, которые она подразумевает) меня интересует - кстати, у вас есть представление о сложности этой первой части?
Ксавье Лабуз