Folien zu Theoretische Informatik II Herbert Stoyan 1 Abstraktion Assoziationen • vage, unklar, unverständlich, unkonkret • Einzelheiten sind weggelassen • das Farbige, Lebendige wird unterdrückt 2 Ziel der Abstraktion Über gemeinsame Eigenschaften einer Gruppe von Individuen oder Objekte möglichst einfach sprechen dazu: Betonen des prototypischen Charakters bestimter Individuen oder Objecte oder Erfinden hypothetischer Gegenstände 3 Positive Abstraktion Hervorheben einer gemeinsamen Eigenschaft alle Dinge/Objekte/Individuen mit der gemeinsamen Eigenschaft stehen in einer Äquivalenzrelation Äquivalenzrelation: reflexiv, symmetrisch, transitiv Äquivalenzklasse = Klasse von Dingen/Objekten/Individuen mit äquivalenten Ausprägungen Konsequenz: Aussage über x aus Äquivalenzklasse −→ Aussage über beliebiges y aus dieser Klasse 4 Resultat der Abstraktion die Aussagen hängen nur noch von den die Äquivalenzrelation definierenden Eigenschaften ab wir sprechen so, als ob es Dinge/Objekte/Individuen gäbe, die nur diese Eigenschaften haben das sind fiktive, virtuelle Dinge/Objekte/Individuen 5 Beispiele Zahl Klasse der Grundobjekte: Figuren aus Zählzeichen, Äquivalenzrelation: Bestehen aus gleichvielen Teilzeichen Aussage Klasse der Grundobjekte: Sätze, Äquivalenzrelation: Inhaltsgleichheit Funktion Klasse der Grundobjekte: Terme (Abbildungsvorschriften), Äquivalenzrelation: gleicher Wert beim Einsetzen gleicher Argumentwerte Fehler Klasse der Grundobjekte: Beschreibung von Fehlersituationen, Äquivalenzrelation: gleiche Symptomkombination (gleiche Auswirkungen, gleiche Korrekturbehandlung) 6 Beweis des Fixpunktsatzes nach Knaster-Tarski 1. Sei I die Menge der Teilmengen M von U, die ⊥ enthalten und (a) mit x in M auch f(x) in M liegt (b) mit jeder Kette K ⊂ M auch sup(K) Element von M ist 2. alle M vollständig halbgeordnet (⊥ drin und b) 3. U ist ein M 4. D sei Durchschnitt aller M 5. D halbgeordnet (als Teilmenge von U) 6. ⊥ drin 7. Kette aus D muß Kette in jedem M sein 8. dann sup(K) in jedem M und also in D 9. ist x in D, dann x in jedem M 10. damit f(x) in jedem M und f(x) in D 11. also D ein M 12. Sei D’ Teilmenge von D mit: u <= f (u) 13. ⊥ drin (weil ⊥ <= f (⊥)) 7 14. aus u <= f (u) und Monotonie: f (u) <= f (f (u)), also auch f(u) in D’ 15. D’ erfüllt a) 16. sei K Kette in D’ mit g = sup(K) 17. dann u <= g und u <= f (u) <= f (g) also f(g) obere Schranke 18. g ist kleinste obere Schranke, also g <= f (g) 19. daher g liegt in D’; also gilt b) 20. D’ ist ein M 21. also D Teilmenge von D’ (weil Durchschnitt) 22. also für Elemente von D: d <= f (d) 23. Zornsches Lemma: D enthält maximales Element x 24. x muß Fixpunkt sein, denn es muß gelten: x <= f (x) und f(x) liegt ja in D 25. also: x = f (x) 26. Gibt es kleineren Fixpunkt y? 27. Betrachten wir: D”, Teilmenge von D und alle Elemente kleiner gleich y. 28. also x nicht Element von D” 8 29. ⊥ drin (weil ⊥ <= y) 30. aus d <= y folgt f (d) <= f (y) = y also f(d) ist Element von D” 31. wenn K eine Kette aus D” ist, und k = sup(K) dann gilt für alle Kettenelemente, daß sie kleinergleich sind zu y und das gilt also auch für das sup(K) 32. also Eigenschaft b) 33. also D” ist ein M 34. also D Teilmenge von D” und D=D” 35. damit x Element von D” (Widerspruch!) 9 Beispiel • Fixpunkt eines Funktionals • fak(x)=if x=1 then 1 else x*fak(x-1) • Approximation des Fixpunktes, ausgehend von der vollständig undefinierten Funktion • fak0 sei völlig undefiniert • fak0(x)=F(undef)=undef • fak1(x)=F(fak0(X))=if x=0 then 1 else x*fak0(x-1) ist definiert für 0 • fak2(x)=F(fak1(x))=if x=0 then 1 else x*fak1(x-1) ist definiert für 0 und 1 • usw. • die bekannte Fakultätsfunktion n! ist Fixpunkt. • wie ist sie für negative Zahlen definiert? • Möglichkeiten der Erweiterung: Wähle Wert 0. • Damit ist die Fixpunktgleichung erfüllt! • Wähle partielle Funktion (d.h.undefiniert für negative Werte) • Was ist der Wert von if -1=0 then 1 else -1*⊥? vielleicht ⊥ (undefiniert. 10 • also gibt es mindestens 2 Fixpunkte.lp -dhprn • Die partielle Funktion ist in der Definitionsordnung vor der totalen Funktion. • Hat die Gleichung F(x,y)=if x=0 then 0 else 1+F(x1,F(y-2,x)) einen Fixpunkt? • es hängt von der Lesweise der Gleichung ab! • Wählen wir eine äußere Funktionsaktivierung (callby-name), dann existiert Fixpunkt • Wählen wir eine innere Funktionsaktivierung (callby-value), dann existiert keiner. • Beispiel: F(2,1)=1+F(1,F(-1,2)) • für außen: =1+(1+F(0,F(-1,2)-2,1))=2 • für innen: =1+F(1,1+F(-2,F(0,-1)))=1+F(1,1+F(-2,0))=1+ 3,F(-2,-2))))=... (terminiert nicht!) • Die Gleichung f(x)=f(x) hat viele Fixpunkte! (ist trivial) 11 Funktionskomposition • a) Sind f |A → B und g|B → C zwei Funktionen, so ist auch f ◦ g eine Funktion. • b) sind beide Funktionen auf, so ist auch die Verkettung eine Funktion auf. • c) sind beide Funktionen injektiv, so ist auch die Verkettung injektiv. • d) Sind beide Funktionen bijektiv, so ist auch die Verkettung bijektiv. • Beweis a1) x(f ◦ g)z1 und x(f ◦ g)z2 • also Es ex. y1, y2: (xfy1) und y1gz1 und xfy2 und y2gz2 • f ist Funktion, also y1=y2 • g ist Funktion, also z1=z2 • a21 x aus Dom(f ◦ g) • es ex y,z: xfy und ygz • also x aus Dom(f) • a22 x aus A • also ex y aus B: xfy 12 • also ex z aus C: ygz • also x aus Dom(f ◦ g) • a3 z aus Ran(f ◦ g) • dann ex x und y: xfy und ygz • dann z aus Ran(g) 13 Umkehrung der Verknüpfung • Sei f Funktion. Die Menge der Paare (x,y) mit f(x)=f(y) heiße Faserung von f. • Die Faserung einer Funktion ist eine Äquivalenyrelation auf Dom(f) • Beweis: Reflexiv, Transitiv, Symmetrisch • F as(f ) = f ◦ f −1 • Beweis: • xFas(f)y, also f(x)=f(y), also mit z=f(x): xfz und zgy. • x(fog)y, also ex. z: xfz und yfz, also f(x)=f(y)=z, also xFas(f)y. 14 Geschichte der Logik Aristoteles Erste systematische Erforschung der Prinzipien des logischen Schließens. Syllogismen, Begriffslogik. Stoiker, Scholastiker Weiterführung der Syllogismen Leibniz Entwickelte die Differential- und Integralrechnung, aber auch eine Rechenmaschine und vieles mehr. Formulierte als erster das Ziel einer universellen Sprache zur Formalisierung aller mathematischen Aussagen und einen Kalkül zur Herleitung aller wahren Aussagen. Boole Erste mathematische Formalisierung der Aussagenlogik als Algebra (1854). Frege Erste mathematische Formalisierung der Prädikatenlogik (mittels einer graphischen Notation) (1879). Hilbert Einer der bedeutendsten Mathematiker des letzten Jahrhunderts. Formulierte als erster (1900) zwei grundlegende Ziele der Logik: (Hilbertsches Programm) 15 • Beweis der Widerspruchsfreiheit der Arithmetik (= Logik + Natürliche Zahlen) innerhalb der Arithmetik selbst; • Entwicklung einer Methode zur Berechnung aller wahren mathematischen Aussagen. Russell Logiker, Philosoph und Friedensaktivist. Leitete die erste Krise der Logik ein mit dem RusselParadox der Menge R := { M | M ist kein Element von M} (1901). Ist R ein Element von R? – führt zu einem Widerspruch im System von Frege. Enwickelte mit Whitehead die moderne Prädikatenlogik und Mengenlehre (1910-1913) indem er Typen zur Vermeidung von Aussagen wie M ist Element ” von M“ benutzte. Gödel Wohl der bedeutendste Logiker des letzten Jahrhunderts. Zeigte die Vollständigkeit und damit Widerspruchsfreiheit der Prädikatenlogik (1930). Leitete die zweite Krise der Logik ein, indem er zeigte, da die Widerspruchsfreiheit der Arithmetik innerhalb der Arithmetik nicht nachgewiesen werden kann (1931). Erster Todesstoß für Hilberts Programm. 16 Gentzen Entwickelte zwei noch heute grundlegende Kalküle für Prädikatenlogik, das natürliche Schließen“ und ” den Sequenzenkalkül“ (1934). ” Church Entwickelte den lambda-Kalkül, die Grundlage aller funktionalen Programmiersprachen. Zeigte, daß die Tautologie-Eigenschaft für prädikatenlogische Aussagen unentscheidbar ist (1936). Zweiter Todesstoß für Hilberts Programm. Alan Robinson Erfindet den Resolutions-Kalkül, die erste effektive Methode des automatischen Beweisens in der Prädikatenlogik (1963). 17 Syllogismen Obersatz, Untersatz, Konklusion, Subjekt, Prädikat, Mittelbegriff Beispiel: Barara: 3 mal affirmativ: MaP SaM SaP Alle Menschen sind sterblich Sokrates ist ein Mensch Sokrates ist sterblich Bedeutung: Beschreibt Vererbung von Eigenschaften, Ober-, Unter- und Zwischenbegriffe 3 Aristotelische Figuren, 1 scholastische Modi: bejahend, partikulär bejahend, verneinend und partikulär verneinend 18 Bauernregeln Beispiel: Wenn der Hahn kräht auf dem Mist, ändert sich das Wetter oder es bleibt, wie es ist. Beobachtung: Der Teil das Wetter ändert sich oder es bleibt, wie es ist ist immer wahr! Zweck der Regel: Wenn ich den Hahn krähen höre, weiß ich, wie das Wetter wird! Aber bitte Vorsicht! Unsere Regeln bisher waren Umformregeln, BedingungsAktions-Regeln udgl. Wenn eine Situation vorliegt, wird eine Aktion ausgeführt. Die Bauernregeln sind keine solche Umformregeln. Die Bauernregeln sind Aussagen (wahr oder falsch), wir nennen sie Implikationen. (Leider in der Literatur vielfach falsch, insbesondere in der englischen!) 19 Ampel-Beispiel Fußgänger-Ampel und Hauptampel dürfen nur bestimmte Kombinationen an Lichtzeichen zeigen: • Wenn FA=grün dann HA=grün. • Wenn HA=gelb oder HA=rot, dann FA=rot • Wenn FA=grün dann Fa=rot • Wenn HA=grün gdw. weder HA=rot noch HA=gelb Reihenfolgen der Lampenschaltung mit Petri-Netzen! Für Konstellation von Goos: • Wenn FA=grün dann HA=rot. • Wenn HA=gelb oder HA=grün, dann FA=rot • Wenn FA=grün dann Fa=rot • Wenn HA=grün gdw. weder HA=rot noch HA=gelb 20 Schaltkreise Schaltkreis aus Batterie, Schalter und Lampe. Liegt der Schalter links, leuchtet die Lampe. Liegt der Schalter rechts, leuchtet die Lampe nicht. Die Lampe leuchtet oder die Lampe leuchtet nicht. Beobachtung: Es wird nie beoachtet, daß die Lampe leuchtet und nicht leuchtet. Schaltkreis aus Batterie, Schalter und und 2 Lampen (hintereinander). Beobachtung: Beide Lampen leuchten gleichzeitig oder gar nicht. Wenn Lampe 1 leuchtet und Lampe 2 leuchtet, dann liegt der Schalter links. Schaltkreis aus Batterie, UmSchalter und und 2 Lampen (parallel). Beobachtung: Nur eine Lampe leuchtet. Liegt der Schalter links, leuchtet die Lampe1. Liegt der Schalter rechts, leuchtet die Lampe2. Aus dem Leuchten der Lampe kann ich die Stellung des Schalters entnehmen. 21 Semantik der Aussagenlogik I Ziel: Bestimmen der Bedeutung einer Formel Beobachtung: eine aussagenlogische Formel kann viel bedeuten den Elementaraussagen muß eine Bedeutung zugeordnet werden! der Elementaraussage es-schneit kann die Bedeutung die Ampel ist rot oder die Lampe ist aus oder 1 ist gleich 0 usw. zugeordnet werden! Elementaraussagen sind durch Sachverhalte zu interpretieren! Grundlage der Semantik-Konstruktion: 2 Mengen von Sachverhalten W und F. 22 Die Algebra der Sachverhalte Wir nennen W vereinigt mit F ein Universum (eine Welt). Es gelte: Durchschnitt beider Mengen sei leer! Das Universum habe folgende Eigenschaften: Zu jedem Sachverhalt a aus W gibt es einen assoziierten Sachverhalt a aus F. Zu jedem Sachverhalt a aus F gibt es einen assoziierten Sachverhalt a aus W. Zu zwei Sachverhalten a und b aus W gibt es einen kombinierten Sachverhalt k(a, b) aus W und einen disjungierten Sachverhalt d(a, b) aus W, Zu zwei Sachverhalten a aus W und b aus F gibt es einen kombinierten Sachverhalt k(a, b) aus F und einen disjungierten Sachverhalt d(a, b) aus W. Zu zwei Sachverhalten b aus W und a aus F gibt es einen kombinierten Sachverhalt k(a, b) aus F und einen disjungierten Sachverhalt d(a, b) aus W. Zu zwei Sachverhalten a und b aus F gibt es einen kombinierten Sachverhalt k(a, b) aus F und einen disjungierten Sachverhalt d(a, b) aus F. Es gelten die Gesetze der booleschen Algebra für d und k. 23 Semantik der Aussagenlogik II Wir definieren eine semantische Funktion s, die einer Elementaraussage entweder einen Sachverhalt aus W oder einen aus F zuweist. s:F →W ∪F Zu einer gegebenen Formelmenge muß jeder Elementaraussage ein Sachverhalt zugewiesen werden (Abb. auf). Für die zusammengesetzten Formeln definieren wir s wie folgt: ¬F wird der zu F assoziierte Sachverhalt zugewiesen. A ∧ B wird der aus a und b kombinierte Sachverhalt zugewiesen, wenn A dem Sachverhalt a und B dem Sachverhalt b zugewiesen wird. A ∨ B wird der aus a und b disjungierte Sachverhalt zugewiesen, wenn A dem Sachverhalt a und B dem Sachverhalt b zugewiesen wird. Diese Sachverhaltssemantik ist nicht üblich. Üblicherweise gilte die Bewertung mit Wahrheitswerten als Semantikzuweisung 24 Tafeln für die Junktoren Negation: ¬ w f f w Konjunktion: wedge w w w w f f f w f f f f Diskjunktion: vee w w w w w f w f w f f f 25 Semantik für die Ausagenlogik III Idee: Aussagen stellen Behauptungen eines Sprechers (Proponent) in einem Dialog zwischen dem Proponent und einem Opponent dar Semantik einer Aussage: Antwort/Verteidigungspflichten Wird A∧B behauptet, so muß A oder B verteidigt werden, je nachdem wie der Opponent auswählt (angreift) Wird A ∨ B behauptet, so muß A oder B verteidigt werden. Der Proponent darf selbst wählen (greift an). Wird A → B behauptet, so muß der Opponent mit A angreifen. Anschließend verteidgt der Proponent B. Wird ¬A behauptet, so muß der Opponent A behaupten (und verteidigen). A für nicht zusammengesetzte Formeln darf nur behauptet werden, wenn sich beide Partner vorher auf diese Formel als Annahmeformel geeinigt hatten. Idee von Paul Lorenzen, Prof. in Erlangen, vielfältige Varianten 26 Kalküle für die Ausagenlogik I Es gibt viele mögliche Kalküle! Streng genommen gibt Goos einen Sequenzenkalkül aber keinen Aussagenkalkül Weshalb Kalkül und nicht Wahrheitstafeln? Weil Wahrheitstafeln für Prädikatenlogik nicht möglich sind! Kalküle sind formale Systeme: Regeln werden auf Formeln angewandt 27 Formale Systeme Ein formales System S besteht aus: 1. einem Alphabet Σ 2. einer Menge von Termen F über Σ (gemäß einer Signatur) 3. einer Menge von Formeln A ⊂ F (Axiome) 4. einer Menge von Ableitungsregeln R; jede Regel ri ist eine entscheidbare ni-stellige Relation in F normalerweise ist F entscheidbar (feststellbar, ob Zeichenkette Formel oder nicht) wenn A entscheidbar ist, heißt S ein axiomatisches System wenn für gewisse Formeln (a1, a1, ..., ani ) ∈ ri gilt, dann sagt man: ani wird aus a1, ..., ani−1 mit der Regel ri durch direkte Ableitung geschlossen (deduziert) 28 Ableitbarkeit Wenn Γ ⊂ F und F ∈ F, dann sagen wir, daß F aus Γ ableitbar ist, wenn es eine endliche Folge von Formeln f1, ..., fm gibt mit: 1. fm = F 2. für jedes j ≤ m trifft einer der drei folgenden Fälle zu: (a) fj ∈ Γ (b) fj ∈ A (c) fj wurde durch Anwendung aus g1, ..., gni−1 mit einer Ableitungsregel ri deduziert, und die gi = fl für irgendwelche Indizes (l ≤ m) Für jede Formelfolge f1, ..., fk kann man entscheiden, ob sie eine Ableitung ist oder nicht. Es gibt formale Systeme, bei denen man nicht entscheiden kann, ob eine Formel ableitbar ist oder nicht! Konsequenzen: Wenn Γ ⊂ ∆ und Γ F , dann ∆ F . (Monotonie) Wenn Γ F gdw. es gibt endliche Teilmenge ∆ und ∆ F. Wenn ∆ A und Γ B (für alle B ∈ ∆), dann Γ A 29 Kalküle für die Ausagenlogik II Nicht alle Regeln sind brauchbar! Regeln müssen gewisse Formeleigenschaften erhalten. Standardforderung: Wahrheitserhaltung. Wenn die Formeln a1, ..., ani−1 alle wahr sind (Tautologien sind), dann ist auch die Formel ani wahr (eine Tautologie). Das formale System soll korrekt sein, bedeutet, daß F impliziert daß |= F . Das formale System soll vollständig sein, bedeutet, daß |= F impliziert daß F . 30 der Hilbert Kalkül 1. Alphabet: {¬, →, (, ), p1, p2, ...} 2. Formeln: Jedes pi ∈ F. Falls F und G ∈ F, so auch ¬F und F → G ∈ F 3. Axiome(nschemata): (a) (A → (B → A)) (b) ((A → (B → C)) → ((A → B) → (A → C))) (c) (((¬A) → (¬B)) → (B → A)) 4. Modus ponens als Schlußregel: (A, A → B; B) 31 der R-N-Kalkül 1. Alphabet: {¬, ∨, ∧, →, (, ), p1, p2, ...} 2. Formeln: Jedes pi ∈ F. Falls F und G ∈ F, so auch ¬F , F ∧ G, F ∨ G und F → G ∈ F 3. keine Axiome 4. Schlußregeln: (a) Modus Ponens: (A, A → B; B) (b) Und-Elimination: (A ∧ B; A), (A ∧ B; B) (c) Und-Einführung: (A, B; A ∧ B) (d) Oder-Einführung: (A; A ∨ B) (e) Doppelte-Negation-Elimination: (¬¬A; A) (f) Einer-Resolution: (A ∨ B, ¬B; A) (g) Resolution: (A ∨ B, ¬B ∨ C; A ∨ C) 32 Ableitungen im Hilbert Kalkül Ableitung für 1. Ax2: ((A → ((A → A) → A)) → ((A → (A → A)) → (A → A))) 2. Ax1: (A → ((A → A) → A)) 3. MP: ((A → (A → A)) → (A → A)) 4. Ax1: (A → (A → A)) 5. MP: (A → A) 33 Automatisierung von Ableitungen die Axiome sind (mit der Substitution) im Grunde parametrisierte Schlußregeln in jedem Schritt ist die Ableitung um eine Formel zu verlängern wenn alle Formeln der Ausgangsformelmenge in der Ableitung sind: nur noch Variantend der Axiome und Ergebnisse von Schluregeln typisches Vorgehen: systematisches oder heuristisches Ausprobieren (Suchen) Axiomvarianten und Modus Ponens bieten überwältigend viele Möglichkeiten (Verzweigungsfaktor ist sehr groß!) Schwierigkeit der Ansteuerung der Hypothese Alternative: Rückwärtsarbeit 34 Deduktionslemma Für Formeln A, B ∈ F und Formelmengen Γ ⊂ F gilt Γ ∪ {A} B gdw. Γ (A → B) Beweis: 1. rückwärts: (a) wenn Γ (A → B), dann Γ ∪ {A} (A → B) (b) immer gilt:Γ ∪ {A} A (c) also (mit MP) Γ ∪ {A} B (die Ableitung für (A → B) kann um zwei Formeln verlängert werden) 2. vorwärts: Induktion über Länge der kürzesten Ableitung (a) Induktionsanfang: kürzeste Ableitung zu Γ∪{A} B habe Länge 1, d.h. enthalte nur die Formel B. dann 3 Fälle möglich: i. B ∈ A ii. B ∈ Γ iii. B identisch mit A 35 Beweis des Deduktionslemmas II 1. wir verlängern die Ableitung um: (B → (A → B)) (ist Axiom1) 2. wir verlängern die Ableitung um: (A → B) (mit Modus Ponens) damit Induktionsanfang gesichert. Nun Induktionsschritt: es existiere eine Ableitung A1, A2, ..., Am mit m > 1, B ≡ Am und das Lemma gelte für alle Ableitungen, die kürzer als m. dann 4 Fälle möglich: 1. B ∈ A 2. B ∈ Γ 3. B identisch mit A 4. B Ergebnis eines Modus Ponens-Schrittes in den ersten drei Fällen verfahren wir wie im Induktionsanfang es bleibt Fall 4 36 Beweis des Deduktionslemmas II 1. es müs also Indizes i, j < m geben, so daß Ai ≡ C und Aj ≡ (C → B) 2. damit: Γ ∪ {A} C und Γ ∪ {A} (C → B) 3. beide Ableitungen müssen kürzer als m sein; per Induktionsannahme: 4. Γ ∪ {A} (A → C) und Γ ∪ {A} (A → (C → B)) 5. wenn wir nun hinter die Ableitung für (A → C) die Ableitung für (A → (C → B)) schreiben, ergibt sich eine korrekte Ableitung. 6. diese Ableitung kann verlängert werden mit ((A → (C → B)) → ((A → C) → (A → B))) (weils Axiom2 ist 7. weiter kann verlängert werden mit ((A → C) → (A → B))) mit Modus Ponens 8. und es kann verlängert werden mit (A → B) mit Modus Ponens 9. damit Γ ∪ {A} (A → B) 10. qed. 37 Korrektheit des Hilbert-Kalküls Für alle A ∈ F: Wenn A dann |= A Beweis: Induktion über Länge der (kürzesten) Ableitungen: 1. Induktionsanfang: Ableitung habe Länge 1: A ∈ A. Alle Axiome sind Tautologien. dann |= A. 2. Der Satz gelte für alle Formeln, deren Ableitungen kürzer als m 3. kürzeste Ableitung für A habe Länge m 4. sei A kein Axiom; dann A Ergebnis eines Modus Ponens aus B und (B → A), beide haben kürzere Ableitungen und sind nach Induktionsannahme Tautologien 5. nach Wertetabelle für Implikation auch A Tautologie. 38 Vollständigkeit des Hilbert-Kalküls Für alle A ∈ F: Wenn |= A dann A. Beweis: Contradictio ad absurdum 1. Annahme: Es sei A ∈ F Tautologie, aber kein Theorem. 2. Dann muß das formale System L0 durch ¬A konsistent erweiterbar sein zu System L 3. Dann gibt es eine Bewertung ω von F mit ω(B) = T für alle B ∈ TL 4. Insbesondere ω((¬A)) = T und damit ω(A) = F ! 5. Widerspruch!, q.e.d. 39 Erweiterung Sei S = (ΣS , FS , AS , RS ) ein formales System. Def.: Ein formales System T = (ΣT , FT , AT , RT ) heiße Erweiterung von S, wenn: ΣS = ΣT , FS = FT , RS = RT und T S ⊂ TT . Es gilt AS ⊂ TS ⊂ TT aber nicht notwendig AS ⊂ AT . Def.: Eine Erweiterung L von L0 heiße vollständig, wenn für jedes A ∈ F in L entweder A oder ¬A gilt. 40 Existenz der vollständigen Erweiterung Lemma: Zu jeder konsistenten Erweiterung L von L0 existiert eine vollständige Erweiterung von L. Beweis: Konstruktion einer Folge von Erweiterungen 1. Sei A0, A1, , ... eine Auflistung von F 2. die Folge der Erweiterungen L0, L1, ..., wird über die Axiomenmengen konstruiert: 3. A0 = AL Ak−1, f alls Lk−1 Ak−1 4. A = k−1 A ∪ {¬Ak−1} sonst k 5. alle diese Erweiterungen sind konsistent 6. sei nun L∞ definiert über A∞ = ∪Ak 7. L∞ ist konsistent! 8. Wäre es nicht konsistent, dann gäbe es Ableitungen L∞ A und L∞ ¬A 9. die in den Ableitungen vorkommenden Axiome müssen in einem Ak liegen für genügend großes k. Also: 10. Lk A und Lk ¬A im Widerspruch zur Konsistenz der Lk . 41 11. ist L∞ vollständig? 12. ein A ∈ F hat in der obigen Liste der Formeln einen Index n. 13. gilt Ln An, dann auch L∞ An 14. gilt Ln An nicht, dann nach Konstruktion: L(n+1) ¬An und also L∞ ¬An 15. q.e.d. 42 Existenz der Bewertung Ist L eine konsistente Erweiterung von L0, so gibt es eine Bewertung ω von L0, so daß für alle A ∈ TL : ω(A) = T . Beweis: 1. Wir konstruieren L∞ 2. wir definieren: ω(A) = T f alls L∞ An F f alls L∞ ¬An 3. ω für alle Formeln eindeutig definiert 4. ist ω verträglich mit den Wahrheitswertfunktionen für ¬ und →? 5. aus Definition ergibt sich Verträglichkeit mit ¬. 6. noch zu zeigen: ω(A → B) = F gdw. ω(A) = T und ω(B) = F . 7. sei ω(A → B) = T ω(A) = T und ω(B) = F . 8. dann L∞ (A → B), L∞ A und L∞ ¬B 9. die ersten zwei Ableitungen können zu Ableitung für B (Modus Ponens!) verlängert werden: L∞ B. Widerspruch! 10. aus ω(B) = T folgt ω(A → B) = T , denn Ableitung für B kann mit Axiom1 und Modus Ponens zu Ableitung für (A → B) verlängert werden. 43 11. aus ω(A) = F folgt ω(A → B) = T , denn Ableitung für ¬A kann mit Axiom1 (Einsetzen von ¬A und ¬B) und Modus Ponens sowie Axiom3 (Vertauschen von A und B) zu Ableitung für (A → B) verlängert werden. 44 Der Sequenzenkalkül SK nach Goos Der Sequenzenkalkül ist ein formales System über den Ableitungen, d.h. Folgen von Formeln der Aussagenlogik. in den Sequenzen sind die 2 Bestandteile, die Formelmenge der Annahmen) und die Formeln der Herleitung streng voneinander zu trennen denn die Annahmen dürfen frei erweitert werden, die Herleitungsformeln nicht. A: FF R: (a) (FF ;F F ) falls F ⊂ F (b) (FF H, FGH;F(F ∨ G)H) (c) (FF ;F(F ∨ G)) oder (FG;F(F ∨ G)) (d) (FF G,F ¬F G;FG) (e) (F ¬F G,F ¬F ¬G;FF ) 45 Sequenzen Im Sinne der Notation von Goos auf den Folien: Eine Sequenz FF symbolisiert eine Herleitung von F aus der Annahme F Während im Falle der Regeln L2, L3 und L4 die symbolisierte Herleitung direkt durch Anhängen bzw. durch Einbauen der Schluformeln gedacht werden kann, so ist dies für die Regeln l5 und L6 nicht einfach möglich. Für die Fallregel kann man argumentieren, die Herleitungen der Endformel können die gestrichenen Formeln nicht benutzt haben. 46 Beweise I (a) eine Sequenz F F ist ein Beweis (F F ) mit Endsequenz F F (b) ist B ein Beweis mit Endsequenz ΦF und sei ΦH eine Konklusion der Regeln L2 und L4, dann ist (B,(ΦH)) ein Beweis mit Endsequenz ΦH. (c) sind B1 und B2 Beweise mit Endsequenzen ΦH1H2 bzw. ΦH3H4, und ist Ψ die Endsequenz einer der Regeln L3, L5 oder L6 bezogen auf die beiden genannten Endsequenzen, dann ist (B1, B2 (Ψ)) ein Beweis mit Endsequenz Ψ Wir schreiben Φ, wenn es einen Beweis gibt mit Endsequenz Φ. Sei F eine Menge von Formel. Wir schreiben F G, wenn es eine endliche Folge von Formeln Φ aus F gibt, so daß: ΦG 47 Beweise II (a) R1: (b) R4: (c) R1: (d) R4: (e) R5: (f) R6: HH H(H ∨ ¬H) ¬H¬H ¬H(H ∨ ¬H) (H ∨ ¬H) Φ(H ∨ ¬H) 48 Konsistenz Def.: Eine Formelmenge F heiße inkonsistent, wenn für alle Formeln G: F G. Ansonsten heiße G konsistent Lemma: Eine Formelmenge F ist inkonsistent gdw. F ¬(p ∨ ¬p). (p festgewählte Elementaraussage) Beweis: (a) Ist F inkonsistent, sind alle Formeln ableitbar und insbesondere ¬(p ∨ ¬p) (b) es gilt auf jeden Fall: F (p ∨ ¬p) (siehe voriges Beispiel) (c) Nun sei nach Voraussetzung F ¬(p ∨ ¬p). (d) also gibt es eine endliche Menge von Formeln Φ mit: Φ¬(p ∨ ¬p). (e) Mit dem vorigen Beispiel auch: Φ(p ∨ ¬p). (f) Mit L2: Φ¬G(p ∨ ¬p) (g) Mit L2: Φ¬G¬(p ∨ ¬p). (h) Mit L6: ΦG. 49 Erweiterung Jede konsistente Formelmenge läßt sich zu einer maximal konsistenten Formelmenge erweitern. Beweis: (a) Sei F0, F1, ... eine Aufzählung aller Formeln (b) Wir definieren eine Folge von Formelmengen: (c) F0 = F F ∪ {Fn } f allskonsistent (d) Fn+1 = n sonst Fn (e) F ∗ = ∪Fn (f) F ∗ ist konsistent. Falls nicht, gäbe es eine endliche Folge von Formeln Φ mit Φ¬(p ∨ ¬p). Es muß einen Index m geben, so daß alle Formeln aus Φ in Fm liegen. Also wäre Fm inkonsistent. Widerspruch. (g) F ∗ ist maximal-konsistent: (h) Sei nicht G ∈ F ∗. es gibt Index i, so daß G = Fi. Nach Konstruktion (wenn G nicht aufgenommen): Fi ∪{Fi} inkonsistent. Also auch F ∗ ∪{Fi} inkonsistent d.h. F ∗ ∪ {G} 50 Existenz der Interpretation Sei F eine konsistente Formelmenge. Dann gibt es eine Interpretation I mit: I |= F Konstruktionsbeweis: ∗ 1 f ürp ∈ F 1. für die Elementaraussagen: I(p) = 0 sonst 2. Nun Beweis durch Induktion über den Aufbau von H: I(H) = 1 gdw. H ∈ F ∗ 3. ist H Elementaraussagen, dann per Definition 4. ist H = ¬F : I(H) = I(¬F ) = 1 gdw. (Induktionsannahme!) I(F ) = 0 gdw. nicht F ∈ F ∗ gdw. H ∈ F∗ 5. usw. für die anderen Junktoren 51 Korrektheit des Kalküls SK Zu zeigen, daß alle in SK herleitbaren Sequenzen F0F1...FnF tautologisch sind, d.h. dafür alle Interpretationen I gilt: Wenn I(F0) = I(F1) = ...I(Fn) = 1, dann I(F ) = 1 Induktionsbeweis über Länge der Herleitungen (Komplexität der Beweise): Betrachtung für jede Regel L2-L6 1. Induktionsbasis, Regel L1, trivial 2. Induktionsschritt, Regeln L2-L6 52 Vollständigkeit des Kalküls SK Zu zeigen, falls F |= G dann F G Widerspruchsbeweis 1. Angenommen, nicht F G. 2. Dann F ∪ {¬G} konsistent. 3. Nach Henkins Lemma: Es ex. Interpretation I mit I |= F ∪ ¬G, 4. Widerspruch zu F |= G (jede Interpretation, die F erfüllt, erfüllt G (I(G) = 1)) 53 Resolutionskalkül Ausgangspunkt: Sprache der Klauseln {L1, L2, ..., Ln} Axiom: die leere Klausel (Elementarwiderspruch) Regel: ({A1, ..., Ai, ..., An}, {B1, ..., Bj , ..., Bm}; {A1, ..., An, B1, ...Bm}) falls Ai = ¬Bj streng genommen: Kalkülschritte = Erweiterung der Klauselmenge Axiom: Klauselmenge mit leerer Klausel s.Satz 4.11 im Buch: Eine Klauselmenge F ist erfüllbar gdw. die um eine Resolvente zweier Klauseln erweiterte Klauselmenge erfüllbar ist. Eine Klauselmenge F ist unerfüllbar gdw. die um eine Resolvente zweier Klauseln erweiterte Klauselmenge unerfüllbar ist. Vorteil des Kalküls: 1 Axiom, 1 Regel! 54 Widerlegung Widerlegung = endliche Folge von Klauseln C1, C2, ..., Cn Cn die leere Klausel Ci: Resolvente aus zwei Cj , Ck (j, k < i) oder einem Cj (j < i) und Klausel Al aus Anfangsklauselmenge oder von zwei Klauseln Al Am der Anfangsklauselmenge 55 Korrektheit der Resolutionsregel I Korrektheit der Resolutionsregel bedeutet: die Widersprüchlichkeit bleibt erhalten, besteht kein Widerspruch, werden keine neuen Widersprüche hinzugefügt gibt es zu einer Klauselmenge eine Widerlegung, so ist die Klauselmenge widersprüchlich Satz: Ist die um die Resolvente erweiterte Klauselmenge widersprüchlich, so auch die Klauselmenge ohne Resolvente. Beweis: 1. Betrachte alle Belegungen. 2. Sind die Klauseln ohne die Elternklauseln und Resolvente unerfüllbar, so sind sie auch ohne Elternklauseln allein unerfüllbar. 3. Sind die Elternklauseln und die Resolvente unerfüllbar, so interessiert nur der Fall, daß die Elternklauseln erfüllbar sind und nicht die Resolvente. 4. Dieser Fall kann nicht auftreten: 5. Ist die Resolvente nicht erfüllbar, so sind alle Literale unerfüllbar. 56 6. Einige davon treten in der ersten Elternklausel auf. 7. Sie kann nur erfüllbar sein, wenn das weggestrichene Literal erfüllbar war. 8. Auch in der zweiten Elternklausel treten Literale aus der Resolvente auf. 9. Ist sie erfüllbar, so muß das negierte Literal erfüllbar sein. 10. Dieses Literal ist aber nicht erfüllbar, wenn seine Negation in der ersten Elternklkausel erfüllbar ist. Widerspruch! 57 Korrektheit des Resolutionskalküls II Satz: Wenn es eine Widerlegung gibt, dann ist die Klauselmenge F unerfüllbar. Beweis über Länge der Widerlegung 1. Induktionsbasis: Widerlegung hat Länge 1. (a) Es genügt ein Resolutionsschritt, um die leere Klausel zu erzeugen. (b) Es muß die Elternklauseln {p} und {¬p} für ein Atom p in der Klauselmenge geben. 2. Induktionsannahme: Aussage gilt für alle Widerlegungen der Länge n-1. 3. Induktionsschritt (a) Die um die erste Klausel aus der Widerlegung erweiterte Klauselmenge hat eine Widerlegung der Länge n-1 (die restliche) (b) sie ist also widersprüchlich. (c) zu zeigen: wenn Klauselmenge mit Resolvente widersprüchlich, dann Klauselmenge ohne Resolvente (d) s. voriger Satz 58 Vollständigkeit des Resolutionskalküls Satz: Wenn die Klauselmenge F unerfüllbar ist, gibt eine Widerlegung. Beweis: Induktion über Anzahl der Atome in den Klauseln 1. Induktionsbasis: (a) Die Klauselmenge enthalte 1 Atom p. (b) Sie ist genau dann unerfüllbar, wenn sowohl {p} als auch {¬p} als Klauseln vorkommen. (c) Wir können einen Resolutionsschritt ausführen und erhalten die leere Klausel. 2. Induktionsannahme: Sei nun der Satz für Klauselmengen mit n-1 Atomen bewiesen. 3. Induktionsschritt: (a) Die Klauselmenge enthalte n Atome und sei unerfüllbar. (b) Eines der Atome sei p. (c) Wenn sie unerfüllbar ist, dann gilt das für alle Interpretationen, insbesondere für die, bei der das p durch falsch ersetzt wird. 59 (d) Wir konstruieren eine Klauselmenge F0 aus F : (e) indem wir alle Klauseln, die das Atom negiert enthalten, weglassen (haben den Wert wahr) (f) und aus allen Klauseln, die das Atom unnegiert enthalten, dieses weglassen (alle Glieder müssen falsch sein, also auch alle übrigen). (g) Die Klauselmenge F0 ist immer noch unerfüllbar, hat n-1 Atome, es gibt eine Widerlegung. (h) Wenn wir diese wieder mit p erweitern, ergibt sich entweder eine Widerlegung oder die letzte Klausel besteht nur aus p. (i) Entsprechend konstruieren wir eine Klauselmenge F1 mit einer passenden Widerlegung mittels der Interpretation, bei der p durch wahr ersetzt wird. (j) Auch diese Widerlegung wird bei Erweiterung durch das negierte weggelassene p entweder in der leeren Klausel oder in diesem negierten p enden. (k) Bleibt eine der beiden Widerlegungen bei Ergänzung durch das weggelassene eine Widerlegung, so ist sie für die Klauselmenge F brauchbar. (l) Sind sie aber nicht allein brauchbar, so entsteht durch Hintereinanderschreiben und Hinzufügen einer Resolutionsregelanwendung eine echte Widerlegung. 60 Verwendung der Aussagenlogik Aussagenlogik nur brauchbar für Anwendungen, bei denen man es mit endlich vielen Sachverhalten zu tun hat. Vorgehen: 1. Darzustellende Inhalte in Fachsprache aufschreiben 2. Aussagen standardisieren. 3. Liste aller Elementaraussagen aufschreiben 4. Fachsprachentext Aussage für Aussage übersetzen 61