Mathematisch-logische Grundlagen der Informatik

Werbung
12
2 Mathematische Logik: Denken in Wahrheitswerten *
2.1 Junktoren und Boolesche
Funktionen *
Die Aussagenlogik formalisiert Verknüpfungen, Junktoren,
von bestimmten Sätzen, Aussagen, denen eindeutig ein Attribut »wahr« oder »falsch« zugeordnet werden kann. Zweistellige Verknüpfungen wie die Konjunktion (=UND) oder
die Disjunktion (=ODER) verknüpfen zwei Aussagen miteinander. Einstellige Junktoren wie die Negation beziehen sich
auf eine Aussage. Mehrstellige Junktoren lassen sich auf
zweistellige zurückführen. Junktoren können durch Wahrheitsmatrizen repräsentiert werden, die eine einfache Bestimmung der Wahrheitswerte zusammengesetzter Aussagen gestatten. Junktoren können auch als Funktionen, sogenannte BOOLEsche Funktionen, aufgefasst werden.
Aussagen
können wahr
oder falsch sein
Die Aussagenlogik hat ihren Namen daher, weil sie sich
mit der Verknüpfung bestimmter Sätze beschäftigt, den sog.
Aussagen. Dies sind Sätze, die »wahr« oder »falsch« sein
können, wie z. B. »Der Ball ist rund« oder »Der nächste Gegner ist der schwerste«. Es gibt natürlich andere Typen von
Sätzen, wie etwa Fragesätze oder Aufforderungen, die vielleicht unverständlich oder unangemessen sind, aber nicht
wahr oder falsch. Die Aussagenlogik konzentriert sich nur
auf die ersteren Satztypen und untersucht deren Verknüpfungsmöglichkeiten. Es kommt dabei nicht darauf an, ob
die entsprechenden Aussagen wahr oder falsch sind oder ob
man das immer feststellen kann. Es geht nur darum, dass es
Sätze von der Form von Aussagen sind, die im Prinzip einen
der beiden Wahrheitswerte, also wahr oder falsch haben.
Wahrheitswerte
Wahrheitswerte werden gewöhnlich mit w und f symbolisiert. Häufig finden sich auch die Symbole »1« für wahr und
»0« für falsch. Im Folgenden wird die binäre Notation mit 1
und 0 verwendet, da es bei der Aussagenlogik – wie schon
bemerkt – nicht nur um die formale Darstellung sprachlicher
Gebilde geht. Da es in der klassischen Aussagenlogik nur die
beiden Werte 1 und 0 gibt, spricht man in diesem Fall von einer zweiwertigen Logik. Diese genauere Charakterisierung
ist deswegen erforderlich, weil es auch mehrwertige Logiken
gibt. Auf einige der entsprechenden Formalismen wird am
Ende dieses Kapitels eingegangen.
13
2.1 Junktoren und Boolesche Funktionen *
Sehr allgemein gesprochen besteht das Gegenstandsgebiet
der Aussagenlogik in der Untersuchung, welche Kombinationen von Wahrheitswerten sich dadurch ergeben, dass man
Aussagen auf bestimmte Weisen zusammensetzt.
Nehmen Sie beispielsweise die Aussagen
Kombination
von Aussagen
Beispiel
p = »es regnet« und q = »die Sonne scheint«.
Zu einem bestimmten Zeitpunkt ist jede der beiden Aussagen entweder wahr oder falsch. Eine Verknüpfung der
beiden Aussagen kann nun z. B. durch »oder« erfolgen,
also
r = »es regnet« ODER »die Sonne scheint«.
Die Frage ist nun, unter welchen Bedingungen diese neue
Aussage r wahr oder falsch ist. »Bedingungen« bedeutet,
dass der Wahrheitswert der Aussage r von der Kombination der Wahrheitswerte von p und q abhängig ist. Da
in der deutschen Sprache nicht immer klar ist, ob das
»ODER« als sog. »nicht ausschließendes ODER« (entweder p oder q oder beides) oder als »ausschließendes
ODER« (entweder p oder q) verstanden wird, kann man
sich rasch darauf verständigen, dass r in den Fällen wahr
ist, wenn es
e tatsächlich regnet, wenn
e tatsächlich die Sonne scheint und wenn
e beides der Fall ist.
Nur in dem Fall, dass beides nicht der Fall ist, werden Sie
r als insgesamt falsch bezeichnen.
Das Wort »ODER« verknüpft demnach p und q und generiert
damit eine neue Aussage r. »ODER« ist ein Beispiel für die
sog. logischen Junktoren, die durch Verknüpfungen von
Einzelaussagen neue Aussagen produzieren. Da in unserem
Beispiel zwei Aussagen zu einer dritten kombiniert wurden,
bezeichnet man »ODER« als zweistelligen Junktor. Formal
wird »ODER« als logische Disjunktion bezeichnet und mit
dem Zeichen ∨ symbolisiert.
Disjunktion:
ODER
Die obige Überlegung, wann die disjunktive Aussage r wahr
oder falsch ist, lässt sich nun durch eine sog. Wahrheitsmatrix (auch: Wahrheitstafel) darstellen:
Wahrheitsmatrix
14
2 Mathematische Logik: Denken in Wahrheitswerten *
∨
0
1
0
0
1
1
1
1
Die hier gewählte Darstellung der Wahrheitstafel (erst 0 =
falsch, dann 1 = wahr ) schließt sich an die übliche Indizierung von Matrizen an. Beachten Sie, dass viele Autoren dies
umgekehrt machen (erst 1 = w).
Zu lesen ist diese Matrix folgendermaßen: Die linke Spalte gibt die Wahrheitswerte für die erste Variable p an, die
oberste Zeile die für die zweite Variable q; die 2 × 2 Matrix
rechts unten zeigt die Wahrheitswerte der mit ∨ kombinierten Aussagen r.
Die Kombination von 1 und 1 ergibt, wie man sieht, 1 (beide
Teilaussagen sind wahr); die Kombination von 1 und 0 ergibt
wieder 1 (es reicht, dass eine Teilaussage wahr ist); entsprechend ergibt die Kombination von 0 und 1 wieder eine 1 und
nur die Kombination zweier Nullen ergibt 0.
Konjunktion:
UND
Beispiel
Ein anderer zweistelliger Junktor ist z. B. das »UND«, das in
gewisser Weise komplementär zum »ODER« ist. »UND« wird
als logische Konjunktion bezeichnet.
Wenn Sie den Satz r = »das Wasser gefriert und die Temperatur ist unter null Grad«, bilden, dann ist vom Sprachverständnis her sofort plausibel, dass r dann und nur dann
wahr ist, wenn beide Teilsätze wahr sind. Wenn es zwar
schneit, aber die Temperatur 3◦ Celsius beträgt, wird man
r nicht als wahr bezeichnen.
Das ergibt folgende Wahrheitsmatrix für die Konjunktion,
die mit ∧ symbolisiert wird:
∧
0
1
0
0
0
1
0
1
Mit ∧ kombinierte Aussagen sind demnach wahr, wenn beide
Teilaussagen wahr sind – 1 und 1 kombiniert – und sonst
immer falsch.
15
2.1 Junktoren und Boolesche Funktionen *
Ebenfalls wichtig ist die Implikation, symbolisiert durch →,
die sprachlich dem »wenn – dann« entspricht. Die Festlegung der Wahrheitswertverteilungen ist hier etwas komplizierter als bei der Disjunktion und der Konjunktion.
Betrachten Sie einmal den Satz:
Implikation
Beispiel
r = »wenn es regnet, wird die Straße nass«.
Es ist einsichtig, dass r sicher als wahr betrachtet wird,
wenn beides zutrifft, wenn also beide Teilaussagen p = »es
regnet« und q = »die Straße wird nass« wahr sind. Ebenso
wird man r als falsch bezeichnen, wenn es zwar regnet,
aber die Straße nicht nass wird. Wie ist es jedoch in den
Fällen, dass p = 0 und q = 0 sowie p = 0 und q = 1 ist?
Die Beschäftigung mit der Aussagenlogik ist schon sehr alt.
In der Tradition der Logikanalysen ist schon sehr früh das
Prinzip des sog. »ex falso quodlibet« eingeführt worden, zu
Deutsch etwa »aus etwas Falschem folgt (auf korrekte Weise)
alles Beliebige«. Für die Festlegung einer Wahrheitsmatrix
der Implikation bedeutet dies Prinzip folgendes:
→
0
1
0
1
1
1
0
1
Ex falso
quodlibet
Eine Implikation ist demnach nur dann falsch, wenn die erste Aussage – die sog.
Prämisse – wahr ist und die zweite Teilaussage, die sog.
Konklusion1 , falsch ist; in allen anderen Fällen ist sie wahr.
Äquivalent dazu ist die sogenannte Kontraposition der Implikation ¬q → ¬p. Dabei bedeutet das Symbol ¬ die Negation, d. h. wenn q wahr ist, dann ist ¬q falsch. Wenn also –
das besagt die Kontraposition – die Konklusion (bei Gültigkeit der Implikation natürlich) falsch ist, folgt daraus, dass
auch die Prämisse falsch sein muss. Der Sinn dieser Matrix
ist gewöhnlich schwer zu vermitteln. Am besten macht man
sich dies an zwei einfachen Beispielen klar, aus denen auch
hervorgeht, was damit gemeint ist, dass eine Implikation
»wahr« ist.
1
Verwendet werden auch die Begriffe Antezedens/Vordersatz und Konsequens/Nachsatz.
Kontraposition
der Implikation
16
2 Mathematische Logik: Denken in Wahrheitswerten *
Aus Falschem
folgt Falsches
Beispiel
Aus Falschem
kann auch
Wahres folgen
Beispiel
Man kann natürlich leicht zeigen, dass aus falschen Prämissen Falsches folgt, dass also p → q wahr ist für den Fall, dass
p und q falsch sind:
Von p: 5 = 7, was offensichtlich falsch ist, gelangt man
durch Subtraktion von 4 auf beiden Seiten zu der ebenfalls falschen Aussage q: 1 = 3. Da das gewählte mathematische Verfahren bekanntlich korrekt ist, hat man wieder
für den Wahrheitswert der Implikation in diesem Fall den
Wert 1.
Schwieriger verständlich ist, dass Falsches Wahres impliziert. Nehmen Sie ein kleines Beispiel:
Eine Zusammenstellung statistischer Daten eines nördlichen Bundeslandes ergab, dass über einige Jahrzehnte die Anzahl der brütenden Störche ungefähr in dem
gleichen Maße abnahm wie die Zahl der Geburten. Unter
der Annahme, dass Babies von Störchen gebracht werden,
könnte man die Implikation formulieren: »Wenn Störche
die Babies bringen UND die Zahl der Störche zurückgeht,
dann sinkt auch die Zahl der Geburten.« Die Konjunktion,
die die Prämisse bildet, ist offensichtlich falsch. Dennoch
bleibt die Konklusion ebenso offensichtlich wahr.
Wegen der Verständnisprobleme mit der Implikation noch
ein weiteres Beispiel. Die Implikation sei: »Wenn zwei
Geraden im dreidimensionalen Raum parallel sind, dann
schneiden sie sich nicht.« Ist die Prämisse wahr, dann gilt,
wie Sie aus der Schulmathematik wissen, die Konklusion. Wenn die Konklusion falsch ist, muss offensichtlich
auch die Prämisse falsch sein. Ist die Prämisse jedoch
falsch, sind also die Geraden nicht parallel, dann gibt es
zwei Möglichkeiten. Entweder die Geraden liegen in einer
Ebene und schneiden sich: Aus Falschem folgt Falsches.
Oder die Geraden sind windschief, dann können sie sich
nicht schneiden: Hier gilt die wahre Konklusion trotz der
falschen Prämisse.
Sie können auch die Implikation mit einer gebräuchlichen
Folgerung in der Mathematik identifizieren, nämlich mit »p
ist eine hinreichende Bedingung für q«. Wenn die Prämisse p
zutrifft, muss auch q zutreffen, da die Prämisse hinreichend
2.1 Junktoren und Boolesche Funktionen *
17
ist: Wenn eine natürliche Zahl durch 100 teilbar ist, dann ist
sie auch durch 10 teilbar.
Das bedeutet aber auch umgekehrt, – das ist der Sinn der
Kontraposition – dass bei falschem q p nicht zutreffen kann,
oder m.a.W. q ist notwendig für p. Der entsprechende Eintrag in der Wahrheitsmatrix für p = 1 und q = 0, kurz W(1,0)
geschrieben, muss also 0 sein: Wenn eine Zahl nicht durch
10 teilbar ist, dann ist sie auch nicht durch 100 teilbar.
Andererseits ist p aber keine notwendige Prämisse für q, d. h.
auch wenn p falsch ist, kann q durchaus wahr sein, aber
auch nicht: sowohl W(0,1) als auch W(0,0) sind 1. Wenn eine
Zahl nicht durch 100 teilbar ist, kann sie immer noch durch
10 teilbar sein oder auch nicht.
Die »Wahrheit« einer Implikation bedeutet demnach einfach,
dass man auf formal korrekte Weise von p auf q schließen
kann. Dies kann zwar wie in den Beispielen für den naiven Betrachter zu inhaltlich etwas verwirrenden Ergebnissen führen, ändert aber nichts an der Korrektheit des Vorgehens und damit an der Wahrheit der Implikation. Vorgreifend sei angemerkt, dass dies in bestimmten Formen mathematischer Beweise eine nicht unwichtige Rolle spielt.
In einem anderen Sinne kommen diese Eigenschaften der
Implikation bei der Überprüfung von Programmen, die als
Implikation Eingabe → Ausgabe aufgefasst werden können, zur Wirkung: Zweckmäßigerweise testet man ein Programm vor dem Einsatz dadurch, dass man Eingaben – Inputs – eingibt, bei denen man weiß, was als richtige bzw.
sinnvolle Ausgabe – Outputs – erfolgen müsste. Selbstverständlich verlangt ein korrektes Programm, dass bei
richtiger Eingabe eine richtige Ausgabe erhalten wird. Erscheint bei richtiger Eingabe eine falsche Ausgabe, dann
ist damit gezeigt, dass das Programm nicht korrekt arbeitet.
Man sollte auch prüfen, was bei einer falschen bzw. unsinnigen Eingabe geschieht:
Ist die Ausgabe dann ebenfalls falsch bzw. unsinnig, zeigt
dies jedoch nicht die Korrektheit des Programms. Gemäß
den Regeln der Implikation – »ex falso quodlibet« – kann
Beispiel:
Programme als
Implikation
18
2 Mathematische Logik: Denken in Wahrheitswerten *
nämlich auch bei einem korrekten Programm die Ausgabe
nach einer falschen Eingabe korrekt sein.
Dabei geht es keineswegs nur um abgehobene Spielereien
für Logiker. Nehmen Sie beispielsweise ein SimulationsProgramm, das die Entwicklung eines Systems aus Anfangszuständen, etwa des Universums kurz nach dem Big
Bang, simulieren soll. Es kann durchaus vorkommen, dass
mehrere verschiedene hypothetische Anfangszustände,
also die Prämissen, den heute zu beobachtenden Zustand
des Systems als Output ergeben, also korrekt vorhersagen. Offensichtlich können nicht alle diese Anfangszustände richtig sein: Die richtige Konklusion ergibt sich
hier aus falschen Prämissen. Eine solche Simulation mag
formal korrekt sein, lässt aber keinen Schluss auf die
Wahrheit der Prämissen zu.
Äquivalenz,
XOR
Zwei weitere »Standardjunktoren« sind die Äquivalenz ↔
sowie das ausschließende ODER, das in der international mittlerweile üblichen Notation mit XOR (exclusive or)
bezeichnet wird. Die Äquivalenz entspricht sprachlich dem
»genau dann, wenn« bzw. »dann und nur dann, wenn«; das
XOR wird sprachlich am besten wieder gegeben durch »entweder – oder«. Die beiden Wahrheitsmatrizen sehen wie
folgt aus:
↔
0
1
XOR
0
1
0
1
0
0
0
1
1
0
1
1
1
0
Man sieht, dass die beiden Junktoren komplementär zueinander sind, da die Matrix des einen Junktors als Umkehrung
(Vertauschung von 0 und 1) der Matrix des anderen verstanden werden kann.
Zur kleinen Einübung in das Denken mit Junktoren sollen
zwei kleine Aufgaben gestellt werden, die dem ungemein
vergnüglichen Buch von Raymond Smullyan [Smul91] entnommen sind.
(a) Eine Insel wird von Menschen bewohnt, die entweder Ritter oder Schurken sind. Ritter sagen immer die Wahrheit
und Schurken – entsprechend – lügen immer. Ein Volkszähler
kommt zu einem Haus, das von einem Ehepaar bewohnt ist.
19
2.1 Junktoren und Boolesche Funktionen *
Auf die Frage, ob es sich bei diesem Paar um Ritter, Schurken oder beides handelt, antwortet der Mann »wir sind beide Schurken« und schlägt die Tür zu. Der Volkszähler weiß
jetzt, wer die Bewohner sind. Sie auch? Hinweis: Welcher
Junktor muss hier benutzt werden? (Genereller Hinweis: Arbeiten Sie mit Fallunterscheidungen!)
(b) Beim nächsten Haus erhält der Zähler die Antwort in Bezug auf das Ehepaar »mindestens einer von uns beiden ist
ein Schurke«. Na was denn nun? Welcher Junktor kommt hier
in Betracht?
Bei der Implikation wurde bereits ein typisches Element der
Kunst des logischen Folgerns bei mathematischen Ableitungen, nämlich die Implikation auf Grund einer hinreichenden Prämisse oder umgangssprachlich »wenn p gilt, dann
gilt auch q«, erwähnt. Ein weiteres Element ist die Folgerung »q gilt genau dann, wenn p gilt« bzw. »q gilt dann und
nur dann, wenn p gilt«, die notwendige und hinreichende
Prämisse. Das dritte typische Element ist die Folgerung »q
gilt nur, wenn p gilt«, also die notwendige Prämisse.
Da diese drei Prämissen und die Folgerungen daraus häufig missverstanden werden, sollen sie hier an Beispielen
noch einmal verdeutlicht werden:
Eine notwendige Prämisse dafür, dass eine natürliche Zahl
>2 eine Primzahl ist, wäre, dass diese nicht durch 2 teilbar ist. Mit anderen Worten: Eine gerade Zahl >2 kann
niemals eine Primzahl sein. Das ist aber natürlich nicht
hinreichend für eine Primzahl, denn eine Zahl, die nicht
gerade ist, muss keineswegs eine Primzahl sein.
Eine hinreichende Prämisse dafür, dass eine Zahl gerade
ist, wäre, dass die Zahl durch 4 teilbar ist, oder m.a.W.: Ist
eine Zahl durch 4 teilbar, dann muss sie eine gerade Zahl
sein. Offensichtlich ist diese Prämisse aber nicht notwendig, denn die Teilbarkeit durch 2 genügt dafür, dass eine
Zahl gerade ist.
Eine notwendige und hinreichende Prämisse dafür, dass
eine natürliche Zahl durch 3 teilbar ist, wäre, wie Sie aus
der Schule wissen, dass die Quersumme der Zahl durch 3
teilbar ist. Überlegen Sie selbst, warum das gilt.
Logische
Folgerungen in
der Mathematik
Beispiel
20
Falsche
Verwendung der
Implikation
2 Mathematische Logik: Denken in Wahrheitswerten *
Im Zusammenhang mit der Verwendung der Implikation und
möglicher, dazu äquivalenter Aussagen liegen typische Irrtümer nahe, auf die an dieser Stelle noch einmal ausdrücklich warnend hinzuweisen ist:
Nehmen Sie an, Sie wissen, dass die Implikation p → q gilt;
Sie haben ferner festgestellt, dass q wahr ist. Wenn Sie jetzt
glauben, dass auch p wahr sein muss, dann sind Sie in die
erste Falle getappt; sehen Sie in die Wahrheitsmatrix!
Nehmen Sie wieder an, Sie wissen, dass p → q gilt; Sie haben
jetzt aber gefunden, dass p falsch ist (also ¬ p wahr). Wenn
Sie jetzt auch q für falsch halten, haben Sie sich erneut geirrt. Beide als Irrtümer erkannte Schlüsse sind nur zulässig,
wenn Sie es mit der Äquivalenz p ↔ q anstelle der Implikation zu tun haben. Was können Sie aus ¬q schließen, wenn p
→ q gilt?
Junktoren als
Funktionen
Die bisher betrachteten Junktoren wurden eingeführt als formale Eigenschaften der Sprache – »und«, »oder« etc. Deswegen werden diese Junktoren auch zuweilen als logische
Partikel der Sprache bezeichnet. Wenn man nun von den
sprachlichen Deutungen abstrahiert und die Junktoren etwas formaler betrachtet, dann lassen sie sich auch verstehen
als spezielle Kombinationen von 1 und 0 (deswegen wurde
hier diese Notation und nicht w und f gewählt). Das logische »UND« lässt sich gemäß der Matrix auffassen als eine
Funktion, die bestimmten Paaren von 1 und 0 jeweils eine
1 oder 0 zuordnet (Funktionen werden in »Abbildungen und
Funktionen«, S. 121, genauer behandelt).
Das ∧ lässt sich demnach darstellen als eine Funktion f mit
f(1,1) = 1, f(1,0) = 0, f(0,1) = 0 und f(0,0) = 0. Entsprechend
ist die Implikation → eine Funktion g mit
g(1,1) = 1, g(1,0) = 0, g(0,1) = 1 und g(0,0) = 1.
Anders gesagt: Jeder Junktor ist eindeutig charakterisiert
durch eine solche Funktion, die jeder möglichen Zweierkombination von 1 und 0 einen entsprechenden Wert zuordnet.
Aus diesem Grund werden Junktoren auch als logische
Funktionen bzw. nach George Boole als Boolesche Funktionen bezeichnet.
Anzahl
möglicher
Junktoren
Eine derartige Interpretation der Junktoren ist offenbar unabhängig von Orientierungen an formalen Eigenschaften der
21
2.1 Junktoren und Boolesche Funktionen *
Sprache. Da in der Sprache praktisch nur die behandelten
Junktoren verwendet werden, stellen Lehrbücher gewöhnlich auch nur diese dar. Die hier gegebene »Funktionsdefinition« führt jedoch sofort auf die Frage, wie viele dieser Funktionen denn noch existieren. Dies ist eine einfache
kombinatorische Aufgabe und die Antwort lautet natürlich
sofort »16«: Es gibt vier verschiedene Viererkombinationen
von 1 und 0 und jede kann den Wert 1 oder 0 annehmen.
Dies ergibt 24 = 16 Funktionen. Die meisten dieser Funktionen spielen in der Sprache keine Rolle, aber in anderen
Kontexten können sie wichtig sein.
Geben Sie die Matrizen für die noch nicht genannten 11
Funktionen an.
Bisher wurden nur sog. zweistellige Junktoren behandelt. Es
gibt jedoch auch einstellige Junktoren, von denen die Negation ¬ und die Identität id die wichtigsten sind. Eine
Wahrheitswerteverteilung für die Negation sieht so aus:
p
0
1
¬p
1
0
Einstellige
Junktoren
Die Negation macht also aus einer Aussage eine andere, indem die Wahrheitswerte umgekehrt werden; die Identität belässt die Werte. Neben diesen beiden gibt es noch zwei andere einstellige Junktoren, also insgesamt 22 = 4.
Bestimmen Sie die entsprechenden Kombinationen der
Werte.
Zu erwähnen ist bei der Negation insbesondere das Prinzip
der doppelten Negation ¬¬ p = p, wobei hier »=« eine Äquivalenz in dem Sinne bedeutet, dass die Wahrheitsmatrizen
gleich sind. Dies erkennt man sofort beim Betrachten der
Wahrheitsmatrizen und es ist auch von unserem Sprachverständnis her unmittelbar einsichtig: »Es ist nicht der Fall,
dass es nicht regnet« ist natürlich äquivalent mit »es regnet«.
Doppelte
Negation
Natürlich gibt es auch dreistellige Junktoren, vierstellige
etc., so dass man allgemein von n-stelligen Junktoren
spricht. Nach der gleichen Überlegung wie im Fall der zweistelligen Junktoren kann man sich rasch klarmachen, dass
es 28 = 256 dreistellige Junktoren geben muss und entspre-
Mehrstellige
Junktoren
22
2 Mathematische Logik: Denken in Wahrheitswerten *
chend 216 = 65536 vierstellige. Allgemein ist demnach die
n
Zahl der n-stelligen Junktoren 22 .
Reduktion auf
zweistellige
Junktoren
Für Untersuchungen formaler Eigenschaften dieser logischen Funktionen genügt es jedoch gewöhnlich, sich auf die
zweistelligen Junktoren zu beschränken, was nach folgendem Satz, den wir hier ohne Beweis anführen, möglich ist:
Jede n-stellige logische Funktion lässt sich durch Kombinationen zweistelliger Funktionen darstellen.
Satz
Kombination
von Junktoren
Durch geeignete Kombinationen kann man Junktoren durch
Kombinationen anderer Junktoren darstellen. Die Überprüfung, ob man richtig kombiniert hat, geschieht natürlich
durch Inspektion der Wahrheitsmatrizen. Man kann zeigen,
dass man alle Junktoren allein durch Kombinationen der
»klassischen« Junktoren Negation, Konjunktion und Disjunktion darstellen kann.2 Damit kommt man z. B. auch zu
den sog. konjunktiven oder disjunktiven Normalformen,
die in der Informatik eine wichtige Rolle spielen.
Das Kombinationsprinzip sei hier nur an einem Beispiel
gezeigt. Die einfachsten Beispiele bestehen wie hier in der
Verwendung der Negation:
Beispiel
p → q ist äquivalent zu ¬ p ∨ q, was durch die Wahrheitsmatrix der zweiten Aussage leicht bestätigt werden kann:
¬p ∨ q
0
1
0
1
1
1
0
1
Die bisherigen Beispiele bestanden darin, von Aussagen zu
Matrizen zu kommen. Das geht natürlich auch umgekehrt.
Wenn man sich z. B. klar macht, dass Reihen- und Parallelschaltungen z. B. elektrischer Bauelemente – und nicht
nur dieser – formal der Konjunktion und der Disjunktion entsprechen, dann kann es häufig nützlich sein, sich
einen Schaltplan als Wahrheitsmatrix oder eine entsprechende Wertedarstellung mehrstelliger Junktoren vorzustellen
und die entsprechende logische Aussage dazu zu formulie2
Es ist sogar noch einfacher möglich, alle Junktoren durch Kombinationen eines
einzigen Junktors (NAND oder NOR) darzustellen; mehr dazu finden Sie in der
Literatur über Boolesche Funktionen, z. B. [Schn89].
2.2 Die Algebra der Junktoren *
23
ren. Dies geschieht gewöhnlich durch verschiedene Junktorenkombinationen.
Gegeben sei die unten stehende Wahrheitsmatrix. Formulieren Sie nur durch Verwendung von Disjunktion, Negation und/oder Konjunktion die entsprechende Aussage; stellen Sie die Aussage zusätzlich durch Verwendung nur eines
Junktors dar.
?
0
1
0
0
1
1
1
0
2.2
Die Algebra der Junktoren *
Für die Verknüpfung mehrerer Junktoren kann ein formales System entwickelt werden, das der Algebra reeller Zahlen ähnlich ist. Dabei entspricht die Konjunktion der – hier
nicht immer kommutativen – Multiplikation, die Disjunktion der Addition, und es gelten mit einigen Einschränkungen vergleichbare Assoziativ- und Distributivgesetze.
Zu diesen hinzu kommen Gesetze, die aus der gewohnten Algebra nicht bekannt sind. Sie sind unter dem Namen
De MORGANsche Regeln bekannt und beziehen sich auf die
Verknüpfung der Negation mit Konjunktion und Disjunktion. Die Beziehungen zwischen den 16 möglichen zweistelligen Junktoren und ihren Negationen gehorchen darüber
hinaus einem Symmetrieprinzip.
Boole war für die Entwicklung der mathematischen Logik vor
allem deswegen so wichtig, weil er als Erster erkannte, dass
es möglich ist, durch die Junktoren ein formales System zu
entwickeln, das deutliche Ähnlichkeit mit der Algebra aufweist. Insbesondere interessiert hier die Frage, ob es bei der
Verknüpfung von Junktoren, insbesondere im Fall der zweistelligen logischen Funktionen, Gesetzmäßigkeiten gibt, die
z. B. den bekannten Kommutativ-, Assoziativ- und Distributivgesetzen der Algebra entsprechen. Gibt es darüber hinaus
noch Gesetze, die in der »normalen« Algebra, d. h. die Ihnen
bekannte Algebra der reellen Zahlen nicht vorkommen?
Gesetze der
Verknüpfung
von Junktoren
Das Kommutativgesetz besagt bekanntlich, dass für bestimmte algebraische Verknüpfungen bzw. Operatoren gilt, dass a b = b a. Addition und Multiplikation sind für
Kommutativgesetz
Herunterladen