Negation Trees: A Unified Approach to Boolean Function Complementation

Boolean function complementation is a basic operation of Boolean algebra. For functions given in SOP form, the complementation methods include the DeMorgan's Law, sharp, disjoint sharp, unate complementation, recursive, and Sasao's method. This paper accomplishes three purposes: (1) It exposes an underlying unification of the existing complementation algorithms. It is proven that (a) unate-complementation and sharp are the same as the DeMorgan Law algorithm; (b) Sasao's algorithm is the same as disjoint sharp; (c) disjoint sharp is a special case of the recursive method. (2) It proposes negation trees for the representation of functions and their complements. (3) It gives faster algorithms for finding complements of functions in SOP form based on negation trees.

[1]  Robert K. Brayton,et al.  Logic Minimization Algorithms for VLSI Synthesis , 1984, The Kluwer International Series in Engineering and Computer Science.

[2]  J. Paul Roth,et al.  Computer Logic Testing And Verification , 1980 .

[3]  Daniel L. Ostapko,et al.  MINI: A Heuristic Approach for Logic Minimization , 1974, IBM J. Res. Dev..

[4]  Tsutomu Sasao An Algorithm to Derive the Complement of a Binary Function with Multiple-Valued Inputs , 1985, IEEE Transactions on Computers.

[5]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.