Logik Gabriele Kern-Isberner LS 1 – Information Engineering TU Dortmund Wintersemester 2014/15 WS 2014/15 G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 1 / 158 AL – Erfüllbarkeit Teil A A – Aussagenlogik (AL) Kapitel 3: Erfüllbarkeit G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 67 / 158 AL – Erfüllbarkeit Aussagenlogische Resolution Der Resolutionssatz der Aussagenlogik (2/9) Dazu definieren wir: – – – – Res(K) =def K ∪ {K|K ist Resolvente zweier Klauseln aus K} Res1 (K) =def Res(K) k−1 Resk (K) =def Res(Res (K)),für jedes k > 1 S ∞ Res (K) =def k≥1 Resk (K) Satz 3.8 (Resolutionssatz) Eine endliche Klauselmenge K ist genau dann unerfüllbar, wenn ∈ Res∞ (K). Beweis • Wir zeigen: (1) wenn ∈ Res∞ (K) dann K unerfüllbar (2) wenn K unerfüllbar dann ∈ Res∞ (K) G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 101 / 158 AL – Erfüllbarkeit Aussagenlogische Resolution Ein Zwischenfazit (1/4) Wir haben jetzt also einen Algorithmus für das Erfüllbarkeitsproblem für aussagenlogische Formeln, der weniger naiv vorgeht als die Wahrheitstabellen-Methode. • Allerdings gibt es Formeln, für die er nicht effizienter ist als die Wahrheitstabellen-Methode → Im schlimmsten Fall hat er exponentielle Laufzeit (Theorem von Haken) G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 112 / 158 AL – Erfüllbarkeit Aussagenlogische Resolution Ein Zwischenfazit (2/4) Die Frage, ob es für dieses Problem einen Algorithmus mit polynomieller Laufzeit gibt, ist äquivalent zum berühmtesten offenen Problem der (Theoretischen) Informatik: dem P-NP-Problem Näheres dazu erfahren Sie in der GTI-Vorlesung Hier nur soviel dazu: • Das Erfüllbarkeitsproblem für AL-Formeln ist NP-vollständig • Wenn es einen polynomiellen Algorithmus hat, ist P = NP • Wenn es keinen polynomiellen Algorithmus hat, ist P 6= NP G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 113 / 158 AL – Erfüllbarkeit Aussagenlogische Resolution Ein Zwischenfazit (3/4) Auch wenn es bisher keinen polynomiellen Algorithmus für AL – SAT gibt: • Die Fähigkeit, in der Praxis SAT-Probleme zu lösen (Stichwort: SAT-Solving). hat sich in den vergangenen 10-15 Jahren gewaltig verbessert • Mittlerweile werden SAT-Solver als Hilfsmittel in vielen Anwendungsbereichen verwendet, z.B. im (Bounded) Model Checking • Wer dazu mehr wissen möchte: – Malik, Zhang: Boolean Satisfiabilty, Communications of the ACM, August 2009 G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 114 / 158 AL – Erfüllbarkeit Aussagenlogische Resolution Ein Zwischenfazit (4/4) Für einige eingeschränkte Klassen aussagenlogischer Formeln lässt sich das Erfüllbarkeitsproblem effizient lösen: • Horn-Formeln (das haben wir gesehen) • 2-SAT-Formeln (mit maximal 2 Literalen je Klausel) Im nächsten Kapitel beschäftigen wir uns noch mit der Erfüllbarkeit von unendlichen Formelmengen G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 115 / 158 AL – Erfüllbarkeit Aussagenlogische Resolution Zusammenfassung Sie sollten die folgenden Themen und Techniken kennen und beherrschen: • Fundamentale Bedeutung des Erfüllbarkeitsproblems für aussagenlogische Formeln • Resolventen und Resolutionsbeweise und ein darauf basierender Algorithmus für den Erfüllbarkeitstest • Wichtiges Ergebnis: – Resolutionssatz • Für das allgemeine Erfüllbarkeitsproblem ist kein effizienter Algorithmus bekannt • Für Hornformeln lässt sich das Erfüllbarkeitsproblem mit Hilfe des Markierungsalgorithmus effizient lösen G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 116 / 158 AL – Vollständigkeits- und Endlichkeitssatz Übersicht Aussagenlogik 1. Syntax und Semantik 2. Modellierung, Äquivalenzen und Normalformen 3. Erfüllbarkeit 4. Vollständigkeits- und Endlichkeitssatz G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 117 / 158 AL – Vollständigkeits- und Endlichkeitssatz Teil A A – Aussagenlogik (AL) Kapitel 4: Vollständigkeits- und Endlichkeitssatz G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 118 / 158 AL – Vollständigkeits- und Endlichkeitssatz Nutzen von Erfüllbarkeitstests Wir haben im letzten Kapitel einen zuverlässigen Erfüllbarkeitstest für aussagenlogische Formeln kennen gelernt: • den Resolutionsalgorithmus Er entscheidet für eine gegebene aussagenlogische Formel ϕ (in KNF), ob ϕ erfüllbar ist. G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 119 / 158 AL – Vollständigkeits- und Endlichkeitssatz Überblick In diesem Kapitel werden wir zunächst sehen, dass dieser Erfüllbarkeitstest ziemlich flexibel anwendbar ist, denn viele Fragestellungen lassen sich auf die Erfüllbarkeit einer aussagenlogischen Formel zurückführen, z.B.: • ob eine endliche Menge von Formeln erfüllbar ist, • ob eine gegebene Formel allgemeingültig ist • ob eine gegebene Formel aus einer endlichen Menge von Formeln folgt Außerdem werden wir einen fundamentalen Zusammenhang zwischen semantischem Folgern und syntaktischem Beweisen kennen lernen. Schließlich werden wir uns noch mit der Erfüllbarkeit unendlicher Formelmengen beschäftigen. G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 120 / 158 AL – Vollständigkeits- und Endlichkeitssatz Anwendungen von Erfüllbarkeit Erfüllbarkeit endlicher Formelmengen (1/6) Klar: eine Menge {ϕ1 , . . . , ϕn } von Formeln ist genau dann erfüllbar, wenn ϕ1 ∧ · · · ∧ ϕn erfüllbar ist. Wir betrachten dazu jetzt ein komplizierteres Beispiel: Beispiel (eine ehemalige Ü-Aufgabe) • Es sollen n Werte a1 , . . . , an in m Speicherstellen s1 , . . . , sm abgelegt werden, wobei n und m natürliche Zahlen sind • Dabei kann in jeder Speicherstelle jeweils höchstens ein Wert abgespeichert werden (a) Modellieren Sie die beschriebene Situation durch eine Menge Φn,m aussagenlogischer Formeln (b) Zeigen Sie mittels Resolution, dass es unmöglich ist, drei Datenwerte in zwei Speicherstellen abzulegen G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 121 / 158 AL – Vollständigkeits- und Endlichkeitssatz Anwendungen von Erfüllbarkeit Erfüllbarkeit endlicher Formelmengen (2/6) Allgemeiner Lösungsansatz • Variablen für atomare Aussagen: – Aij : „ai wird in Speicherstelle sj abgelegt“, für i ∈ {1, . . . , n} und j ∈ {1, . . . , m} • Formeln zur Modellierung der Situation: – „Es sollen n Werte ... abgelegt werden“: ∗ ϕm i =def m _ j=1 Aij (i ∈ {1, . . . , n}) sagt, dass ai in mindestens einer Speicherstelle abgelegt wird – „Dabei kann in jeder Speicherstelle jeweils höchstens ein Wert abgespeichert werden“: ∗ ψjn =def ^ i1 ,i2 ∈{1,...,n} i1 6=i2 ¬(Ai1 j ∧ Ai2 j ) (j ∈ {1, . . . , m}) drückt aus, dass in Speicherstelle sj höchstens ein Wert abgelegt wird G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 122 / 158 AL – Vollständigkeits- und Endlichkeitssatz Anwendungen von Erfüllbarkeit Erfüllbarkeit endlicher Formelmengen (3/6) Erfüllbarkeit endlicher Formelmengen • Für (a) ergibt sich insgesamt die Formelmenge n Φn,m = {ϕm i |1 ≤ i ≤ n} ∪ {ψj |1 ≤ j ≤ m} • Für (b) müssen wir die Unerfüllbarkeit von Φ3,2 nachweisen • Wir erhalten die Formelmenge Φ3,2 = {A11 ∨ A12 , A21 ∨ A22 , A31 ∨ A32 } ∪{¬(A11 ∧ A21 ), ¬(A11 ∧ A31 ), ¬(A21 ∧ A31 ), ¬(A12 ∧ A22 ), ¬(A12 ∧ A32 ), ¬(A22 ∧ A32 )} G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 123 / 158 AL – Vollständigkeits- und Endlichkeitssatz Anwendungen von Erfüllbarkeit Erfüllbarkeit endlicher Formelmengen (4/6) Erfüllbarkeit endlicher Formelmengen • Φ3,2 ist genau dann erfüllbar, wenn χ3,2 =def (A11 ∨ A12 ) ∧ (A21 ∨ A22 ) ∧ (A31 ∨ A32 ) ∧¬(A11 ∧ A21 ) ∧ ¬(A11 ∧ A31 ) ∧ ¬(A21 ∧ A31 ) ∧¬(A12 ∧ A22 ) ∧ ¬(A12 ∧ A32 ) ∧ ¬(A22 ∧ A32 ) erfüllbar ist • Diese Formel entspricht der Klauselmenge K3,2 =def {{A11 , A12 }, {A21 , A22 }, {A31 , A32 }, {¬A11 , ¬A21 }, {¬A11 , ¬A31 }, {¬A21 , ¬A31 }, {¬A12 , ¬A22 }, {¬A12 , ¬A32 }, {¬A22 , ¬A32 }} G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 124 / 158 AL – Vollständigkeits- und Endlichkeitssatz Anwendungen von Erfüllbarkeit Erfüllbarkeit endlicher Formelmengen (4/5) • Wir müssen also die Unerfüllbarkeit der Klauselmenge K3,2 zeigen: {{A11 , A12 }, {A21 , A22 }, {A31 , A32 }, {¬A11 , ¬A21 }, {¬A11 , ¬A31 }, {¬A21 , ¬A31 }, {¬A12 , ¬A22 }, {¬A12 , ¬A32 }, {¬A22 , ¬A32 }} {¬A12 , ¬A32 } {¬A21 , ¬A31 } {A31 , A32 } {A11 , A12 } {¬A12 , ¬A22 } {¬A12 , ¬A21 } {¬A21 , A32 } {A11 , ¬A22 } {A21 , A22 } {¬A11 , ¬A21 } {A21 , A22 } {A11 , ¬A12 } {A11 } {A11 , A21 } {¬A11 , A22 } {¬A22 , ¬A32 } {¬A11 , ¬A31 } G. Kern-Isberner (TU Dortmund) {A11 , A12 } {A31 , A32 } Logik {¬A11 , ¬A32 } {¬A11 } {¬A11 , A32 } WS 2014/15 125 / 158 AL – Vollständigkeits- und Endlichkeitssatz Anwendungen von Erfüllbarkeit Erfüllbarkeit endlicher Formelmengen (6/6) Antwort • Da herleitbar ist, ist χ3,2 also unerfüllbar • Also ist auch Φ3,2 unerfüllbar • Also können drei Werte nicht in zwei Speicherstellen gespeichert werden – Überraschung . . . ;) Natürlich ließe sich die Klauselmenge K 3,2 auch direkt aus Φ3,2 berechnen G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 126 / 158 AL – Vollständigkeits- und Endlichkeitssatz Anwendungen von Erfüllbarkeit Allgemeingültige Formeln (1/5) Die Frage, ob eine Formel allgemeingültig ist, lässt sich aufgrund der folgenden Beobachtung ebenfalls durch einen Erfüllbarkeitstest lösen: Lemma 4.9 Eine Formel ϕ ist genau dann allgemeingültig, wenn ¬ϕ unerfüllbar ist. Beweis • Wir wollen (für alle ϕ) die Behauptung „(1) ⇔ (2)“ zeigen, wobei (1) ϕ ist allgemeingültig (2) ¬ϕ ist unerfüllbar • Solche Äquivalenzaussagen lassen sich in zwei Schritten beweisen: – (1) ⇒ (2) – (2) ⇒ (1) G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 127 / 158 AL – Vollständigkeits- und Endlichkeitssatz Anwendungen von Erfüllbarkeit Allgemeingültige Formeln (2/5) Beweis (Forts.) • Wir zeigen zuerst „(1) ⇒ (2)“: ϕ ist allgemeingültig ⇒ ¬ϕ unerfüllbar – ⇒ ⇒ ⇒ ⇒ Sei ϕ allgemeingültig Für jede passende Belegung α ist [[ϕ]]α = 1 Für jede passende Belegung α ist [[¬ϕ]]α = 0 Kein α ist Modell von ¬ϕ ¬ϕ ist unerfüllbar – ⇒ ⇒ ⇒ ⇒ Sei ¬ϕ unerfüllbar ¬ϕ hat kein Modell (Def unerfüllbar) Für alle passenden α ist [[¬ϕ]]α = 0 Für alle passenden α ist [[ϕ]] = 1 ϕ ist allgemeingültig (Def von allg.-gültig) (Def von [[¬ϕ]]α ) (Def Modell) (Def erfüllbar) • Jetzt zeigen wir „(2) ⇒ (1)“: ¬ϕ unerfüllbar ⇒ ϕ allgemeingültig G. Kern-Isberner (TU Dortmund) Logik (Def Modell) (Def von [[¬ϕ]]α ) (Def von allgemeingültig) WS 2014/15 128 / 158 AL – Vollständigkeits- und Endlichkeitssatz Anwendungen von Erfüllbarkeit Allgemeingültige Formeln (3/5) Beispiel • Professor X führt in seiner Logikvorlesung einen etwas komplizierteren Beweis vor • Es gibt darin Bedingungen A, B, C, D, die gelten oder nicht gelten können • Der Beweis verwendet folgende Fallunterscheidung 1. 2. 3. 4. 5. Fall: Fall: Fall: Fall: Fall: keine der Bedingungen gilt D gilt, aber nicht A A gilt, aber nicht C B gilt, aber nicht D C gilt G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 129 / 158 AL – Vollständigkeits- und Endlichkeitssatz Anwendungen von Erfüllbarkeit Allgemeingültige Formeln (4/5) Beispiel (Forts.) • Sind dadurch alle Fälle berücksichtigt? • Aussagenlogisch modelliert führt dies zur Frage, ob ϕ = (¬A ∧ ¬B ∧ ¬C ∧ ¬D) ∨ (D ∧ ¬A) ∨ (A ∧ ¬C) ∨ (B ∧ ¬D) ∨ C allgemeingültig ist • Das ist äquivalent zur Frage, ob ¬ϕ = (A ∨ B ∨ C ∨ D) ∧ (¬D ∨ A) ∧ (¬A ∨ C) ∧ (¬B ∨ D) ∧ ¬C unerfüllbar ist G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 130 / 158 AL – Vollständigkeits- und Endlichkeitssatz Anwendungen von Erfüllbarkeit Allgemeingültige Formeln (5/5) Beispiel (Forts.) • Dass ¬ϕ in der Tat unerfüllbar ist, zeigt folgender Resolutionsbeweis {A, B, C, D} {¬C} {A, B, D} {¬B, D} {A, D} {¬D, A} {A} {¬A, C} {C} {¬C} • Also ist ϕ allgemeingültig und die Fallunterscheidung erfasst alle möglichen Fälle G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 131 / 158 AL – Vollständigkeits- und Endlichkeitssatz Semantisches Folgern und syntaktisches Beweisen Folgerung und Unerfüllbarkeit (1/4) Eine der wichtigsten Anwendungen von Erfüllbarkeitstests ist das Überprüfen von Folgerungen. Dazu betrachten wir jetzt aussagenlogische Folgerungen: • Grundsituation: – Gegeben sind eine Menge Φ von Formeln und eine weitere Formel ψ – Die Frage ist, ob ψ aus Φ „folgt“, das heißt, ob das Gelten von Φ das Gelten von ψ zwangsläufig nach sich zieht • Beispielsweise ist die Formel B immer wahr, wenn die Menge {A, A → B} wahr ist Das definieren wir jetzt formal. G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 132 / 158 AL – Vollständigkeits- und Endlichkeitssatz Semantisches Folgern und syntaktisches Beweisen Folgerung und Unerfüllbarkeit (2/4) Definition 4.4 (Aussagenlogische Folgerung) • Sei Φ eine Menge von AL-Formeln und ψ eine AL-Formel • ψ folgt aus Φ, in Zeichen: Φ |= ψ, gdw.a jede zu Φ ∪ {ψ} passende Belegung, die Modell von Φ ist, auch Modell von ψ ist. a gdw. = genau dann, wenn Beispiel {A, A → B} |= B Zu beachten: die Menge Φ kann auch unendlich sein G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 133 / 158 AL – Vollständigkeits- und Endlichkeitssatz Semantisches Folgern und syntaktisches Beweisen Folgerung und Unerfüllbarkeit (3/4) Die folgende Proposition formuliert den Zusammenhang zwischen Folgerungen und Erfüllbarkeit: Proposition 4.10 • Sei Φ eine Menge von AL-Formeln und ψ eine AL-Formel • Dann gilt: Φ |= ψ gdw. Φ ∪ {¬ψ} ist unerfüllbar Die Aussage folgt direkt aus der Definition von |= G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 134 / 158 AL – Vollständigkeits- und Endlichkeitssatz Semantisches Folgern und syntaktisches Beweisen Folgerung und Unerfüllbarkeit (4/4) Wir haben jetzt also eine semantische Folgerungsbeziehung Φ |= ψ definiert: • Ist Φ eine Formelmenge und ψ eine Formel, so folgt ψ semantisch aus Φ, falls in allen Situationen, in denen Φ gilt, auch ψ gilt • Im Falle der Aussagenlogik werden die „Situationen“ gerade durch die passenden Belegungen beschrieben Auch hier gilt, was zu dem simplen Erfüllbarkeitstest gesagt wurde: • Alle „Situationen“ auszuprobieren ist sehr aufwändig und für mächtigere Logiken unmöglich Deshalb interessieren wir uns für syntaktische Methoden zum Schlussfolgern. G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 135 / 158 AL – Vollständigkeits- und Endlichkeitssatz Semantisches Folgern und syntaktisches Beweisen Semantisches Folgern und syntaktisches Beweisen (1/3) Wir wenden uns jetzt also dem syntaktischen Beweisen zu: • Φ ` ψ soll bedeuten, dass ψ aus Φ durch syntaktische Operationen hergeleitet (bewiesen) werden kann • Die genaue Bedeutung von „`“ hängt dabei jeweils von einem spezifischen Beweissystem ab • Unsere Mindestanforderung an ein solches Beweissystem ist, dass es korrekt ist: Φ ` ψ impliziert Φ |= ψ • Idealerweise sollte ein Beweissystem auch noch vollständig sein: Φ |= ψ impliziert Φ ` ψ G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 136 / 158 AL – Vollständigkeits- und Endlichkeitssatz Semantisches Folgern und syntaktisches Beweisen Semantisches Folgern und syntaktisches Beweisen (2/3) Ein Beweissystem für die Aussagenlogik mit diesen Eigenschaften kennen wir eigentlich schon: den Resolutionskalkül Wir wissen, dass folgende Aussagen äquivalent sind: • Φ |= ψ • Φ ∪ {¬ψ} ist unerfüllbar Unerfüllbarkeit können wir auf syntaktischem Wege mit dem Resolutionskalkül überprüfen G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 137 / 158 AL – Vollständigkeits- und Endlichkeitssatz Semantisches Folgern und syntaktisches Beweisen Semantisches Folgern und syntaktisches Beweisen (3/3) Wir definieren deshalb: Φ ` ψ gdw. ∈ Res∞ (K(Φ ∪ {¬ψ})) Dabei bezeichnet K(Φ ∪ {¬ψ}) die Menge aller Klauseln, die sich aus den Formeln in Φ ∪ {¬ψ} ergeben, wenn sie in KNF gebracht werden. Zu beachten: Φ darf hier auch eine unendliche Menge sein. G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 138 / 158 AL – Vollständigkeits- und Endlichkeitssatz Semantisches Folgern und syntaktisches Beweisen Folgern, Beweisen und Erfüllbarkeit: Beispiel Beispiel • Die Frage, ob aus den Formeln A → B und B → C die Formel A → C folgt, können wir wie folgt notieren: {A → B, B → C} |=? A → C • Gemäß Proposition 4.10 ist sie äquivalent zur Frage, ob die Formelmenge {A → B, B → C, ¬(A → C)} unerfüllbar ist • Wenn wir mit Hilfe des Resolutionskalküls herausfinden, dass diese Menge unerfüllbar ist, so können wir dies zunächst durch {A → B, B → C} ` A → C notieren und aus der Korrektheit des Resolutionskalküls dann {A → B, B → C} |= A → C folgern G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 139 / 158 AL – Vollständigkeits- und Endlichkeitssatz Semantisches Folgern und syntaktisches Beweisen Vollständigkeitssatz der Aussagenlogik: endliche Version Satz 4.11 (Vollständigkeitssatz (endl.)) • Sei Φ eine endliche Menge aussagenlogischer Formeln • Sei ψ eine (endliche) Formel • Dann sind äquivalent: – Φ |= ψ – Φ`ψ Beweis • Sei Φ = {ϕ1 , . . . , ϕn } und ϕ =def ϕ1 ∧ . . . ∧ ϕn Φ |= ψ ⇔ Φ ∪ {¬ψ} unerfüllbar ⇔ ϕ ∧ ¬ψ unerfüllbar ⇔ ∈ Res∞ (K(ϕ ∧ ¬ψ)) ⇔ ∈ Res∞ (K(Φ ∪ {¬ψ})) ⇔Φ`ψ G. Kern-Isberner (TU Dortmund) Logik (Prop. 4.10) (Resolutionssatz) (Def.) WS 2014/15 140 / 158 AL – Vollständigkeits- und Endlichkeitssatz Semantisches Folgern und syntaktisches Beweisen Alte Klausuraufgabe (1/3) Aufgabenstellung Anton hat gerade seine Logik-Klausur geschrieben. Wie immer diskutiert er im Anschluss mit seinen Kommilitonen über die einzelnen Aufgaben. Dabei gelangt er zu folgenden Überlegungen: 1. Für ein Bestehen der Klausur muss er mindestens eine der drei Aufgaben richtig gelöst haben. 2. Aufgabe 3 konnte er nur dann richtig bearbeiten, wenn er eine der ersten beiden richtig gelöst hat. 3. Er hat die ersten beiden Aufgaben entweder beide richtig oder beide falsch gelöst. (a) Übersetzen Sie Antons Überlegungen in aussagenlogische Formeln. (b) Zeigen Sie mittels aussagenlogischer Resolution, dass Anton nur dann die Klausur besteht, wenn er die erste Aufgabe richtig gelöst hat. → Folgerungsproblem: Bestehen ⇒ 1. Aufgabe richtig G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 141 / 158 AL – Vollständigkeits- und Endlichkeitssatz Semantisches Folgern und syntaktisches Beweisen Alte Klausuraufgabe (2/3) Beispiellösung (a) Es ergeben sich: – – – – – (b) Ai : Anton hat Aufgabe i richtig gelöst B : Anton hat die Klausur bestanden ϕ1 =def (¬B ∨ A1 ∨ A2 ∨ A3 ) ϕ2 =def (¬A3 ∨ A1 ∨ A2 ) ϕ3 =def (¬A1 ∨ A2 ) ∧ (A1 ∨ ¬A2 ) – Die Aussage in (b) entspricht der Formel ψ =def B → A1 – Es muss überprüft werden, ob {ϕ1 , ϕ2 , ϕ3 } |= ψ gilt – Dazu muss die Unerfüllbarkeit von {¬B ∨ A1 ∨ A2 ∨ A3 , ¬A3 ∨ A1 ∨ A2 , (¬A1 ∨ A2 ) ∧ (A1 ∨ ¬A2 ), B ∧ ¬A1 } ≡ {{¬B, A1 , A2 , A3 }, {A1 , A2 , ¬A3 }, {¬A1 , A2 }, {A1 , ¬A2 }, {B}, {¬A1 }} gezeigt werden G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 142 / 158 AL – Vollständigkeits- und Endlichkeitssatz Semantisches Folgern und syntaktisches Beweisen Alte Klausuraufgabe (3/3) Beispiellösung • Zeige die Unerfüllbarkeit von {{¬B, A1 , A2 , A3 }, {A1 , A2 , ¬A3 }, {¬A1 , A2 }, {A1 , ¬A2 }, {B}, {¬A1 }}: {¬B, A1 , A2 , A3 } {B} {A1 , A2 , A3 } {A1 , A2 , ¬A3 } {A1 , A2 } {A1 , ¬A2 } {A1 } {¬A1 } • herleitbar ⇒ Formelmenge unerfüllbar ⇒ {ϕ1 , ϕ2 , ϕ3 } |= ψ gilt ⇒ Anton hat nur bestanden, wenn er Aufgabe 1 richtig hat G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 143 / 158 AL – Vollständigkeits- und Endlichkeitssatz Endlichkeitssatz Erfüllbarkeit für unendliche Mengen von AL-Formeln Satz 4.11 stellt einen fundamentalen Zusammenhang zwischen • semantischem Folgern (Φ |= ψ) und • syntaktischem Beweisen (Φ ` ψ) dar • Allerdings ist er nur für endliche Mengen Φ formuliert Gilt er auch für beliebige Mengen aussagenlogischer Formeln? Wir sehen dazu als nächstes: • Die Erfüllbarkeit unendlich vieler Formeln lässt sich auf die Erfüllbarkeit endlich vieler Formeln zurückführen G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 144 / 158 AL – Vollständigkeits- und Endlichkeitssatz Endlichkeitssatz Endlichkeitssatz der Aussagenlogik (1/10) Satz 4.12 (Endlichkeitssatz) Sei AV eine abzählbare Menge von aussagenlogischen Variablen. Für eine unendliche Menge Φ von AL-Formeln über AV sind äquivalent: (i) Φ ist erfüllbar (ii) Jede endliche Teilmenge von Φ ist erfüllbar Beweis • (i) ⇒ (ii) ist offensichtlich • Gelte also nun (ii); zu zeigen: Φ ist erfüllbar • OBdA: Φ verwendet nur Variablen der Art Ai mit i ∈ N • Wenn es zwei Formeln ϕ 6= ψ in Φ mit ϕ ≡ ψ gibt, ändert sich die Erfüllbarkeit von Φ nicht, wenn wir ψ entfernen • Wir können also jetzt annehmen, dass Φ keine Formeln ϕ 6= ψ mit ϕ ≡ ψ enthält G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 145 / 158 AL – Vollständigkeits- und Endlichkeitssatz Endlichkeitssatz Endlichkeitssatz der Aussagenlogik (2/10) Beweis (Forts.) • Für jedes n ≥ 1 sei Φn die Menge aller Formeln aus Φ, die nur Variablen aus {A1 , . . . , An } verwenden; es gilt: Φn ⊆ Φn+1 n • Da es, für jedes n, nur 22 verschiedene Wahrheitstabellen für n A1 , . . . , An gibt und damit nur 22 semantisch verschiedene Formeln über A1 , . . . , An , ist Φn insbesondere endlich • Da nach Voraussetzung (ii) jede endliche Teilmenge von Φ eine erfüllende Belegung hat, ist also jedes Φn erfüllbar • Unser Plan: (1) Wir wählen für jedes Φn eine erfüllende Belegung αn (2) Wir konstruieren daraus induktiv eine Belegung α aller Variablen Ai (3) Dann zeigen wir: α |= Φ G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 146 / 158 AL – Vollständigkeits- und Endlichkeitssatz Endlichkeitssatz Endlichkeitssatz der Aussagenlogik (3/10) Beweis (Forts.) • Seien jetzt also erfüllende Belegungen αn für die Mengen Φn gewählt (Schritt 1) • Beobachtung (*): da Φn ⊆ Φn+1 ⊆ . . . , gilt für alle i ≥ n : αi |= Φn • Idee: Wir definieren α auf A1 , . . . , An so, wie „die Mehrheit“ der αi mit i ≥ n • Komplikation: in unendlichen Mengen können die Mehrheitsverhältnisse „schwierig“ sein – Beispiel: in N sind weder die geraden noch die ungeraden Zahlen in der Mehrheit • Modifizierte Idee: Wir definieren α auf A1 , . . . , An so, dass es mit unendlich vielen der αi mit i ≥ n übereinstimmt G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 147 / 158 AL – Vollständigkeits- und Endlichkeitssatz Endlichkeitssatz Endlichkeitssatz der Aussagenlogik (4/10) Beweis (Forts.) Schritt (2): Wir konstruieren aus den αn induktiv eine Belegung α: • Definition von α(A1 ): – α(A1 ) =def 1, falls für unendlich viele i gilt αi (A1 ) = 1 – α(A1 ) =def 0, andernfalls (dann gibt es unendlich viele i mit αi (A1 ) = 0) • Sei nun I1 =def {i ∈ N|α(A1 ) = αi (A1 )} – I1 enthält also alle i, für die αi mit α auf A1 übereinstimmen ⇒ I1 ist unendlich! • α stimmt also mit unendlich vielen αi in A1 überein G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 148 / 158 AL – Vollständigkeits- und Endlichkeitssatz Endlichkeitssatz Endlichkeitssatz der Aussagenlogik (5/10) Beweis (Forts.) • Definition von α(An ) für n > 1, wenn In−1 (unendlich!) bekannt: – α(An ) =def 1, falls für unendlich viele i ∈ In−1 gilt: αi (An ) = 1 – α(An ) =def 0, andernfalls – und wieder gilt dann für unendlich viele i : α(An ) = αi (An ) • In =def {i ∈ In−1 |α(An ) = αi (An )} (unendlich!) – In enthält also alle i ∈ In−1 , für die αi mit α auf A1 , . . . , An übereinstimmen – Außerdem: In ist unendlich! • α stimmt also mit unendlich vielen αi auf A1 , . . . , An überein G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 149 / 158 AL – Vollständigkeits- und Endlichkeitssatz Endlichkeitssatz Endlichkeitssatz der Aussagenlogik (6/10) Beweis (Forts.) • Es fehlt nur noch Schritt (3): Zeige α |= Φ – ⇒ ⇒ – Sei dazu ϕ ∈ Φ beliebig es gibt ein n, so dass ϕ ∈ Φn αi |= ϕ, für alle i ≥ n (wegen Beobachtung (*)) In enthält unendlich viele i, für die αi mit α auf A1 , . . . , An übereinstimmen, also auch unendlich viele solcher i ≥ n – Insbesondere gibt es also ein j ≥ n mit α(A1 ) = αj (A1 ), . . . , α(An ) = αj (An ) ⇒ α |= ϕ (da αj |= ϕ) – Da dies für jede Formel ϕ ∈ Φ gilt, folgt: α |= Φ Satz 4.12 wird oft auch Kompaktheitssatz genannt. G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 150 / 158 AL – Vollständigkeits- und Endlichkeitssatz Endlichkeitssatz Endlichkeitssatz der Aussagenlogik (7/10) Als Beispiel für die Mächtigkeit des Endlichkeitssatzes zeigen wir den folgenden Satz: Satz 4.13 • Sei G = (V, E) ein ungerichteter Graph mit einer abzählbaren Knotenmenge V • Falls jeder endliche Teilgraph von G 3-färbbar ist, dann ist auch G 3-färbbar Beweis • Sei also jeder endliche Teilgraph von G 3-färbbar • Sei V = {v1 , v2 , . . .} und seien c1 , c2 , c3 die erlaubten Farben • Wir verwenden aussagenlogische Variablen Ai,j für i ∈ N und j ∈ {1, 2, 3} mit der Bedeutung: – Ai,j : „Knoten vi wird mit Farbe cj gefärbt“ G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 151 / 158 AL – Vollständigkeits- und Endlichkeitssatz Endlichkeitssatz Endlichkeitssatz der Aussagenlogik (8/10) Beweis • Für jedes i ∈ N sei ϕi =def Ai,1 ∨ Ai,2 ∨ Ai,3 (Knoten i hat mindestens eine Farbe) • Für jedes i 6= l sei ψi,l =def ¬(Ai,j ∧ Al,j ) (Knoten i und l haben verschiedene Farben) • Sei Φ =def {ϕi |i ∈ N } ∪ {ψi,l |(vi , vl ) ∈ E} • Klar: G 3-färbbar ⇔ Φ erfüllbar • Jede endliche Teilmenge von Φ spricht über einen endlichen Teilgraphen von G und ist daher erfüllbar nach Voraussetzung ⇒ Φ ist erfüllbar ⇒ G ist 3-färbbar G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 152 / 158 AL – Vollständigkeits- und Endlichkeitssatz Endlichkeitssatz Endlichkeitssatz der Aussagenlogik (9/10) Zur weiteren Illustration der Mächtigkeit des Endlichkeitssatzes betrachten wir das folgende Beispiel: Beispiel • Sei V = {Ai |i ∈ N} • Für jedes i ≥ 1 sei ϕi = ((A3i−2 ∧ A3i−1 ) ∨ (A3i−2 ∧ A3i ) ∨ (A3i−1 ∧ A3i )) ∧ ¬(A3i−2 ∧ A3i−1 ∧ A3i ) – (jeweils genau 2 der 3 Variablen A1 , A2 , A3 und A4 , A5 , A6 und A7 , A8 , A9 . . . sind jeweils wahr) • Für jedes i ≥ 1 sei ψi =def Ai ↔ Ai2 +1 • Ist Φ =def {ϕi , ψi |i ≥ 1} erfüllbar? G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 153 / 158 AL – Vollständigkeits- und Endlichkeitssatz Endlichkeitssatz Endlichkeitssatz der Aussagenlogik (10/10) Beispiel (Forts.) • Der Versuch, zunächst die Formeln ϕi mit einem systematischen/periodischen Muster (z.B. 10101010101. . . ) oder 1101110111011101. . . ) wahr zu machen, schlägt fehl • Wir können aber für jede Menge Φn (definiert wie oben) induktiv eine Belegung konstruieren • Der (Beweis des) Endlichkeitssatz(es) garantiert, dass auf diese Art ein Modell für Φ gefunden werden kann G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 154 / 158 AL – Vollständigkeits- und Endlichkeitssatz Vollständigkeitssatz der Aussagenlogik Vollständigkeitssatz der Aussagenlogik: abzählbare Version (1/3) Satz 4.14 (Vollständigkeitssatz (abz.)) • Sei Φ eine Menge aussagenlogischer Formeln über einer abzählbaren Menge aussagenlogischer Variablen • Sei ψ eine aussagenlogische Formel • Dann sind äquivalent: – Φ |= ψ – Φ`ψ G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 155 / 158 AL – Vollständigkeits- und Endlichkeitssatz Vollständigkeitssatz der Aussagenlogik Vollständigkeitssatz der Aussagenlogik: abzählbare Version (2/3) Beweis • Es gelte Φ |= ψ ⇒ ⇒ ⇒ ⇒ ⇒ Φ ∪ {¬ψ} ist unerfüllbar (nach Definition) es gibt eine unerfüllbare endl. Teilmenge Φ0 von Φ ∪ {¬ψ} (Satz 4.12) ∈ Res∞ (K(Φ0 )) (Satz 3.8) ∈ Res∞ (K(Φ ∪ {¬ψ})) (da Φ0 ⊆ Φ ∪ {¬ψ}) Φ`ψ (nach Definition) G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 156 / 158 AL – Vollständigkeits- und Endlichkeitssatz Vollständigkeitssatz der Aussagenlogik Vollständigkeitssatz der Aussagenlogik: abzählbare Version (3/3) Beweis (Forts.) • Gelte umgekehrt Φ ` ψ – Also: ∈ Res∞ (K(Φ ∪ {¬ψ})) ⇒ ∈ Resk (K(Φ ∪ {¬ψ})), für ein k – Es gibt also einen Resolutionsbeweis der Tiefe k für aus K(Φ ∪ {¬ψ}) – Sei Φ0 die (endliche!) Menge von Formeln aus Φ ∪ {¬ψ}, die in diesem Beweis verwendet werden ⇒ Φ0 ist unerfüllbar ⇒ Φ ∪ {¬ψ} ist unerfüllbar ⇒ Φ |= ψ (nach Definition) Sowohl der Endlichkeitssatz als auch der Vollständigkeitssatz lassen sich auch für nicht abzählbare Variablenmengen zeigen; der Beweis verwendet dann das Auswahlaxiom. G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 157 / 158 AL – Vollständigkeits- und Endlichkeitssatz Vollständigkeitssatz der Aussagenlogik Zusammenfassung Sie sollten die folgenden Themen und Techniken kennen und beherrschen: • Der Resolutionskalkül lässt sich auch verwenden, um – Erfüllbarkeit für endliche Mengen von Formeln zu testen – Allgemeingültigkeit von Formeln zu testen, und – semantische Schlussfolgerungen zu überprüfen • Wir können die Methoden zum Nachweis der Unerfüllbarkeit von Formeln auch auf unendliche Formelmengen erweitern • Die entscheidende Verbindung stellt dabei der Endlichkeitssatz bereit • Die Hauptanwendung des Endlichkeitssatzes ist der Vollständigkeitssatz, der die Äquivalenz des semantischen Folgerns und des syntaktischen Beweisens für (unendliche) Mengen aussagenlogischer Formeln zeigt G. Kern-Isberner (TU Dortmund) Logik WS 2014/15 158 / 158