Ersetzbarkeitstheorem Die Abgeschlossenheit läßt sich auch folgendermaßen formulieren: Ersetzbarkeitstheorem Seien F und G Formeln mit F G. SeienH und H Formeln, so daß H aus H hervorgeht, indem ein Vorkommen von F in H durch G ersetzt wird. Dann gilt H H. 65
Beweis des Ersetzbarkeitstheorems (I) Beweis (durch Induktion über den Formelaufbau von H): Induktionsanfang: Falls H eine atomare Formel ist, dann kann nur H = F sein, also H = G. Damit folgt H = F G = H. Induktionsschritt: Falls F gerade H selbst ist, so trifft dieselbe Argumentation wie im Induktionsanfang zu. Nehmen wir also an, dass F eine Teilformel von H mit F = H ist. Dann müssen wir die Fälle H = H 1, H =(H 1 H 2 )undh = H 1 H 2 unterscheiden. 66
Beweis des Ersetzbarkeitstheorems (II) Fall 1: H = H 1. Dann gibt es Formel H 1 mit H = H 1,dieausH 1 durch Ersetzung eines Vorkommens von F durch G hervorgeht. Nach Induktionsvoraussetzung gilt H 1 H 1. Damit gilt für beliebige passende Belegungen B: B(H) =1 B(H 1 )=1 B(H 1 )=B(H ). Also ist H H gezeigt. 67
Beweis des Ersetzbarkeitstheorems (III) Fall 2: H =(H 1 H 2 ). Dann existieren Formeln H1 und H 2 mit H = H1 H 2 beiden folgenden Aussagen: und es gilt eine der H 1 = H 1 und H 2 entsteht durch Ersetzen von F in H 2 durch G. H 1 entsteht durch Ersetzen von F in H 1 durch G und H 2 = H 2. In jedem Fall haben wir nach Induktionsvoraussetzung: H 1 H 1 und H 2 H 2. Damit gilt für beliebige passende Belegungen B: B(H) =max(b(h 1 ), B(H 2 )) = max(b(h 1 ), B(H 2 )) = B(H ). Also ist H H gezeigt. 68
Beweis des Ersetzbarkeitstheorems (IV) Fall 3: H =(H 1 H 2 ). Dann existieren Formeln H1 und H 2 mit H = H1 H 2 beiden folgenden Aussagen: und es gilt eine der H 1 = H 1 und H 2 entsteht durch Ersetzen von F in H 2 durch G. H 1 entsteht durch Ersetzen von F in H 1 durch G und H 2 = H 2. In jedem Fall haben wir nach Induktionsvoraussetzung: H 1 H 1 und H 2 H 2. Damit gilt für beliebige passende Belegungen B: B(H) =min(b(h 1 ), B(H 2 )) = min(b(h 1 ), B(H 2 )) = B(H ). Also ist H H gezeigt. 69
Die Hauptprobleme der Aussagenlogik In der informatischen Aussagenlogik sucht man nach Verfahren, die folgende Aufgaben (Probleme) lösen: Modellprüfung Sei F eine Formel und sei B eine passende Belegung. Gilt B(F ) = 1? Erfüllbarkeit Sei F eine Formel. Ist F erfüllbar? Gültigkeit Sei F eine Formel. Ist F gültig? Folgerung Seien F und G Formeln. Gilt F = G? Äquivalenz Seien F und G Formeln. Gilt F G? 70
Folgerung, Gültigkeit und Äquivalenz: Beispiel & Aufgabe wir zeigen: AusderGültigkeit von (F G) folgt F = G. z.z. ist B(G) =1für alle passenden Belegungen mit B(F ) = 1. Sei also B Belegung mit B(F ) = 1. Da die Formel F G gültig ist, gilt 1=B(F G) =B( F G). Wegen B( F ) = 0 folgt also B(G) = 1. Zeigen Sie, dass die folgenden Aussagen gelten: Wenn F = G dann (F G) gültig. Wenn (F G) gültig dann F G. Wenn F G dann (F G) gültig. 71
Beziehungen zwischen Hauptproblemen Können wir Problem P 1 lösen, falls wir Problem P 2 lösen können? Gültigkeit Erfüllbarkeit: F erfüllbar genau dann, wenn F nicht gültig. Erfüllbarkeit Gültigkeit: F gültig genau dann, wenn F nicht erfüllbar Folgerung Gültigkeit: F gültig genau dann, wenn = F. Gültigkeit Folgerung: F = G genau dann, wenn F G gültig. Äquivalenz Gültigkeit: F gültig genau dann, wenn F. Gültigkeit Äquivalenz: F G genau dann, wenn F G gültig. 72
Beziehungen zwischen den Hauptproblemen Es reicht also, Algorithmen für eines der Hauptprobleme anzugeben. In der Vorlesung Berechenbarkeit und Komplexität (4. Semester) werden Sie lernen, daß es keinen i.a. effizienten Algorithmus geben kann. Unser Ziel ist es nun, effiziente Algorithmen für bestimmte Formelklassen zu finden. Wir werden zunächst zeigen, daß zu jeder Formel F eine äquivalente aus (fast) jeder der betrachteten Formelklassen berechnet werden kann (ihre Normalform ). 73
Disjunktive Normalform (DNF) Definition Ein Literal ist eine atomare Formel oder die Negation einer atomaren Formel. Im ersten Fall sprechen wir von einem positiven, imzweitenfall von einem negativen Literal. Ein Monom ist eine Konjunktion von Literalen, also eine Formel der Form 1 i n wobei L 1,...,L n Literale sind. Eine Formel F ist in disjunktiver Normalform (DNF), falls sie eine Disjunktion von Monomen ist: F =( i=1 L i n m i ( L i,j )), j=1 wobei L i,j für 1 i n und 1 j m i Literal ist. 74
Disjunktive Normalform Satz (Existenz von DNF, vgl. Rechnerorganisation) Sei D {A 1, A 2,...} eine endliche Menge von atomaren Formeln und α : {0, 1} D {0, 1} eine Wahrheitstafel. Dann existiert eine Formel F in DNF mit B(F )=1 α(b) =1 für alle Belegungen B : D {0, 1}. Beweis: Für A i D setze A 0 i = A i und A 1 i = A i. Betrachte die folgende Formel in DNF: F = B :D {0,1} α(b )=1 A i D A B (A i ) i Minterm zu B 75
Beweis der Existenz einer DNF (Fortsetzung) Sei zunächst B : D {0, 1} Belegung mit B(F ) = 1. dann existiert B : D {0, 1} mit α(b )=1undB( (A i ) A i D AB i )=1 dann gilt B(A i )=1 B (A i )=1für alle A i D dann gilt B = B dann gilt α(b) = 1 Sei umgekehrt B : D {0, 1} Belegung mit α(b) = 1. Dann gilt 1 B(F ) =max{b( also B(F ) = 1. B( =1 A i D A i D A B(A i ) i ) A B (A i ) i ) B : D {0, 1},α(B )=1} 76
Disjunktive Normalform Folgerung Zu jeder Formel G existiert eine Formel F in DNF mit G F. Beweis: Sei D die Menge der atomaren Formeln aus G. Definiere α : {0, 1} D {0, 1} durch α(b) =B(G) für alle Belegungen B : D {0, 1}. Nach dem Satz über die Existenz von DNF existiert eine Formel F in DNF mit B(F )=1 α(b) =1 B(G) =1 für alle Belegungen B. Also gilt G F. 77
Negationsnormalform (NNF) Definition Eine Formel F ist in Negationsnormalform (NNF), wenn alle negierten Teilformeln atomar sind (d.h. ist G Teilformel, so G = A i für ein i N). Satz (Existenz von NNF) Zu jeder Formel F existiert eine Formel F in NNF mit F F. Beweis: induktiv über die Länge der Formel F. Ist F Literal, so setze G = F. Sei nun F kein Literal und existiere für jede (echt) kürzere Formel eine äquivalente Formel in NNF. Wir unterscheiden 5 Fälle: F = G H Nach Induktionsvoraussetzung existieren Formeln G und H in NNF mit G G und H H. Dann ist F := G H in NNF und es gilt F = G H G H G H = F nach dem Ersetzungssatz (zweimal angewandt). F = G H analog 78
Beweis der Existenz einer NNF (Fortsetzung) F = G Nach Induktionsvoraussetzung existiert eine Formel G in NNF mit G G. Es gilt F = G G G nach dem Fundamentalsatz. F = (G H) Nach der Induktionsvoraussetzung existieren Formeln G und H in NNF mit G G und H H. Dann ist F := G H in NNF und es gilt F = G H G H (G H) =F nach dem Ersetzungs- und dem Fundamentalsatz (demorgan). F = (G H) analog 79
Konjunktive Normalform (KNF) Definition Eine Klausel ist eine Disjunktion von Literalen, also eine Formel der Form wobei L 1,...,L n Literale sind. 1 i n Eine Formel F ist in konjunktiver Normalform (KNF), falls sie eine Konjunktion von Klauseln ist: F =( i=1 L i n m i ( L i,j )), j=1 wobei L i,j für 1 i n und 1 j m i Literal ist. 80
Konjunktive Normalform Satz (Existenz von KNF) Zu jeder Formel F existiert eine Formel F in KNF mit F F. Beweis: Sei F Formel. Nach dem Satz über die Existenz von NNF können wir annehmen, daß F in NNF ist. Induktiv über den Aufbau der Formel F konstruieren wir eine äquivalente Formel F in KNF: Ist F ein Literal, so setze F := F. Sei nun F kein Literal, und existiere zu jeder echten Teilformel G von F eine äquivalente Formel G in KNF. Da F in NNF ist, brauchen wir nur die zwei Fälle F = G H and F = G H zu betrachten: 81
Beweis der Existenz von KNF (Fortsetzung) F = G H Nach Induktionsvoraussetzung existieren Formeln G und H in KNF mit G G und H H. Dann ist F := G H in KNF und es gilt F = G H G H = F nach dem Ersetzungssatz. F = G H Nach der Induktionsvoraussetzung existieren wieder Formeln G und H in KNF mit G G und H H,alsoexistieren Monome G 1,...,G r und H 1,...,H s mit G = G 1 G 2...G r und H = H 1 H 2...H s. Setze F = 1 i r 1 j s (G i H j ). Dann ist F in KNF und es gilt F = G H G H F nach dem Ersetzungs- und dem Fundamentalsatz (Distributivität). 82
Zusammenfassung Normalformen Zu jeder Formel F gibt es Formeln F in KNF, F in NNF und F in DNF mit F F F F. Dabei ist die Größe von F linear in der von F,dieFormelnF und F sind i.a. exponentiell größer als F. Bemerkung: da jede DNF auch NNF ist, ist der Satz über die Existenz der NNF eine einfache Konsequenz aus der Existenz der DNF - aber der neue Beweis liefert eine kleinere Formel. Wir haben zwei Beweistechniken kennengelernt: 1 direkte Konstruktion der DNF aus der Wahrheitstafel von F 2 induktive Konstruktion der NNF bzw. der KNF aus der Formel F man kann auch die DNF induktiv und die KNF und NNF direkt konstruieren (versuchen Sie es!) 83
Erinnerung: Beziehungen zwischen den Hauptproblemen Es reicht, Algorithmen für eines der Hauptprobleme anzugeben. In der Vorlesung Berechenbarkeit und Komplexität (5. Semester) werden Sie lernen, daß es keinen i.a. effizienten Algorithmus geben kann. Unser Ziel ist es nun, effiziente Algorithmen für bestimmte Formelklassen zu finden (DNF, KNF). Wir haben gezeigt, daß zu jeder Formel F eine äquivalente in DNF bzw. in KNF existiert (die allerdings exponentiell größer sein können). 84
Erfüllbarkeit und Gültigkeit in DNF und KNF Erfüllbarkeit ist leicht lösbar (in linearer Zeit) für Formeln in DNF: Eine Formel in DNF ist genau dann erfüllbar, wenn sie ein erfüllbares Monom enthält. Ein Monom ist erfüllbar, wenn es für keine atomare Formel A sowohl A als auch A enthält. Erfüllbar: ( B A B) ( A C) Nicht erfüllbar: (A A B) (C C) Gültigkeit ist leicht lösbar (in linearer Zeit) für Formeln in KNF: Eine Formel in KNF ist genau dann gültig, wenn jede ihrer Klauseln gleichzeitig A und A für eine atomare Formel A enthält (dies gilt insbes. für die leere Klausel). Gültig: (A A B) (C C) Nicht gültig: (A A) ( A C) 85
Erfüllbarkeitstests Im folgenden: Ein sehr effizienter Erfüllbarkeitstest für eine spezielle Klasse von Formeln in KNF, sogenannte Hornformeln (vgl. Grundlagen und diskrete Strukturen ) Ein für Formeln in KNF im allgemeinen effizienter Unerfüllbarkeitstest (Resolution) Ein für beliebige Formeln im allgemeinen effizienter Erfüllbarkeitstest (Tableau) Ein (philosophisch) interessanter Erfüllbarkeitstest für beliebige Formeln (natürliches Schließen) 86