Tableaukalkül für Aussagenlogik Tableau: • • • • Test einer Formel auf Widersprüchlichkeit Fallunterscheidung baumförmig organisiert Keine Normalisierung, d.h. alle Formeln sind erlaubt Struktur der Formel wird beachtet • Verallgemeinerbar für Modallogik, Prädikatenlogik, mehrwertige Logik. . . AD, SS 2012, F olien Ded−Aussagenlogik, Seite 1 3. M ai2012 Tableaukalkül: Grundbegriffe • • α-Formeln (konjunktive Formeln) β-Formeln (disjunktive Formeln) Zerlegungen: AD, SS α X ∧Y ¬(X ∨ Y ) ¬(X =⇒ Y ) (X ⇐⇒ Y ) α1 X ¬X X X =⇒ Y α2 Y ¬Y ¬Y Y =⇒ X β X ∨Y ¬(X ∧ Y ) X =⇒ Y ¬(X ⇐⇒ Y ) β1 X ¬X ¬X ¬(X =⇒ Y ) β2 Y ¬Y Y ¬(Y =⇒ X) 2012, F olien Ded−Aussagenlogik, Seite 2 3. M ai2012 Tableau: Definition Idee beim Tableau-Kalkül: Zeige, dass die eingegebene Aussage inkonsistent ist. Definition Ein aussagenlogisches Tableau ist ein markierter Baum die Knoten sind mit Formeln markiert. Die Eingabeformel ist an der Wurzel Ein Pfad ist geschlossen, wenn 0 oder ¬1 vorkommt, oder gleichzeitig F und ¬F auf dem Pfad Ein Pfad ist (atomar) geschlossen, wenn 0 oder ¬1 vorkommt, oder Atom A und ¬A auf diesem Pfad ist Ein Tableau ist (atomar) geschlossen, wenn alle Pfade (atomar) geschlossen AD, SS 2012, F olien Ded−Aussagenlogik, Seite 3 3. M ai2012 Tableau-Aufbau-Regeln • • • Eingabe ist eine Formel F Initial: nur Knoten F Danach Expansionsregeln: ¬¬X X Beachte: Einschränkung: α α1 α2 β β1 | β2 ¬0 1 ¬1 0 Die expandierte Formel muss kein Blatt sein. Formel pro Pfad nur einmal expandieren Ein Formel F ist bewiesen, wenn aus dem Tableau mit einem Knoten und der Formel ¬F ein geschlossenes Tableau erzeugt worden ist. AD, SS 2012, F olien Ded−Aussagenlogik, Seite 4 3. M ai2012 Strategien Aufbau-Regeln sind nicht-deterministisch D.h. Reihenfolge ist nicht vorgeschrieben. Effiziente Strategie: AD, SS möglichst wenig verzweigen d.h. bevorzuge α-Regeln 2012, F olien Ded−Aussagenlogik, Seite 5 3. M ai2012 Beispiel Tableau für X ∧ ¬X: X ∧ ¬X | X | ¬X geschlossen AD, SS 2012, F olien Ded−Aussagenlogik, Seite 6 3. M ai2012 Beispiel Tableau für ¬(X ∧ Y =⇒ X): ¬(X ∧ Y =⇒ X) | X ∧Y | ¬X | X | Y geschlossen AD, SS 2012, F olien Ded−Aussagenlogik, Seite 7 3. M ai2012 Optimierung für Äquivalenzen Neue Tableau-Expansionsregeln A⇔B A ¬A B ¬B ¬(A ⇔ B) A ¬A ¬B B Nur eine Fallunterscheidung statt zwei !! AD, SS 2012, F olien Ded−Aussagenlogik, Seite 8 3. M ai2012 Beispiel: Äquivalenzen ¬((P ⇔ Q) ⇔ (QWW⇔ P )) gg W (P ⇔ Q) gg ggggg g g g g gggg ggggg WWWWW WWWWW WWWWW WW ¬(P ⇔ Q) ¬(Q ⇔ P) o ggggg ggggg g g g g ggggg ggggg g g g g gg Q⇔P ¬P ¬Q Q ¬Q P ¬P ¬Q Q ... ... ... P ¬P P xx xx x xx xx AD, SS oo ooo o o ooo ooo 2012, F olien Ded−Aussagenlogik, Seite 9 3. M ai2012 Q Beispiel Zeige, dass P =⇒ (Q =⇒ P ) eine Tautologie ist: ¬(P =⇒ (Q =⇒ P )) P ¬(Q =⇒ P ) Q ¬P geschlossen, da P und ¬P auf dem Pfad liegen. AD, SS 2012, F olien Ded−Aussagenlogik, Seite 10 3. M ai2012 Beispiel Zeige ((P =⇒ Q) ∧ (Q =⇒ R)) =⇒ (P =⇒ R): Dazu starte mit ¬(((P =⇒ Q) ∧ (Q =⇒ R)) =⇒ (P =⇒ R)): AD, SS 2012, F olien Ded−Aussagenlogik, Seite 11 3. M ai2012 (P =⇒ Q) (Q =⇒ R) ¬(P =⇒ R) P ¬P iii iiii i i i iiii iiii i i i iiii geschlossen ¬R QQQQ ¬Q QQQ QQQ QQQ QQQ ooo ooo o o oo ooo o o oo geschlossen Q OOOOO OOO OOO OOO OOO R geschlossen Algorithmische Korrektheit des Tableaukalküls Nachweis von: 1. Korrektheit (Soundness): Der Kalkül erzeugt geschlossene Tableaus nur für unerfüllbare Formeln. 2. Vollständigkeit (Completeness): Für jede unerfüllbare Formel kann der Tableaukalkül ein geschlossenes Tableau erzeugen. Zusätzliche gute Eigenschaften: • • AD, SS Tableaukalkül für Aussagenlogik terminiert immer Liefert Information, auch wenn er fehlschlägt. 2012, F olien Ded−Aussagenlogik, Seite 13 3. M ai2012 Korrektheit des Tableaukalküls (2) Definition • • Ein Pfad eines Tableaus ist erfüllbar, wenn die Konjunktion aller Formeln auf dem Pfad erfüllbar ist. Ein Tableau ist erfüllbar, wenn es einen Pfad gibt, der erfüllbar ist. Beachte: Wenn eine Menge von Formeln 0 oder ¬1 enthält, dann ist sie nicht erfüllbar. Es gilt: Ein geschlossenes Tableau ist nicht erfüllbar. AD, SS 2012, F olien Ded−Aussagenlogik, Seite 14 3. M ai2012 Korrektheit des Tableaukalküls (3) Satz Wenn T → T 0 mit einer Transformationsregel, dann gilt: T ist erfüllbar gdw. T 0 ist erfüllbar Mittels Fallunterscheidung über mögliche Expansionen: AD, SS 2012, F olien Ded−Aussagenlogik, Seite 15 3. M ai2012 Fundierte Ordnungen Ziel: Terminierung fundierte (well-founded) Ordnung: ist eine partielle Ordnung ≥ auf einer Menge M , ohne unendlich absteigende Ketten a1 > a2 > . . . zB. Natürliche Zahlen: 5 > 4 > 2 > 1. Es gilt: Die lexikographische Kombination von fundierten Ordnungen ist wieder eine fundierte Ordnung. AD, SS 2012, F olien Ded−Aussagenlogik, Seite 16 3. M ai2012 Fundierte Ordnungen: Multimengenordnung (M, >) Menge mit fundierter Ordnung Mult(M ) endliche Multimengen über M Z.B. Multimengen über IN: {3, 3, 2, 1}, ∅, {1, 1, 1, 1, 1, 100} AD, SS 2012, F olien Ded−Aussagenlogik, Seite 17 3. M ai2012 Fundierte Ordnungen: Multimengenordnung Seien A und B Multimengen über M A >> B, gdw ∃X, Y mit X 6= ∅, B = (A \ X) ∪ Y und zu jedem Element von Y existiert ein echt größeres Element in X Z. B in Mult(IN): {3, 3, 2, 1} >> {3, 2, 2, 2}, denn {3, 2, 2, 2} = {3, 3, 2, 1} \ {3, 1} ∪ {2, 2, 2}. Es gilt: AD, SS Die Multimengenordnung >> ist eine partielle Ordnung. >> ist fundiert, gdw. > fundiert ist. 2012, F olien Ded−Aussagenlogik, Seite 18 3. M ai2012 Terminierung des Tableaukalküls Lemma Der Tableaukalkül für Aussagenlogik terminiert, wenn man jede Formel auf jedem Pfad höchstens einmal expandiert. Beweis: Benutze Multimengenordnung . . . AD, SS 2012, F olien Ded−Aussagenlogik, Seite 19 3. M ai2012 Korrektheit des Tableaukalküls Zusammen ergibt sich bis jetzt: • • AD, SS Wenn F erfüllbar: Der Tableaukalkül terminiert, Das Endtableau ist nicht geschlossen Wenn F unerfüllbar: Der Tableaukalkül terminiert, Das Endtableau ist nicht erfüllbar Frage? ist es auch geschlossen? 2012, F olien Ded−Aussagenlogik, Seite 20 3. M ai2012 Korrektheit des Tableaukalküls Betrachte: Endtableau, das nicht geschlossen ist Darin einen nicht geschlossenen Pfad. Es gilt: Die Formelmenge H auf dem Pfad ist abgeschlossen und hat folgende Eigenschaften: • • • • • A ∈ H und ¬A ∈ H geht nicht. 0 6∈ H, ¬1 6∈ H ¬¬X ∈ H =⇒ X ∈ H α ∈ H =⇒ α1 ∈ H und α2 ∈ H β ∈ H impliziert β1 ∈ H oder β2 ∈ H D.h.: H ist eine (aussagenlogische) Hintikka-Menge Es gilt: Hintikka-Mengen sind erfüllbar AD, SS 2012, F olien Ded−Aussagenlogik, Seite 21 3. M ai2012 Korrektheit des Tableaukalküls Zusammenfassend ergibt sich jetzt: • • Wenn F erfüllbar: Der Tableaukalkül terminiert, Das Endtableau ist nicht geschlossen Wenn F unerfüllbar: Der Tableaukalkül terminiert, Das Endtableau ist geschlossen D.h. der Tableaukalkül für Aussagenlogik terminiert und ist korrekt. AD, SS 2012, F olien Ded−Aussagenlogik, Seite 22 3. M ai2012 Quantifizierte Boolesche Formeln Quantifizierte Boolesche Formeln (QBF) sind Boolesche Formeln mit Quantoren. Syntax: Q := 0 | 1 | P ( Boolesche Variable) | (Q1 ∧ Q2) | (Q1 ∨ Q2) | (Q1 op Q2) | (¬ Q) | ∀X.Q | ∃X.Q wobei X Variable Die Quantifizierung ist nur über die zwei Wahrheitswerte 0, 1 Die Gültigkeit ist nur für geschlossene QBFs definiert. AD, SS 2012, F olien Ded−Aussagenlogik, Seite 23 3. M ai2012 QBF: Komplexität Gültigkeit von QBF-Formeln ist PSPACE-vollständig. D.h. alle bekannten Algorithmen benötigen im worst-case exponentielle Zeit. Ziel: Untersuchung und Optimierung der Entscheidungsalgorithmen Hoffnung: großer Anteil praktisch relevanter Probleme effizient entscheidbar AD, SS 2012, F olien Ded−Aussagenlogik, Seite 24 3. M ai2012 Polynomielle Hierarchie QBFs repräsentieren die Komplexitätsklassen der polynomiellen Hierarchie. AD, SS 2012, F olien Ded−Aussagenlogik, Seite 25 3. M ai2012 Aussagenlogik in QBFs: • Erfüllbarkeit einer aussagenlogischen Formel F entspricht Gültigkeit der QBF ∃p1, . . . , pn.F , wobei pi die Variablen in F sind. • aussagenlogischen Formel F ist Tautologie entspricht Gültigkeit der QBF ∀p1, . . . , pn.F , wobei pi die Variablen in F sind. AD, SS 2012, F olien Ded−Aussagenlogik, Seite 26 3. M ai2012 Normalformen für QBFs: Eine Variante: • Pränex-Form • Alle Quantoren sind im Präfix der Formel • der Rumpf ist eine aussagenlogische Formel. • Pränexe Klauselform • Alle Quantoren sind im Präfix der Formel • der Rumpf ist eine aussagenlogische Klauselmenge AD, SS 2012, F olien Ded−Aussagenlogik, Seite 27 3. M ai2012 Pränexform einer QBF erzeugen • Alle gebundenen Variablen müssen verschieden sein. Wenn nicht: neue Namen verwenden 1. Implikation und Äquivalenz ersetzen. 2. Negationen nach innen schieben, u.a. mit ¬(∀X.P ) → (∃X.¬P ) und ¬(∃X.P ) → (∀X.¬P ) 3. Quantoren nach außen schieben, wobei F ∨ ∀X.P → ∀X.F ∨ P usw. auch für die anderen Kombinationen AD, SS 2012, F olien Ded−Aussagenlogik, Seite 28 3. M ai2012 Normalformen für QBFs: • Pränexe Klauselform Zuerst überführen in eine Pränexform Dann den Rumpf in eine Klauselform überführen; dabei die entstehende Quantoren wieder in den Pränex schieben Wenn die QBF keine Äquivalenzen enthält, Dann gilt: Die Transformation ist effizient durchführbar: Die Regel ist: P.F [G] → P.∃X.((X ⇐⇒ G) ∧ F [X]) Alternativ: P.F [G] → P.∀X.((X ⇐⇒ G) =⇒ F [X]) AD, SS 2012, F olien Ded−Aussagenlogik, Seite 29 3. M ai2012 Äquivlenzen in QBFs: Wenn Äquivalenzformeln (F1 ⇔ F2) als Unterformeln vorkommen: • Elimination der Äquivalenzen kann die Formel exponentiell vergrößern • Gültigkeit der Formel ist in polynomiellem Platz entscheidbar (d.h. in PSPACE) • D.h.: die Methode: Umwandeln in pränexe Klauselform, dann semantischer Baum ist nicht passend. AD, SS 2012, F olien Ded−Aussagenlogik, Seite 30 3. M ai2012 Nochmal: CNF-Herstellung in der Aussagenlogik Zur Frage: Warum wird Äquivalenz von aussagenlogischen Formeln F von schneller CNF-Herstellung nicht erhalten: • Erhaltung der Erfüllbarkeit gilt, da man in der ersten Variante nur eine existenzquantifizierte Variable hinzufügt; und die Formel als ∃(X).F interpretiert. • Erhaltung der Tautologie-Eigenschaft gilt, wenn man die zweite Transformation verwendet. Für eine Formel ∀X.F • Äquivalenz der aussagenlogischen Formeln vorher und nachher gilt i.a. nicht, da Mischungen aus Quantoren auftreten AD, SS 2012, F olien Ded−Aussagenlogik, Seite 31 3. M ai2012 Gültigkeit von QBF-Formeln Naiver Algorithmus und gleichzeitig Def der Gültigkeit von F Transformiere F durch Quantorenelimination: 1. ∀P.F → F [1/P ] ∧ F [0/P ] 2. ∃P.F → F [1/P ] ∨ F [0/P ] Resultat nach Simplifikation: 0 oder 1 Nachteil: Zwischenergebnisse können exponentiell groß sein AD, SS 2012, F olien Ded−Aussagenlogik, Seite 32 3. M ai2012 Beispiel F = ∀x∃y.x ⇐⇒ y. Quantorenelimination ergibt: 1. (∃y.1 ⇐⇒ y) ∧ (∃y.0 ⇐⇒ y). 2. ((1 ⇐⇒ 1) ∨ (1 ⇐⇒ 0)) ∧ ((0 ⇐⇒ 1) ∨ (0 ⇐⇒ 0)) 3. Resultat: 1 AD, SS 2012, F olien Ded−Aussagenlogik, Seite 33 3. M ai2012 Klassifizierung von Klauseln Gegeben: QBF in pränexer Klauselform. Klassifikation von Klauseln: 1. Eine Klausel ist wahr, wenn sie ein Literal 1 enthält, oder eine Variable sowohl positiv als auch negativ (Tautologie). 2. Eine Klausel ist falsch, wenn 1. nicht gilt und wenn die Klausel keine existenziell quantifizierte Variable enthält. Z.B. eine Klausel mit nur allquantifizierten Variablen ist falsch, wenn sie keine Tautologie ist. 3. Andere Klauseln nennt man offen. AD, SS 2012, F olien Ded−Aussagenlogik, Seite 34 3. M ai2012 Ein Beispiel ∃x1∀x2∃x3∃x4.((¬x ∨ ¬x ) ∧ (x ∨ x ) ∧ (x ∨ ¬x{z2 ∨ ¬x3)}) 1 ∨ x{z2 ∨ ¬x3 )} ∧ (x | | 3 {z 4 } | 3 {z 4 } | 1 c1 c2 c3 c4 Diese Formel ist nicht gültig: zz zz z 1zzz zz zz z zz x }} }}}} } } } 2}}}}} }}}} } }}} } } }} ¬x ~~ ~~ ~ 3 ~~ ~~ ~ ~ ~ ~ · x c1 4 · x c2 AA AA AA 1 AA AA · ¬x x2 x2 ~~ ~~ ~ 3 ~~ ~~ ~ ~ ~ ~ x ¬x3 · ??? · AAA ?? ?? 4 ?? ?? ?? ? ¬x c3 c4 4 x c2 · AAAAAAA · AAA AAAA 2 AAAA AAAA AAAA ¬x · ¬x3 · ??? ?? ?? 4 ?? ?? ?? ? ¬x c3 Beachte: Doppelkanten = UND-Verzweigung; Einfachkante = Oder AD, SS 2012, F olien Ded−Aussagenlogik, Seite 35 3. M ai2012 Entscheidungsprozedur semantischer Baum Eingabe: Datenstruktur: AD, SS Pränexe Klauselform UND-ODER-Baum, ALL ↔ UND EX ↔ ODER Knoten sind Formeln 2012, F olien Ded−Aussagenlogik, Seite 36 3. M ai2012 Semantischer Baum: Erzeugung • • • • • Wurzel = Input-Formel in pränexer Klauselform Am Knoten K erste Variable des Quantorenpräfix von FK analysieren: 1. ∀x, dann UND-Knoten. Die beiden Töchterknoten sind: FK [1/x] und FK [0/x] 2. ∃x, dann ODER-Knoten. Die beiden Töchterknoten sind: FK [1/x] und FK [0/x] Knoten ist Blatt, wenn FK aussagenlogisch zu 1 oder 0 auswertbar unter Benutzung der Def. wahre / falsche Klauseln Auswertung des Ausgabe-Baums: Auswertung entsprechend der UND, bzw ODER-Struktur und Werten an den Blättern. Ergebnis: 0 oder 1. Optimierungsmöglichkeit: Vertauschen von gleichartig quantifizierten benachbarten Variablen AD, SS 2012, F olien Ded−Aussagenlogik, Seite 37 3. M ai2012 Quellen des Nichtdeterminismus • Welche Variable wird zur Fallunterscheidung verwendet? • Welcher Fall wird zuerst untersucht pro Variable? AD, SS 2012, F olien Ded−Aussagenlogik, Seite 38 3. M ai2012 Beispielimplementierung > dpll string • • • AD, SS verarbeitet Pränexformeln Parse erzeugt eine Formel-Datenstruktur Eine vereinfachte DP-Prozedur (analog semantischer Baum) wird verwendet, mit einfachen Regeln Unit-propagation, aber keine isolierten Literale. 2012, F olien Ded−Aussagenlogik, Seite 39 3. M ai2012 Beispiel ∀x, ∃y.x ⇐⇒ y: ∀x∃y.x ⇐⇒ y RRR ggggg ggggg g g g g ggggg ggggg g g g g gg ggggg ∃y.1 ⇐⇒PP y n nnn nnn n n nnn nnn n n n 1 ⇐⇒ 0 PPP PPP PPP PPP PPP P 1 ⇐⇒ 1 Der Wert an der Wurzel ist 1. > dpll "ALL x EX y: (x <=> y)" "Formel ist Tautologie" AD, SS 2012, F olien Ded−Aussagenlogik, Seite 40 3. M ai2012 RRR RRRR RRRR RRR RRRR R ∃y.0 ⇐⇒PP y l ll lll l l l lll lll l l l lll 0 ⇐⇒ 1 PPP PPP PPP PPP PPP P 0 ⇐⇒ 0 Optimierungen: Vermeiden von Fallunterscheidungen: • Wenn aktuelle Variable nicht in der Klauselmenge enthalten ist, dann streiche diese aus dem Präfix. AD, SS 2012, F olien Ded−Aussagenlogik, Seite 41 3. M ai2012 Optimierungen: Unit-Propagation Situation: Formel am Knoten Eine Klausel c ist eine Unit, gdw. c hat genau ein existenzielles Literal (x oder ¬x) und für alle anderen (universellen) Literale y oder ¬y, y ist rechts von x im Quantorenpräfix Aktion : Nur ein Tochterknoten: F [1/x], wenn x das Literal ist und F [0/x], wenn ¬x das Literal ist. Beachte: x muss nicht die Top-Variable sein AD, SS 2012, F olien Ded−Aussagenlogik, Seite 42 3. M ai2012 Optimierungen: Isoliertes Literal Definition Ein Literal in einer Klauselmenge ist isoliert (pur), wenn das Komplement nicht in der Klauselmenge vorkommt. Aktion: Sei x die Variable im isolierten Literal. 1. Wenn x Ex-quantifiziert ist, Tochterknoten: F [1/x], wenn x das Literal ist und Tochterknoten: F [0/x], wenn ¬x das Literal ist. 2. Wenn x All-quantifiziert ist, Tochterknoten mit F [0/x], wenn x das Literal ist und F [1/x], wenn ¬x das Literal ist. AD, SS 2012, F olien Ded−Aussagenlogik, Seite 43 3. M ai2012 Relevanz-Markierungen Dependency-directed Backtracking mit Relevanz-Markierungen von Ex-Variablen Annahme: QBF in Pränexform; die Formel ist eine Klauselmenge Transformation: schnelle CNF-Erzeugung, existenzquantifiziert. Prozedur: Semantische-Baum-Prozedur sucht nur nach 0 (d.h. Widerspruch). Idee: AD, SS wobei neue Variablen Wenn man an einem Knoten verzweigt für eine existenzquantifizierte Variable x; und im linken Zweig (x = 0) findet man eine Klausel, die unabhängig von x immer falsch ist, dann ist diese Klausel auch im rechten Zweig (x = 1) falsch und man kann sofort backtracken. 2012, F olien Ded−Aussagenlogik, Seite 44 3. M ai2012 Relevanz-Markierungen Markierungsalgorithmus: Relevanzmarker für Ex-Variablen 1. Bei Verzweigung an einer Ex-Variablen: markiere diese als irrelevant. 2. Wenn an einem Knoten eine falsche Klausel c entdeckt wird, dann wird am Knoten ein backtracking gemacht; gleichzeitig werden alle Ex-Variablen dieser Klausel c als relevant markiert. 2. Kommt man (von links unten) beim backtracking an einen Knoten N , der an einer Ex-Variablen y verzweigt, und y ist (noch) als irrelevant markiert, dann kann man den rechten Zweig überspringen. AD, SS 2012, F olien Ded−Aussagenlogik, Seite 45 3. M ai2012