# Arithmetic Boolean Expressions

• Shin-ichi Minato
Chapter
Part of the The Kluwer International Series in Engineering and Computer Science book series (SECS, volume 342)

## Abstract

Boolean expressions are sometimes used in the research and development of digital systems, but calculating Boolean expressions by hand is a cumbersome job, even when they have only a few variables. For example, the Boolean expressions $$\left( {a \wedge \bar{b}} \right) \vee \left( {\bar{a} \wedge \bar{c}} \right) \vee \left( {b \wedge c} \right),\left( {a \wedge \bar{b}} \right) \vee \left( {a \wedge c} \right) \wedge \left( {\bar{a} \wedge b} \right) \vee \left( {\bar{a} \wedge \bar{c}} \right),and\left( {a \wedge \bar{b}} \right) \vee \left( {\bar{a} \wedge b} \right) \vee \left( {b \wedge c} \right) \vee \left( {\bar{b} \wedge \bar{c}} \right)$$ represent the same function, but it is hard to verify their equivalence by hand. If they have more than five or six variables, we might as well give up. This problem motivated us to develop a Boolean expression manipulator (BEM)[MIY89], which is an interpreter that uses BDDs to calculate Boolean expressions. It enables us to check the equivalence and implications of Boolean expressions easily, and it helped us in developing VLSI design systems and solving combinatorial problems.