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 s Orthodox Functions Experimental Results Conclusions Introduction Product (implicant) - The AND of variables or their complement (e.g. x x is a product of f x x x PI - prime implicant p of function f - f is for all assignments of values to the variables such that p is, and deleting any variable produces a product that does not have this property. (e.g. x x x is a PI of f.) Introduction SOP - sum-of-products expression is the OR of products. F x xx is an SOP. ISOP - irredundant SOP is an SOP in which removing any product or literal changes the function. F x x x is not an ISOP, because removing x x does not change the function; i.e. F x. Introduction MSOP minimum sum-of-products - ISOP of a function f with the fewest PIs. ( MSOP : f ) = number of product terms in an MSOP of f Introduction A function f (X,Y) has an OR bidecomposition if it can be expressed as f ( X, Y) h ( X ) h ( Y ) 5 6
Introduction A function f (X,Y) has an AND bidecomposition if it can be expressed as f ( X, Y) h( X) h ( Y ) Lemma. Let h (X ) and h (X ) be functions not identically, where X and X are disjoint. Then, (MSOP: h h) (MSOP: h) (MSOP: h) (MSOP : hh) (MSOP : h) (MSOP : h) It is tempting to believe that Lemma. is true with the two are replaced by. Consider the two statements separately. Proposition.: Let h (X ) and h (X ) be functions not identically, where X and X are disjoint. Then, (MSOP: h h) (MSOP: h) (MSOP: h) Proof: Please see our paper. Proof: We claim that an SOP formed as the OR of an MSOP of h with a MSOP of h is an MSOP of h h. On the contrary, assume there is an MSOP of h h that has fewer PIs than the MSOPs of h and h combined. Because X and X are disjoint, a a PI p of h h is an
Proof : implicant of h or h, but not both. But, p must be a PI, otherwise it is not a PI of h h. The OR of all PIs of h, must form a complete cover of h ; similarly, for the OR of all PIs of h. However, the fact that h h has fewer PIs than the sum of PIs from the MSOPs of h and h implies there Proof : is an SOP of h or h or both with fewer PIs than in the MSOPs for h and h, which is impossible. It must be that the OR of an MSOP of h with an MSOP of h is an MSOP of h h. Q.E.D. Proposition.: Let h (X ) and h (X ) be functions not identically, where X and X are disjoint. Then, (MSOP: hh ) (MSOP: h) (MSOP: h) However, Proposition. is not true. Voight-Wegener [] showed a 5- variable counterexample. We show a -variable counterexample in the Karnaugh Map on the next slide. We know there is no simpler counterexample. 5 6 x x x x Counterexample to Proposition. f x x x x x x x x x x x x x x x T. Sasao and J. T. Butler Consider f = f(x)f(y), where X and Y are disjoint. f Counterexample to Proposition. x xx xxx x x x xx xx xx y y y yyy y y y y y y y yy
Expanding f = f(x)f(y) by applying distributivity yields and an SOP with 5 PIs. f x x x x x x x x x xx x x xx y yy yy y yy y yy y y y y In this example, (MSOP: h h ) is only one smaller than (MSOP:h )(MSOP:h ). This suggests an interesting question. Are there functions where (MSOP: h h ) is much less than (MSOP:h )(MSOP:h ) Incompletely specified function x x x _ Orthodox Functions Independent set of minterms - Given f, let M(f) be the set of f s minterms. Then, a subset, MI(f) of M(f) is an independent set of minterms of f iff no PI of f covers more than one minterm in MI(f). Orthodox Functions A maximum independent set of minterms, MIS, of f is an independent set of minterms with the largest number minterms. Orthodox Functions Given f, (f) is the number of elements in the MIS of minterms of f. MISs are used in ESPRESSO to obtain a lower bound on the number of products in an MSOP.
Example x x x Two MISs for S {,} (x,x,x ) are. x x x PI s are shown as red circles. {,,} {,,} 5 Orthodox Functions A function f is orthodox if Number of minterms in an MIS of f. (f) = (MSOP:f). Number of products in an MSOP of f. 6 Example The function S x x {,} (x,x,x ) is orthodox. x An MIS of this function has elements (e.g.{,,}), and its MSOP has PIs. Orthodox Functions The significance of orthodox functions is due to: Theorem: Let h (X ) and h (X ) be orthodox, such that X and X are disjoint. Then, (MSOP : hh) (MSOP : h) (MSOP : h) Orthodox Functions Thus, if a function is orthodox and has an AND bi-decomposition, an MSOP for it can be obtained by minimizing the two subfunctions separately and combining them using distribution. Therefore, the complexity of minimization can be reduced. Orthodox Functions Any function in which the MSOP consists of essential PIs only is orthodox. That is, essential PIs cover minterms covered by no other PI, which form an MIS. Its cardinality is the number of PIs in the MSOP. Thus, the function is orthodox. 5
Orthodox Functions Functions that are orthodox.. Unate functions. Parity functions. Symmetric functions. All functions with or fewer variables Orthodox Functions Functions with 5 or more variables Number of Variables 5 6 Percent that are orthodox % 6 % % 66 % 6 % % Experimental Results How are orthodox functions distributed with respect to the number of true minterms We analyzed randomly chosen functions on n variables, for 5 n. The results are as follows. Experimental Results Percentage That Are Orthodox.... 6. 5...... n= n = n = n = n = n = n = n =5 n = n =6..5 5..5 5. 6.5 5..5. Percentage of Minterms That Are True Experimental Results To what extent are benchmark functions orthodox We determined which MCNC benchmark functions are orthodox. Interestingly, most are orthodox. See the tables on the next slides. 5 Experimental Results Benchmark Function 5xp sym apex b cps duke ex* Out. *Incompletely specified Ordx. Unate 5 * 6 6
Experimental Results Experimental Results Benchmark Function Out. Ordx. Unate Benchmark Function Out. Ordx. Unate inc misex misex misex misexc pdc* rd5 * rd rd apex spla t vg 6 6 *Incompletely specified *Incompletely specified Conclusions For functions of the form f = f f, applying distributivity to the MSOPs of f and f does not always produce an MSOP for f. We introduce a class of functions, called orthodox functions, where this DOES produce an MSOP Conclusions cont d We show that. all unate functions. all parity functions. all symmetric functions. all functions with or fewer variables 5. most MCNC benchmark functions 6. few random functions with many variables are orthodox. References. B. Voight and I. Wegener, ''A remark on minimal polynomials of Boolean functions,' CSL', nd Workshop on Computer Science Logic Proceedings, pp. -,. References. R. K. Brayton, C. T. McMullen, G. D. Hachtel, and A. L. Sangiovanni-Vincentelli, Logic Minimization Algorthims for VLSI Synthesis, Boston, MA, Kluwer Academic Pub.,.. R. S. Michalski and Z. Kulpa, A system of programs for the synthesis of switching circuits using the method of dispoint stars, Proc. of IFIP Congress, pp. 6-65, April.. W. J. Paul, '' Realizing Boolean functions on disjoint set of variables,' Theoretical Computer Science, pp. -6, 6.
References. R. L. Rudell and A. Sangiovanni-Vincentelli, ''Multiplevalued minimization for PLA optimization,'' IEEE Trans. Computer-Aided Design, vol. CAD-6, 5, pp. -, September. 5. T. Sasao and M. Matsuura, DECOMPOS: An integrated system for functional decomposition,'' International Workshop on Logic Synthesis, Lake Tahoe, pp. -, June. 6. B. Voight and I. Wegener, ''A remark on minimal polynomials of Boolean functions,' CSL', nd Workshop on Computer Science Logic Proceedings, pp. -,.