Труднее ли найти решение проблемы выполнимости, чем решить выполнимость?


11

Является ли проблема определения того, является ли данное булево выражение выполнимым в вычислительном отношении отличным от фактического нахождения решения выражения?

Другими словами, есть ли другой способ найти, что данное выражение выполнимо без явного определения «правильных настроек» для булевых переменных? Или все возможные доказательства сводятся за полиномиальное время к «правильным настройкам»?

Прости мое невежество, я всего лишь студент инженерного факультета. Википедия, по-видимому, подразумевает, что просто поиск SAT или UNSAT является NP-полным.


8
Короткий ответ: проблема поиска удовлетворительного задания в вычислительном отношении так же сложна, как и решение, существует ли оно. Идея состоит в том, что с учетом алгоритма, который решает выполнимость, его можно использовать для эффективного построения удовлетворительного присваивания. Проверьте en.wikipedia.org/wiki/…
Джон Д.

2
Я думал, что UNSAT был завершен coNP?
Г. Бах

Ответы:


15

Как упомянуто в комментарии, любой метод определения выполнимости булевой формулы может быть легко преобразован в метод поиска удовлетворительного присвоения переменной. Это потому, что все NP-полные проблемы являются самоуничтожаемыми.

Из Википедии :

Self-сводимость

Проблема SAT является самовосстанавливаемой, то есть каждый алгоритм, который правильно отвечает, если экземпляр SAT является разрешимым, может использоваться для поиска удовлетворительного назначения. Сначала задается вопрос по заданной формуле . Если ответ «нет», формула неудовлетворительная. В противном случае вопрос задается по частично инстанцированной формуле , т. с заменой первой переменной на , и соответственно упрощается. Если ответ «да», то , иначе . Значения других переменных могут быть найдены впоследствии таким же образом. Всего требуется прогонов алгоритма, гдеΦΦ{x1=TRUE}Φx1TRUEx1=TRUEx1=FALSEn+1n - число различных переменных в .Φ


-4

Правильный ответ состоит в том, что определение, существует ли решение, и определение решения являются вычислительно различными. Не все методы определения того, существует ли решение, могут дать решение. Существует решение задачи о гамильтоновом пути, которое может определить, существует ли путь, но не может создать такой путь. При этом вопрос сделан спорным по arxiv.org/abs/cs/0205064.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.