Kapitel 1: Aussagenlogik Teil I: Syntax und Semantik der Aussagenlogik (Kapitel 1.0 - 1.4) Mathematische Logik (WS 2016/17) Kapitel 1: Aussagenlogik (Teil I) 1 / 146 Übersicht Teil I: Syntax und Semantik der Aussagenlogik (1.0) Junktoren und Wahrheitsfunktionen (1.1) Syntax der Aussagenlogik (1.2) Semantik der Aussagenlogik (1.3) Boolesche Funktionen, aussagenlogische Formeln und Normalformen (1.4) Exkurs: Entscheidbarkeit und Komplexität Teil II: Ein Kalkül der Aussagenlogik (1.5) Logische Kalküle: Beweise und Beweisbarkeit (1.6) Ein adäquater Kalkül für die Aussagenlogik: Der Shoenfield-Kalkül für die Aussagenlogik (1.7) Die Vollständigkeit des Shoenfield-Kalküls der Aussagenlogik Mathematische Logik (WS 2016/17) Kapitel 1: Aussagenlogik (Teil I) 2 / 146 Übersicht (Fortsetzung) In der Aussagenlogik analysiert man die Wahrheitswerte zusammengesetzter Aussagen basierend auf den Wahrheitswerten der elementaren Teilaussagen. Wir beginnen damit, die hierzu verwendeten Verknüpfungen (Junktoren) einzuführen und deren Bedeutung durch Wahrheits- bzw. Boolesche Funktionen zu beschreiben (Kapitel 1.0). Dann wenden wir uns der Aussagenlogik selbst zu und führen zunächst deren Sprache ein, I I deren Grundzeichen Symbole für die elementaren Aussagen (Aussagenvariablen) und die verwendeten Verknüpfungen (Junktoren) sind und in der zusammengesetzte Aussagen mit Hilfe von speziellen endlichen Zeichenreihen, den aussagenlogischen (al.) Formeln, dargestellt werden (Syntax der Aussagenlogik; Kapitel 1.1). Mathematische Logik (WS 2016/17) Kapitel 1: Aussagenlogik (Teil I) 3 / 146 Übersicht (Fortsetzung) Formeln können als Aussageformen interpretiert werden, wobei man die dargestellten Aussagen dadurch erhält man, dass man die Variablen durch konkrete Aussagen ersetzt (wobei natürlich eine mehrfach vorkommende Variable immer gleich ersetzt wird) und die Junktoren durch die von ihnen symbolisierte Verknüpfungen ersetzt. Da der Wahrheitswert von verknüpften Aussagen nicht von den vorkommenden atomaren Aussagen selbst sondern nur von deren Wahrheitswert abhängt, können wir durch Belegung der in einer Formel vorkommenden Aussagenvariablen mit Wahrheitswerten den Wahrheitswert der zusammengesetzten Aussage (in Abhängigkeit von der Belegung) bestimmen (Semantik der Aussagenlogik; Kapitel 1.2). Hierauf basierend werden wir dann die zentralen Begriffe der (Aussagen-) Logik wie Erfüllbarkeit und Allgemeingültigkeit (= al. Wahrheit) von al. Formeln sowie (aussagen)logischen Äquivalenz- und Folgerung einführen und diese Konzepte näher untersuchen. Weiter werden wir Normalformen (Disjunktive und Konjunktive Normalform) von Formeln einführen, sowie Entscheidbarkeits- und Komplexitätsfragen erörtern (Kapitel 1.2 - 1.4). Mathematische Logik (WS 2016/17) Kapitel 1: Aussagenlogik (Teil I) 4 / 146 Übersicht (Fortsetzung) Schließlich zeigen wir, dass man den (semantischen) Wahrheits- und Folgerungsbegriff mit Hilfe eines Kalküls (syntaktisch) beschreiben kann, in dem der semantische Folgerungsbegriff mit der Beweisbarkeit (= syntaktischer Folgerungsbegriff) zusammenfällt und in dem gerade die allgemeingültigen Formeln beweisbar sind (Kapitel 1.5 - 1.7). Mathematische Logik (WS 2016/17) Kapitel 1: Aussagenlogik (Teil I) 5 / 146 Kapitel 1.0 Junktoren und Wahrheitsfunktionen Mathematische Logik (WS 2016/17) Kap.1.0: Junktoren und Wahrheitsfunktionen 6 / 146 Verknüpfung von Aussagen Zur Verknüpfung von Aussagen verwenden wir (Verknüpfungs-) Operationen (Junktoren), die wir aus der Umgangssprache kennen: I I I I I nicht (Negation, Symbol: ¬) und (Konjunktion, Symbol: ∧) oder (Disjunktion, Symbol: ∨) wenn - dann (Implikation, Symbol: →) genau dann - wenn (Äquivalenz, Symbol: ↔) Dabei werden wir die Bedeutung dieser Verknüpfungen jedoch präzisieren, da diese in der Umgangssprache nicht immer eindeutig festgelegt sind. Hierzu ordnen wir jeder Verknüpfung eine Wahrheitsfunktion (= Boolesche Funktion) zu. Mathematische Logik (WS 2016/17) Kap.1.0: Junktoren und Wahrheitsfunktionen 7 / 146 Wahrheitsfunktionen und Boolesche Funktionen Im Folgenden kürzen wir die Wahrheitswerte WAHR und FALSCH mit W und F ab und identifizieren diese mit den Bits 1 und 0: I WAHR = W = 1 und FALSCH = F = 0 Eine n-stellige Wahrheitsfunktion f ist eine Abbildung f : {F , W }n → {F , W }. Eine n-stellige Boolesche Funktion f ist eine Abbildung f : {0, 1}n → {0, 1}. NB. Wegen der von uns vorgenommenen Identifizierung F = 0 und W = 1 sind Wahrheitsfunktionen gerade Boolesche Funktionen. Mathematische Logik (WS 2016/17) Kap.1.0: Junktoren und Wahrheitsfunktionen 8 / 146 Verknüpfungen und Boolesche Funktionen Verknüpfen wir zwei (oder mehrere) Aussagen, so soll der Wahrheitswert der verknüpften Gesamtaussage nur von den Wahrheitswerten der Teilaussagen sowie der gewählten Verknüpfung abhängen. Die Bedeutung (Semantik) einer n-stelligen Verknüpfungsoperation op kann daher durch eine n-stellige Wahrheitsfunktion bzw. Boolesche Funktion fop festgelegt werden. Wir werden im Folgenden auf diese Weise die Bedeutung der von uns betrachteten Verknüpfungen festlegen. Man beachte dabei, dass die Negation 1-stellig ist, während die anderen Verknüpfungen 2-stellig sind. Mathematische Logik (WS 2016/17) Kap.1.0: Junktoren und Wahrheitsfunktionen 9 / 146 Negation Durch die Negation wird eine Aussage A verneint, d.h. der Wahrheitswert gerade vertauscht: A wahr ⇔ ¬A falsch und A falsch ⇔ ¬A wahr Die Negation wird daher durch die 1-st. Boolesche Funktion f¬ mit folgender Wertetabelle definiert: x0 f¬ (x0 ) 0 1 1 0 (Die Wertetabelle einer Booleschen Funktion bezeichnet man manchmal auch als Wahrheitstafel.) Mathematische Logik (WS 2016/17) Kap.1.0: Junktoren und Wahrheitsfunktionen 10 / 146 Disjunktion Das ODER wird in der Umgangssprache sowohl inklusiv als auch exclusiv verwendet: I I Inklusiv: A oder B gilt, wenn A gilt oder B gilt oder wenn sowohl A als auch B gelten. Exklusiv: Hier gilt A oder B nur, wenn entweder A oder B gilt (aber nicht beide). Mit der Disjunktion (∨) bezeichnen wir das inklusive ODER: x0 x1 f∨ (x0 , x1 ) 0 0 0 0 1 1 1 0 1 1 1 1 Es gilt also gerade: f∨ (x0 , x1 ) = max(x0 , x1 ). Mathematische Logik (WS 2016/17) Kap.1.0: Junktoren und Wahrheitsfunktionen 11 / 146 Konjunktion Beim UND ist der Sprachgebrauch eindeutig: Die Aussage A und B ist wahr, wenn sowohl die Aussage A als auch die Aussage B wahr sind. Die Konjunktion (∧) wird also durch folgende Boolesche Funktion definiert: x0 x1 f∧ (x0 , x1 ) 0 0 0 0 1 0 1 0 0 1 1 1 Es gilt also gerade: f∧ (x0 , x1 ) = min(x0 , x1 ). Mathematische Logik (WS 2016/17) Kap.1.0: Junktoren und Wahrheitsfunktionen 12 / 146 Implikation Die Implikation (Folgerung) wird umgangssprachlich meist als sog. materielle Implikation aufgefasst, bei der ein kausaler Zusammenhang hergestellt wird: I “Wenn es regnet (A), dann wird die Straße nass (B).” Die Wahrheit einer solchen materiellen Implikation A ⇒ B hängt nicht nur von den Wahrheitswerten der Teilaussagen A und B sondern von den Aussagen A und B selbst ab (→ “intensionale Logik”). Hier betrachten wir daher die allgemeinere formale Implikation, bei der ein kausaler Zusammenhang nicht verlangt wird (→ “formale Logik”). So ist hier auch die Aussage I “Wenn es regnet (A), dann ist 3 eine Primzahl (B).” wahr. Mathematische Logik (WS 2016/17) Kap.1.0: Junktoren und Wahrheitsfunktionen 13 / 146 Implikation (Fortsetzung) Der Wahrheitswert einer formalen Implikation A → B ergibt sich wie folgt: I I Ist die Hypothese A falsch, so ist die Implikation A → B unabhängig vom Wahrheitswert von B wahr (“ex falso quodlibet”). Ist die Hypothese A wahr, so muss auch die Konklusion B wahr sein, damit die Implikation A → B wahr wird. Die Implikation (→) wird also durch folgende Boolesche Funktion definiert: x0 x1 f→ (x0 , x1 ) 0 0 1 0 1 1 1 0 0 1 1 1 Mathematische Logik (WS 2016/17) Kap.1.0: Junktoren und Wahrheitsfunktionen 14 / 146 Äquivalenz Zwei Aussagen A und B sind äquivalent, wenn sowohl A B impliziert als auch B A impliziert. Die Aussage A ↔ B ist also genau dann wahr, wenn die Aussagen A → B und B → A wahr sind (oder äquivalent hierzu - die Aussage (A → B) ∧ (B → A) wahr ist). Das lässt sich auch einfacher ausdrücken: A ↔ B ist genau dann wahr, wenn A und B denselben Wahrheitswert haben, also entweder beide wahr oder beide falsch sind: x0 x1 f↔ (x0 , x1 ) 0 0 1 0 1 0 1 0 0 1 1 1 Mathematische Logik (WS 2016/17) Kap.1.0: Junktoren und Wahrheitsfunktionen 15 / 146 Aussagenlogische Verknüpfungen vs. Boolesche Funktion Wir haben gesehen, dass sich die von uns betrachteten (aussagenlogischen) Verknüpfungen mit Hilfe von Booleschen Funktionen darstellen lassen. Umgekehrt stellt jede n-stellige Boolesche Funktion eine n-stellige Verknüpfung dar. n Da es 22 verschiedene n-stellige Boolesche Funktionen gibt 2 (warum?), also insbesondere 22 = 16 2-st. Boolesche Funktionen, erfassen wir mit den von uns betrachteten Verknüpfungen nur einen Teil der möglichen Verknüpfungen. Wir werden jedoch später zeigen, dass sich jede mögliche Verknüpfung (beliebiger Stelligkeit) als Kombination der von uns betrachteten Verknüpfungen darstellen lässt. In der Tat genügen hierzu die Verknüpfungen ¬ und ∨ (oder alternativ ¬ und ∧). Mathematische Logik (WS 2016/17) Kap.1.0: Junktoren und Wahrheitsfunktionen 16 / 146 Aussagenlogische Verknüpfungen vs. Boolesche Funktion BEISPIEL. Die 3-stellige Schwellenfunktion s23 : {0, 1}3 → {0, 1} nimmt genau dann den Wert 1 an, wenn mindestens zwei Eingaben den Wert 1 haben, ist also durch folgende Wertetabelle bestimmt: x0 0 0 0 1 0 1 1 1 x1 0 0 1 0 1 0 1 1 x2 0 1 0 0 1 1 0 1 s23 (x0 , x1 , x2 ) 0 0 0 0 1 1 1 1 Man erhält s23 durch die folgende Kombination der Funktionen f∨ und f∧ f∨ (f∨ (f∧ (x0 , x1 ), f∧ (x0 , x2 )), f∧ (x1 , x2 )) und erhält damit eine Darstellung von s23 durch folgenden “Ausdruck” ((A0 ∧ A1 ) ∨ (A0 ∧ A2 )) ∨ (A1 ∧ A2 ). Um zusammengesetzte Aussagen und die hierdurch dargestellten Booleschen Funktionen näher zu untersuchen, führen wir nun die Sprache der Aussagenlogik ein, in der Aussagen durch formal definierte Ausdrücke - den Formeln - wie oben repräsentiert werden. Mathematische Logik (WS 2016/17) Kap.1.0: Junktoren und Wahrheitsfunktionen 17 / 146 Kapitel 1.1 Syntax der Aussagenlogik Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 18 / 146 Übersicht 1.1.1 Die Sprache der Aussagenlogik 1.1.2 Explizite vs. implizite Definitionen 1.1.3 Syntaktische Induktion und Rekursion Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 19 / 146 1.1.1 Die Sprache der Aussagenlogik Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 20 / 146 Die Sprache der Aussagenlogik: Symbole Die Grundzeichen (Symbole) der Sprache der Aussagenlogik (AL) sind: 1 Die Aussagenvariablen (AV): A0 , A1 , A2 , . . . 2 Die Junktoren: I I 3 1-stellig: ¬ (Negation) 2-stellig: ∧ (Konjunktion), ∨ (Disjunktion), → (Implikation) und ↔ (Äquivalenz) Die Klammersymbole: ( und ) Die Menge der Symbole der Sprache von AL bezeichnet man auch als das Alphabet dieser Sprache und bezeichnet dieses mit AAL . (NB: Da es unendlich viele Aussagenvariablen gibt, ist AAL (abzählbar) unendlich.) Endliche Folgen von Symbolen aus einem Alphabet A bezeichnet man auch als endliche Zeichenreihen oder Wörter über dem Alphabet A. Die Menge aller Wörter über dem Alphabet A (einschließlich des leeren Wortes λ) bezeichnet man mit A∗ . Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 21 / 146 Die Sprache der Aussagenlogik: Formeln Die aussagenlogischen Formeln sind spezielle Wörter über dem Alphabet AAL der Aussagenlogik, die wie folgt induktiv definiert sind: INDUKTIVE DEFINITION. Die aussagenlogischen (al.) Formeln sind induktiv definiert durch (F1) Jede Aussagenvariable An (n ≥ 0) ist eine al. Formel. (F2) Ist ϕ eine al. Formel, so ist auch ¬ϕ eine al. Formel. (F3) Sind ϕ1 und ϕ2 al. Formeln, so sind auch (ϕ1 ∧ ϕ2 ), (ϕ1 ∨ ϕ2 ), (ϕ1 → ϕ2 ) und (ϕ1 ↔ ϕ2 ) al. Formeln. Diese Definition ist so zu lesen: Die Menge der al. Formeln ist die kleinste Menge von Wörtern über AAL , die die Wörter aus F(1) (nämlich die Aussagenvariablen) enthält und gegen die “Regeln” (F2) und (F3) abgeschlossen ist. Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 22 / 146 Formeln: Notation Die al. Formeln stellen natürlich mit Hilfe der durch die Junktoren symbolisierten Verknüpfungen gebildete zusammengesetzte Aussagen dar. Auf diese Bedeutung (Semantik) der Formeln werden wir aber erst im nächsten Abschnitt (1.2) eingehen. Hier wollen wir die Formeln zunächst weiter rein formal als Zeichenreihen (d.h. syntaktisch) etwas weiter untersuchen und einige später benötigte Begriffe bereitstellen. NOTATION: A, B, C , . . . ϕ, ψ, χ, ϕi , . . . DEFINITIONEN: stehen für Aussagenvariablen stehen für al. Formeln l(ϕ) := Anzahl der Zeichen in ϕ (Länge von ϕ) lz(ϕ) := Anzahl der Junktoren in ϕ Weiter schreiben wir ϕ ≡ ψ, wenn ϕ und ψ identisch sind, d.h. als Wörter übereinstimmen. Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 23 / 146 Formeln: Beispiele Beispiele al. Formeln sind: 1 ϕ1 :≡ A (Es gilt: l(ϕ1 ) = 1 und lz(ϕ1 ) = 0) 2 ϕ2 :≡ ¬¬¬B (Es gilt: l(ϕ2 ) = 4 und lz(ϕ2 ) = 3) 3 ϕ3 :≡ ((¬A ∨ B) → (A ∧ ¬C )) (Es gilt: l(ϕ3 ) = 15 und lz(ϕ3 ) = 5) Nachweis der Formeleigenschaft für ϕ3 : 1 2 3 4 A, B und C sind al. Formeln nach (F1). Mit (F2) folgt, dass auch ¬A und ¬C Formeln sind. Da also ¬A und B al. Formeln sind, folgt mit (F3), dass (¬A ∨ B) ebenfalls eine al. Formel ist, und analog folgt aus der Formeleigenschaft von A und ¬C , dass (A ∧ ¬C ) eine al. Formel sind. Mit einer weiteren Anwendung von (F3) auf (¬A ∨ B) und (A ∧ ¬C ) folgt, dass ϕ3 eine al. Formel ist. Keine al. Formeln sind z.B. die Wörter A¬, ¬(A), (A¬B), ∨A und (A →. Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 24 / 146 Formeln: Regeln zur Klammerersparnis Zur Verbesserung der Lesbarkeit von al. Formeln erlauben wir das Weglassen “überflüssiger” Klammern: K1 Äußere Klammern dürfen weggelassen werden. Z.B. A ∧ ¬C ≡ (A ∧ ¬C ) K2 ∨ und ∧ binden stärker als → und ↔. Z.B. ¬A ∧ B → C ≡ ((¬A ∧ B) → C ) K3 Bei ∨, ∧ und → darf die “Rechtsklammerung” weggelassen werden. A∨B ∨C A∧B ∧C A→B→C :≡ (A ∨ (B ∨ C )) :≡ (A ∧ (B ∧ C )) :≡ (A → (B → C )) NB: Die durch Weglassen von Klammern erhaltenen Formeln sind keine Formeln im eigentlichen Sinn sondern sind nur abkürzende Schreibweisen für die eigentlichen Formeln und sind implizit stets als die eigentlichen Formeln zu lesen. So gilt z.B. l(¬A ∧ B → C ) := l(((¬A ∧ B) → C )) = 10 Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 25 / 146 Formeln: Induktion und Rekursion Da die Formeln induktiv definiert sind, lassen sich Eigenschaften der Formeln induktiv beweisen und Funktionen auf den Formeln entsprechend rekursiv definieren. Bevor wir dies im Einzelnen zeigen werden, gehen wir im nächsten Abschnitt kurz auf das Induktionsprinzip für die natürlichen Zahlen ein, das wir dann anwenden werden. Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 26 / 146 1.1.2 Explizite vs. Implizite Definitionen: Das Induktionsprinzip für die natürlichen Zahlen Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 27 / 146 Explizite Definitionen vs. implizite Definitionen (1) Bei einer expliziten Definition wird ein neues Konzept mit Hilfe bekannter Konzepte definiert. BEISPIEL. Die Definition der Primzahlen lässt sich auf den Begriff der Teilbarkeit und die auf den natürlichen Zahlen definierte Ordnung zurückführen: x ist Primzahl :⇔ x ≥ 2 und die einzigen Teiler von x sind 1 und x (Hierbei kommt also der links stehende neudefinierte Begriff nicht auf der rechten Seite vor, wo sich die definierende Eigenschaft des neuen Begriffs findet.) Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 28 / 146 Explizite Definitionen vs. implizite Definitionen (2) Bei einer impliziten (oder rekursiven) Definition eines neuen Konzepts darf dagegen (zusätzlich) auch auf das neue Konzept selbst zurückgegriffen werden. BEISPIEL. Die Summe von zwei natürlichen Zahlen wird durch folgende Rekursionsgleichungen festgelegt, wobei S(x) = x + 1 der Nachfolger von x ist: x +0 := x x + S(y ) := S(x + y ) Hierbei muss sichergestellt werden, dass die so gegebene Definition nicht zirkelhaft ist! Im gegebenen Beispiel folgt das aus dem Induktionsprinzip für die natürlichen Zahlen. Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 29 / 146 Induktionsprinzip auf N: Vollständige Induktion Die natürlichen Zahlen erfüllen das Prinzip der vollständigen Induktion: VOLLSTÄNDIGE INDUKTION (VI): Ist E eine Eigenschaft von natürlichen Zahlen, für die (i) E (0) (lies: E trifft auf 0 zu) und (ii) Für jede Zahl n, für die E (n) gilt, gilt auch E (n + 1). gilt, so trifft E auf alle natürlichen Zahlen zu. (Das Induktionsprinzip VI ist eines der Peano-Axiome, durch die die natürlichen Zahlen definiert sind. Wir werden hierauf im späteren Verlauf der Vorlesung noch zurückkommen.) Aus VI folgt mit der Injektivität von S, dass jede von 0 verschiedene Zahl der Nachfolger S(n) = n + 1 einer eindeutig bestimmten Zahl n ist. Hieraus ergibt sich, dass die auf der letzten Folie gegebene rekursive Beschreibung der Addition vollständig und eindeutig ist, also + durch die gegebenen Rekursionsgleichungen wohldefiniert ist. Für Anwendungen des Induktionsprinzip ist es nützlich, folgende äquivalente Charakterisierungen der vollständigen Induktion zu betrachten: Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 30 / 146 Varianten der vollständigen Induktion VERALLGEMEINERTE VOLLSTÄNDIGE INDUKTION (VI’): Ist E eine Eigenschaft von natürlichen Zahlen, sodass für alle natürlichen Zahlen n (ii’) Gilt E (m) für alle m < n, so gilt auch E (n). gilt, so trifft E auf alle natürlichen Zahlen zu. MINIMUMSPRINZIP (MP): Gibt es eine natürliche Zahl mit Eigenschaft E , so gibt es eine kleinste natürliche Zahl mit Eigenschaft E . LEMMA. Die Prinzipien der vollständigen Induktion und der verallgemeinerten vollständigen Induktion sowie das Minimumsprinzip sind äquivalent: VI ⇔ VI’ ⇔ MP BEWEIS: s. Übungen Da VI in den natürlichen Zahl gilt, gelten also auch VI’ und MP ebenfalls. Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 31 / 146 Beweise durch vollständige Induktion In einem Beweis durch vollständige Induktion weist man eine Aussage für alle natürlichen Zahlen dadurch nach, dass man diese zunächst für n = 0 nachweist (Induktionsanfang) und man dann - unter der Annahme, dass die Aussage für n gilt - diese für n + 1 nachweist (Induktionsschritt). Wegen VI ist dieses Vorgehen korrekt. Entsprechend weist man in einem Beweis einer Aussage durch verallgemeinerte vollständige Induktion die Aussage für beliebiges gegebenes n nach, wobei man davon ausgeht, dass die Aussage auf alle kleineren m zutrifft. Die Korrektheit folgt hier aus VI’. Führen wir einen Beweis durch (erweiterte) vollständige Induktion, so kennzeichnen wir dies durch Ind(n). Wir kommen nun zur Aussagenlogik zurück und formulieren ein Induktionsprinzip für Formeln, dessen Korrektheit wir mit Hilfe der Induktionsprinzipien VI und VI’ für die natürlichen Zahlen nachweisen. Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 32 / 146 1.1.3 Syntaktische Induktion und Rekursion Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 33 / 146 Induktion über den Formelaufbau (syntaktische Induktion) Aus dem Induktionsprinzip VI’ für die natürlichen Zahlen lässt sich folgendes Induktionsprinzip für al. Formeln herleiten. LEMMA (PRINZIP DER SYNTAKTISCHEN INDUKTION). Sei E eine Eigenschaft von al. Formeln, für die gilt: (i) E trifft auf jede Aussagenvariable A zu. (ii) Trifft E auf eine al. Formel ϕ zu, so auch auf ¬ϕ. (iii) Trifft E auf al. Formeln ϕ1 und ϕ2 zu, so auch auf (ϕ1 ∗ ϕ2 ) für ∗ = ∧, ∨, →, ↔. Dann trifft E auf alle al. Formeln zu. Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 34 / 146 Beweis des Lemmas über die syntaktische Induktion (1) Zum Beweis des Lemmas sei E eine Eigenschaft von al. Formeln, für die (i) - (iii) gelte. Um zu zeigen, dass E auf alle al. Formeln ϕ zutrifft, definieren wir die folgende Eigenschaft E 0 (n) :⇔ für alle al. Formeln ϕ der Länge n gilt E (ϕ) von natürlichen Zahlen und zeigen durch verallgemeinerte vollständige Induktion, dass E 0 (n) für alle natürlichen Zahlen n gilt. Offensichtlich folgt hieraus dann, dass E auf alle al. Formeln zutrifft. Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 35 / 146 Beweis des Lemmas über die syntaktische Induktion (2) Nachweis von E 0 (n) durch Ind(n) (genauer: VI’): Nach Induktionsvoraussetzung dürfen wir E 0 (m) für alle m < n annehmen. Nach Definition von E 0 bedeutet dies aber gerade, dass E auf alle Formeln der Länge < n zutrifft. Nach Definition von E 0 genügt es für eine gegebene al. Formel ϕ der Länge n zu zeigen, dass E (ϕ) gilt. Hierzu unterscheiden wir die folgenden Fälle gemäß der induktiven Definition der Formeln: I I I ϕ ≡ A: Dann gilt E (ϕ), da nach (i) E (A) für alle AV A gilt. ϕ ≡ ¬ψ: Dann gilt l(ψ) = l(ϕ) − 1 = n − 1 < n. Nach I.V. gilt daher E (ψ). Da (ii) von E erfüllt wird, folgt hieraus aber E (¬ψ), d.h. E (ϕ). ϕ ≡ (ϕ1 ∗ ϕ2 ) (∗ = ∧, ∨, →, ↔): Wegen l(ϕ1 ), l(ϕ2 ) < l(ϕ) = n folgt wiederum aus der I.V., dass E (ϕ1 ) und E (ϕ2 ) gelten. Die Behauptung folgt mit (iii). (Damit ist das Lemma bewiesen.) Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 36 / 146 Beweise durch syntaktische Induktion Das Lemma über das Prinzip der syntaktischen Induktion besagt, dass wir eine Eigenschaft E für alle al. Formeln dadurch nachweisen können, dass wir zeigen, dass E die dort aufgelisteten Anforderungen (i) - (iii) erfüllt. Wir nennen solch einen Beweis einen Beweis durch Induktion nach dem Formelaufbau oder Beweis durch syntaktische Induktion und schreiben kurz Ind(ϕ). Wie der Beweis des Lemmas zeigt, ist ein Beweis durch syntaktische Induktion (Ind(ϕ)) ähnlich zu einem Beweis durch verallgemeinerte vollständige Induktion nach der Formellänge, wofür wir im Folgenden kurz Ind(l(ϕ)) schreiben werden. Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 37 / 146 Beispiel BEHAUPTUNG. Für jede al. Formel ϕ gilt ]( (ϕ) = ]) (ϕ), wobei ]a (ϕ) die Anzahl der Vorkommen des Zeichens a in der Formel ϕ bezeichnet. BEWEIS durch Ind(ϕ): ϕ ≡ A: ]( (A) = ]) (A) = 0 ϕ ≡ ¬ψ: Nach I.V. gilt ]( (ψ) = ]) (ψ). Hieraus folgt: ]( (ϕ) = ]( (¬ψ) = ]( (ψ) = ]) (ψ) = ]) (¬ψ) = ]) (ϕ) ϕ ≡ (ϕ1 ∗ ϕ2 ) wobei ∗ = ∧, ∨, →, ↔: Nach I.V. gilt ]( (ϕi ) = ]) (ϕi ) für i = 1, 2. Also: ]( (ϕ) Mathematische Logik (WS 2016/17) = = = = = ]( ((ϕ1 ∗ ϕ2 )) ]( (ϕ1 ) + ]( (ϕ2 ) + 1 ]) (ϕ1 ) + ]) (ϕ2 ) + 1 ]) ((ϕ1 ∗ ϕ2 )) ]) (ϕ) Kapitel 1.1: Syntax der Aussagenlogik (nach I.V.) 38 / 146 Rekursive Definitionen: Beispiele (1) Wir können durch Induktion nach dem Formelaufbau auch Funktionen auf den al. Formeln definieren. Wir sprechen hier dann auch von Rekursion an Stelle von Induktion, also von syntaktischer Rekursion oder Rekursion nach dem Formelaufbau. Wir betrachten zunächst einige Beipiele (wobei stets ∗ = ∨, ∧, →, ↔ gelte). 1 Die von uns bereits explizit definierten Funktionen l(ϕ) (Länge von ϕ) und lz(ϕ) (Anzahl der logischen Zeichen in ϕ) lassen sich alternativ durch Ind(ϕ) wie folgt definieren: I I I I I I l(A) = 1 l(¬ψ) = l(ψ) + 1 l((ϕ1 ∗ ϕ2 )) = l(ϕ1 ) + l(ϕ2 ) + 3 lz(A) = 0 lz(¬ψ) = l(ψ) + 1 lz((ϕ1 ∗ ϕ2 )) = lz(ϕ1 ) + lz(ϕ2 ) + 1 Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 39 / 146 Rekursive Definitionen: Beispiele (2) 3 Rekursive Definition des Rangs ρ(ϕ) einer al. Formel ϕ (= Schachtelungstiefe der Junktoren in ϕ): I I I ρ(A) = 0 ρ(¬ψ) = ρ(ψ) + 1 ρ((ϕ1 ∗ ϕ2 )) = max(ρ(ϕ1 ), ρ(ϕ2 )) + 1 Beispiel hierzu: Der Rang von ϕ ≡ A ∨ ¬B ↔ A ∧ B ∧ C ist 3. Nämlich: I ρ(A) = ρ(B) = ρ(C ) = 0 I ρ(¬B) = ρ(B) + 1 = 0 + 1 = 1 und ρ(B ∧ C ) = max(ρ(B), ρ(C )) + 1 = max(0, 0) + 1 = 1 I ρ(A ∨ ¬B) = max(ρ(A), ρ(¬B)) + 1 = max(0, 1) + 1 = 2 und ρ(A ∧ B ∧ C ) = ρ((A ∧ (B ∧ C ))) = max(ρ(A), ρ(B ∧ C )) + 1 = max(0, 1) + 1 = 2 I ρ(ϕ) = max(ρ(A ∨ ¬B), ρ(A ∧ B ∧ C )) + 1 = max(2, 2) + 1 = 3 Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 40 / 146 Rekursive Definitionen: Beispiele (3) 4 Der Rang ρ(ϕ) einer al. Formel ϕ ist gerade die Tiefe (d.h. die maximale Pfadlänge) des Strukturbaums von ϕ. Dabei ist der Strukturbaum Tϕ von ϕ rekursiv wie folgt definiert: • • • ¬ ∗ A 4 Tψ TA T¬ψ 4 Tϕ 1 4 Tϕ2 Tϕ1 ∗ϕ2 Wie sieht der Strukturbaum Tϕ der Formel ϕ ≡ A ∨ ¬B ↔ A ∧ B ∧ C aus? Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 41 / 146 Rekursive Definitionen: Beispiele (4) 4 Die Menge V (ϕ) der in ϕ vorkommenden Aussagenvariablen ist rekursiv definiert durch: I V (A) = {A} I V (¬ψ) = V (ψ) I V ((ϕ ∗ ϕ )) = V (ϕ ) ∪ V (ϕ ) 1 2 1 2 5 Die Menge TF (ϕ) der Teilformeln von ϕ ist rekursiv definiert durch: I TF (A) = {A} I TF (¬ψ) = TF (ψ) ∪ {¬ψ} I TF ((ϕ1 ∗ ϕ2 )) = TF (ϕ1 ) ∪ TF (ϕ2 ) ∪ {(ϕ1 ∗ ϕ2 )} NB: Jede Formel ϕ ist eine Teilformel von sich selbst. Eine Teilformel ψ ist eine echte Teilformel von ϕ, wenn ψ eine Teilformel von ϕ ist und ψ 6≡ ϕ gilt. (Die echten Teilformeln von ¬ψ sind also die Teilformeln von ψ und die echten Teilformeln von (ϕ1 ∗ ϕ2 ) sind also die Teilformeln von ϕ1 und die Teilformeln von ϕ2 .) Es gilt z.B. für ϕ ≡ A ∧ ¬¬B ∧ C : TF (ϕ) = {A, B, C , ¬B, ¬¬B, ¬¬B ∧ C , ϕ} (man beachte die implizite Rechtsklammerung: ϕ ≡ (A ∧ (¬¬B ∧ C ))) Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 42 / 146 Rekursive Definitionen: Korrektheit Um zu zeigen, dass eine durch syntaktische Rekursion definierte Funktion f : FAL → X wohldefiniert ist, muss man zeigen, dass die bei der Definition benutzte Fallunterscheidung erschöpfend (⇒ f auf allen Formeln definiert) und eindeutig (⇒ Wert von f auf jeder Formel eindeutig bestimmt) ist. Ersteres ergibt sich unmittelbar aus der induktiven Definition der al. Formeln. Letzteres folgt aus dem EINDEUTIGKEITSLEMMA. Sei ϕ eine al. Formel. Dann ist ϕ entweder (I) eine (eindeutig bestimmte) Aussagenvariable (= atomare Formel) oder (II) eine Negationsformel ϕ ≡ ¬ψ für eindeutig bestimmtes ψ oder (III) eine Formel der Gestalt ϕ ≡ ϕ1 ∗ ϕ1 für eindeutig bestimmtes ∗ = ∨, ∧, →, ↔ und eindeutig bestimmte Formeln ϕ1 und ϕ2 . Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 43 / 146 Beweis des Eindeutigkeitslemmas: Hilfssatz Zum Beweis des Eindeutigkeitslemmas beweisen wir zunächst folgenden HILFSSATZ. Sei ϕ eine al. Formel und sei w ein endliche Zeichenfolge, sodass die Verkettung ϕw von ϕ und w wiederum eine al. Formel ist. Dann ist w die leere Zeichenfolge λ (d.h. ϕ ≡ ϕw ). Der Beweis des Hilfssatzes erfolgt durch Ind(l(ϕ)): Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 44 / 146 Beweis des Eindeutigkeitslemmas: Beweise des HS durch Ind(l(ϕ)) 1. ϕ ≡ A: Dann ist nach Annahme ϕw ≡ Aw eine al. Formel. Die einzigen al. Formeln, deren erstes Zeichen eine Aussagenvariable ist, sind jedoch die Aussagenvariablen selbst. Es muss daher Aw ≡ A - also w = λ gelten. 2. ϕ ≡ ¬ψ: Dann ist nach Annahme ϕw ≡ ¬ψw eine al. Formel. Da eine Zeichenreihe ¬v nur dann eine Formel ist, wenn auch v eine al. Formel ist, folgt dass ψw eine al. Formel ist. Nach I.V. gilt dann aber w = λ. Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 45 / 146 Beweis des Eindeutigkeitslemmas: Beweise des HS durch Ind(ϕ) (Forts.) 3. ϕ ≡ (ϕ1 ∗ ϕ2 ) (wobei ∗ ∈ {∧, ∨, →, ↔}): Dann ist nach Annahme ϕw ≡ (ϕ1 ∗ ϕ2 )w eine al. Formel. Der Nachweis von w = λ ist indirekt: Widerspruchsannahme: w 6= λ. I Da jede mit ( beginnende Formel gemäß (F3) gebildet ist, also mit ) endet, und da nach Annahme (ϕ1 ∗ ϕ2 )w eine Formel ist, muss die nichtleere Zeichereihe w die Gestalt w ≡ ŵ ) haben: ϕw ≡ (ϕ1 ∗ ϕ2 )ŵ ) I Da ϕw eine al. Formel ist und da jede mit ( beginnende Formel vom Typ (F3) ist, muss es einen Junktor ˆ ∗ und al. Formeln ϕ̂1 und ϕ̂2 geben mit (∗) (ϕ1 ∗ ϕ2 )ŵ ) ≡ ϕw ≡ (ϕ̂1 ˆ∗ ϕ̂2 ) (i) Es gilt dann ϕ1 ≡ ϕ̂1 , da es wegen (∗) ein Wort w̃ mit ϕ1 ≡ ϕ̂1 w̃ oder ϕ1 w̃ ≡ ϕ̂1 geben muss; nach I.V. (NB: l(ϕ1 ), l(ϕ̂1 ) < l(ϕ)) gilt dann aber w̃ = λ. (ii) Aus (∗) und ϕ1 ≡ ϕ̂1 folgt unmittelbar: ∗ ≡ ˆ ∗. (iii) Aus (∗) und ϕ1 ∗ ≡ ϕ̂1 ˆ ∗ ergibt sich schließlich ϕ2 ≡ ϕ̂2 wie in (i). Also: ϕ1 ∗ ϕ2 ≡ ϕ̂1 ˆ ∗ ϕ̂2 im Widerspruch zu (∗). (Ende Beweis HS) Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 46 / 146 Beweis des Eindeutigkeitslemmas: Beweis des Lemmas mit Hilfe des HS Offensichtlich hat ϕ genau eine der Gestalten (F1), (F2), (F3), da nach induktiver Definition der al. Formeln jede Formel eine dieser Gestalten hat und da sich die Formeln dieser Gestalten durch den ersten Buchstaben Ai bzw. ¬ bzw. ( unterscheiden. Hat ϕ die Gestalt (F1) bzw. (F2), so ist die Aussagenvariable Ai mit ϕ ≡ Ai bzw. die Formel ψ mit ϕ ≡ ¬ψ offensichtlich durch ϕ eindeutig bestimmt. Es genügt also zu zeigen, dass für ϕ vom Typ (F3) der Junktor ∗ und die Teilformeln ϕ1 und ϕ2 eindeutig bestimmt sind. Gelte also (∗) ϕ ≡ (ϕ1 ∗ ϕ2 ) ≡ (ϕ̂1 ˆ ∗ ϕ̂2 ). Zu zeigen: ∗ = ˆ ∗ und ϕi ≡ ϕ̂i für i = 1, 2. (i) ϕ1 ≡ ϕ̂1 : Wegen (∗) gibt es ein Wort w mit ϕ1 ≡ ϕ̂1 w oder ϕ1 w ≡ ϕ̂1 . Nach dem Hilfssatz muss w aber das leere Wort sein. (ii) ∗ ≡ ˆ ∗: Dies folgt unmittelbar aus (i) und (∗). (iii) ϕ2 ≡ ϕ̂2 : Wegen (∗), (i) und (ii) gibt es ein Wort w̃ mit ϕ2 ≡ ϕ̂2 w̃ oder ϕ2 w̃ ≡ ϕ̂2 . Nach dem Hilfssatz muss w̃ aber das leere Wort sein. (Ende Beweis Eindeutigkeitslemma) Mathematische Logik (WS 2016/17) Kapitel 1.1: Syntax der Aussagenlogik 47 / 146 Kapitel 1.2 Semantik der Aussagenlogik Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 48 / 146 Übersicht 1.2.1 Interpretationen der al. Formeln 1.2.2 Zentrale semantische Begriffe 1.2.3 Der semantische Folgerungsbegriff 1.2.4 Al. Formeln als Darstellungen Boolescher Funktionen Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 49 / 146 Vorgehensweise Wir interpretieren nun Formeln als (zusammengesetze) Aussagen. Dabei werden die Aussagenvariablen als atomare Aussagen aufgefasst und die Junktoren als die durch diese bezeichneten Verknüpfungen interpretiert. Hierbei gehen wir davon aus, dass jede der atomaren Aussagen entweder wahr oder falsch ist (“tertium non datur”). Wir zeigen dann, wie sich der Wahrheitswert einer al. Formel ϕ aus den Wahrheitswerten der in der Formel vorkommenden Aussagenvariablen eindeutig bestimmen lässt (Kapitel 1.2.1). Hierzu führen wir zunächst (Variablen-)Belegungen B ein, die den Aussagenvariablen Wahrheitswerte (genauer: die entsprechenden Bits) zuordnen. Dann definieren wir induktiv nach dem Formelaufbau korrespondierende Bewertungen B̂ der al. Formeln, wobei wir - wie bereits gesagt - die Junktoren durch die bereits in Kapitel 1.0 eingeführten zugehörigen Wahrheitsfunktionen interpretieren. Auf diese Weise ordnet jede Belegung B, die allen Variablen in einer Formel ϕ einen Wahrheitswert zuordnet, der Formel ϕ einen eindeutig bestimmten Wahrheitwert - nämlich B̂(ϕ) - zu, wobei dieser Wert nur von der Belegung der in ϕ vorkommenden Variablen abhängt (Koinzidenzlemma). Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 50 / 146 Vorgehensweise Wir führen dann die zentralen semantischen Begriffe der Logik ein wie Allgemeingültigkeit und Erfüllbarkeit von Formeln sowie den (semantischen) Folgerungs- und Äquivalenzbegriff für Formeln (Kapitel 1.2.2), und erweitern diese Begriffe auf Formelmengen (Kapitel 1.2.3). Schließlich beobachten wir, dass man al. Formeln als Darstellungen Boolescher Funktionen auffassen kann (Kapitel 1.2.4). (In Kapitel 1.3 werden wir dann zeigen, dass sich jede Boolesche Funktion derart darstellen lässt.) Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 51 / 146 1.2.1 Interpretationen der al. Formeln Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 52 / 146 Belegungen der Aussagenvariablen Sei im Folgenden V eine nichtleere (endliche oder unendliche) Menge von Aussagenvariablen und sei F (V ) = {ϕ : V (ϕ) ⊆ V } die Menge der al. Formeln, die nur Variablen aus V enthalten. DEFINITION. Eine Belegung B der Variablenmenge V ist eine Abbildung B : V → {0, 1} (wobei wir die Bits 0 und 1 als die Wahrheitswerte F und W interpretieren). Wir fassen also Aussagenvariablen A als atomare Aussagen auf, und Belegungen ordnen den atomarer Aussagen einer gegebenen Menge solcher Aussagen jeweils einen eindeutig bestimmten Wahrheitswert zu. Mit B(V ) bezeichnen wir die Menge aller Belegungen der Variablenmenge V . NB: Für endliches V gibt es 2|V | verschiedene Variablenbelegungen (wobei |V | die Mächtigkeit von V - d.h. die Anzahl der Elemente von V - ist): |B(V )| = 2|V | Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 53 / 146 Bewertungen der al. Formeln Jede Belegung B einer Variablenmenge V induziert eine zugehörige Bewertung B̂ der al. Formeln in F (V ). DEFINITION. Die zu der Belegung B : V → {0, 1} gehörende Bewertung B̂ der aussagenlogischen Formeln in F (V ) ist induktiv wie folgt definiert (Ind(ϕ)): 1. ϕ ≡ A: B̂(A) := B(A) 2. ϕ ≡ ¬ψ: B̂(¬ψ) := f¬ (B̂(ψ)) 3. ϕ ≡ (ϕ1 ∗ ϕ2 ): B̂(ϕ1 ∗ ϕ2 ) := f∗ (B̂(ϕ1 ), B̂(ϕ2 )) Hierbei ist f∗ die Boolesche Funktion, die den Junktor ∗ interpretiert (s. Kapitel 1.0). Es gilt also: B̂(¬ψ) B̂(ϕ1 ∨ ϕ2 ) B̂(ϕ1 ∧ ϕ2 ) B̂(ϕ1 → ϕ2 ) = 1 B̂(ϕ1 ↔ ϕ2 ) = 1 Mathematische Logik (WS 2016/17) = 1 − B̂(ψ) = max(B̂(ϕ1 ), B̂(ϕ2 )) = min(B̂(ϕ1 ), B̂(ϕ2 )) ⇔ B̂(ϕ1 ) ≤ B̂(ϕ2 ) ⇔ B̂(ϕ1 ) = B̂(ϕ2 ) Kapitel 1.2: Semantik der Aussagenlogik 54 / 146 Bewertungen der al. Formeln: Notationen und Beispiel NOTATION. Im Folgenden bezeichnen wir die von einer Belegung B induzierte Bewertung B̂ häufig einfachheitshalber ebenfalls mit B. Wir sagen, dass die Belegung B die Formel ϕ wahr macht (falsch macht), falls B(ϕ) = 1 (B(ϕ) = 0) gilt. BEISPIEL. Sei V = {A, B, C , D} und sei die Belegung B : V → {0, 1} durch B(A) = B(B) = B(D) = 1 & B(C ) = 0 gegeben und sei ϕ die Formel ϕ ≡ ¬(A ↔ C ) ∧ ¬D. Dann gilt: B(ϕ) = 0. Man kann dies zeigen, indem man induktiv die Wahrheitswerte der Teilformeln ψ von ϕ bezüglich B bestimmt: ψ B(ψ) A 1 B 1 C 0 D 1 (A ↔ C ) ¬D 0 0 ¬(A ↔ C ) 1 ϕ 0 Dies entspricht gerade dem Vorgehen, dass man den Knoten im Strukturbaum (die für die entsprechenden Teilformeln stehen) von den Blättern aus rekursiv Wahrheitswerte zuordnet, wobei ein mit A markiertes Blatt den Wert B(A) erhält und ein mit ¬ (bzw. ∗) markierter innerer Knoten, dessen Sohn den Wert i hat (bzw. dessen Söhne die Werte i0 und i1 haben) der Wert f¬ (i) (bzw. f∗ (i0 , i1 )) zugeordnet wird. Der Wert der Wurzel ist dann gerade B(ϕ). Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 55 / 146 Koinzidenzlemma Betrachten wir die Bewertung B(ϕ) einer Formel ϕ bzgl. einer Belegung B : V → {0, 1}, wobei V (ϕ) echt in V enthalten ist, so hängt der Wert von B(ϕ) nur von der Belegung B(A) der in ϕ vorkommenden Variablen A ab: KOINZIDENZLEMMA. Seien Bi : Vi → {0, 1} (i = 0, 1) Belegungen, sei ϕ eine al. Formel deren Aussagenvariablen in V0 und V1 liegen, und stimmen B0 und B1 auf den in ϕ vorkommenden Variablen überein (d.h. V (ϕ) ⊆ V0 ∩ V1 und B0 V (ϕ) = B1 V (ϕ)). Dann gilt B̂0 (ϕ) = B̂1 (ϕ). Beweis durch Ind(ϕ): 1. ϕ ≡ A: Dann gilt wegen A ∈ V (ϕ) nach Annahme B0 (A) = B1 (A). Also: B̂0 (ϕ) = B̂0 (A) = B0 (A) = B1 (A) = B̂1 (A) = B̂1 (ϕ) 2. ϕ ≡ ¬ψ: Dann gilt nach I.V. B̂0 (ψ) = B̂1 (ψ). Also: B̂0 (ϕ) = 1 − B̂0 (ψ) = 1 − B̂1 (ψ) = B̂1 (ϕ) 3. ϕ ≡ ϕ1 ∗ ϕ2 : Folgt analog aus der I.V. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 56 / 146 1.2.2 Zentrale semantische Begriffe Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 57 / 146 Zentrale semantische Begriffe: Überblick Jede Belegung B der Variablen einer al. Formel ϕ führt zu einer Bewertung B(ϕ) von ϕ, gibt also eine mögliche Interpretation von ϕ. Wir führen hierauf nun die Begriffe der Allgemeingültigkeit, Erfüllbarkeit und Widersprüchlichkeit von al. Formeln zurück: I I I Die Formel ϕ ist allgemeingültig, wenn alle Belegungen ihrer Variablen die Formel wahrmachen. Die Formel ϕ ist erfüllbar, wenn zumindest eine der Belegungen ihrer Variablen die Formel wahrmacht. Die Formel ϕ ist widerspüchlich, wenn keine Belegung ihrer Variablen die Formel wahrmacht. Weiter definieren wir die (semantische) Implikation (Folgerung) und Äquivalenz für Formelpaare. Dabei impliziert eine Formel ϕ eine Formel ψ (oder: folgt ψ aus ϕ), wenn jede Belegung, die ϕ wahrmacht auch ψ wahrmacht, und ϕ uns ψ sind äquivalent, wenn sie von denselben Belegungen wahrgemacht werden, also bzgl. aller Interpretationen denselben Wahrheitswert haben. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 58 / 146 Zentrale semantische Begriffe: Überblick (Forts.) Wir werden dann ausführlich auf grundlegende Eigenschaften dieser Konzepte eingehen und wichtige Beispiele geben. In Kapitel 1.2.3 werden wir die Begriffe der Erfüllbarkeit und der semantischen Folgerung (d.h. Implikation) dann noch auf Formelmengen ausdehnen. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 59 / 146 Definition erster zentraler semantischer Konzepte der AL DEFINITION 1. Sei ϕ eine al. Formel. (i) ϕ ist allgemeingültig (oder logisch wahr oder eine Tautologie; kurz: ag[ϕ]), falls jede Belegung der Variablen in ϕ die Formel ϕ wahrmacht, d.h. falls Für alle Belegungen B : V (ϕ) → {0, 1} gilt B(ϕ) = 1. gilt. (ii) ϕ ist erfüllbar (kurz: erfb[ϕ]), falls es zumindest eine Belegung der Variablen in ϕ gibt, die die Formel ϕ wahrmacht, d.h. falls Es gibt (zumindest) eine Belegung B : V (ϕ) → {0, 1} mit B(ϕ) = 1. gilt. (iii) ϕ ist kontradiktorisch(oder widersprüchlich; kurz: kd[ϕ]), falls es keine Belegung der Variablen in ϕ gibt, die die Formel ϕ wahrmacht, d.h. falls Für alle Belegungen B : V (ϕ) → {0, 1} gilt B(ϕ) = 0. gilt. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 60 / 146 Definition erster zentraler semantischer Konzepte der AL Anschaulich: Die durch eine allgemeingültige Formel ϕ dargestellten Aussagen sind immer wahr - egal welche ihrer atomaren Aussagen wahr oder falsch sind. Entsprechend sind die durch eine kontradiktorische Formel ϕ dargestellten Aussagen immer falsch - egal welche ihrer atomaren Aussagen wahr oder falsch sind. Ist eine Formel ϕ erfüllbar, so ist zumindest eine der dargestellten Aussagen, deren atomare Aussagen geeignet gewählt sind, wahr. Es ist aber möglich, dass bei anderer Wahl der vorkommenden atomaren Aussagen, die Aussage falsch wird. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 61 / 146 Beispiele von Tautologien Wir geben nun eine Reihe von Tautologien an, die häufig verwendeten logischen Gesetzen entsprechen: LEMMA 1. Die folgenden al. Formeln sind Tautologien: (i) A ∨ ¬A (Tertium non datur) (ii) A → A (Selbstimplikation) (iii) A → A ∨ B (Hintere Abschwächung) (iv) A ∧ B → A (Vordere Abschwächung) (v) (A → B) ∧ (B → C ) → (A → C ) (Kettenregel) (vi) (A ∨ B) ∧ (A → C ) ∧ (B → C ) → C (Gesetz der Fallunterscheidung) (vii) (A → B) ↔ (¬B → ¬A) (Kontraposition) NB Die hier zusammengefassten logischen Prinzipien führen zu entsprechenden Beweistechniken (z.B. “indirekte Beweise” (i), “Beweise durch Fallunterscheidung” (vi) und “Kontrapositions-Beweise” (vii)). Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 62 / 146 Beispiele von Tautologien: Beweis von Lemma 1 Zum Nachweis, dass eine Formel ϕ eine Tautologie ist, zeigt man, dass jede Belegung B von V (ϕ) die Formel ϕ wahrmacht. Hierzu berechnet man induktiv die Werte B(ψ) für alle (oder für geeignete) Teilformeln ψ von ϕ (wobei für die vorkommenden Variablen A der Wert von B(A) gerade durch die Belegung festgelegt ist). Wir führen dies für die Formel ϕ ≡ (A → B) ∧ (B → C ) → (A → C ) aus Teil (v) exemplarisch aus, wobei in der folgenden Tabelle die einzelnen Zeilen den möglichen Variablenbelegungen entsprechen und wir ψ :≡ (A → B) ∧ (B → C ) setzen: B(A) B(B) B(C ) 0 0 0 0 0 1 0 1 0 1 0 0 0 1 1 1 0 1 1 1 0 1 1 1 Mathematische Logik (WS 2016/17) B(A → B) B(B → C ) B(A → C ) 1 1 1 1 1 1 1 0 1 0 1 0 1 1 1 0 1 1 1 0 0 1 1 1 Kapitel 1.2: Semantik der Aussagenlogik B(ψ) 1 1 0 0 1 0 0 1 B(ϕ) 1 1 1 1 1 1 1 1 63 / 146 Zusammenhänge zwischen ag, erfb und kd Die Begriffe der Allgemeingültigkeit, der Erfüllbarkeit und der Widersprüchlichkeit hängen wie folgt zusammen: LEMMA 2. (i) Ist ϕ allgemeingültig, so ist ϕ auch erfüllbar: ag[ϕ] ⇒ erfb[ϕ] Die Umkehrung gilt jedoch i.a. nicht. (ii) ϕ ist genau dann allgemeingültig, wenn ¬ϕ kontradiktorisch ist: ag[ϕ] ⇔ kd[¬ϕ] (iii) ϕ ist genau dann erfüllbar, wenn ϕ nicht kontradiktorisch ist: erfb[ϕ] ⇔ nicht kd[ϕ] Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 64 / 146 Zusammenhänge zwischen ag, erfb und kd: Beweis von Lemma 2 Der positive Teil der Aussage (i) und die Aussage (iii) folgen direkt aus Definition 1. Dass in (i) die Umkehrung nicht gilt, zeigt das Beispiel der atomaren Formel ϕ ≡ A. Diese ist erfüllbar, da es die Belegung B(A) = 1 gibt, die ϕ wahrmacht. ϕ ist aber nicht allgemeingültig, da die Belegung B 0 (A) = 0 die Formel ϕ falsch macht. Behauptung (ii) folgt unmittelbar aus Definition 1 und der Definition der Bewertungen: Wegen V (ϕ) = V (¬ϕ) genügt es zu beobachten, dass B(ϕ) = 1 ⇔ B(¬ϕ) = 0 für jede Belegung B : V (ϕ) → {0, 1} gilt. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 65 / 146 Allgemeingültigkeit und Erfüllbarkeit von Disjunktionen und Konjunktionen LEMMA 3. (i) Eine Konjunktion ϕ ∧ ψ ist genau dann allgemeingültig, wenn die beiden Konjunktionsglieder ϕ und ψ allgemeingültig sind: ag[ϕ ∧ ψ] ⇔ ag[ϕ] und ag[ψ] (ii) Ist zumindest eine der Formeln ϕ und ψ allgemeingültig, so auch deren Disjunktion ϕ ∨ ψ: ag[ϕ] oder ag[ψ] ⇒ ag[ϕ ∨ ψ] Die Umkehrung gilt jedoch i.a. nicht. (iii) Eine Disjunktion ϕ ∨ ψ ist genau dann erfüllbar, wenn zumindest eines der Disjunktionsglieder ϕ und ψ erfüllbar ist: erfb[ϕ ∨ ψ] ⇔ erfb[ϕ] oder erfb[ψ] (iv) Ist die Konjunktion ϕ ∧ ψ erfüllbar, so sind auch deren Konjuktionsglieder ϕ und ψ erfüllbar: erfb[ϕ ∧ ψ] ⇒ erfb[ϕ] und erfb[ψ] Die Umkehrung gilt jedoch i.a. nicht. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 66 / 146 Allgemeingültigkeit und Erfüllbarkeit von Disjunktionen und Konjunktionen: Beweis von Lemma 3 Da die Beweise der einzelnen Teile sehr ähnlich sind, beweisen wir nur Teil (ii): ag[ϕ] oder ag[ψ] ⇒ Für alle B : V (ϕ) → {0, 1} gilt B(ϕ) = 1 oder Für alle B : V (ψ) → {0, 1} gilt B(ψ) = 1 (Definition von ag) ⇒ Für alle B : V (ϕ ∨ ψ) → {0, 1} gilt B(ϕ) = 1 oder Für alle B : V (ϕ ∨ ψ) → {0, 1} gilt B(ψ) = 1 (Koinzidenzlemma) ⇒ Für alle B : V (ϕ ∨ ψ) → {0, 1} gilt B(ϕ) = 1 oder B(ψ) = 1 (Trivial) (Weiter auf der nächsten Folie) Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 67 / 146 Allgemeingültigkeit und Erfüllbarkeit von Disjunktionen und Konjunktionen: Beweis von Lemma 2 (Forts.) ⇒ Für alle B : V (ϕ ∨ ψ) → {0, 1} gilt B(ϕ ∨ ψ) = 1 (Induktive Definition der Bewertungen) ⇒ ag[ϕ ∨ ψ] (Definition von ag) In der obigen Folgerungskette lassen sich alle Implikationen bis auf die rot markierte umkehren. Dass die Umkehrung i.a. nicht korrekt ist zeigt folgendes Beispiel: Setzt man ϕ :≡ A und ψ :≡ ¬A, so ist ϕ ∨ ψ ≡ A ∨ ¬A allgemeingültig, da für jede Belegung B von V (ϕ ∨ ψ) = {A} entweder B(A) = 1 oder B(¬A) = 1 gilt, also B(ϕ ∨ ψ) = B(A ∨ ¬A) = max(B(A), B(¬A)) = 1. Wie wir bereits gesehen haben, ist aber weder A noch ¬A allgemeingültig. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 68 / 146 Definition weiterer zentraler semantischer Konzepte der AL DEFINITION 2. Seien ϕ und ψ al. Formeln. (i) ϕ und ψ sind äquivalent (kurz: ϕ äq ψ), falls Für alle Belegungen B : V (ϕ) ∪ V (ψ) → {0, 1} gilt B(ϕ) = B(ψ). gilt. (ii) ϕ impliziert ψ oder ψ folgt aus ϕ (kurz: ϕ impl ψ), falls Für alle Belegungen B : V (ϕ) ∪ V (ψ) → {0, 1} gilt: B(ϕ) = 1 ⇒ B(ψ) = 1. gilt. Anschaulich: Bei gleicher Interpretation der vorkommenden atomaren Aussagen haben also durch äquivalente Formeln ϕ und ψ dargestellte Aussagen denselben Wahrheitswert, wogegen für Formeln ϕ und ψ, wobei ψ aus ϕ folgt, jede Interpretation der atomaren Formeln, die die ϕ entsprechende Aussage wahrmacht, auch die ψ entsprechende Aussage wahrmacht. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 69 / 146 Implikation und Äquivalenz: Syntax vs. Semantik In der vorhergehenden Definition haben wir die (semantische) Implikation und Äquivalenz eingeführt. Auf der syntaktischen Ebene entsprechen diesen die gelichnamigen Junktoren → und ↔. Mit Hilfe des (semantischen) Begriffs der Allgemeingültigkeit lassen sich semantische Implikation und Äquivalenz auf den Implikations- bzw. Äquivalenz-Junktor zurückführen (und umgekehrt): LEMMA 4. Seien ϕ und ψ al. Formeln. (i) ϕ impliziert ψ genau dann, wenn die Formel ϕ → ψ allgemeingültig ist: ϕ impl ψ ⇔ ag[ϕ → ψ] (ii) ϕ und ψ sind genau dann äquivalent, wenn die Formel ϕ ↔ ψ allgemeingültig ist: ϕ äq ψ ⇔ ag[ϕ ↔ ψ] NB: Diese Zusammenhänge benutzt man, wenn man aus den in Lemma 1 angegebenen Tautologien die Korrektheit der entsprechenden Beweistechniken ableitet (s. Bemerkung dort). Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 70 / 146 Implikation und Äquivalenz: Beweis von Lemma 4 Wir beweisen den ersten Teil des Lemmas (Beweis des zweiten Teils: Übung). Dabei sei B die Menge aller Belegungen von V (ϕ) ∪ V (ψ). ϕ impl ψ ⇔ ∀ B ∈ B : B(ϕ) ≤ B(ψ) (Nach Definition von impl und dem Koinzidenzlemma) ⇔ ∀ B ∈ B : B(ϕ → ψ) = 1 (Nach Definition der Bewertungen B und dem Koinzidenzlemma) ⇔ ag[ϕ → ψ] (Nach Definition von ag und dem Koinzidenzlemma) Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 71 / 146 Implikation und Äquivalenz: Einfache Eigenschaften (1) Als Nächstes beschreiben wir den Zusammenhang zwischen Implikation und Äquivalenz, und zeigen, dass beide Relationen reflexiv und transitiv sind und die Äquivalenz zusätzlich symmetrisch. Die Implikation ist also eine Präordnung auf den al. Formeln und die Äquivalenz eine Äquivalenzrelation. Hierbei gilt für eine 2-stellige Relation R (in Infixschreibweise): R is reflexiv, falls xRx für alle x gilt. R is transitiv, falls für alle x, x, z mit xRy und yRz auch xRz gilt. R ist symmetrisch, falls für alle x, y mit xRy auch yRx gilt. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 72 / 146 Implikation und Äquivalenz: Einfache Eigenschaften (2) LEMMA 5. (i) A impl A und A äq A (ii) A impl B und B impl C ⇒ A impl C A äq B und B äq C ⇒ A äq C und (iii) A impl B und B impl A ⇒ A äq B (iv) A äq B ⇒ B äq A BEWEIS: Dies ergibt sich direkt aus den Definitionen durch Berechnung der von den möglichen Belegungen erzeugten Bewertungen (Übung). Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 73 / 146 Boolesche Gesetze Eine weitere einfache Beobachtung über die Äquivalenz ist, dass diese die Booleschen Gesetze (= Axiome der Booleschen Algebren) erfüllt. Wir formulieren diese Gesetze zunächst für die Mengenlehre. Hierbei sei V eine beliebige nichtleere Grundmenge, A, B, C Teilmengen von V und A das Komplement von A (relativ zu V ; d.h. A = {x ∈ V : x 6∈ A}). Wie üblich bezeichnen ∪ und ∩ Vereinigung und Durchschnitt und ∅ die leere Menge. A ∩ B = B ∩ A und A ∪ B = B ∪ A A ∩ (B ∩ C ) = (A ∩ B) ∩ C A ∪ (B ∪ C ) = (A ∪ B) ∪ C A∪A=A=A∩A A ∩ (B ∪ C ) = (A ∩ B) ∪ (A ∩ C ) A ∪ (B ∩ C ) = (A ∪ B) ∩ (A ∪ C ) A ∩ (B ∪ A) = A = A ∪ (A ∩ B) A ∪ A = V und A ∩ A = ∅ A = A und ∅ = V und V = ∅ (A ∩ B) = A ∪ B (A ∪ B) = A ∩ B Mathematische Logik (WS 2016/17) Kommutativgesetze Assoziativgesetze Idempotenzgesetze Distributivgesetze Absorptionsgesetze Komplementgesetze De Morgansche Gesetze Kapitel 1.2: Semantik der Aussagenlogik 74 / 146 Boolesche Gesetze (Forts.) Die Booleschen Gesetze übertragen sich von der Mengenlehre auf die Aussagenlogik, wenn wir folgende Ersetzungen vornehmen (wobei wir anschaulich eine Menge durch die Eigenschaft ersetzen, die diese charakterisiert): Mengenlehre Aussagenlogik Teilmenge A von V = A A∩B A∪B ∅ V Aussagenvariable A äq ¬A A∧B A∨B A ∧ ¬A A ∨ ¬A Es gilt also: Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 75 / 146 Boolesche Gesetze (Forts.) LEMMA 6 (Boolesche Gesetze). Die folgenden Formeln sind allgemeingültig: A ∧ B äq B ∧ A und A ∨ B äq B ∨ A A ∧ (B ∧ C ) äq (A ∧ B) ∧ C A ∨ (B ∨ C ) äq (A ∨ B) ∨ C A ∨ A äq A und A ∧ A äq A A ∧ (B ∨ C ) äq (A ∧ B) ∨ (A ∧ C ) A ∨ (B ∧ C ) äq (A ∨ B) ∧ (A ∨ C ) A ∧ (B ∨ A) äq A und A ∨ (A ∧ B) äq A A ∨ ¬A äq A ∨ ¬A und A ∧ ¬A äq A ∧ ¬A ¬¬A äq A ¬(A ∧ ¬A) äq A ∨ ¬A und ¬(A ∨ ¬A) äq A ∧ ¬A ¬(A ∧ B) äq ¬A ∨ ¬B ¬(A ∨ B) äq ¬A ∧ ¬B Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 76 / 146 Boolesche Gesetze - Beweis von Lemma 6 Die Booleschen Gesetze für die AL in Lemma 6 lassen sich entweder leicht direkt nachweisen oder -was wir hier tun werden- aus den entsprechenden Booleschen Gesetzen der Mengenlehre mit Hilfe der folgenden (Rück-)Übersetzung ableiten: Da in den betrachteten Formeln ϕ nur die Variablen A, B und C vorkommen, also V (ϕ) ⊆ {A, B, C } gilt, genügt es Belegungen dieser Variablen zu betrachten. Wählen wir die Menge V als die Menge aller dieser Belegungen und ordnen wir einer Formel ϕ die Menge ϕ̂ := {B ∈ V : B(ϕ) = 1} der Belegungen zu, die ϕ wahrmachen, so gilt nach Definition der Äquivalenz (mit dem Koinzidenzlemma): (1) ϕ äq ψ ⇔ ϕ̂ = ψ̂ Weiter gilt nach Definition der Bewertungen \ \ (2) ϕ ∨ ψ = ϕ̂ ∪ ψ̂ und ϕ ∧ ψ = ϕ̂ ∩ ψ̂ und ¬ϕ c = ϕ̂ sowie (3) A\ ∨ ¬A = V und A\ ∧ ¬A = ∅. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 77 / 146 Boolesche Gesetze - Beweis von Lemma 6 (Fortsetzung) Dass sich mit Hilfe dieser Definitionen und Beobachtungen die Booleschen Gesetze für AL direkt aus den korrespondierenden Booleschen Gesetze der Mengenlehre ergeben, illustrieren wir am Beispiel des 1. Distributivgesetzes: A ∧ (B ∨ C ) äq (A ∧ B) ∨ (A ∧ C ) \ ⇔ A ∧\ (B ∨ C ) = (A ∧ B) ∨ (A ∧ C ) (nach (1)) ⇔  ∩ (B̂ ∪ Ĉ ) = ( ∩ B̂) ∪ ( ∩ Ĉ ) (nach (2)) (Ende Beweis Lemma 6) Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 78 / 146 Einige weitere Äquivalenzen Die in Lemma 6 aufgelisteten Booleschen Gesetze fassen die wichtigsten semantischen Äquivalenzen von mit Hilfe der Junktoren ¬, ∨ und ∧ gebildeten Formeln zusammen. Von den Gesetzen für die anderen Junktoren → und ↔ betrachten wir hier noch die Distributivgesetze für → und ∨ bzw. → und ∧: LEMMA 7. (i) A → B ∨ C äq (A → B) ∨ (A → C ) (ii) A → B ∧ C äq (A → B) ∧ (A → C ) (iii) A ∨ B → C äq (A → C ) ∧ (B → C ) (iv) A ∧ B → C äq (A → C ) ∨ (B → C ) Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 79 / 146 Beweis von Lemma 7 Wir beweisen nur Teil (iii) des Lemmas und überlassen die anderen ähnlich einfachen Beweise als Übung. Es genügt für eine gegebene Belegung B der vorkommenden Variablen zu zeigen, dass B(A ∨ B → C ) = 1 ⇔ B((A → C ) ∧ (B → C )) = 1 gilt. Dies zeigt man wie folgt: ⇔ ⇔ ⇔ ⇔ ⇔ B(A ∨ B → C ) = 1 B(A ∨ B) ≤ B(C ) nach Definition der Bewertungen max(B(A), B(B)) ≤ B(C ) nach Definition der Bewertungen B(A) ≤ B(C ) und B(B) ≤ B(C ) B(A → C ) = 1 und B(B → C ) = 1 nach Definition der Bewertungen B(A → C ) ∧ (B → C ) = 1 nach Definition der Bewertungen Alternativ kann man Lemma 7 auf die Booleschen Gesetze in Lemma 6 zurückführen, indem man die Äquivalenz ϕ → ψ äq ¬ϕ ∨ ψ verwendet. Wir werden hierauf in Abschnitt 1.3 genauer eingehen. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 80 / 146 Die Einsetzungsregel Die vorangehenden Lemmata 1 und 5-7 hätten wir schärfer formulieren können, indem wir die dort vorkommenden Aussagenvariablen A, B, C durch beliebige al. Formeln ϕ1 , ϕ2 , ϕ3 ersetzt hätten. Dass dies generell möglich ist, besagt die folgende Einsetzungsregel: LEMMA 8 (EINSETZUNGSREGEL). Ist die al. Formel ϕ allgemeingültig, so ist auch die al. Formel ϕ[ψ/A] allgemeingültig, die aus ϕ durch (simultanes) Ersetzen aller Vorkommen der Variablen A in ϕ durch die Formel ψ entsteht. BEISPIEL FÜR EINE EINSETZUNG: (A ∨ B → ¬A)[¬A ∧ A/A] ≡ (¬A ∧ A) ∨ B → ¬(¬A ∧ A) BEMERKUNG: Formal lässt sich ϕ[ψ/A] durch Ind(ϕ) definieren: ( ψ ϕ (≡ An ) falls An ≡ A falls An ≡ 6 A ϕ ≡ An : ϕ[ψ/A] ≡ ϕ ≡ ¬ϕ1 : ϕ[ψ/A] ≡ ¬ϕ1 [ψ/A] ϕ ≡ ϕ1 ∗ ϕ2 : ϕ[ψ/A] ≡ ϕ1 [ψ/A] ∗ ϕ2 [ψ/A] Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 81 / 146 Die Einsetzungsregel: Beweis Annahme: ϕ sei allgemeingültig und B : V (ϕ[ψ/A]) → {0, 1} sei eine beliebige gegebene Belegung der Variablen in ϕ[ψ/A]. Zu zeigen: (∗) B(ϕ[ψ/A]) = 1 Kommt die Variable A in ϕ nicht vor, so gilt ϕ[ψ/A] ≡ ϕ. Wegen der Allgemeingültigkeit von ϕ ist (∗) also trivialerweise erfüllt. Im Folgenden dürfen wir daher annehmen, dass A in ϕ vorkommt. Sei also V (ϕ) = {A, B1 , . . . , Bn } und V (ψ) = {C1 , . . . , Cm } und daher V (ϕ[ψ/A]) = {B1 , . . . , Bn , C1 , . . . , Cm }. Definiere die Belegung B 0 : V (ϕ) → {0, 1} durch B 0 (A) := B(ψ) und B 0 (Bi ) = B(Bi ) Wegen ag[ϕ] gilt B 0 (ϕ) = 1. Zum Nachweis von (∗) genügt es also (∗∗) B 0 (ϕ) = B(ϕ[ψ/A]) zu zeigen. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 82 / 146 Die Einsetzungsregel: Beweis (Fortsetzung) Wir beweisen (∗∗) B 0 (ϕ) = B(ϕ[ψ/A]) durch Ind(ϕ): ϕ ist eine AV: Dann muss ϕ ≡ A (also ϕ[ψ/A] ≡ ψ) gelten und daher: B 0 (ϕ) = B 0 (A) = B(ψ) = B(ϕ[ψ/A]) wegen ϕ ≡ A nach Definition von B 0 wegen ϕ[ψ/A] ≡ ψ ϕ ≡ ¬ϕ1 : Dann gilt ϕ[ψ/A] ≡ ¬ϕ1 [ψ/A], wobei nach I.V. B 0 (ϕ1 ) = B(ϕ1 [ψ/A]). Also: B 0 (ϕ) = = = = = Mathematische Logik (WS 2016/17) B 0 (¬ϕ1 ) wegen ϕ ≡ ¬ϕ1 1 − B 0 (ϕ1 ) nach Definition der Bewertungen 1 − B(ϕ1 [ψ/A]) nach I.V. B(¬ϕ1 [ψ/A]) nach Definition der Bewertungen B(ϕ[ψ/A]) wegen ϕ[ψ/A] ≡ ¬ϕ1 [ψ/A] Kapitel 1.2: Semantik der Aussagenlogik 83 / 146 Die Einsetzungsregel: Beweis (Ende) Wir beweisen (∗∗) B 0 (ϕ) = B(ϕ[ψ/A]) durch Ind(ϕ) (Fortsetzung): ϕ ≡ ϕ1 ∗ ϕ2 : Diesen Fall führt man im Wesentlichen ebenfalls auf die I.V. zurück: Es gilt ϕ[ψ/A] ≡ ϕ1 [ψ/A] ∗ ϕ2 [ψ/A], wobei B 0 (ϕi ) = B(ϕi [ψ/A]) nach I.V. gilt, falls A in ϕi vorkommt. Kommt A in ϕi nicht vor, so gilt jedoch B 0 (ϕi ) = B(ϕi [ψ/A]) ebenfalls. In diesem Fall gilt nämlich V (ϕi ) ⊆ {B1 , . . . , Bn } und ϕi ≡ ϕi [ψ/A]. Da B und B 0 auf den Variablen Bi übereinstimmen gilt also B 0 (ϕi ) = B(ϕi ) nach dem Koinzidenzlemma und damit (wegen ϕi ≡ ϕi [ψ/A]) B 0 (ϕi ) = B(ϕi [ψ/A]). Also: = = = = = B 0 (ϕ) B 0 (ϕ1 ∗ ϕ2 ) wegen ϕ ≡ ϕ1 ∗ ϕ2 f∗ (B 0 (ϕ1 ), B 0 (ϕ2 )) nach Definition der Bewertungen f∗ (B(ϕ1 [ψ/A]), B(ϕ2 [ψ/A])) s.o. B(ϕ1 [ψ/A] ∗ ϕ1 [ψ/A]) nach Definition der Bewertungen B(ϕ[ψ/A]) wegen ϕ[ψ/A] ≡ ϕ1 [ψ/A] ∗ ϕ2 [ψ/A] Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 84 / 146 Die Ersetzungsregel Zum Abschluss betrachten wir noch die Ersetzungsregel. Diese besagt, dass wir durch Ersetzen von Teilformeln einer Formel χ durch äquivalente Formeln eine zu χ äquivalente Formel erhalten: LEMMA 9 (ERSETZUNGSREGEL). Sei ϕ ↔ ψ allgemeingültig. Dann ist auch χ ↔ χ(ψ/ϕ) allgemeingültig. Hierbei bezeichnet χ(ψ/ϕ) eine (i.a. nicht eindeutig bestimmte) Formel χ∗ , die aus χ durch Ersetzen einiger (von keinem bis allen) Vorkommen der Teilformel ϕ durch ψ entsteht. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 85 / 146 Die Ersetzungsregel: Beispiel zur Definition von χ(ψ/ϕ) Seien χ :≡ ¬(A ∨ ¬¬A) → (¬A ∨ A) und ϕ :≡ ¬A und ψ :≡ ¬¬A Dann tritt ϕ an 2 Stellen als Teilformel von χ auf: χ ≡ ¬(A ∨ ¬¬A) → (¬A ∨ A) Die Formel χ(ψ/ϕ) hat also eine der folgenden 4 möglichen Gestalten (kein Vorkommen ersetzt, erstes Vorkommen ersetzt, zweites Vorkommen ersetzt, beide Vorkommen ersetzt): ¬(A ∨ ¬¬A) → (¬A ∨ A) ¬(A ∨ ¬¬¬A) → (¬A ∨ A) ¬(A ∨ ¬¬A) → (¬¬A ∨ A) ¬(A ∨ ¬¬¬A) → (¬¬A ∨ A) Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 86 / 146 Die Ersetzungsregel: Formale Definition von χ(ψ/ϕ) und Beweisidee Formal definiert man die Menge Sub(χ, ϕ, ψ) aller Varianten χ(ψ/ϕ) von χ durch Ind(χ), wobei wir die folgenden beiden Fälle unterscheiden: Ist ϕ ≡ χ, so gilt Sub(χ, ϕ, ψ) = {χ, ψ}. Andernfalls gilt: χ ≡ A: Sub(χ, ϕ, ψ) = {χ} (NB: In diesem Fall ist ϕ keine Teilformel von χ) χ ≡ ¬χ1 : Sub(χ, ϕ, ψ) = {¬χ∗1 : χ∗1 ∈ Sub(χ1 , ϕ, ψ)} χ ≡ χ1 ∗ χ2 : Sub(χ, ϕ, ψ) = {χ∗1 ∗ χ∗2 : χ∗i ∈ Sub(χi , ϕ, ψ)} Mit dieser formalen induktiven Beschreibung der möglichen Gestalten von χ(ψ/ϕ) lässt sich das Ersetzungslemma leicht durch Ind(χ) zeigen: s. Übungen. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 87 / 146 1.2.3 Der semantische Folgerungsbegriff Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 88 / 146 Vorbemerkungen In der Untersuchung einer mathematischen Theorie gehen wir in der Regel von einer (möglicherweise unendlichen) Menge von Axiomen (den Grundsätzen der Theorie) aus und betrachten die Aussagen, die aus diesen logisch folgen (die Theoreme oder (Lehr-)Sätze der Theorie). Um den hierbei verwendeten semantischen Folgerungsbegriff zu definieren, müssen wir den bereits eingeführten Folgerungsbegriff ϕ impl ψ (d.h. ψ folgt aus ϕ) von einer Formel ϕ auf eine Menge T von Formeln verallgemeinern. (Wobei wir in diesem Kapitel natürlich nur aussagenlogische Folgerungen betrachten.) Gleichzeitig verallgemeinern wir den Erfüllbarkeitsbegriff von Formeln ϕ auf Formelmengen T und zeigen, dass sich der Folgerungbegriff auf den Erfüllbarkeitsbegriff zurückführen lässt. Hierbei nennen wir eine Formelmenge T erfüllbar, wenn es eine Belegung gibt, die alle Formeln in T wahrmacht. Im Folgenden sei T stets eine (möglicherweise unendliche) Menge von al. Formeln und V (T ) sei die Menge aller Variablen, die in den Formeln aus T vorkommen, d.h. [ V (ϕ) V (T ) = ϕ∈T Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 89 / 146 Erfüllbarkeit von Formelmengen: Definition Wir betrachten zunächst den verallgemeinerten Erfüllbarkeitsbegriff für (nichtleere) Formelmengen: DEFINITION 1. Sei T 6= ∅ eine nichtleere Menge al. Formeln mit Variablenmenge V (T ). (i) Eine Belegung B : V (T ) → {0, 1} macht die Formelmenge T wahr (kurz: B T ), falls B alle Formeln ϕ in T wahrmacht, d.h. wenn gilt: ∀ ϕ ∈ T : B(ϕ) = 1 (ii) Die Formelmenge T is erfüllbar (kurz: erfb[T ]), wenn es eine Belegung B von V (T ) gibt, die T wahrmacht. Es gilt also: erfb[T ] ⇔ ∃ B ∈ B(V (T )) : B T ⇔ ∃ B ∈ B(V (T )) ∀ ϕ ∈ T : B(ϕ) = 1 Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 90 / 146 Erfüllbarkeit von Formelmengen: Bemerkungen BEMERKUNG 1. Enthält T nur eine Formel ϕ (d.h. T = {ϕ}), so macht B die Formelmenge T genau dann wahr, wenn B die Formel ϕ wahrmacht. Schreiben wir statt B {ϕ} kurz B ϕ, so gilt also B {ϕ} ⇔ B ϕ ⇔ B(ϕ) = 1 Es folgt, dass die Formelmenge T = {ϕ} genau dann erfüllbar ist, wenn die Formel ϕ erfüllbar ist. Die Erfüllbarkeit für Formelmengen verallgemeinert daher die Erfüllbarkeit für Formeln. BEMERKUNG 2. Ist T erfüllbar, so ist offensichtlich jede Formel ϕ ∈ T erfüllbar. Die Umkehrung gilt jedoch i.a. nicht, da die Erfüllbarkeit von T verlangt, dass es eine Belegung gibt, die gleichzeitig alle ϕ in T wahrmacht. Z.B. ist T = {A, ¬A} nicht erfüllbar, da es keine Belegung B von V (T ) = {A} gibt, die A und ¬A wahrmacht (da B(A) = 1 g.d.w. B(¬A) = 0). Die beiden Formeln A und ¬A in T sind aber beide erfüllbar (nämlich A wird von der Belgung B(A) = 1 wahrgemacht und ¬A wird von der Belegung B 0 (A) = 0 wahrgemacht). Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 91 / 146 Erfüllbarkeit von Formelmengen: Bemerkungen (Forts.) BEMERKUNG 3. Für endliche, nichtleere Formelmengen lässt sich die Erfüllbarkeit auf die Erfüllbarkeit von Formeln zurückführen: Für T = {ϕ1 , . . . , ϕn } gilt: erfb[T ] ⇔ erfb[ϕ1 ∧ · · · ∧ ϕn ] Dies ergibt sich unmittelbar aus der Definition, da nach Definition der Bewertungen B(ϕ1 ∧ · · · ∧ ϕn ) = 1 genau dann gilt, wenn B(ϕ1 ) = · · · = B(ϕn ) = 1 gilt. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 92 / 146 Der semantische Folgerungsbegriff DEFINITION 2. Eine al. Formel ϕ folgt aus einer (möglicherweise leeren oder unendlichen) Menge T von al. Formeln (kurz: T ϕ), falls jede Belegung B von V (T ) ∪ V (ϕ), die T wahrmacht, auch ϕ wahrmacht, d.h., falls gilt: ∀ B ∈ B(V (T ) ∪ V (ϕ)) [B T ⇒ B ϕ] BEISPIELE. Es gilt {A} A und {A} A ∨ B aber {A} 6 ¬A und {A} 6 A ∧ B. (Hierbei bezeichnet T 6 ϕ, dass ϕ nicht aus T folgt.) Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 93 / 146 Der semantische Folgerungsbegriff: einfache Beobachtungen BEMERKUNG 4. Ist T die leere Menge, so macht (trivialerweise) jede Belegung jede Formel in T wahr (da es keine Formeln in T gibt). Also: ∅ ϕ ⇔ ag[ϕ] Dies zeigt, dass der Folgerungsbegriff eine Verallgemeinerung des Allgemeingültigkeitsbegriffs ist. In Zukunft schreiben wir statt ∅ ϕ kurz ϕ. Es gilt also ϕ ⇔ ag[ϕ] Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 94 / 146 Der semantische Folgerungsbegriff: einfache Beobachtungen (Forts.) BEMERKUNG 5. Für 1-elementiges T = {ϕ} stimmt der semantische Folgerungsbegriff mit der semantischen Implikation überein: {ϕ} ψ ⇔ ϕ impl ψ Schreiben wir statt {ϕ1 , . . . , ϕn } ψ kurz ϕ1 , . . . , ϕn ψ, so gilt allgemeiner für endliches nichtleeres T : ϕ1 , . . . , ϕn ψ ⇔ ϕ1 ∧ · · · ∧ ϕn ψ ⇔ ϕ1 ∧ · · · ∧ ϕn impl ψ Hiermit lässt sich die Beobachtung aus dem letzten Abschnitt, dass sich die semantische Implikation mit Hilfe des Junktors der Implikation und der Allgemeingültigkeit darstellen lässt, nämlich ϕ impl ψ ⇔ ag[ϕ → ψ] auf endliche Formelmengen T verallgemeinern: Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 95 / 146 Der semantische Folgerungsbegriff: einfache Beobachtungen (Forts.) LEMMA 1. Es gilt ϕ1 , . . . , ϕn ψ ⇔ ag[ϕ1 ∧ · · · ∧ ϕn → ψ] ( ⇔ ϕ1 ∧ · · · ∧ ϕn → ψ) BEWEIS. Es gilt ⇔ ⇔ ⇔ ϕ1 , . . . , ϕn ψ ϕ1 ∧ · · · ∧ ϕn ψ ϕ1 ∧ · · · ∧ ϕn impl ψ ag[ϕ1 ∧ · · · ∧ ϕn → ψ] (Bemerkung 5) (Bemerkung 5) (Lemma 4 in Abschnitt 1.2.2) Schließlich beobachten wir noch, dass der Folgerungsbegriff monoton ist: BEMERKUNG 6. Der semantische Folgerunsgbegriff ist monoton. D.h. es gilt T ⊆ T0 & T ϕ ⇒ T0 ϕ (Dies folgt unmittelbar aus der Definition) Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 96 / 146 Semantische Folgerung vs. Erfüllbarkeit Wie wir gezeigt haben, lässt sich für endliches T 6= ∅ der Folgerungsbegriff auf den Allgemeingültigkeitsbegriff zurückführen. Wie wir nun noch zeigen werden, lassen sich für beliebiges (möglicherweise unendliches) T Folgerungsbegriff und Erfüllbarkeit wechselseitig aufeinander zurückführen: LEMMA 2 (Folgerung vs. Erfüllbarkeit). (i) T ϕ ⇔ nicht erfb[T ∪ {¬ϕ}] (ii) T 6 ϕ ⇔ erfb[T ∪ {¬ϕ}] Da (ii) die Kontraposition von (i) ist (modulo doppelter Verneinung), genügt es (i) zu beweisen: Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 97 / 146 Semantische Folgerung vs. Erfüllbarkeit BEWEIS VON LEMMA 2 (i). T ϕ ⇔ ∀ B ∈ B(V (T ) ∪ V (ϕ)) [B T ⇒ B ϕ] (Definition von ) ⇔ 6 ∃ B ∈ B(V (T ) ∪ V (ϕ)) [B T & B 6 ϕ] (klar) ⇔ 6 ∃ B ∈ B(V (T ) ∪ V (ϕ)) [B T & B ¬ϕ] (Definition der Bewertungen) ⇔ 6 ∃ B ∈ B(V (T ) ∪ V (ϕ)) [B T ∪ {¬ϕ}] (klar) ⇔ nicht erfb [T ∪ {¬ϕ}] (Definition von erfb) Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 98 / 146 Semantische Folgerung vs. Erfüllbarkeit Umgekehrt lässt sich für nichtleeres T die Erfüllbarkeit von T auf den Folgerungsbegriff zurückführen: LEMMA 3 (Erfüllbarkeit vs. Semantischer Folgerung). Für T 6= ∅ sind folgende Aussagen äquivalent: (i) erfb[T ] (ii) 6 ∃ ϕ [T ϕ und T ¬ϕ] (iii) ∃ ϕ [T 6 ϕ] Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 99 / 146 Semantische Folgerung vs. Erfüllbarkeit BEWEIS VON LEMMA 3. (i) ⇒ (ii). Dies zeigt man durch Kontraposition: I I I I Annahme: es gäbe eine Formel ϕ mit T ϕ und T ¬ϕ. Nach Definition bedeutet dies, dass jede Belegung B, die T wahrmacht auch ϕ und ¬ϕ wahrmacht. Da es keine Belegung gibt, die sowohl eine Formel als auch deren Negation wahr macht, folgt dass keine Belegung T wahrmacht. Also: T ist nicht erfüllbar. (ii) ⇒ (iii). Nach Annahme (ii) gilt T 6 A oder T 6 ¬A für jede Variable A. Also gilt (iii) für ϕ :≡ A oder ϕ :≡ ¬A. (iii) ⇒ (i). Gelte T 6 ϕ. Nach Definition gibt es dann eine Belegung B, die zwar T wahrmacht nicht aber ϕ. Aus Ersterem folgt aber direkt, dass T erfüllbar ist. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 100 / 146 1.2.4 Al. Formeln als Darstellungen Boolescher Funktionen Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 101 / 146 Die von al. Formeln dargestellten Booleschen Funktionen Al. Formeln kann man als Darstellungen Boolescher Funktionen auffassen: DEFINITION 1. Sei ϕ eine al. Formel mit V (ϕ) ⊆ {A0 , . . . , An−1 }. Die von ϕ dargestellte (definierte) n-stellige Boolesche Funktion fϕ,n ist definiert durch fϕ,n (i0 , . . . , in−1 ) = B̂i0 ,...,in−1 (ϕ) wobei die Belegung Bi0 ,...,in−1 : {A0 , . . . , An−1 } → {0, 1} durch Bi0 ,...,in−1 (Aj ) = ij (j = 0, . . . , n − 1) gegeben ist. Gilt V (ϕ) = {A0 , . . . , An−1 }, so schreiben wir statt fϕ,n auch einfach fϕ . Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 102 / 146 Bemerkungen (1) BEMERKUNG 1: Die Boolesche Funktion fϕ,n gibt also gerade die Wahrheitswerte von ϕ bzgl. der möglichen Belegungen der Variablen A0 , . . . , An−1 an. Dabei erhält man fϕ,n (i0 , . . . , in−1 ) indem man die Variablen Aj mit den Wahrheitswerten ij (für j = 0, . . . , n − 1) belegt und dann ϕ bzgl. dieser Belegung auswertet. Für eine Belegung B der Variablen A0 , . . . , An−1 gilt also: fϕ,n (B(A0 ), . . . , B(An−1 )) = B(ϕ) Die schon früher angegebene Bewertungstabelle einer Formel ϕ (siehe z.B. die Tabelle im Beweis von Lemma 1 in Abschnitt 1.2.2) ist also gerade die Wertetabelle der Funktion fϕ,n . Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 103 / 146 Bemerkungen (2) BEMERKUNG 2. Durch Umbenennen der Variablen in einer Formel ϕ kann man immer V (ϕ) = {A0 , . . . , An−1 } erreichen, wobei n die Anzahl der in ϕ vorkommenden Variablen ist. Modulo dieser Umbenennung stellt also jede al. Formel ϕ mit n Variablen eine eindeutig bestimmte n-stellige Boolesche Funktion dar. BEMERKUNG 3. Die von einer Formel ϕ mit V (ϕ) ⊆ {A0 , . . . , An−1 } dargestellte n-st. Boolesche Funktion fϕ,n lässt sich alternativ wie folgt durch Induktion nach dem Aufbau von ϕ definieren (wobei ~x = (x0 , . . . , xn−1 ) ∈ {0, 1}n ): (f1) ϕ ≡ Ai : fAi ,n (~x ) = xi (f2) ϕ ≡ ¬ψ: f¬ψ,n (~x ) = f¬ (fψ,n (~x )) (f3) ϕ ≡ ψ0 ∗ ψ1 : fψ0 ∗ψ1 ,n (~x ) = f∗ (fψ0 ,n (~x ), fψ1 ,n (~x )) (Die Äquivalenz der beiden Definitionen zeigt man leicht durch Ind(ϕ).) Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 104 / 146 Beispiele Für die Formeln ϕ1 ≡ ¬A0 , ϕ2 ≡ A0 ∨ A1 , ϕ3 ≡ A0 ∧ A1 , ϕ4 ≡ A0 → A1 und ϕ5 ≡ A0 ↔ A1 gilt gerade fϕ1 = fϕ1 ,1 = f¬ , fϕ2 = fϕ2 ,2 = f∨ , fϕ3 = fϕ3 ,2 = f∧ , fϕ4 = fϕ4 ,2 = f→ und fϕ5 = fϕ5 ,2 = f↔ . Die Formeln ψ0 ≡ (A0 ∧ ¬A0 ) und ψ1 ≡ (A0 ∨ ¬A0 ) stellen die konstanten Booleschen Funktionen mit Wert 0 bzw. 1 dar: fψi ,n (i0 , . . . , in−1 ) = i (für n ≥ 1 und i, i0 , . . . , in−1 ≤ 1) Die Formel ϕ ≡ (A0 ∧ ¬A1 ) ∨ (¬A0 ∧ A1 ) stellt die EXOR-Funktion (exklusives oder) dar. D.h. fϕ = fEXOR : x0 0 0 1 1 Mathematische Logik (WS 2016/17) x1 0 1 0 1 fEXOR (x0 , x1 ) 0 1 1 0 Kapitel 1.2: Semantik der Aussagenlogik 105 / 146 Die von einer Formel dargestellte Boolesche Funktion und die zentralen semantischen Begriffe Die in Abschnitt 1.2.2 eingeführten zentralen semantischen Begriffe lassen sich mit Hilfe der von den al. Formeln dargestellten Funktionen wie folgt beschreiben: SATZ 1. Seien ϕ und ψ al. Formeln, in denen höchstens die Variablen A0 , . . . , An−1 vorkommen. Dann gilt: 1 erfb[ϕ] ⇔ ∃ ~x ∈ {0, 1}n : fϕ,n (~x ) = 1 2 ag[ϕ] ⇔ ∀ ~x ∈ {0, 1}n : fϕ,n (~x ) = 1 3 kd[ϕ] ⇔ ∀ ~x ∈ {0, 1}n : fϕ,n (~x ) = 0 4 ϕ impl ψ ⇔ ∀ ~x ∈ {0, 1}n : fϕ,n (~x ) ≤ fψ,n (~x ) (d.h.: ∀ ~x ∈ {0, 1}n : fϕ,n (~x ) = 1 ⇒ fψ,n (~x ) = 1) 5 ϕ äq ψ ⇔ ∀ ~x ∈ {0, 1}n : fϕ,n (~x ) = fψ,n (~x ) (d.h.: ∀ ~x ∈ {0, 1}n : fϕ,n (~x ) = 1 ⇔ fψ,n (~x ) = 1) BEWEIS. Dies folgt unmittelbar aus der Definition von fϕ,n bzw. fψ,n . Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 106 / 146 Abschließende Bemerkungen Nach dem vorhergehenden Satz stellen äquivalente Formeln dieselben Booleschen Funktionen dar. Die Darstellung einer Booleschen Funktion durch eine al. Formel ist also nicht eindeutig, sondern zu jeder Booleschen Funktion f , die sich durch eine Formel ϕ darstellen lässt (d.h. f = fϕ ), gibt es unendlich viele Formeln, die f darstellen (z.B. die zu ϕ äquivalenten Formeln ϕ ∨ ϕ, ϕ ∨ ϕ ∨ ϕ, . . . ). Im nächsten Abschnitt werden wir zeigen, dass sich jede Boolesche Funktion durch eine al. Formel darstellen lässt. Dabei genügt es sogar sog. Boolesche Formeln zu betrachten, d.h. al. Formeln, in denen die Junktoren → und ↔ nicht vorkommen. Mathematische Logik (WS 2016/17) Kapitel 1.2: Semantik der Aussagenlogik 107 / 146 Kapitel 1.3 Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 108 / 146 Übersicht 1.3.1 Normalformen al. Formeln 1.3.2 Darstellungssatz und Basen der Booleschen Funktionen 1.3.3 Normalformsatz: Disjunktive Normalform 1.3.4 Dualitätsprinzip und Konjunktive Normalform Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 109 / 146 1.3.1 Normalformen al. Formeln Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 110 / 146 Boolesche Formeln, Literale und Klauseln Eine Boolesche Formel ist eine aussagenlogische Formel, in der die Junktoren → und ↔ nicht vorkommen. Ein Literal λ ist eine Aussagenvariable (λ ≡ A) oder eine negierte Aussagenvariable (λ ≡ ¬A). Eine ∨-Klausel δ ist eine endliche Disjunktion von Literalen (δ ≡ λ1 ∨ · · · ∨ λn , n ≥ 1). Eine ∧-Klausel κ ist eine endliche Konjunktion von Literalen (κ ≡ λ1 ∧ · · · ∧ λn , n ≥ 1). NOTATION: W • i=1,...,n ψi :≡ ψ1 ∨ · · · ∨ ψn Mathematische Logik (WS 2016/17) • V i=1,...,n Kapitel 1.3: Normalformen ψi :≡ ψ1 ∧ · · · ∧ ψn 111 / 146 Disjunktive und konjunktive Normalformen Eine Boolesche Formel ϕ ist in disjunktiver Normalform (DNF), wenn ϕ die endliche Disjunktion von ∧-Klauseln ist: ϕ ≡ κ1 ∨ · · · ∨ κm (m ≥ 1). Eine Boolesche Formel ϕ ist in konjunktiver Normalform (KNF), wenn ϕ die endliche Konjunktion von ∨-Klauseln ist: ϕ ≡ δ1 ∧ · · · ∧ δm (m ≥ 1). Disjunktive Normalform: ϕ ≡ W Konjunktive Normalform: ϕ ≡ Mathematische Logik (WS 2016/17) i=1,...,m V κi ≡ W ≡ V i=1,...,m δi Kapitel 1.3: Normalformen i=1,...,m V i=1,...,m j=1,...,ni W j=1,...,ni λi,j λi,j 112 / 146 Beipiele Die al. Formel ϕ ≡ (A ∧ ¬B ∧ C ) ∨ ¬C ∨ (A ∧ A ∧ ¬D) ist in disjunktiver Normalform. Sie enthält die 3 ∧-Klauseln I I I A ∧ ¬B ∧ C (bestehend aus den 3 Literalen A, ¬B, C ) ¬C (bestehend aus dem Literal ¬C ) A ∧ A ∧ ¬D (bestehend aus den 3 Literalen A, A, ¬D) Die al. Formel ψ ≡ (A ∨ ¬B ∨ C ) ∧ ¬C ∧ (A ∨ A ∨ ¬D) ist in konjunktiver Normalform. Sie enthält die 3 ∨-Klauseln I I I A ∨ ¬B ∨ C (bestehend aus den 3 Literalen A, ¬B, C ) ¬C (bestehend aus dem Literal ¬C ) A ∨ A ∨ ¬D (bestehend aus den 3 Literalen A, A, ¬D) Die al. Formeln ¬(A ∨ B) und (A ∨ (B ∧ C )) ∧ D sind Boolesche Formeln aber weder in DNF noch in KNF. Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 113 / 146 1.3.2 Darstellungssatz und Basen der Booleschen Funktionen Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 114 / 146 Darstellungssatz DARSTELLUNGSSATZ. Zu jeder n-stelligen Booleschen Funktion f kann man effektiv eine Boolesche Formel ϕ in disjunktiver Normalform angeben, sodass V (ϕ) = {A0 , . . . , An−1 } und ϕ die Funktion f darstellt (d.h. fϕ = f gilt). ZUR ERINNERUNG: fϕ (B(A0 ), . . . , B(An−1 )) = B(ϕ) Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 115 / 146 Beweis des Darstellungssatzes: Definition von ϕ Die Formel ϕ ist wie folgt definiert: Für jede Eingabekombination ~x = (x0 , . . . , xn−1 ) ∈ {0, 1}n definiere die ∧-Klausel κ~x :≡ λ(0,x0 ) ∧ · · · ∧ λ(n−1,xn−1 ) wobei λ(i,0) ≡ ¬Ai und λ(i,1) ≡ Ai (i = 0, . . . , n − 1). NB: Die Klausel κ~x ist so gewählt, dass diese genau von der Belegung B~x mit B~x (Ai ) = xi wahr gemacht wird! Setze ϕ :≡ W {~ x ∈{0,1}n :f (~ x )=1} κ~x Die so definierte Formel ϕ bezeichnen wir auch mit ϕf . Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 116 / 146 Beweis des Darstellungssatzes: Korrektheit von ϕ Korrektheit von ϕ: Zu zeigen ist, dass f = fϕ gilt. Da f und fϕ Boolesche Funktionen sind, genügt es f (~x ) = 1 ⇔ fϕ (~x ) = 1 für alle ~x = (x0 , . . . , xn−1 ) ∈ {0, 1}n zu zeigen. “⇒” f (~x ) = 1 ⇒ κ~x ist ∧-Klausel von ϕ ⇒ B~x (ϕ) = B~x (κ~x ) = 1 für die oben eingeführte Belegung B~x mit B~x (Ai ) = xi ⇒ fϕ (~x ) = 1 Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 117 / 146 Beweis des Darstellungssatzes: Korrektheit von ϕ “⇐” fϕ (~x ) = 1 ⇒ B~x (ϕ) = 1 für die Belegung B~x (Ai ) = xi 0 ⇒ ϕ enthält eine ∧-Klausel κ(x00 ,...,xn−1 ) 0 mit B~x (κ(x00 ,...,xn−1 ) = 1 ) (da ϕ Disjunktion solcher Klauseln) ⇒ ϕ enthält die ∧-Klausel κ~x 0 (da B~x (κ(x00 ,...,xn−1 )) = 1 0 g.d.w. xi = xi für i < n) ⇒ f (~x ) = 1 (nach Definition von ϕ) Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 118 / 146 Beispiel zum Darstellungssatz Die EXOR-Funktion ist durch folgende Wertetabelle bestimmt, wobei wir in der letzten Spalte noch die zu den entsprechenden Eingaben (x0 , x1 ) gehörenden ∧-Klauseln angeben: x0 x1 EXOR(x0 , x1 ) zugehörige ∧-Klausel 0 0 0 ¬A0 ∧ ¬A1 0 1 1 ¬A0 ∧ A1 1 0 1 A0 ∧ ¬A1 1 1 0 A0 ∧ A1 Die EXOR-Funktion wird also von der Formel ϕEXOR ≡ (¬A0 ∧ A1 ) ∨ (A0 ∧ ¬A1 ) (in DNF) dargestellt. Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 119 / 146 Folgerungen aus dem Darstellungssatz: Basissatz Unter einer (endlichen) Basis der Booleschen Funktionen verstehen wir eine Menge {f1 , . . . , fk } von Booleschen Funktionen, sodass sich jede Boolesche Funktion f explizit über den Funktionen f1 , . . . , fk definieren lässt. Eine Basis M ist minimal, wenn keine echte Teilmenge von M eine Basis ist. Offensichtlich gilt für Basen: 1. Basenlemma. Sind M und M 0 endliche Mengen Boolescher Funktion, sodass M eine Basis und Teilmenge von M 0 ist, so ist auch M 0 eine Basis. 2. Basenlemma. Sind M und M 0 endliche Mengen Boolescher Funktion, sodass M eine Basis ist und sich jede Funktion f ∈ M explizit über den Funktionen aus M 0 definieren lässt, so ist auch M 0 eine Basis. Wir wollen nun zeigen, dass die Menge der Booleschen Funktionen f∗ , die den Junktoren ∗ = ¬, ∨, ∧, →, ↔ der Aussagelogik entsprechen (s. Kapitel 1.0 für die Definition von f∗ ), eine Basis bilden. Dabei schreiben wir von nun an (wie üblich) kurz ∗ anstelle von f∗ . Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 120 / 146 Folgerungen aus dem Darstellungssatz: Basissatz 1. BASISSATZ. Die Booleschen Funktionen {¬, ∨, ∧} bilden eine Basis der Booleschen Funktionen. BEWEIS. Nach dem Darstellungssatz wird jede Boolesche Funktion von einer Booleschen Formel dargestellt. Es genügt daher zu zeigen, dass sich für jede Boolesche Formel ϕ mit V (ϕ) ⊆ {A0 , . . . , An−1 } die dargestellte n-st. Boolesche Funktion fϕ,n mit Hilfe der Funktionen ¬, ∨ und ∧ darstellen lässt. Wir zeigen dies durch Induktion nach dem Aufbau von ϕ (wobei ~x = (x0 , . . . , xn−1 ) sei): 1 ϕ ≡ Ai : fϕ,n (~x ) = xi = ∨(xi , xi ) 2 ϕ ≡ ¬ψ: Dann gilt fϕ,n = ¬(fψ,n ), d.h. fϕ,n (~x ) = ¬(fψ,n (~x )). fϕ,n ist also explizit über {¬, fψ,n } definierbar. Da nach I.V. fψ,n explizit über {¬, ∨, ∧} definierbar ist, folgt hieraus, dass fϕ,n ebenfalls über {¬, ∨, ∧} explizit definierbar ist. 3 ϕ ≡ ψ0 ∨ ψ1 oder ϕ ≡ ψ0 ∧ ψ1 : Dann gilt fϕ,n = ∨(fψ0 ,n , fψ1 ,n ) bzw. fϕ,n = ∧(fψ0 ,n , fψ1 ,n ). Die Behauptung folgt also wiederum aus der I.V. Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 121 / 146 Folgerungen aus dem Darstellungssatz: Basissatz (Forts.) Aus dem 1. Basissatz folgt mit dem 1. Basenlemma, dass {¬, ∨, ∧, →, ↔} ebenfalls eine Basis ist. Auf der anderen Seite kann der 1. Basissatz wie folgt verschärft werden: 2. BASISSATZ. Folgende Mengen sind Basen der Booleschen Funktionen: (i) {¬, ∨} (ii) {¬, ∧} (iii) {NOR} (iv) {NAND} Hierbei sind die NOR-Funktion (not or - nicht oder) und die NAND-Funktion (not and - nicht und) definiert durch NOR(x0 , x1 ) = ¬(∨(x0 , x1 )) NAND(x0 , x1 ) = ¬(∧(x0 , x1 )) Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 122 / 146 Folgerungen aus dem Darstellungssatz: Basissatz (Forts.) BEWEISIDEE FÜR DEN 2. BASISSATZ. Da {¬, ∨, ∧} eine Basis ist, ist nach dem 2. Basenlemma jede Menge {f0 , . . . , fk }, die erlaubt die Funktionen ¬, ∨, ∧ explizit zu definieren, ebenfalls eine Basis. Zum Beispiel genügt es zum Beweis von (i) daher zu zeigen, dass sich ∧ mit Hilfe von ¬ und ∨ definieren lässt, was nach DeMorgan wie folgt möglich ist: ∧(x0 , x1 ) = ¬(∨(¬(x0 ), ¬(x1 ))) Beweis der anderen Teile: Übung! BEMERKUNG. Die Basen in dem 2. Basissatz sind minimal. Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 123 / 146 1.3.3 Normalformsatz: Disjunktive Normalform Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 124 / 146 Der Normalformsatz für die disjunktive Normalform Eine weitere direkte Folgerung aus dem Darstellungssatz ist: NORMALFORMSATZ (DNF). Zu jeder al. Formel ϕ kann man effektiv eine äquivalente Formel ϕDNF in disjunktiver Normalform angeben, sodass V (ϕ) = V (ϕDNF ) gilt. BEWEISIDEE: Ersetzt man in äquivalenten Formeln ψ und ψ 0 mit V (ψ) ∪ V (ψ 0 ) = {B0 , . . . , Bn−1 } die paarweise verschiedenen Variablen Bi durch paarweise verschiedene Variablen Ci , so erhält man wiederum äquivalente Formeln (Übung!). Wir können daher o.B.d.A. annehmen, dass V (ϕ) = {A0 , . . . , An−1 } gilt. Es genügt dann die Wertetabelle von fϕ zu bestimmen und als ϕDNF die zugehörige Formel ϕfϕ in DNF aus dem Darstellungssatz zu wählen. Es gilt dann fϕ = fϕDNF und daher ϕ äq ϕDNF . Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 125 / 146 Normalformsatz: alternativer Beweis Der Normalformsatz lässt sich auch direkt ohne Rückgriff auf den Darstellungssatz beweisen (s. Skript von Herrn Gloede für Details): Hierzu überführt man eine al. Formel ϕ zunächst in eine äquivalente Boolesche Formel ϕb (mit derselben Variablenmenge), indem man (induktiv) alle Teilformeln ψ → ψ 0 und ψ ↔ ψ 0 mit Hilfe der Äquivalenzen ψ → ψ 0 äq ¬ψ ∨ ψ 0 ψ ↔ ψ 0 äq (¬ψ ∨ ψ 0 ) ∧ (¬ψ 0 ∨ ψ) eliminiert. NB: Nach der Ersetzungsregel ist das Ergebnis dieser Ersetzungen äquivalent zur Ausgangsformel ϕ! Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 126 / 146 Normalformsatz: alternativer Beweis (Fortsetzung) Durch Anwendung der DeMorganschen Regeln und des Gesetzes der doppelten Negation ¬(ψ ∨ ψ 0 ) äq ¬ψ ∧ ¬ψ 0 ¬(ψ ∧ ψ 0 ) äq ¬ψ ∨ ¬ψ 0 ¬¬ψ äq ψ überführt man dann die Boolesche Formel ϕb in eine äquivalente Boolesche Formel ϕn (mit derselben Variablenmenge), in der das Negationszeichen nur vor Variablen vorkommt. Schließlich eliminiert man in ϕn Vorkommen von ∧ von höherem Rang als Vorkommen von ∨ mit Hilfe der Distributivgesetze ψ ∧ (χ ∨ δ) äq (ψ ∧ χ) ∨ (ψ ∧ δ) (ψ ∨ χ) ∧ δ äq (ψ ∧ δ) ∨ (χ ∧ δ) und erhält so (eventuell nach Anwendung der Assoziativität von ∨ und ∧) die gewünschte zu ϕ äquivalente Formel ϕDNF in disjunktiver Normalform. Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 127 / 146 Normalformsatz - alternativer Beweis: Beispiel Sei ϕ ≡ (A ∨ (B ∧ C )) → ¬(B ∧ ¬A) Überführung von ϕ in ϕb : ϕb ≡ ¬(A ∨ (B ∧ C )) ∨ ¬(B ∧ ¬A) Überführung von ϕb in ϕn : ϕb äq (¬A ∧ ¬(B ∧ C )) ∨ (¬B ∨ ¬¬A) äq (¬A ∧ (¬B ∨ ¬C )) ∨ (¬B ∨ A) ≡ ϕn Überführung von ϕn in ϕDNF : ϕn äq ((¬A ∧ ¬B) ∨ (¬A ∧ ¬C )) ∨ (¬B ∨ A) äq (¬A ∧ ¬B) ∨ (¬A ∧ ¬C ) ∨ ¬B ∨ A ≡ ϕDNF Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen (Distributivität) (Assoziativität) 128 / 146 1.3.4 Dualitätsprinzip und Konjunktive Normalform Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 129 / 146 Konjunktive Normalform Die für die Disjunktive Normalform erzielten Ergebnisse lassen sich ähnlich für die Konjunktive Normalform zeigen: DARSTELLUNGSSATZ (KNF). Zu jeder n-stelligen Booleschen Funktion f kann man effektiv eine Boolesche Formel ϕ in konjunktiver Normalform angeben, sodass V (ϕ) = {A0 , . . . , An−1 } und ϕ die Funktion f darstellt (d.h. fϕ = f gilt). NORMALFORMSATZ (KNF). Zu jeder al. Formel ϕ kann man effektiv eine äquivalente Formel ϕKNF in konjunktiver Normalform angeben, sodass V (ϕ) = V (ϕKNF ) gilt. Da der Normalformsatz (KNF) aus dem Darstellungssatz (KNF) wie der Normalformsatz aus dem Darstellungssatz folgt, genügt es den Darstellungssatz (KNF) zu beweisen. Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 130 / 146 Darstellungssatz (KNF): Beweisidee Zu einer Booleschen Funktion f (x0 , . . . , xn−1 ) erhält man die darstellende Formel ϕ in KNF wie folgt: Für jede Eingabekombination ~x = (x0 , . . . , xn−1 ) ∈ {0, 1}n definiere die ∨-Klausel δ~x :≡ λd(0,x0 ) ∨ · · · ∨ λd(n−1,xn−1 ) wobei λd(i,0) ≡ Ai und λd(i,1) ≡ ¬Ai (i = 0, . . . , n − 1). NB. Für eine Belegung B von {A0 , . . . , An−1 } gilt also B(δ~x ) = 1 genau dann, wenn ~x 6= (B(A0 ), . . . , B(An−1 )). Setze ϕ :≡ V x {~ x ∈{0,1}n :f (~ x )=0} δ~ Wir üblerlassen den Nachweis von f = fϕ als Übung. Man kann dies entweder direkt (wie im Falle der DNF) zeigen oder das Dualitätsprinzip verwenden, das wir (nach einem Beipiel) als nächstes betrachten. Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 131 / 146 Darstellungssatz (KNF): Beispiel Die EXOR-Funktion ist durch folgende Wertetabelle bestimmt: x0 x1 EXOR(x0 , x1 ) zugehörige ∨-Klausel δ(x0 ,x1 ) 0 0 0 A0 ∨ A1 1 A0 ∨ ¬A1 0 1 1 0 1 ¬A0 ∨ A1 1 1 0 ¬A0 ∨ ¬A1 Sie wird also von der KNF-Formel ϕEXOR ≡ (A0 ∨ A1 ) ∧ (¬A0 ∨ ¬A1 ) dargestellt. Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 132 / 146 Alternative Konstruktion der KNF: Dualitätsprinzip Eine Formel ϕ kann man auch wie folgt in KNF überführen: Überführe die Negation ¬ϕ von ϕ in Disjunktive Normalform: (¬ϕ)DNF Vertausche in (¬ϕ)DNF die Junktoren ∨ und ∧ und ersetze jedes Literal durch das duale Literal (d.h. A durch ¬A und ¬A durch A). Die so erhaltene Formel ist in KNF und äquivalent zu ϕ Die Korrektheit dieser Konstruktion ergibt sich aus dem allgemeineren Dualitätsprinzip: D(ϕ) entstehe aus ϕ durch Vertauschung von ∨ und ∧. (D(ϕ) nennt man die zu ϕ duale Formel) N(ϕ) entstehe aus ϕ, indem vor jede nichtnegierte Aussagenvariable das Negationszeichen geschrieben wird und bei jeder negierten Aussagenvariable das Negationszeichen gestrichen wird. Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 133 / 146 Dualitätsprinzip: Dualitätssatz DUALITÄTSSATZ. (a) ¬ϕ äq D(N(ϕ)) (b) ϕ äq ψ ⇔ D(ϕ) äq D(ψ) Den Dualitätssatz zeigt man durch Induktion nach dem Formelaufbau unter Verwendung der DeMorganschen Gesetze und des Gesetzes der doppelten Verneinung (sowie der Ersetzungsregel): Übung! Wir demonstrieren die Beweisidee nur anhand eines Beispiels: Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 134 / 146 Dualitätsprinzip: Beispiel Für ϕ :≡ A0 ∨ ¬(A1 ∧ ¬A2 ) ist N(ϕ) ≡ ¬A0 ∨ ¬(¬A1 ∧ A2 ) D(N(ϕ)) ≡ ¬A0 ∧ ¬(¬A1 ∨ A2 ) und es gilt ¬ϕ ≡ äq äq äq ≡ ¬(A0 ∨ ¬(A1 ∧ ¬A2 )) ¬(A0 ∨ (¬A1 ∨ ¬¬A2 )) (DeMorgan) ¬(A0 ∨ (¬A1 ∨ A2 )) (Doppelte Verneinung) ¬A0 ∧ ¬(¬A1 ∨ A2 ) (DeMorgan) D(N(ϕ)) Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 135 / 146 Eigenschaften der DNF und KNF Für Formeln in DNF lässt sich die Erfüllbarkeit sehr leicht überprüfen, während sich für Formeln in KNF die Allgemeingültigkeit sehr leicht überprüfen lässt. Sei ϕ in DNF: ϕ ist genau dann erfüllbar, wenn es zumindest eine ∧-Klausel von ϕ gibt, in der keine Variable sowohl unnegiert als auch negiert vorkommt. Sei ϕ in KNF: ϕ ist genau dann allgemeingültig, wenn in jeder ∨-Klausel von ϕ zumindest eine Variable sowohl unnegiert als auch negiert vorkommt. Die Frage, ob auch die dualen Aussagen gelten, also insbesondere, ob sich für eine Formel ϕ in KNF “schnell” überprüfen lässt, ob diese erfüllbar ist, ist eines der bedeutendsten offenen Probleme der Mathematik (eines der Millenniumsprobleme; s. nächster Abschnitt). NB: Eine naheliegende Lösung, nämlich die KNF-Formel ϕ zunächst in eine äquivalente Formel ϕ0 in DNF zu überführen und dann obiges schnelles Verfahren zur Überprüfung der Erfüllbarkeit von Formeln in DNF anzuwenden, funktioniert nicht: Die Überführung in DNF kann (durch Anwendung der Distributivgesetze) die Formel ϕ exponentiell aufblähen, sodass das Verfahren insgesamt exponentiell gemessen in der Länge von ϕ (also sehr langsam) ist. Mathematische Logik (WS 2016/17) Kapitel 1.3: Normalformen 136 / 146 Kapitel 1.4 Exkurs: Entscheidbarkeit und Komplexität Mathematische Logik (WS 2016/17) K. 1.4: Entscheidbarkeit und Komplexität 137 / 146 Algorithmen Ein Algorithmus oder eine Rechenvorschrift ist ein effektives Verfahren zur Überprüfung von Eigenschaften von Daten Ist x eine Primzahl? oder zur Transformation von Daten Bestimme den größten gemeinsamen Teiler von x und y ! oder Berechne die Summe von x und y ! oder zur Generierung (möglicherweise unendlicher) Datenmengen Zähle alle Primzahlen auf! NB: Der Algorithmenbegriff ist kein formaler mathematischer Begriff. Im letzten Teil der Vorlesung werden wir eine mögliche Formalisierung betrachten. Mathematische Logik (WS 2016/17) K. 1.4: Entscheidbarkeit und Komplexität 138 / 146 Daten und Wörter Hierbei sind Daten endliche Darstellungen mathematischer Objekte. Bei natürlichen Zahlen werden also nicht die Zahlen selbst sondern z.B. deren Unär-, oder Binär- oder Dezimaldarstellung verwendet. Meist werden Daten als Wörter über einem gegebenen endlichen Alphabet A (d.h. als endliche Folgen von Symbolen (Buchstaben) aus A) gewählt. Die Menge aller Wörter über A wird mit A∗ bezeichnet. Das Alphabet der Sprache der Aussagenlogik ist A = {¬, ∨, ∧, →, ↔, (, ), A, 1} wobei die Aussagenvariable Ai durch A1i dargestellt wird (wobei 1i das aus i Einsen bestehende Wort ist). Aussagenlogische Formeln sind dann spezielle Wörter über diesem Alphabet. Mathematische Logik (WS 2016/17) K. 1.4: Entscheidbarkeit und Komplexität 139 / 146 Berechenbarkeit, Entscheidbarkeit und Aufzählbarkeit Ein Berechnungsverfahren für eine (1-st.) Funktion f : A∗ → A∗ ist ein Algorithmus B, der bei Eingabe eine Wortes w ∈ A∗ den Wert f (w ) berechnet und ausgibt. f : A∗ → A∗ heißt berechenbar, wenn es ein Berechnungsverfahren für f gibt. Ein Entscheidungsverfahren für eine (1-dim.) Menge M ⊆ A∗ ist ein Algorithmus E, der bei Eingabe eine Wortes w ∈ A∗ feststellt, ob w in M liegt (und entsprechend JA oder NEIN ausgibt). M ⊆ A∗ heißt entscheidbar, wenn es ein Entscheidungsverfahren für M gibt. Ein Aufzählungsverfahren für eine (1-dim.) Menge M ⊆ A∗ ist ein Algorithmus A, der - ohne Eingabe - (genau) die Wörter w aus M (in beliebiger Reihenfolge) ausgibt. M ⊆ A∗ heißt aufzählbar, wenn es ein Aufzählungsverfahren für M gibt. (Entsprechend für mehrstellige Funktionen bzw. mehrdimensionale Mengen) Mathematische Logik (WS 2016/17) K. 1.4: Entscheidbarkeit und Komplexität 140 / 146 Berechenbarkeit, Entscheidbarkeit und Aufzählbarkeit: Beziehungen Eine Funktion f : A∗ → A∗ ist genau dann berechenbar, wenn deren Graph Graph(f ) = {(w , v ) : f (w ) = v } entscheidbar (oder: aufzählbar) ist. Eine Menge M ⊆ A∗ ist genau dann entscheidbar, wenn deren charakteristische Funktion ( 1 falls w ∈ M cM (w ) = 0 sonst berechenbar ist. Eine Menge M ⊆ A∗ ist genau dann entscheidbar, wenn die Menge A und deren Komplement M = A∗ \ M aufzählbar sind. Insbesondere ist also jede entscheidbare Menge aufzählbar. (Wie man in der Berechenbarkeitstheorie zeigt, gibt es aber aufzählbare Mengen, die nicht entscheidbar sind. Wir werden hierauf im letzten Teil der Vorlesung zurückkommen.) Mathematische Logik (WS 2016/17) K. 1.4: Entscheidbarkeit und Komplexität 141 / 146 Entscheidbarkeit und Berechenbarkeit in der Aussagenlogik Für ein Wort w über dem Alphabet A = {¬, ∨, ∧, →, ↔, (, ), A, 1} der Sprache der Aussagenlogik ist entscheidbar, ob dieses eine al. Formel ist. D.h. die Menge FAL ⊆ A∗ ist entscheidbar. Da man für eine Belegung B der in einer Formel ϕ vorkommenden Variablen den Wahrheitswert B(ϕ) berechnen kann und da man die endlich vielen Belegungen von V (ϕ) effektiv angeben kann, sind folgende Mengen entscheidbar: I I I die Menge der erfüllbaren Formeln: {ϕ ∈ FAL : erf[ϕ]} die Menge der allgemeingültigen Formeln: {ϕ ∈ FAL : ag[ϕ]} die Menge der kontradiktorischen Formeln: {ϕ ∈ FAL : kd[ϕ]} Mathematische Logik (WS 2016/17) K. 1.4: Entscheidbarkeit und Komplexität 142 / 146 Entscheidbarkeit und Berechenbarkeit in der Aussagenlogik (Forts.) Entsprechend kann man für Formeln ϕ und ψ entscheiden, ob diese äquivalent sind. D.h. die (2-dim.) Menge {(ϕ, ψ) : ϕ äq ψ} ist entscheidbar. Aus den Normalformsätzen (für DNF und KNF) folgt, dass es berechenbare Funktionen fDNF und fKNF gibt, die jeder Formel ϕ eine äquivalente Formel in DNF bzw. KNF zuordnen. Zusammenfassend kann man feststellen, dass die grundlegenden syntaktischen und semantischen Begriffe der Aussagenlogik entscheidbar sind. Mathematische Logik (WS 2016/17) K. 1.4: Entscheidbarkeit und Komplexität 143 / 146 Komplexität Die Ausführung eines Algorithmus A erfolgt in Schritten, wobei in jedem Schritt eine elementare Operation ausgeführt wird. Bemerkung: Um dies zu präzisieren, muss man den Algorithmenbegriff formalisieren (was wir aber erst im letzten Teil der Vorlesung tun werden). Die Anzahl der von A bei einer Eingabe w durchgeführten Schritte bezeichnet man auch als die Rechenzeit timeA (w ) von A bei Eingabe w . Man sagt, dass der Algorithmus A f (n)-zeitbeschränkt ist (für eine Funktion f : N → N), falls für jede Eingabe w der Länge n die Rechenzeit von A linear in f (n) beschränkt ist, d.h. timeA (w ) ∈ O(f (|w |)) gilt. Ein Problem (d.h. eine Menge) M ⊆ A∗ ist in Zeit f (n) lösbar, wenn es ein f (n)-zeitbeschränktes Entscheidungsverfahren für M gibt. Insbesondere heißt M in Linearzeit (Quadratzeit, Polynomialzeit) lösbar, wenn M in Zeit f (n) = n (f (n) = n2 , f (n) = p(n) für irgendein Polynom p) lösbar ist. Die Komplexität von Berechnungsverfahren und (berechenbaren) Funktionen ist entsprechend definiert. Mathematische Logik (WS 2016/17) K. 1.4: Entscheidbarkeit und Komplexität 144 / 146 Komplexität in der Aussagenlogik: Beispiele Die Frage, ob ein Wort über dem Alphabet A der AL eine Formel ist, lässt sich in Quadratzeit entscheiden. Ebenso lässt sich für eine al. Formel ϕ und eine gegebene Belegung B der Variablenmenge V (ϕ) in Quadratzeit entscheiden, ob B die Formel ϕ wahrmacht. Da die Anzahl der Belegungen von V (ϕ) exponentiell in |V (ϕ)| und daher i.a. exponentiell in der Länge von ϕ ist, erfordern die naiven Verfahren zur Überprüfung der Erfüllbarkeit bzw. Allgemeingültigkeit von ϕ Exponentialzeit. Die in Kapitel 1.3 eingeführten schnellen Verfahren zeigen jedoch, dass I I das Erfüllbarkeitsproblem für Formeln in DNF in Quadratzeit und das Allgemeingültigkeitsproblem für Formeln in KNF ebenfalls in Quadratzeit lösbar sind. Mathematische Logik (WS 2016/17) K. 1.4: Entscheidbarkeit und Komplexität 145 / 146 Komplexität in der Aussagenlogik: ein offenes Problem Die Frage, ob das Erfüllbarkeitsproblem für Formeln in KNF (oder äquivalent hierzu - das Allgemeingültigkeitsproblem für Formeln in DNF) ebenfalls in Polynomialzeit lösbar ist, gehört zu den interessantesten offenen Problemen der Mathematik. Diese Frage ist äquivalent zu dem sog. P-NP-Problem, das viele als das bedeutendste offene Problem der Theoretischen Informatik ansehen und das zu den Milleniumsproblemen der Mathematik gehört: http://www.claymath.org/millennium/ Erwartet wird eine negative Lösung, die zugleich zeigen würde, dass hunderte interessanter Optimisierungprobleme keine schnellen (allgemeinen) Lösungen besitzen. Auch basiert die Sicherheit gängiger Verschlüsselungsverfahren auf dieser Annahme. Eine unerwartete positive Lösung könnte daher auch für die Praxis von enormer Bedeutung sein. LITERATUR: Garey, Michael R.; Johnson, David S. Computers and intractability. A guide to the theory of NP-completeness. W. H. Freeman and Co., 1979. Mathematische Logik (WS 2016/17) K. 1.4: Entscheidbarkeit und Komplexität 146 / 146