(Lec 4) Binary Decision Diagrams: Manipulation

Size: px
Start display at page:

Download "(Lec 4) Binary Decision Diagrams: Manipulation"

Transcription

1 (Le 4) Binry Deision Digrms: Mnipultion Wht you know Bsi BDD t struture DAG representtion How vrile orering + reution = nonil A few immeite pplitions eg, trivil tutology heking Wht you on t know Algorithms to uil one effiiently Most useful implementtion triks for effiieny (Thnks to Rny Brynt & Krl Bre for nie BDD pis+slies) R. Rutenr 2, CMU 8-76, Fll 2 Copyright Notie Ro A. Rutenr, 2 All rights reserve. You my not mke opies of this mteril in ny form without my express permission. R. Rutenr 2, CMU 8-76, Fll 2 2 Pge

2 Pge 2 Where Are We? More BDDs -- now how to tully implement them M T W Th F Aug Sep Ot Nov Thnxgive De Introution Avne Boolen lger JAVA Review Forml verifition 2-Level logi synthesis Multi-level logi synthesis Tehnology mpping Plement Routing Stti timing nlysis Eletril timing nlysis Geometri t struts & pps R. Rutenr 2, CMU 8-76, Fll 2 3 Hnouts Physil Leture 4 -- BDD Mnipultion Eletroni HW2 is out on the we site. (Also, note ll TA/Prof offie hours re on we site, in Aout Clss ) Assignments Proj3 out lte toy or tomorrow: Builing simple BDD pkge in JAVA, then using it for some exmple verifition tsks R. Rutenr 2, CMU 8-76, Fll 2 4

3 Pge 3 BDDs: Cretion First gol Input: gte-level logi network Output: BDD tht represents Boolen funtion of the network Question: how? Cnnot ffor to o it the wy we evelope the BDD ie......nnot uil the full eision igrm from the truth tle n then o the reution to nonil form x x 2 x 3 f x 3 x 2 x 3 x x 3 x 2 x 3 R. Rutenr 2, CMU 8-76, Fll 2 5 BDDs: Cretion So, how o we o it? Buil up BDD inrementlly, y wlking the gte network Eh input is BDD Eh gte eomes n opertor tht proues new BDD A T B Out C T2 A B C T T2 Out R. Rutenr 2, CMU 8-76, Fll 2 6

4 Pge 4 BDDs: Cretion Strtegy Represent t s set of OBDDs, ll with ientil vrile orerings Express solution metho s sequene of symoli opertions Implement eh opertion y OBDD mnipultion Wht extly is symoli opertion? Think of it like C lnguge suroutine tht works on BDDs... *OPERATOR( *Input, *Input2)... ie, it s routine tht tkes 2 pointers to BDD strutures, uils new BDD struture, n returns you pointer to it Algorithmi properties Arguments re OBDDs with ientil vrile orerings. Result is OBDD with sme orering. Clle the Closure Property : OBDDs go in, OBDDs ome out R. Rutenr 2, CMU 8-76, Fll 2 7 BDDs: Cretion How o we o it? Option (The ovious pproh) Buil BDD opertors for ll the things you n o iretly on logi gte networks, or Boolen funtions themselves Simple opertors: NOT(), AND(,) OR(,), EXOR(,), et Complex opertors: COFACTOR(F,x), CONSENSUS(F,x), et To uil the BDD for Out... might wnt something like this: A B C T T2 Out A = new_vr(""); B = new_vr(""); C = new_vr(""); T = AND(A, B); T2 = AND(B, C); Out = OR(T, T2); R. Rutenr 2, CMU 8-76, Fll 2 8

5 BDDs: Cretion Wht s wrong with this? Nothing, tully. Perfetly workle......ut not the most elegnt wy of oing it An not the wy people tully o it these ys Option 2: (Sutle pproh) Buil few, ritil, ore opertors on BDDs Buil up ALL the other opertors you like using ONLY this smll set of uiling-lok opertors Avntge Atully less progrmming work, sine you only hve to uil few omplite routines Mkes it muh esier to new opertors lter R. Rutenr 2, CMU 8-76, Fll 2 9 BDDs: RESTRICT Opertor So, wht re the ore opertors we nee? Surprisingly, there re only 2: RESTRICT, ITE RESTRICT(funtion F, vrile v, onstnt k) This is just the Shnnon oftor of F wrt vrile v Exmple: RESTRICT(F, v, ) == F v RESTRICT(F, v, ) == F v Rememer: F is represente s BDD, result of RESTRICT is nother BDD ie, we re relly implementing something like this: *RESTRICT( *F, vrile v, int k) R. Rutenr 2, CMU 8-76, Fll 2 Pge 5

6 Pge 6 BDDs: ITE If_Then_Else Opertor ITE(funtion F, funtion G, funtion H) Clle the IF-THEN-ELSE opertor ITE(F,G, H) is itself nother Boolen funtion Couple of ifferent wys to esrie just wht ITE is... In pseuo-c... ITE(F,G,H)(x,...,xn) { if ( F(x,..., xn)== ) then return ( G(x,..., xn) ) else return ( H(x,..., xn) ) } In Boolen lger... Let X = x,x2,...xn, just for onveniene of nottion ITE(F,G,H)(X) = F(X) G(X) + F(X) H(X) R. Rutenr 2, CMU 8-76, Fll 2 BDDs: ITE As hrwre... X F G H selet MUX ITE(F,G,H)(X) This one is lso pretty esy to rememer ITE is like n IF-THEN-ELSE in softwre, or MUX in hrwre Critil things to rememer re: ITE(F,G,H) IS A NEW FUNCTION F,G,H re inputs to ITE opertor, represente s BDDs ITE(F,G,H) retes (is) new BDD R. Rutenr 2, CMU 8-76, Fll 2 2

7 BDDs: ITE Conventions Usully see the input funtions to ITE written like this: ITE( I, T, E)...just for onveniene in rememering tht the first is the IF funtion, the seon is the THEN funtion, lst is ELSE funtion Bk to BDD ore opertors Sort of esy to see why you nee RESTRICT - Lots of useful things you n uil out of oftors Wht goo is ITE? Wht n you o with it? Atully, lmost everything... R. Rutenr 2, CMU 8-76, Fll 2 3 BDDs: Uses of ITE Cn mke ny si 2-input gte out of ITE Not F F MUX An F F G G MUX Or F F G G MUX R. Rutenr 2, CMU 8-76, Fll 2 4 Pge 7

8 BDDs: Uses of ITE Let s e preise ut how we inten to use ITE An F F G Hve BDD t strutures for funtions F(X), G(X) We wnt to rete the BDD for the funtion (F G)(X) G MUX ITE(F,G,) We o this y lling the ITE routine on the BDD t strutures for funtion F, for funtion G, n for onstnt BDD== ITE returns s vlue pointer to new BDD, whih == (F G) R. Rutenr 2, CMU 8-76, Fll 2 5 BDDs: Cretion If you n implement RESTRICT, ITE... You n uil up silly nything useful you nee to mnipulte Boolen funtions, or uil BDDs of tul gte networks New question How o we tully implement RESTRICT n ITE s lgorithms? Answers Shnnon oftoring to the resue, gin! Reursive ivie n onquer, gin! Nee ouple of speil t strutures to mke it effiient Strt y looking t ITE R. Rutenr 2, CMU 8-76, Fll 2 6 Pge 8

9 BDDs: Implementing ITE Assumptions There is glol vrile orering: x < x2 < x3 <... < xn If I give you few vriles, you n tell me whih is smllest Exmple: Input: x2, x7 smller(x2, x7) == x2 We will use multi-roote DAGs (MRDAGs) for the BDDs Amzingly enough, it s simpler to implement Newly rete BDDs lwys try to shre noes in existing BDDs Exmple: wht is MRDAG BDD for funtions F(,)=+, G(,)=? R. Rutenr 2, CMU 8-76, Fll 2 7 BDDs: Implementing ITE Key implementtion ie: Use Shnnon expnsion Suppose X=x, x2,... x,... xn Suppose we hve 3 funtions I(X), T(X), E(X), then... ITE(I, T, E) = x ITE( I x,t x, E x ) + x ITE( I x,t x, E x )...ie, ITE n itself e eompose reursively! An, if you wnt to think BDDs... ITE( I, T, E) = x BDD for I BDD for T BDD for E ITE( I x,t x, E x ) ITE( I x,t x, E x ) R. Rutenr 2, CMU 8-76, Fll 2 8 Pge 9

