Grundlagen der Mathematik für Informatiker 3 Grundlagen der Mathematik für Informatiker 4 Zulassungsvoraussetzungen zur Prüfung (Klausur): Anmeldungen • 60 % der Punkte aus den Übungsaufgaben • Anmeldung zu den Lehrveranstaltungen im studip • 60 % Autotool-Aufgaben http://studip.uni-halle.de • 5 Kurzvorträge • Modul-Anmeldung über CSS Hinweise zu den Übungsaufgaben: http://www.informatik.uni-halle.de/studenteninfos/pruefungsamt/pruefungsanmeldung/ • Abgabe jeweils vor Beginn der Vorlesung • Anmeldung zum Autotool • Zusammenarbeit in Gruppen bis max. 3 Studentinnen bzw. https://autotool.imn.htwk-leipzig.de/cgi-bin/Super.cgi Studenten Informationen http://www.informatik.uni-halle.de/∼winter/THEOaktuell.html http://studip.uni-halle.de • Abgabe der Lösungen gedruckt oder handschriftlich (nicht mit Bleistift und nicht mit Rotstift) • mehrere Blätter bitte zusammenklammern (tackern) Grundlagen der Mathematik für Informatiker Organisatorisches 1 Grundlagen der Mathematik für Informatiker Literatur • Haggarty: Diskrete Mathematik für Informatiker, Pearson Studies, Vorlesungszeitraum: 5.10.2009 - 5.2.2010 2004 • Steger: Diskrete Strukturen (Bd.1: Kombinatorik, Graphentheorie, Prüfung (Klausur): März 2010 Algebra), Springer, Berlin 2001 • Struckmann, Wätjen: Mathematik für Informatiker, Spektrum, 2006 Inhalt • Hachenberger: Mathematik für Informatiker, Pearson, 2008 • Aussagenlogik • Schöning: Logik für Informatiker, Spektrum, 1995 • Mengen, Relationen, Funktionen • Heinemann, Weihrauch: Logik für Informatiker, Teubner, • Algebraische Strukturen Stuttgart 1992 • Kastens, Kleine Büning: Modellierung, Hanser, 2008 • Graphen • Prädikatenlogik • Nehrlich: Diskrete Mathematik, Fachbuchverlag • Siefkes: Formalisieren und Beweisen: Logik für Informatiker, 2 Grundlagen der Mathematik für Informatiker 7 Grundlagen der Mathematik für Informatiker 1.2 Junktoren 1-stellige Junktoren: Junktor (mit zugeordneter Stelligkeit): Symbol zur Verknüpfung von Aussagen Negation ¬ 8 ¬(3 < 8) • W (3 < 8) = 1 Bedeutung (Semantik) eines n-stelligen Junktors ∗ : • W (¬(3 < 8)) = 0 [∗] : {0, 1}n → {0, 1} (n-stellige Funktion auf der Menge {0, 1}) ¬ p ist genau dann wahr, wenn p falsch ist. 0-stellige Junktoren: Wahrheitswertkonstanten t mit [t] = 1 W ( p) W (¬ p) 0 1 1 0 W (¬ p) = 1 − W ( p) f mit [f] = 0 Grundlagen der Mathematik für Informatiker 1 Aussagenlogik 5 Grundlagen der Mathematik für Informatiker Wahrheitswerte 1 (wahr) oder 0 (falsch) 1.1 Aussagen Aussage = Behauptung Beispiele: Jeder Aussage p kann ein Wahrheitswert W ( p) ∈ {0, 1} zugeordnet werden. • Es regnet. • Die Straße ist naß. • 15 ist eine Primzahl. • 3<8 Beispiele: • W (Es regnet.) =? (je nach Lage der Dinge) • x < 15 (hängt von x ab, keine Aussage) • W (Die Straße ist naß.) =? • Ist x < 15? (keine Aussage) • W (15 ist eine Primzahl.) = 0 • Es sei x < 15. (keine Aussage) • W (3 < 8) = 1 • Morgen wird es regnen. • W (Morgen wird es regnen.) =? 6 Grundlagen der Mathematik für Informatiker 11 Disjunktion ∨ (inklusiv) Grundlagen der Mathematik für Informatiker 12 W ( p) W (q) W ( p ∨ q) 0 0 0 0 1 1 1 0 1 1 1 1 Es regnet oder 3 < 8. • W (3 < 8)= 1 • W (Es regnet.)=? [∨] = max ist kommutativ und assoziativ: • W (Es regnet oder 3 < 8.)= 1 p ∨ q ist genau dann wahr, wenn wenigstens eine der Aussagen p und q wahr ist. W ( p ∨ q) = W (q ∨ p) W (( p ∨ q) ∨ r ) = W ( p ∨ (q ∨ r )) W ( p ∨ q) = max(W ( p), W (q)) n _ p i = p1 ∨ p2 ∨ · · · ∨ p n i =1 Grundlagen der Mathematik für Informatiker 9 Grundlagen der Mathematik für Informatiker 10 2-stellige Junktoren: W ( p) W (q) W ( p ∧ q) 0 0 0 0 1 0 1 0 0 1 1 1 Konjunktion ∧ Es regnet und 15 ist eine Primzahl. • W (15 ist eine Primzahl.) = 0 • W (Es regnet.) =? • W (Es regnet und 15 ist eine Primzahl.) = 0 [∧] = min ist kommutativ und assoziativ: W ( p ∧ q) = W (q ∧ p) W (( p ∧ q) ∧ r ) = W ( p ∧ (q ∧ r )) p ∧ q ist genau dann wahr, wenn beide Aussagen p und q wahr sind. W ( p ∧ q) = min(W ( p), W (q)) n ^ i =1 p i = p1 ∧ p2 ∧ · · · ∧ p n Grundlagen der Mathematik für Informatiker 15 Grundlagen der Mathematik für Informatiker 16 Äquivalenz ↔ 3 < 8 gilt genau dann, wenn 0 < 8 − 3 gilt. • W (3 < 8) = 1 • W (0 < 8 − 3) = 1 • W (3 < 8 gilt genau dann, wenn 0 < 8 − 3 gilt.) = 1 1 falls W ( p) = W (q) W ( p ↔ q) = 0 sonst p ↔ q ist genau dann wahr, wenn entweder beide Aussagen p und q gelten oder beide nicht gelten. W ( p) W (q) W ( p ↔ q) 0 0 1 0 1 0 1 0 0 1 1 1 Grundlagen der Mathematik für Informatiker 13 Grundlagen der Mathematik für Informatiker Implikation → Wenn es regnet, dann ist die Straße naß. • W (Es regnet.) =? • W (Die Straße ist naß.) =? • W (Wenn es regnet, dann ist die Straße naß.) = 1 p → q ist genau dann wahr, wenn die Aussage p falsch oder die Aussage q wahr ist. W ( p) W (q) W ( p → q) 0 0 1 0 1 1 1 0 0 1 1 1 1 falls W ( p) ≤ W (q) W ( p → q) = 0 sonst 14 Grundlagen der Mathematik für Informatiker 19 Teilformeln Grundlagen der Mathematik für Informatiker Aussagenlogische Interpretationen (Belegungen der Aussagenvariablen mit Wahrheitswerten) Definition 1.2 (rekursiv) Eine Formel ψ heißt Teilformel der Formel ϕ, falls Interpretation (für ϕ ∈ AL( P)) Zuordnung W : P → {0, 1}. • ψ = ϕ oder Menge aller Interpretationen für Formeln ϕ ∈ AL( P) • ϕ = ¬ ϕ1 und ψ eine Teilformel von ϕ1 ist oder W ( P) = {W : P → {0, 1}} = 2P • ϕ = ϕ1 ∗ ϕ2 mit ∗ ∈ {∧, ∨, →, ↔} und ψ eine Teilformel von ϕ1 oder ϕ2 ist. Wahrheitswerte für Formeln Erweiterung der Interpretation W : P → {0, 1} zu einer Funktion Beispiele: W : AL( P) → {0, 1} • ϕ = ¬ p ∧ (t ∨ p) Teilformeln: ¬ p ∧ (t ∨ p), ¬ p, p, t ∨ p, t Der Wert W ( ϕ) der Formel ϕ in der Interpretation W wird induktiv mit den Wahrheitswertfunktionen der Junktoren aus den Werten der Teilformeln von ϕ bestimmt: • ϕ = p Atom hat genau eine Teilformel: p Grundlagen der Mathematik für Informatiker 20 17 Grundlagen der Mathematik für Informatiker 18 1.3 Formeln (Syntax) Beispiele Junktoren , z.B. ∧, ∨, ¬, →, ↔, t, f Aussagenvariablen (Atome), z.B. p, q, r, s, . . . Definition 1.1 (induktiv) Die Menge AL( P) aller (aussagenlogischen) Formeln mit Aussagenvariablen aus der Menge P ist definiert durch: 1. Alle Aussagenvariablen p ∈ P sind Formeln. ( P ⊆ AL( P)) t ∧ (¬t) ¬¬¬ p ∧( p ∨ q) Formel ohne Aussagenvariablen Formel mit Aussagenvariable p syntaktisch unkorrekt 2. t und f sind Formeln. 3. Sind ∗ ein einstelliger Junktor und ϕ eine Formel, dann ist auch ∗ ϕ eine Formel. 4. Sind ∗ ein zweistelliger Junktor und ϕ und ψ Formeln, dann ist auch ϕ ∗ ψ eine Formel. ¬( p → q) (( p ∧ ¬q) → (¬r ∨ ( p ↔ q))) Formel mit Aussagenvariablen p, q Formel mit Aussagenvariablen p, q, r Grundlagen der Mathematik für Informatiker 23 Grundlagen der Mathematik für Informatiker 24 Modelle Erfüllbarkeit und Allgemeingültigkeit Definition 1.3 Jede aussagenlogische Interpretation W mit W ( ϕ) = 1 heißt Modell (oder erfüllende Belegung der Aussagenvariablen) für ϕ. Definition 1.4 Eine Formel ϕ ∈ AL( P) heißt erfüllbar , wenn sie ein Modell hat (Mod ( ϕ) 6= ∅) Beispiel: ¬ p → p Menge aller Modelle von ϕ ∈ AL( P): unerfüllbar (Kontradiktion), wenn sie kein Modell hat (Mod ( ϕ) = ∅, für jede Interpretation W gilt W ( ϕ) = 0), Beispiel: p ∧ ¬ p Mod ( ϕ) = {W : P → {0, 1} | W ( ϕ) = 1} Für alle Formeln ϕ, ψ ∈ AL( P) gilt Mod (¬ ϕ) = W ( P) \ Mod ( ϕ) (1) Mod ( ϕ ∨ ψ) = Mod( ϕ) ∪ Mod (ψ) (2) Mod ( ϕ ∧ ψ) = Mod( ϕ) ∩ Mod (ψ) (3) Grundlagen der Mathematik für Informatiker allgemeingltig (Tautologie), wenn jede Belegung ein Modell für ϕ ∈ AL( P) ist (Mod ( ϕ) = W ( P), für jede Interpretation W gilt W ( ϕ) = 1). Beispiel: p ∨ ¬ p 21 Grundlagen der Mathematik für Informatiker 22 • für ϕ = p ∈ P: W ( ϕ) = W ( p) Wahrheitswerttabellen • W (¬ψ) = [¬]W (ψ) = 1 − W (ψ) Untersuchung der Werte einer Formel ϕ ∈ AL( P) in allen möglichen Interpretationen W ∈ W ( P) • W (ψ1 ∧ ψ2 ) = W (ψ1 )[∧]W (ψ2 ) = min W (ψ1 ), W (ψ2 ) Zeilen – Interpretationen Spalten – Teilformeln • W (ψ1 ∨ ψ2 ) = W (ψ1 )[∨]W (ψ2 ) = max W (ψ1 ), W (ψ2 ) • ... W ( p1 ) 0 · · · W ( pn ) W (ψ) für Teilformeln ψ von ϕ W ( ϕ) ··· 0 .. . 1 Beispiel: ϕ = (( p ∧ ¬q) → (¬r ∨ ( p ↔ q))) für W ( p) = 0, W (q) = 1, W (r ) = 0 ist W ( ϕ) = 1 ··· ··· .. . 1 ··· Wertetabelle einer n-stelligen Booleschen Funktion f ϕ : {0, 1}n → {0, 1} Beispiel: ϕ = ϕ( a, b, c) = ( a → ((¬b → c) ∧ a)) f ϕ (0, 0, 0) = 1, f ϕ (1, 0, 0) = 0, ... Grundlagen der Mathematik für Informatiker 27 Wichtige Äquivalenzen • ϕ ∨ ϕ ≡ ϕ, • Direkter Beweis (Modus Ponens): ( ϕ ∧ ( ϕ → ψ) → ψ) ist eine Tautologie. Ist ϕ wahr und zeigt man, dass ϕ → ψ wahr ist, so ist auch ψ ϕ ∧ ψ ≡ ψ ∧ ϕ (Kommutativität) • ϕ ∨ (ψ ∨ η ) ≡ ( ϕ ∨ ψ) ∨ η ϕ ∧ (ψ ∧ η ) ≡ ( ϕ ∧ ψ) ∧ η (Assoziativität) wahr. • Kontraposition: (¬ψ → ¬ ϕ) ↔ ( ϕ → ψ) ist eine Tautologie. Kann man ausgehend von ¬ψ auf ¬ ϕ schließen, so ist damit gezeigt, dass ψ aus ϕ folgt. • ϕ ∧ (ψ ∨ η ) ≡ ( ϕ ∧ ψ) ∨ ( ϕ ∧ η ) ϕ ∨ (ψ ∧ η ) ≡ ( ϕ ∨ ψ) ∧ ( ϕ ∨ η ) (Distributivität) • ¬¬ ϕ ≡ ϕ (Doppelnegation) • ¬( ϕ ∨ ψ) ≡ ¬ ϕ ∧ ¬ψ, ¬( ϕ ∧ ψ) ≡ ¬ ϕ ∨ ¬ψ • Widerspruchsbeweis: (( ϕ ∧ ¬ψ) → f) ↔ ( ϕ → ψ) ist eine Tautologie. Unter der Voraussetzung ϕ nehmen wir an, ψ gelte nicht und (DeMorgansche Regeln) • ϕ ∨ ψ ≡ ¬(¬ ϕ ∧ ¬ψ), (Dualität von ∧ und ∨) 28 Beweismethoden ϕ ∧ ϕ ≡ ϕ (Idempotenz) • ϕ ∨ ψ ≡ ψ ∨ ϕ, Grundlagen der Mathematik für Informatiker ϕ ∧ ψ ≡ ¬(¬ ϕ ∨ ¬ψ) führen dies zu einer falschen Aussage (also zu einem Widerspruch). • ϕ → ψ ≡ ¬ψ → ¬ ϕ (Kontraposition) Grundlagen der Mathematik für Informatiker 25 Modelle von Formelmengen 1.4 Semantische Äquivalenz Definition 1.5 Menge aller Modelle einer Menge Φ ⊆ AL( P) von Formeln: Mod (Φ) = Grundlagen der Mathematik für Informatiker \ Mod ( ϕ) ϕ∈Φ (Eine Interpretation W : P → {0, 1} ist ein Modell für eine Menge Φ ⊆ AL( P) von Formeln, wenn W Modell für jede Formel ϕ ∈ Φ ist.) Definition 1.6 Zwei Formeln ϕ und ψ mit Mod ( ϕ) = Mod (ψ) heißen semantisch äquivalent (Schreibweise: ϕ ≡ ψ). Nachweis z.B. durch Wahrheitswerttabellen Beispiele: • ϕ→ψ ≡ ¬ϕ ∨ ψ Jede Interpretation ist ein Modell für die Formelmenge ∅. • ϕ∨ψ ≡ ¬ϕ → ψ Beispiel: Mod ({ p, p → q}) = {W } mit W ( p) = W (q) = 1. • ϕ∧ψ ≡ ¬( ϕ → ¬ψ) • ϕ↔ψ ≡ ( ϕ → ψ) ∧ (ψ → ϕ) Lemma 1.1 Für alle Formelmengen Φ, Ψ ⊆ AL( P) gilt: Aus Φ ⊆ Ψ folgt Mod (Φ) ⊇ Mod (Ψ). Zusammenhang allgemeingültig – unerfüllbar Satz 1.2 Eine Formel ϕ ∈ AL( P) ist genau dann allgemeingültig, wenn die Formel ¬ ϕ unerfüllbar ist. Äquivalente Formeln haben dieselbe Wahrheitswertfunktion (Semantik). (Das Symbol ≡ ist kein Junktor (Syntax), sondern ein Symbol für eine Relation zwischen Formeln (Semantik)). 26 Grundlagen der Mathematik für Informatiker 31 Grundlagen der Mathematik für Informatiker 32 Satz über Normalformen 1.5 Normalformen Satz 1.5 Zu jeder Formel ϕ ∈ AL( P) existieren Literal Atom oder negiertes Atom • eine äquivalente Formel ϕ1 ∈ AL( P) in NNF, Definition 1.7 • eine äquivalente Formel ϕ2 ∈ AL( P) in CNF und NNF Formeln, in denen das Negationssymbol ¬ höchstens auf Atome angewendet wird, heißen in Negations-Normalform. • eine äquivalente Formel ϕ3 ∈ AL( P) in DNF. CNF Formeln der Form Vn i =1 Beweisidee: →, ↔, t, f durch Formeln mit {∨, ∧, ¬} ersetzen Wm j j=1 li,j mit Literalen li,j 1. NNF durch (mehrmalige) Anwendung der deMorganschen Regeln heißen in konjunktiver Normalform. DNF Formeln der Form Wn i =1 2. CNF und DNF durch (mehrmalige) Anwendung der Distributivgesetze auf die NNF Vm j j=1 li,j mit Literalen li,j CNF und DNF einer Formel ϕ lassen sich auch aus der Wahrheitswerttabelle der Formel ϕ ablesen. heißen in disjunktiver Normalform. Grundlagen der Mathematik für Informatiker 29 Grundlagen der Mathematik für Informatiker Eingeschränkte Junktorenmengen Umformen von Formeln Satz 1.3 (Ersetzbarkeitstheorem) Für drei Formeln ϕ, ψ, η ∈ AL( P), wobei ψ ≡ η und ψ eine Teilformel von ϕ ist, gilt: ϕ ≡ ϕ′ , wobei ϕ′ entsteht, wenn in ϕ ein Vorkommen von ψ durch η ersetzt wird. Beweis: Induktion über die Struktur von ϕ Lemma 1.4 Jede aussagenlogische Formel läßt sich in eine äquivalente Formel umformen, die nur Junktoren aus den folgenden Mengen enthalten: 1. {¬, ∨, ∧} 2. {¬, ∨} 3. {¬, ∧} 4. {¬, →} Formeln können also durch Ersetzung äquivalenter Teilformeln in semantisch äquivalente Formeln umgeformt werden. (Änderung der Syntax bei unveränderter Semantik) 5. {f, →} {∨, ∧} und {∨, ∧, →} genügen nicht. 30 Grundlagen der Mathematik für Informatiker 35 Grundlagen der Mathematik für Informatiker 36 Zusammenhänge Junktoren – semantische Beziehungen Ableiten: Syntaktische Umformungen der Formeln nach bestimmten Regeln (Kalkül) ohne direkte Benutzung der Semantik der Formeln Satz 1.9 ϕ |= ψ gilt genau dann, wenn die Formel ϕ → ψ allgemeingültig ist. Folgerung 1.10 ϕ ≡ ψ gilt genau dann, wenn die Formel ϕ ↔ ψ allgemeingültig ist. Ableitungsrelation ⊢ ⊆ 2AL( P) × AL( P) Φ ⊢ ψ gilt genau dann, falls ψ aus Φ ableitbar (nach bestimmten Regeln syntaktisch umformbar) ist. (ohne direkten Zugriff auf die Semantik der Formeln) 1.7 Syntaktisches Ableiten Folgerungsrelation |= ⊆ 2AL( P) × AL( P) Φ |= ψ gilt genau dann, wenn Mod (Φ) ⊆ Mod (ψ) Ziel: Ableitungsrelation ⊢ mit Φ ⊢ ψ gilt genau dann, wenn Φ |= ψ Definition über die Semantik von Φ und ψ Grundlagen der Mathematik für Informatiker 33 Grundlagen der Mathematik für Informatiker 34 1.6 Semantisches Folgern Definition 1.8 Eine Formel ψ ∈ AL( P) heißt Folgerung aus der Menge Φ ⊆ AL( P) von Formeln (Φ |= ψ), falls Mod (Φ) ⊆ Mod (ψ) gilt. Sätze über das Folgern Satz 1.6 Für endliche Formelmengen Φ = { ϕ1 , . . . , ϕn } gilt Beispiele: • { p, p → q} |= q • { p, ¬(q ∧ p)} |= ¬q • { p} |= q → p • ∅ |= p ∨ ¬ p Spezialfälle der Notation: für Φ = { ϕ}: ϕ |= ψ (statt { ϕ} |= ψ) für Φ = ∅ : |= ψ (statt ∅ |= ψ) Φ |= ψ genau dann, wenn n ^ ϕi |= ψ i =1 Satz 1.7 |= ϕ gilt genau dann, wenn ϕ allgemeingültig ist. Satz 1.8 Zwei Formeln ϕ und ψ sind genau dann äquivalent, wenn ϕ |= ψ und ψ |= ϕ gelten. Grundlagen der Mathematik für Informatiker 39 Definition 1.11 Eine Formel ψ ist im Kalkül K aus einer Formelmenge Φ herleitbar (Φ ⊢K ψ), wenn eine der folgenden Bedingungen erfüllt ist: Grundlagen der Mathematik für Informatiker 40 Satz 1.11 Korrektheit und Vollständigkeit von K Es seien Φ eine Formelmenge und ψ eine Formel. Dann gilt Φ ⊢K ψ genau dann, wenn Φ |= ψ. • ψ ist ein Axiom • ψ ist eine Formel aus Φ Bemerkung: K ist korrekt, d.h. jede aus einer Formelmenge Φ herleitbare Formel ψ ist eine Folgerung aus Φ. • ψ kann in endlich vielen Schritten aus Axiomen oder Formeln aus Φ hergeleitet werden. Ein Schritt beinhaltet die Anwendung der Regel aus R auf bereits hergeleitete Formeln. K ist vollständig, d.h. jede Folgerung ψ aus einer Formelmenge Φ kann mithilfe von K aus Φ hergeleitet werden. In K aus Φ ableitbare Formeln ψ heißen in K aus Φ beweisbar. (Φ ⊢K ψ) In K aus ∅ ableitbare Formeln heißen in K beweisbar. (⊢K ψ) Grundlagen der Mathematik für Informatiker 37 Grundlagen der Mathematik für Informatiker Definition 1.10 Kalkül K besteht aus der Axiomenmenge AX : 1. ϕ → (ψ → ϕ) 1.8 Kalküle Regeln zur formalen Beschreibung zulässiger syntaktischer Umformungsschritte Definition 1.9 Ein Kalkül besteht aus einer Menge von Axiomen (Formeln) und einer Menge von Regeln, mit deren Hilfe aus den Axiomen und einer Eingabemenge weitere Formeln gebildet werden können. Wir geben einen Kalkül K für die Aussagenlogik an. Mit K können alle Folgerungen aus einer Formelmenge gewonnen werden. 2. ( ϕ → (ψ → χ)) → (( ϕ → ψ) → ( ϕ → χ)) 3. (¬ ϕ → ¬ψ) → (ψ → ϕ) 4. ϕ ∧ ψ → ϕ, ϕ∧ψ → ψ 5. (χ → ϕ) → ((χ → ψ) → (χ → ϕ ∧ ψ)) 6. ϕ → ϕ ∨ ψ, ψ → ϕ∨ψ 7. ( ϕ → χ) → ((ψ → χ) → ( ϕ ∨ ψ → χ)) und der Regel R: • { ϕ, ϕ → ψ} ⊢K ψ (Modus Ponens) Axiome 1. - 7. sind allgemeingültig. 38 Grundlagen der Mathematik für Informatiker Beispiel: Herleitung von ψ = p → ( p ∨ q) ∧ ( p ∨ ¬q) in K : (a) p → p ∨ q (Axiom 6.) (b) p → p ∨ ¬q (Axiom 6.) (c) ( p → p ∨ q) → (( p → p ∨ ¬q) → ( p → ( p ∨ q) ∧ ( p ∨ ¬q))) (Axiom 5.) (d) ( p → p ∨ ¬q) → ( p → ( p ∨ q) ∧ ( p ∨ ¬q)) (Modus Ponens auf (a), (c)) (e) p → ( p ∨ q) ∧ ( p ∨ ¬q) (Modus Ponens auf (b), (d)) 41