An application of linear programming to the minimization of Boolean functions
- 1 January 1961
- proceedings article
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
A method is described for converting a boolean expression to a disjunctive normal equivalent (two level OR-AND circuit) which is minimal under some criterion presented in advance, as for example, the number of clauses or the number of literals (equivalently, the number of OR's or the number of OR's and AND's together). The method employs the integer linear programming algorithm developed by R. E. Gomory and takes advantage of a new technique for obtaining the required integer matrix. From a boolean function Φ, A = |aij| is defined by setting aij = 1 if prime implicant j covers canonical term i and aij = 0 otherwise. Then, for example, minimization of the expression Σjxj, subject to restrictions Σjaijxj ≥ 1 and xj a non-negative integer, is equivalent to obtaining a normal form for Φ with a minimal number of clauses. In practice A can be advantageously reduced in size prior to the integer programming. This reduced matrix is obtainable fairly directly from an expression for Φ by a succession of simple operations. The method has been programmed for the IBM 704 and tested on several hundred problems. In speed and range of problems solvable, it compares favorably with minimization techniques presently in use.Keywords
This publication has 6 references indexed in Scilit:
- The problem of simplifying logical expressionsThe Journal of Symbolic Logic, 1959
- Algebraic Topological Methods for the Synthesis of Switching Systems. ITransactions of the American Mathematical Society, 1958
- Irredundant Disjunctive and Conjunctive Forms of a Boolean FunctionIBM Journal of Research and Development, 1957
- Minimization of Boolean Functions*Bell System Technical Journal, 1956
- A Way to Simplify Truth FunctionsThe American Mathematical Monthly, 1955
- The Problem of Simplifying Truth FunctionsThe American Mathematical Monthly, 1952