3-нфн-сат с вопросом о поворотах - PullRequest
3 голосов
/ 09 июня 2010

Если вы измените задачу 3-cnf-sat следующим образом:Для каждого c i , c i = -x i1 ИЛИ -x i2 ИЛИ x i3 , что означает точноодна из переменных появляется без отрицания.Вам также даются значения (0 или 1) для некоторых (или всех) значений x.Вы должны быть в состоянии решить проблему (найти значения x, которые удовлетворяют задаче или доказать, что она неудовлетворительна) за полиномиальное время.

  1. Что такое алгоритм полиномиального времени выполнения, решающий эту проблему?
  2. Докажите, что он работает за полиномиальное время.

подсказка: showчто c i = -x i1 ИЛИ -x i2 ИЛИ x i3 равно c = (x i1 AND -x i2 ) -> x i3

1 Ответ

1 голос
/ 04 января 2012

Формулы, которые вы описываете, являются подмножеством формул Хорна.Таким образом, проблема выполнимости не сложнее, чем Выполняемость по Рогу и допускает то же решение за линейное время.

...