LDS – Lösungshinweise WS 2010/11 , Blatt 5, Version 1.1, 21

Werbung
LDS – Lösungshinweise WS 2010/11 , Blatt 5, Version 1.1, 21. Februar 2011
Versio 1.1 – Unterschied zu Version 1.0α: Wahrheitstabelle und Klassenkalkülausdruck zu Teilaufgabe 5 korrigiert (Dank an den Fehlerfinder Herr Urban!). Dann ist die Behauptung gültig (so hatten wir es auch in der Übung
festgestellt). (Fehler melden Sie bitte an [email protected]).
Aufgabe 37 (Mengenlehre und Logik = Klassenkalkül).
Beweisen oder widerlegen Sie die folgenden Behauptungen mit Hilfe des Klassenkalküls.
a,b,c seien jeweils beliebige Mengen:
1. (a − b) ∪ c = (a ∪ c) − ((a ∩ b) − c)
2. (a ∪ (b ∩ c)) ∩ ((b ∪ c) − a) = (b ∩ c) − a
3. Die folgenden Ausdrücke sind äquivalent a ⊆ b, a − b = ∅, a ∩ b = a, a ∪ b = b.
4. Wenn a ∩ b = b ∪ c ist, dann ist c ⊆ a und b ⊆ a.
5. Es gilt (a − b) ∩ c = ∅ oder (a − b) ⊆ c
6. Es gilt: Wenn b ⊆ a ist, dann ist (a − b) ∩ c = ∅ oder (a − b) ⊆ c oder c ⊆ (a − b)
Übrigens: Wenn in einem Ausdruck die leere Menge vorkommt, dann können Sie sie jederzeit durch die Nullklasse ausdrücken, d.h. z.B. durch (a ∩ a) oder (a ∩ (b − a)). Ist ist aber auch erlaubt, unmittelbar 0 (in den
aussagenlogischen Ausdrücken) hinzuschreiben.
Denken Sie daran: sie müssen erkennen, ob die Aussage, die sie untersuchen sollen, eine harmlose Aussage ist
(Typ 1–5, die sie direkt in Aussagenlogik übersetzen können) oder ob es eine nicht harmlose Aussage ist, die sie
nicht insgesamt betrachten dürfen, sondern in gewisse Teile zerlegen müssen (Typ 6). Details finden sie in den
Unterlagen.
Lösungshinweise:
Generelles vorab: Sie müssen zunächst prüfen, ob die Aussage eine harmlose Aussage ist. Hierzu ersetzen sie
jeden einfachen Ausdruck (das sind alle mit einem = oder ⊆) durch einen Grossbuchstaben. Die logischen Verbindungsworte und, oder, nicht, äquivalent, wenn ... dann ersetzen sie durch die entsprechenden logischen Operatoren:
Logische “Umgangssprache” Formale Logik
oder
∨
und
∧
aus ... folgt ...
→
wenn ... dann ...
→
äquivalent
↔
genau dann, wenn
↔
Dann bringen sie den dabei entstehenden Ausdruck in KNF. Sie können dann jede Disjunktion einzeln untersuchen (alle müssen gültig sein, damit der Gesamtausdruck gültig ist). In unseren Aufgaben wird es oft nur eine
Disjunktion geben.
Für jede Disjunktion müssen sie EINZELN entscheiden, ob sie harmlos ist oder nicht. Sie ist genau dann harmlos,
wenn sie horn ist (s. Markierungen/Hornformeln), also nicht mehr als ein positives Literal enthält.
Fall A: Wenn sie harmlos ist, können sie sie direkt in Aussagenlogik umsetzen – sie müssen natürlich vorher
noch die Grossbuchstaben wieder durch die einfachen Ausdrücke ersetzen, für die sie stehen, und diese dann in
Logik umschreiben:
1
Klassenkalkül
∪
∩
⊆
=
∅
ā
z.B. a ∪ b
Logik
∨
∧
→
↔
0
¬a
¬(a ∨ b)
Dann schauen sie mit Hilfe einer Wahrheitstafel, ob die aussagenlogische Repräsentation der Disjunktion aussagenlogisch gültig ist oder eben nicht.
Fall B: Wenn sie nicht harmlos ist, hat sie die Form ¬A1 ∨ · · · ∨ ¬An ∨ B1 ∨ B2 ∨ · · · ∨ Bm mit m ≥ 2 und
n ≥ 0 (die As können also auch fehlen, siehe Teilaufgabe 6 unten).
Jetzt müssen sie die positiven Buchstaben jeweils EINZELN mit ALLEN negativen Buchstaben kombinieren,
also ¬A1 ∨ · · · ∨ ¬An ∨ B1 bis ¬A1 ∨ · · · ∨ ¬An ∨ Bm betrachten. Das machen sie wie im Falle harmlos, also
jeweils die einfachen Ausdrücke wieder einsetzen und mit Aussagenlogik untersuchen.
Die ursprüngliche Disjunktion, die sie untersuchen wollten, ist genau dann gültig, wenn mindestens einer der
eben untersuchten Ausdrücke aussagenlogisch (EINZELN für sich selbst betrachtet!) gültig ist.
Das war’s! Lesen sie auch nochmal die Vorlesungsunterlagen. Es hört sich wesentlich komplizierter an, als es de
facto ist – keine Angst!
1. (a − b) ∪ c = (a ∪ c) − ((a ∩ b) − c)
(a) Der Gesamtausruck ist schon gegeben (in der Klausur frage ich regelmässig zu Beginn nach dem
formal korrekten Gesamtausdruck des Klassenkalkül).
(b) Typ prüfen: Das ist ein einzelner einfacher Ausdruck A, die spezielle KNF (jeder einfache Ausdruck
wird dort als einzelnes Atom behandelt) wäre also auch bloß A, also nur ein einzelnes positives
Literal. Also: Harmlos. In der Klausr schreiben sie die KNF auf: A und ihr Urteil: harmlos.
(c) Aussagenlogische Formel erzeugen:
((a ∧ ¬b) ∨ c) ↔ ((a ∨ c) ∧ ¬((a ∧ b) ∧ ¬c))
(d) Die Formel auf Gültigkeit untersuchen mit einer Wahrheitstafel:
1 2
3
1
5
3
1
∧
¬ ((a ∧
2 1
a
b
c ((a ∧ ¬ b) ∨
0
0
0
0 1
0
1
0
0
1
0
0 1
0
0
1
0 1
1
1
1
1
1
0
0 0
0
1
0
0 0
0
1
0
0
1
0
0 1
0
1
1
0 0
1
1
1
1
1
0
0 0
1
0
0
1 1
1
1
1
1
1
0
0 1
1
0
1
1 1
1
1
1
1
1
0
0 0
1
1
0
0 0
0
1
1
0
0
1
1 1
1
1
1
0 0
1
1
1
1
1
1
0 0
c)
↔ ((a ∨
4
2. (a ∪ (b ∩ c)) ∩ ((b ∪ c) − a) = ∅.
2
c)
b) ∧ ¬ c))
Wie eben, auch ein einfacher Ausdruck, der bereits komplett gegeben ist. In der aussagenlogischen Repräsentation dürfen sie ∅ auch direkt durch eine 0 ersetzen, s. oben.
Nicht gültig (Den Wahrheitswertverlauf der Seite links vom Gleichheitszeichen sehen sie bei der nächsten
Teilaufgabe - der ist offensichtlich nicht überall 0, also nicht identisch mit dem Wahrheitswertverlauf unter
der Spalte mit der 0, der nur aus - Überraschung - Nullen besteht).
3. (a ∪ (b ∩ c)) ∩ ((b ∪ c) − a) = (b ∩ c) − a
Wie eben. Allerdings gültig (wie sieht die KNF aus? Ja, genau: A).
Hier die zugehörige Wahrheitstafel zur Selbstkontrolle:
2
1
3
1
2
1
4
1
2 1
a b c ((a ∨ (b ∧ c)) ∧ ((b ∨ c) ∧
¬ a)) ↔
0 0 0
0
0
0
0
0
1
1
0
0 1
0 0 1
0
0
0
1
1
1
1
0
0 1
0 1 0
0
0
0
1
1
1
1
0
0 1
0 1 1
1
1
1
1
1
1
1
1
1 1
1 0 0
1
0
0
0
0
0
1
0
0 0
1 0 1
1
0
0
1
0
0
1
0
0 0
1 1 0
1
0
0
1
0
0
1
0
0 0
1 1 1
1
1
0
1
0
0
1
0
0 0
((b
∧ c) ∧ ¬ a)
Der aussagenlogische Ausdruck ist (aussagenlogisch) gültig, d.h. der untersuchte Ausdruck des Klassenkalküls ist 1-gültig und damit gültig (weil er harmlos war).
4. Die folgenden Ausdrücke sind äquivalent a ⊆ b, a − b = ∅, a ∩ b = a, a ∪ b = b
KNF bilden:
Zuerst mal ersetzen wir die einfachen Ausdrücke durch Buchstaben (kann man direkt unter die einfachen
Ausdrücke in der Aufgabenstellung schreiben):
A := a ⊆ b,
B := a − b = ∅,
C := a ∩ b = a,
D := a ∪ b = b
Dann müssen wir den logischen Gehalt der Aussage umsetzen (lesen sie hierzu die Kommentare zu der sehr
ähnlichen Aufgabe 13, Teilaufgabe 4, auf Blatt 2). Am einfachsten ist das, indem wir einen Ringschluß aus
den paarweisen Äquivalenzen machen:
A → B,
B → C,
C → D,
D → A.
Diese einzelnen Folgerungen müssen alle gelten, also versteckt sich hier insgesamt die folgende Konjunktion in der Aufgabenstellung:
(A → B) ∧ (B → C) ∧ (C → D) ∧ (D → A)
Die können wir nun direkt in KNF bringen:
(¬A ∨ B) ∧ (¬B ∨ C) ∧ (¬C ∨ D) ∧ (¬D ∨ A)
Diese Disjunktionen sind alle harmlos! Dieses Urteil und die KNF sollten auch in einer Klausuraufgabe so
hingeschrieben werden (... oder so ähnlich, es gibt mehrere mögliche KNFs, z.B. wenn sie keinen Ringschluß, sondern drei paarweise Äquivalenzen, also insgesamt 6 Folgerungen, zur Darstellung des logischen
Gehalts gewählt hätten – was logisch vollkommen äquivalent gewesen wäre – nur eben aufwändiger).
Wenn sie jetzt übrigens die einfachen Ausdrücke wieder anstelle der Buchstaben einsetzen würden (in die
KNF oder in den Ausdruck davor - ist egal, die sind ja logisch äquivelent), dann hätten sie den Gesamtausdruck des Klassenkalküls in formal korrekter Form (falls danach gefragt gewesen wäre).
Jetzt müssen sie noch die aussagenlogischen Umsetzungen der vier Disjunktionen (oder auch gleich des
Gesamtausdrucks - es sind ja alle harmlos, sie müssen also alle gültig sein - das drückt eine Konjunktion
3
perfekt aus) auf aussagenlogische Gültigkeit, z.B. mit Hilfe der Wahrheitstafelmethode, überprüfen (in der
Klausur wird sicher nach der Wahrheitstafelmethode gefragt werden!). Fertig!
Resultat: ja, die Aussage ist gültig, erstellen Sie zur Übung alle Wahrheitstafeln (oder eben nur eine grosse), hier noch der Vollständigkeithalber die logischen Umsetzungen der einzelnen einfachen Ausdücke:.
A, also a ⊆ b entspricht a → b
B, also a − b = ∅ entspricht (a ∧ ¬b) ↔ 0
C, also a ∩ b = a entspricht (a ∧ b) ↔ a
D, also a ∪ b = b entspricht (a ∨ b) ↔ b
Sie müssen nun also entweder vier Wahrheitstafeln bauen, um z.B. (a → b) → ((a ∧ ¬b) ↔ 0) zu untersuchen - oder direkt den Gesamtausdruck (hier aus der KNF abgelesen) in Logik bringen und untersuchen:
((a → b) → ((a ∧ ¬b) ↔ 0)) ∧ (((a ∧ ¬b) ↔ 0) → ((a ∧ b) ↔ a)) ∧ (((a ∧ b) ↔ a) → ((a ∨ b) ↔ b))
∧ (((a ∨ b) ↔ b) → (a → b))
Durch die Nummerierung der Spalten in der Wahrheitstafel wird übrigens dann erkennbar, welches ∧ der
Top-Level-Operator ist (sonst müsste man recht viele Klammern setzen).
5. Wenn a ∩ b = b ∪ c ist, dann ist c ⊆ a und b ⊆ a.
Gesamtausdruck des Klassenkalküls: a ∩ b = b ∪ c → (c ⊆ a ∧ b ⊆ a).
Spezielle KNF: Wir setzen A für den ersten, B für den zweiten und C für dritten einfachen Ausdruck und
erhalten A → (B ∧ C) ≡ ¬A ∨ (B ∧ C) ≡ (¬A ∨ B) ∧ (¬A ∨ C). Das ist harmlos.
Wir können nun also die aussagenlogische Umsetzung direkt angeben (wird gehen hier vom Originalausdruck aus, wir könnten auch die KNF oder einen äquivalenten Zwischenschritt verwenden):
((a ∧ b) ↔ (b ∨ c)) → ((c → a) ∧ (b → a)).
Diesen logischen Ausdruck untersuchen wir mit der Wahrheitstafel:
1
((a
∧
2
1
3
1
b) ↔ (b ∨ c)) → ((c →
2
a)
∧
1
(b
→
a
b
c
0
0
0
0
1
0
1
1
1
1
0
0
1
0
0
1
1
0
0
1
0
1
0
0
0
1
1
1
0
0
0
1
1
0
0
1
1
0
0
0
1
0
0
0
1
0
1
1
1
1
1
0
1
0
0
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
a))
Der aussagenlogische Ausdruck ist gültig, also ist der untersuchte (Gesamt-)Ausdruck des Klassenkalküls
1-gültig, also ist er gültig.
Antwort: gültig.
6. Es gilt (a − b) ∩ c = ∅ oder (a − b) ⊆ c
Gesamtausdruck des Klassenkalküls: (a − b) ∩ c = ∅ ∨ (a − b) ⊆ c
Typ prüfen, also zunächst spezielle KNF erzeugen: (A ∨ B), also mehr als ein positives Literal in einer
Disjunktion! Das ist nicht harmlos!
Jetzt werden A und B einzeln betrachtet! Keiner der einzeln betrachteten einfachen Ausdrücke ist für sich
genommen gültig, also ist der Gesamtausdruck nicht gültig! (es gibt ein einfaches Gegenbeispiel, s. unten).
Wenn sie aber (fehlerhafterweise!) aus dem Gesamtausdruck eine einzige aussagenlogische Formel mit
einem ∨ gemacht hätten, dann wäre diese (1-)gültig gewesen! Also: Vorsicht!
4
Hier das Gegenbeispiel: a = {1, 2, 3}, b = {1}, c = {3}. Kontrollieren Sie es!
Der Vollständigkeit halber hier die beiden Wahrheitstafeln:
(((a
2
1
3
4
∧
¬ b)
∧
c) ↔ 0)
2
((a
1
3
∧ ¬ b)
→
a b
c
0 0
0
0
1
0
1
0
0
1
1
0 0
1
0
1
0
1
0
0
1
1
0 1
0
0
0
0
1
0
0
0
1
0 1
1
0
0
0
1
0
0
0
1
1 0
0
1
1
0
1
0
1
1
0
1 0
1
1
1
1
0
0
1
1
1
1 1
0
0
0
0
1
0
0
0
1
1 1
1
0
0
0
1
0
0
0
1
c)
Sie sehen die 0, die in der jeweiligen Top-Level-Spalte (die mit der höchsten Nummer) auftaucht, oder?
Also: beide (logisch) nicht gültig, also sind die entsprechenden Klassenkalkülausdrücke nicht 1-gültig, also
ist der Gesamtausdruck nicht gültig.
Antwort: nicht gültig.
7. Es gilt: Wenn b ⊆ a ist, dann ist (a − b) ∩ c = ∅ oder (a − b) ⊆ c oder c ⊆ (a − b)
Formal korrekter Gesamtausdruck des Klassenkalküls: b ⊆ a → (a − b) ∩ c = ∅ ∨ (a − b) ⊆ c ∨ c ⊆ (a − b)
Typ prüfen: A := b ⊆ a,
B := (a − b) ∩ c = ∅,
C := (a − b) ⊆ c,
D := c ⊆ (a − b)
Spezielle KNF bestimmen: A → (B ∨ C ∨ D) ≡ (¬A ∨ B ∨ C ∨ D)
Um deutlich zu machen, dass das nur eine Disjunktion ist, habe ich es insgesamt geklammert. Diese Disjunktion ist nicht horn, also ist sie auch nicht harmlos!
Analyse der Gültigkeit – nach dem oben Gesagten (s. auch die Vorlesungsunterlagen) müssen wir nun die
folgenden Ausdrücke auf 1-Gültigkeit untersuchen (und wenigstens einer von diesen Ausdrücken muss,
für sich allein betrachtet, 1-gültig sein, damit der Gesamtausdruck gültig ist) – merke: die negativen (und
damit harmlosen) Anteile der Disjunktion dürfen den nicht harmlosen positiven Bestandteilen helfen, wahr
zu werden!
¬A ∨ B, ¬A ∨ C, ¬A ∨ D
Diese drei Ausdrücke müssen nun mit Wahrheitstafeln überprüft werden (jeweils, indem sie die logische
Repräsentationen der einfachen Ausdrücke für A, B, C und D anstelle der Buchstaben einsetzen).
Für ¬A ∨ B ist ¬(b ⊆ a) ∨ (a − b) ∩ c = ∅ zu untersuchen (oder, äquivalent: b ⊆ a → (a − b) ∩ c = ∅),
in Logik für die erste Variante also: ¬(b → a) ∨ (((a ∧ ¬b) ∧ c) ↔ 0).
Übrigens: die Ausdrücke des Klassenkalküls brauchen wesentlich weniger Klammern, als die logischen
Formeln, weil durch ihre Definition mengenalgebraische Elemente immer in Form von einfachen Ausdrücken aufreten, die dann durch logische Operatoren verbunden sind. Die einfachen Ausdrücke bestehen
selbst wieder immer aus zwei Termen, die durch = oder ⊆ verbunden sind (s. Definition der Klassenkalkülausdrücke in den Vorlesungsunterlagen). Man könnte sogar die Klammern bei ¬(b ⊆ a) weglassen (weil ¬
Logik ist und damit auf den gesamten mengenalgebraischen Ausdruck anzuwenden wäre), aber das wäre
schon sehr verwirrend – allerdings korrekt).
Für ¬A ∨ C ist ¬(b ⊆ a) ∨ (a − b) ⊆ c zu untersuchen, in Logik also: ¬(b → a) ∨ ((a ∧ ¬b) → c).
Für ¬A ∨ D ist ¬(b ⊆ a) ∨ c ⊆ (a − b) zu untersuchen, in Logik also: ¬(b → a) ∨ (c → (a ∧ ¬b)).
Keine der Logikformeln ist gültig, also ist keiner der untersuchten Ausdrücke 1-gültig, also ist der Gesamtausdruck nicht gültig, und damit ist die ursprüngliche Behauptung widerlegt.
5
Zur Übung die Wahrheitstafeln auch tatsächlich erstellen!
Das Klassenkalkül ist übrigens die perfekte Formalisierung der Logik, die Aristoteles einst ursprünglich formulierte und dann sprachlich analysierte (s. die sogenannten Syllogismen, s. auch Blatt 3 und die Lösungshinweise
dazu). Kant noch bezeichnete die Logik Aristoteles als vollkommen ausreichend für alle logischen Zwecke (was
nicht der Fall ist, man benötigt Prädikatenlogik, um z.B. die Mathematik formalisieren zu können - natürlich
bleiben die von Gödel festgestellten Grenzen).
Mit dem Klassenkalkül kann man echte und nur vermeintlich richtige syllogistische Schlüsse (und noch viele
andere Fragestellungen!) sehr kompakt und unabweisbar präzise untersuchen - diese Formalisierung wurde aber
so erst im frühen 20. Jahrhundert gefunden (s. das Buch von Hilbert und Ackermann)!
Damit schliesst sich der Kreis unserer Untersuchung von Mengenlehre und Logik. Übrigens: Viel Erfolg bei der
Klausur!
6
Herunterladen