Über Inverse 3-SAT


10

Kontext : Kavvadias und Sideri haben gezeigt, dass das inverse 3-SAT-Problem coNP Complete ist: Gibt es bei einer Reihe von Modellen für n Variablen eine 3-CNF-Formel, bei der ϕ die genaue Menge von Modellen ist? Es entsteht eine unmittelbare Kandidatenformel, die die Konjunktion aller 3-Klauseln ist, die von allen Modellen in ϕ erfüllt werden .ϕnϕϕ

Da es alle implizierten 3-Klauseln enthält, kann diese Kandidatenformel leicht in eine äquivalente Formel die unter Auflösung 3-geschlossen ist. - Die 3-Schließung einer Formel ist die Teilmenge ihres Abschlusses unter Auflösung, die nur Klauseln von enthält Größe 3 oder weniger. Eine CNF-Formel wird unter Auflösung geschlossen, wenn alle möglichen Auflösungen durch eine Klausel der Formel subsumiert werden - eine Klausel c 1 wird durch eine Klausel c 2 subsumiert, wenn alle Literale von c 2 in c 1 sind .Fϕc1c2c2c1

Bei ist eine teilweise Zuordnung der Variablen so, dass I keine Teilmenge eines Modells von ϕ ist .IIϕ

Rufen Sie , die induzierte Formel durch Anwenden von I auf F ϕ : Jede Klausel, die ein Literal enthält, das unter I als t r u e ausgewertet wird, wird aus der Formel gelöscht, und alle Literale, die unter I als f a l s e ausgewertet werden, werden aus allen Klauseln gelöscht .Fϕ|IIFϕtrueIfalseI

Rufen Sie , die Formel, die von F ϕ | abgeleitet ist Ich durch alle möglichen 3-begrenzten Auflösungen (in denen das Resolvent und die Operanden höchstens 3 Literale haben) und Subsumptionen.Gϕ|IFϕ|I

Frage : Ist 3-geschlossen unter Auflösung?Gϕ|I


"P = NP"? Nach K & S Abb. 1 sind "Modelle" analog zu Bitvektoren. Die Frage muss klar bestimmen, wie diese Modelle dargestellt werden (und wenn sie in Bezug auf zufriedenstellende Bitvektoren angepasst werden, wäre die Antwort möglicherweise offensichtlicher?). Wenn Lösungen als Bitvektoren dargestellt werden, gibt es für einige 3SAT-Formeln exponentiell viele zufriedenstellende Bitvektoren mit der Größe der Formel. das ist die erwartete "Explosion in der Größe". Recht? Einige andere Papiere, z. B. natürliche Beweise, beziehen sich ebenfalls auf die "Wahrheitstabelle" der Formel, die hilfreich sein kann, um sie mit der Befriedigung von Bitvektoren in Verbindung zu bringen ....
vzn

2
Ist es offensichtlich, dass der dritte Schritt effizient berechnet werden kann? (Dh, zu entscheiden, ob es eine Teilzuordnung gibt, die nicht in ϕ habe, so dass F ϕ | I die leere Klausel nicht enthält.) Ich muss etwas vermissen, aber das ist mir nicht klar. IϕFϕ|I
Daniel Apon

Korrektur ist es vielleicht eher mit coNP = P verbunden? oder möglicherweise coNP = NP? nicht ganz sicher. Das erinnert mich übrigens auch sehr an die Dualisierung, bei der Modelle mit DNF "dargestellt" werden können. siehe zB dieses ref auf Dualisierung von Bioch / Ibaraki
VZN

2
@ Daniel, IMHO ja, der dritte Schritt kann effizient berechnet werden, solange Schritt 1 und 2 dies können: Da die Größe der Teilzuweisungen, die nicht in sind, begrenzt ist, ist es einfach, F ϕ | zu berechnen Ich (für jedes ich nicht in ϕ ) und überprüfe, ob die leere Klausel darin ist. Der mögliche Fehler würde in Schritt 1 auftreten (ich habe einen Fehler gesehen, den ich zu beheben versuche). ϕFϕ|IIϕ
Xavier Labouze

2
@ XavierLabouze: a gab einen kurzen Blick auf das Papier, nur eine Anmerkung: Der Beweis, dass in Polynomzeit berechnet werden kann, ist (für mich) nicht allzu klarFϕ
Marzio De Biasi

Antworten:


3

Antwort: Ja (auch wenn eine Teilmenge eines Modells von ϕ bin )Iϕ

