Boole'sche Algebr Binäre Funktionen, Boole'sche Algebren, Schltlgebr Inhltsübersicht Verknüpfungen der mthemtischen Logik Boole sche Algebren Grundelemente der Schltlgebr Regeln der Schltlgebr Normlformen o binärer Funktionen to Grfische Drstellung binärer Funktionen Minimierung binärer Funktionen Technische Informtik I Boole sche Algebr 2 Chr. Vogt
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Binäre Vriblen und Funktionen Binäre Funktionen einer Vriblen Schltnetze und Schltlgebr Grundelemente der Schltlgebr: NOT Grundelemente der Schltlgebr: AND Grundelemente der Schltlgebr: OR Boole'sche Algebr (Definition, George Boole 1854) Beispiele Boole'scher Algebren Assozitivgesetz m Digibord Regeln für Boole sche Algebren Dulitätsprinzip Beispiel zum Dulitätsprinzip NAND- und NOR-Funktion Schltfunktionen in NAND-Technik Schltfunktionen in NOR-Technik Binäre Funktionen von zwei Vriblen Gttersymbole Konjunktive Normlform Disjunktive Normlform Beispiele für Normlformen Minimierung binärer Funktionen Minimierung mit Kürzungsregeln Grfische Drstellungen binärer Funktionen KV-Digrmme (1) KV-Digrmme (2) KV-Digrmme (3) Minimierung im KV-Digrmm (1) Minimierung im KV-Digrmm (2) Beispiele von Elementrblöcken (für 4 Vriblen)
Binäre Vriblen und Funktionen Prinzipien: Zhlenvorrt: 0 und 1 ( FALSCH und WAHR): binäre Werte In der mthemtischen ti h Logik sinnvoll wegen des Stzes vom usgeschlossenen Dritten: Eine Aussge knn nur entweder flsch oder whr sein. Ein einzelner binärer Wert heißt ein Bit (binry digit). Ein Byte ist die Zusmmenfssung von 8 Bits. 2 10 (=1.024) Bit heißen 1 Kilobit (Kb), 2 10 Byte 1 Kilobyte (KB). 2 20 (=1.048.576) Bit heißen 1 Megbit (Mb), 2 20 Byte 1 Megbyte (MB). 2 30 (=1.073.741.824) Bit heißen 1 Gigbit (Gb), 2 30 Byte 1 Gigbyte (GB). 2 40 Bit heißen 1 Terbit (Tb), 2 40 Byte 1 Terbyte (TB). Binäre Funktionen (logische Funktionen, Schltfunktionen) sind Funktionen, deren Vrible und Funktionswerte binäre Werte nnehmen, lso f: {0,1} n ---> {0,1} f(x) = f(,,..., x n ) können beschrieben werden durch Angbe der Funktionswerte für die 2 n Argumentwerte (endlich viele!) in einer Wertetbelle oder Whrheitstfel. Technische Informtik I Boole sche Algebr 3 Chr. Vogt Binäre Funktionen einer Vriblen Die folgenden Wertetbellen beschreiben sämtliche binären Funktionen einer Vriblen: x f 0 f 1 f 2 f 3 0 0 0 1 1 1 0 1 0 1 f 0 : Nullfunktion f 1 : Identität f 2 : Negtion f 3 : Einsfunktion Technische Informtik I Boole sche Algebr 4 Chr. Vogt
Schltnetze und Schltlgebr Ein Schltnetz dient der Relisierung binärer Funktionen, besteht us digitlen it Verknüpfungsgliedern (Gttern), wird symbolisch folgendermßen drgestellt: Schltnetz x = (,,, x n ) f 2 f3 Die Schltlgebr bsiert uf der Boole'schen Algebr, verwendet ls Grundelemente: Konstnten ( 0 und 1) binäre Vrible (die die Werte 0 und 1 nnehmen können) Schltfunktionen: logische Verknüpfungen von Schltvriblen und/oder Konstnten ergeben Funktionswerte. f 0 f 1 Technische Informtik I Boole sche Algebr 5 Chr. Vogt Grundelemente der Schltlgebr: NOT Negtion (Nicht-Funktion, NOT, Invertierung, Inverter) Logisches Zeichen: x oder x Whrheitstbelle: x x 0 1 1 0 Schltsymbol (DIN 66000) x Technische Informtik I Boole sche Algebr 6 Chr. Vogt
Grundelemente der Schltlgebr: AND UND-Verknüpfung (AND, Konjunktion) Aussgenlogisch: "sowohl ls uch" Logisches Zeichen: * oder oder. Whrheitstbelle: 0 0 0 0 1 0 1 0 0 1 1 1 Schltsymbol: Technische Informtik I Boole sche Algebr 7 Chr. Vogt Grundelemente der Schltlgebr: OR ODER-Verknüpfung (OR, Disjunktion) Aussgenlogisch: einschließendes (inklusives) i ODER: "entweder ds eine oder ds ndere oder beides". Logisches Zeichen: + oder Whrheitstbelle: + 0 0 0 0 1 1 1 0 1 1 1 1 Schltsymbol: x + 2 Stz: Mit UND, ODER und NICHT lssen sich sämtliche Schltfunktionen relisieren. Technische Informtik I Boole sche Algebr 8 Chr. Vogt
Boole'sche Algebr (Definition, George Boole 1854) Eine Menge M mit drei Verknüpfungen : M --> M, --> : M x M --> M, (,b) --> b + : M x M --> M, (,b) --> +b heißt Boole'sche Algebr (oder Boole'scher Verbnd), wenn für lle,b,c M gilt: 1. ) b = b b) + b = b + (Kommuttivität) 2. ) (b)c = (bc) b) (+b)+c = +(b+c) (Assozitivität) 3. ) (+b) = b) + b = (Absorptionsgesetze) 4. ) (b+c) = b + c b) + bc = (+b) (+c) (Distributivität) 5. ) Es gibt ein Element 1 M, b) Es gibt ein Element 0 M, so dss für lle M so dss für lle M 1 = + 0 = (Existenz neutrler Elemente) 6. ) = 0 b) + = 1 (komplementäre Elemente) Technische Informtik I Boole sche Algebr 9 Chr. Vogt Beispiele Boole'scher Algebren 1. Die Potenzmenge einer beliebigen Menge mit den Verknüpfungen Komplement, Durchschnitt und Vereinigung ist eine Boole'sche Algebr. 2. Die Menge {0,1} mit den Verknüpfungen NOT, AND und OR ist eine Boole'sche Algebr. (Dies wird in der ersten Prktikumsufgbe bewiesen.) Technische Informtik I Boole sche Algebr 10 Chr. Vogt
Assozitivgesetz m Digibord Technische Informtik I Boole sche Algebr 11 Chr. Vogt Regeln für Boole sche Algebren Für jede Boole sche Algebr gelten die folgenden Regeln: Idempotenzgesetze: ) = b) + = Dominnzgesetze: ) 0 = 0 b) + 1 = 1 Involutionsgesetz: = DeMorgn'sche Gesetze: ) b = + b b) + b = b Technische Informtik I Boole sche Algebr 12 Chr. Vogt
Dulitätsprinzip Ds Dulitätsprinzip (eine Verllgemeinerung der demorgn schen Gesetze) besgt: Aus einem beliebigen Ausdruck erhält mn einen neuen, gleichwertigen Ausdruck durch: Ersetzen der Opertoren + durch * * durch + Negieren (= Vertuschen) der Konstnten 0 und 1 Negieren jeder einzelnen Vriblen Negieren des gesmten Ausdrucks Technische Informtik I Boole sche Algebr 13 Chr. Vogt Beispiel zum Dulitätsprinzip f (, ) = + + 0 0 f 0 f f (, ) = ( + ) * ( + ) * 1 f f f f Technische Informtik I Boole sche Algebr 14 Chr. Vogt
NAND- und NOR-Funktion NAND (not nd) NOT ( AND b), * b Sheffer-Funktion b NOR (not or) NOT ( OR b), + b Peirce-Funktion b NAND erzeugt die binären Funktionen. NOR erzeugt die binären Funktionen. In NAND- oder NOR-Technik lssen sich lle Schltfunktionen relisieren. Technische Informtik I Boole sche Algebr 15 Chr. Vogt Schltfunktionen in NAND-Technik NOT 1 * = * 1 = AND b NOT * b * b = * b OR b NOT + b NOT * b = + b Technische Informtik I Boole sche Algebr 16 Chr. Vogt
Schltfunktionen in NOR-Technik NOT 0 + = + 0 = AND b + b = * b NOT NOT * b OR b NOT + b + b = + b Technische Informtik I Boole sche Algebr 17 Chr. Vogt Binäre Funktionen von zwei Vriblen 0 1 0 1 0 0 1 1 f i (, ) Bezeichnung f 0 0 0 0 0 0 Null-Funktion f 1 0 0 0 1 * AND (Konjunktion) f 2 0 0 1 0 * 1. Inhibition f 3 0 0 1 1 Identität f 4 0 1 0 0 * 2. Inhibition f 5 0 1 0 1 Identität f 6 0 1 1 0 XOR (Antivlenz) f 7 0 1 1 1 + OR (Disjunktion) f 8 1 0 0 0 + NOR (Peirce-Fkt.) f 9 1 0 0 1 Äquivlenz f 10 1 0 1 0 Negtion f 11 1 0 1 1 + 1. Impliktion f 12 1 1 0 0 Negtion f 13 1 1 0 1 + 2. Impliktion f 14 1 1 1 0 * NAND (Sheffer-Fkt.) f 15 1 1 1 1 1 Eins-Funktion Technische Informtik I Boole sche Algebr 18 Chr. Vogt
Gttersymbole Funktion Symbol Funktion Symbol f 0 0 0 f 8 + x x 1 2 f 1 * f 9 x = 2 f 2 * x 2 f 10 1 f 3 f 4 * 1 f 11 + f 12 1 f 5 1 f 13 + f 6 =1 f 14 * f 7 + f 15 1 1 Technische Informtik I Boole sche Algebr 19 Chr. Vogt Konjunktive Normlform Ein Mxterm (eine Volldisjunktion) für eine binäre Funktion von n Vriblen ist eine n-stellige Disjunktion (ODER-Verknüpfung), in der jede Vrible oder ihr Komplement genu einml vorkommt. Beispiele (n=3): + + oder + + Ein Mxterm nimmt für genu eine Belegung der Vriblen den Wert 0, sonst den Wert 1 n. Eine binäre Funktion von n Vriblen ist in konjunktiver Normlform, wenn sie ls Konjunktion (UND-Verknüpfung) von Mxtermen drgestellt ist. Beispiel (n=3): f(,, ) = ( + + ) * ( + + ) Stz: Jede binäre Funktion ußer der Eins-Funktion knn eindeutig in konjunktiver Normlform drgestellt werden. Beweis: Konjunktive Verknüpfung ller Mxterme, für die der Funktionswert 0 ist. Technische Informtik I Boole sche Algebr 20 Chr. Vogt
Disjunktive Normlform Ein Minterm (eine Vollkonjunktion) für eine binäre Funktion von n Vriblen ist eine n-stellige Konjunktion (UND-Verknüpfung), in der jede Vrible oder ihr Komplement genu einml vorkommt. Beispiele (n=3): * * oder * * Ein Minterm nimmt für genu eine Belegung der Vriblen den Wert 1, sonst den Wert 0 n. Eine binäre Funktion von n Vriblen ist in disjunktiver Normlform, wenn sie ls Disjunktion (ODER-Verknüpfung) von Mintermen drgestellt ist. Beispiel espe (n=3): f(,, ) = ( * * ) + ( * * ) Stz: Jede binäre Funktion ußer der Null-Funktion knn eindeutig in disjunktiver Normlform drgestellt werden. Beweis: Disjunktive Verknüpfung ller Minterme, für die der Funktionswert 1 ist. Technische Informtik I Boole sche Algebr 21 Chr. Vogt Beispiele für Normlformen Wir betrchten die XOR-Funktion von 2 Vriblen: f(, ) 0 0 0 1 0 1 0 1 1 1 1 0 Die konjunktive Normlform von f lutet: f = ( + ) * ( + ) Die disjunktive Normlform von f lutet: f = + Eine weitere Drstellung von f (keine Normlform): f = ( + ) * ( * ) Technische Informtik I Boole sche Algebr 22 Chr. Vogt
Minimierung binärer Funktionen Mögliche Zielsetzungen: Schltung mit geringstem Aufwnd (Kosten), d.h. möglichst wenig Gtter. Schltung mit speziellem Gttertyp (z.b. NOR oder NAND). Es werden dnn meistens mehr Gtter benötigt. Optimierung im Hinblick uf ds Zeitverhlten. Eine ufwändigere Schltung knn u.u. schneller sein. Minimierungsverfhren Anwendung der Gesetze der Schltlgebr (Kürzungsregeln). Grfische Minimierung mit Hilfe von KV-Digrmmen. Technische Informtik I Boole sche Algebr 23 Chr. Vogt Minimierung mit Kürzungsregeln 1. Binäre Funktion in DNF-ähnliche Form bringen. 2. Anwenden von Regeln der Schltlgebr, insbesondere der Distributivgesetze, z.b. bc + bc = ( + ) bc = bc + b = (1 + b) = und der Kürzungsregeln, z.b. + = 1, 1 + b = 1, * 1 = 3. Evtl. weiteres Ausklmmern von Vriblen und wieder mit 2. fortfhren (itertiver Prozess). Beispiel für redundnte Terme: f(, b, c) = b + c + bc = b(c + c) + c (b + b) + bc ( + ) = (bc + bc) + (bc + bc) + (bc + bc) = b (c + c) + c (b + b) = b + c Technische Informtik I Boole sche Algebr 24 Chr. Vogt
Grfische Drstellungen binärer Funktionen Impulsdigrmme: zeigen ds logische Verhlten im zeitlichen Verluf Eingbewerte + Zeitchse Krnugh-Veitch- oder kurz KV-Digrmme stellen die disjunktive Normlform einer Funktion grfisch dr, ermöglichen eine einfche Minimierung. Technische Informtik I Boole sche Algebr 25 Chr. Vogt KV-Digrmme (1) Prinzip: Anordnung ller Minterme, so dss benchbrte Terme sich in genu einer Vriblen unterscheiden. 1 Vrible: x x x x 2 Vriblen: 3 Vriblen: Technische Informtik I Boole sche Algebr 26 Chr. Vogt
KV-Digrmme (2) 4 Vriblen: x Technische Informtik I Boole sche Algebr 27 Chr. Vogt KV-Digrmme (3) Zur Drstellung einer binären Funktion wird im KV-Digrmm n den Stellen derjenigen Minterme, die in der disjunktiven Normlform der Funktion vorkommen (lso dort, wo die Funktion den Wert 1 nnimmt) eine 1 eingetrgen, nsonsten eine 0. Beispiel: KV-Digrmme der Funktionen AND und OR: 0 0 0 1 0 1 1 1 AND OR Technische Informtik I Boole sche Algebr 28 Chr. Vogt
Minimierung im KV-Digrmm (1) Elementrblock: Rechteck mit Seitenlängen 2 n, in dem lle Felder den Wert 1 hben, oberste und unterste Reihe sind "benchbrt, können lso zu einem Rechteck gehören, linke und rechte Splte sind benchbrt benchbrt. Zusmmenfssung der Terme in Elementrblöcken: bsiert uf: + = ( + ) =, Bildung möglichst großer und möglichst weniger Elementrblöcke, die lle Felder mit Wert 1 erfssen, Überschneidungen von Elementrblöcken sind erlubt. Beispiel 1: f(,, ) 0 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 1 0 1 1 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 0 f (,, ) = + 1 1 1 1 Technische Informtik I Boole sche Algebr 29 Chr. Vogt Minimierung im KV-Digrmm (2) Beispiel 2: 1. Möglichkeit: 0 1 1 1 0 1 0 1 + + 2. Möglichkeit: 0 1 1 1 0 1 0 1 + + Technische Informtik I Boole sche Algebr 30 Chr. Vogt
Beispiele von Elementrblöcken (für 4 Vriblen) 8-er-Blöcke, Reduzierung uf Terme mit 1 Vriblen: 4-er-Blöcke, Reduzierung uf Terme mit 2 Vriblen: Technische Informtik I Boole sche Algebr 31 Chr. Vogt