NP完全问题——证明EXACT 4SAT是NP完全问题

xiaoxiao2021-02-28  62

8.8

In the EXACT 4SAT problem, 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 EXACT 4SAT is NP-complete.

证明

首先很显然,EXACT 4SAT属于NP。现在通过将3SAT归约到EXACT 4SAT来证明后者的NP完全性。

1. 对于任意一个3SAT实例,如果其中某个子句中包含了同一个文字多次,那么可以缩减为一次。

如:(x∨y∨y∨y)可以变为(x∨y)

2. 如果同时包含了某个变量的肯定及否定,那么可以将这个变量去掉。

如:(x∨y∨~y)可以变为(x)

3. 然后,可以再在每个子句中可以添加一些无关变量,这样就可以将每个子句所包含的文字数目扩充到四个。

如:(x∨y∨z)可以变为(x∨y∨z∨a)(x∨y∨z∨~a)

下面证明这种转换是等价的:

① 若(x∨y∨z)为真,无论a是否为真,(x∨y∨z∨a)和(x∨y∨z∨~a)都为真,即(x∨y∨z∨a)(x∨y∨z∨~a)为真。

② 若(x∨y∨z∨a)(x∨y∨z∨~a)为真,即(x∨y∨z∨a)和(x∨y∨z∨~a)都为真。

1) 若a为真,那么~a为假,则(x∨y∨z)必须为真,否则(x∨y∨z∨~a)为假。

2) 若a为假,(x∨y∨z)必须为真,否则(x∨y∨z∨a)为假。

因此这种转换是等价的。

至此,即已将3SAT问题归约到了EXACT 4SAT问题。由于3SAT为NP完全问题,所以4SAT也是NP完全问题。

转载请注明原文地址: https://www.6miu.com/read-72976.html

最新回复(0)