Чому 2SAT в P?


55

Я натрапив на поліноміальний алгоритм, який вирішує 2SAT. Мені здається, що 2SAT бореться, що 2SAT знаходиться в P, де всі (або багато інших) випадків SAT є NP-Complete. Що робить цю проблему різною? Що робить це таким простим (NL-Complete - навіть простіше, ніж P)?


18
Чому люди думають, що це таке погане питання?
Пітер Шор

12
Один цікавий аспект полягає в тому, що якщо ви хочете знати максимальну кількість одночасно задоволених пропозицій у виразі 2SAT (тобто Max2SAT), ви знову повернетесь до NP-завершення.
Шон Харкер

11
Це або жахливе запитання, оскільки воно не має корисної відповіді, або фантастичне запитання, бо єдино правильна відповідь - «ніхто не знає».
Jeffε

12
Прочитайте, будь ласка, статтю "Складність задач щодо задоволення: уточнення теореми Шефера".
Дієго де Естрада

3
Шановний Хлопець, той факт, що 2SAT знаходиться в P, висвітлюється майже в кожному стандартному підручнику складності, тож, коли ти кажеш, що ти щойно помітив цей факт, це питання виглядає так, ніби ти навіть не читав стандартного підручника у складності.
Kaveh

Відповіді:


88

Ось подальше інтуїтивне та невибагливе пояснення відповідно до відповіді М.Гвінна.

За допомогою -SAT ви можете висловити лише наслідки форми a b , де a і b - буквальні. Точніше, кожну 2- клаузу l 1l 2 можна зрозуміти як пару наслідків: ¬ l 1l 2 та ¬ l 2l 1 . Якщо встановити істинно, б повинно бути істинним , а також. Якщо ви встановите b на значення false, a2абаб2л1л2¬л1л2¬л2л1аббатакож має бути помилковим. Такі наслідки прості: вибору немає, у вас є лише можливість, немає місця для множення справ. Ви можете просто слідувати всі можливі імплікації ланцюга, і подивитися , якщо ви коли - небудь отримати як ¬ л з л і л з ¬ л : якщо ви в протягом деякого л , то формула 2-СБ нездійсненна, в іншому випадку вона здійсненна. Так буває, що кількість можливих ланцюгів імплікацій поліноміально обмежена розміром вхідної формули.1¬ллл¬лл

За допомогою -SAT ви можете виразити наслідки форми a b c , де a , b і c - літерали. Тепер ви в біді: якщо ви встановите істину, то або б або з повинен бути істинним, але один? Ви повинні зробити вибір: у вас є 2 можливості. Ось де можливе множення випадків і де виникає комбінаторний вибух.3абcабcабc

Іншими словами, -SAT здатний виражати наявність більш ніж однієї можливості, тоді як 2 -SAT не має такої здатності. Саме така наявність більш ніж однієї можливості ( 2 можливості у випадку 3 -SAT, k - 1 можливості у випадку k -SAT) є причиною типового комбінаторного вибуху NP-повних проблем.3223к-1к


6
Я б хотів, щоб я міг підтримати це ще більше! Набагато краща відповідь!
MGwynne

5
@MGwynne: Дякую за дуже добрий коментар. Вас вітають, і ваша відповідь справді дуже хороша!
Джорджіо Камерані

8
Це гарна відповідь на гарне запитання (ІМХО). Як писав Мак Лейн: "Ефективні чи складні формальні маніпуляції вводяться математиками, які, без сумніву, мають провідну ідею --- але простіше маніпулювати маніпуляціями, ніж сформулювати ідею словами. ... Перспективна експозиція твору Математики дозволяє ідеям світити через показ маніпуляцій ". Цей конкретний запитання і відповідь допоміг "ідеям просвічувати" (для мене). Дякую! :)
Джон Сідлз

4
@John: Вас дуже вітають! ;-) Велике спасибі за ваш чудовий та щедрий коментар, я дуже його оцінив. Я не міг більше погодитися зі словами Mac Lane.
Джорджіо Камерані

Відповідно до відповіді Джорджіо Камерані, не варто зменшувати будь-яку проблему NP до 3SAT, якщо ви вводите більше фіктивних булевих змінних, маєте більше застережень і не маєте ні прибутку, ні прибутку, але переважніше зводити її до CNF SAT або булевої задоволеності або Натомість використовуйте схему SAT, оскільки у цих проблемах у вас є менші булеві змінні та менші пропозиції, а це означає, що алгоритми наївних грубої сили, карти Карна і алгоритм Квіна-МакКлускі мають більшу складність: D.
Прощальна біржа обміну

31

