. Boolen Alger Fchgeiet Rechnersysteme. Boolen Alger Veriiction Technology Content. Boolen lger sics (recp).2 Resoning out Boolen expressions
. Boolen Alger 2 The prolem o logic veriiction: Show tht two circuits implement the sme oolen unction, or: Show tht circuit correctly implements speciiction = g & & & & g
. Boolen Alger. Boolen lger sics. Boolen Alger Bsics 3 AND-opertion (conjunction) Gte representtion 0 0 0 Germn (old) 0 0 0 0 & IEEEstndrd 0-dominnce US-stndrd (old)
. Boolen Alger. Boolen lger sics 4 OR-opertion (disjunction) Gte representtion 0 0 0 Germn (old) 0 0 IEEEstndrd -dominnce US-stndrd (old)
. Boolen Alger. Boolen lger sics 5 NOT-opertion (negtion, complement) Gte representtion Germn (old) 0 0 IEEE- Stndrd US-stndrd (old)
. Boolen Alger. Boolen lger sics 6 More nottions... & + ' Propositionl Clculus
. Boolen Alger 7. Boolen lger sics More opertions: (E)XOR (exclusive-or, unequl, ddition modulo 2) Deinition: Gte representtion 0 0 0 Germn (old) 0 0 0 = IEEEstndrd US-stndrd (old)
. Boolen Alger. Boolen lger sics 8 NAND Gte representtion ti () 0 0 Germn (old) 0 0 & IEEEstndrd 0 US-stndrd (old)
. Boolen Alger. Boolen lger sics 9 NOR Gte representtion 0 0 () Germn (old) 0 0 0 0 0 IEEE- stndrd US-stndrd (old)
. Boolen Alger 0. Boolen lger sics Impliktion : Equivlence (equlity): The equivlence-unction equls one i the rguments hve equl vlues The exor-unction equls one i the rguments hve unequl vlues Generlly: =( )
. Boolen Alger. Boolen lger sics Boolen unctions Tric-light checker: inputs: r red, g green, e yellow r e g p? 2 3 = 8 cses 0 0 0 0 0 0 0 0 0 0 0 0 Tric- Light Checker r e g p
. Boolen Alger. Boolen lger sics 2 r, e, g re Boolen vriles B={0 {0, }is the set o Boolen vlues A Boolen unction in n vriles is mpping F: B n B Such unction models circuit with n inputs nd one output, in the exmple we hve B 3 B Tric- Light Checker r e g p
. Boolen Alger. Boolen lger sics 3 2 0 2222 Representtion o Boolen xxxx 3 2 0 unctions y mens o unction tles nd Veitch- 0 0 0 0 0 (Krnugh-) mps 0 0 0 0 x 3 2 0 0 0 0 3 0 0 0 4 0 0 0 0 0 2 5 0 0 6 0 0 0 3 7 0 x 0 8 0 0 0 0 0 0 0 0 3 7 5 9 0 0 0 0 0 0 0 0 2 6 0 0 4 2 0 0 3 0 x 2 4 0 0 5 0 4 8 5 9 2 6 0 x 3
. Boolen Alger. Boolen lger sics 4 Boolen terms re textul representtions o Boolen unctions, e.g., c + c (e + ) The syntx o Boolen terms: The constnts 0 nd re Boolen terms Literls (vriles nd complemented vriles) re Boolen terms, or instnce, nd I nd re Boolen terms then so re ( ), ( + ),
. Boolen Alger 5. Boolen lger sics Product-terms (products, cues) re conjunctions o literls Ech vrile occurs only once Exmple: x y z yz or xyz or short Specil cse: Minterm (product-term in ll vriles) Sum-terms (cluses) re disjunctions o literls Specil cse: Mxterm (sum-term in ll vriles)
. Boolen Alger 6. Boolen lger sics A Sum-o-Products (sop) (lso clled disjunctive norml orm, dn) is disjunction o products Exmple: cyz + d + x A Product-o-Sums (pos) (lso clled conjunctive norml orm, cn) is conjunction o sums Exmple: (c + x + )(s + x)( + x)
. Boolen Alger. Boolen lger sics 7 The Rules o Boolen Alger: (T) x+0=x x (T') x =x Identity (T2) x + = (T2') x 0 = 0 0/-Element (T3) x + x = x (T3') x x = x Idempotence (T4) x = x (T4') = 0 Involution (T5) x+x= x (T5') x x=0 Complement
. Boolen Alger. Boolen lger sics 8 (T6) x + y = y + x (T6') x y = y x Commuttivity (T7) (x + y) + z = x + (y + z) = x + y + z (T7') (x y) z = x (y z) = x y z (T8) x y + x z = x (y + z) (T8') (x + y) (x + z) = x + y z Associtivity Distriutivity (T9) (x + y) = x y (T9') (x y) = x+y De Morgn's Lw (T0) (x +...+ + x n )= x... x n Generlized De Morgn's (T0') (x... x n )= x +...+ x n Lw
. Boolen Alger. Boolen lger sics 9 (T) x + x y = x + y (T') x (x + y) = x y (T2) x + x y = x (T2') x (x + y) = x Asorption Very importnt or the simpliiction o terms nd circuits! Exmple: x x & x y y
. Boolen Alger. Boolen lger sics 20 Boole's Expnsion Theorem (849) lso ttriuted to Shnnon
. Boolen Alger. Boolen lger sics x x 2x 3x 4 Ide: Decompose 0 0 0 0 0 unction into two su- 0 0 0 unctions which do not 0 0 0 0 depend on some vrile, 0 0 0 eg e.g., x 0 0 0 (0, x2,x3,x4) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (, x2,x3,x4) 0 0 0 2
. Boolen Alger. Boolen lger sics 22 Expnsion Theorem: Boolen Function cn e decomposed ccording to vrile x s ollows x x x x x, x re clled the Positive (-) nd Negtive (0-) Coctors o with respect to x The coctors cn e clculted y replcing the vrile x y the constnts 0 nd, respectively
. Boolen Alger. Boolen lger sics 23 Illustrtion in the Veitch-digrm: c c
. Boolen Alger. Boolen lger sics 24 Illustrtion in the Veitch-digrm: c c
. Boolen Alger. Boolen lger sics 25 Circuit reliztion: & & c c
. Boolen Alger. Boolen lger sics 26 The coctors re clculted y replcing y 0 nd, respectively: & & c = = = c c c + + + 0 + + +, 0 = (c+)+ (c+) = = c c + +,,
. Boolen Alger. Boolen lger sics 27 The coctors re clculted y replcing y 0 nd, respectively plus simpliictions: c = c + +, =c+ +=c+, =c+0+0=c+, = (c+)+ (c+) c c & &
. Boolen Alger. Boolen lger sics 28 The circuit used ove is clled 2:-Multiplexor Symol: & 0 & x x Depending on x, the output is either equl to or equl to
. Boolen Alger. Boolen lger sics 29 Remrk: the clcultion o coctor cn e viewed s step o symolic simultion: Trditionl simultion determines the vlue t the output o gte-network or given vlues t the inputs The clcultion o coctor determines the unction t the output i some inputs ssume constnt vlue (0 or ) & & 0 & & = x 0 x 0
. Boolen Alger 30. Boolen lger sics 3 opertions etween coctors: The Boolen Dierence (Exor) The Universl Quntiiction (And) The Existentil ti Quntiiction (Or)
. Boolen Alger 3. Boolen lger sics The Boolen Dierence (x) x x x XOR o oth coctors Chrcterizes ll situtions ti or which h chnge o x implies chnge o
. Boolen Alger 32. Boolen lger sics Exmple: 0 0 0 0 c c c coctors re here () 0 0 c c
. Boolen Alger. Boolen lger sics 33 Exmple: 2:-multiplexor & & () x ( x x) (x ) x ( ( x) x) (x (x ) ) x O course! or x = 0 we hve =, so implies!
. Boolen Alger. Boolen lger sics 34 The Boolen Existentil Quntier ( x: (x)) The disjunction o oth coctors x x
. Boolen Alger. Boolen lger sics 35 ( : ()) either coctor is here c c
. Boolen Alger. Boolen lger sics 36 The clcultion o the Boolen existentil quntiier is prticulrly esy or Boolen expression in dn: =... x +... +... x +... +... products products products with x with x without x,x ( x: (x)) x x ( x: (x)) =... +... +... 0 +... +...+... 0 +... +... +... +... =... +... +... +... +... x x originl expression where ll occurences o x,x re eliminted Exmple: = + c + c : () = + c + c (= + c)
. Boolen Alger. Boolen lger sics 37 The Boolen Universl Quntor ( x : (x )) The conjunction o oth coctors x x
. Boolen Alger. Boolen lger sics 38 ( : ( )) oth coctors re here c c
. Boolen Alger 39. Boolen lger sics The clcultion o the Boolen universl quntiier is prticulrly esy or Boolen expression in cn: Rule: Eliminte ll occurences o x,x Exmple: = ( + c)( + )( + + c) : () = ( + c)( + c) (= c)
. Boolen Alger. Boolen lger sics 40 Inclusion A unction is included in (is covered y) unction g, g i (i nd only i) g 0 or equivlently g = Anlogy (set theory): F G F G 0 g g
. Boolen Alger. Boolen lger sics 4 Exmple o g using Krnugh-mps: g
42. Boolen Alger. Boolen lger sics The ollowing sttements re equivlent: g 0 g g g ( ) g g g ( g = ) g g g
. Boolen Alger. Boolen lger sics 43 Assume (i) unction in dn nd ssume (ii) tht g is the unction where some o the products o re eliminted. products Then g not in g Proo: cn e written in the orm = + g. g is equivlent to g = or g + =. g + ( + g) = g + + g =. We hve lwys: + g.
. Boolen Alger 44. Boolen lger sics Assume (i) unction in cn nd ssume (ii) tht g is the unction where some o the cluses re eliminted. Then g Proo: cn e written in the orm = g. g is equivlent to g = or + g =. ( g) + g = + g + g =. We hve lwys: g g.
. Boolen Alger. Boolen lger sics 45 Implicnt o Boolen unction A product-term p is n implicnt o Boolen unction i p d c d is implicnt o Concept o prime-implicnts i in two-level l logic synthesis
. Boolen Alger. Boolen lger sics 46 Tutology: A Boolen unction is clled Tutology i= Is this resonle concept t ll??? Exmples:
. Boolen Alger. Boolen lger sics 47 Logicveriiction: show tht two circuits with outputs nd g implement the sme oolen unction! Show tht g is tutology! = & & & & g g = *g + *g
. Boolen Alger 48. Boolen lger sics Boole's expnsion theorem is the sis or "Dividend-conquer" pproch to tutology checking = i oth coctors re equl to one = x x x x = x = x 2 prolems in n- p vriles
. Boolen Alger. Boolen lger sics 49 Exmple:? = + + = = 0 + + 0 = + = Tutology checking my induce n exponentil numer o cses!
. Boolen Alger. Boolen lger sics 50 Stisiility: Boolen unction is stisile, i there is t lest one comintion o vrile vlues or which = A oolen unction 0 is stisile! is tutology i is unstisile Exmple:? ( ) ( ) is not stisile My lso need n exponentil # steps
. Boolen Alger. Boolen lger sics 5 Exmple o ppliction: ssume network o gtes with two outputs nd g. I we wnt to know i oth outputs cn e or the sme comintion o input vlues, then we cn check i g is stisile.... g
. Boolen Alger 52. Boolen lger sics I is tutology nd i g then g is lso tutology I is unstiile nd i g then g is lso unstisile
. Boolen Alger. Grundegrie der oolesche Alger 53 Germn/Engl Glossry, Literl literl + + c Summenterm/Disjunktion/ sum/disjunction/ Oder-Klusel cluse c Produktterm/Konjunktion/ product/conjunction/ Und-Klusel cue + cd disjunktive Normlorm (DNF) disjunctive norml orm (dn)/ sum-o-products (sop) ( + )( + c)konjunktive Normlorm (KNF) conjunctive norml orm (cn)/ product-o-sums x 0-/negtiver Koktor 0-/negtive coctor x -/positiver Koktor -/positive coctor = x x + x x Boolescher Entwicklungsstz Boole's expnsion theorem = Tutologie tutologyt 0 Erüllrkeit stisiility
. Boolen Alger 54.2 Resoning Aout Boolen Expressions The veriiction o circuit it involves some procedures y which we give mthemticl evidence tht sttement out the circuit is true A veriiction prolem is not circuit or Booeln expression A veriiction prolem involves sttements out circuit or Boolen expression A Boolen expression is 0 or, sttement is true or lse "mthemticl evidence" mens tht we re le to give something like mthemticl proo o the truth o some sttement
. Boolen Alger.2 Resoning out Boolen expressions 55 Typicl sttements involved in veriiction prolems re: "The outputs o two circuits re equl" "It is not possile tht the outputs x nd y o circuit oth ssume the vlue " Implictions: "I the inputs re... then the outputs re..." or: "I the outputs re... then the inputs must e..."... nd mny other types o sttements involving, or instnce, temporl quliiers like "in the next clock- cycle", "never", " "lwys", " "sometimes", " etc.
. Boolen Alger 56.2 Resoning out Boolen expressions Boolen expressions ssume the Boolen vlues 0 or Sttements (out circuit) re either true or lse, i.e., they hold or do not hold (or circuit) "it rins", "the colour o my cr is red", "+=+", A proo o sttement estlishes the truth o the sttement A proo-procedure is method y which we cn mechniclly derive the truth o sttements We re interested in the development o proo-procedures to veriy sttements out circuits
. Boolen Alger.2 Resoning out Boolen expressions 57 We employ common mthemticl nottions using symols like "=", etc. to mke sttements Exmple: "The outputs o two circuits re equl or ll possile input comintions", ormlly: = g (s in sin 2 (x) + cos 2 (x) = ) We lso used mthemticl nottions to introduce some sic concepts like "" in the ormer section The ollowing prgrphs ttempt to e little it more precise out symols like "=" in order void conusion with the symols o Boolen lger = nd (or nd ) re so similr, wht is ( ), the dierence? In ct, there IS very close reltionship etween propositionl logic nd Boolen lger
. Boolen Alger.2 Resoning out Boolen expressions 58 We employ two dierent types o nottion with dierent symols: The lnguge o Boolen expressions (or Boolen terms) with the Boolen opertors, +,,, etc. Boolen expressions ssume the vlues 0 or. A (mthemticl) met-lnguge g to mke sttements out Boolen expressions using symols like =,,, etc. which re well-known rom other mthemticl disciplines. Sttements re true or lse. Exmples: + = +, g g, etc.
. Boolen Alger.2 Resoning out Boolen expressions 59 Agin: A Boolen expression my ssume the vlues 0 or. A sttement my e true o lse. The met-lnguge or sttements hs two dierent types o symols: Predicte-symols like = nd. Applying predicte to expressions results in sttement which is true or lse. Exmple: x x+ expression expression sttement t t While unctions nd expressions return vlue, predictes my e viewed s specil unctions returning the vlues true or lse
. Boolen Alger 60.2 Resoning out Boolen expressions Logicl (propositionl) connectives like,,, nd. Logicl connectives comine sttements to sttements. Exmple: x x+ x = x+ sttement sttement sttement xy yz xz st. st. st. sttement
. Boolen Alger.2 Resoning out Boolen expressions 6 The resulting truth-vlues o the logicl connectives re deined nlogously to the Boolen opertors nd re typiclly given y truth-tles. Exmple: The truth-tle o the propositionl p nd "". Let A nd B e two sttements. Then the truth o A B is deined s ollows: B A lse true lse lse lse true lse true A B We try to void n "over-ormliztion" o veriiction prolems nd will use logicl connectives only rrely.
. Boolen Alger.2 Resoning out Boolen expressions 62 Due to the close reltionship etween the Boolen opertors nd the opertors o our mthemticl met-lnguge, we cn oten trnsorm veriiction prolem (phrsed s sttement) into dierent (oten more mngle) orm. Exmple: Rther thn to prove = g we show tht g =, i.e., tht g is tutology.
. Boolen Alger.2 Resoning out Boolen expressions 63 Generlly, we trnsorm sttements F nd G involving Boolen expressions into equivlent Boolen expressions Be(F) nd Be(G) s ollows (,g Boolen expressions): Sttement Boolen expression = = 0 = g g g g F G Be(F) Be(g) etc. F Be(F) F G Be(F) Be(G) The proo o sttement is equivlent to showing the tutology o the trnsormed Boolen expression, e.g., to prove = g we show tht g =
. Boolen Alger.2 Resoning out Boolen expressions 64 Exmple: The sttement "I x is then y is in the ollowing circuit" is ormlized s the sttement x = y = The equivlent Boolen expression is x y The proo o the originl sttement is trnsormed into the proo o the tutology o x y, i.e., we hve to prove the sttement x y = & x y One possile proo: x y = x+y = + + = + + + = (q.e.d.)
. Boolen Alger.2 Resoning out Boolen expressions 65 A note on implictions: In mny sitution, we hve to prove the truth o n i-then sttement in nturl lnguge: "i A then C" where the commitment C ollows rom nother sttement, the ssumption A. Formlly, this is denoted s n impliction A C. The deinition o the logicl impliction A C in terms o truth-tle: C A C= A C A lse true c = + c lse true true true lse true A C I we wnt to prove A C then we see rom the truth-tle tle tht or the cse where A is lse we do not hve to prove nything - A C is true independently o C.
. Boolen Alger.2 Resoning out Boolen expressions 66 All wht we hve to do is to prove tht C is true or the cse tht A is true. We see this lso i we trnsorm the impliction into the equivlent Boolen expression. Assume gin the sttement: x = y = nd the equivlent Boolen expression x y. I we wnt to show the tutology, i.e., x y = nd crete the unction tle o x y: y x x 0 & 0 0 then we hve to show only tht y= ollows rom x=. For the circuit, our rgument would e: I x= then = nd = since x=. Thus, y= since y=+. (q.e.d.) y
. Boolen Alger.2 Resoning out Boolen expressions 67 There re mny dierent wys ("decision procedures") to estlish the truth o sttements, the trnsormtion into n equivlent Boolen expression is only one possiility. A very common technique is to crete circuit or the logicl l structure t o the sttement t t nd comine this circuit it with the originl circuit. Since we re le to trnsorm sttements into Boolen expressions we cn lso trnsorm sttements into circuits! Exmple: The impliction circuit or x y y x Impliction circuit
. Boolen Alger.2 Resoning out Boolen expressions 68 Sttement nd originl circuit in comintion: & x y For tutology, the output must lwys e Impliction p circuit
. Boolen Alger.2 Resoning out Boolen expressions 69 Exmple we discussed eore: Prove = g Equlity circuit & = & & & g For tutology, the output must lwys e