Aussagenlogik I Motivation I Syntax I Semantik I Erfüllbarkeit I SAT-Solver I Kompaktheit I Beweiskalküle Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax Einführendes Beispiel Rätsel Norbert sagt “Martin sagt die Wahrheit”. Martin sagt “Bahareh lügt”. Bahareh sagt “Norbert und Martin sagen entweder beide die Wahrheit oder lügen beide”. Wer lügt, und wer sagt die Wahrheit? 22 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax Syntax der Aussagenlogik Wir setzen eine Menge V = {A, B, C , . . .} von Aussagenvariablen voraus. Formeln der Aussagenlogik (über V) sind induktiv definiert durch: • Jeder Aussagenvariable A ist eine Formel. • Die Konstanten tt und ff sind Formeln. • Sind ϕ und ψ Formeln, so sind auch • (ϕ ∧ ψ) • (ϕ ∨ ψ) • ¬ϕ • (ϕ → ψ) • (ϕ ↔ ψ) Formeln. (“und”) (“oder”) (“nicht”) (“wenn-dann”) (“genau-dann-wenn”) 23 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax Präzedenzregeln zur besseren Lesbarkeit lassen wir auch Klammern weg (z.B. ganz außen) Bindungskraft der Operatoren (auch Junktoren genannt) in absteigender Reihenfolge: ¬, ∧, ∨, →, ↔ soll heissen: ((A ∨ ¬(B ∧ ¬C )) ↔ (C → A)) schreiben wir auch als A ∨ ¬(B ∧ ¬C ) ↔ C → A 24 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax Präzedenzen für Eindeutigkeit Klammern werden nur benutzt, um Formeln eindeutig zu machen vgl.: if x==0 { x = x+1; } y = y-1; if x==0 { x = x+1; y = y-1; } genauso: A ∨ ¬B ∧ C ist nicht eindeutig wichtig: Unterscheidung notwendig, weil verschiedene Klammerungen eine verschiedene Bedeutung haben sollen Semantik 25 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax Syntaxbäume beachte: Menge aller syntaktisch korrekten aussagenlogische Formeln ist kontext-freie Sprache was ist das zugrundeliegende Alphabet? eindeutige Darstellung von Formeln über Syntaxbäume Bsp.: (A ∨ ¬B) ∧ C vs. A ∨ (¬B ∧ C ) 26 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax Induktion über Formelaufbau falls |V| ≥ 1, dann gibt es unendlich viele verschiedene Formeln man stelle sich vor, jeder Formel sollte eine Farbe zugeordnet werden; wie ginge so etwas? • unendliche Tabelle (gibt es vielleicht überabzählbar viele Formeln?) • Rückführung auf endlich viele Fälle • “alle sind rot” • “alle der Länge ≤ 27 sind grün, die anderen blau” • Induktion 27 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax Induktion über Formelaufbau induktive Definition: • Induktionsanfang: definiere Farbe für kleinste Formeln; welche sind das? • Induktionsschritt: definiere Farbe in Abhängigkeit von äußerstem Junktor und Farben seiner Teilformeln Bsp.: nur rot und schwarz als Farben • A schwarz, B schwarz, C rot • Konjunktion schwarz, falls ein Konjunkt schwarz; Disjunktion rot, falls ein Disjunkt rot; Negation vertauscht Farbe was sind die Farben von (A ∨ ¬B) ∧ C und A ∨ (¬B ∧ C )? 28 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax 29 Unterformeln Aufgabe: definiere allgemein eine Menge Sub(ϕ) aller in ϕ vorkommenden Unterformeln Bsp.: Sub(A ∨ (¬B ∧ C )) = allgemein: Def.: Sub(A) := {A} Sub(ϕ ∧ ψ) := für A ∈ V Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax Formelgröße um die Güte von Algorithmen abzuschätze, die auf Formeln arbeiten, müssen wir die Größe von Formeln messen Def.: die Größe von ϕ ist |ϕ| := |Sub(ϕ)| was ist die Größe von (A → ¬B) → (¬A ∨ B) → ¬(B ∨ ¬A)? beachte: Größe ist nicht dasselbe wie syntaktische Länge 30 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax Formellänge anderes Maß für Formeln: syntaktische Länge = (Anzahl der Zeichen in der Zeichenkette) was ist die Größe von (A → ¬B) → (¬A ∨ B) → ¬(B ∨ ¬A)? wie stehen Größe und Länge zueinander? lassen sich Größe und Länge anhand von Syntaxbäumen interpretieren? Aufgaben: • definiere induktiv die Länge einer Formel • finde eine Folge ϕ0 , ϕ1 , ϕ2 , . . ., bei der die Länge exponentiell stärker wächst als die Größe 31