Zusammenfassung Zusammenfassung der letzten LVA Definition Die Formeln der Aussagenlogik sind induktiv definiert: Einführung in die Theoretische Informatik Christina Kohl Alexander Maringele Georg Moser Michael Schaper 1 Eine atomare Formel p ist eine Formel, 2 ein Wahrheitswertsymbol (True, False) ist eine Formel, und 3 wenn A und B Formeln sind, dann sind ¬A (A ∧ B) (A ∨ B) (A → B) auch Formeln Institut für Informatik @ UIBK Wintersemester 2016 Definitionen • Erweiterung der Belegung v zu einem Wahrheitswert v̄ für Formeln • A ≡ B, wenn A |= B und B |= A gilt GM (IFI) Inhalte der Lehrveranstaltung Einführung in die Theoretische Informatik 36/1 Methode von Quine Inhalte der Lehrveranstaltung Methode von Quine Einführung in die Logik Lemma Syntax & Semantik der Aussagenlogik, Formales Beweisen, Konjunktive und Disjunktive Normalformen A eine Formel und p ein Atom in A 1 A ist eine Tautologie gdw. A{p 7→ True} ist Tautologie Einführung in die Algebra Boolesche Algebra, Universelle Algebra, Logische Schaltkreise 2 Einführung in die Theorie der Formalen Sprachen und A{p 7→ False} ist Tautologie A ist unerfüllbar gdw. A{p 7→ True} unerfüllbar und A{p 7→ False} unerfüllbar Grammatiken und Formale Sprachen, Reguläre Sprachen, Kontextfreie Sprachen Beispiel (Wahrheitstabellen oder logische Äquivalenzen) Einführung in die Berechenbarkeitstheorie Algorithmisch unlösbare Probleme, Turing Maschinen, Registermaschinen Wir betrachten die Formel F F := (p ∧ q → r) ∧ (p → q) → (p → r) Einführung in die Programmverifikation Prinzipien der Analyse von Programmen, Verifikation nach Hoare GM (IFI) Einführung in die Theoretische Informatik Es ist nicht schwer einzusehen, dass F eine Tautologie ist 37/1 GM (IFI) Einführung in die Theoretische Informatik 38/1 Methode von Quine Methode von Quine Beispiel (Methode von Quine) Beispiel (Fortsetzung) Die Methode liefert die folgenden Anforderungen 1 (True ∧ q → r) ∧ (True → q) → (True → r) =: G ist Tautologie 2 (False ∧ q → r) ∧ (False → q) → (False → r) ist Tautologie G z }| { (True ∧ q → r) ∧ (True → q) → (True → r) ≡ (q → r) ∧ q → r Anforderungen in Baumform: {q 7→ False} {q 7→ True} (p ∧ q → r) ∧ (p → q) → (p → r) {p 7→ False} {p 7→ True} G Übrige Anforderungen 3 (True → r) ∧ True → r ≡ r ∧ True → r ≡ r→r ≡ True (False ∧ q → r) ∧ (False → q) → (False → r) ≡ (False → r) ∧ (False → q) → True ≡ True ∧ True → True ≡ True (False → r) ∧ False → r ≡ True ∧ False → r ≡ False → r ≡ True Es gibt keine weiteren Anforderungen mehr, also ist F eine Tautologie G ist Tautologie GM (IFI) Einführung in die Theoretische Informatik 39/1 Formales Beweisen GM (IFI) Einführung in die Theoretische Informatik 40/1 Formales Beweisen Definition Formales Beweisen G eine endliche Menge von Formeln, F eine Formel Modus Ponens A→B B 1 A Ein Beweis von F aus G ist eine Sequenz MP A1 , . . . , An = F sodass für alle 1 6 i 6 n: • Ai ∈ G • Ai ist eines der Axiome • Ai folgt mit MP aus Ai1 und Ai2 , i1 , i2 < i Definition Axiome für die Aussagenlogik nach Frege und Lukasiewicz (1) A → (B → A) (2) (A → (B → C )) → ((A → B) → (A → C )) (3) (¬A → ¬B) → (B → A) 2 F heißt beweisbar aus den Annahmen G, wenn es einen Beweis von F aus G gibt Definition Die Axiome sind Schemata, das heißt A, B und C können für beliebige Formeln stehen GM (IFI) Einführung in die Theoretische Informatik 41/1 1 Die Beweisbarkeitsrelation A1 , . . . , An ` B gilt, gdw. B aus A1 , . . . , An beweisbar ist 2 Wir schreiben ` A statt ∅ ` A und nennen A in diesem Fall beweisbar GM (IFI) Einführung in die Theoretische Informatik 42/1 Formales Beweisen Formales Beweisen Korrektheit und Vollständigkeit Beispiel Wir betrachten die Tautologie ¬p → (p → q): Satz Das Axiomensystem mit Inferenzregel MP ist korrekt und vollständig für die Aussagenlogik: A1 , . . . , An |= B gdw. A1 , . . . , An ` B . Basierend auf einem korrekten und vollständigen Beweissystem können wir versuchen das Beweisen zu automatisieren → SAT solvers 1 2 3 4 5 6 Satz (Deduktionstheorem) Sei B mit Hilfe der Prämisse A beweisbar, dann existiert ein Beweis von A → B, der A nicht als Prämisse hat GM (IFI) Einführung in die Theoretische Informatik 43/1 Formales Beweisen ¬p → (p → q) p q ¬p → (p → q) T T T F T T F F T F T T GM (IFI) ¬p ¬p → (¬q → ¬p) ¬q → ¬p (¬q → ¬p) → (p → q) p→q ¬p → (p → q) Prämisse Axiom (1) 1, 2, Modus Ponens Axiom (3) 3, 4, Modus Ponens 1, 5, Deduktionstheorem Einführung in die Theoretische Informatik 44/1 Formales Beweisen Beweis des Deduktionstheorems. Beweis des Deduktionstheorems. Angenommen B wird mit dem Beweis • Fall Bk ein Axiom oder eine Prämisse 6= A B1 , . . . , B` = B nachgewiesen; oBdA. gilt B1 = A; wir zeigen die folgende Aussage mit Induktion nach k (1 6 k 6 `): Wir verwenden folgenden Beweis: 1 2 3 A → Bk ist ohne die Prämisse A beweisbar 2 q Nun zeigen wir die Gültigkeit mit folgenden Beweis: Fakt 1 p Basis: k = 1; dann gilt B1 = A und die Behauptung, da A → A beweisbar Bk Bk → (A → Bk ) A → Bk Axiom oder Prämisse 6= A Axiom (1) 1, 2, MP • Fall Bk folgt mit MP aus Bi , Bj = (Bi → Bk ) Wir verwenden folgenden Beweis: Schritt: k > 1; die Induktionshypothese besagt 1 2 3 4 5 Für alle l < k ist A → Bl ohne die Prämisse A beweisbar Fallunterscheidung: • sei Bk = A (wir argumentieren wie im Basisfall) • sei Bk ein Axiom oder eine Prämisse 6= A Beweis von A → Bi IH Beweis von A → (Bi → Bk ) IH (A → (Bi → Bk )) → (A → Bi ) → (A → Bk ) Axiom (2) (A → Bi ) → (A → Bk ) 2, 3, MP A → Bk 1, 4, MP • Bk folgt mit MP aus Bi , Bj = (Bi → Bk ) GM (IFI) Einführung in die Theoretische Informatik 45/1 GM (IFI) Einführung in die Theoretische Informatik 46/1 Formales Beweisen Formales Beweisen Konjunktive und Disjunktive Normalform Lemma Definition • f : {T, F}n → {T, F} eine Wahrheitsfunktion Eine Wahrheitsfunktion f : {T, F}n → {T, F} ist eine Funktion, die n Wahrheitswerten einen Wahrheitswert zuordnet • p1 , . . . , pn atomare Formeln TV(f ) 6= ∅, TV(f ) 6= {T, F}n • Sei DNF D definiert als: Definition D := Sei f : {T, F}n → {T, F} eine Wahrheitsfunktion; wir definieren: 3 • Sei KNF K definiert als: • Die Wahrheitstabellen von D und K entsprechen der Formel A ist in konjunktiver Normalform (KNF), wenn A eine Konjunktion von Disjunktionen von Literalen Wahrheitsfunktion f 47/1 GM (IFI) Einführung in die Theoretische Informatik 48/1 Formales Beweisen Satz Beispiel 1 Jede Wahrheitsfunktion kann als DNF oder KNF ausgedrückt werden 2 Jede Formel mit n Atomen induziert eine Wahrheitsfunktion in n Variablen Die folgende Operation (⊕) wird XOR genannt: p F F T T Beweis. Es fehlen die Fälle, wo die Wahrheitsfunktion trivial ist: • TV(f ) = ∅ • TV(f ) = {T, F}n 2 Setze D = K := Vn 3 Setze D = K := Wn i=1 (pi q F T F T p⊕q F T T F Wir erstellen die KNF. i=1 (pi ∧ ¬pi ) im ersten Fall TV(⊕) = {(F, T), (T, F)} ∨ ¬pi ) im zweiten Fall Folgerung p1 F T Für jede Formel A existiert eine DNF D und eine KNF K , sodass A ≡ D ≡ K gilt. GM (IFI) Bj wobei Bj = pj , wenn sj = F und Bj = ¬pj sonst Formales Beweisen 1 n _ (s1 ,...,sn )6∈TV(f ) j=1 Formel A ist in disjunktiver Normalform (DNF), wenn A eine Disjunktion von Konjunktionen von Literalen Einführung in die Theoretische Informatik ^ K := Ein Literal ist ein Atom p oder die Negation eines Atoms ¬p GM (IFI) Ai wobei Ai = pi , wenn si = T und Ai = ¬pi sonst Definition 2 n ^ (s1 ,...,sn )∈TV(f ) i=1 TV(f ) := {(s1 , . . . , sn ) | f (s1 , . . . , sn ) = T} 1 _ Einführung in die Theoretische Informatik 49/1 GM (IFI) p2 F T p1 ⊕ p2 F F Disjunktion p1 ∨ p2 ¬p1 ∨ ¬p2 KNF (p1 ∨ p2 ) ∧ (¬p1 ∨ ¬p2 ) Einführung in die Theoretische Informatik 50/1