1 boolean algebra
play

1. Boolean Algebra 1.1 Boolean Algebra Basics Verification - PowerPoint PPT Presentation

Fachgebiet Rechnersysteme Technische Universitt Verification Technology Darmstadt 1. Boolean Algebra Fachgebiet Rechnersysteme 1 1. Boolean Algebra 3 1.1 Boolean algebra basics 1. Boolean Algebra 1.1 Boolean Algebra Basics


  1. Fachgebiet Rechnersysteme Technische Universität Verification Technology Darmstadt 1. Boolean Algebra Fachgebiet Rechnersysteme 1 1. Boolean Algebra 3 1.1 Boolean algebra basics 1. Boolean Algebra 1.1 Boolean Algebra Basics Verification Technology  AND-operation (conjunction) Gate representation Content Content  a b a b 1.1 Boolean algebra basics (recap) a German (old) 0 0 0 b 1.2 Reasoning about Boolean expressions 0 1 0 1 0 0 a & & IEEE- IEEE 1 1 1 b standard a  0-dominance US-standard b (old) 1. Boolean Algebra 2 1. Boolean Algebra 4 1.1 Boolean algebra basics  The problem of logic verification: Show that two circuits  OR-operation (disjunction) Gate representation implement the same boolean function, or: Show that a circuit correctly implements a specification a  a b a b a b a b German (old) b 0 0 0 g a 0 1 1 =1  1 b a IEEE- 1 0 1 standard b 1 1 1 a a & a g a  1-dominance US-standard & & b b (old) & b

  2. Fachgebiet Rechnersysteme Technische Universität Verification Technology Darmstadt 1. Boolean Algebra 5 1. Boolean Algebra 7 1.1 Boolean algebra basics 1.1 Boolean algebra basics  NOT-operation (negation, complement)  More operations:  (E)XOR  (exclusive-or, unequal, addition modulo 2) Gate representation Gate representation Gate representation       a D fi iti Definition: a b b a b b a b b German (old) a a a  0 1  a b a b German (old) b IEEE- a 1 0 0 0 1 0 Standard 0 1 1 a a =1 1 IEEE IEEE- 1 0 1 b standard a 1 1 0 US-standard (old) a US-standard b (old) 1. Boolean Algebra 6 1. Boolean Algebra 8 1.1 Boolean algebra basics 1.1 Boolean algebra basics  More notations ...  NAND Gate representation a  b a • b a & b a  b a + b a | b a  a b (a b) German (old) b  a a a' 0 0 1 0 1 1 a & 1 0 1 Propositional Calculus IEEE- b b standard standard 1 1 0 a US-standard b (old)

  3. Fachgebiet Rechnersysteme Technische Universität Verification Technology Darmstadt 1. Boolean Algebra 9 1. Boolean Algebra 11 1.1 Boolean algebra basics 1.1 Boolean algebra basics  Boolean functions  NOR — Traffic-light checker: inputs: r red, g green, e Gate representation yellow r e g p? r e g p? a  0 0 0 a b (a b) German (old) b 0 0 1 0 0 1 0 1 0 0 1 0 0 1 1 2 3 = 8 cases  1 a 1 0 0 1 0 0 IEEE- 1 0 1 b b standard standard 1 1 0 1 1 0 1 1 1 a US-standard r b Traffic- (old) e p Light Checker g 1. Boolean Algebra 10 1. Boolean Algebra 12 1.1 Boolean algebra basics 1.1 Boolean algebra basics  r, e, g are Boolean variables  Implikation  :  B = {0, 1} is the set of Boolean values    a b a b  A Boolean function in n variables is a mapping pp g  Equivalence  (equality): F: B n  B      a b a b a b  Such a function models a circuit with n inputs — The equivalence-function equals one iff the arguments have equal values and one output, in the example we have B 3  B — The exor-function equals one iff the arguments have unequal values — Generally: a  b = (a  b) r Traffic- e p Light Checker g

  4. Fachgebiet Rechnersysteme Technische Universität Verification Technology Darmstadt 1. Boolean Algebra 13 1. Boolean Algebra 15 1.1 Boolean algebra basics 1.1 Boolean algebra basics 3 2 1 0 2 2 2 2 Representation of Boolean  Product-terms (products, cubes) are conjunctions of functions by means of x x x x 0 f literals 3 2 1 function tables and Veitch- 0 0 0 0 0 0  Each variable occurs only once (Karnaugh-) maps 0 0 0 1 0 0 0 1 1 1 1 1 x x 3 — Example: x•y•z or xyz for short 2 0 0 1 0 0 0 0 1 1 0  Special case: Minterm (product-term in all variables) 3 0 1 1 0 4 0 1 0 0 1 12  Sum-terms (clauses) are disjunctions of literals 0 4 8 0 1 0 1 1 5 1  Special case: Maxterm (sum-term in all variables) 6 0 1 1 0 0 1 1 1 1 5 13 x 0 9 7 0 1 1 1 1 1 0 0 0 0 1 0 8 0 1 7 7 15 15 1 0 0 1 1 0 0 1 1 1 3 3 11 11 9 x 1 1 0 1 0 0 10 0 0 0 0 1 0 1 1 0 2 6 14 10 11 1 1 0 0 1 12 1 1 0 1 1 x 2 13 1 1 1 0 0 14 1 1 1 1 1 15 1. Boolean Algebra 14 1. Boolean Algebra 16 1.1 Boolean algebra basics 1.1 Boolean algebra basics  Boolean terms are textual representations of Boolean  A Sum-of-Products (sop) (also called a disjunctive normal functions, e.g., form, dnf) is a disjunction of products — Example: cyz + d + ax     a a b b c c + c c a a (e (e + b) b)  The syntax of Boolean terms:  A Product-of-Sums (pos) (also called a conjunctive normal  The constants 0 and 1 are Boolean terms form, cnf) is a conjunction of sums  Literals (variables and complemented variables) are — Example: (c + x + b)(s + x)(a + x) Boolean terms, for instance, a and a  If a and b are Boolean terms then so are (a  b), (a + b), a

  5. Fachgebiet Rechnersysteme Technische Universität Verification Technology Darmstadt 1. Boolean Algebra 17 1. Boolean Algebra 19 1.1 Boolean algebra basics 1.1 Boolean algebra basics  The Rules of Boolean Algebra: (T11) x + x•y = x + y (T11') x•(x + y) = x•y Absorption (T12) x + x•y = x (T12) x + x•y = x (T12 ) x•(x + y) = x (T12') x•(x + y) = x (T1) x + 0 = x (T1') x • 1 = x Identity  Very important for the simplification of terms (T2) x + 1 = 1 (T2') x • 0 = 0 0/1-Element and circuits! Example: (T3) x + x = x (T3') x • x = x Idempotence x  1 x (T4) x x (T4) x = x (T4 ) 1 0 (T4') 1 = 0 Involution Involution  1  1 x & (T5) x + x = 1 (T5') x • x = 0 Complement y y 1. Boolean Algebra 18 1. Boolean Algebra 20 1.1 Boolean algebra basics 1.1 Boolean algebra basics  Boole's Expansion Theorem (1849)  also attributed to Shannon (T6) x + y = y + x (T6') x • y = y • x Commutativity (T7) (x + y) + z = x + (y + z) = x + y + z (T7) (x + y) + z = x + (y + z) = x + y + z Associativity Associativity (T7') (x • y) • z = x • (y • z) = x • y • z (T8) x•y + x•z = x•(y + z) Distributivity (T8') (x + y)•(x + z) = x + y•z (T9) (x + y) = x • y (T9') (x • y) = x + y De Morgan's Law Law (T10) (x 1 +...+ x n )= x 1 •...• x n Generalized De Morgan's (T10') (x 1 •...• x n )= x 1 +...+ x n Law

  6. Fachgebiet Rechnersysteme Technische Universität Verification Technology Darmstadt 1. Boolean Algebra 21 1. Boolean Algebra 23 1.1 Boolean algebra basics 1.1 Boolean algebra basics x x x x f 1 2 3 4  Idea: Decompose a — Illustration in the Veitch-diagram: function into two sub- 0 0 0 0 0 0 0 0 1 1 functions which do not b 0 0 1 0 0 0 0 1 0 0 depend on some variable depend on some variable, e.g., x 1 0 0 1 1 0 1 f a 1 1 f(0, x , x , x ) 0 1 0 0 1 2 3 4 0 1 0 1 1 1 1 1 f a a 0 1 1 0 0 0 1 1 1 1  f 1 0 0 0 0 c 1 0 0 1 1 1 0 0 1 1 1 0 1 0 0    f c a b ab 1 0 1 1 0 f(1, x , x , x ) 1 1 0 0 1 2 3 4 1 1 0 1 1 1 1 1 0 0 1 1 1 1 1 1. Boolean Algebra 22 1. Boolean Algebra 24 1.1 Boolean algebra basics 1.1 Boolean algebra basics  Expansion Theorem: a Boolean Function f can be — Illustration in the Veitch-diagram: decomposed according to a variable x as follows b     f x f x f x x 1 f a 1 1   f , f are called the Positive (1-) and Negative (0-) 1 1 1 f a a x x Cofactors of f with respect to x  The cofactors can be calculated by replacing the f c variable x by the constants 0 and 1, respectively y , p y    f c a b ab     f a f a f a a

  7. Fachgebiet Rechnersysteme Technische Universität Verification Technology Darmstadt 1. Boolean Algebra 25 1. Boolean Algebra 27 1.1 Boolean algebra basics 1.1 Boolean algebra basics — Circuit realization:  The cofactors are calculated by replacing a by 0 and 1, respectively plus simplifications: b b  1  1 c c f & & a f b a 1 f a 1 f a 1 1 1 1  1  1 f f    1 1 1 1 f a 1 1 1 f a c a a & & f a b f a f f c c a a a a    f c a b ab f = c + a b + a b ,     f a f a f f = c + 1 b + 1 b = c + b , a a a f = c + 0 b + 0 b = c + b , a   f = a (c + b ) + a (c + b ) 1. Boolean Algebra 26 1. Boolean Algebra 28 1.1 Boolean algebra basics 1.1 Boolean algebra basics  The cofactors are calculated by replacing a by 0 and 1,  The circuit used above is called a 2:1-Multiplexor respectively: b Symbol: f & a a 1 f a & 1 1  1 f  a 0  1 1 1 1 f a a & f a & b b 1 f c a a x x f = c + a b + ab,  Depending on x, the output is either equal f = c + 1 b + 1b = c + b, a to a or equal to b f = c + 0 b + 0b = c + b , a   f = a (c + b ) + a (c + b )

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend