算法概论习题8.8 证明精确的4SAT问题是NP完全问题

来源:互联网 发布:ipv6有什么好处知乎 编辑:程序博客网 时间:2024/04/28 18:00

算法概论习题8.8 证明精确的4SAT问题是NP完全问题


题目描述:

8.8. In theEXACT4SATproblem, the input is a set of clauses, each of which is a disjunction of exactly
four literals, and such that each variable occurs at most once in each clause. The goal is to find
a satisfying assignment, if one exists. Prove that
EXACT4SATis NP-complete.


证明:

        已知3SAT问题是NP完全问题,下面将证明可以在多项式时间内将3SAT问题规约为精确的4SAT问题,则即可证明精确的4SAT问题是NP完全问题。

        对于3SAT问题中的任意子句C,假设C = x1 V x2 V x3,则C = (x1 V x2 V x3) V (x4~x4)(x1 V x2 V x3 V x4)∧(x1 V x2 V x3 V ~x4),将3SAT问题中的所有子句都按照这样的方式转化,则3SAT问题规约为精确的4SAT问题,且规约能在多项式时间内完成

        综上所述,精确的4SAT问题是NP完全问题。