10 BDDs: Implementing ITE So, wht o we nee to o reursive ITE? Termintion onitions: when n we reognize nswer n quit? Splitting riterion: whih vrile (x?) o you pik to split on? Coftoring: how hr is it to get I x,t x, E x, et. from their BDDs? Effiieny onerns: how fst is this, how ig is the reursion? Reution: how o we gurntee the BDD we proue is reue? Solutions Turns these thing re tully ll interepenent Let s strt wlking thru these issues n see wht we get... R. Rutenr 2, CMU 8-76, Fll 2 9 BDDs: Implementing ITE Generl lgorithm ITE( I, T, E ) { if (terminl se) { return ompute result ; } else { let x e splitting vrile; PosFtor = ITE( I x, T x, E x ) ; NegFtor = ITE( I x,t x, E x ) ; R = new noe for vr x ; R.loson = NegFtor ; R.hison = Posftor ; Do reutions; return( R ); } } R. Rutenr 2, CMU 8-76, Fll 2 2 Pge

11 Pge BDDs: ITE Implementtion ITE( I, T, E) terminl ses If I = => Return T if I = => Return E If T = && E = => Return I If T = E => Return E Exmples T E I selet ITE(I,T,E) ITE(,, ) = BDD for E ITE(,, ) = ITE(,, ) = BDD for T BDD for E BDD for E BDD for I BDD for T BDD for T R. Rutenr 2, CMU 8-76, Fll 2 2 BDDs: ITE Implementtion Some sutlety out termintion A onern rise erlier ws: how o we keep nswer reue? At lest for the termintion onitions, esy in multi-roote DAG When you terminte, you just return pointer to something tht lrey exists in the MRDAG Sine the MRDAG is BDD, it s lrey reue ie, No extr work Note: so, when ITE is lle n termintes, it relly looks like this... ITE(,, ) = MRDAG for ll our BDDs Eh of the inputs I, T, E re relly represente y ptr to some root noe in this ig MRDAG. Result ITE(I,T,E) ultimtely ens up nother noe in here. For termintion onitions, the result is lwys n existing noe. R. Rutenr 2, CMU 8-76, Fll 2 22

12 Pge 2 BDDs: ITE Implementtion Splitting vrile seletion There s tully only one right hoie Split on smllest vr mong roots of I, T, E ITE( I, T, E) => if x < y < z, pik x to split on y x z BDD for I BDD for T BDD for E Why? Beuse it mkes the oftoring trivil to implement! Rememer, we now hve to ompute I x,t x, E x, I x,t x, E x R. Rutenr 2, CMU 8-76, Fll 2 23 BDDs: ITE Implementtion RESTRICT(F,v,k) Rememer, this is the opertor tht oes the oftor on BDDs In generl, it s it omplite Troule is when you oftor wrt vr own eep insie the BDD Exmple: Restrit vrile to Restrit ( F, vr x, onst k ): Bypss ny noes for vrile x /* set to onst */ Choose Hi hil for k = Choose Lo hil for k = Reue result Fin noes Bypss Reue R. Rutenr 2, CMU 8-76, Fll 2 24

13 BDDs: ITE Implementtion..ut there s some useful speil ses here If we lwys pik splitting vr s: smllest(roots of I, T, E)......then we re lwys oing one of these 2 ses Cse : Restrit on root noe vrile Restrit(, x, ) hison Restrit(, x, ) loson x x L H H L H L Cse 2: Restrit on vrile less thn root noe vrile E.g., x < y Restrit(, x, ) originl funtion y L H R. Rutenr 2, CMU 8-76, Fll 2 25 BDDs: ITE Implementtion OK -- tht lst one ws sutle... Let s look t onrete exmple to see the ie here. Restrit( F,, ) ==? vr orer is: < < 2 < 2 < 3 < 3 Funtion F R. Rutenr 2, CMU 8-76, Fll 2 26 Pge 3

14 Pge 4 BDDs: ITE Implementtion Why tht works Alwys pik vrile t or ove the root of I, T, E Never then hve to oftor own eep in BDD Result is lwys pointer to some noe tht lrey exists in the multiroote DAG of our BDDs So, gin, the reution step tkes re of itself here ie, the MRDAG is reue t ll times, we just return pointer to sudag insie it, whih is lso reue RESTRICT(, vr x, onstnt ) = MRDAG for ll our BDDs In multiroote DAG, these speil ses of RESTRICT will lwys return pointer to some noe tht is lrey in DAG R. Rutenr 2, CMU 8-76, Fll 2 27 BDDs: ITE Exmple Let s try little ITE exmple Cpitl letters = funtions, smll letters = vriles Vr orer is < < < We wnt to ompute ITE ( I(,,,), T(,,,), E(,,,) ) Assume it s MRDAG, we use funtion nmes to ID noes... nottion is E for this noe, ie, we will lel the Boolen funtion for eh noe E = + D = T = B = C = I = + R. Rutenr 2, CMU 8-76, Fll 2 28

15 Pge 5 BDD: ITE Exmple E = + D = T = B = C = I = + ITE(I, T, E) =? smllest vr mong roots is ITE(I,T,E) lo hi ITE(I, T, E ) ITE(I, T, E ) lo ITE(B,, E) ITE(,, ) ITE(I,T,E) hi ITE(, ITE(B, C, E), E) ITE(,, ) R. Rutenr 2, CMU 8-76, Fll 2 29 Cn we terminte these new ITEs right wy? ie, will we reurse more, or o we know the nswers now? Let s rememer the speil ses for ITE termintion ITE(I,T,E) lo hi ITE( ITE(B,,,, E) ) ITE(, ITE(B, C,, E),, E) ) I I T E selet ITE(I,T,E) T E selet ITE(I,T,E) R. Rutenr 2, CMU 8-76, Fll 2 3

16 Pge 6 BDD: ITE Exmple E = + D = T = B = C = I = + lo ITE(B,, E) ITE(I,T,E) hi C ITE(I,T,E) lo hi lo hi C ITE(B,,E ) = ITE(,, D) = D ITE(B,,E ) = ITE(,, ) = R. Rutenr 2, CMU 8-76, Fll 2 3 BDD: ITE Exmple E = + D = T = B = C = I = + lo ITE(I,T,E) = hi lo hi C D An we re one! Reursion tree nturlly tres out the resulting BDD for ITE(I,T,E) We set up termintion onitions so tht leves re lwys noes tht lrey exist in the originl multi-roote DAG for So, we n just plug our result k into our MRDAG... R. Rutenr 2, CMU 8-76, Fll 2 32

17 Pge 7 BDD: ITE Exmple E = + D = T = B = C = I = + lo lo hi ITE(I,T,E) hi C D Atul resulting MRDAG tht we get ITE(I,T,E) E = + D = T = B = C = I = + R. Rutenr 2, CMU 8-76, Fll 2 33 BDD: ITE Implementtion Reution, revisite In our little exmple, the resulting funtion ITE ws new, not lrey existing in the MRDAG, n ll the lef noes were lrey there. Wht hppens if the resulting funtion is NOT new, if it lrey exists in the MRDAG? Exmple Suppose tht, for whtever reson, ITE returns the B = funtion E = + D = T = B = C = I = + lo ITE(I,T,E) hi R. Rutenr 2, CMU 8-76, Fll 2 34

