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

Similar documents
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.

Lecture 11 Binary Decision Diagrams (BDDs)

Factorising FACTORISING.

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

6.5 Improper integrals

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

CS 491G Combinatorial Optimization Lecture Notes

Lecture 6: Coding theory

y1 y2 DEMUX a b x1 x2 x3 x4 NETWORK s1 s2 z1 z2

Minimal DFA. minimal DFA for L starting from any other

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

Implication Graphs and Logic Testing

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

Project 6: Minigoals Towards Simplifying and Rewriting Expressions

Necessary and sucient conditions for some two. Abstract. Further we show that the necessary conditions for the existence of an OD(44 s 1 s 2 )

CS 573 Automata Theory and Formal Languages

(Lec 4) Binary Decision Diagrams: Manipulation

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

Logic Synthesis and Verification

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

Chapter 4 State-Space Planning

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

Particle Physics. Michaelmas Term 2011 Prof Mark Thomson. Handout 3 : Interaction by Particle Exchange and QED. Recap

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?

Unit 4. Combinational Circuits

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

Math 32B Discussion Session Week 8 Notes February 28 and March 2, f(b) f(a) = f (t)dt (1)

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

Engr354: Digital Logic Circuits

5.3 The Fundamental Theorem of Calculus

Instructions. An 8.5 x 11 Cheat Sheet may also be used as an aid for this test. MUST be original handwriting.

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

CS241 Week 6 Tutorial Solutions

Lecture 2e Orthogonal Complement (pages )

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

Homework Solution - Set 5 Due: Friday 10/03/08

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

CS 2204 DIGITAL LOGIC & STATE MACHINE DESIGN SPRING 2014

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

NON-DETERMINISTIC FSA

The Evaluation Theorem

2.4 Linear Inequalities and Interval Notation

Project 3: Using Identities to Rewrite Expressions

D. Harel, Statecharts: A visual formalism for complex systems, Science of Computer Programming 8, 1987, pp

Lecture 2: Cayley Graphs

CIT 596 Theory of Computation 1. Graphs and Digraphs

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

Solutions for HW9. Bipartite: put the red vertices in V 1 and the black in V 2. Not bipartite!

CS311 Computational Structures Regular Languages and Regular Grammars. Lecture 6

Designing Information Devices and Systems I Discussion 8B

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

Fault Modeling. EE5375 ADD II Prof. MacDonald

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?

CS 360 Exam 2 Fall 2014 Name

Trigonometry and Constructive Geometry

PYTHAGORAS THEOREM WHAT S IN CHAPTER 1? IN THIS CHAPTER YOU WILL:

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

Green s Theorem. (2x e y ) da. (2x e y ) dx dy. x 2 xe y. (1 e y ) dy. y=1. = y e y. y=0. = 2 e

set is not closed under matrix [ multiplication, ] and does not form a group.

Solutions - Homework 1 (Due date: September 9:30 am) Presentation and clarity are very important!

Section 2.1 Special Right Triangles

Review of Gaussian Quadrature method

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

1 nonlinear.mcd Find solution root to nonlinear algebraic equation f(x)=0. Instructor: Nam Sun Wang

03. Early Greeks & Aristotle

INTEGRATION. 1 Integrals of Complex Valued functions of a REAL variable

Chapter 8 Roots and Radicals

Lecture 3: Equivalence Relations

Technische Universität München Winter term 2009/10 I7 Prof. J. Esparza / J. Křetínský / M. Luttenberger 11. Februar Solution

and that at t = 0 the object is at position 5. Find the position of the object at t = 2.

378 Relations Solutions for Chapter 16. Section 16.1 Exercises. 3. Let A = {0,1,2,3,4,5}. Write out the relation R that expresses on A.

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

Nondeterministic Automata vs Deterministic Automata

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.

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

Bases for Vector Spaces

Lecture 1: Introduction to integration theory and bounded variation

Part I: Study the theorem statement.

