Prouver que DOUBLE-SAT est NP-complet


13

Le problème SAT bien connu est défini ici à titre de référence.

Le problème DOUBLE-SAT est défini comme

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

Comment pouvons-nous prouver qu'il est NP-complet?

Plus d'une façon de prouver sera appréciée.

Réponses:


26

Voici une solution:

NPϕ(x1,,xn)ϕ

NP

ϕ(x1,,xn)

  1. y
  2. Formule de sortie .ϕ(x1,,xn,y)=ϕ(x1,,xn)(yy¯)

ϕ(x1,,xn)ϕϕ(x1,,xn,y)yy¯y=1y=0yϕ , ..., x n , y ) Double-SAT.x1xny

ϕ(x1,,xn)SATϕ(x1,,xn,y)=ϕ(x1,,xn)(yy¯) .ϕ(x1,,xn,y)Double-SAT

Par conséquent, , et donc Double-SAT est N P -Complete.SATpDouble-SATNP


C'est plus agréable que ma proposition.
Raphael

10

SATSATDOUBLE-SAT

φφf(φ)φf

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.