Olivier Coudert Jean Christophe Madre Henri Fraisse. Bull Corporate Research Center. Rue Jean Jaures Les Clayes-sous-bois, FRANCE

Size: px
Start display at page:

Download "Olivier Coudert Jean Christophe Madre Henri Fraisse. Bull Corporate Research Center. Rue Jean Jaures Les Clayes-sous-bois, FRANCE"

Transcription

1 A New Viewpoint on Two-Level Logic Minimization Olivier Coudert Jean Christophe Madre Henri Fraisse Bull Corporate Research Center Rue Jean Jaures Les Clayes-sous-bois, FRANCE Abstract This paper presents a new 2-level logic minimization procedure. It consists of computing in an implicit way the cyclic core of the Boolean function f to be minimized. This computation is done through original transformations of sets covering problems that take full advantage of the metaproduct based implicit set of products manipulations. The computational cost of this new procedure is independent of the number of minterms of the function f and of its number of prime implicants, which allows us to treat functions for which these numbers are so large that it has never been possible to perform a 2- level minimization. This method is, as far as we know, the rst one that is able to produce the cyclic cores of all the functions of the MCNC benchmark. 1 Introduction The metaproduct based implicit set of products manipulation techniques introduced in [4] have made possible to compute in an implicit way the sets of prime implicants of Boolean functions for which these sets are much too large to be explicitly built [5]. Eorts have since been devoted to apply these techniques to the fundamental 2-level logic minimization problem. An ecient metaproduct based irredundant prime cover computation procedure has been presented in [7]. It treats all the MCNC benchmark and produces covers that are, except for 22 problems, less than 15% larger than the minimal solution. Eorts made to solve the exact 2-level logic minimization problem have consisted of replacing, in the Quine- McCluskey minimization procedure [10], the iterative explicit cyclic core computation procedure with a procedure that performs the same task on an implicit covering matrix dened by the binary decision diagrams (BDDs) [3] of the minterms to be covered and the metaproduct of the set of products that can be used to cover them. An implicit cyclic core computation procedure has been developed by Swamy, McGeer, and Brayton [15]. The idea here is to build, at each step of the cyclic core computation, the BDDs of the dominance relations, and then to extract from these BDDs a reduced covering matrix. Though this procedure is able to treat 2 of the 20 hard ESPRESSO problems [16], it fails for the remainder because the quantied Boolean formulas describing the dominance relations and the reduced covering matrix are too complex to be evaluated eciently using standard Boolean manipulations [15, page 26]. We have shown in [6] that the use of quantier free recursive equations for the building of dominance relations allows the implicit cyclic core computation to be feasible for 14 out of the 20 hard ESPRESSO problems. The procedure fails for the remaining problems because it is either not possible to build the BDDs of the dominance relations or to extract the new covering matrix from these relations. This paper presents a new implicit cyclic core computation procedure that overcomes the limitations of the procedures referenced above because it does not require the building of the BDDs of the dominance relations. This procedure, which is able to treat all of the 20 hard ESPRESSO problems, as well as all the other 125 problems from the MCNC benchmark [16], is also about 10 times more ecient than the procedure presented in [6]. The paper is divided in 5 parts. Section 2 gives the notations that will be used in the paper. Section 3 presents the generic set covering problem, and explains how the dominance relations are used to reduce the size of such a problem. It then shows that its associated covering matrix can be replaced with a matrix whose rows and columns are not labeled anymore with minterms and prime implicants, as in the Quine-McCluskey procedure, but with sets associated with the maximal classes of the partition induced by the dominance relations. Section 4 explains how this new covering matrix is built and reduced to obtain the cyclic core of the Boolean function to be minimized. Section 5 gives experimental results obtained with this new procedure and discusses them. 2 Denitions and Notations 2.1 Products A literal is a propositional variable x k or its negation, also noted x k. A product is a conjunction of literals. We note P n the set of 3 n products that can be built from the set of variables fx 1 ; : : :; x n g. The subset relation is a partial order on the set P n. Elements of sets of products P; Q will be noted p; p 0 ; q; q 0. A set of products 1

2 P is maximal if and only if (i) there do not exist two products p and p 0 of P such that p p 0. A product p is an implicant of a Boolean function f i p fx 2 f0; 1g n j f(x) 6= 0g. A product p is a prime implicant of f i it is a maximal element of the set of implicants of f with respect to. Any subset P of P n can be partitioned in the following canonical way: P = P 1k [ (fx k g P xk ) [ (fx k g P xk ); where P 1k, P xk, and P xk are sets of products in which the variable x k does not occur. For example, for P = fx 1 x 4 ; x 2 ; x 2 x 4 ; x 2 x 3 g, we have P 12 = fx 1 x 4 g, P x2 = fx 3 g, and P x2 = f1; x 4 g. 2.2 Metaproducts The metaproduct representation, introduced in [4], is a canonical representation of sets of products. Metaproducts will be noted P and Q. A very interesting property of metaproducts is that the metaproducts of the sets P 1k, P xk, and P xk can be obtained from the metaproduct of P [5] in constant or linear time. Metaproducts allow manipulations of sets of products to be performed in an implicit way with costs not related to the number of products of the sets, but to the size of the BDDs of their metaproducts [4]. 3 The Set Covering Problem This section presents the set covering problem and the concept of dominance introduced by McCluskey [10]. Let X and Y be two sets, and R be a relation dened on X Y. We say that y covers x when xr y. The matrix associated with the set covering problem hx; Y; R i has rows labeled with elements of X and columns labeled with elements of Y, such that the element [x; y] of the matrix is equal to 1 i xr y. The set covering problem hx; Y; R i consists of nding a minimal cardinality subset of columns that cover all the rows. We say that two set covering problems are equivalent if a minimal solution of one problem can be built with a minimal solution of the other problem. 3.1 Dominance Relations A quasi order on a set Z is a reexive and transitive relation dened on Z Z. The relation is dened by (z z 0 ), ((z z 0 ) ^ (z 0 z)). It is an equivalence relation on Z, so is a partial order on Z=. The dominance relations X and Y dened as follows are quasi orders on X and Y respectively: x X x 0, (8y 2 Y (x 0 R y) ) (xr y)) y Y y 0, (8x 2 X (xr y) ) (xr y 0 )) Dominance relations can be used to reduce the size of a set covering problem by removing rows and columns from its matrix [10]. An element x 0 of X dominates x i all elements of Y that cover x 0 also cover x. This means that covering x 0 is sucient to cover x, so the row labeled with x can be removed from the matrix without modifying the set of minimal solutions. Similarly, the element y 0 of Y dominates y i all elements of X covered by y are also covered by y 0. This means that y 0 covers at least all the elements of X covered by y, and so y can be removed from the covering matrix. These reduction processes are formalized by the following theorem. Theorem 1 Let hx; Y; R i be a set covering problem. It is equivalent to the following set covering problems: hmax X (X= X ); Y; R i hx; max(y = Y ); R i Y In this formulation, the relation R is modied in the usual way on the quotient sets. Note that these problems are equivalent to hmax X (X= X ); max Y (Y = Y ); R i, which has the smallest matrix, and so can be said to be the \simplest" problem. 3.2 Essentiality An element y of Y is essential i it is the only one that covers an element x of X. Essential elements belong necessarily to any minimal solution. So problems hx; Y; R i and hx n fx 2 X j 9y 2 E xr yg; Y n E; R i, where E is the set of essential elements of Y, are equivalent. 3.3 Cyclic Core The cyclic core of hx; Y; R i is the xpoint obtained when the 3 reduction processes presented above (dominance relations on X and Y, and essentiality) are iteratively applied. In the case when this cyclic core is empty, the minimization is done, and in the other case, the minimization can be terminated using a branch-and-bound algorithm, which is based on a rows/columns removal controlled by a heuristic choice mechanism [1, 10, 13]. 3.4 Transposing Functions Manipulating the classes of the partitions X= X and of Y = Y can be very costly, so in most of the cyclic core computation procedures proposed in the past [10, 12, 1, 14, 9, 15, 6], these classes are manipulated through projections X and Y that map each class onto one of its elements. These projections guarantee that the problem h X (max X (X= X )); Y (max Y (Y = Y )); R i is equivalent to hmax X (X= X ); max Y (Y = Y ); R i. This section shows that, instead of using such a projection, one can use an isomorphism that maps the classes that must be manipulated on objects whose manipulation is less costly. Denition 1 Let be a quasi order on Z. The function dened on Z is a transposing function of i z z 0 is equivalent to (z) (z 0 ). In this case, (Z=; ) and ((Z); ) are isomorphic through. (Z; ) (Z=; )?! max (Z=) %?1 x x?? y y & ((Z); )?! max (Z) 2

