- Nullstellige Boole'sche Funktionen
- Einstellige Boole'sche Funktionen
- Zweistellige Boole'sche Funktionen
- Mehrstellige Boole'sche Funktionen
© 1999
François Bry
Dieses Lehrmaterial wird ausschließlich zur privaten Verwendung
angeboten. Eine nichtprivate Nutzung (z.B. im Unterricht oder eine
Veröffentlichung von Kopien oder Übersetzungen) dieses Lehrmaterials
bedarf der Erlaubnis des Autors.
Die Bezeichnung geht zurück auf George Boole (Lincoln 1815 - Cork 1864).
X | NOT X |
w | f |
f | w |
X Y | X OR Y |
w w | w |
w f | w |
f w | w |
f f | f |
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | |
w w | w | w | w | w | w | w | w | w | f | f | f | f | f | f | f | f |
w f | w | w | w | w | f | f | f | f | w | w | w | w | f | f | f | f |
f w | w | w | f | f | w | w | f | f | w | w | f | f | w | w | f | f |
f f | w | f | w | f | w | f | w | f | w | f | w | f | w | f | w | f |
1: | die konstante Funktion TRUE |
4: | die Funktion Id1 (auch π1 oder 1. Projektion genannt) |
6: | die Funktion Id2(auch π2 oder 2. Projektion genannt) |
11: | die Negation des 2. Arguments |
13: | die Negation des 1. Arguments |
16: | die konstante Funktion FALSE |
Die Namensgebung suggeriert natürlich - zumindest in einigen Fällen - welchen zweistelligen Junktoren diese zweistelligen Boole'schen Funktionen wohl zugeordnet werden. Allerdings stehen den zehn zweistelligen Boole'schen Funktionen nur vier zweistellige Junktoren gegenüber, die in Kapitel 2 für die Aussagenlogik oder Prädikatenlogik eingeführt wurden. Tatsächlich hätte man aber auch genauso viele zweistellige Junktoren einführen können wie es Boole'sche Funktionen gibt.
Die Schreibweisen der zusätzlichen Junktoren und die Zuordnung zwischen Junktoren und Boole'schen Funktionen ergibt sich aus folgender Tabelle:
∧ | ∨ | ⇒ | ⇐ | ↑ | ↓ | ⇔ | ||||
AND | OR | IMP | RIMP | NAND | NOR | NIMP | NRIMP | EQU | NEQU XOR | |
w w | w | w | w | w | f | f | f | f | w | f |
w f | f | w | f | w | w | f | w | f | f | w |
f w | f | w | w | f | w | f | f | w | f | w |
f f | f | f | w | w | w | w | f | f | w | f |
Aus der Systematik dieser Tabelle erkennt man auch, warum meistens nicht alle diese Junktoren eingeführt werden: In vielen Fällen lassen sich ihre Boole'schen Funktionen auf die Boole'schen Funktionen anderer Junktoren zurückführen und damit als überflüssig ansehen. Zum Beispiel erhält man RIMP (,,reverse implication``) einfach durch Vertauschen der Argumente von IMP. Die Boole'sche Funktion NIMP entsteht durch Negation von IMP, d.h., X NIMP Y = NOT(X IMP Y) oder NIMP = NOT ° IMP.
Um etwas systematischer klären zu können, wie sich Boole'sche Funktionen aufeinander zurückführen lassen, benötigen wir zunächst einige Begriffe.
Eine Menge B von Boole'schen Funktionen heißt eine vollständige Basis, falls jede Boole'sche Funktion als Komposition von Funktionen in B definiert werden kann.
Eine vollständige Basis B heißt minimal, falls keine echte Teilmenge von B eine vollständige Basis ist.
Beispiel: die dreistellige Boole'sche Funktion, die w liefert genau dann wenn alle ihre Argumente gleich sind, wird durch folgende Wahrheitstabelle mit 8 Zeilen angegeben:
w | w | w | w |
w | w | f | f |
w | f | w | f |
w | f | f | f |
f | w | w | f |
f | w | f | f |
f | f | w | f |
f | f | f | w |
Die Boole'schen Funktionen F1,F2,F3,F4, seien wie folgt definiert:
F1 | F2 | F3 | F4 | |
w w | f | w | w | w |
w f | w | f | w | w |
f w | w | w | f | w |
f f | w | w | w | f |
Sei F eine zweistellige Boole'sche Funktion mit Wahrheitstabelle:
X Y | X F Y |
w w | z1 |
w f | z2 |
f w | z3 |
f f | z4 |
Ist I die
Teilmenge von {1, 2, 3, 4} mit
zi = f für i∈I, und ist
AND*{Fi1,...,Fin}(X,Y)
definiert als Abkürzung für die rechtsassoziativ
geklammerte Form von [X Fi1 Y] AND ... AND [X Fin Y],
so gilt:
Wir haben also F als Komposition von {AND,F1,F2,F3,F4} dargestellt. Jetzt stellen wir noch {F1,F2,F3,F4} als Komposition von {AND,NOT} dar. Es gilt
X F1 Y | = NOT( | X AND | Y) | ||
X F2 Y | = NOT( | X AND | NOT | Y) | |
X F3 Y | = NOT( | NOT | X AND | Y) | |
X F4 Y | = NOT( | NOT | X AND | NOT | Y) |
Man beachte das systematische Muster: Die Funktion Fi hat genau in der i-ten Zeile den Wert f. Seien (a,b) die (X,Y)-Werte dieser i-ten Zeile. Dann hat die Definition von Fi die Form
Id | falls b = w | |
B = { | ||
NOT | falls b = f |
Bemerkung: Die Notation 0 für f, 1 für w und x für AND macht das Obige anschaulicher.
Das unter 1 (a) beschriebene Muster kann auch auf drei oder mehr Argumente übertragen werden.
Das ist für jede primäre Boole'sche Funktion F durch eine geeignete Definition zu zeigen.
Es ist üblich, die gleiche Notation für Junktoren und für die ihnen zugeordneten Boole'schen Funktionen zu verwenden. Wir werden uns von nun an diesem Brauch anschließen. Dabei darf aber der Unterschied zwischen Junktor und Boole'scher Funktion nicht übersehen werden!