18 Pge 8 BDDs: ITE Implementtion Following prior exmples, we uil MRDAG s... E = + D = T = B = C = I = + lo ITE(I,T,E) hi E = + D = T = B = C = I = + ITE(I,T,E) TROUBLE!! It s not reue nymore!! R. Rutenr 2, CMU 8-76, Fll 2 35 BDDs: ITE Implementtion Esy to rete new BDD tht s not reue In our B= exmple, we me reunnt vr noe How to fix? Clever trik: The Unique Tle New nottion: mke key for eh noe s (vr, lo, hi) Mke hsh tle (lle the Unique tle) tht mps (vr, lo, hi) for eh noe into tul pointer ress of the noe in the MRDAG T = I = + E = + B = 3 C = 4 D = Ptr ress 5 Unique Tle Hsh Inex Aress (,7,) 4 R. Rutenr 2, CMU 8-76, Fll 2 36

19 BDDs: ITE Implementtion Trik Never, ever just rete noe, like B= noe, without heking to see if the noe you wnt to rete lrey exists in the Unique tle This is the ig ie for how we voi reunny Nee new funtion, lle FinOrCreteNoe FinOrCreteNoe heks to see if the noe you wnt to mke lrey exists in the MRDAG. If so, it just returns pointer to tht noe, inste of mking new noe FinOrCreteNoe lso n hek to mke sure you on t o something stupi to mke n unreue DAG Helpful to see piture of wht FinOrCreteNoe oes... R. Rutenr 2, CMU 8-76, Fll 2 37 BDDs: ITE Reution Cse : Trying to mke onstnt noe If you invoke FinOrCrete(onstnt, null, null) n the MRDAG lrey hs tht onstnt, you return pointer to it Ex: FinOrCreteNoe(, null, null) = BDDs Note: this hnles the first reution rule we gve... R. Rutenr 2, CMU 8-76, Fll 2 38 Pge 9

20 Pge 2 BDDs: ITE Reution Cse 2: Trying to uplite n existing vr noe If you invoke FinOrCrete(vr, loson, hison) n the MRDAG lrey hs this noe, you just return pointer to it Ex: FinOrCreteNoe(,, 6) = Note: this hnles the seon reution rule we gve... T = I = + E = + B = 3 C = 4 D = x x x y z y z R. Rutenr 2, CMU 8-76, Fll 2 39 BDDs: ITE Reution Cse 3: Trying to mke n unneessry test noe If you invoke FinOrCrete(vr, loson, hison) n loson = = hison, then you just return loson, n on t even try to look in DAG Ex: FinOrCreteNoe(, 5, 5) = Note: this hnles the lst reution rule we gve... T = I = + E = + B = 3 C = 4 D = x y y R. Rutenr 2, CMU 8-76, Fll 2 4

21 Pge 2 BDDs: ITE Reution Cse 4: None of the ove Well, you n t fin it in the existing MRDAG, n it s not stupi to rete it, so go he n rete the noe, n then rememer to insert it in the unique tle Ex: FinOrCreteNoe(, 5, 6) =? T = I = + E = + B = 3 C = 4 D = T = I = + E = + B = 3 C = 4 D = Unique Tle Hsh inex Aress (, 5, 6) 2 R. Rutenr 2, CMU 8-76, Fll 2 4 ITE: FinOrCreteNoe Algorithm looks like this FinOrCreteNoe(vr v, loson, hison) { if (v is tully onstnt ) { if( this onstnt NOT lrey in Unique tle ) instll this onstnt in UNIQUE tle; return ( pointer to onstnt ); } else if (loson == hison) return (loson) ; else if ( (v, loson, hison) lrey in Unique tle ) return ( pointer to (v, loson, hison) from Unique tle); else { rete new noe = (v, loson, hison); instll this noe in Unique tle; return (pointer to (v, loson, hison) ); } } R. Rutenr 2, CMU 8-76, Fll 2 42

22 BDDs: Reution Wht s relly going on here? Inste of uiling nonreue BDD, then going k to reue it......inste, we hek eh noe s we try to rete it uring reursive ivie&onquer......if it woul rete reunnt noe, we on t llow it to hppen. Inste, we return n existing noe of the BDD whenever we n. This is tully how ALL reutions get one on BDDs All lgorithms tht mnipulte or rete BDDs ll FinOrCreteNoe, to ensure things lwys sty reue Never, ever rete n unreue DAG R. Rutenr 2, CMU 8-76, Fll 2 43 ITE: Implementtion One more essentil trik for effiieny Turns out tht on igger prolems, it s very esy for the reursion to try to reompute the sme intermeite result ITE(,, ) lle on intermeite funtions mny times In ft, n e exponentil numer of lls to ITE in the reursion, ut not ll of them re unique omputtions Turns out there is relly esy fix... But let s onvine ourselves tht this is rel prolem, first... R. Rutenr 2, CMU 8-76, Fll 2 44 Pge 22

23 Pge 23 ITE: Reursive Clls Compute ITE( I, T, E) for BDDs elow (lphet vr orer) Argument I Argument T Argument E q s p r z x y ITE Reursive Clls ITE(p,, x) = = ITE(q,, z) = = ITE(r,, z) ITE(r,, y) = = = = ITE(s,, z) ITE(,, z) ITE(s,, ) = = ITE(,, ) ITE(,, ) R. Rutenr 2, CMU 8-76, Fll 2 45 BDDs: ITE Reursive Clls Reursive ll tree tells us lot... ITE(p,, x) = = ITE(q,, z) = = ITE(r,, z) ITE(r,, y) = = = = ITE(s,, z) ITE(,, z) ITE(s,, ) = = ITE(,, ) ITE(,, ) These hve 2 rrows going INTO them, so these ITE results will get reompute twie uring reursion R. Rutenr 2, CMU 8-76, Fll 2 46

24 Pge 24 Asie: Rememer Wht ITE Is Doing... Eh ll to ITE strts with 3 BDDs, returns BDD ITE(p,, x) = ITE(q,, z) = = = ITE(r,, z) ITE(r,, y) = = = = ITE(s,, z) ITE(,, z) ITE(s,, ) = = ITE(,, ) ITE(,, ) ITE( s,, z ) = ptr to some s z MRDAG for ll our BDDs R. Rutenr 2, CMU 8-76, Fll 2 47 BDDs: Reution Revisite Also, n see tht reution is importnt Reursive lls to ITE nturlly tre out n unreue BDD Reution on the fly vi FinOrCreteNoe prevents this Reursion ITE(p,, x) = ITE(q,, z) = = = ITE(r,, z) ITE(r,, y) = = = = ITE(s,, z) ITE(,, z) ITE(s,, ) = = ITE(,, ) ITE(,, ) Nturl BDD tre out uring ITE reursion Reue BDD R. Rutenr 2, CMU 8-76, Fll 2 48

25 Pge 25 BDDs: ITE Opertion Tle How to prevent reomputtion uring ITE reursion? Every time you return from ITE, you store your ompute nswer in tle, lle the Opertion Tle. Key is (I,T,E), vlue is ress of ompute noe in BDD returne Every time you enter ITE, you look in the tle first to see if the nswer hs lrey een ompute erlier in reursion Nie, simple solution, tres some memory (tle) for time Reursion ITE(p,, x) = ITE(q,, z) = = = ITE(r,, z) ITE(r,, y) = = = = ITE(s,, z) ITE(,, z) ITE(s,, ) = = ITE(,, ) ITE(,, ) Opertion Tle Hsh Vlue (p,,r) (q,,) (s,,z) Aress NoeI NoeJ NoeK R. Rutenr 2, CMU 8-76, Fll 2 49 BDDs: ITE Complexity Effiieny Without Opertion Tle Exponentil Complexity Effetively expn out eision trees With Opertion Tle Worst se = prout of grph sizes for I, T, n E At worst, will fill tle with ll possile keys Intertion with multi-root DAG ssumption If ll BDDs use shre noes... Mintin glol Opertion Tle, ross ALL BDDs More possiilities for quik termintion R. Rutenr 2, CMU 8-76, Fll 2 5

