Abstract
A task frequently encountered in digital circuit design is the solution of a two-valued Boolean equation of the form h(X, Y, Z) = 1, where h: B-2(k+m+n) -> B-2 and X, Y, and Z are binary vectors of lengths k, m, and n, representing inputs, intermediary values, and outputs, respectively. The resultant of the suppression of the variables Y from this equation could be written in the form g (X, Z) = 1 where g: B-2(k+n) -> B-2. Typically, one needs to solve for Z in terms of X, and hence it is unavoidable to resort to 'big' Boolean algebras which are finite (atomic) Boolean algebras larger than the two-valued Boolean algebra. This is done by reinterpreting the aforementioned g(X, Z) as g(Z): B(2)(n)k -> B(2)k, where B(2)k is the free Boolean algebra FB (X-1, X-2 ... X-k), which has K = 2(k) atoms, and 2(k) elemnets. This paper describes how to unify many digital specifications into a single Boolean equation, suppress unwanted intermediary variables Y, and solve the equation g(Z) = 1 for outputs Z (in terms of inputs X) in the absence of any information about Y. The paper uses a novel method for obtaining the parametric general solutions of the 'big' Boolean equation g(Z) = 1. The parameters used do not belong to B(2)k but they belong to the two-valued Boolean algebra B-2, also known as the switching algebra or propositional algebra. To achieve this, we have to use distinct independent parameters for each asserted atom in the Boole-Shannon expansion of g(Z). The concepts and methods introduced herein are demonsrated via several detailed examples, which cover the most prominent type among basic problems of digital circuit design.