Spacetime and the Quantum World Questions Fall 2010

State Minimization for DFAs

Arrow s Impossibility Theorem

SIMPLE NONLINEAR GRAPHS

for all x in [a,b], then the area of the region bounded by the graphs of f and g and the vertical lines x = a and x = b is b [ ( ) ( )] A= f x g x dx

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

Section 1.3 Triangles

CS103B Handout 18 Winter 2007 February 28, 2007 Finite Automata

The DOACROSS statement

Designing finite automata II

where the box contains a finite number of gates from the given collection. Examples of gates that are commonly used are the following: a b

( x) ( ) takes at the right end of each interval to approximate its value on that

12.4 Similarity in Right Triangles

Mathematics Number: Logarithms

I 3 2 = I I 4 = 2A

Chapters Five Notes SN AA U1C5

Lecture 7 notes Nodal Analysis

Introduction to Olympiad Inequalities

Math Lecture 23

Simplifying Algebra. Simplifying Algebra. Curriculum Ready.

Riemann Sums and Riemann Integrals

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

Transcription:

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 t know Don t res in multi-level network re very ierent They rise nturlly s prt o the struture o the network moel They n help gret el in simpliying the network They n e very hr to get, lgorithmilly R. Rutenr 2001, CMU 18-760, Fll 2001 1 Copyright Notie Ro A. Rutenr 2001 All rights reserve. ou my not mke opies o this mteril in ny orm without my express permission. R. Rutenr 2001, CMU 18-760, Fll 2001 2

Pge 2 Where Are We? In logi synthesis--how on t res re now very ierent ests M T W Th F Aug 27 28 29 30 31 1 Sep 3 4 5 6 7 2 10 11 12 13 14 3 17 18 19 20 21 4 24 25 26 27 28 5 Ot 1 2 3 4 5 6 8 9 10 11 12 7 15 16 17 18 19 8 22 23 24 25 26 9 29 30 31 1 2 10 Nov 5 6 7 8 9 11 12 13 14 15 16 12 Thnxgive 19 20 21 22 23 13 26 27 28 29 30 14 De 3 4 5 6 7 15 10 11 12 13 14 16 Introution Avne Boolen lger JAVA Review Forml veriition 2-Level logi synthesis Multi-level logi synthesis Tehnology mpping Plement Routing Stti timing nlysis Eletril timing nlysis Geometri t struts & pps R. Rutenr 2001, CMU 18-760, Fll 2001 3 Reings/Delines/Projets De Miheli Setion 8.4 is out on t res in multilevel moel Delines Toy, Thu Ot 11: Pper 1 Review, Ruell s Dynmi Orering ue Thursy Ot 18: HW3 (2-level, multi-level synthesis) ue Projet #2 As lwys, hek wepge or ugixes, uptes There re some ugs in eqns or Pro #1, ixe shortly The stte igrms re orret s is. We ll o the overview next Tuesy R. Rutenr 2001, CMU 18-760, Fll 2001 4

Pge 3 Don t Cres: 2-level In si igitl esign... We tol you these were just input ptterns tht oul never hppen This llowe you to o more simpliitions, sine you oul 1 or 0 to the Kmp or tht input epening on wht ws esier to simpliy Stnr exmple: BCD inrementer iruit 3 2 1 0 BCD Inrement rry 3 2 1 0 32 10 00 01 11 10 00 1 01 11 10 1 Ptterns 3 2 1 0 = 1010, 1011, 1100, 1101, 1110, 1111 nnot hppen R. Rutenr 2001, CMU 18-760, Fll 2001 5 Don t Cres: Multi-level To sy this ierently In si 2-level esigns someoy tol you wht inputs wouln t hppen......n you just elieve them! Wht s ierent in multi-level? There n still e these sorts o on t res t the primry inputs o the Boolen logi network......ut there n lso e on t res rising rom struture o the network These ltter kin re very useul or simpliying the iniviul verties in the Boolen logi network (ie you ll ESPRESSO whih n hnle 2- level on t res) But, you hve to go in these on t res expliitly R. Rutenr 2001, CMU 18-760, Fll 2001 6