3 Let hx; Y; R i be a set covering problem, and X and Y be two transposing functions of X and Y respectively. Then hx; Y; R i is equivalent to the set covering problem hmax X (X); max Y (Y ); R 0 i, where R 0 is dened by X (x)r 0 Y (y), xr y. The relation R 0 is well de- ned thanks to the denition of transposing functions. Section 4 will present transposing functions that maps classes onto products that will be implicitely represented with metaproducts. 4 A New Minimization Procedure The 2-level logic minimization of a Boolean function f consists of solving the set covering problem hf; P; 2i, where P is the set of prime implicants of f. The Quine- McCluskey procedure [10] computes its cyclic core using the iterative application of the transformations, where E is the set of essential elements of P : hf; P; 2i! h f (max f (f= f )); P; 2i hf; P; 2i! hf; P (max P (P= P )); 2i hf; P; 2i! hf n S p2e p; P n E; 2i This section presents a new implicit cyclic core computation procedure that takes full advantage of the metaproduct representation. The idea consists of transposing the 2-level logic minimization problem hf; P; 2i into a set covering problem hq; P; i that involves products and the subset relation. Two transposing functions Q and P of the associated dominance relations Q and P are dened so that the reduction process described Section 3.4 transposes into a set covering problem that still involves products and the subset relation. This section also shows how the essential products of P are easily computed using max Q (Q). Finally it describes the new implicit cyclic core computation algorithm and emphasizes the key points that make it much more ecient that any previously available one. For the sake of clarity, the algorithms introduced in the sequel will be described on explicit sets of products. These algorithms can be directly translated into implicit manipulations of sets of products, by replacing sets of products with their metaproducts, and set operations with their correspondent logical operators, for instance [ with _ [4]. 4.1 Mapping the Minterms on P n The rst transformation consists of nding a set covering problem hx; Y; R i equivalent to hf; P; 2i, where X and Y are sets of products and R =. Let Q be the set of the products that represent all minterms of f. Then hf; P; 2i is equivalent to hq; P; i, where Q = fq 2 P n j 9x 2 f0; 1g n (x 2 f) ^ (fxg = q)g 4.2 The Transposing Function Q After the transformation described above, we have to solve a set covering problem hq; P; i, where Q and P are sets of products. The dominance relation Q is: q Q q 0, (8p 2 P (q 0 p) ) (q p)) Theorem 2 The following function Q dened from Q into P n is a transposing function of Q. Q (q) = T fp2pjqpg p Proof. By denition, we have: q Q q 0, (8p 2 P (q 0 p) ) (q p)), fp 2 P j q 0 pg fp 2 P j q pg ) ( T fp2pjqpg p) (T fp2pjq 0 pg p) ) Q (q) Q (q 0 ) Conversely, assume that Q (q) Q (q 0 ). Since it is always true that q Q (q), we deduce that q Q (q 0 ). By denition of Q, this means that all products of P that contain q 0 also contain q, i.e., q Q p Computing max Q (Q) The advantage of the transposing function Q is that its range is P n, and so max Q (Q) can be eciently represented with a metaproduct. The metaproduct of max Q (Q) can be computed using quantied Boolean formulas, but experience shows that their evaluations generate huge intermediate BDDs, and so this is not interesting from the computational point of view. This section presents a quantier free recursive evaluation scheme that produces the metaproduct of max P (P ). We rst dene the functions SupSet and SubSet that will be used in the sequel. The set SupSet(P; Q) is the set of products of P that contain at least one product of Q, and the set SubSet(P; Q) is the set of products of P that are contained by at least one product of Q: SupSet(P; Q) = fp 2 P j 9q 2 Q p qg SubSet(P; Q) = fp 2 P j 9q 2 Q p qg It is immediate to express these two functions with recursive equations, so that they are translated directly on metaproducts. For instance: SupSet(P; Q) = if Q = or P = SupSet(P; P n ) = P SupSet(P; Q) 1k = SupSet(P 1k ; Q 1k [ Q xk [ Q xk ) SupSet(P; Q) xk = SupSet(P xk ; Q xk ) SupSet(P; Q) xk = SupSet(P xk ; Q xk ) Theorem 3 The metaproduct of max Q (Q) is built by evaluating MaxTauQ(Q; P; 1), where the explicit version of the function MaxTauQ is described as follows. function MaxTauQ(Q; P; k); if Q = or P = return ; if P = f1g return f1g; let K0 = SubSet(Q xk ; P xk ); K1 = SubSet(Q xk ; P xk ); K = Q 1k [ (Q xk n K0) [ (Q xk n K1); R = MaxTauQ(K; P 1k ; k + 1); R0 = MaxTauQ(K0; P 1k [ P xk ; k + 1); R1 = MaxTauQ(K1; P 1k [ P xk ; k + 1) in return R [ fx k g (R0 n SubSet(R0; R)) [ fx k g (R1 n SubSet(R1; R)); 3

4 Proof. The terminal cases are obvious. The set K0 (respectively K1) is the set of products q of Q such that Q (q) contains the literal x k (respectively x k ); K is the set of products q of Q such that Q (q) contains neither the literal x k nor x k. The set R is the set of products of max Q (Q) that contain neither the literal x k nor x k ; R0 is the set of products of Q (Q) that contain the literal x k, and that are maximal w.r.t. Q (Q) xk. Since only the maximal products w.r.t. Q (Q) have to be kept, only the set of products of R0 that are not contained by a product of R, which is R0 n SubSet(R0; R), has to be kept. The treatment for R1 is similar Essential Products The following result shows that the essential elements of P can be directly obtained from max Q (Q). Theorem 4 Let hq; P; i be a covering matrix, where Q is a set of products, and P a maximal set of products. Then the set of essential products is P \ max Q (Q). Proof. Since P is maximal, P \ Q (Q) is equal to P \ max Q (Q). The product p is essential i it is the only one of P that contains a product q of Q. This implies that Q (q) = p. Conversely, assume that there exists a product q of Q such that Q (q) = p with p 2 P. Then if it exists p 0 such that p 0 6= p and p 0 2 fp 2 P j q pg, we have p = Q (q) = ( T fp2pjqpg p) p0, which is impossible because P is maximal The Transposing Function P Once the set of products Q 0 = max Q (Q) has been for the set covering problem hq; P; i, we obtain the new equivalent set covering problem hq 0 ; P; R 0 i, with q 0 R 0 p i q 0 = Q (q) and q p, as said in Section 3.4. It is easy to check that q p is equivalent to Q (q) p. This implies that the relation R 0 is the subset relation, and so the new set covering problem is hq 0 ; P; i, that has exactly the same form as the rst one. The dominance relation on P is dened by: p P p 0, (8q 2 Q (q p) ) (q p 0 )): Let us dene the function C : 2 f0;1gn! P n as follows: C(E) = min fp 2 P n j p Eg: In other words, C(E) is the smallest product that contains the set E. The product C(E) is unique, because if we assume that there exist two dierent minimal products p and p 0 that contain E, then p \ p 0 is a smaller product that still contains E. We nally dene the following transposing function P. Theorem 5 The following function P dened from P into P n is a transposing function of P. P (p) = C( S fq2qjqpg q) Proof. Let p and p 0 be two products of P. By denition, we have: p P p 0, (8q 2 Q (q p) ) (q p 0 )), fq 2 Q j q pg fq 2 Q j q p 0 g ) ( S fq2qjqpg q) (S fq2qjqp 0 g q) ) P (p) P (p 0 ) because the function C is increasing. Conversely, assume that P (p) P (p 0 ). Since P (p) p is always true, we deduce P (p) p 0. Also we have by denition q P (p) for all q of Q that are contained by p. Finally, this means that all q of Q contained by p are also contained by p 0, i.e., p p Computing max P (P ) The advantage of the transposing function P is that its range is P n, and so max P (P ) is a set of products that can be eciency represented with a metaproduct. Similarly to Q, the metaproduct of the maximal elements of P (P ) can be expressed by formulas with quantiers, but their evaluation is too costly. This section presents a quantier free recursive evaluation scheme that produces the metaproduct of max P (P ). Theorem 6 The metaproduct of max P (P) is built by evaluating MaxTauP(Q; P; 1), where the explicit version of the function MaxTauP is as follows. function MaxTauP(Q; P; k); if Q = or P = return ; if Q = P n return P ; let K = SupSet(P 1k ; Q 1k ) [ (SupSet(P 1k ; Q xk ) \ SupSet(P 1k ; Q xk )); K0 = SupSet(P 1k [ P xk ; Q xk ) n K; K1 = SupSet(P 1k [ P xk ; Q xk ) n K; R = MaxTauP(Q 1k [ Q xk [ Q xk ; K; k + 1); R0 = MaxTauP(Q xk ; K0; k + 1); R1 = MaxTauP(Q xk ; K1; k + 1) in return R [ fx k g (R0 n SubSet(R0; R)) [ fx k g (R1 n SubSet(R1; R)); Proof. The terminal cases are obvious. The set K is the set of products of P 1k that contain a product of Q 1k, or that contain a product of Q xk and a product of Q xk. This means that K is the set of products p of P such that P (p) does not contain the literal x k nor x k. The set R is then the set of products of max P (P ) that do not contain the literal x k or x k. The set K0 (respectively K1) is the set of products of P that only contain products of Q where the literal x k (respectively the literal x k ) occurs. The set R0 is then the set of products of P (P ) that contain the literal x k, and that are maximal w.r.t. P (P ) xk. Since only the maximal products w.r.t. P (P ) have to be kept, only the set of products of R0 that are not contained by a product of R, which is R0 n SubSet(R0; R), has to be kept. The treatment for R1 is similar. 2 4

5 4.7 The New Algorithm The new algorithm consists of implicitly computing the cyclic core of f by applying transformation 0 once, 0 hf; P; 2i! hffxg j x 2 fg; P; i where the metaproduct P of all the prime implicants of the function f to be minimized is computed using the algorithm presented in [5], and then by iteratively applying the following ordered transformations: hq; P; i hq; P; i hq; P; i 1! hmax Q(Q); P; i 2! hq ^ :E; P ^ :E; i with E = P ^ Q 3! hq; max P(P); i Transformation 0 consists of transposing the 2-level logic minimization problem into an equivalent set covering problem hq; P; i, where Q and P are sets of products. Transformation 1 uses the transposing function Q to reduce the size of the problem. Transformation 2 consists of computing the metaproduct E of the set of essential products of P, as shown in Section 4.4, since at this step Q is the metaproduct of max Q (Q). Transformation 3 uses the transposing function P to produce the new set covering problem hq; max P (P); R 0 i, with qr 0 p 0 i p 0 = P (p) and q p, as said in Section 3.4. One can check that q P (p) is equivalent to q p, so the relation R 0 is the subset relation, as said by transformation 3. The key points of this algorithm are: the use of BDDs and metaproducts, that make its complexity independent from the number of minterms and prime implicants of f; the use of transformation 0 that transposes the initial set covering problem into a new one using sets of products and the subset relation; the use of two transposing functions of the two associated dominance relations, whose ranges are set of products, allowing ecient manipulations of the rows and columns of the new set covering problem using metaproducts. This procedure allows us to compute cyclic cores of Boolean functions without computing the dominance relations, whose huge BDDs are the bottleneck of the previously available implicit cyclic core computation procedures [15, 6]. 5 Experimental Results The method presented in this paper is able to compute the cyclic cores of all the 145 examples of the MCNC benchmark [16], which has never been done before. We deal with the 2-level logic minimization of a multi-output Boolean function f by using a one-to-one mapping between the implicants of f and those of a partially dened single output Boolean function computed from f, as shown in [8, 7]. Table 1 describes the 20 hard ESPRESSO problems [13, 16] and some other hard examples. It gives the numbers of input and of output (i/o) of each multi-output function, and a \" indicates that it is partially dened. It gives its number of minterms #M, of prime implicants #P, of essential prime implicants #E, and the number of prime implicants B in the so far best known irredundant prime cover. Table 2 gives the CPU time (Time) in seconds and the total amount of memory (Mem) in megabytes used to compute on a IBM RS6000 the cyclic core of the functions. Column S/c gives the number of cycles c (one cycle is the application of transformations 1, 2, and 3) needed to generate the cyclic core, and the number of prime implicants S that have been found to be in the minimal solution currently built. Column row col gives the number of rows row and the number of columns col of the cyclic core. Brayton, McGeer, and Sanghavi have introduced in [2] a transposing function, called signature cube, of the minterm dominance relation. This transposing function allows the reduction of the set covering problem using the following transformation: hf; P; 2i! hmax (f); P; i This transformation does not produce the cyclic core of f, but it is nevertheless interesting because max (f) can be iteratively computed without computing all the prime implicants of f, and the reduction it allows can be sucient to minimize functions with huge numbers of prime implicants [2, 11]. However, for some functions, the reduced covering matrix it produces is too large to be handled by a branch-and-bound algorithm, or the number of maximal signature cubes is too large to be exhaustively computed. For instance, mainpla, soar, and ti have 10364, , and maximal signature cubes respectively. 6 Conclusion We have presented in this paper a new 2-level logic minimization procedure. This new algorithm consists of computing in an implicit way the cyclic core of the Boolean function f. The rst step transforms the initial problem into an equivalent set covering problem that uses sets of products and the subset relation. The second step consists of computing the cyclic core of this new set covering problem using transposing functions and metaproducts. The eciency of this approach has been demonstrated by the generation of the cyclic core of all the Boolean functions of the MCNC benchmark, which had never been achieved before. In the case when the generated cyclic core of the function is small, an explicit branch-and-bound technique can be used to nd a minimal solution. However, in the case when this cyclic core is very large, a more powerful branch-and-bound resolution procedure is needed, and research is being done to develop such a metaproduct based procedure. Acknowledgments The authors would like to thank G. M. Swamy, P. McGeer, and R. K. Brayton for the private presentation they gave in June 1992 on the concepts of minterm and prime dominance and their use for cyclic core computation. This presentation introduced us to the 2-level 5

6 Name i=o #M #P #E B add8 17= ? cont 30=28 8:12 e ? bench1 9= exam 10= test4 8= ex = ex5 8= max = prom2 9= t1 21= test2 11= test3 10= accpla 50=69 1:60 e ex4 128=28 1:59 e+39 1:83 e ibm 48=17 1:55 e+15 1:04 e jbp 36=57 8:00 e mainpla 27=54 3:55 e misg 56=23 1:05 e+18 6:49 e mish 94=43 4:14 e+29 1:12 e misj 35=14 2:61 e pdc 16= shift 19= signet 39=8 1:83 e soar 83=94 1:74 e+26 3:30 e ti 47=72 4:13 e ts10 22= x2dn 82=56 8:84 e+25 1:14 e x7dn 66=15 3:50 e xparc 41=73 1:08 e Table 1. The hard ESPRESSO Problems. Name S=c row col Mem Time add8 2519= :6 0:3 cont 229= :2 1:1 bench1 8= :2 36:3 exam 0= :0 33:7 test4 0= : ex1010 0= ex5 29= :8 209 max = :4 9:4 prom2 28= :3 154 t1 56= :2 6:6 test2 0= test3 0= : accpla 171= : ex4 269= :3 4:8 ibm 173= :5 8:9 jbp 93= :9 118 mainpla 172= : misg 69= :1 0:9 mish 82= :3 4:2 misj 35= :1 0:7 pdc 19= :5 156 shift 100= :5 9:7 signet 119= :8 496 soar 208= :5 65:7 ti 137= :9 60:9 ts10 128= :4 8:2 x2dn 104= :4 8:3 x7dn 406= :5 110 xparc 232= :9 65:6 Table 2. Solving the hard ESPRESSO Problems. logic minimization, and is the starting point of our work on this domain. References [1] R. K. Brayton, G. D. Hachtel, C. T. McMullen, A. L. Sangiovanni-Vincentelli, Logic Minimization Algorithms for VLSI Synthesis, Kluwer Academic Publishers, [2] R. K. Brayton, P. C. McGeer, J. Sanghavi, \A New Exact and Heuristic Minimizer for Two-Level Logic Synthesis", in Proc. of Int'l Symposia on Information Sciences, Fukuoka, Japan, July [3] R. E. Bryant, \Graph-based Algorithms for Boolean Functions Manipulation", in IEEE Trans. on Computers, Vol C-35, [4] O. Coudert, J. C. Madre, \A New Method to Compute Prime and Essential Prime Implicants of Boolean Functions", in Advanced research in VLSI and Parallel Systems, T. Knight and J. Savage Editors, The MIT Press, pp. 113{128, March [5] O. Coudert, J. C. Madre, \Implicit and Incremental Computation of Primes and Essential Primes of Boolean functions", in Proc. of the 29th DAC, Anaheim, CA, June [6] O. Coudert, J. C. Madre, \A New Viewpoint on Two- Level Logic Minimization", Bull research report N o 92026, November [7] O. Coudert, J. C. Madre, \Towards a Symbolic Logic Minimization Algorithm", in Proc. of VLSI Design'93, Bombay, India, January [8] R. B. Cutler, S. Muroga, \Useless Prime Implicants of Incompletely Specied Multiple-Output Switching Functions", in Int'l Journal of Computer and Information Sciences, Vol. 9, No. 4, [9] S. J. Hong, S. Muroga, \Absolute Minimization of Completely Specied Switching Functions", in IEEE Trans. on Computers, Vol 40, pp. 53{65, [10] E. J. Jr. McCluskey, \Minimization of Boolean Functions", in Bell System Technical Journal, Vol 35, pp. 1417{1444, [11] P. C. McGeer, J. Sanghavi, R. K. Brayton, \Minimization of Logic Functions using Essential Signature Sets", in Proc. of VLSI Design'93, Bombay, India, January [12] W. V. O. Quine, \The Problem of Simplifying Truth Functions", in American Mathematical Monthly, Vol 59, pp. 521{531, [13] R. L. Rudell, Multiple-Valued Logic Minimization for PLA Synthesis, UCB technical report M86/65, [14] R. L. Rudell, A. L. Sangiovanni-Vincentelli, \Multiple Valued Minimization for PLA Optimization", in IEEE Trans. on CAD, Vol 6, No 5, pp. 727{750, September [15] G. M. Swamy, P. McGeer, R. K. Brayton, \A Fully Quine-McCluskey Procedure using BDD's", UCB technical report #UCB/ERL M92/127, November Also submitted to IWLS'93 and DAC'93. [16] S. Yang, Logic Synthesis and Optimization Benchmarks User Guide, Microelectronics Center of North Carolina, January

A New Viewpoint on Two-Level Logic Minimization

A New Viewpoint on Two-Level Logic Minimization A New Viewpoint on Two-Level Logic Minimization Olivier Coudert Jean Christophe Madre Henri Fraisse Bull Corporate Research Center Rue Jean Jaurès 78340 Les Clayes-sous-bois, FRANCE Abstract This paper

More information

A New Implicit Graph Based Prime and Essential Prime Computation Technique

A New Implicit Graph Based Prime and Essential Prime Computation Technique A New Implicit Graph Based Prime and Essential Prime Computation Technique O. Coudert and J.C. Madre Bull Corporate Research Center Rue Jean Jaurès 7834 Les Clayes-sous-bois FRANCE Abstract Implicit set

More information

Two-level logic minimization: an overview

Two-level logic minimization: an overview Two-level logic minimization: an overview Olivier Coudert DEC, Paris Research Laboratory, 85 Avenue Victor Hugo, 92500 Rueil Malmaison, France INTEGRATION, the VLSI journal, 17-2, pp. 97 140, October 1994.

More information

Doing Two-Level Logic Minimization 100 Times Faster. Olivier Coudert. Synopsys, Inc. 700 East Middlefield Road, Moutain View, CA

Doing Two-Level Logic Minimization 100 Times Faster. Olivier Coudert. Synopsys, Inc. 700 East Middlefield Road, Moutain View, CA Doing Two-Level Logic Minimization 1 Times Faster Olivier Coudert Synopsys, Inc. 7 East Middlefield Road, Moutain View, CA 9443-433 Abstract Two-level logic minimization consists in finding a minimal cost

More information

A Logically Complete Reasoning Maintenance System Based on a Logical Constraint Solver

A Logically Complete Reasoning Maintenance System Based on a Logical Constraint Solver A Logically Complete Reasoning Maintenance System Based on a Logical Constraint Solver J.C. Madre and O. Coudert Bull Corporate Research Center Rue Jean Jaurès 78340 Les Clayes-sous-bois FRANCE Abstract

More information

Irredundant Sum-of-Products Expressions - J. T. Butler

Irredundant Sum-of-Products Expressions - J. T. Butler On the minimization of SOP s for Bi-Decomposable Functions T. Sasao* & J. T. Butler *Kyushu Institute of Technology, Iizuka, JAPAN Naval Postgraduate School Monterey, CA -5 U.S.A. Outline Introduction

More information

PLA Minimization for Low Power VLSI Designs

PLA Minimization for Low Power VLSI Designs PLA Minimization for Low Power VLSI Designs Sasan Iman, Massoud Pedram Department of Electrical Engineering - Systems University of Southern California Chi-ying Tsui Department of Electrical and Electronics

More information

x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x 10 x 11 x 12 x 13 x 14 x 15 x 16

x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x 10 x 11 x 12 x 13 x 14 x 15 x 16 DECOMPOS: An Integrated System for Functional Decomposition Tsutomu Sasao and Munehiro Matsuura Department of Computer Science and Electronics Kyushu Institute of Technology Iizuka 820-8502, Japan Abstract

More information

Large-Scale SOP Minimization Using Decomposition and Functional Properties

Large-Scale SOP Minimization Using Decomposition and Functional Properties 10.2 Large-Scale SOP Minimization Using Decomposition and Functional Properties Alan Mishchenko Department of Electrical Engineering and Computer Sciences University of California, Berkeley Berkeley, CA

More information

On the Minimization of SOPs for Bi-Decomposable Functions

On the Minimization of SOPs for Bi-Decomposable Functions On the Minimization of SOPs for Bi-Decomposable Functions Tsutomu Sasao Jon T. Butler Center for Microelectronic Systems Department of Electrical and Department of Computer Science and Electronics and

More information

Minimization of Boolean Expressions Using Matrix Algebra

Minimization of Boolean Expressions Using Matrix Algebra Minimization of Boolean Expressions Using Matrix Algebra Holger Schwender Collaborative Research Center SFB 475 University of Dortmund holger.schwender@udo.edu Abstract The more variables a logic expression

More information

Logic Synthesis of EXOR Projected Sum of Products

Logic Synthesis of EXOR Projected Sum of Products Logic Synthesis of EXOR Projected Sum of Products Anna Bernasconi, Valentina Ciriani 2, and Roberto Cordone 2 Department of Computer Science, University of Pisa Italy, annab@di.unipi.it 2 DTI, University

More information

Sum-of-Generalized Products Expressions Applications and Minimization

Sum-of-Generalized Products Expressions Applications and Minimization Sum-of-Generalized Products Epressions Applications and Minimization Tsutomu Sasao Department of Computer Science and Electronics Kyushu Institute of Technology Iizuka 80-850 Japan Abstract This paper

More information

L6: Two-level minimization. Reading material

L6: Two-level minimization. Reading material L6: Two-level minimization Reading material de Micheli pp. 269-343 p. 2 - Advanced Logic Design L6 - Elena Dubrova Formulation of the two-level minimization problem input: a Boolean function f(x,x 2,...,x

More information

STGs may contain redundant states, i.e. states whose. State minimization is the transformation of a given

STGs may contain redundant states, i.e. states whose. State minimization is the transformation of a given Completely Specied Machines STGs may contain redundant states, i.e. states whose function can be accomplished by other states. State minimization is the transformation of a given machine into an equivalent

More information

Fundamental Algorithms for System Modeling, Analysis, and Optimization

Fundamental Algorithms for System Modeling, Analysis, and Optimization Fundamental Algorithms for System Modeling, Analysis, and Optimization Edward A. Lee, Jaijeet Roychowdhury, Sanjit A. Seshia UC Berkeley EECS 244 Fall 2016 Lecturer: Yu-Yun Dai Copyright 2010-date, E.

More information

Logic Minimization. Two-Level. University of California. Prof. Srinivas Devadas. Prof. Richard Newton Prof. Sanjit Seshia. Prof.

Logic Minimization. Two-Level. University of California. Prof. Srinivas Devadas. Prof. Richard Newton Prof. Sanjit Seshia. Prof. Two-Level Logic Minimization Prof. Srinivas Devadas MIT Prof. Kurt Keutzer Prof. Richard Newton Prof. Sanjit Seshia University of California Berkeley, CA 1 Topics Motivation Boolean functions & notation

More information

Configurational Analysis beyond the Quine-McCluskeyMilan, algorithm 8 February / 29

Configurational Analysis beyond the Quine-McCluskeyMilan, algorithm 8 February / 29 Configurational Analysis beyond the Quine-McCluskey algorithm Adrian Dușa University of Bucharest Milan, 8 February 2018 Configurational Analysis beyond the Quine-McCluskeyMilan, algorithm 8 February 2018

More information

Chapter 4 Optimized Implementation of Logic Functions

Chapter 4 Optimized Implementation of Logic Functions Chapter 4 Optimized Implementation of Logic Functions Logic Minimization Karnaugh Maps Systematic Approach for Logic Minimization Minimization of Incompletely Specified Functions Tabular Method for Minimization

More information

1 Algebraic Methods. 1.1 Gröbner Bases Applied to SAT

1 Algebraic Methods. 1.1 Gröbner Bases Applied to SAT 1 Algebraic Methods In an algebraic system Boolean constraints are expressed as a system of algebraic equations or inequalities which has a solution if and only if the constraints are satisfiable. Equations

More information

A Fast Method to Derive Minimum SOPs for Decomposable Functions

A Fast Method to Derive Minimum SOPs for Decomposable Functions A Fast Method to Derive Minimum SOPs for Decomposable Functions Tsutomu Sasao Center for Microelectronic Systems and Department of Computer Science and Electronics Kyushu Institute of Technology Iizuka,

More information

An Efficient Heuristic Approach to Solve the Unate Covering Problem

An Efficient Heuristic Approach to Solve the Unate Covering Problem An Efficient Heuristic Approach to Solve the Unate Covering Problem Roberto Cordone DEI - Politecnico di Milano e-mail: cordone@elet.polimi.it Donatella Sciuto DEI - Politecnico di Milano e-mail: sciuto@elet.polimi.it

More information

Logic Synthesis and Verification

Logic Synthesis and Verification Logic Synthesis and Verification Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Fall 24 Two-Level Logic Minimization (/2) Reading: Logic Synthesis in a Nutshell

More information

[3] R.M. Colomb and C.Y.C. Chung. Very fast decision table execution of propositional

[3] R.M. Colomb and C.Y.C. Chung. Very fast decision table execution of propositional - 14 - [3] R.M. Colomb and C.Y.C. Chung. Very fast decision table execution of propositional expert systems. Proceedings of the 8th National Conference on Articial Intelligence (AAAI-9), 199, 671{676.

More information

Binary Decision Diagrams and Symbolic Model Checking

Binary Decision Diagrams and Symbolic Model Checking Binary Decision Diagrams and Symbolic Model Checking Randy Bryant Ed Clarke Ken McMillan Allen Emerson CMU CMU Cadence U Texas http://www.cs.cmu.edu/~bryant Binary Decision Diagrams Restricted Form of

More information

Inadmissible Class of Boolean Functions under Stuck-at Faults

Inadmissible Class of Boolean Functions under Stuck-at Faults Inadmissible Class of Boolean Functions under Stuck-at Faults Debesh K. Das 1, Debabani Chowdhury 1, Bhargab B. Bhattacharya 2, Tsutomu Sasao 3 1 Computer Sc. & Engg. Dept., Jadavpur University, Kolkata

More information

CS/EE 181a 2010/11 Lecture 4

CS/EE 181a 2010/11 Lecture 4 CS/EE 181a 21/11 Lecture 4 General topic of today s lecture: Logic Optimization Karnaugh maps. Quine-McCluskey tabulation method (not in detail). Non series-parallel networks (some care is required). Reference

More information

Detecting Support-Reducing Bound Sets using Two-Cofactor Symmetries 1

Detecting Support-Reducing Bound Sets using Two-Cofactor Symmetries 1 3A-3 Detecting Support-Reducing Bound Sets using Two-Cofactor Symmetries 1 Jin S. Zhang Department of ECE Portland State University Portland, OR 97201 jinsong@ece.pdx.edu Malgorzata Chrzanowska-Jeske Department

More information

CS 226: Digital Logic Design

CS 226: Digital Logic Design CS 226: Digital Logic Design 0 1 1 I S 0 1 0 S Department of Computer Science and Engineering, Indian Institute of Technology Bombay. 1 of 29 Objectives In this lecture we will introduce: 1. Logic functions

More information

by Symbolic Spectral Analysis of Boolean Functions Politecnico di Torino Torino. ITALY 10129

by Symbolic Spectral Analysis of Boolean Functions Politecnico di Torino Torino. ITALY 10129 Predicting the Functional Complexity of Combinational Circuits by Symbolic Spectral Analysis of Boolean Functions Enrico Macii Massimo Poncino Politecnico di Torino Dip. di Automatica e Informatica Torino.

More information

A New Method to Express Functional Permissibilities for LUT based FPGAs and Its Applications

A New Method to Express Functional Permissibilities for LUT based FPGAs and Its Applications A New Method to Express Functional Permissibilities for LUT based FPGAs and Its Applications Shigeru Yamashita, Hiroshi Sawada and Akira Nagoya NTT Communication Science Laboratories 2-2 Hikaridai, Seika-cho,

More information

Combinational Equivalence Checking using Boolean Satisfiability and Binary Decision Diagrams

Combinational Equivalence Checking using Boolean Satisfiability and Binary Decision Diagrams Combinational Equivalence Checking using Boolean Satisfiability and Binary Decision Diagrams Sherief Reda Ashraf Salem Computer & Systems Eng. Dept. Mentor Graphics Egypt Ain Shams University Cairo, Egypt

More information

Preprint from Workshop Notes, International Workshop on Logic Synthesis (IWLS 97), Tahoe City, California, May 19-21, 1997

Preprint from Workshop Notes, International Workshop on Logic Synthesis (IWLS 97), Tahoe City, California, May 19-21, 1997 Preprint from Workshop Notes, International Workshop on Logic Synthesis (IWLS 97), Tahoe City, California, May 19-21, 1997 Multi-output Functional Decomposition with Exploitation of Don't Cares Christoph

More information

Basing Decisions on Sentences in Decision Diagrams

Basing Decisions on Sentences in Decision Diagrams Proceedings of the Twenty-Sixth AAAI Conference on Artificial Intelligence Basing Decisions on Sentences in Decision Diagrams Yexiang Xue Department of Computer Science Cornell University yexiang@cs.cornell.edu

More information

On the Minimization of SOPs for Bi-Decomposable Functions

On the Minimization of SOPs for Bi-Decomposable Functions On the Minimization of SOPs for Bi-Decomposable Functions Tsutomu Sasao Jon T. Butler Center for Microelectronic Systems Department of Electrical and Department of Computer Science and Electronics and

More information

Chapter 3 Deterministic planning

Chapter 3 Deterministic planning Chapter 3 Deterministic planning In this chapter we describe a number of algorithms for solving the historically most important and most basic type of planning problem. Two rather strong simplifying assumptions

More information

Exact and heuristic minimization of Boolean functions

Exact and heuristic minimization of Boolean functions Eact and heuristic minimization of Boolean functions Quine a McCluskey Method a) Generation of all prime implicants b) Selection of a minimum subset of prime implicants, which will represent the original

More information

CS/EE 181a 2008/09 Lecture 4

CS/EE 181a 2008/09 Lecture 4 CS/EE 181a 28/9 Lecture 4 General topic of today s lecture: Logic Optimization Karnaugh maps. Quine-McCluskey tabulation method (not in detail). Non series-parallel networks (some care is required). Reference

More information

Testability of SPP Three-Level Logic Networks

Testability of SPP Three-Level Logic Networks Testability of SPP Three-Level Logic Networks Valentina Ciriani Anna Bernasconi Rolf Drechsler Department of Computer Science University of Pisa 561 Pisa, Italy {ciriani, annab}@di.unipi.it Institute of

More information

ECE 3060 VLSI and Advanced Digital Design

ECE 3060 VLSI and Advanced Digital Design ECE 3060 VLSI and Advanced Digital Design Lecture 12 Computer-Aided Heuristic Two-level Logic Minimization Computer-Aided Heuristic Twolevel Logic Minimization Heuristic logic minimization Principles Operators

More information

1 Introduction A general problem that arises in dierent areas of computer science is the following combination problem: given two structures or theori

1 Introduction A general problem that arises in dierent areas of computer science is the following combination problem: given two structures or theori Combining Unication- and Disunication Algorithms Tractable and Intractable Instances Klaus U. Schulz CIS, University of Munich Oettingenstr. 67 80538 Munchen, Germany e-mail: schulz@cis.uni-muenchen.de

More information

ESE535: Electronic Design Automation. Today. Problem. EDA Use PLA. Programmable Array Logic (PLAs) Two-Level Logic Optimization

ESE535: Electronic Design Automation. Today. Problem. EDA Use PLA. Programmable Array Logic (PLAs) Two-Level Logic Optimization ESE535: Electronic Design Automation Today Day 4: February 25, 2009 Two-Level Logic-Synthesis Two-Level Logic Optimization Problem Definitions Basic Algorithm: Quine-McClusky Improvements 1 2 Problem EDA

More information

1 Introduction A one-dimensional burst error of length t is a set of errors that are conned to t consecutive locations [14]. In this paper, we general

1 Introduction A one-dimensional burst error of length t is a set of errors that are conned to t consecutive locations [14]. In this paper, we general Interleaving Schemes for Multidimensional Cluster Errors Mario Blaum IBM Research Division 650 Harry Road San Jose, CA 9510, USA blaum@almaden.ibm.com Jehoshua Bruck California Institute of Technology

More information

Digital Circuit And Logic Design I. Lecture 4

Digital Circuit And Logic Design I. Lecture 4 Digital Circuit And Logic Design I Lecture 4 Outline Combinational Logic Design Principles (2) 1. Combinational-circuit minimization 2. Karnaugh maps 3. Quine-McCluskey procedure Panupong Sornkhom, 2005/2

More information

Random Benchmark Circuits with Controlled Attributes. [iwama,

Random Benchmark Circuits with Controlled Attributes.   [iwama, Random Benchmark Circuits with Controlled Attributes Kazuo Iwama 3 Kensuke Hino y Hiroyuki Kurokawa z Sunao Sawada 3 3Dept of Computer Science and Communication Engineering Kyushu University, Japan yindustrial

More information

USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING. Liudmila Cheremisinova, Dmitry Novikov

USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING. Liudmila Cheremisinova, Dmitry Novikov International Book Series "Information Science and Computing" 203 USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING Liudmila Cheremisinova, Dmitry Novikov Abstract. The problem of checking whether a

More information

Computing the acceptability semantics. London SW7 2BZ, UK, Nicosia P.O. Box 537, Cyprus,

Computing the acceptability semantics. London SW7 2BZ, UK, Nicosia P.O. Box 537, Cyprus, Computing the acceptability semantics Francesca Toni 1 and Antonios C. Kakas 2 1 Department of Computing, Imperial College, 180 Queen's Gate, London SW7 2BZ, UK, ft@doc.ic.ac.uk 2 Department of Computer

More information

Cardinality Networks: a Theoretical and Empirical Study

Cardinality Networks: a Theoretical and Empirical Study Constraints manuscript No. (will be inserted by the editor) Cardinality Networks: a Theoretical and Empirical Study Roberto Asín, Robert Nieuwenhuis, Albert Oliveras, Enric Rodríguez-Carbonell Received:

More information

Title. Citation Information Processing Letters, 112(16): Issue Date Doc URLhttp://hdl.handle.net/2115/ Type.

Title. Citation Information Processing Letters, 112(16): Issue Date Doc URLhttp://hdl.handle.net/2115/ Type. Title Counterexamples to the long-standing conjectur Author(s) Yoshinaka, Ryo; Kawahara, Jun; Denzumi, Shuhei Citation Information Processing Letters, 112(16): 636-6 Issue Date 2012-08-31 Doc URLhttp://hdl.handle.net/2115/50105

More information

Boolean Matching Using Generalized Reed-Muller Forms

Boolean Matching Using Generalized Reed-Muller Forms oolean Matching Using Generalized Reed-Muller Forms Chien-Chung Tsai Malgorzata Marek-Sadowska Department of Electrical and Computer Engineering University of California Santa arbara, CA 93106 USA Abstract

More information

Sequential Equivalence Checking without State Space Traversal

Sequential Equivalence Checking without State Space Traversal Sequential Equivalence Checking without State Space Traversal C.A.J. van Eijk Design Automation Section, Eindhoven University of Technology P.O.Box 53, 5600 MB Eindhoven, The Netherlands e-mail: C.A.J.v.Eijk@ele.tue.nl

More information

Functional Abstraction and Partial Specification of Boolean Functions

Functional Abstraction and Partial Specification of Boolean Functions unctional Abstraction and Partial Specification of Boolean unctions Karem A. Sakallah CSE-TR-255-95 August 9, 1995 THE UNIVERSITY O MICHIGAN Computer Science and Engineering Division Department of Electrical

More information

DIGITAL TECHNICS I. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute 5. LECTURE: LOGIC SYNTHESIS

DIGITAL TECHNICS I. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute 5. LECTURE: LOGIC SYNTHESIS 202.0.5. DIGITL TECHNICS I Dr. Bálint Pődör Óbuda University, Microelectronics and Technology Institute 5. LECTURE: LOGIC SYNTHESIS st year BSc course st (utumn) term 202/203 5. LECTURE. Karnaugh map applications

More information

Logic Synthesis and Verification

Logic Synthesis and Verification Logic Synthesis and Verification Boolean Algebra Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Fall 2014 1 2 Boolean Algebra Reading F. M. Brown. Boolean Reasoning:

More information

Review. EECS Components and Design Techniques for Digital Systems. Lec 06 Minimizing Boolean Logic 9/ Review: Canonical Forms

Review. EECS Components and Design Techniques for Digital Systems. Lec 06 Minimizing Boolean Logic 9/ Review: Canonical Forms Review EECS 150 - Components and Design Techniques for Digital Systems Lec 06 Minimizing Boolean Logic 9/16-04 David Culler Electrical Engineering and Computer Sciences University of California, Berkeley

More information

Two-Level Logic Synthesis for Probabilistic Computation

Two-Level Logic Synthesis for Probabilistic Computation Two-Level Logic Synthesis for Probabilistic Computation Weikang Qian Marc D. Riedel Department of Electrical Computer Engineering, University of Minnesota, Twin Cities {qianx030, mriedel}@umn.edu ABSTRACT

More information

Transformation Rules for Locally Stratied Constraint Logic Programs

Transformation Rules for Locally Stratied Constraint Logic Programs Transformation Rules for Locally Stratied Constraint Logic Programs Fabio Fioravanti 1, Alberto Pettorossi 2, Maurizio Proietti 3 (1) Dipartimento di Informatica, Universit dell'aquila, L'Aquila, Italy

More information

2009 Spring CS211 Digital Systems & Lab CHAPTER 2: INTRODUCTION TO LOGIC CIRCUITS

2009 Spring CS211 Digital Systems & Lab CHAPTER 2: INTRODUCTION TO LOGIC CIRCUITS CHAPTER 2: INTRODUCTION TO LOGIC CIRCUITS What will we learn? 2 Logic functions and circuits Boolean Algebra Logic gates and Synthesis CAD tools and VHDL Read Section 2.9 and 2.0 Terminology 3 Digital

More information

Multi-Terminal Binary Decision Diagrams: An Efficient Data Structure for Matrix Representation

Multi-Terminal Binary Decision Diagrams: An Efficient Data Structure for Matrix Representation Formal Methods in System Design 10, 149 169 (1997) c 1997 Kluwer Academic Publishers. Manufactured in The Netherlands. Multi-Terminal Binary Decision Diagrams: An Efficient Data Structure for Matrix Representation

More information

Heuristic Minimization of Two Level Circuits

Heuristic Minimization of Two Level Circuits Heuristic Minimization of Two Level Circuits Sungho Kang Yonsei University Outline Local Search Checking for Equivalence and Tautology Choosing the Right Direction Identifying Essential Implicants 2 Local

More information

LUTMIN: FPGA Logic Synthesis with MUX-Based and Cascade Realizations

LUTMIN: FPGA Logic Synthesis with MUX-Based and Cascade Realizations LUTMIN: FPGA Logic Synthesis with MUX-Based and Cascade Realizations Tsutomu Sasao and Alan Mishchenko Dept. of Computer Science and Electronics, Kyushu Institute of Technology, Iizuka 80-80, Japan Dept.

More information

1 Preliminaries We recall basic denitions. A deterministic branching program P for computing a Boolean function h n : f0; 1g n! f0; 1g is a directed a

1 Preliminaries We recall basic denitions. A deterministic branching program P for computing a Boolean function h n : f0; 1g n! f0; 1g is a directed a Some Separation Problems on Randomized OBDDs Marek Karpinski Rustam Mubarakzjanov y Abstract We investigate the relationships between complexity classes of Boolean functions that are computable by polynomial

More information

Extremal problems in logic programming and stable model computation Pawe l Cholewinski and Miros law Truszczynski Computer Science Department Universi

Extremal problems in logic programming and stable model computation Pawe l Cholewinski and Miros law Truszczynski Computer Science Department Universi Extremal problems in logic programming and stable model computation Pawe l Cholewinski and Miros law Truszczynski Computer Science Department University of Kentucky Lexington, KY 40506-0046 fpaweljmirekg@cs.engr.uky.edu

More information

Using DNA to Solve NP-Complete Problems. Richard J. Lipton y. Princeton University. Princeton, NJ 08540

Using DNA to Solve NP-Complete Problems. Richard J. Lipton y. Princeton University. Princeton, NJ 08540 Using DNA to Solve NP-Complete Problems Richard J. Lipton y Princeton University Princeton, NJ 08540 rjl@princeton.edu Abstract: We show how to use DNA experiments to solve the famous \SAT" problem of

More information

Logic Synthesis. Basic Definitions. k-cubes

Logic Synthesis. Basic Definitions. k-cubes Logic Synthesis Minimization of Boolean logic Technology-independent mapping Objective: minimize # of implicants, # of literals, etc. Not directly related to precise technology (# transistors), but correlated

More information

1 The Well Ordering Principle, Induction, and Equivalence Relations

1 The Well Ordering Principle, Induction, and Equivalence Relations 1 The Well Ordering Principle, Induction, and Equivalence Relations The set of natural numbers is the set N = f1; 2; 3; : : :g. (Some authors also include the number 0 in the natural numbers, but number

More information

VLSI CAD: Lecture 4.1. Logic to Layout. Computational Boolean Algebra Representations: Satisfiability (SAT), Part 1

VLSI CAD: Lecture 4.1. Logic to Layout. Computational Boolean Algebra Representations: Satisfiability (SAT), Part 1 VLSI CAD: Logic to Layout Rob A. Rutenbar University of Illinois Lecture 4.1 Computational Boolean Algebra Representations: Satisfiability (SAT), Part 1 Some Terminology Satisfiability (called SAT for

More information

Boolean decision diagrams and SAT-based representations

Boolean decision diagrams and SAT-based representations Boolean decision diagrams and SAT-based representations 4th July 200 So far we have seen Kripke Structures 2 Temporal logics (and their semantics over Kripke structures) 3 Model checking of these structures

More information

ON THE NUMBER OF PRIME IMPLICANTS. 1. Prime implicants related to the number of conjuncts

ON THE NUMBER OF PRIME IMPLICANTS. 1. Prime implicants related to the number of conjuncts Discrete Mathematics 24 (1978) 7-1 1. North- Holland Publishing Company ON THE NUMBER OF PRIME IMPLICANTS Ashok K. CHANDRA and George MARKOWSKY Computer Sciences Depamnent, IBM Thomas 1. Watson Research

More information

Equational Logic. Chapter Syntax Terms and Term Algebras

Equational Logic. Chapter Syntax Terms and Term Algebras Chapter 2 Equational Logic 2.1 Syntax 2.1.1 Terms and Term Algebras The natural logic of algebra is equational logic, whose propositions are universally quantified identities between terms built up from

More information

for Digital Systems Simplification of logic functions Tajana Simunic Rosing Sources: TSR, Katz, Boriello & Vahid

for Digital Systems Simplification of logic functions Tajana Simunic Rosing Sources: TSR, Katz, Boriello & Vahid SE140: omponents and Design Techniques for Digital Systems Simplification of logic functions Tajana Simunic Rosing 1 What we covered thus far: Number representations Where we are now inary, Octal, Hex,

More information

Week-I. Combinational Logic & Circuits

Week-I. Combinational Logic & Circuits Week-I Combinational Logic & Circuits Overview Binary logic operations and gates Switching algebra Algebraic Minimization Standard forms Karnaugh Map Minimization Other logic operators IC families and

More information

Boolean Algebra and Digital Logic

Boolean Algebra and Digital Logic All modern digital computers are dependent on circuits that implement Boolean functions. We shall discuss two classes of such circuits: Combinational and Sequential. The difference between the two types

More information

Quantified Synthesis of Reversible Logic

Quantified Synthesis of Reversible Logic Quantified Synthesis of Reversible Logic Robert Wille 1 Hoang M. Le 1 Gerhard W. Dueck 2 Daniel Große 1 1 Group for Computer Architecture (Prof. Dr. Rolf Drechsler) University of Bremen, 28359 Bremen,

More information

The Decomposition Tree for analyses of Boolean functions

The Decomposition Tree for analyses of Boolean functions Math. Struct. in Comp. Science (2008), vol. 18, pp. 11 26. c 2008 Cambridge University Press doi:10.1017/s096012950800666x Printed in the United Kingdom The Decomposition Tree for analyses of Boolean functions

More information

Diagram-based Formalisms for the Verication of. Reactive Systems. Anca Browne, Luca de Alfaro, Zohar Manna, Henny B. Sipma and Tomas E.

Diagram-based Formalisms for the Verication of. Reactive Systems. Anca Browne, Luca de Alfaro, Zohar Manna, Henny B. Sipma and Tomas E. In CADE-1 Workshop on Visual Reasoning, New Brunswick, NJ, July 1996. Diagram-based Formalisms for the Verication of Reactive Systems Anca Browne, Luca de Alfaro, Zohar Manna, Henny B. Sipma and Tomas

More information

COMPRESSED STATE SPACE REPRESENTATIONS - BINARY DECISION DIAGRAMS

COMPRESSED STATE SPACE REPRESENTATIONS - BINARY DECISION DIAGRAMS QUALITATIVE ANALYIS METHODS, OVERVIEW NET REDUCTION STRUCTURAL PROPERTIES COMPRESSED STATE SPACE REPRESENTATIONS - BINARY DECISION DIAGRAMS LINEAR PROGRAMMING place / transition invariants state equation

More information

EGFC: AN EXACT GLOBAL FAULT COLLAPSING TOOL FOR COMBINATIONAL CIRCUITS

EGFC: AN EXACT GLOBAL FAULT COLLAPSING TOOL FOR COMBINATIONAL CIRCUITS EGFC: AN EXACT GLOBAL FAULT COLLAPSING TOOL FOR COMBINATIONAL CIRCUITS Hussain Al-Asaad Department of Electrical & Computer Engineering University of California One Shields Avenue, Davis, CA 95616-5294

More information

About the impossibility to prove P NP or P = NP and the pseudo-randomness in NP

About the impossibility to prove P NP or P = NP and the pseudo-randomness in NP About the impossibility to prove P NP or P = NP and the pseudo-randomness in NP Prof. Marcel Rémon 1 arxiv:0904.0698v3 [cs.cc] 24 Mar 2016 Abstract The relationship between the complexity classes P and

More information

Behavioural theories and the proof of. LIENS, C.N.R.S. U.R.A & Ecole Normale Superieure, 45 Rue d'ulm, F{75230 Paris Cedex 05, France

Behavioural theories and the proof of. LIENS, C.N.R.S. U.R.A & Ecole Normale Superieure, 45 Rue d'ulm, F{75230 Paris Cedex 05, France Behavioural theories and the proof of behavioural properties Michel Bidoit a and Rolf Hennicker b b a LIENS, C.N.R.S. U.R.A. 1327 & Ecole Normale Superieure, 45 Rue d'ulm, F{75230 Paris Cedex 05, France

More information

Boolean Algebra CHAPTER 15

Boolean Algebra CHAPTER 15 CHAPTER 15 Boolean Algebra 15.1 INTRODUCTION Both sets and propositions satisfy similar laws, which are listed in Tables 1-1 and 4-1 (in Chapters 1 and 4, respectively). These laws are used to define an

More information

Multi-Level Logic Optimization. Technology Independent. Thanks to R. Rudell, S. Malik, R. Rutenbar. University of California, Berkeley, CA

Multi-Level Logic Optimization. Technology Independent. Thanks to R. Rudell, S. Malik, R. Rutenbar. University of California, Berkeley, CA Technology Independent Multi-Level Logic Optimization Prof. Kurt Keutzer Prof. Sanjit Seshia EECS University of California, Berkeley, CA Thanks to R. Rudell, S. Malik, R. Rutenbar 1 Logic Optimization

More information

Boolean Algebra and Propositional Logic

Boolean Algebra and Propositional Logic Boolean Algebra and Propositional Logic Takahiro Kato September 10, 2015 ABSTRACT. This article provides yet another characterization of Boolean algebras and, using this characterization, establishes a

More information

Logic Synthesis and Verification. Two-Level Logic Minimization (1/2) Quine-McCluskey Procedure. Complexity

Logic Synthesis and Verification. Two-Level Logic Minimization (1/2) Quine-McCluskey Procedure. Complexity Logic Synthesis an Verification Two-Level Logic Minimization (/2) Jie-Hong Rolan Jiang 江介宏 Department of Electrical Engineering National Taiwan University Fall 24 Reaing: Logic Synthesis in a Nutshell

More information

Chapter 2 Combinational Logic Circuits

Chapter 2 Combinational Logic Circuits Logic and Computer Design Fundamentals Chapter 2 Combinational Logic Circuits Part 1 Gate Circuits and Boolean Equations Charles Kime & Thomas Kaminski 2008 Pearson Education, Inc. Overview Part 1 Gate

More information

INDEPENDENCE OF THE CONTINUUM HYPOTHESIS

INDEPENDENCE OF THE CONTINUUM HYPOTHESIS INDEPENDENCE OF THE CONTINUUM HYPOTHESIS CAPSTONE MATT LUTHER 1 INDEPENDENCE OF THE CONTINUUM HYPOTHESIS 2 1. Introduction This paper will summarize many of the ideas from logic and set theory that are

More information

Synthesis by Spectral Translation Using Boolean Decision Diagrams

Synthesis by Spectral Translation Using Boolean Decision Diagrams Synthesis by Spectral Translation Using Boolean Decision Diagrams Jeffery P. Hansen Masatoshi Sekine Toshiba ULSI Research Laboratories 1, Komukai Toshiba-cho, Saiwai-ku, Kawasaki 10, Japan Abstract Many

More information

Lecture 2: Symbolic Model Checking With SAT

Lecture 2: Symbolic Model Checking With SAT Lecture 2: Symbolic Model Checking With SAT Edmund M. Clarke, Jr. School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 (Joint work over several years with: A. Biere, A. Cimatti, Y.

More information

A Method for Generating All the Prime Implicants of Binary CNF Formulas

A Method for Generating All the Prime Implicants of Binary CNF Formulas A Method for Generating All the Prime Implicants of Binary CNF Formulas Yakoub Salhi CRIL-CNRS, Université d Artois, F-62307 Lens Cedex, France salhi@cril.fr Abstract In this paper, we propose a method

More information

CS357: CTL Model Checking (two lectures worth) David Dill

CS357: CTL Model Checking (two lectures worth) David Dill CS357: CTL Model Checking (two lectures worth) David Dill 1 CTL CTL = Computation Tree Logic It is a propositional temporal logic temporal logic extended to properties of events over time. CTL is a branching

More information

Exhaustive Classication of Finite Classical Probability Spaces with Regard to the Notion of Causal Up-to-n-closedness

Exhaustive Classication of Finite Classical Probability Spaces with Regard to the Notion of Causal Up-to-n-closedness Exhaustive Classication of Finite Classical Probability Spaces with Regard to the Notion of Causal Up-to-n-closedness Michaª Marczyk, Leszek Wro«ski Jagiellonian University, Kraków 16 June 2009 Abstract

More information

E&CE 223 Digital Circuits & Systems. Lecture Transparencies (Boolean Algebra & Logic Gates) M. Sachdev

E&CE 223 Digital Circuits & Systems. Lecture Transparencies (Boolean Algebra & Logic Gates) M. Sachdev E&CE 223 Digital Circuits & Systems Lecture Transparencies (Boolean Algebra & Logic Gates) M. Sachdev 4 of 92 Section 2: Boolean Algebra & Logic Gates Major topics Boolean algebra NAND & NOR gates Boolean

More information

From Binary Logic Functions to Fuzzy Logic Functions

From Binary Logic Functions to Fuzzy Logic Functions Applied Mathematical Sciences, Vol. 7, 2013, no. 103, 5129-5138 HIKARI Ltd, www.m-hikari.com http://dx.doi.org/10.12988/ams.2013.36317 From Binary Logic Functions to Fuzzy Logic Functions Omar Salazar,

More information

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams. Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams. Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams Sanjit A. Seshia EECS, UC Berkeley Acknowledgments: Lintao Zhang Announcement Project proposals due

More information

Computability and Complexity

Computability and Complexity Computability and Complexity Non-determinism, Regular Expressions CAS 705 Ryszard Janicki Department of Computing and Software McMaster University Hamilton, Ontario, Canada janicki@mcmaster.ca Ryszard

More information

L4: Karnaugh diagrams, two-, and multi-level minimization. Elena Dubrova KTH / ICT / ES

L4: Karnaugh diagrams, two-, and multi-level minimization. Elena Dubrova KTH / ICT / ES L4: Karnaugh diagrams, two-, and multi-level minimization Elena Dubrova KTH / ICT / ES dubrova@kth.se Combinatorial system a(t) not(a(t)) A combinatorial system has no memory - its output depends therefore

More information

Decomposing Bent Functions

Decomposing Bent Functions 2004 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 49, NO. 8, AUGUST 2003 Decomposing Bent Functions Anne Canteaut and Pascale Charpin Abstract In a recent paper [1], it is shown that the restrictions

More information

Binary decision diagrams for security protocols

Binary decision diagrams for security protocols for Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska 4 czerwca 2012 roku 1 2 3 4 Infrastructure with Intruder Threat template 5 References BDD definition Definition An BDD G

More information

Unni Narayanan Hon Wai Leong Ki-Seok Chung C. L. Liu. University of Illinois National University of Singapore University of Illinois

Unni Narayanan Hon Wai Leong Ki-Seok Chung C. L. Liu. University of Illinois National University of Singapore University of Illinois Low Power Multiplexer Decomposition Unni Narayanan Hon Wai Leong Ki-eok Chung C. L. Liu Dept. of Computer cience Dept. of Information and Computer cience Dept. of Computer cience University of Illinois

More information

Nested Epistemic Logic Programs

Nested Epistemic Logic Programs Nested Epistemic Logic Programs Kewen Wang 1 and Yan Zhang 2 1 Griffith University, Australia k.wang@griffith.edu.au 2 University of Western Sydney yan@cit.uws.edu.au Abstract. Nested logic programs and

More information