DEPENDABLE SYSTEMS AND SOFTWARE Fachrichtung 6.2 — Informatik Universität des Saarlandes Christian Eisentraut, M.Sc. Julia Krämer Mathematik-Vorkurs für Informatiker (Wintersemester 2012/13) Lösungsblatt 2 (Aussagenlogik) 1 Diskussionsbedarf Aufgabe 2.1 (Logik(?!) in der Welt) Überlegen Sie sich typische logische Fehlschlüsse, die Menschen oft und gerne ziehen. Welche davon haben Sie schon bei sich selbst beobachtet, oder gar in den Massenmedien verbreitet gesehen. Welche Bedeutung hat/hätte ein korrektes Verständnis von Logik damit für die Gesellschaft? Diskutieren Sie! Aufgabe 2.2 (Logik in der realen Welt) Versuchen Sie Zusammenhänge der realen Welt durch logische Aussagen (hauptsächlich wohl mit Implikationen und Äquivalenzen) zu beschreiben, ähnlich zu dem Beispiel mit dem Streichholz und der Streichholzschachtel. 2 Sprachliches, Symbolisches, das Ding an sich Aufgabe 2.3 (Variablen) Erklären Sie den Unterschied zwischen Metavariablen und Aussagenvariablen. Beantworten Sie dabei auch folgende Fragen: Weshalb brauchen wir Aussagenvariablen in unserer Aussagenlogik? Benötigen wir eigentlich auch Metavariablen unbedingt um Aussagenlogik zu betreiben? Aufgabe 2.4 (Syntax, Semantik ) Reisen Sie eine Woche in die Vergangenheit zurück, bevor Sie im Vorkurs waren und erklären Sie sich dort selbst den Unterschied zwischen ⊥ und f bzw. > und w. Aufgabe 2.5 (Backus-Naur-Form (1)) Geben Sie die Backus-Naur-Form zur induktiv definierten Sprache Listen über den Wörtern o und ∗ an. Zur Erinnerung: Die Sprache enthält Wörter, die nach folgendem Schema aufgebaut sind: o, ∗o. ∗ ∗ o, ... . Lösung 2.5: ϕ ::= o | ∗ϕ 1 Aufgabe 2.6 (Backus-Naur-Form (2)) Geben Sie die Backus-Naur-Form an, die die folgenden Wörter (und ihre Forsetzung) beschreibt: ∅, {∅}, {{∅}}, ... . Lösung 2.6: ϕ ::= ∅ | {ϕ} Aufgabe 2.7 (Backus-Naur-Form – umgekehrt) Welche Sprache beschreibt die folgende Backus-Naur-Form? ϕ ::= ab | aϕb Lösung 2.7: Die Backus-Naur-Form beschreibt die Sprache {an bn | n ∈ N}, wobei an die n-fache Wiederholung des Buchstaben a beschreibt. Hinweis: Wir greifen hier eine bestimmte Schreibweise für Mengen – die prädikative Schreibweise – voraus. Aufgabe 2.8 (Symbole) Ist es prinzipell möglich, mit anderen Menschen über ein beliebiges mathematisches “Ding an sich”, z.B. Zahlen, zu sprechen, ohne sich auf Symbole zurückzuziehen? Die obige Frage macht für Sie keinen Sinn? Dann sind Sie bestimmt nicht alleine damit, und Sie sollten das unbedingt in Ihrer Übungsgruppe diskutieren! 3 Was sind Aussagen? Aufgabe 2.9 (Aussagen) Entscheiden Sie, ob die folgenden Sätze Aussagen sind. Geben Sie jeweils auch an, warum es sich Ihrer Meinung nach um (keine) Aussage handelt. Beispiel: In Saabrücken regnet es. — Ein Blick aus dem Hörsaal liefert die Antwort: Entweder regnet es oder es regnet nicht, man kann also eindeutig mit “Ja” oder “Nein” antworten. Damit handelt es sich bei diesem Satz um eine Aussage. (a) (b) (c) (d) (e) (f) (g) (h) (i) (j) (k) (l) (m) Alle Rosen sind rot. Wie geht es dir? Guten Tag! Morgen ist Mittwoch. 4+3=7 Sei x = 3 + 5. Autos haben vier Räder und Computer brauchen Strom. Mir geht es gut und wie geht es dir? 4 + 3 = 8 und 4 − 1 = 2 Heute ist das Wetter schön oder nicht? Ein Monat hat 30 Tage oder eine Woche hat 8 Tage. Wenn du da bist, ruf mich bitte an! Wenn 9 + 3 = 12, dann ist heute Dienstag. 2 Lösung 2.9: (a) Alle Rosen sind rot. – Hierbei handelt es sich um eine Aussage, da wir eindeutig sagen können, dass der Satz (in diesem Fall) falsch ist, es gibt ja auch rosa, orange, weiße und schwarze Rosen. (b) Wie geht es dir? – Eine Frage ist keine Aussage. (c) Guten Tag! – Der Satz ist ein Ausruf und damit keine Aussage. (d) Morgen ist Mittwoch. – Ist heute Dienstag, so ist dieser Satz wahr, ansonsten falsch. Damit handelt es sich um eine Aussage. (e) 4 + 3 = 7 – Von Gleichheiten, die nur Zahlen enthalten, kann man immer entscheiden, ob sie wahr oder falsch sind. Damit handelt es sich bei solchen Sätzen immer um Aussagen. (f) Sei x = 3 + 5. – Hier wird die Variable x definiert, damit ist dieser Satz keine Aussage, da man von Definitionen nicht entscheiden kann, ob sie wahr oder falsch sind. (g) Autos haben vier Räder und Computer brauchen Strom. – Dieser Satz wird durch ein “oder” aus zwei Aussagen zusammengesetzt. Damit handelt es sich wieder um eine Aussage. (h) Mir geht es gut und wie geht es dir? – Obwohl dieser Satz eine “und” enthält, handelt es sich hierbei um eine Frage und nicht um eine Aussage. (i) 4 + 3 = 8 und 4 − 1 = 2 – Beide Teilsätze sind Aussagen, damit ist auch ihre “und”Verknüpfung eine Aussage. (j) Heute ist das Wetter schön oder nicht? – Hierbei handelt es sich um eine Frage und damit nicht um eine Aussage. (k) Ein Monat hat 30 Tage oder eine Woche hat 8 Tage. Beide Teilsätze sind Aussagen, damit auch ihre Verknüpfung durch “oder”. (l) Wenn du da bist, ruf mich bitte an! – Hierbei handelt es sich um eine Bitte und damit nicht um eine Aussage. (m) Wenn 9 + 3 = 12, dann ist heute Dienstag. – Die beiden Teilsätze sind Aussagen. Da auch “wenn-dann” Aussagen zu neuen Aussagen verbindet, handelt es sich hierbei um eine Aussage. Aufgabe 2.10 (Wahre und falsche Aussagen) Geben Sie an, ob die folgenden Aussagen wahr oder falsch sind. Achten Sie vor allem bei zusammengesetzten Aussagen auf Ihre Begründung. Beispiel: 2 ist gerade oder 3 ist gerade. – Diese Aussage ist wahr, da 2 eine gerade Zahl ist und Aussagen, die mit “oder” verbundenen Aussagen genau dann wahr werden, wenn mindestens eine Teilaussage wahr ist. (a) (b) (c) (d) (e) (f) (g) (h) (i) (j) (k) (l) 2<1 1<2 2 4 3 < 5 2 ist gerade oder 4 ist gerade. 2 ist eine natürliche Quadratzahl oder 3 ist eine natürliche Quadratzahl. 3 + 2 = 4 oder 1 + 2 = 3. 2 ist gerade und 4 ist gerade. 3 + 2 = 4 und 1 + 2 = 3. 3 · 7 = 21 und 7 · 3 = 21 Wenn 7 · 3 = 21, dann ist 4 + 11 = 2. Wenn 7 = 2, dann ist Angela Merkel die Königin von England. Genau dann wenn Angela Merkel die Präsidentin der U.S.A. ist, ist 4 · 2 = 1 3 Lösung 2.10: (a) 2 < 1 – Diese Aussage ist falsch. (b) 1 < 2 – Diese Aussage ist wahr. (c) 32 < 45 – Diese Aussage ist wahr. (d) 2 ist gerade oder 4 ist gerade. - Da beide Teilaussagen wahr sind, ist auch die Verknüpfung der beiden Aussagen wahr. (e) 2 ist eine natürliche Quadratzahl oder 3 ist eine natürliche Quadratzahl. – Keine der beiden Aussagen ist wahr, damit ist die Gesamtaussage falsch, da “oder”-Verknüpfungen genau dann falsch sind, wenn beide Teilausagen falsch sind. (f) 3 + 2 = 4 oder 1 + 2 = 3. Die zweite Teilaussage ist wahr und da “oder”-Verknüpfungen wahr werden, wenn mindestens eine Teilaussage wahr ist, ist auch die Gesamtaussage wahr. (g) 2 ist gerade und 4 ist gerade. – Beide Teilaussagen sind wahr, damit ist nach der Definition von “und” auch die Aussage wahr. (h) 3+2 = 4 und 1+2 = 3. – Eine der Teilaussagen ist falsch, damit ist die “und”-Verknüpfung in keinem Falle wahr. (i) 3 · 7 = 21 und 7 · 3 = 21. – Beide Aussagen sind wahr, nach der Definition von “und” ist damit auch die Gesamtaussage wahr. (j) Wenn 7·3 = 21, dann ist 4+11 = 2. – Die erste Teilaussage ist wahr, die zweite Teilaussage ist falsch. Nach der Definition der Implikation ist damit die Gesamtaussage falsch. (k) Wenn 7 = 2, dann ist Angela Merkel die Königin von England. – Da die Prämisse falsch ist, wird die Aussage in jedem Fall wahr gemäß “Aus Falschem kann man Beliebiges folgern.” (l) Genau dann wenn Angela Merkel die Präsidentin der U.S.A. ist, ist 4·2 = 1. – Äquivalenzen kann man zu zwei Implikationen verknüpft mit einem “und” auflösen. Die Prämissen der beiden Implikationen – “Wenn Angela Merkel Präsidentin der U.S.A ist, dann ist 4·2 = 1.” bzw. “ Wenn 4 · 2 = 1, dann ist Angela Merkel Präsidentin der U.S.A.” – sind falsch, damit werden beide Implikationen wahr, damit die “und”-Verknüpfung und wir können folgern, dass die Gesamtaussage wahr ist. Aufgabe 2.11 Überlegen Sie sich fünf typische Fehlschlüsse, die Menschen gerne ziehen und erklären Sie, warum sie diese eigentlich nicht ziehen dürfen. Beispiel: Wenn die Straße nass ist, dann hat es geregnet. – Die Straße ist nicht nur dann nass, wenn es geregnet hat. Ein anderer Grund könnte zum Beispiel ein Wasserrohrbruch sein. 4 Aussagenlogik - Syntax und Semantik Aufgabe 2.12 (Sinn einer Grammatik ) Beantworten Sie die folgende Frage: Wozu ist eine Grammatik gedacht und wie verwendet man Sie? 4 Lösung 2.12: Eine Grammatik dient dazu die korrekten Wörter bzw. Sätze einer Sprache vollständig und korrekt zu beschreiben. Die Sprache, die im Vorkurs betrachtet wird, ist die Sprache der aussagenlogischen Ausdrücke, d.h. eine Grammatik muss keine natürliche Sprache – wie Deutsch oder Englisch – beschreiben. Die Grammatiken, die in der Informatik betrachtet werden, können dies für natürliche Sprachen gar nicht leisten. Vollständig und korrekt heißt hier, wie sehr häufig in der Informatik, dass alle Ausdrücke, die es in der Aussagenlogik gibt, mit Hilfe der Grammatik ableitbar sind und dass man keine Ausdrücke ableiten kann, die nicht in der Aussagenlogik zu finden sind. Das Wort “Ableiten” beschreibt den Vorgang, wie man eine Grammatik benutzt. Grob gesagt ist eine Grammatik ein Ersetzungsystem, man fängt auf der obersten Ebene an, bei den aussagenlogischen Formeln z.B. mit ϕ, dann entscheidet man sich ϕ z.B. durch eine Ausdruck mit einem “und” zu ersetzen, d.h. man hat nun ϕ ∧ ψ und kann nun sowohl für ϕ als auch für ψ so verfahren, also die beiden Metavariablen rekursiv so lange weiterersetzen bis man bei >, ⊥ oder einer Aussagenvariable angelangt ist. Aufgabe 2.13 (Syntax - Anwendung der Grammatik ) Sind die folgende Ausdrücke bezüglich der Grammatik für aussagenlogische Ausdrücke korrekt? Nehmen Sie an, dass ϕ und ψ Metavariablen sind. Beispiel: p ∨ p p – Mit der Grammtik ist es nicht möglich zwei aufeinander folgende Variablen abzuleiten, damit ist der Ausdruck nicht gültig. (a) (b) (c) (d) (e) (f) >∨ ϕ∨ψ p qp p ∧ ∨q p∨q Lösung 2.13: (a) >∨ – Nein, denn ∨ benötigt immer zwei Operanden. (b) ϕ ∨ ψ – Geht man davon aus, dass ϕ und ψ Metavariablen sind, so handelt es sich nicht um einen aussagenlogischen Ausdruck, denn Metavariablen gehören nicht zur Sprache dazu. (c) x – x ist eine Aussagenvariable und nach der Grammatik der Aussagenlogik ableitbar. (d) x y – Es können keine zwei Aussagenvariablen direkt aufeinanderfolgen. (e) p ∧ ∨q - Es können keine zwei Operatoren direkt aufeinander folgen. (f) p ∨ q – Da p und q Aussagenvariablen sind, handelt es sich hierbei um einen korrekten aussagenlogischen Ausdruck. Aufgabe 2.14 (Syntax - mehr Struktur (1)) Geben Sie Strukturbäume zu folgenden Aussagen an: (a) > ∧ ⊥ ∨ > ∨ p → q ↔ r ∧ > (b) p → q → r ∧ s ∨ q (c) r ↔ s ∧ q 5 Lösung 2.14: ↔ → ∨ ∨ ∧ > > r → p ∧ q ↔ → ∧ p r > s ∨ q ∧ r q q s ⊥ Aufgabe 2.15 (Vorgehen (1)) Beschreiben Sie ein effektives, möglich allgemeines Schema zum Erstellen von Syntaxbäumen. Lösung 2.15: Eine Möglichkeit beim Zeichnen von Syntaxbäumen ist die folgende: (a) Zuerst klammert man die Aussdrücke vollständig, d.h. man fügt alle Klammern ein, die man eigentlich dank der Hierarchie der Operatoren nicht braucht. (b) Nun schreibt man den Operator in der äußersten Klammer – die Klammer, die den kompletten Ausdruck umschließt – an den höchsten Punkt des Syntaxbaumes und zieht einen Strich nach unten für jeden nach unten abgehenden Operator. f (c) An jedem Strich (links, mitte bzw. rechts (einstellige oder zweistellige Operatoren)), falls es noch einen gibt und man noch nicht bei >, ⊥ oder einer Aussagenvariablen angekommen ist, verfährt man mit dem einizigen bzw. mit dem linken oder rechten Operanden wie in (b). Aufgabe 2.16 (Was ist die Baumdarstellung genau? ) Warum gibt es keinen Sinn w bzw. f in der Baumdarstellung zu schreiben? Lösung 2.16: Die Baumdarstellung für aussagenlogische Ausdrücke ist eine Möglichkeit klammerungsfrei die Hierarchie der Operatoren auszudrücken. Da man mit der Baumdarstellung zwar die Erscheinungsform der Ausdrücke, nicht aber ihre Bedeutung ändert, handelt es sich hierbei um eine syntaktische Umformung. Syntaxbäume sind in der Tat nur eine andere Aufschreibweise und damit rein syntakischer Natur. Aufgabe 2.17 (Syntax - mehr Struktur (2)) Nun die umgekehrte Richtung: Geben Sie Ausdrücke zu folgenden Strukturbäumen an: ∧ ∧ ↔ ∨ p → q r s ∨ p 6 > → ¬ ∧ > > r ⊥ ⊥ Lösung 2.17: (a) (p ∨ q) ∧ (r → s) (b) (¬(p ∨ >)) ∧ ((> ∧ ⊥) → r) (c) > ↔ ⊥ Aufgabe 2.18 (Vorgehen (2)) Beschreiben Sie nun ein effektives, möglich allgemeines Schema zum Umwandeln von Syntaxbäumen in aussagenlogische Ausdrücke. Lösung 2.18: Folgendes Vorgehen ist eines von mehreren möglichen: (a) Man schreibt zuächst die untersten Ausdrücke, die Aussagenvariablen, > oder ⊥ sein müssen, von links nach rechts, wie sie auch im Baum vorkommen, mit ausreichend Platz auf. (b) Man geht nun von unten nach oben wie folgt vor: Die Operatoren werden zwischen den entsprechenden Ausdrücken eingesetzt und dann der gesamte neue Ausdruck, der schon vollständig ist, geklammert. (c) Man verfährt wie in (b) bis man nicht mehr weiter im Baum nach oben gehen kann. Aufgabe 2.19 (Syntaxbäume) Überlegen Sie sich drei Ausdrücke und drei Syntaxbäume, tauschen Sie nun Ihre aussagenlogischen Ausdrücke mit mindestens einem Ihrer Kommilitonen aus und verfahren Sie bei den neuen Ausdrücken wie in Aufgabe 2.14 bzw. 2.17. Aufgabe 2.20 (Wahrheitstafeln - Grundlegendes) Füllen Sie die folgenden Wahrheitstafeln aus. Sammeln Sie alle Gesetzmäßigkeiten, die Ihnen auffallen. Hinweis: Verwenden Sie die Semantik J·K zum Bestimmen der Werte der aussagenlogischen Ausdrücke. Notieren Sie dabei jeden Zwischenschritt. Beispiel: p q f f f w w f w w (p ∧ q) ∨ (p → q) w w f w Der Wert in der ersten Zeile der Tabelle wird nun mit Hilfe der Semantik bestimmt: JpK = f , JqK = f . Nach Definition der Semantik gilt: Jp ∧ qK = f und Jp → qK = w. Sei ϕ := p ∧ q und ψ := p → q, dann Jϕ ∨ ψK = w nach der semantischen Abbildung, da JϕK = f und JψK = w. (Hier ist nur ein Beispiel gegeben, man muss mit allen weiteren Zeilen genauso verfahren.) Die Aussage ist logisch äquivalent zur Implikation. Um die Wahrheitswerte einer “oder”-Verknüpfung zu bestimmen, muss man nur solange einen Teilausdruck auswerten bis einer der beiden wahr wird. Die erste Tabelle dient zur Wiederholung der Operatoren: 7 p f f w w q f w f w > ⊥ p f f w w q f w f w ¬(p ∨ q) p f w ¬(¬p) p f f w w q f w f w ¬p p∧q ¬p ∧ ¬q p∧> p→⊥ p∨q p∨> p→q ¬(p ∧ q) p⊕> ¬(¬p ∧ ¬q) p↔q ¬p ∨ ¬q p∨⊥ ¬(¬p ∨ ¬q) p⊕q p∧p p∧⊥ p∨p p⊕⊥ (p ∨ q) ∧ ¬(p ∧ q) ¬p ∨ q Lösung 2.20: p f f w w q f w f w > w w w w ⊥ f f f f p f f w w q f w f w ¬(p ∨ q) w f f f p f w ¬(¬p) f w p f f w w q f w f w ¬p w w f f p∧q f f f w ¬p ∧ ¬q w f f f p∧> f w p→⊥ w w f f p∨q f w w w p∨> w w p→q w w f w ¬(p ∧ q) w w w f p⊕> w f ¬(¬p ∧ ¬q) f w w w p↔q w f f w ¬p ∨ ¬q w w w f p∨⊥ f w ¬(¬p ∨ ¬q) f f f w p∧⊥ f f p⊕q f w w f p∧p f f w w p∨p f f w w p⊕⊥ f w (p ∨ q) ∧ ¬(p ∧ q) f w w f 8 ¬p ∨ q w w f f Aufgabe 2.21 (Wahrheitstafeln - nun in Schwer ) Die folgenden Tabellen enthalten schwere Ausdrücke. Ihre Aufgabe ist es nun, die Tabellen auszufüllen. Verwenden Sie dazu die Gesetzmäßigkeiten und Tricks, die Sie in Aufgabe 2.20 gefunden haben. Sie müssen die Zwischenschritte, die in der aussagenlogischen Semantik zum Auswerten von Ausdrücken notwendig sind, nicht explizit aufschreiben. p f f w w q f w f w p∧q ↔p→q ↔p p→p→q p f f w w q f w f w p∧q∨p⊕q ↔p→q p↔p↔p p → q ∨ p ∧ ¬q ∧ p p∨q∨p∨q →p ¬q ∧ ¬p ∨ q ¬p ∨ q → ¬q → ¬p Lösung 2.21: p f f w w q f w f w p∧q ↔p→q ↔p w w w w p→p→q w w f w p f f w w q f w f w p∧q∨p⊕q ↔p→q f w f f p↔p↔p f f w w p → q ∨ p ∧ ¬q ∧ p w w w w p∨q∨p∨q →p w f w w ¬q ∧ ¬p ∨ q w w f w ¬p ∨ q → ¬q → ¬p w w w w Aufgabe 2.22 (Logische Äquivalenzen) Überlegen Sie sich, wieso man logische Äquivalenzen mit Hilfe von Wahrheitstafeln beweisen kann. Lösung 2.22: In Wahrheitstafeln betrachtet man alle möglichen Belegungen der in Ausdrücken vorkommenden Aussagenvariablen. Stimmen zwei Ausdrücke, die die gleichen Aussagenvariablen enthalten, für alle möglichen Belegungen im Wahrheitswert überein, so sind sie nach Definition äquivalent. Aufgabe 2.23 (Verkomplizieren) Suche Sie sich zwei relativ kurze aussagenlogische Ausdrücke. Wenden Sie nun die Gesetzmäßigkeiten der Aussagenlogik (aus der Vorlesung bzw. aus 2.20) an, um mit mindestens fünf Umformungen einen möglichst komplizierten Ausdruck zu erhalten. Tauschen Sie nun mit mindestens einem Ihrer Kommilitonen Ihre komplizierten Ausdrücke aus, und versuchen Sie aus den komplizierten Ausdrücken mit Hilfe der aussagenlogischen Gesetze die Ursprungsausdrücke wieder herauszufinden. 9 5 Logik natürlichsprachlich Aufgabe 2.24 Formulieren Sie die folgenden Aussagen in aussagenlogische Ausdrücke um, indem sie zunächst für jede Teilaussage eine Aussagenvariable definieren und dann die Teilaussagen mit den bekannten aussagenlogischen Operatoren verbinden. (a) Einen Führerschein zu haben ist notwendig dafür, dass man Autofahren darf. (b) Wenn die Blumen nicht gegossen worden sind, dann ist es hinreichend dafür, dass es geregnet hat, dass man die Blumen nicht zu gießen brauch. (c) 4 + x = 8 ist notwendig und hinreichend dafür, dass x = 4. (d) In einem Raum, in dem es nur ein Fenster und keine Tür oder sonstige Öffnungen gibt, ist die Tatsache, dass das Fenster offen ist, notwendig dafür, dass frische Luft hineinkommt. (e) Das jemand Kuchen gebacken hat, ist notwendig dafür, dass man Kuchen essen kann. (f) Keine Bewölkung am Himmel ist notwendig aber nicht hinreichend dafür, dass die Sonne scheint. (g) Dass die Bäume Blätter haben ist hinreichend dafür, dass es nicht Winter ist. (h) Verkehrsregeln sind notwendig, aber nicht hinreichend um Unfälle zu vermeiden. (i) In der Mensa zu essen, ist hinreichend dafür zu wissen, wo sie ist. Lösung 2.24: p := q := z }| { z }| { (a) Einen Führerschein zu haben ist notwendig dafür, dass man Autofahren darf. – q → p p := z }| { (b) Wenn die Blumen nicht gegossen worden sind, dann ist es hinreichend dafür, dass es r := q := z }| { z }| { geregnet hat, dass man die Blumen nicht zu gießen braucht. – p → (r → q) p := q := z }| { z }| { (c) 4 + x = 8 ist notwendig und hinreichend dafür, dass x = 4. – p ↔ q p := }| { z (d) In einem Raum, in dem es nur ein Fenster und keine Tür oder sonstige Öffnungen gibt, ist q := r := z }| { z }| { die Tatsache, dass das Fenster offen ist, notwendig dafür, dass frische Luft hineinkommt. – p → (r → q) p := q := }| { z }| { z (e) Das jemand Kuchen gebacken hat, ist notwendig dafür, dass man Kuchen essen kann. – q→p p := q := }| { z }| { z (f) Keine Bewölkung am Himmel ist notwendig aber nicht hinreichend dafür, dass die Sonne scheint. –q→p p := q := z }| { z }| { (g) Dass die Bäume Blätter haben ist hinreichend dafür, dass es nicht Winter ist.– p → q p := q := z }| { z }| { (h) Verkehrsregeln sind notwendig, aber nicht hinreichend um Unfälle zu vermeiden. – q → p p := q := z }| { z }| { (i) In der Mensa zu essen, ist hinreichend dafür zu wissen, wo sie ist. – p → q 10 Aufgabe 2.25 (Gruppenübung - die andere Richtung) Finden Sie sich zunächst in kleinen Gruppen zusammen.Verfahren Sie dann wie folgt (insgesamt am besten zwei bis drei Mal): Jeder überlegt sich zwei bis vier natürlichsprachliche Aussagen und wie er diese mit Operatoren der Aussagenlogik verbinden möchte. Jeder Aussage wird eine Aussagenvariable zugewiesen und die Verknüpfung nur stellvertretend mit den Aussagenvariablen zusammen mit den Aussagen auf einem Zettel aufgeschrieben. Beispiel: Auf einem Zettel steht dann z.B. p = “Es ist Vollmond”, q=“Wölfe heulen” und p∧q →p Die Zettel werden nun in der Gruppe ausgetauscht. Nach und nach muss nun jeder versuchen, die Verknüpfung der Aussage möglichst schnell und natürlichsprachlich vorzulesen. Die anderen in der Gruppe achten dabei darauf, ob die Formulierung korrekt ist oder ob es noch einfacher geht. Beispiel: Lesen Sie also nicht: “Es ist Vollmond impliziert Wölfe heulen”, sondern lesen Sie: Bei Vollmond heulen Wölfe. Hinweis: Schreiben Sie nur solche Verbindungen von Aussagen auf, die sie auch selbst vorlesen können. Achten Sie beim Vorlesen darauf nicht zu paraphrasieren, d.h. nicht nur die Operatoren in Deutsch zu übersetzen. 6 Tautologien und Kontradiktionen Aufgabe 2.26 (Tautologien finden) Schreiben Sie die ersten fünf Tautologien auf, die Ihnen einfallen. Bauen Sie nun diese Ausdrücke in größere aussagenlogische Ausdrücke ein. Hilft Ihnen das Wissen um diese Tautologien nun dabei, die Wahrheitstabellen für die neuen Ausdrücke zu erstellen? Aufgabe 2.27 Verfahren Sie nun wie in Aufgabe 2.26 für Kontradiktionen. Aufgabe 2.28 Entscheiden Sie, ob die folgenden Aussagen Kontradiktionen, erfüllbar oder Tautologien sind. Hinweis: Verwenden Sie Ihr bisheriges Wissen über Gesetze der Aussagenlogik, Kontradiktionen und Tautologien. Wahrheitstabellen für die Ausdrücke auszufüllen ist sehr aufwendig. (a) p → p → q → p ↔ ⊥ (b) p ↔ q ∨ ¬q (c) p ∨ q ∨ s ∨ r → ¬s (d) p ∨ q ∨ s ∨ r → s (e) > ∧ s ↔ s ∨ ⊥ (f) s ⊕ p ⊕ r ↔ q ∧ s ∨ p ∧ q ↔ r → s 11 Lösung 2.28: (a) p → p → q → p ↔ ⊥ – Bei p → p → q → handelt es sich, wie bereits in den Aufgaben gesehen, um eine Tautologie, damit ist der gesamte Ausdruck eine Kontradiktion. (b) p ↔ q ∨ ¬q – Der Ausdruck ist erfüllbar, da er zu w auswertet, falls alle Aussagenvariablen mit w belegt sind. Er ist keine Tautologie, da er für JpK = f immer zu falsch auswertet (q ∨ ¬q wertet immer zu w aus). (c) p ∨ q ∨ s ∨ r → ¬s – Dieser aussagenlogische Ausdruck ist erfüllt, wenn alle Variablen mit f belegt sind. Ist s jedoch mit w belegt, so wertet der Ausdruck zu f aus. Damit handelt es sich nicht um eine Tautologie. (d) p ∨ q ∨ s ∨ r → s – Sin alle Variablen bis auf s mit w belegt, so wertet der Ausdruck zu f aus, damit kann er keine Tautologie sein. Ist s jedoch mit w belegt, so wertet er zu w aus. Damit ist er erfüllbar. (e) > ∧ s ≡ s ∨ ⊥ – Beide Teilausdrücke der Äquivalenz sind logisch äquivalent zu s. Damit handelt es sich bei dem Ausdruck um eine Tautologie. (f) s ⊕ p ⊕ r ↔ q ∧ s ∨ p ∧ q ↔ r → s - Der Ausdruck ist keine Tautologie, da er für p belegt mit f und allen anderen Aussagenvariablen belegt mit w falsch wird. Er ist aber erfüllbar, da er zu w auswertet, falls alle Aussagenvariablen mit w belegt sind. 12 7 Weck den Forschergeist Aufgabe 2.29 (Aussagenlogische Operatoren (1)) Was ist die kleinste Menge von aussagenlogischen Operatoren, die vollständig ist in dem Sinne, dass Sie mit ihr alle anderen Operatoren darstellen können? Finden Sie eine noch kleinere Menge, wenn Sie sich neue Operatoren überlegen, die Sie in der Vorlesung nicht kennengelernt haben? Aufgabe 2.30 (Aussagenlogische Operatoren (2)) Wieviele verschiede aussagenlogische Operatoren mit n Operanden sind denkbar? Hinweis: Betrachten Sie alle Möglichkeiten n Wahrheitswerte miteinander zu verknüpfen. Lösung 2.30: Es sind 2n+1 verschiedene Operatoren denkbar, da es 2n viele verschiedene Kombinationen von n Wahrheitswerten gibt (n-Stellen, jede Stelle ist mit 2 Werten belegbar) und da man jeder Kombination wieder w bzw. f zuordnen kann. Aufgabe 2.31 (Logik verallgemeinert) Können Sie sich eine sinnvolle Logik vorstellen, die mehr Wahrheitswerte kennt als w und f ? Diskutieren Sie! 13