定义SAT2016 = {\ phi | \ phi是CNF公式,最多有2016条款}。 假设P \ neq NP,是SAT2016 NP-complete?
由于每个子句中的文字数量不受限制,因此不能立即清楚是否存在用于检查公式的可满足性的多项式时间算法,该算法具有对子句数量的常数界限。
欢迎您的想法。
答案 0 :(得分:0)
SAT2016在P。
注意,为了满足公式,你必须为每个子句的至少一个文字分配1。每个子句最多包含2n
个文字。因此,从每个子句中选择单个文字的方式最多为(2n)^2016
。为了找出公式是否可满足,你应该迭代(最多)(2n)^2016
种可能性(从每个子句中选择一个文字)并检查每种可能性是否合法。也就是说,对于2016文字的每个选择(每个子句中的一个),您应该检查2016文字中的两个是否恰好是某个变量及其否定。如果是这种情况,您将继续选择2016文字。如果您经历了所有(2n)^2016
种可能性并发现它们都包含冲突,那么您可以得出结论,该公式是不可满足的。
由于最多有(2n)^2016
种可能性,并且检查给定的可能性需要恒定的时间(因为您只需要遍历一组2016文字中的所有可能对),算法的运行时间是多项式的在n
。