Розглянемо роздільну здатність за формулою 2-SAT. Будь-яка роздільна здатність має розмір не більше 2 (зауважте, що якщо n , m 2 для пунктів довжини n та m resp). Кількість пропозицій розміру 2 є квадратичною за кількістю змінних. Тому алгоритм роздільної здатності є в П.н+м-22н,м2нм

Як тільки ви дістанетесь до 3-SAT, ви зможете отримувати більшу і більшу роздільну здатність, тому все виходить грушоподібною :).

Спробуйте перекласти проблему в 2-SAT. Оскільки у вас не може бути пунктів розміру 3, ви не можете (загалом) кодувати наслідки, що включають 3 змінних або більше, наприклад, що одна змінна є результатом двобічної операції над двома іншими. Це величезне обмеження.


3
"Ви не можете кодувати такі речі, як імплікація" - IMP-SAT також є в P (і я думаю, що NL)
Макс

8
просто ¬ p q . pq¬pq
Kaveh

1
Каве, хороший момент, виправлено зараз.
MGwynne

Як я вже говорив, коли ви звели свою довільну задачу щодо NP або до булевої задоволеності, або до схеми SAT, або до CNF SAT, не зменшуйте проблему до 3SAT, тому що проблема стає ще більш важкою і складною з більшими булевими змінними та умовами. Навіть алгоритм роздільної здатності стає менш ефективним у новій проблемі!
Прощальна біржа обміну

20

Як каже Вальтер, пункти 2-SAT мають особливу форму. Це можна використати для швидкого пошуку рішень.

Насправді є кілька класів екземплярів SAT, про які можна визначити в поліноміальний час, і 2-SAT є лише одним з цих простежуваних класів . Існує три широкі причини причин тяговості:

  1. (Структурна простежуваність) Будь-який клас випадків SAT, коли змінні взаємодіють у вигляді дерева, може бути вирішений за багаточлен. Ступінь многочлена залежить від максимальної ширини екземплярів у класі, де ширина вимірює, наскільки екземпляр знаходиться від дерева. Точніше, Маркс показав, що якщо екземпляри обмежили субмодулярну ширину, то клас можна визначити в многочленному часі, використовуючи підхід ділення і перемоги.

  2. (Мовна простежуваність мови) Будь-який клас випадків SAT, коли шаблон дійсних-хибних змінних є "приємним", може бути вирішений у поліноміальний час. Точніше, модель літералів визначає мову відносин, і Шефер класифікував шість мов, що призводять до простежуваності, кожна зі своїм алгоритмом. 2-SAT утворює один із шести класів Шефера.

  3. (Гібридна простежуваність) Існують також деякі класи примірників, які не підпадають під дві інші категорії, але які можуть бути вирішені в поліноміальний час з інших причин.

    • Даніель Маркс, властивості відстежуваного гіперграфа для задоволення обмежень та сполучних запитів , STOC 2010. ( doi , препринт )
    • Томас Дж. Шефер, Складність проблем задоволення , STOC 1978. ( doi )

2
Існують також аргументи, засновані на структурі простору рішення з випадкової літератури k-SAT, яку можна використовувати для пояснення різниці.
Kaveh

3
@Kaveh: мій опис гібридної тяговості повинен був бути досить невиразним, щоб охопити такі речі. Наприклад, для дуже особливих видів примірників можна зробити аргумент задоволеності на основі локальної леми Ловаша. Дивіться опитування Пірсона та Джевона
András Salamon

3
Також зауважте, що SAT - це особливий випадок проблеми задоволення обмежень, коли кожна змінна може приймати 2 значення. Коли змінні можуть приймати 3 значення, є 10 мовних класів, які можна відстежувати , класифікував Андрій Булатов: cs.sfu.ca/~abulatov/papers/3-el-journal.ps Гібридні класи також цікавіші для великих областей.
Андрас Саламон

10

Якщо ви розумієте алгоритм для 2SAT, ви вже знаєте, чому він знаходиться в P - це саме те, що алгоритм демонструє. Я думаю, що цей комікс ілюструє мою точку зору. Оскільки ви вже знаєте, чому 2SAT знаходиться в P, то, напевно, ви хочете знати, чому 2SAT не є важким для NP.

Щоб зрозуміти, чому 2SAT не є складним, вам слід врахувати, наскільки легко звести до нього інші проблеми в NP. Щоб зрозуміти це, зрозумійте, як SAT можна знизити до 3SAT і спробуйте застосувати ті самі методи, щоб зменшити SAT до 2SAT. 2SAT просто не такий виразний, як 3SAT та інші варіанти SAT.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.