26 BDDs: ITE Finl ITE lgorithm ITE( I, T, E ) { if (terminl se pplies to I, T, E) { return( immeite ompute result ) ; } else if ( Opertion Tle hs entry for (I,T,E) ) { return( result noe from opertion tle ); } else { let x e smllest vr from mong roots of I, T, E ; PosFtor = ITE( I x,t x, E x ); Negftor = ITE( I x,t x, E x ); R = FinOrCreteNoe(x, NegFtor, PosFtor); InsertIntoOpertionTle( hsh vlue (I, T, E), ress R) ; return( R ) ; } } R. Rutenr 2, CMU 8-76, Fll 2 5 BDDs: Mnipultion There is similr lgorithm for generl RESTRICT Another reursive esent, uses FinOrCreteNoe gin Trik is to reple ll the noes tht hve the vrile you re oftoring out, n get the loson, hison pointers right We won t look t this in etil If you n implement ITE, n RESTRICT... You n silly implement everything interesting Severl useful properties too Closure: if you strt with ROBDDs with prtiulr vr orer, results of ITE n RESTRICT (properly implemente) re gin ROBDDs with sme vr orer Complexity: polynomil in size of input BDDs R. Rutenr 2, CMU 8-76, Fll 2 52 Pge 26

27 BDDs: Mnipultion Summry Implement 2 ore opertors on BDD t strutures RESTRICT( F, vr x, onstnt k) = Shnnon oftor ITE( I, T, E) = IF-THEN-ELSE opertor Eh of these tkes BDDs s inputs, returns new BDD From ITE & RESTRICT,you n implement lots of stuff Coftoring, quntifition, erivtives All the si gte types: NOT, AND, OR, EXOR, et Other more exoti stuff (see homework) Given n effiient BDD softwre pkge, n o lots of nie prtil engineering pplitions Stisfiility: tre BDD from root to noe to fin inputs tht mke the funtion == Equivlene: if 2 funtions re sme over ALL inputs, their BDDs en up itentil, ie, 2 pointers to sme noe in the MRDAG R. Rutenr 2, CMU 8-76, Fll 2 53 Pge 27

Lecture 11 Binary Decision Diagrams (BDDs)

Lecture 11 Binary Decision Diagrams (BDDs) C 474A/57A Computer-Aie Logi Design Leture Binry Deision Digrms (BDDs) C 474/575 Susn Lyseky o 3 Boolen Logi untions Representtions untion n e represente in ierent wys ruth tle, eqution, K-mp, iruit, et

More information

CSE 332. Sorting. Data Abstractions. CSE 332: Data Abstractions. QuickSort Cutoff 1. Where We Are 2. Bounding The MAXIMUM Problem 4

CSE 332. Sorting. Data Abstractions. CSE 332: Data Abstractions. QuickSort Cutoff 1. Where We Are 2. Bounding The MAXIMUM Problem 4 Am Blnk Leture 13 Winter 2016 CSE 332 CSE 332: Dt Astrtions Sorting Dt Astrtions QuikSort Cutoff 1 Where We Are 2 For smll n, the reursion is wste. The onstnts on quik/merge sort re higher thn the ones

More information

Factorising FACTORISING.

Factorising FACTORISING. Ftorising FACTORISING www.mthletis.om.u Ftorising FACTORISING Ftorising is the opposite of expning. It is the proess of putting expressions into rkets rther thn expning them out. In this setion you will

More information

CS 573 Automata Theory and Formal Languages

CS 573 Automata Theory and Formal Languages Non-determinism Automt Theory nd Forml Lnguges Professor Leslie Lnder Leture # 3 Septemer 6, 2 To hieve our gol, we need the onept of Non-deterministi Finite Automton with -moves (NFA) An NFA is tuple

More information

Lecture 6: Coding theory

Lecture 6: Coding theory Leture 6: Coing theory Biology 429 Crl Bergstrom Ferury 4, 2008 Soures: This leture loosely follows Cover n Thoms Chpter 5 n Yeung Chpter 3. As usul, some of the text n equtions re tken iretly from those

More information

Logic Synthesis and Verification

Logic Synthesis and Verification Logi Synthesis nd Verifition SOPs nd Inompletely Speified Funtions Jie-Hong Rolnd Jing 江介宏 Deprtment of Eletril Engineering Ntionl Tiwn University Fll 2010 Reding: Logi Synthesis in Nutshell Setion 2 most

More information

1 PYTHAGORAS THEOREM 1. Given a right angled triangle, the square of the hypotenuse is equal to the sum of the squares of the other two sides.

1 PYTHAGORAS THEOREM 1. Given a right angled triangle, the square of the hypotenuse is equal to the sum of the squares of the other two sides. 1 PYTHAGORAS THEOREM 1 1 Pythgors Theorem In this setion we will present geometri proof of the fmous theorem of Pythgors. Given right ngled tringle, the squre of the hypotenuse is equl to the sum of the

More information

Project 6: Minigoals Towards Simplifying and Rewriting Expressions

Project 6: Minigoals Towards Simplifying and Rewriting Expressions MAT 51 Wldis Projet 6: Minigols Towrds Simplifying nd Rewriting Expressions The distriutive property nd like terms You hve proly lerned in previous lsses out dding like terms ut one prolem with the wy

More information

For a, b, c, d positive if a b and. ac bd. Reciprocal relations for a and b positive. If a > b then a ab > b. then

For a, b, c, d positive if a b and. ac bd. Reciprocal relations for a and b positive. If a > b then a ab > b. then Slrs-7.2-ADV-.7 Improper Definite Integrls 27.. D.dox Pge of Improper Definite Integrls Before we strt the min topi we present relevnt lger nd it review. See Appendix J for more lger review. Inequlities:

More information

Intermediate Math Circles Wednesday, November 14, 2018 Finite Automata II. Nickolas Rollick a b b. a b 4

Intermediate Math Circles Wednesday, November 14, 2018 Finite Automata II. Nickolas Rollick a b b. a b 4 Intermedite Mth Circles Wednesdy, Novemer 14, 2018 Finite Automt II Nickols Rollick nrollick@uwterloo.c Regulr Lnguges Lst time, we were introduced to the ide of DFA (deterministic finite utomton), one

More information

Improper Integrals. The First Fundamental Theorem of Calculus, as we ve discussed in class, goes as follows:

Improper Integrals. The First Fundamental Theorem of Calculus, as we ve discussed in class, goes as follows: Improper Integrls The First Fundmentl Theorem of Clculus, s we ve discussed in clss, goes s follows: If f is continuous on the intervl [, ] nd F is function for which F t = ft, then ftdt = F F. An integrl

More information

18.06 Problem Set 4 Due Wednesday, Oct. 11, 2006 at 4:00 p.m. in 2-106

18.06 Problem Set 4 Due Wednesday, Oct. 11, 2006 at 4:00 p.m. in 2-106 8. Problem Set Due Wenesy, Ot., t : p.m. in - Problem Mony / Consier the eight vetors 5, 5, 5,..., () List ll of the one-element, linerly epenent sets forme from these. (b) Wht re the two-element, linerly

More information

Designing finite automata II

Designing finite automata II Designing finite utomt II Prolem: Design DFA A such tht L(A) consists of ll strings of nd which re of length 3n, for n = 0, 1, 2, (1) Determine wht to rememer out the input string Assign stte to ech of

More information

Counting Paths Between Vertices. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs

Counting Paths Between Vertices. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs Isomorphism of Grphs Definition The simple grphs G 1 = (V 1, E 1 ) n G = (V, E ) re isomorphi if there is ijetion (n oneto-one n onto funtion) f from V 1 to V with the property tht n re jent in G 1 if

More information

CS103B Handout 18 Winter 2007 February 28, 2007 Finite Automata

CS103B Handout 18 Winter 2007 February 28, 2007 Finite Automata CS103B ndout 18 Winter 2007 Ferury 28, 2007 Finite Automt Initil text y Mggie Johnson. Introduction Severl childrens gmes fit the following description: Pieces re set up on plying ord; dice re thrown or

More information

(Lec 9) Multi-Level Min III: Role of Don t Cares

