Untersuchung zur logischen Funktion AEQ mit zwei Eingängen.
Die boolsche logische Funktion AEQ aus möglichst wenigen Nands.
Das Thema ist entstanden, weil bekannt ist, dass es insgesamt 16 boolsche Logikfunktionen für zwei Eingangsvariablen gibt. Es ist darüber hinaus bekannt, dass sich in der Elektronik alle 16 Logikfunktionen aus mehreren Nand-Bausteinen darstellen lassen, wenn man sie nur geschickt zusammenschaltet. Dabei fällt auf, dass für die Darstellung von 15 der Logikfunktionen jeweils vier Nandbausteine ausreichen. Nur eine tanzt aus der Reihe. Es ist die Funktion AEQ. Zu deren Darstellung werden fünf Nandbausteine benötigt.Da kommt die Frage auf, ist es Dummheit, dass 5 gebraucht werden? Hier soll bewiesen werden, dass es keine Dummheit ist, dass wirklich 5 Nandbausteine für das AEQ gebraucht werden. Genug Vorrede. Hier geht es zu den Einzelheiten.
Die AEQ-Funktion hat folgende Wahrheitstabelle
a b AEQ
0 0 1
0 1 0
1 0 0
1 1 1
Aus der Wahrheittabelle erklärt sich auch der Name.
AEQ nimmt den Wert 1 an, wenn die Werte von a und b gleich sind. Sonst 0.
Für die obige Wahrheitstabelle gibt es eine abkürzende Schreibweise.
Die Spalte a schreibe ich
a = (0 0 1 1) = 3
a wird also zunächst eine Binärzahl, dann die Dezimalzahl 3.
Entsprechend :
b = (0 1 0 1) = 5
und AEQ = (1 0 0 1 ) = 9
Mit diesen Vereinbarungen kann die Wahrheitstabelle kurz dargestellt
werden
9 = AEQ(3,5)
für die Nandfunktion geht es ähnlich
14 = NAND(3,5)
Diese Schreibweise ist auch maschinengerecht für die Programmierung in C
result = 0xf & (~(arg1 & arg2))
Wenn in diese Maschinenformel arg1 = 3, arg2 = 5 einsetzt, liefert
das C-Programm result = 14
Die Frage, wieviele Nandbausteine brauche ich für das AEQ lässt sich
vereinfachen auf die
Frage: Wieviele Zwischenergebnisse müssen mindestens in der Schaltung von
AEQ aus Nands vorkommen. Jedes Zwischenergebnis muss genau an einem
Ausgang eines Nandbausteins gebildet werden. Sollte ein Zwischenergebnis
mehrfach gebraucht werden, ist das kein Problem. Mit Drahtbrücken vom
Nand-Ausgang zu mehreren anderen Nand-Eingängen wird die Mehrfachnutzung
verwirklicht.
Der Beweis, dass 4-Nands nicht für die AEQ-Funktionen reichen, kann möglicherweise nicht aus reinen Überlegungen gewonnen werden. Es gibt einfach total viele Möglichkeiten, wie die Funktion AEQ gewonnen werden kann. Deshalb soll das Problem mit Software angegangen werden. Zwei Varianten wurden gefunden:
1. Variante: c- Programm
"2024_08_aeqfind.c"
Diese Variante erledigt fast alles per c-Programm.
Die Wahrheit des Resultates steht und fällt mit mit der
Fehlerfreiheit der Programmierung.
2. Variante: c- Programm "AllewahrMitBool.c"
Diese Variante erzeugt eine Tabelle, die dem denkenden Leser
die Problemlösung erleichtert.