WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910 Kapitel II - Grundlagen • Mathematische und notationelle Grundlagen – – – – – Mengen Relationen und Abbildungen Aussagen- und Prädikatenlogik Beweismethoden Wachstum von Funktionen 2 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Prädikatenlogik – Die Korrekheit des Arguments Wenn (alle X sind Y) und (Z ist ein X), dann (Z ist ein Y). kann mit der Aussagenlogik nicht nachgewiesen werden. – Intuitiver Grund: die Aussagenlogik formalisiert nur die Begriffe „und“, „oder“, „nicht“, „wenn…dann“ aber nicht die Begriffe „für alle“ oder „ist“. Die Korrekheit des Argumentes hängt aber von den Letzten. Vergleiche: • Wenn A und B dann C • Wenn „alle A sind B“ und „C ist A“ dann „C ist B“ – Prädikatenlogik: Aussagenlogik + „für alle“, „es gibt“ + „ist“ 3 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Praktische Anwendungen der Prädikatenlogik – – – – – Zur formalen Spezifikation komplexer Systeme. Zum automatischen Beweisen von Theoremen. Zur automatischen Verifikation von Programmen. Zur Spezifikation von Abfragen in Datenbanken. Und viele mehr. 4 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Subjekte und Prädikate – In dem Satz “Sokrates ist sterblich” ist “Sokrates” das Subjekt (das Individuum, von dem etwas behauptet wird) und “sterblich” das Prädikat (die Eigenschaft, die von dem Individuum behauptet wird). – In der Prädikatenlogik wird ein Prädikat als eine Abbildung P(·) modelliert. – P(·) bildet Individuen auf Aussagen ab, z.B. P(x) = “x iststerblich” (wobei x eine Variable ist, die mit den Individuen instantiert werden kann). – Aus logischer Sicht: “Sokrates ist sterblich” ist eine Abkürzung für “das Individuum Sokrates hat die Eigenschaft, sterblich zu sein”. 5 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Mehrstellige Prädikate – Der Satz „Anna liebt Bernhard“ kann aus logischer Sicht als Abkürzung für „Anna hat die Eigenschaft, Bernhard-zu-lieben“ betrachten werden. – Dann muss jedoch ein Prädikat für jedes Individuum eingeführt werden: „Bernhard-zu-lieben“, „Cesar-zu-lieben“, „Daniel-zu-lieben“, … 6 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Mehrstellige Prädikate – Stattdessen wird „Anna liebt Bernhard“ als ein Satz über das Paar (Anna, Bernhard) betrachtet. Das Prädikat ist: „das-erste-Individuum-liebt-das-zweite-Individuum“ – In der Prädikatenlogik wird das durch ein zweistelliges Prädikat P(·,·) modelliert. – P(·, ·) bildet Paare von Individuen auf Aussagen ab, z.B. P(x,y) = “x liebt y” (wobei x, y Variablen sind, die mit den Individuen instantiert werden können). – Prädikate höherer Arität sind auch möglich 7 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Syntax der Prädikatenlogik – Das Vokabular setzt sich aus folgenden Zeichenklassen zusammen: • (Individuen)variablen: • Konstanten: • Unäre Prädikatsymbole: Binäre Prädikatsymbole: … x, y, z, … a, b, c, … P1, Q1, R1, … P2, Q2, R2, … • Gleichheitssymbol: = • Logische Operatoren: • Quantoren: • Hilfssymbole: , , , 8 („für alle“), 9 („es gibt“) (, ) 8 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Syntax der Prädikatenlogik – Formationsregeln Regel 0: eine Zeichenkette Pn(u1, …, un) , wobei u1, …, un Variablen oder Konstanten sind, ist eine Formel. Regel 1: sind u und v Variablen oder Konstanten, dann ist u=v eine Formel. Regel 2: ist F eine Formel, dann ist auch F eine Formel. Regel 3: sind F und G Formeln, dann sind (F G), (F G) und (F G) ebenfalls Formeln. Regel 4: ist x eine Variable und F eine Formel, dann sind 8x F und 9x F ebenfalls Formeln 9 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Aufgabe: Formeln oder Nicht-Formeln? P1(x) x 8x (x Æ P1(x)) 8x 9y (x=y Ç : Q1(y)) x = P1(x) 8x P1(x) = Q1(x) 9x 8x (P1(x) Æ Q2(x,b)) 9x (8x P1(a) Æ Q1(a)) 9 P1 8x P1(x) P1(x, y) ((P1(x) Æ Q2(a, y)) ) x=y) 10 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Syntax der Prädikatenlogik – Die Stelligkeit der Prädikatsymbolen lassen wir oft weg. Wir nehmen an, dass alle Vorkommisse eines Prädikatsymbols dieselbe Stelligkeit haben. Beispiel: 8x 8y (P(x,y) ) P(y,x)) Achtung: 8x (P(x) Æ : P(x,x)) ist keine Formel! – Manchmal lassen wir Klammern weg, oder fügen welche hinzu. Dabei nehmen wir an, dass Quantoren stärker als Konjunktion, Disjunktion und Implikation binden: 8x P(x) Æ Q(y) ist die Formel ((8x P(x)) Æ Q(y)) und nicht 8x (P(x) Æ Q(y)) 11 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Syntax der Prädikatenlogik 12 – Der Gültigkeitsbereich eines Vorkommens einer Variablen x in einer Formel F ist die kleinste Unterformel von F der Gestalt 8x G oder 9x G, welche das Vorkommen enthält. Wenn es diese Unterformel nicht gibt, dann ist der Gültigkeitsbereich die Formel F selbst. – Im ersten Fall heisst das Vorkommen gebunden, sonst ist das Vorkommen frei. Eine Formel ohne freie Vorkommnisse von Variablen heisst geschlossen. Beispiele: x P(x) Q(x) Erstes Vorkommen von x ist gebunden, zweites frei. x (P(x) ) y (P(y) Q(x,y) ) ) Die Formel ist geschlossen. Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Syntax der Prädikatenlogik 13 – Später werden wir definieren, wann zwei Formel äquivalent sind. – Es wird folgendes gelten: Jede Formel ist äquivalent zu einer bereinigten Formel, in der – keine Variable sowohl gebunden wie auch frei vorkommt, und – Hinter allen vorkommenden Quantoren verschiedene variablen stehen. – Meistens werden Formel in bereignigten Form dargestellt. In diesem Fall kann man von freien und gebundenen Variablen einer Formel sprechen. Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Aufgabe Nicht-Formel Formel 8x P(a) 8x9y (P(x,y) Ç Q(x,y)) 8x Q(x,x) ) 9x Q(x,y) 8x P(x) Ç 8x Q(x,x) 8x (P(x) Æ 8y P(x)) P(x) ) 9x Q(x, P(x)) 8x9x P(x,x) 14 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Gesch. Formel Kapitel II – Grundlagen; Logik • Semantik der Prädikatenlogik: Intuition – Die Semantik einer Formel ist die Funktion, die jede mögliche „Welt“, die zur Formel „passt“, dem Wahrheitswert der Formel (0 oder 1) in dieser „Welt“ zuordnet. – Eine Welt, die zu F = 8x P(a, x) passt, und in der F wahr ist (meiner Meinung nach …). • Die Individuen der Welt sind alle lebenden Schauspielerinnen. • a ist Nicole Kidman • P(y, x) bedeutet „y ist mindestens so schön wie x“ – Eine Welt, die zu F = 8x P(a, x) passt, und in der F falsch ist (diesmal mit Sicherheit). • Die Individuen der Welt sind die natürlichen Zahlen. • a ist die 7 • P(y, x) bedeutet „y ist ein vielfaches von x“ 15 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Semantik der Prädikatenlogik: Intuition – Eine Welt, die zu F = 8x P(a, x) nicht passt. • Die Individuen der Welt sind alle lebenden Schauspielerinnen. • P(y, x) bedeutet „y ist mindestens so schön wie x“ – … und noch eine. • a ist die 0 • P(y, x) bedeutet „y · x“ – Die Frage nach dem Wahrheitswert einer Formel in einer Welt, die zur Formel nicht passt, ist sinnlos. – Eine „passende Welt“ für 8x P(y, x) muss der freien Variable y ein Individuum zuordnen. (Das Individuum, auf das y „zeigt“.) 16 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formale Semantik der Prädikatenlogik – Das Fachwort für „Welt“ ist Struktur. – Eine Struktur S besteht aus zwei Teilen: • Eine Menge US, genannt Universum (Wertebereich, Individuenbereich, Grundmenge, Domäne, …) „Die Menge aller Individuen der Welt“. • Eine Interpretation IS. – Die Interpretation IS ist eine partielle Funktion, die • eine Variable x einem Element xS von U, • eine Konstante a einem Element aS von U, und • ein k-stelliges Prädikatsymbol P einer Menge PS µ Uk zuordnet. 17 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formale Semantik der Prädikatenlogik – Intuition: xS ist das Individuum, auf dem die Variable x „zeigt“ aS ist das Individuum mit dem Namen „a“ PS ist die Menge der Tupel von Individuen mit der Eigenschaft P – Beachte: PS kann extensional beschrieben werden, wir zählen die Tupel von PS auf. – Das Universum kann unendlich sein! 18 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formale Semantik der Prädikatenlogik – Eine Struktur S = (US , IS) passt zu einer Formel F falls die Interpretation IS für alle in F vorkommenden Prädikatsymbole, Konstanten, und freien Variablen definiert ist. • Beispiel: S passt zur Formel 8x P(x,a,y) wenn aS, yS, und PS definiert sind. – Die Semantik einer Formel F ist eine Funktion [F], die jede Struktur S, die zu F passt, („jeder Welt“) einem Wahrheitswert [F](S) zuordnet. 19 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formale Semantik der Prädikatenlogik – Beispiel: einige passende Strukturen für die Formel 8x (P(x) ) 9y Q(x, y)) – Struktur S1 = (U1, I1) • U1 = N0 • P1 = { n 2 N0 j n ist gerade } • Q1 = { (n, m) 2 N0 £ N0 j n+m = 5 } – Struktur S2 = (U2, I2) • U2 = { 0, 1, 2 } • P2 = {0} • Q2 = { (n, m) 2 {0, 1, 2} £ {0, 1 ,2} j n · m } 20 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formale Semantik der Prädikatenlogik – Beispiel: einige passende Strukturen für die Formel 8x (P(x) ) 9y Q(x, y)) – Struktur S3 = (U3, I3) • U3 = die Menge M der Personen in diesem Hörsaal • P3 = die Menge der Männer in diesem Hörsaal • Q3 = { (n, m) 2 M £ Mj n ist mindestens so schlau wie m} – Struktur S4 = (U4, I4) • U4 = { a, b } • P4 = { a } • Q4 = { (a, b), (b, a), (b, b) } 21 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formale Semantik der Prädikatenlogik – Beispiel: einige passende Strukturen für die Formel 8x (P(x) ) 9y Q(x, y)) – Struktur S5 = (U5, I5) • U5 = ; • P5 = ; • Q5 = ; – Struktur S6 = (U6, I6) • U6 = die Menge der Fußballer, die am nächsten Sonntag mindestens ein Tor in der 1. Bundesliga schießen werden • P6 = { f 2 U6 j f spielt für Werder Bremen} • Q6 = { (f1, f2) 2 U6 £ U6 j f1 und f2 schießen am nächsten Sonntag genau soviele Tore} 22 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formale Semantik der Prädikatenlogik – Die Funktion [F] ist folgendermaßen definiert in Abhängigkeit von F: (1) Semantik der Formeln P(u1, …, un): F = P(u1, …, un). [F ](S) = ½ 1 0 falls (u1S ; : : : ; unS ) 2 PS falls (u1S ; : : : ; unS ) 2 = PS ) (2) Semantik der Booleschen Operatoren: wie für die Aussagenlogik. Z.B. wenn F = (G ) H) für Formeln F und G: [F ](S) = ½ 1 0 falls [G](S) = 0 oder [H](S) = 1 falls [G](S) = 1 und [H](S) = 0 23 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formale Semantik der Prädikatenlogik – Die Funktion [F] ist folgendermaßen definiert in Abhängigkeit von F: (3) Semantik der Quantoren. Sei Sx:=d die Struktur, die identisch mit S ist, bis auf die Tatsache, dass in Sx:=d die Variable x auf das Individuum d „zeigt“, i.e., Sx:=d(x) = d. (xS kann nicht definiert sein oder auf ein anderes Individuum „zeigen“.) 24 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formale Semantik der Prädikatenlogik – Die Funktion [F] ist folgendermaßen definiert in Abhängigkeit von F: (3.1) Semantik des Existenzquantors. F = 9x G für eine Formel G. [F ](S) = ½ 1 0 falls es ein d 2 US gibt mit: [G](Sx:=d) = 1 falls fÄ ur alle d 2 US gilt: [G](Sx:=d) = 0 Beispiel: Sei F = 9x P(x), US={a,b}, PS = {a} Wir haben [F](S)=1, denn [P(x)](Sx:=a)=1 25 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formale Semantik der Prädikatenlogik – Die Funktion [F] ist folgendermaßen definiert in Abhängigkeit von F: (3.2) Semantik des Allquantors. F = 8x G für eine Formel G. [F ](S) = ½ 1 0 falls fÄ ur alle d 2 US gilt: [G](Sx:=d) = 1 falls es ein d 2 US gibt mit: [G](Sx:=d) = 0 Beispiel: Sei F = 8x P(x), US={a,b}, P_S = {a} Wir haben [F](S)=0, denn [P(x)](Sx:=b)=0 Achtung: Wenn US = ;, dann [8x G](S) = 1 26 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Geschachtelte Quantoren – Formel F: Struktur S: 8x 9y P(x,y) US = N0 PS = {(n,m) 2 N0 £ N0 j n < m} (“P(x,y) bedeutet x < y”) – Frage: ist F wahr in S? 27 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Geschachtelte Quantoren – Formel F: Struktur S: 8x 9y P(x,y) US = N0 PS = {(n,m) 2 N0 £ N0 j n < m} (“P(x,y) bedeutet x < y”) – Frage: ist F wahr in S? – Ja. Intuitiv bedeutet F in S: “für jede Zahl x gibt es eine größere Zahl y.” 28 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Geschachtelte Quantoren – Formel F: Struktur S: 8x 9y P(x,y) US = N0 PS = {(n,m) 2 N0 £ N0 j n < m} (“P(x,y) bedeutet x < y”) Wir zeigen [8x 9y P(x,y)](S) = 1 nach der Definition: • Es reicht zu zeigen: [9y P(x,y)](Sx:=d) = 1 für d=0,1,2, … • Wir müssen also ein e finden mit [P(x,y)](Sx:=d,y:=e) = 1. • D.h., wir müssen ein e finden mit d < e. • Wir nehmen z.B. e = d+1. Fertig. 29 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Geschachtelte Quantoren – Formel G: Struktur S: 9y 8x P(x,y) US = N0 PS = { (n,m) 2 N0 £ N0 j n < m } (“P(x,y) bedeutet x < y”) – Frage: ist G wahr in S? 30 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Geschachtelte Quantoren – Formel G: Struktur S: 9y 8x P(x,y) US = N0 PS = { (n,m) 2 N0 £ N0 j n < m } (“P(x,y) bedeutet x < y”) – Frage: ist G wahr in S? – Nein. Intuitiv sagt G in S: “es gibt eine Zahl, die größer ist als alle andere (sogar größer als sich selbst!).” 31 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Aufgabe. Sei die Interpretation von R(x,y) “x verlässt sich auf y.” Welche Formel gehört zu welchem Satz? 1. x y R(x,y) a. “Es gibt einen, der sich auf alle verlässt.” 2. y x R(x,y) b. “Jeder kann sich auf jemanden verlassen.” 3. x y R(x,y) c. “Auf jeden verlässt sich irgend jemand.” 4. y x R(x,y) d. “Es gibt einen, auf den sich alle verlassen.” 5. x y R(x,y) e. “Jeder verlässt sich auf alle” 32 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Tautologie, Widerspruch, Erfüllbarkeit, … 33t Eine Formel F ist allgemeingültig wenn für jede Struktur S, die zu F passt, gilt: [F](S)=1. Eine Formel F ist ein Widerspruch wenn für jede Struktur S, die zu F passt, gilt: [F](S)=0. Eine Formel F ist erfüllbar wenn es eine Struktur S gibt, die zu F passt, und [F](S)=1 erfüllt. Zwei Formeln F und G sind logisch äquivalent (symbolisch: F ´ G) genau dann, wenn für jede Struktur S, die zu F und zu G passt, gilt: [F](S) = [G](S) F folgt aus G (symbolisch: F ² G) genau dann, wenn F ) G gültig ist. Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • S-Tautologien, S-Widersprüche, … Sei S eine Menge von Strukturen. Eine Formel ist S-gültig, wenn für alle Strukturen S 2S gilt: [F](S) = 1. Sei null eine Konstante und sei Nach ein zweistelliges Prädikatensymbol. Sei N die Menge aller Strukturen S = (US, IS) mit • US = N0 • nullS = 0 • NachS = { (n, n+1) j n 2 N0} (IS kann für andere Konstanten und Prädikatensymbolen beliebig definiert sein) 34t Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Tautologie, Widerspruch, Erfüllbarkeit, … : 9x Nach(x,null) ist nicht gültig, aber N-gültig. Das Induktionsprinzip ist die Formel: (P(null) Æ 8y8z (P(y) Æ Nach(y,z) ) P(z)) ) 8x P(x) In allen Strukturen aus N „sagt“ diese Formel: Wenn 0 die Eigenschaft P hat, und für alle Zahlen n gilt: wenn n die Eigenschaft P hat, dann hat auch n+1 die Eigenschaft P, dann haben alle Zahlen die Eigenschaft P (in verschiedenen Strukturen aus N kann P verschiedene Bedeutungen haben!. Das Induktionsprinzip ist nicht gültig, aber N-gültig. 35t Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Äquivalenzregeln für Quantoren – De Morgan’s: – Kommutativität: – Distributivität: – Falls x in G nicht frei vorkommt: : 8x F ´ : 9x F ´ 8x8y F ´ 9x9y F ´ 8x (F Æ G) ´ 9x (F Ç G) ´ 9x (F Æ G) ´ 8x (F Ç G) ´ 36t Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München 9x : F 8x : F 8y8x F 9y9x F 8x F Æ 8x G 9x F Ç 9x G 9x F Æ G 8x F Ç G Kapitel II – Grundlagen; Logik • Ein Kalkül für logische Inferenzen – Das Kalkül enthält alle Regeln des Kalküls für die Aussagenlogik plus vier Regeln für die Einführung und Beseitigung von Quantoren. – Sei F eine Formel und sei a eine Konstante. Mit F[x/a] bezeichnen wir die Formel, die man erhält, in dem alle FREIEN Vorkommnisse von x in F durch a ersetzt werden – Beispiele: F1 = 8y Q(x, y) F1[x/a] = 8y Q(a, y) F2 = P(x) Æ 8x Q(x) F2[x/a] = P(a) Æ 8x Q(x) F3 = 8x P(x) F3[x/a] = 8x P(x) 37 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Ein Kalkül für logische Inferenzen – Allquantorbeseitigung. Für jede Sequenz A, Variable x, Formel F und für jede Konstante a: A ` 8x F __________ A ` F[x/a] – Intuition: wenn 8x F gilt, dann gilt auch F[x/a] für ein beliebiges a. 38 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Ein Kalkül für logische Inferenzen – Allquantoreinführung. Für jede Sequenz A, Variable x, Formel F und für jede Konstante a, die weder in A noch in F vorkommt: A ` F[x/a] __________ A ` 8x F – Intuition: um 8x F zu zeigen, zeige, dass F[x/a] für ein beliebiges a gilt. 39 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Ein Kalkül für logische Inferenzen – Existenzquantorbeseitigung. Für jede Sequenz A, Variable x, Formel F und für jede Konstante a, die weder in A noch in F noch in G vorkommt : A ` 9x F A, F[x/a] ` G _______________________ A`G – Intuition: wir wissen, dass 9x F aus den Annahmen folgt, und wollen G zeigen. Wir wählen einen frischen Namen a für “das x, für das F gilt”, und zeigen, dass G aus F[x/a] folgt. 40 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Ein Kalkül für logische Inferenzen – Existenzquantoreinführung. Für jede Sequenz A, Variable x, Formel F und für jede Konstante a: A ` F[x/a] __________ A ` 9x F – Intuition: um 9x F zu beweisen, finde einen a, für den F[x/a] gilt. 41 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Beweise • Ein Kalkül für logische Inferenzen – Beispiel: Zeige, dass aus den zwei Annahmen “Ein Student in dieser Vorlesung hat das Buch von Steger nicht gelesen“ “Jeder in dieser Vorlesung hat die Prüfung bestanden“ folgendes folgt: “Es gibt jemanden, der die Prüfung bestanden hat und das Buch von Steger nicht gelesen hat“. 42 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Beweise • Inferenzregeln für Quantoren – Sei S=(US, IS) die Struktur mit US = alle Menschen, VS = Studenten dieser Vorlesung, BS = Menschen, die das Buch gelesen haben, PS = Menschen, die die Prüfung bestanden haben. – In dieser Struktur sind die Annahmen A : (a) x (V(x) B(x)) und (b) x (V(x) P(x)) – Die Konklusion ist x (P(x) B(x)) – Wir zeigen: A ` x (P(x) B(x)) 43 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Beweise • Inferenzregeln für Quantoren Schritt 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. A, V(a) Æ : B(a) A, V(a) Æ : B(a) A, V(a) Æ : B(a) A, V(a) Æ : B(a) A, V(a) Æ : B(a) A, V(a) Æ : B(a) A, V(a) Æ : B(a) A, V(a) Æ : B(a) A A Bewiesen durch ` V(a) Æ : B(a) ` V(a) ` 8x (V(x) ) P(x)) ` V(a) ) P(a) ` P(a) ` B(a) ` P(a) B(a) ` 9x (P(x) B(x)) ` x (V(x) B(x)) ` x (P(x) B(x)) 44 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München An. Kon.Bes. An. (b) All.Bes. Imp.Bes Kon.Bes. Kon.Ein. Exi.Ein. An. (a) Exi.Ein. 1 3 2,4 1 5,6 8,9 Kapitel II – Grundlagen; Logik • Formalisierung von Aussagen – Aussagen werden durch eine Formel und eine Basisstruktur formalisiert. – Die Struktur legt die Bedeutung der Prädikate fest, die man für allgemein bekannt hält. – Die Namen der Prädikate werden so gewählt, dass sie ihre Bedeutung in der Basisstruktur suggerieren. Oft wird dann die Basisstruktur nicht explizit angegeben. – Wir betrachten folgendes Beispiel: „Für jede Zahl gibt es eine größere Primzahl“ (es gibt unendlich viele Primzalen) 45 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formalisierung von Aussagen – Wenn die Prädikate „Primzahl“ und „größer“ bekannt sind, dann wird die Aussage formalisiert durch: Formel: 8x 9y (Primzahl(y) Æ Größer(y, x)) Basisstruktur: US = N, PrimzahlS = { n 2 N0 | n ist Primzahl} Größers = { (n, m) 2 N0 £ N0 j n > m} – Und wenn die Bedeutung von „Primzahl“ nicht allgemein bekannt ist? 46 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formalisierung von Aussagen – Wenn die Bedeutung von „teilt“ bekannt ist, dann kann das Prädikat Primzahl durch eine Formel definiert werden: 8x (Primzahl(x) , 8y (Teilt(y, x) ) (y=x Ç y=eins)) – Die Basisstruktur fixiert nun die Bedeutung des Prädikaten Teilt, und der Konstante eins. TeiltS = { (n, m) 2 N0 | n teilt m} einsS = 1 – Und wenn die Bedeutung von „Teilt“ nicht allgemein bekannt ist? 47 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formalisierung von Aussagen – Wenn die Bedeutung von „Produkt“ bekannt ist, dann wird „teilt“ durch folgende Formel definiert: 8x 8y (Teilt(x,y) , 9z Produkt (x,z,y)) – Die Basisstruktur fixiert die Bedeutung von Produkt und eins. ProduktS = { (n, m, l) 2 N0 £ N0 £ N0 j n ¢ m = l } einsS = 1 – Und wenn die Bedeutung von „Produkt“ nicht allgemein bekannt ist? 48 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formalisierung von Aussagen – Wenn die Bedeutung von „Summe“ und „Vorgänger“ bekannt ist, dann kann das Produkt so definiert werden: x¢y = ½ 0 falls y = 0 x ¢ vor(y) + x falls y 6= 0 – Diese Definition kann mit der folgenden Formeln formalisiert werden: 8x 8y8z ( Produkt (x,y,z) , ( (y=null Æ z=null) Ç :(y=null) Æ Vorgänger(y,u) Æ Produkt(x,u,v) Æ Summe(v,x,z) ) ) 49 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formalisierung von Aussagen – Die Basistruktur fixiert nun die Bedeutung von Summe, Vorgänger, eins und null. SummeS = { (n, m, l) 2 N0 £ N0 £ N0 j n+m = l } VorgängerS = { (n, n-1) j n ¸ 1} nullS = 0 einsS = 1 – … aber „eins“ brauchen wir eigentlich nicht mehr: Vorgänger(eins,null) – Und wenn die Definition von Summe nicht allgemein bekannt ist? 50 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formalisierung von Aussagen – Die „Summe“ kann mit Hilfe von „Vorgänger“ und „Nachfolger“ so definiert werden: x+y = ½ x falls y = 0 nach(x) + vor(y) falls y 6= 0 – Diese Definition wird durch die folgende Formeln formalisiert: 8x 8y8z ( Summe (x,y,z) , ( (y=null Æ z=x) Ç :(y=null) Æ Nachfolger(x,u) Æ Vorgänger(y,v) Æ Summe(u,v,z) ) ) 51 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Formalisierung von Aussagen – „Vorgänger“ kann mit Hilfe von „Nachfolger“ formalisiert werden (oder andersum) 8x 8y (Vorgänger(x,y) , Nachfolger(y,x)) – Die Basisstruktur fixiert nur die Bedeutung von Nachfolger und null. NachfolgerS = { (n, n+1) j n 2 N0} nullS = 0 52 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München Kapitel II – Grundlagen; Logik • Zusammenfassung Prädikatenlogik – Erweiterung der Aussagenlogik • Individuenvariablen und Konstanten • Prädikate (mehrstellig) • Quantoren – Semantik mit Hilfe von Strukturen – Tautologie, Widerspruch, Erfüllbarkeit, Äquivalenz – Formalisierung von Aussagen 53 Vorlesung Diskrete Strukturen WS 09/10 Prof. Dr. J. Esparza – Institut für Informatik, TU München