Eine 3-CNF-Formel, die die Auflösungsbreite

13

Es sei daran erinnert, dass die Breite einer Auflösungs-Widerlegung einer CNF-Formel die maximale Anzahl von Literalen in einer Klausel ist, die in . Für jedes gibt es nicht erfüllbare Formeln in 3-CNF. Jede Auflösungs-Widerlegung von erfordert eine Breite von mindestens .RFRwFFw

Ich brauche ein konkretes Beispiel für eine unbefriedigende Formel in 3-CNF (so klein und einfach wie möglich), die keine Auflösungs-Widerlegung der Breite 4 hat.

Jan Johannsen
quelle
Benötigen Sie genau die Breite 5 oder mindestens die Breite 5? Im letzteren Fall schätze ich, dass einige zufällige Klauseln für eine Handvoll Variablen ausreichen. Nicht sehr schön und nicht sehr klein.
MassimoLauria
1
Ich denke, eine relativ direkte Computer- / empirische Suche würde dies herausfinden oder ausschließen. Ich denke auch, dass es hier eine allgemeinere / interessantere, nicht erforschte Theorie gibt. Siehe auch in Resolution Proofs, sind alle DAGs möglich? , auf der Suche nach erneuten Abstimmungen, wenn Sie einverstanden sind =) verwandte Frage: Für -SAT-Formeln, welche Dimension (en) Auflösung DAGs sind möglich? m×n
vzn
Jan, ich denke Jacob sollte das leicht beantworten können. Übrigens, möchten Sie die Frage ein wenig verallgemeinern und nach einer Methode fragen, um 3-CNFs mit gegebener Auflösungsbreite zu erhalten?
Kaveh
Massimo, ich brauche ein konkretes Beispiel, das ich auf einer Tafel oder so aufschreiben und erklären kann. Zufällige Klauseln reichen also nicht aus.
Jan Johannsen
1
Ich bin jetzt in der falschen Zeitzone, um in der Lage zu sein, richtig zu denken, aber vielleicht würde eine Tseitin-Formel über einem wirklich kleinen Diagramm (wo Sie die Erweiterung von Hand überprüfen könnten) ausreichen? Aber Sie brauchen wirklich einen 3-CNF, oder? Für einen 4-CNF würde ich vielleicht mit einem rechteckigen Gitter geeigneter Größe herumspielen und sehen, was passiert. Nur ein paar halbherzige Gedanken ...
Jakob Nordstrom

Antworten:

14

Das folgende Beispiel stammt aus dem Artikel, der eine kombinatorische Charakterisierung der Auflösungsbreite durch Atserias und Dalmau liefert ( Journal , ECCC , Autorenexemplar ).

Theorem 2 der Arbeit besagt, dass unter der Annahme einer CNF-Formel Auflösungs-Widerlegungen mit einer Breite von höchstens k für F Gewinnstrategien für Spoiler im existentiellen ( k + 1 ) -Kieselspiel entsprechen. Denken Sie daran, dass das existenzielle Pebble-Spiel zwischen zwei konkurrierenden Spielern, genannt Spoiler und Duplicator, gespielt wird und die Positionen des Spiels partielle Zuweisungen der Domänengröße von höchstens k + 1 zu Variablen von F sind . Im ( k + 1 ) -Kieselspiel will Spoiler ausgehend von der leeren Aufgabe eine Klausel von F fälschenFkF(k+1)k+1F(k+1)FDabei werden höchstens boolesche Werte gleichzeitig gespeichert, und Duplicator möchte verhindern, dass Spoiler dies tut.k+1

Das Beispiel basiert auf (der Negation von) dem Pigeonhole-Prinzip.

Für jedes und j { 1 , , n } sei p i , j eine aussagekräftige Variable, was bedeutet, dass die Taube i in Loch j sitzt . Für jedes i { 1 , , n + 1 } und j { 0 , , n } seii{1,,n+1}j{1,,n}pi,jiji{1,,n+1}j{0,,n} sei eine neue Satzvariable. Die folgende 3 -cnf Formel E P i zum Ausdruckdass Taube i in irgendeinem Loch sitzt: E P i¬ y i , 0n j = 1 ( y i , j - 1p i , j¬ y i , j ) y i , n .yi,j3EPii

EPi¬yi,0j=1n(yi,j1pi,j¬yi,j)yi,n.
Schließlich ist die -cnf Formel E P H P n + 1 n die Negation des pigeonhole Prinzip exprimierenden ist die Konjunktion aller E P i und alle Klauseln H i , j k¬ p i , k¬ p j , k für i , j { 1 , , n + 1 } , i j und3EPHPnn+1EPiHki,j¬pi,k¬pj,ki,j{1,,n+1},ij .k{1,,n}

Lemma 6 des Papiers gibt einen ziemlich kurzen und intuitiven Beweis dafür , dass Spoiler nicht gewinnen können -Kieselstrand Spiel auf E P H P n + 1 n , also E P H P n + 1 n hat keine Resolutionswiderlegung der Breite höchstens n - 1 .nEPHPnn+1EPHPnn+1n1

Die Arbeit hat ein weiteres Beispiel in Lemma 9, das auf dem Prinzip der dichten linearen Ordnung basiert.

Ω(n(k3)/12)k+1

Siuman
quelle
2
OK, das hätte ich wissen müssen. SoEPHP56(leicht vereinfacht) wäre ein Beispiel mit 48 Variablen und ungefähr 100 Klauseln. Wenn sich nichts wesentlich Einfacheres ergibt, werde ich diese Antwort akzeptieren.
Jan Johannsen