Pge 4 Inorml Tour o DCs in Multilevel Networks Suppose we hve Boolen network... An we re looking t noe in tht network Cn we sy nything out on t res or noe? NO We on t know ny ontext or surrouning prts o network As r s we n tell, ll ptterns o inputs (,,) re possile = + + 00 01 11 10 0 1 R. Rutenr 2001, CMU 18-760, Fll 2001 7 Inorml Multilevel DC Tour OK, suppose we know this out input to Noe is tully Now n we sy something out DCs or noe...? ES PIs = = + + POs R. Rutenr 2001, CMU 18-760, Fll 2001 8

Pge 5 Inorml Multilevel DC Tour Go list ll the input/output ptterns or noe n it our? PIs 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 = = + + POs R. Rutenr 2001, CMU 18-760, Fll 2001 9 Inorml Multilevel DC Tour Impossile ptterns => impossile ptterns? n it our? n it our? PIs 0 0 1 NO 0 1 0 0 1 1 NO 1 0 0 1 0 1 NO 1 1 0 NO 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 = = + + POs R. Rutenr 2001, CMU 18-760, Fll 2001 10

Pge 6 Inorml Multilevel DC Tour Impossile ptterns give us DCs or noe Chnge how we woul wnt to simpliy noe (it s Kmp) Impossile ptterns = 00 01 11 10 0 1 1 PIs Conlusion = = + + POs R. Rutenr 2001, CMU 18-760, Fll 2001 11 Inorml Multilevel DC Tour OK, wht i we now know = + s well Cn o this gin t...re there impossile ptterns o? = n it our? PIs = = = + 0 0 1 NO 0 1 0 NO 0 1 1 1 0 0 NO 1 0 1 1 1 0 NO = + + POs R. Rutenr 2001, CMU 18-760, Fll 2001 12

Pge 7 Inorml Multilevel DC Tour OK, n we (gin) get impossile ptterns on? n it our? n it our? n it our? PIs 0 0 1 NO 0 1 0 0 1 1 NO 1 0 0 1 0 1 NO 1 1 0 NO 0 0 1 NO 0 1 0 NO 0 1 1 1 0 0 NO 1 0 1 1 1 0 NO 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 = + = = + + R. Rutenr 2001, CMU 18-760, Fll 2001 13 Inorml Multilevel DC Tour OK, o these hnge how we simpliy insie? PIs 0 0 1 0 1 0 NO 0 1 1 1 0 0 NO 1 0 1 NO 1 1 0 NO n it our? 00 01 11 10 0 1 1 1 Conlusion 1 1 = + = = + + R. Rutenr 2001, CMU 18-760, Fll 2001 14

Inorml Multilevel DC Tour OK, now suppose is not primry output, Z is... Question: when oes hnge in the output o noe tully propgte through to hnge the primry output Z, ie, the output o the overll Boolen logi network Or, reverse question: when oes it not mtter wht is...? Let s go look t ptterns o t noe Z... PIs = + = = + + Z = PO Z R. Rutenr 2001, CMU 18-760, Fll 2001 15 Inorml Multilevel DC Tour PIs 1 0 0 0 0 1 1 0 1 0 1 0 1 1 0 0 1 1 Z oes it hnge? Ptterns t input to noe itsel tht re DCs just euse those ptterns mke Z output insensitive to hnges in = = + = = + + Z = PO Z R. Rutenr 2001, CMU 18-760, Fll 2001 16 Pge 8

