ÜBUNG ZUM GRUNDKURS LOGIK WS 2015/16 — GÜNTHER EDER SPARSAMKEIT BEI DER WAHL DER JUNKTOREN • Wie sich mit Wahrheitstafeln zeigen lässt, benötigen wir nicht gar nicht alle Junktoren die „offiziell“ in unserer Sprache vorkommen α β (α ∨ β) ¬(¬ α ∧ ¬β) w w w w w f w f w f f α β (α → β) ¬(α ∧ ¬β) w w w w w w f f f w w f w w w f f f f w w • Sofern wir ¬ und ∧ zur Verfügung haben, können wir auch ohne ∨ auskommen, ohne an Ausdrucksstärke zu verlieren • Sofern wir ¬ und ∧ zur Verfügung haben, können wir auch ohne ⟶ auskommen, ohne an Ausdrucksstärke zu verlieren GEHT’S NOCH SPARSAMER? • Es geht noch sparsamer! Es gibt einzelne Junktoren, mit denen wir alle anderen Junktoren definieren können • Solche Junktoren nennt man auch Sheffer-Junktoren α β (α ↑ β) bzw. (α NAND β) α β (α ↓ β) bzw. (α NOR β) w w f w w f w f w w f f f w w f w f f f w f f w „Sheffer-Strich“ • „Peirce-Operator" Wie sich leicht zeigen lässt, kann man sowohl mit ↑ als auch mit ↓ alle anderen Junktoren ¬, ∧, ∨, ⟶, ⟷ definieren (Übungsbeispiel). FUNKTIONALE VOLLSTÄNDIGKEIT • Die Idee, dass wir mit einigen Junktoren andere Junktoren definieren können, führt zum Begriff der funktionalen Vollständigkeit • Dass eine Menge von Junktoren J funktional vollständig ist bedeutet, dass wir nicht nur alle Junktoren ¬, ∧, ∨, ⟶, ⟷ mit Hilfe der Junktoren in J definieren können, sondern alle „potentiellen“ Junktoren überhaupt! • Um diese Idee zu präzisieren benötigen wir den Begriff der Wahrheitsfunktion WAHRHEITSFUNKTION Def. Eine n-stellige Wahrheitsfunktion ist eine Funktion, die n-Tupel von n Wahrheitswerten auf Wahrheitswerte abbildet, d.h. f: {w, f} ⟶ {w, f} • Unter einem n-Tupel verstehen wir hier eine geordnete Folge von n Wahrheitswerten der Länge n; {w, f} bezeichnet die Menge aller nTupel von Wahrheitswerten • Zum Beispiel sind ⟨w, f⟩ und ⟨f, w⟩ zwei verschiedene 2-Tupel (oder einfach Tupel); ⟨w, w, f⟩ ist ein 3-Tupel (oder Tripel); ⟨w, f, f, f⟩ ein 4Tupel (oder Quadrupel) und ⟨w, f, w, f, w, f, w⟩ ein 7-Tupel BEISPIELE FÜR WAHRHEITSFUNKTIONEN • Die Wahrheitsfunktion f¬, die der Negation ¬ entspricht, ist eine einstellige Wahrheitsfunktion, die w auf f und f auf w abbildet w f¬ f • f w Die Wahrheitsfunktion f∧, die der Konjunktion ∧ entspricht, ist eine zweistellige Wahrheitsfunktion, die das 2-Tupel ⟨w, w⟩ auf w, ⟨w, f⟩ auf f, ⟨f, w⟩ auf f, und ⟨f, f⟩ auf f abbildet ⟨w, w⟩ f∧ w ⟨w, f⟩ f ⟨f, w⟩ f ⟨f, f⟩ f BEISPIELE FÜR WAHRHEITSFUNKTIONEN • Es gibt aber auch 3-, 4-, oder 17-stellige Wahrheitsfunktionen, die keinem der „üblichen“ Junktoren entsprechen, die aber nichtsdestotrotz „potentiellen“ 3-, 4- oder 17-stelligen Junktoren enstprechen, etwa die Funktion g mit ⟨w, w, w⟩ g f ⟨w, w, f⟩ w ⟨w, f, w⟩ f ⟨w, f, f⟩ w ⟨f, w, w⟩ f ⟨f, w, f⟩ f ⟨f, f, w⟩ f ⟨f, f, f⟩ w WAHRHEITSFUNKTIONEN UND JUNKTOREN • Offenbar entspricht jeder Formel die wir in unserer Sprache, via Wahrheitstafel für diese Formel, eine bestimmte Wahrheitsfunktion. • Wir sagen dann auch, dass diese Formel die Wahrheitsfunktion ausdrückt. • Mit diesen Festlegungen können wir definieren: Def. Eine Menge von Junktoren J heisst funktional vollständig falls sich durch die Formeln, die sich mit Hilfe der Junktoren in J bilden lassen, alle Wahrheitsfunktionen ausdrücken lassen. WAHRHEITSFUNKTIONEN UND JUNKTOREN • Die Frage, die wir uns zuerst stellen ist: Gibt es überhaupt Junktorenmengen J, die funktional vollständig sind? Ist insbesondere unsere Menge von Junktoren {¬, ∧, ∨, ⟶, ⟷} funktional vollständig? • Die Antwort ist: Ja. Eine Möglichkeit das einzusehen, besteht darin zu zeigen, dass jede Wahrheitsfunktion in kanonischer Weise durch eine Formel ausdrückbar ist, die nur die Junktoren ¬, ∧ und ∨ enthält. • (Klarerweise ist {¬, ∧, ∨, ⟶, ⟷} funktional vollständig, wenn wir zeigen können, dass sogar {¬, ∧, ∨} schon funktional vollständig ist.) BEISPIEL: SUCHEN EINE FORMEL MIT FOLGENDER WAHRHEITSTAFEL α sollte wahr sein falls… p q r α w w w f w w f w w f w f w f f w f w w f f w f f f f w f f f f w BEISPIEL: SUCHEN EINE FORMEL MIT FOLGENDER WAHRHEITSTAFEL α sollte wahr sein falls… p q r α w w w f w w f w w f w f w f f w f w w f f w f f f f w f f f f w (i) … p wahr, q wahr, r falsch sind oder p wahr, q falsch, r falsch sind oder p falsch, q falsch und r falsch sind… BEISPIEL: SUCHEN EINE FORMEL MIT FOLGENDER WAHRHEITSTAFEL α sollte wahr sein falls… p q r α w w w f w w f w w f w f w f f w f w w f f w f f f f w f f f f w (i) … p wahr, q wahr, r falsch sind oder p wahr, q falsch, r falsch sind oder p falsch, q falsch und r falsch sind… (ii) … d.h. falls (p ∧ q ∧ ¬r) wahr ist oder (p ∧ ¬q ∧ ¬r) wahr ist oder (¬p ∧ ¬q ∧ ¬r) wahr ist… BEISPIEL: SUCHEN EINE FORMEL MIT FOLGENDER WAHRHEITSTAFEL α sollte wahr sein falls… p q r α w w w f w w f w w f w f w f f w f w w f f w f f f f w f f f f w (i) … p wahr, q wahr, r falsch sind oder p wahr, q falsch, r falsch sind oder p falsch, q falsch und r falsch sind… (ii) … d.h. falls (p ∧ q ∧ ¬r) wahr ist oder (p ∧ ¬q ∧ ¬r) wahr ist oder (¬p ∧ ¬q ∧ ¬r) wahr ist… (iii)… d.h. falls (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q ∧ ¬r) ∨ (¬p ∧ ¬q ∧ ¬r) wahr ist BEISPIEL: SUCHEN EINE FORMEL MIT FOLGENDER WAHRHEITSTAFEL α sollte wahr sein falls… p q r α w w w f w w f w w f w f w f f w f w w f f w f f f f w f f f f w (i) … p wahr, q wahr, r falsch sind oder p wahr, q falsch, r falsch sind oder p falsch, q falsch und r falsch sind… (ii) … d.h. falls (p ∧ q ∧ ¬r) wahr ist oder (p ∧ ¬q ∧ ¬r) wahr ist oder (¬p ∧ ¬q ∧ ¬r) wahr ist… (iii)… d.h. falls (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q ∧ ¬r) ∨ (¬p ∧ ¬q ∧ ¬r) wahr ist (iv)et voila! Formel gefunden: α = (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q ∧ ¬r) ∨ (¬p ∧ ¬q ∧ ¬r) DISJUNKTIVE NORMALFORM (DNF) • Zum Auffinden einer Formel α, die eine bestimmte vorgegebene Wahrheitsfunktion ausdrücken soll / eine bestimmte vorgegebene Wahrheitstafel haben soll, befolgen wir also folgendes Kochrezept: Schritt 1: Finde alle Zeilen / Interpretationen, in denen die gesuchte Formel α wahr sein soll. Schritt 2: Für jede einzelne der Zeilen / Interpretationen, die du im ersten Schritt ausgemacht hast: Bilde die Konjunktion aller atomaren Aussagen bzw. deren Negationen, je nachdem ob die atomare Aussage in dieser Interpretation wahr oder falsch ist. Schritt 3: Bilde die Disjunktion all der Konjunktionen, die du im zweiten Schritt gebildet hast. • Eine Formel der Art wie man sie durch dieses Kochrezept bekommt, d.h. eine Disjunktion von Konjunktion von Literalen (= atomare Formeln bzw. deren Negationen), nennt man auch (kanonische) disjunktive Normalform oder (K)DNF. DNF UND FUNKTIONALE VOLLSTÄNDIGKEIT • Der theoretisch wichtige Punkt ist folgender: Es ist klar, dass (i) sich für jede Wahrheitsfunktion, die nicht immer den Wert f (falsch) hat, eine Formel in kanonischer DNF finden lässt, die diese Wahrheitsfunktion ausdrückt. (ii) sich die konstante Wahrheitsfunktion, die immer den Wert f (falsch) hat, durch eine Formel ausdrücken lässt, die nur Junktoren aus {¬, ∧, ∨} enthält. (Welche!?) • Daraus ergibt sich folgendes Theorem. Die Junktorenmenge {¬, ∧, ∨} ist funktional vollständig. DNF UND FUNKTIONALE VOLLSTÄNDIGKEIT • Wir haben früher schon gesehen, dass sich (α ∨ β) und (α ∧ β) durch ¬(¬α ∧ ¬β) bzw. ¬(¬α ∨ ¬β) definieren lassen. Zusammen mit dem Theorem von vorhin, folgt daher sofort: Theorem. Die Junktorenmengen {¬,∨} und {¬,∧} sind funktional vollständig. • Wir wissen auch, dass wir das materiale Konditional → definieren können (z.B. durch ¬(α ∧ ¬β) oder ¬α ∨ β). Daraus folgt: Theorem. Die Junktorenmenge {¬,→} ist funktional vollständig. • Wir können also zeigen, dass eine bestimmte Junktorenmenge J funktional vollständig ist, indem wir zeigen, dass mit Hilfe der Junktoren in J die Junktoren in {¬,∨} (oder {¬,∧} oder {¬,→}) definiert werden können.