(Lec 9) Multi-Level Min III: Role of Don t Cares Pge 1 (Le 9) Multi-Level Min III: Role o Don t Cres Wht you know 2-level minimiztion l ESPRESSO Multi-level minimiztion: Boolen network moel, Algeri moel or toring Retngle overing or extrtion Wht you on

More information

Convert the NFA into DFA

Convert the NFA into DFA Convert the NF into F For ech NF we cn find F ccepting the sme lnguge. The numer of sttes of the F could e exponentil in the numer of sttes of the NF, ut in prctice this worst cse occurs rrely. lgorithm:

More information

CS 360 Exam 2 Fall 2014 Name

CS 360 Exam 2 Fall 2014 Name CS 360 Exm 2 Fll 2014 Nme 1. The lsses shown elow efine singly-linke list n stk. Write three ifferent O(n)-time versions of the reverse_print metho s speifie elow. Eh version of the metho shoul output

More information

Review of Gaussian Quadrature method

Review of Gaussian Quadrature method Review of Gussin Qudrture method Nsser M. Asi Spring 006 compiled on Sundy Decemer 1, 017 t 09:1 PM 1 The prolem To find numericl vlue for the integrl of rel vlued function of rel vrile over specific rnge

More information

22: Union Find. CS 473u - Algorithms - Spring April 14, We want to maintain a collection of sets, under the operations of:

22: Union Find. CS 473u - Algorithms - Spring April 14, We want to maintain a collection of sets, under the operations of: 22: Union Fin CS 473u - Algorithms - Spring 2005 April 14, 2005 1 Union-Fin We wnt to mintin olletion of sets, uner the opertions of: 1. MkeSet(x) - rete set tht ontins the single element x. 2. Fin(x)

More information

How do we solve these things, especially when they get complicated? How do we know when a system has a solution, and when is it unique?

How do we solve these things, especially when they get complicated? How do we know when a system has a solution, and when is it unique? XII. LINEAR ALGEBRA: SOLVING SYSTEMS OF EQUATIONS Tody we re going to tlk out solving systems of liner equtions. These re prolems tht give couple of equtions with couple of unknowns, like: 6= x + x 7=

More information

Logic Synthesis and Verification

Logic Synthesis and Verification Logi Synthesis nd Verifition SOPs nd Inompletely Speified Funtions Jie-Hong Rolnd Jing 江介宏 Deprtment of Eletril Engineering Ntionl Tiwn University Fll 22 Reding: Logi Synthesis in Nutshell Setion 2 most

More information

CARLETON UNIVERSITY. 1.0 Problems and Most Solutions, Sect B, 2005

CARLETON UNIVERSITY. 1.0 Problems and Most Solutions, Sect B, 2005 RLETON UNIVERSIT eprtment of Eletronis ELE 2607 Swithing iruits erury 28, 05; 0 pm.0 Prolems n Most Solutions, Set, 2005 Jn. 2, #8 n #0; Simplify, Prove Prolem. #8 Simplify + + + Reue to four letters (literls).

More information

Unit 4. Combinational Circuits

Unit 4. Combinational Circuits Unit 4. Comintionl Ciruits Digitl Eletroni Ciruits (Ciruitos Eletrónios Digitles) E.T.S.I. Informáti Universidd de Sevill 5/10/2012 Jorge Jun 2010, 2011, 2012 You re free to opy, distriute

More information

Chapter 4 State-Space Planning

Chapter 4 State-Space Planning Leture slides for Automted Plnning: Theory nd Prtie Chpter 4 Stte-Spe Plnning Dn S. Nu CMSC 722, AI Plnning University of Mrylnd, Spring 2008 1 Motivtion Nerly ll plnning proedures re serh proedures Different

More information

expression simply by forming an OR of the ANDs of all input variables for which the output is

expression simply by forming an OR of the ANDs of all input variables for which the output is 2.4 Logic Minimiztion nd Krnugh Mps As we found ove, given truth tle, it is lwys possile to write down correct logic expression simply y forming n OR of the ANDs of ll input vriles for which the output

More information

CS 2204 DIGITAL LOGIC & STATE MACHINE DESIGN SPRING 2014

CS 2204 DIGITAL LOGIC & STATE MACHINE DESIGN SPRING 2014 S 224 DIGITAL LOGI & STATE MAHINE DESIGN SPRING 214 DUE : Mrh 27, 214 HOMEWORK III READ : Relte portions of hpters VII n VIII ASSIGNMENT : There re three questions. Solve ll homework n exm prolems s shown

More information

Now we must transform the original model so we can use the new parameters. = S max. Recruits

Now we must transform the original model so we can use the new parameters. = S max. Recruits MODEL FOR VARIABLE RECRUITMENT (ontinue) Alterntive Prmeteriztions of the pwner-reruit Moels We n write ny moel in numerous ifferent ut equivlent forms. Uner ertin irumstnes it is onvenient to work with

More information

CS 491G Combinatorial Optimization Lecture Notes

CS 491G Combinatorial Optimization Lecture Notes CS 491G Comintoril Optimiztion Leture Notes Dvi Owen July 30, August 1 1 Mthings Figure 1: two possile mthings in simple grph. Definition 1 Given grph G = V, E, mthing is olletion of eges M suh tht e i,

More information

Bases for Vector Spaces

Bases for Vector Spaces Bses for Vector Spces 2-26-25 A set is independent if, roughly speking, there is no redundncy in the set: You cn t uild ny vector in the set s liner comintion of the others A set spns if you cn uild everything

More information

Regular expressions, Finite Automata, transition graphs are all the same!!

Regular expressions, Finite Automata, transition graphs are all the same!! CSI 3104 /Winter 2011: Introduction to Forml Lnguges Chpter 7: Kleene s Theorem Chpter 7: Kleene s Theorem Regulr expressions, Finite Automt, trnsition grphs re ll the sme!! Dr. Neji Zgui CSI3104-W11 1

More information

p-adic Egyptian Fractions

p-adic Egyptian Fractions p-adic Egyptin Frctions Contents 1 Introduction 1 2 Trditionl Egyptin Frctions nd Greedy Algorithm 2 3 Set-up 3 4 p-greedy Algorithm 5 5 p-egyptin Trditionl 10 6 Conclusion 1 Introduction An Egyptin frction

More information

6.5 Improper integrals

6.5 Improper integrals Eerpt from "Clulus" 3 AoPS In. www.rtofprolemsolving.om 6.5. IMPROPER INTEGRALS 6.5 Improper integrls As we ve seen, we use the definite integrl R f to ompute the re of the region under the grph of y =

More information

I1 = I2 I1 = I2 + I3 I1 + I2 = I3 + I4 I 3

I1 = I2 I1 = I2 + I3 I1 + I2 = I3 + I4 I 3 2 The Prllel Circuit Electric Circuits: Figure 2- elow show ttery nd multiple resistors rrnged in prllel. Ech resistor receives portion of the current from the ttery sed on its resistnce. The split is

More information

Types of Finite Automata. CMSC 330: Organization of Programming Languages. Comparing DFAs and NFAs. NFA for (a b)*abb.

Types of Finite Automata. CMSC 330: Organization of Programming Languages. Comparing DFAs and NFAs. NFA for (a b)*abb. CMSC 330: Orgniztion of Progrmming Lnguges Finite Automt 2 Types of Finite Automt Deterministic Finite Automt () Exctly one sequence of steps for ech string All exmples so fr Nondeterministic Finite Automt

More information

10. AREAS BETWEEN CURVES

10. AREAS BETWEEN CURVES . AREAS BETWEEN CURVES.. Ares etween curves So res ove the x-xis re positive nd res elow re negtive, right? Wrong! We lied! Well, when you first lern out integrtion it s convenient fiction tht s true in

More information

Types of Finite Automata. CMSC 330: Organization of Programming Languages. Comparing DFAs and NFAs. Comparing DFAs and NFAs (cont.) Finite Automata 2

