B = {0,1} sei die binäre Menge. Eine Abbildung f : Bn → B bezeichnen wir als binäre Funktion und alternativ auch als Schaltfunktion von n binären Variablen. Wir betrachten also nicht den abgebildeten Vektor als die eine Variable von f sondern die n Komponenten dieses Vektors. Im Falle der Realisierung solcher Funktionen muss man sich allerdings klar für eine der beiden Möglichkeiten entscheiden.
Schaltfunktionen lassen sich durch Tabellen beschreiben. Eine einfache Tabellenform wird in der Funktion binexp2bintab benutzt. Zum Anklicken sind hier einige Funktionen angeboten:
binexp2bintab('0',{},2) % Null-Funktion
binexp2bintab('1',{},2) % Eins-Funktion
binexp2bintab('~a',{'a'},2) % Nicht-Funktion
binexp2bintab('a&b',{'a';'b'},2) % Und-Funktion
binexp2bintab('a|b',{'a';'b'},2) % Oder-Funktion
binexp2bintab('xor(a,b)',{'a';'b'},2) % Exklusiv-Oder-Funktion
binexp2bintab('nand(a,b)',{'a';'b'},2) % NAND-Funktion
Als Beispiel eine beliebige Schaltfunktion mit drei Variablen sowie zwei Parametern, die in MATLAB-Syntax mit Werten versorgt werden:
binexp2bintab('a2=1; p=0; (beta|alpha) & (~a2|v7) & p|v7', {'beta'; 'alpha'; 'v7'}, 2)
Natürlich ist es auch möglich, die beiden Parameter als Variable anzugeben:
binexp2bintab('(beta|alpha) & (~a2|v7) & p|v7', {'beta'; 'alpha'; 'v7'; 'a2'; 'p'}, 2)
Die vertikale Länge dieser Tabellen ist offenbar gegeben durch 2n , wo n die Anzahl der binären Variablen ist. Eine Schaltfunktion von n Variablen lässt sich also durch einen Binärvektor der Länge 2n eindeutig beschreiben. Da jede Komponente nur zwei mögliche Werte annehmen kann, gibt es insgesamt 2(2n) verschiedene Schaltfunktionen von n Variablen. Wir tabellieren diese Zahl für n = 1,...,4 :
result2fig([(1:4)' 2.^(2.^(1:4)')])