Pge 9 Inorml Multilevel DC Tour OK, n we use this =0 DC pttern to simpliy more? Ptterns t input to noe itsel tht re DCs just euse those ptterns mke Z output insensitive to hnges in => 00 01 11 10 0 Conlusion PIs = + = = + + Z = PO Z R. Rutenr 2001, CMU 18-760, Fll 2001 17 Inorml Multilevel DC Tour Hey, look wht hppene to noe... Due to ontext o surrouning noes, it isppere! PIs = Z = = = + PO Z = Z = PO Z = + gone! R. Rutenr 2001, CMU 18-760, Fll 2001 18

Pge 10 Inorml Multilevel DC Tour OK, suppose inste tht PO Z = + + (OR not AND) Wht hnges? Answer: no ptterns t inputs tht mke Z insensitive to hnges in There re still impossile ptterns o ( ) ut you nnot speiy ny o them extly only knowing the ( ) inputs to oesn t isspper, it still simpliies to = + Network ontext mtters lot here! PIs = + = = + + Z = + + PO Z R. Rutenr 2001, CMU 18-760, Fll 2001 19 Forml View o These DCs Overll, there re 3 types o orml DCs... Stisiility on t res Ptterns tht n t our t the inputs to vertex...... euse o internl struture o multi-level logi Controllility on t res Glol, externl: ptterns tht n t hppen t primry inputs to our overll Boolen logi network Lol, internl: ptterns tht n t hppen t inputs to vertex Oservility on t res Ptterns t input o vertex tht prevent tht outputs o the network rom eing sensitive to hnges in output o tht vertex Pttern tht msk outputs Let s see i we n lriy where these eh ome rom... R. Rutenr 2001, CMU 18-760, Fll 2001 20

Pge 11 Don t Cre Types: Stisiility Stisiility Don t Cres Hppen euse o struture o Boolen Logi Network We on t tret the network s one ig logi igrm, ut rther, s set o seprte, onnete logi loks (verties) SDCs speiy the onstrints on these internl onnetions Exmple Strt with just one vertex in network = + + + R. Rutenr 2001, CMU 18-760, Fll 2001 21 SDCs Now, ssume we extrt some suexpressions Extrt =+, = This hnges struture o network There re now new noes, eeing noe tht retes = + = + + = R. Rutenr 2001, CMU 18-760, Fll 2001 22

Pge 12 SDCs Notie In the restruture network, hs ierent inputs, n so possily now ierent est simpliition Wht out on t res? = + = =+ + 0 1 1 1 0 1 0 1 0 1 0 0 never see = 001, 010, 100 110 never see = 001, 011, 101 110 R. Rutenr 2001, CMU 18-760, Fll 2001 23 SDCs These ptterns re the stisiility DCs Esiest to think o them s seprte set o impossile ptterns elonging to eh internl wire in Boolen Logi Network They re purely struturl in origin: outputs n t tke vlues tht re not equl to (ie, on t stisy) wht the tthe vertex retes Cnnot hve!= + = + 0 1 1 1 0 1 Cnnot hve!= = 0 1 0 1 0 0 never see = 001, 010, 100 110 never see = 001, 011, 101 110 R. Rutenr 2001, CMU 18-760, Fll 2001 24

Pge 13 Asie: How Will We Atully Represent DCs? Some onusing nottion n terminology ou re proly use to seeing on t res just liste in the truth tle But, the wy we will usully represent these is either: As set o ptterns o 0s 1s on noe s inputs tht nnot hppen As untion o these inputs tht mkes 1 just or those ptterns tht nnot hppen; DC G == 1 just or impossile ptterns or G p q r G -------------- 1 0 0 1 0 1 0 0 0 1 0 0 1 0 1 1 1 0 0 DC ptterns = {001, 100, 101, 111} p q r DC G --------------- 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 0 1 R. Rutenr 2001, CMU 18-760, Fll 2001 25 Asie: Representing Don t Cres Representtion Will even requently see the DC untion tully written in terms o n SOP over, Boolen expression G ---------- 1 0 0 1 0 1 0 0 0 1 0 0 1 0 1 1 1 0 0 DC set = {001, 100, 101, 111} DC G --------------- 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 0 1 DC G = + + + R. Rutenr 2001, CMU 18-760, Fll 2001 26