Types of Finite Automata. CMSC 330: Organization of Programming Languages. Comparing DFAs and NFAs. Comparing DFAs and NFAs (cont.) Finite Automata 2 CMSC 330: Orgniztion of Progrmming Lnguges Finite Automt 2 Types of Finite Automt Deterministic Finite Automt () Exctly one sequence of steps for ech string All exmples so fr Nondeterministic Finite Automt

More information

Parse trees, ambiguity, and Chomsky normal form

Parse trees, ambiguity, and Chomsky normal form Prse trees, miguity, nd Chomsky norml form In this lecture we will discuss few importnt notions connected with contextfree grmmrs, including prse trees, miguity, nd specil form for context-free grmmrs

More information

Properties of Integrals, Indefinite Integrals. Goals: Definition of the Definite Integral Integral Calculations using Antiderivatives

Properties of Integrals, Indefinite Integrals. Goals: Definition of the Definite Integral Integral Calculations using Antiderivatives Block #6: Properties of Integrls, Indefinite Integrls Gols: Definition of the Definite Integrl Integrl Clcultions using Antiderivtives Properties of Integrls The Indefinite Integrl 1 Riemnn Sums - 1 Riemnn

More information

Homework 3 Solutions

Homework 3 Solutions CS 341: Foundtions of Computer Science II Prof. Mrvin Nkym Homework 3 Solutions 1. Give NFAs with the specified numer of sttes recognizing ech of the following lnguges. In ll cses, the lphet is Σ = {,1}.

More information

EE 108A Lecture 2 (c) W. J. Dally and P. Levis 2

EE 108A Lecture 2 (c) W. J. Dally and P. Levis 2 EE08A Leture 2: Comintionl Logi Design EE 08A Leture 2 () 2005-2008 W. J. Dlly n P. Levis Announements Prof. Levis will hve no offie hours on Friy, Jn 8. Ls n setions hve een ssigne - see the we pge Register

More information

CMSC 330: Organization of Programming Languages

CMSC 330: Organization of Programming Languages CMSC 330: Orgniztion of Progrmming Lnguges Finite Automt 2 CMSC 330 1 Types of Finite Automt Deterministic Finite Automt (DFA) Exctly one sequence of steps for ech string All exmples so fr Nondeterministic

More information

CS311 Computational Structures Regular Languages and Regular Grammars. Lecture 6

CS311 Computational Structures Regular Languages and Regular Grammars. Lecture 6 CS311 Computtionl Strutures Regulr Lnguges nd Regulr Grmmrs Leture 6 1 Wht we know so fr: RLs re losed under produt, union nd * Every RL n e written s RE, nd every RE represents RL Every RL n e reognized

More information

Exam Review. John Knight Electronics Department, Carleton University March 2, 2009 ELEC 2607 A MIDTERM

Exam Review. John Knight Electronics Department, Carleton University March 2, 2009 ELEC 2607 A MIDTERM riting Exms: Exm Review riting Exms += riting Exms synhronous iruits Res, yles n Stte ssignment Synhronous iruits Stte-Grph onstrution n Smll Prolems lso Multiple Outputs, n Hrer omintionl Prolem riting

More information

Lecture 3. In this lecture, we will discuss algorithms for solving systems of linear equations.

Lecture 3. In this lecture, we will discuss algorithms for solving systems of linear equations. Lecture 3 3 Solving liner equtions In this lecture we will discuss lgorithms for solving systems of liner equtions Multiplictive identity Let us restrict ourselves to considering squre mtrices since one

More information

