1 Aussagenlogischer Kalkül Ein Kalkül in der Aussagenlogik soll die Wahrheit oder Algemeingültigkeit von Aussageformen allein auf syntaktischer Ebene zeigen. Die Wahrheit soll durch Umformung von Formeln nach bestimmten Gesetzen aufgewiesen werden. Auf semantischer Ebene nimmt man Bezug zum Wahrheitsbegri. In den Wahrheitswerttafeln werden z.b. in den Zeilen die verschiedenen Interpretationen durchgespielt. Jede Interpretation belegt die vorkommenden Aussagevariablen mit den Wahrheitswerten w oder f. Jede Interpretation stellt eine Welt dar, in der eine Aussage wahr bzw. falsch sein kann. Ein Kalkül bezieht sich nicht auf eine mögliche Welt, sondern er schreibt nach festen Regeln vor, wie Zeichenketten (Formeln) umgeformt werden sollen. Am Ergebnis des Kalküls kann man dann (eventuell) ablesen, ob die ursprüngliche Formel wahr ist oder nicht. Um den Unterschied zwischen dem semantischen Beweis und der Ableitung im Kalkül deutlich zu machen, werden zwei verschiedene Symbole verwendet: I = ϕ bedeutet, dass ϕ in der Interpretation I wahr ist. = ϕ bedeutet, dass ϕ in allen Interpretationen wahr ist. ϕ bedeutet, dass ϕ im Kalkül abgeleitet werden kann. 1.1 Kalkül mit Normalformen Der erste Kalkül arbeitet mit Normalformen. Denition 1. Literal Ein Literal ist eine negierte oder nicht negierte Aussagevariable. Beispiele für Literale: A, A, B, B. Denition 2. Disjunktion, Konjunktion Eine Disjunktion ist eine disjunktive Verknüpfung von Literalen. Eine Konjunktion ist eine konjunktive Verknüpfung von Literalen. Beispiele für Disjunktionen: A, B, A B C D. Beispiele für Konjunktionen: A, B, A B C D. Denition 3. Disjunktive Normalform, DNF Eine Aussageform g ist in disjunktiver Normalform, wenn g eine Disjunktion von Konjunktionen ist. g = (A B C D) ( B C) ( A D). Da die Ausdrücke schwer lesbar sind, schreibt man oft (wie schon beschrieben) die Negation als Strich über den Variablen und die Und-Zeichen werden weggelassen:
1 AUSSAGENLOGISCHER KALKÜL g = A B CD BC Ā D. Denition 4. Konjunktive Normalform, KNF Eine Aussageform g ist in konjunktiver Normalform, wenn g eine Konjunktion von Disjunktionen ist. g = (A B C D) ( B C) ( A D). In Kurzform: g = (A B C D)( B C)(Ā D). Denition 5. Vollständige disjunktive Normalform, VDNF Eine Aussageform g ist in vollständiger disjunktiver Normalform, wenn g eine Disjunktion von Konjunktionen ist und wenn in jeder Konjunktion alle Variablen vorkommen. Sei g = AB C BC. g ist in disjunktiver Normalform, aber nicht vollständig, weil z.b. in BC die Variable A fehlt. g = AB C ĀBC ist dagegen vollständig. Ähnlich deniert wird Denition 6. Vollständige konjunktive Normalform, VKNF Eine Aussageform g ist in vollständiger konjunktiver Normalform, wenn g eine Konjunktion von Disjunktionen ist und wenn in jeder Disjunktion alle Variablen vorkommen. Man kann aus jeder disjunktiven Normalform eine vollständige machen. Dazu muss man in jeder Konjunktion, in der eine Variable nicht auftaucht, zwei Konjunktionen machen, in denen die Variable einmal negiert und einmal nicht negiert auftaucht. Sei g = AB C BC. Die Umformung: g = AB C BC = AB C ABC ĀBC. Eventuell sind mehrere Schritte erforderlich: g = A BC = AB A B BC = ABC AB C A BC A B C BC = ABC AB C A BC A B C ABC ĀBC. Beschreibung des Kalküls: Forme die Aussageform g solange um, bis sie in VDNF vorliegt. Wenn alle Konjunktionen von Literalen vorkommen, die möglich sind, ist g allgemeingültig. Wenn mindestens eine Konjunktion vorkommt, ist g erfüllbar, wenn keine Konjunktion vorkommt, ist g unerfüllbar. g = A (B A). Umformung in DNF ergibt g = A (B A) = Ā ( B A) = Ā B A. Vervollständigung ergibt g = ĀB Ā B A B Ā B AB A B. Löschen gleicher Konjunktionen ergibt g = ĀB Ā B A B AB. Hier kommen alle Kombinationen von Literalen in den Konjunktionen vor. Also ist g allgemeingültig. 2
1.2 Resolutionskalkül g = A B. Umformung in DNF ergibt g = A B = Ā B. Vervollständigung ergibt g = ĀB Ā B AB ĀB = ĀB Ā B AB. Es fehlt der Term A B. g ist nicht allgemeingültig, aber vollständig. g = (A (B A)). Umformung in DNF ergibt g = (A (B A)) = (Ā ( B A)) = (Ā B A) = Ā B A = Ā BA = falsch. Satz 1. Korrektheit, Vollständigkeit, Entscheidbarkeit Der hier angegebene Kalkül ist korrekt, vollständig und entscheidbar. In diesem Kalkül wird die Bedeutung der Formeln nicht mehr verwendet. Es werden nur Umformungen der Ausdrücke vorgenommen, an denen man mit Sicherheit erkennen kann, ob sie allgemeingültig sind oder nicht. Korrektheit bedeutet, dass wir nur Sätze beweisen können, die allgemeingültig sind. Vollständigkeit bedeutet, dass alle allgemeingültig wahren Sätze bewiesen werden können. Entscheidbarkeit heiÿt, dass wir für jede aussagenlogische Formel entscheiden können, ob sie allgemeingültig ist oder nicht. Es ist auch möglich, auf schnellere Weise festzustellen, ob zwei Formeln äquivalent sind oder sich implizieren. Es gilt g = h genau dann, wenn die VDNF von g und h identisch sind, und g h genau dann, wenn alle Konjunktionen der VDNF von g in der von h vorkommen. g = AB A und h = A B. g = AB Ā = AB ĀB Ā B und h = A B = ĀB Ā B AB ĀB = ĀB Ā B AB. Beide VDNFs stimmen überein, also gilt g = h. g = A und h = B A. Es gilt g = A = AB A B und h = B A = B A = A B Ā B AB A B = A B Ā B AB. Es kommen alle Konjunktionen von g in h vor. Also gilt g h, also A (B A). Übung: Zeigen Sie mit dem Normalformenkalkül, dass folgende Aussageform allgemeingültig ist: (A A) B. Dieser Satz besagt, dass man, falls eine Aussage und ihre Negation gleichzeitig wahr sind, alle Sätze beweisen kann. Übung: Ist (A B) A allgemeingültig? (mit dem Normalformenkalkül) 1.2 Resolutionskalkül Wir verwenden statt des vorigen Kalküls die Resolutionsmethode. Diese basiert zunächst auf dem Auslöschungssatz: 3
1 AUSSAGENLOGISCHER KALKÜL Der Auslöschungssatz besagt, dass aus zwei Disjunktionen (Formeln, in denen Variable oder negierte Variable durch verbunden sind), in denen eine Variable negiert und nicht negiert vorkommt, eine Gesamtdisjunktion gebildet werden darf, in der die Variable fehlt. Beispiele: A B und A C impliziert B C A B C und A D E impliziert B C D E A B und A B impliziert B A und A B impliziert B A und A impliziert f Eine Implikation wird jetzt so bewiesen, dass man alle Voraussetzungen in eine Liste schreibt. Die Konklusion (was aus den Voraussetzungen folgt) wird negiert in die Liste eingetragen. Dann wird der Auslöschungssatz auf beliebige Sätze der Liste angewendet. Das ist immer nur für zwei Sätze möglich, die Disjunktionen sind und in denen eine Variable einmal negiert und einmal nicht-negiert vorkommt. Der Schluss gilt als bewiesen, wenn f abgeleitet werden kann. A A 1 A Prämisse 2 A Negation der Konklusion 3 f Auslöschung 1 und 2 (A A) A 1 A A Prämisse 2 A Negation der Konklusion 3 A Auslöschung 1 und 2 4 f Auslöschung 3 und 2 (A B) A Die Prämisse ist A B. Die Konklusion ist A. Die Prämisse besteht aus zwei Teilprämissen A und B, die man in verschiedene Zeilen schreiben kann. 1 A Prämisse 1 2 B Prämisse 2 3 A Negation der Konklusion 4 f Auslöschung 3 und 1 A (B A) Die Prämisse ist A. Die Konklusion ist (B A). Dies ist äquivalent zu B A. Die Negation ist dann ( B A). Das ist äquivalent zu B A 4
1.3 Weiterer Aussagenlogischer Kalkül 1 A Prämisse 2 B Negation der Konklusion 1 3 A Negation der Konklusion 2 4 f Auslöschung 3 und 1 Übung: Zeigen Sie mit dem Resolutionskalkül, dass folgende Aussageform allgemeingültig ist: (A A) B. Übung: Ist (A B C) (A C) allgemeingültig? (mit dem Resolutionskalkül) 1.3 Weiterer Aussagenlogischer Kalkül Axiome: 1. ϕ (ψ ϕ) (A1) Abschwächungsregel 2. (ϕ (ψ χ)) ((ϕ ψ) (ϕ χ)) (A2) Distributivitätseigenschaft 3. ( ϕ ψ) (ψ ϕ) (A3) Kontraposition Schlussregeln: ϕ,ϕ ψ ψ (MP) Satz: Für beliebige aussagenlogische Formeln ϕ, ϕ 1,..., ϕ n und ψ gilt: {ϕ 1,..., ϕ n } {ϕ} ψ {ϕ 1,..., ϕ n } ϕ ψ Das Theorem ϕ (ϕ ψ) hat eine besondere Bedeutung. Wenn es gilt und man kann eine Aussage und ihr Gegenteil beweisen, so kann man jede Aussage beweisen. Unser Kalkül ist korekt ( ϕ = ϕ) und vollständig ( = ϕ ϕ) Er ist aber nicht negationsvollständig: es existieren Formeln, die weder allgemeingültig sind noch ihre Negationen. 5