Pge 14 Bk to SDCs SDC untion or wire is just over o illegl ptterns = + possile = possile SDC 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 1 0 impossile 0 1 1 1 0 1 SDC 0 0 0 1 1 0 1 0 0 0 1 1 0 1 1 1 1 0 1 0 impossile 0 1 0 1 0 0 SDC = + + + SDC = + + + R. Rutenr 2001, CMU 18-760, Fll 2001 27 SDCs: How Do We Atully Use Them? Wht impt on simpliition o...? Look t SDCs or eh input wire x n y SDC = + + + => impossile ptterns o SDC = + + + => impossile ptterns o?? = + + => ut I wnt to know impossile ptterns! Oops! Prolem SDCs in terms o n But, is now only untion o n How to resolve? R. Rutenr 2001, CMU 18-760, Fll 2001 28

Pge 15 SDCs Nee to quntiy out the in SDCs, ut how? Just try eh wy n see wht hppens, or insight Rell: given (x,y,z,w) ( x )(y,z,w) = x + x (existentil quntiition) In English ( x )(y,z,w) = x x (universl quntiition) Existentil quntiition: removes vr x, resulting untion is true or (y,z,w) whenever there is some pttern, either (x=1,y,z,w) OR (x=0,y,z,w) tht me originl == 1 Universl quntiition: removes vr x, resulting untion is true or (y,z,w) whenever oth ptterns (x=1,y,z,w) AND (x=0,y,z,w) me originl untion ==1 R. Rutenr 2001, CMU 18-760, Fll 2001 29 SDCs Try quntiying wrt, oth wys... = + SDC = + + + = + = = + +,, = SDC = + + + ( SDC ) = ( SDC ) = ( SDC )(,) = ( SDC ) + ( SDC ) = ( SDC ) = ( SDC ) = ( SDC )(,) = ( SDC ) + ( SDC ) = ( SDC )(,) = ( SDC ) ( SDC ) = ( SDC )(,) = ( SDC ) ( SDC ) = R. Rutenr 2001, CMU 18-760, Fll 2001 30

SDCs Whih is right? = + = = + +,, = + = never see = 001, 010, 100 110 never see = 001, 011, 101 110 ( SDC )(,) = + ( SDC )(,) = + ( SDC )(,) = ( SDC )(,) = R. Rutenr 2001, CMU 18-760, Fll 2001 31 SDCs Asie: why universl quntiition oes the trik Beuse you wnt to know whih ptterns, inepenent o the vlue o the vr(s) you get ri o, re still impossile The inepenent o vlue o vr prt is the key, it s wht universl quntiition oes ( SDC )(,) = + oesn t work... =0 =0 x = + x=0 LEGAL =0 =1 x = + x=0 IMPOSSIBLE ( SDC )(,) = is right =1 =0 x = + x=0 IMPOSSIBLE =1 =1 x = + x=0 IMPOSSIBLE R. Rutenr 2001, CMU 18-760, Fll 2001 32 Pge 16

Pge 17 SDCs So, how o you tully ompute SDCs? Esy, o it or eh output wire rom eh Boolen noe inputs expression or ou wnt n expression tht s ==1 when!= (expression or ) But this is just [ (expression or ) ] Rememer (expression or ) oesn t hve in it!! Try it on something simple to onvine yoursel lim SDC = ( + ) = + R. Rutenr 2001, CMU 18-760, Fll 2001 33 SDCs Simpliy... SDC = ( + ) = SDC 0000 0 0001 1 0010 1 0011 0 0100 0 0101 1 0110 1 0111 0 1000 0 1001 1 1010 1 1011 0 1100 1 1101 0 1110 1 1111 0 R. Rutenr 2001, CMU 18-760, Fll 2001 34

