Ich habe eine einfache Konstruktion bekommen, die scheinbar einem Papier widerspricht, das plausible Vermutungen annimmt.
Was ist falsch an dem Argument, da es unwahrscheinlich ist, dass die Vermutung falsch ist?
Eine UND-Komprimierung ist ein deterministischer Polynom-Zeit-Algorithmus, der eine Reihe von SAT-Instanzen abbildet zu einer einzelnen SAT-Instanz von Größe so dass ist genau dann erfüllbar, wenn alle sind zufriedenstellend. ... es sei denn, der unwahrscheinliche komplexitätstheoretische Zusammenbruch auftritt, gibt es keine UND-Komprimierung für SAT.
Konstruktion:
Wenn Sind Sie nicht in CNF, konvertieren Sie sie in CNF und fügen Sie möglicherweise neue Variablen hinzu. Das ist Polynom.
In CNF kann man ein UND-Gatter codieren und ODER-Gatter .
Die UND- und ODER-Gatter haben die Eigenschaft, dass wir für alle zufriedenstellenden Zuweisungen ihrer CNFs haben und .
Lassen Sie die -te Klausel in Sein für Literale .
Berechnen Sie die Variable mithilfe des ODER-Gatters und neuer Variablen .
Für alle Klauseln in () und die Berechnungsvariable UND-Gatter .
Durch den Bau .
Für alle mit dem UND-Gatter berechnen .
.
Also die endgültige Formel ist die Vereinigung der CNFs für ,,und eine Einheitsklausel .
ist linear in der Anzahl aller Literale, ist polynomisch in , was macht Polynom in .
Dies scheint der Behauptung in der Zeitung zu widersprechen, es sei denn, der bestimmte Zusammenbruch geschieht.
Was ist falsch an diesem Argument, das der Behauptung in der Zeitung zu widersprechen scheint?
Eine ähnliche Konstruktion funktioniert für die ODER-Komprimierung, wenn mindestens eine vorhanden ist muss erfüllbar sein.
Die neu eingeführte Variable wird eindeutig durch die ursprünglichen Variablen bestimmt.
OR gate in CNF 3 := 1 \/ 2 : [[1 2 -3],[-1 3],[-2 3]]
AND gate in CNF 3 := 1 /\ 2 : [[-1 -2 3],[1 -3],[2 -3]]
quelle
Antworten:
Die Verwirrung ergibt sich aus einem Missverständnis dessen, was Polynom in der Größe der größten Instanz bedeutet. Dies bedeutet nicht, dass das Polynomwachstum der Kompressorleistung als Anzahl der Instanzen zulässig ist (t ) erhöht sich. Es bedeutet vielmehr, dass die Leistung des Kompressors nur mit zunehmender maximaler Instanzgröße wachsen darf, unabhängig davont und dann nur innerhalb eines festen Polynoms dieses Wertes.
Ihr Kompressor verkettet die CNF-Instanzen, konvertiert sie in Schaltkreise und konvertiert die Schaltkreise dann wieder in CNF. Die Ausgabe wächst linear mit der Anzahl der Instanzen (t ) unabhängig von den Instanzgrößen und muss daher jede Polynomfunktion der maximalen Instanzgröße überschreiten. Aus diesem Grund verursacht Ihr Kompressor, da er überhaupt keine Komprimierung durchführt, keinen Hierarchiekollaps.
Es scheint auch ein Missverständnis darüber zu geben, was die UND-Kompressorfunktion tun soll. Es muss keine Instanz ausgegeben werden, die alle zufriedenstellenden Zuweisungen für alle Eingabeinstanzen beibehält, und es muss auch keine sparsame Zählreduzierung von den Eingabeinstanzen zur Ausgabeinstanz erfolgen. Eine konforme Implementierung könnte im Extremfall eine leere Instanz ausgeben, wenn alle Eingabeinstanzen erfüllt werden können, andernfalls eine einzelne leere Klausel.
Ein plausiblerer UND-Kompressor kann Standard-Datenkomprimierungstechniken wie die Verwendung eines Wörterbuchs anpassen. Eine Tabelle mit nicht erfüllbaren Unterformeln könnte vorberechnet und zur Suche nach den eingegebenen SAT-Instanzen verwendet werden. Eine Übereinstimmung würde eine verbotene Variablenzuweisung implizieren, die, wenn sie als gelernte Klausel instanziiert wird, mehrere andere Klauseln subsumieren (eliminieren) könnte.
Eine andere Technik besteht darin, die unterschiedlichen Größen der Eingabeinstanzen auszunutzen. Wenn die Eingabeinstanzen unterschiedliche Größen haben, können die größeren Instanzen nach Unterformeln durchsucht werden, die einer der kleineren Instanzen entsprechen. Eine solche Übereinstimmung impliziert das Vorhandensein einer Variablenzuweisung, die die Unterformel erzeugen könnte, und daher ist die größere Instanz erfüllbar, wenn die kleinere Instanz erfüllt werden kann. Wenn die kleinere Instanz nicht zufriedenstellend ist, ist die größere Instanz möglicherweise immer noch zufriedenstellend, aber es spielt keine Rolle, da die Kompressorleistung immer noch eine unbefriedigende Formel erzeugen sollte. Die Ausgabeinstanz ist also effektiv von der Erfüllbarkeit der größeren Instanz entkoppelt, und daher muss die größere Instanz überhaupt nicht mehr in der Ausgabe dargestellt werden, wodurch eine große Anzahl von Klauseln entfällt.
Es gibt viele andere Techniken. Der Satz in der Arbeit legt nahe, dass ein effizientes Erreichen hoher Komprimierungsniveaus angesichts des implizierten teilweisen Zusammenbruchs der Polynomhierarchie unwahrscheinlich ist.
quelle
Re Edit 3:
⟨F,T⟩ ist eine zufriedenstellende Aufgabe für die Instanz "(¬x0)∧x1 ".
⟨T,F⟩ ist eine zufriedenstellende Aufgabe für die Instanz "x0∧¬x1 ".
(¬x0)∧x1 " und "x0∧¬x1 "sind beide zufriedenstellend.
(¬x0)∧x1 "ist erfüllbar, wenn die Instanz"x0∧¬x1 "ist zufriedenstellend.
⟨F,T⟩ ist keine zufriedenstellende Aufgabe für die Instanz "x0∧¬x1 ".
⟨F,T⟩ ist eine zufriedenstellende Aufgabe für die Instanz "(¬x0)∧x1 "aber nicht für die Instanz"x0∧¬x1 ".
(¬x0)∧x1 "zur Instanz
x0∧¬x1 "behält nicht alle zufriedenstellenden Zuweisungen der Eingabeinstanz bei, ist
(¬x0)∧x1 "ist erfüllbar wenn "x0∧¬x1 "ist zufriedenstellend.
Die Instanzen"
Die Instanz"
Also die Transformation von der Instanz"
"
aber so, dass"
Hier ist eine nicht unbedingt effiziente Version eines UND-Komprimierungsalgorithmus für SAT: Wenn alle vorhanden sind,
x0 ", sonst die einzelne SAT-Instanz ausgeben"x0∧¬x0 ".
Bestimmen Sie, ob alle eingegebenen SAT-Instanzen erfüllt werden können oder nicht.
geben Sie die einzelne SAT-Instanz aus. "
quelle
Die letzten Dinge, die mich verwirrten, waren die Grenzent und die genaue Definition des Polynoms.
Das Papier "Unmöglichkeit der Instanzkomprimierung und prägnante PCPs für NP" hat sehr geholfen.
Es geht um ODER-Komprimierung, funktioniert aber.
In der Notation des Originalpapierst=m und max|xi|=n .
Das Papier erklärt:
quelle