Informatik A Prof. Dr. Norbert Fuhr [email protected] auf Basis des Skripts von Prof. Dr. Wolfram Luther und der Folien von Peter Fankhauser 1 Teil I Logik 2 Geschichte • R. Descartes (17. Jhdt): klassische Euklidische Geometrie mit algebraischen Methoden • G.W. Leibnitz (17. Jhdt): lingua characteristica, calculus rationator • Gottlob Frege (1879): Begriffsschrift Prädikatenlogik erster Stufe • Skolem (1920): Beweisverfahren • D. Hilbert, W. Ackermann (1928): Entscheidbarkeitsproblem • Herbrand (1930): Entscheidbarkeit für korrekten mathematischen Satz • Alan Turing, Alonzo Church (1936): Unentscheidbarkeit PL1 • Robinson (1954): automatisches Beweisverfahren (Resolutionsprinzip) • Kowalski, Colmerauer (1972): Prolog 3 Teil I.1 Aussagenlogik 4 Aussagenlogik Grundlagen • Aussage (atomare Formel): Satz der entweder wahr oder falsch ist abgekürzt mit Großbuchstaben (A, B, ...) • Beispiel: Heute ist Sonntag • Interpretation: Zuordnung eines Wahrheitswertes (w oder f ) • Operation: Verknüpfung von Aussagen • Beispiel: Heute ist Sonntag und es ist kalt. 5 Verknüpfungen • Negation: einstellige Operation: ¬A oder A w f ¬ f w • Konjunktion: zweistellige Operation: A ∧ B ∧ w f w w f f f f • Disjunktion: zweistellige Operation: A ∨ B ∨ w f w w w f w f 6 Formeln Rekursive Konstruktion: Literal L ::= A | ¬A Formel F ::= L Aussage Negierte Aussage Literal Negation | ¬F | F ∧ F Konjunktion | F ∨ F Disjunktion | (F ) Klammerung Beispiel A . . . Heute ist Montag. B . . . Heute ist Feiertag. C . . . Heute ist Vorlesung. ¬(A ∧ ¬B) ∨ C 7 Weitere Verküpfungen • Subjunktion: A → B ≡ ¬A ∨ B → w f w w f f w w • Bijunktion: A ←→ B ≡ (A ∧ B) ∨ (¬A ∧ ¬B) ←→ w f w w f f f w • Antivalenz (xor): A ⊕ B ≡ (A ∧ ¬B) ∨ (¬A ∧ B) ⊕ w f w f w f w f 8 Klauseln Klausel K ::= L | K ∨K Literal Disjunktion Klausel Konjunktive Form KF ::= (K) | (K) ∧ KF Konjunktion von Klauseln Konjunktion Disjunktive Form D ::= L | D∧D DF ::= (D) | (D) ∨ DF Literal Konjunktion Konjunktion Disjunktion von Konjunktionen Beispiele: ¬A ∨ B ∨ C . . . KF und DF (¬A ∨ B ∨ C) ∧ (¬B ∨ ¬C) . . . KF (¬A ∧ ¬B) ∨ (¬A ∧ ¬C) ∨ (B ∧ ¬C) ∨ (¬B ∧ C) . . . DF 9 Beweisverfahren Begriffe • Modell: Interpretation unter der eine Formel F wahr ist. • Unerfüllbare Formel: Formel F , für die es kein Modell gibt. • Tautologie: Formel F , für die jede Interpretationen ein Modell ist. `F Beweis über Wahrheitstafeln • Durchrechnen für alle Interpretationen Axiomatische Verfahren • Umformen bis zum Wahrheitswert w oder auf konjunktive Form mit mindestens einer Aussage P ∨ ¬P in jeder Klausel 10 Wahrheitstafel Zu zeigen: ` ((P → Q) ∧ P ) → Q P f f w w Q P → Q (P → Q) ∧ P ((P → Q) ∧ P ) → Q f w f w w w f w f f f w w w w w 11 Syntaktische Umformung Äquivalent sind die folgenden Formeln: ((P → Q) ∧ P ) → Q ¬ ((¬P ∨ Q) ∧ P ) ∨ Q ((P ∧ ¬Q) ∨ ¬P ) ∨ Q ((P ∨ ¬P ) ∧ (¬Q ∨ ¬P )) ∨ Q (w ∧ (¬P ∨ ¬Q)) ∨ Q (¬P ∨ ¬Q) ∨ Q ¬P ∨ w w 12 Überführung in konjunktive Form ((P → Q) ∧ P ) → Q ¬ ((¬P ∨ Q) ∧ P ) ∨ Q ((P ∧ ¬Q) ∨ ¬P ) ∨ Q ((P ∨ ¬P ) ∧ (¬Q ∨ ¬P )) ∨ Q ((P ∨ ¬P ∨ Q) ∧ (¬Q ∨ Q ∨ ¬P )) 13 Äquivalenzregeln Zwei Formeln F, G sind äquivalent; F ≡ G, wenn gilt: ` F ←→ G (F ∧ F ) (F ∧ G ) (F ∨ G ) ((F ∧ G) ∧ H ) ((F ∨ G) ∨ H ) (F ∧ (F ∨ G)) (F ∧ (G ∨ H )) (F ∨ (G ∧ H )) ¬¬F ¬ (F ∨ G ) ¬ (F ∧ G ) F →G F ∧G F ∧G ≡ ≡ ≡ ≡ ≡ ≡ ≡ ≡ ≡ ≡ ≡ ≡ ≡ ≡ F, (F ∨ F ) ≡ F Idempotenz (G ∧ F ) , Kommutativität (G ∨ F ) (F ∧ (G ∧ H )) , Assoziativität (F ∨ (G ∨ H )) F, (F ∨ (F ∧ G)) ≡ F Absorption ((F ∧ G) ∨ (F ∧ H )) , Distributivität ((F ∨ G) ∧ (F ∨ H )) F Doppelnegation (¬F ∧ ¬G) , de Morgansche Regeln (¬F ∨ ¬G) ¬F ∨ G bedingte Eliminierung F, F ∨ G ≡ G, falls F unerfüllbar G, F ∨ G ≡ F, falls F Tautologie 14 Logisches Schließen • Für S eine Menge von Formeln F1, . . . , Fk und F eine Formel, ist F eine logische Konsequenz von S, in Zeichen S ` F , wenn jede Interpretation von S, die ein Modell von S ist, auch ein Modell von F ist. • Regeln: F F F ∧G F ∧G (F → G) ∧ (G → H) G ∧ (G → F ) ¬F ∧ (G → F ) ` ` ` ` ` ` ` F ∨G G→F F G↔F F →H Transitivität F Modus Ponens (Schlussregel) ¬G Modus Tollens 15 Beispiel: Transitivität A: B: B1 : B2 : (a ist eine gerade Zahl und b ist eine gerade Zahl) (a + b ist eine gerade Zahl) (a = 2n und b = 2m, n, m ganze Zahlen) (a + b = 2k, k ganze Zahl) A A → B1 B1 → B 2 B2 → B B a und b sind gerade Zahlen Dann gibt es Zahlen n, m mit a = 2n und b = 2m Aus a = 2n und b = 2m folgt a + b = 2(n + m) = 2k Aus a + b = 2k folgt a + b ist eine gerade Zahl Mit der Transitivität gilt B 16 Axiomensysteme • Theorie: Menge von Axiomen + Menge von Formeln • Korrektheit: Jede Formel F , die aus einer Theorie T mit Hilfe von Axiomen AS abgeleitet wird (T `AS ) ist eine logische Konsequenz aus T (T ` F ). • Vollständigkeit: Jede Formel F , die eine logische Konsequenz aus T ist, ist auch tatschlich mit Hilfe von AS ableitbar. • Konsistenz: Es ist nicht sowohl F als auch ¬F ableitbar. • Unabhängigkeit: Kein Axiom ist die logische Konsequenz anderer Axiome. • Entscheidbarkeit: Für alle Formeln gilt T `AS F oder T `AS ¬F . • Aussagenlogik ist entscheidbar und besitzt konsistente, vollständige und unabhängige Axiomensysteme. 17 Hilberts Axiomensystem der Aussagenlogik • AS1: A ∨ A → A • AS2: A → (A ∨ B ) • AS3: (A ∨ B ) → (B ∨ A) • AS4: (A → B ) → ((C ∨ A) → (C ∨ B )) • Definition: A → B ≡ ¬A ∨ B • Modus Ponens: A ∧ (A → B) ` B • Ersetzungsregel: F [A/G] in der Formel F ersetze einige (alle) Vorkommen der Aussagenvariablen A durch die Formel G 18 Beispiel Zeige: ` (F ∨ F ) ←→ F Beweis: (F ∨ F ) → F AS1. F → (F ∨ G ) AS2, F → (F ∨ F ) Ersetzungsregel ((F ∨ G)[G/F ]). 19 Automatisches Beweisen Resolution • Modus Ponens: P P →B B • Verallgemeinerung: P → B ≡ ¬P ∨ B P ∨ A 1 ∨ A2 ∨ . . . ∨ A n ¬P ∨ B1 ∨ B2 ∨ . . . ∨ Bm A1 ∨ A2 ∨ . . . ∨ An ∨ B1 ∨ B2 ∨ . . . ∨ Bm Resolvente • Um die Aussage A zu beweisen füge die Negation der Aussage ¬A zu den Formeln der Theorie und versuche, durch Resolution die leere Klausel herzuleiten. 20 Beispiel T = A ∨ B, A → ¬B, ¬A Um B herzuleiten, fügen wir ¬B zur Theorie dazu, und formen A → ¬B um. Das ergibt: T 0 = A ∨ B, ¬A ∨ ¬B, ¬A, ¬B In Klauselform: T 0 = (A, B), (¬A, ¬B), ¬A, ¬B B ist ein Resolvent von (A, B) und ¬A. Der Resolvent von B und ¬B ist die leere Menge, daher ist T 0 unerfüllbar, daher folgt aus T B. 21 Teil I.2 Prädikatenlogik 22 Prädikatenlogik Erweiterung der Aussagenlogik • Konstante: a, b, c • Variablen: x, y, z • Funktionen: f (a1, . . . , ak ) • Prädikate: P (a1, . . . , ak ) • Quantoren: Allquantor (∀xF ), Existenzquantor (∃xF ) 23 Semantik Interpretation: Abbildung auf Domäne zur Zuordnung eines Wahrheitswertes Beispiel F : ∀xP (f (x, a), x). • Domäne: natürliche Zahlen IN := {1, 2, 3, . . .} • Konstante a ::= 1 • f (x, a) ::= x ∗ a • P (x, y) ::= x = y • Interpretation: Für alle natürlichen Zahlen x ∈ IN gilt x · 1 = x. 24 Weitere Schlussregeln und Äquivalenzen ∀xF ` ∃xF für eine nichtleere Domäne ∀xF ∨ ∀xG ` ∀x(F ∨ G) ∃x(F ∧ G) ` ∃xF ∧ ∃xG ¬∀xF ≡ ∃x¬F ¬∃xF ≡ ∀x¬F ∀x∀yF ≡ ∀y∀xF ∃x∃yF ≡ ∃y∃xF ∀x(F ∧ G) ≡ ∀xF ∧ ∀xG ∃x(F ∨ G) ≡ ∃xF ∨ ∃xG 25 Entscheidbarkeit von PL1 • Die Wahrheitstafelmethode ist nicht übertragbar • Erfüllbarkeit und Allgemeingültigkeit ist nicht entscheidbar • PL1 ist halbentscheidbar: Unerfüllbare Formeln werden nach endlicher Zeit erkannt. 26 Beispiel: Peano-Axiome 1. P (1) 2. ∀x (P (x) → ∃y (P (y) ∧ Q(x, y))) . 3. ¬∃x(P (x) ∧ Q(x, 1) 4. ∀x1∀x2∀y1∀y2 (P (x1) ∧ P (x2) ∧ Q(x1, y1) ∧ Q(x2, y2)∧ ¬(x1 = x2) → ¬(y1 = y2)). 5. ∀M (M (1) ∧ ∀x∀y (P (x) ∧ P (y) ∧ M (x) ∧ Q(x, y) → M (y)) → (M ≡ P )) . Interpretation • P (x) . . . x ist eine natürliche Zahl • Q(x, y) . . . y = x + 1; y ist Nachfolger von x • M . . . Prädikatenvariable (nicht möglich in PL1) 27