5. (±±) Λ = fw j w is string of even lengthg [ 00 = f11,00g 7. (11 [ 00)± Λ = fw j w egins with either 11 or 00g 8. (0 [ ffl)1 Λ = 01 Λ [ 1 Λ 9.

5. (±±) Λ = fw j w is string of even lengthg [ 00 = f11,00g 7. (11 [ 00)± Λ = fw j w egins with either 11 or 00g 8. (0 [ ffl)1 Λ = 01 Λ [ 1 Λ 9. Regulr Expressions, Pumping Lemm, Right Liner Grmmrs Ling 106 Mrch 25, 2002 1 Regulr Expressions A regulr expression descries or genertes lnguge: it is kind of shorthnd for listing the memers of lnguge.

More information

Outline Data Structures and Algorithms. Data compression. Data compression. Lossy vs. Lossless. Data Compression

Outline Data Structures and Algorithms. Data compression. Data compression. Lossy vs. Lossless. Data Compression 5-2 Dt Strutures n Algorithms Dt Compression n Huffmn s Algorithm th Fe 2003 Rjshekr Rey Outline Dt ompression Lossy n lossless Exmples Forml view Coes Definition Fixe length vs. vrile length Huffmn s

More information

Lecture 3: Equivalence Relations

Lecture 3: Equivalence Relations Mthcmp Crsh Course Instructor: Pdric Brtlett Lecture 3: Equivlence Reltions Week 1 Mthcmp 2014 In our lst three tlks of this clss, we shift the focus of our tlks from proof techniques to proof concepts

More information

How do we solve these things, especially when they get complicated? How do we know when a system has a solution, and when is it unique?

How do we solve these things, especially when they get complicated? How do we know when a system has a solution, and when is it unique? XII. LINEAR ALGEBRA: SOLVING SYSTEMS OF EQUATIONS Tody we re going to tlk bout solving systems of liner equtions. These re problems tht give couple of equtions with couple of unknowns, like: 6 2 3 7 4

More information

Propositional models. Historical models of computation. Application: binary addition. Boolean functions. Implementation using switches.

Propositional models. Historical models of computation. Application: binary addition. Boolean functions. Implementation using switches. Propositionl models Historil models of omputtion Steven Lindell Hverford College USA 1/22/2010 ISLA 2010 1 Strt with fixed numer of oolen vriles lled the voulry: e.g.,,. Eh oolen vrile represents proposition,

More information

Proportions: A ratio is the quotient of two numbers. For example, 2 3

Proportions: A ratio is the quotient of two numbers. For example, 2 3 Proportions: rtio is the quotient of two numers. For exmple, 2 3 is rtio of 2 n 3. n equlity of two rtios is proportion. For exmple, 3 7 = 15 is proportion. 45 If two sets of numers (none of whih is 0)

More information

2.4 Theoretical Foundations

2.4 Theoretical Foundations 2 Progrmming Lnguge Syntx 2.4 Theoretil Fountions As note in the min text, snners n prsers re se on the finite utomt n pushown utomt tht form the ottom two levels of the Chomsky lnguge hierrhy. At eh level

More information

1. Logic verification

1. Logic verification . Logi verifition Bsi priniples of OBDD s Vrile ordering Network of gtes => OBDD s FDD s nd OKFDD s Resoning out iruits Struturl methods Stisfiility heker Logi verifition The si prolem: prove tht two iruits

More information

CMPSCI 250: Introduction to Computation. Lecture #31: What DFA s Can and Can t Do David Mix Barrington 9 April 2014

CMPSCI 250: Introduction to Computation. Lecture #31: What DFA s Can and Can t Do David Mix Barrington 9 April 2014 CMPSCI 250: Introduction to Computtion Lecture #31: Wht DFA s Cn nd Cn t Do Dvid Mix Brrington 9 April 2014 Wht DFA s Cn nd Cn t Do Deterministic Finite Automt Forml Definition of DFA s Exmples of DFA

More information

Common intervals of genomes. Mathieu Raffinot CNRS LIAFA

Common intervals of genomes. Mathieu Raffinot CNRS LIAFA Common intervls of genomes Mthieu Rffinot CNRS LIF Context: omprtive genomis. set of genomes prtilly/totlly nnotte Informtive group of genes or omins? Ex: COG tse Mny iffiulties! iology Wht re two similr

More information

Numbers and indices. 1.1 Fractions. GCSE C Example 1. Handy hint. Key point

Numbers and indices. 1.1 Fractions. GCSE C Example 1. Handy hint. Key point GCSE C Emple 7 Work out 9 Give your nswer in its simplest form Numers n inies Reiprote mens invert or turn upsie own The reiprol of is 9 9 Mke sure you only invert the frtion you re iviing y 7 You multiply

More information

Lecture 3. XML Into RDBMS. XML and Databases. Memory Representations. Memory Representations. Traversals and Pre/Post-Encoding. Memory Representations

Lecture 3. XML Into RDBMS. XML and Databases. Memory Representations. Memory Representations. Traversals and Pre/Post-Encoding. Memory Representations Leture XML into RDBMS XML n Dtses Sestin Mneth NICTA n UNSW Leture XML Into RDBMS CSE@UNSW -- Semester, 00 Memory Representtions Memory Representtions Fts DOM is esy to use, ut memory hevy. in-memory size

More information

Designing Information Devices and Systems I Spring 2018 Homework 7

Designing Information Devices and Systems I Spring 2018 Homework 7 EECS 16A Designing Informtion Devices nd Systems I Spring 2018 omework 7 This homework is due Mrch 12, 2018, t 23:59. Self-grdes re due Mrch 15, 2018, t 23:59. Sumission Formt Your homework sumission should

More information

I 3 2 = I I 4 = 2A

I 3 2 = I I 4 = 2A ECE 210 Eletril Ciruit Anlysis University of llinois t Chigo 2.13 We re ske to use KCL to fin urrents 1 4. The key point in pplying KCL in this prolem is to strt with noe where only one of the urrents

More information

Data Structures LECTURE 10. Huffman coding. Example. Coding: problem definition

Data Structures LECTURE 10. Huffman coding. Example. Coding: problem definition Dt Strutures, Spring 24 L. Joskowiz Dt Strutures LEURE Humn oing Motivtion Uniquel eipherle oes Prei oes Humn oe onstrution Etensions n pplitions hpter 6.3 pp 385 392 in tetook Motivtion Suppose we wnt

More information

x dx does exist, what does the answer look like? What does the answer to

x dx does exist, what does the answer look like? What does the answer to Review Guie or MAT Finl Em Prt II. Mony Decemer th 8:.m. 9:5.m. (or the 8:3.m. clss) :.m. :5.m. (or the :3.m. clss) Prt is worth 5% o your Finl Em gre. NO CALCULATORS re llowe on this portion o the Finl

More information

Surds and Indices. Surds and Indices. Curriculum Ready ACMNA: 233,

Surds and Indices. Surds and Indices. Curriculum Ready ACMNA: 233, Surs n Inies Surs n Inies Curriulum Rey ACMNA:, 6 www.mthletis.om Surs SURDS & & Inies INDICES Inies n surs re very losely relte. A numer uner (squre root sign) is lle sur if the squre root n t e simplifie.

More information

Polynomials. Polynomials. Curriculum Ready ACMNA:

Polynomials. Polynomials. Curriculum Ready ACMNA: Polynomils Polynomils Curriulum Redy ACMNA: 66 www.mthletis.om Polynomils POLYNOMIALS A polynomil is mthemtil expression with one vrile whose powers re neither negtive nor frtions. The power in eh expression

More information

Designing Information Devices and Systems I Discussion 8B

Designing Information Devices and Systems I Discussion 8B Lst Updted: 2018-10-17 19:40 1 EECS 16A Fll 2018 Designing Informtion Devices nd Systems I Discussion 8B 1. Why Bother With Thévenin Anywy? () Find Thévenin eqiuvlent for the circuit shown elow. 2kΩ 5V

More information

CS 373, Spring Solutions to Mock midterm 1 (Based on first midterm in CS 273, Fall 2008.)

CS 373, Spring Solutions to Mock midterm 1 (Based on first midterm in CS 273, Fall 2008.) CS 373, Spring 29. Solutions to Mock midterm (sed on first midterm in CS 273, Fll 28.) Prolem : Short nswer (8 points) The nswers to these prolems should e short nd not complicted. () If n NF M ccepts

More information

Discrete Structures, Test 2 Monday, March 28, 2016 SOLUTIONS, VERSION α

Discrete Structures, Test 2 Monday, March 28, 2016 SOLUTIONS, VERSION α Disrete Strutures, Test 2 Mondy, Mrh 28, 2016 SOLUTIONS, VERSION α α 1. (18 pts) Short nswer. Put your nswer in the ox. No prtil redit. () Consider the reltion R on {,,, d with mtrix digrph of R.. Drw

More information

Bridging the gap: GCSE AS Level

Bridging the gap: GCSE AS Level Bridging the gp: GCSE AS Level CONTENTS Chpter Removing rckets pge Chpter Liner equtions Chpter Simultneous equtions 8 Chpter Fctors 0 Chpter Chnge the suject of the formul Chpter 6 Solving qudrtic equtions

More information

CS 310 (sec 20) - Winter Final Exam (solutions) SOLUTIONS

CS 310 (sec 20) - Winter Final Exam (solutions) SOLUTIONS CS 310 (sec 20) - Winter 2003 - Finl Exm (solutions) SOLUTIONS 1. (Logic) Use truth tles to prove the following logicl equivlences: () p q (p p) (q q) () p q (p q) (p q) () p q p q p p q q (q q) (p p)

More information

Basic Derivative Properties

Basic Derivative Properties Bsic Derivtive Properties Let s strt this section by remining ourselves tht the erivtive is the slope of function Wht is the slope of constnt function? c FACT 2 Let f () =c, where c is constnt Then f 0

More information

Implication Graphs and Logic Testing

Implication Graphs and Logic Testing Implition Grphs n Logi Testing Vishwni D. Agrwl Jmes J. Dnher Professor Dept. of ECE, Auurn University Auurn, AL 36849 vgrwl@eng.uurn.eu www.eng.uurn.eu/~vgrwl Joint reserh with: K. K. Dve, ATI Reserh,

More information

Tutorial Worksheet. 1. Find all solutions to the linear system by following the given steps. x + 2y + 3z = 2 2x + 3y + z = 4.

Tutorial Worksheet. 1. Find all solutions to the linear system by following the given steps. x + 2y + 3z = 2 2x + 3y + z = 4. Mth 5 Tutoril Week 1 - Jnury 1 1 Nme Setion Tutoril Worksheet 1. Find ll solutions to the liner system by following the given steps x + y + z = x + y + z = 4. y + z = Step 1. Write down the rgumented mtrix

More information

Linear Algebra Introduction

Linear Algebra Introduction Introdution Wht is Liner Alger out? Liner Alger is rnh of mthemtis whih emerged yers k nd ws one of the pioneer rnhes of mthemtis Though, initilly it strted with solving of the simple liner eqution x +

More information

Handout: Natural deduction for first order logic

Handout: Natural deduction for first order logic MATH 457 Introduction to Mthemticl Logic Spring 2016 Dr Json Rute Hndout: Nturl deduction for first order logic We will extend our nturl deduction rules for sententil logic to first order logic These notes

More information

Nondeterminism and Nodeterministic Automata

Nondeterminism and Nodeterministic Automata Nondeterminism nd Nodeterministic Automt 61 Nondeterminism nd Nondeterministic Automt The computtionl mchine models tht we lerned in the clss re deterministic in the sense tht the next move is uniquely

More information

3 Regular expressions

3 Regular expressions 3 Regulr expressions Given n lphet Σ lnguge is set of words L Σ. So fr we were le to descrie lnguges either y using set theory (i.e. enumertion or comprehension) or y n utomton. In this section we shll

More information

Lecture 2e Orthogonal Complement (pages )

Lecture 2e Orthogonal Complement (pages ) Lecture 2e Orthogonl Complement (pges -) We hve now seen tht n orthonorml sis is nice wy to descrie suspce, ut knowing tht we wnt n orthonorml sis doesn t mke one fll into our lp. In theory, the process

More information

Kleene s Theorem. Kleene s Theorem. Kleene s Theorem. Kleene s Theorem. Kleene s Theorem. Kleene s Theorem 2/16/15

Kleene s Theorem. Kleene s Theorem. Kleene s Theorem. Kleene s Theorem. Kleene s Theorem. Kleene s Theorem 2/16/15 Models of Comput:on Lecture #8 Chpter 7 con:nued Any lnguge tht e defined y regulr expression, finite utomton, or trnsi:on grph cn e defined y ll three methods We prove this y showing tht ny lnguge defined

More information

The graphs of Rational Functions

The graphs of Rational Functions Lecture 4 5A: The its of Rtionl Functions s x nd s x + The grphs of Rtionl Functions The grphs of rtionl functions hve severl differences compred to power functions. One of the differences is the behvior

More information

CSC2542 State-Space Planning

CSC2542 State-Space Planning CSC2542 Stte-Spe Plnning Sheil MIlrith Deprtment of Computer Siene University of Toronto Fll 2010 1 Aknowlegements Some the slies use in this ourse re moifitions of Dn Nu s leture slies for the textook

More information

Mathematics Number: Logarithms

Mathematics Number: Logarithms plce of mind F A C U L T Y O F E D U C A T I O N Deprtment of Curriculum nd Pedgogy Mthemtics Numer: Logrithms Science nd Mthemtics Eduction Reserch Group Supported y UBC Teching nd Lerning Enhncement

More information

CSCI 340: Computational Models. Kleene s Theorem. Department of Computer Science

CSCI 340: Computational Models. Kleene s Theorem. Department of Computer Science CSCI 340: Computtionl Models Kleene s Theorem Chpter 7 Deprtment of Computer Science Unifiction In 1954, Kleene presented (nd proved) theorem which (in our version) sttes tht if lnguge cn e defined y ny

More information

Coalgebra, Lecture 15: Equations for Deterministic Automata

Coalgebra, Lecture 15: Equations for Deterministic Automata Colger, Lecture 15: Equtions for Deterministic Automt Julin Slmnc (nd Jurrin Rot) Decemer 19, 2016 In this lecture, we will study the concept of equtions for deterministic utomt. The notes re self contined

More information

Unit #9 : Definite Integral Properties; Fundamental Theorem of Calculus

Unit #9 : Definite Integral Properties; Fundamental Theorem of Calculus Unit #9 : Definite Integrl Properties; Fundmentl Theorem of Clculus Gols: Identify properties of definite integrls Define odd nd even functions, nd reltionship to integrl vlues Introduce the Fundmentl

More information

Let s divide up the interval [ ab, ] into n subintervals with the same length, so we have

Let s divide up the interval [ ab, ] into n subintervals with the same length, so we have III. INTEGRATION Eonomists seem muh more intereste in mrginl effets n ifferentition thn in integrtion. Integrtion is importnt for fining the epete vlue n vrine of rnom vriles, whih is use in eonometris

More information

1 Nondeterministic Finite Automata

1 Nondeterministic Finite Automata 1 Nondeterministic Finite Automt Suppose in life, whenever you hd choice, you could try oth possiilities nd live your life. At the end, you would go ck nd choose the one tht worked out the est. Then you

More information

GRUPOS NANTEL BERGERON

GRUPOS NANTEL BERGERON Drft of Septemer 8, 2017 GRUPOS NANTEL BERGERON Astrt. 1. Quik Introution In this mini ourse we will see how to ount severl ttriute relte to symmetries of n ojet. For exmple, how mny ifferent ies with

More information

Project 3: Using Identities to Rewrite Expressions

Project 3: Using Identities to Rewrite Expressions MAT 5 Projet 3: Usig Idetities to Rewrite Expressios Wldis I lger, equtios tht desrie properties or ptters re ofte lled idetities. Idetities desrie expressio e repled with equl or equivlet expressio tht

More information

Surface maps into free groups

Surface maps into free groups Surfce mps into free groups lden Wlker Novemer 10, 2014 Free groups wedge X of two circles: Set F = π 1 (X ) =,. We write cpitl letters for inverse, so = 1. e.g. () 1 = Commuttors Let x nd y e loops. The

More information

If we have a function f(x) which is well-defined for some a x b, its integral over those two values is defined as

If we have a function f(x) which is well-defined for some a x b, its integral over those two values is defined as Y. D. Chong (26) MH28: Complex Methos for the Sciences 2. Integrls If we hve function f(x) which is well-efine for some x, its integrl over those two vlues is efine s N ( ) f(x) = lim x f(x n ) where x

More information

Lecture 2 : Propositions DRAFT

Lecture 2 : Propositions DRAFT CS/Mth 240: Introduction to Discrete Mthemtics 1/20/2010 Lecture 2 : Propositions Instructor: Dieter vn Melkeeek Scrie: Dlior Zelený DRAFT Lst time we nlyzed vrious mze solving lgorithms in order to illustrte

More information

The Regulated and Riemann Integrals

The Regulated and Riemann Integrals Chpter 1 The Regulted nd Riemnn Integrls 1.1 Introduction We will consider severl different pproches to defining the definite integrl f(x) dx of function f(x). These definitions will ll ssign the sme vlue

More information

Lecture 1. Functional series. Pointwise and uniform convergence.

Lecture 1. Functional series. Pointwise and uniform convergence. 1 Introduction. Lecture 1. Functionl series. Pointwise nd uniform convergence. In this course we study mongst other things Fourier series. The Fourier series for periodic function f(x) with period 2π is

More information

Interpreting Integrals and the Fundamental Theorem

Interpreting Integrals and the Fundamental Theorem Interpreting Integrls nd the Fundmentl Theorem Tody, we go further in interpreting the mening of the definite integrl. Using Units to Aid Interprettion We lredy know tht if f(t) is the rte of chnge of

More information

First Midterm Examination

First Midterm Examination 24-25 Fll Semester First Midterm Exmintion ) Give the stte digrm of DFA tht recognizes the lnguge A over lphet Σ = {, } where A = {w w contins or } 2) The following DFA recognizes the lnguge B over lphet

More information

AP Calculus BC Chapter 8: Integration Techniques, L Hopital s Rule and Improper Integrals

AP Calculus BC Chapter 8: Integration Techniques, L Hopital s Rule and Improper Integrals AP Clulus BC Chpter 8: Integrtion Tehniques, L Hopitl s Rule nd Improper Integrls 8. Bsi Integrtion Rules In this setion we will review vrious integrtion strtegies. Strtegies: I. Seprte the integrnd into

More information

Quadratic Forms. Quadratic Forms

Quadratic Forms. Quadratic Forms Qudrtic Forms Recll the Simon & Blume excerpt from n erlier lecture which sid tht the min tsk of clculus is to pproximte nonliner functions with liner functions. It s ctully more ccurte to sy tht we pproximte

More information

NON-DETERMINISTIC FSA

NON-DETERMINISTIC FSA Tw o types of non-determinism: NON-DETERMINISTIC FS () Multiple strt-sttes; strt-sttes S Q. The lnguge L(M) ={x:x tkes M from some strt-stte to some finl-stte nd ll of x is proessed}. The string x = is

More information

Global alignment. Genome Rearrangements Finding preserved genes. Lecture 18

Global alignment. Genome Rearrangements Finding preserved genes. Lecture 18 Computt onl Biology Leture 18 Genome Rerrngements Finding preserved genes We hve seen before how to rerrnge genome to obtin nother one bsed on: Reversls Knowledge of preserved bloks (or genes) Now we re

More information

Algorithms & Data Structures Homework 8 HS 18 Exercise Class (Room & TA): Submitted by: Peer Feedback by: Points:

Algorithms & Data Structures Homework 8 HS 18 Exercise Class (Room & TA): Submitted by: Peer Feedback by: Points: Eidgenössishe Tehnishe Hohshule Zürih Eole polytehnique fédérle de Zurih Politenio federle di Zurigo Federl Institute of Tehnology t Zurih Deprtement of Computer Siene. Novemer 0 Mrkus Püshel, Dvid Steurer

More information

2.4 Linear Inequalities and Interval Notation

2.4 Linear Inequalities and Interval Notation .4 Liner Inequlities nd Intervl Nottion We wnt to solve equtions tht hve n inequlity symol insted of n equl sign. There re four inequlity symols tht we will look t: Less thn , Less thn or

More information