证明DOUBLE-SAT是NP完全的


13

为便于参考,此处定义了众所周知的SAT问题。

DOUBLE-SAT问题定义为

DOUBLE-SAT={⟨ϕ⟩∣ϕ has at least two satisfying assignments}

我们如何证明它是NP完全的?

不胜枚举的证明方法将不胜感激。

Answers:


27

这是一种解决方案:

NPϕ(x1,…,xn)ϕ

NP

ϕ(x1,…,xn)

  1. y
  2. ϕ′(x1,…,xn,y)=ϕ(x1,…,xn)∧(y∨y¯)

ϕ(x1,…,xn)ϕϕ′(x1,…,xn,y)y∨y¯y=1y=0yϕ′x1xny∈

ϕ(x1,…,xn)∉SATϕ′(x1,…,xn,y)=ϕ(x1,…,xn)∧(y∨y¯)ϕ′(x1,…,xn,y)∉Double-SAT

SAT≤pDouble-SATNP


那比我的建议好。
— 拉斐尔

10

SATSATDOUBLE-SAT

φφ∨f(φ)φf

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.