Sei die Menge von Klauseln , die aus ableiten F & phgr;F & phgr; | Ich durch alle möglichen 3 begrenzte Auflösungen und Subsumptionen ( R | I ist die 3-begrenzte Schließung von F & phgr;F & phgr; | I ). Wenn c eine durch F ϕ implizierte Klausel gegeben ist , existiert mindestens eine Teilmenge von R | Ich, dessen Klauseln implizieren c . Nennen Sie R c eine solche Teilmenge.R|IFϕFϕ|IR|IFϕFϕ|IcFϕR|IcRc

Sei die folgende Eigenschaft: Für alle c, die durch F ϕ impliziert werden, so dass | c | Ich | 3 ,P(k)cFϕ|c|I|3

so, dass | R c | k c | Ich werde durch eine KlauselG ϕ | subsumiert Ich ][RcR|I|Rc|kc|IGϕ|I]

Hier beginnt die Wiederholung. Gegeben impliziert durch F ϕ, so dass | c | Ich | 3 , dh c | I der 3-Verschluss von F ϕ | Ich .cFϕ|c|I|3c|IFϕ|I

  1. . WennR cR | Ich / | R c | = 1 dann R c = { d } ( d F & phiv;F & phiv; | I subsumiert c ) und c | Ich werde von d | subsumiert IF ϕ | I (beachte, dass jede Klausel von F ϕ | I.k=1RcR|I/|Rc|=1Rc={d}dFϕFϕ|Icc|Id|IFϕ|IFϕ|Iwird durch eine Klausel von subsumiert I ). Also P ( 1 ) .Gϕ|IP(1)

  2. Angenommen, für k 1 . Wenn R cR | Ich so, dass | R c | k + 1 (und kein anderes R c der Größe 1, so dass c F ϕ und | c | > 3 ), dann nehme c = ( α β γ L I ) an, wobei α , β ,P(k)k1RcR|I|Rc|k+1RccFϕ|c|>3c=(αβγLI) sind Literale nicht gesetzt durch I und L I ist alles eine Teilmenge von Literalen auf 0 unter bewerten I ( L I & ne; ) , dh c | I = ( α β γ ) , mit α , β , γ nicht notwendigerweise unterschiedlich. α,β,γILII(LI)c|I=(αβγ)α,β,γ

  3. Entfernen Sie eine Klausel aus R c, so dass | d i | Ich | < | d i | 3 , mit anderen Worten, derart , daß d i enthält einige Literal aus L I (es gibt mindestens eine solche Klausel in R c , da L I & ne; ) und | d i | Ich | 2 .diRc|di|I|<|di|3diLIRcLI|di|I|2

  4. Die Größe der verbleibenden Menge ist k . Wenn eine bestimmte Klausel c ' = ( α & bgr ; & ggr; L ' I ) durch R cd i impliziert wird (wobei L ' I eine Teilmenge von Literalen ist, die alle unter I mit 0 bewertet werden ), dann | c ' | Ich | = 3 und R c ' = R cdRcdikc=(αβγLI)RcdiLII|c|I|=3 so, dass | R c ' | k. DurchP(k)ist c ' | I =(& agr;& bgr;& ggr;)wird dann durch eine Klausel subsumiert G & phgr; | I , Induzieren vonP(k+1)fürc.Rc=RcdiR|I|Rc|kP(k)c|I=(αβγ)Gϕ|IP(k+1)c

  5. Wenn enthält ˉ α oder ˉ β oder ˉ γ, dann d i | Ich bin nutzlos zu implizieren [eine Klausel subsumiert] c . Dann impliziert R cd i c und induziert P ( k + 1 ) wie zuvor gezeigt.di|Iα¯β¯γ¯di|IcRcdicP(k+1)

  6. Wenn fasse c | zusammen I dann ist P ( k + 1 ) für c erfüllt .di|IFϕ|Ic|IP(k+1)c

  7. Wenn fasse c | nicht zusammen I und enthält nicht ˉ α oder ˉ β oder ˉ γ, dann entweder d i | I = ( x ) oder d i | I = ( a x ) oder d i | I = ( x y ) , wobei x und y { α β γdi|Ic|Iα¯β¯γ¯di|I=(x)di|I=(ax)di|I=(xy)xy und werden nicht durch I und a { α β γ } gesetzt .{αβγ}Ia{αβγ}

    • Wenn dann impliziert R cd i ( ˉ x α β γ L I ) (man erinnere sich, dass das Implizieren einer bestimmten Klausel C das Implizieren einer Klausel bedeutet, die C subsumiert ). Da jede Auflösung mit d i | I = ( x ) als Operand entfernt ˉ x vom anderen Operanden, dann keine Klausel von R cd idi|I=(x)Rcdi(x¯αβγLI)CCdi|I=(x)x¯Rcdienthält (da R cd iR | I , welche die 3-begrenzte Schließung ist F & phiv;F & phiv; | I ). Dann impliziert R cd i ( α β γ L I ) und induziert P ( k + 1 ), wie in Punkt (4) gezeigt.x¯RcdiR|IFϕFϕ|IRcdi(αβγLI)P(k+1)
    • Wenn dann impliziert R cd i ( ˉ x α β γ L I ) . Ersetzen ˉ x durch eine in jeder möglichen Klausel von R cd i (wenn die neue Klausel durch eine Klausel in subsumiert R | I , halten Sie die subsumierenden Klausel statt Wie dem auch sei, die ersetzende Klausel ist in. R | I ). Name R cdi|I=(ax)Rcdi(x¯αβγLI)x¯aRcdiR|IR|I die resultierende Menge ( R c , d i R | I ). Dannimpliziert R c , d i (αβγ L I )und induziertP(k+1)wie oben.Rc,diRc,diR|IRc,di(αβγLI)P(k+1)

    • Wenn dann impliziert R cd i ( ˉ x α β γ L I ) und ( ˉ y α β γ L I ) . Ersetzen Sie ˉ x durch y in jeder möglichen Klausel von R cd i (wie oben, wenn die neue Klausel durch eine Klausel in R | I subsumiert wirddi|I=(xy)Rcdi(x¯αβγLI)(y¯αβγLI)x¯yRcdiR|I, behalten Sie stattdessen die Subsuming-Klausel bei). Nennen Sie die resultierende Menge ( R c , d iR | I ). Dann impliziert R c , d i ( y α β γ L I ) . Da es auch impliziert ( ˉ y α β γ L I ) , impliziert es das Resolvent ( α β γ L I ) , wodurch P induziert wirdRc,diRc,diR|IRc,di(yαβγLI)(y¯αβγLI)(αβγLI) .P(k+1)

Durch diese Wiederholung kann jede Klausel die 3-Schließung von F ϕ | Ich werde durch eine Klausel G ϕ | subsumiert Ich (der andere Weg gilt auch). Dann ist G ϕ | I entspricht dem 3-Verschluss von F ϕ | Ich .Fϕ|IGϕ|IGϕ|IFϕ|I


-2

Ich sehe nicht, wie in Polynomzeit berechnet werden kann, da die Auflösung selbst exponentielle Zeit benötigt (im schlimmsten Fall). Angenommen, Ihre Kandidaten-3-CNF-Formel F 1 lautet wie folgt: F 1 : = { { a , b , c } , { d , e , ¬ c } , { a , ¬ b , f } , { d , e , ¬ f } }FϕF1

F1:={{a,b,c},{d,e,¬c},{a,¬b,f},{d,e,¬f}}
Dann ist das Ergebnis der Auflösung von die folgende Formel F 2 : F 2 : = { { a , b , c } , { d , e , ¬ c } , { a , ¬ b , f } , { d , e , ¬ f } , { a , b , d , e } ,F1F2 Somitlautetdie Formel F ϕ wie folgt: F ϕ : = { { a , b , c } , { d , e , ¬ c } , { a , ¬ b , f } , { d , e ,
F2:={{a,b,c},{d,e,¬c},{a,¬b,f},{d,e,¬f},{a,b,d,e},{a,¬b,d,e},{a,d,e}}
Fϕ
Fϕ:={{a,b,c},{d,e,¬c},{a,¬b,f},{d,e,¬f},{a,d,e}}

Wie Sie jedoch sehen können, sollten Sie , um die letzte Klausel in , zuerst alle vier Literal-Klauseln erhalten. Ich sehe also keine Möglichkeit, exponentiell viele Schritte zur Lösung loszuwerden. In der Tat wissen wir für einige Probleme wie das Pigeonhole-Prinzip, dass die Auflösung es nicht in weniger als exponentiell vielen Schritten lösen kann (aber um fair zu sein, soweit ich weiß, liegen diese Beispiele nicht in 3-CNF-Form und mit einer intelligenten Auflösung vor kann vorhanden sein, wenn die Eingabe garantiert in 3-CNF-Form vorliegt).Fϕ


F1ϕ
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.