Pge 18 SDCs How to el with SDCs on mny wires into vertex? In other wors, how o I tully use SDC SDC to simpliy? Answer: just OR the SDCs or eh input wire to vertex, then quntiy wy vrs tht re not inputs to = + = =+ D + vrs re,,,, SDC = ( vrs not input to )( Σ SDCi ) inputs i =ptterns tht nnot our on inputs R. Rutenr 2001, CMU 18-760, Fll 2001 35 SDCs Try it n see Note we n ignore SDCs on,, inputs to sine they re primry inputs (ie, (expression or ) = = 0, et. = + = =+ D + SDC = ( )( [ (+)] + [ ] ) = ( [ (+)] + [ ] ) =1 ( [ (+)] + [ ] ) =0 R. Rutenr 2001, CMU 18-760, Fll 2001 36

SDCs Twist: ut wht i there re tully DCs or network inputs, impossile externl ptterns or? Exmple: suppose =1 =1 =1 n never hppen How to hnle or omputing SDCs or? Answer: just OR in over or these DCs in SDC expression DC =1 =1 =1 = + = =+ SDC = ( )( [ (+)] + [ ] + ) = =[ stu we got eore without these externl DCs ] + ( x + x ) R. Rutenr 2001, CMU 18-760, Fll 2001 37 SDCs Notie this works... Just look t the new terms we e to SDC: ( + + ) Pik s exmple ==> =0 =1 =1 =1 is impossile =1 =0 DC =1 =1 =1 = + = =+ D + =1 =1 Corret! This n only hppen or input = 0111 whih is impossile R. Rutenr 2001, CMU 18-760, Fll 2001 38 Pge 19

Pge 20 Controllility Don t Cres Deines those input ptterns tht nnot hppen or speii verties, or or entire network But, we ve lrey seen these! Externl glol CDCs: ome rom outsie or entire network, like =1 =1 =1 is impossile, in our exmple Internl lol CDCs: just ptterns tht nnot pper t ny vertex = ( vrs not inputs )( Σ (lol SDCs) + ext. glol CDC) SDCs versus CDCs...? vertex inputs SDCs: think o s elonging to eh internl wire in network CDCs: think o s elonging to eh internl vertex in network R. Rutenr 2001, CMU 18-760, Fll 2001 39 Oservility Don t Cres ODCs elong to eh output o vertex in network Ptterns tht will mke this output not oservle t network output Not oservle mens hnge 0<->1 on this vertex output oesn t not hnge AN network output, or this pttern New exmple Note--new exmple now... x y T = xy + x y T F = xy +Tz + T y F z Ptterns tht mke F insensitive to T... Look t ODC T or output wire o vertex T R. Rutenr 2001, CMU 18-760, Fll 2001 40

Pge 21 ODCs In English... ODC or T re ptterns o inputs to the vertex or T (ptterns o x,y) suh tht we n ompute F without ring out wht T is Sine F= xy + Tz + T y, oserve I x=1 y=1 then F = 1 + Tz + T y =1 = inepenent o T Note there re ptterns o other vrs tht o this too: I z=1 y=1 then F = xy +T 0 + T 0 = xy = inepenent o T I z=0 y=0 then F = xy + T 1 + T 1 = xy + T + T = 1 = inep. o T So, our guess is tht ODC T =xy This is the only pttern tht epens just on vrs input to T For this pttern, network output insensitive to hnges in T How to ompute, mehnilly? R. Rutenr 2001, CMU 18-760, Fll 2001 41 ODCs When is network output F insensitive to internl vr? = stu F epens on network output F Be preise Insensitive mens hnges => ut F never hnges More preisely: i we speiy F s untion o, then F = F So, wht ptterns o the other inputs to F use F(... =0...)=F(...=1...)? When these ptterns re pplie, hnging oes not ever mtter to output t F But we ve lrey seen something lose to this... R. Rutenr 2001, CMU 18-760, Fll 2001 42

Pge 22 ODCs Boolen ierene, F/ Deine s F/ = F F Rell we oserve tht ptterns tht mke F/ = 1 orrespon to ptterns where hnge in uses some hnge in F x y Stte ierently F/ x = y F/ x = y Boolen ierene F/ is untion tht is 1 or those ptterns tht mke oservle x y = stu F epens on network output F R. Rutenr 2001, CMU 18-760, Fll 2001 43 ODCs But we wnt ptterns tht mke vertex output unoservle, sine we wnt on t re ptterns So, i F/ is ptterns tht mke oservle...then ( F/ ) is ptterns tht mke unoservle Bk to our exmple: wnt to look t ( F/ T) here x y T F = xy +Tz + T y F z F / T = F T F T = R. Rutenr 2001, CMU 18-760, Fll 2001 44

Pge 23 ODCs So ODC T = xy + xz + y z + x yz But, sme prolem: n t use this to simpliy vertex or T sine T is only untion o x n y Wht to o? Sme s eore: universl quntiition over vrs not input to T In this se, wnt ( z)(xy + xz + y z +x yz) = xy whih is orret ODC T = xy => x=1 y=1 is on t re sine it mkes T unoservle t network output F x y T = xy + x y T F = xy +Tz + T y F z R. Rutenr 2001, CMU 18-760, Fll 2001 45 ODCs More generl: wht i mny network outputs? Only ptterns tht re unoservle t ALL outputs n e ODCs F1 F2 F1 F2 F3 F3 ODC = ( vrs not input to )[ Π Fi / ] outputs Fi AND ll erivtives together, or eh output = ptterns tht mke x unoservle t ALL outputs R. Rutenr 2001, CMU 18-760, Fll 2001 46

Pge 24 Don t Cres, In Generl Why is getting these things so very hr? Beuse rel networks re ig, n the vertex you wnt to simpliy my e very r rom the primry inputs, n primry outputs Inputs to your vertex re untion o lot o stu Network outputs re untions o your vertex n lots o other stu Representing ll this stu n e explosively lrge, even with BDDs R. Rutenr 2001, CMU 18-760, Fll 2001 47 Getting Network DCs How o people o it In generl, they on t Usully suie with getting the lol SDCs, whih just requires looking t outputs o nteeent verties n omputing the SDC ptterns, whih is esy (no ig serh) There re lso inrementl, vertex-y-vertex lgorithms tht wlk the network to ompute ull CDC set or, n ull ODC set or, ut these n e very expensive in spe Also, some triks lle FILTERS ou wnt to in ptterns you n use s on t res to simpliy vertex Inste o ining ll suh DC ptterns, n restrit serh to voi ptterns tht nnot possily e useul to simpliy Suh lgorithms lle ilters -- they get ri o DCs you on t nee See De Mihelli or etils out ll this stu For us, knowing the strightorwr rute ore ormul is OK R. Rutenr 2001, CMU 18-760, Fll 2001 48

Exmple Now know enough to o this Simpliy noe insie this network Assume pttern =0 =0 never ours t network input = + = + Z Q = Q Z = How? Compute SDC or, inluing externl glol DC= Compute ODC or y oing ( Q/ ) ou get to use nyple SDC +ODC ==1 s on t re or R. Rutenr 2001, CMU 18-760, Fll 2001 49 Summry New kins o on t res in multi-level networks Byprouts o the network moel It s not ll one ig untion, it s unh o little untions (verties) onnete y wires Stisiility DCs: struturl in origin, n t hve output o vertex not equl to the expression or tht vertex Output DCs: some ptterns mke vertex output unoservle t network outputs SDC + ODC: or ny given vertex, n use this expression s ples or on t res to simpliy the vertex untion In prtie Very hr to get these, esp ODCs (see the ook) Usully just use the lol SDC rom nteeent verties Also, there re lgorithms ( ilters ) tht n just go in useul on t res or simpliition R. Rutenr 2001, CMU 18-760, Fll 2001 50 Pge 25