# Boolean Functions & Truth Tables

#### Tuesday 04/09, 2001

[Up] [Previous Lecture] [Next Lecture]

Assigned Reading in Murdocca & Heuring:  A.5-A.9

Assigned:  HW3

Due:

Topics Covered:

• Sum-Of-Products (SOP) and Product-Of-Sums (POS) circuits for the MAJ3 function.
• Truth tables, Boolean formulas and Combinational circuits are equivalent in the sense that they represent the same set of functions.
• Simplifying formulas and circuits using algebraic techniques.
• In general, simplifying formulas is a hard problem. There is no known fast algorithm that can determine if a Boolean formula is unsatisfiable (all inputs result in the formula evaluating to 0). The existence of such an algorithm would solve the famous P versus NP problem (which is open and is IMHO the most important problem in computer science) and would imply, among other things, a fast algorithm for cracking encryption schemes like RSA.
• Postulates and theorems of Boolean Algebra. (BTW, Associativity should be a postulate instead of a theorem.) In general, a Boolean Algebra is a mathematical structure with two operations + and *. The operations should be closed (a + b and a * b must be members of the underlying set), commutative, associative and distributive. In addition, unique identity elements 0 and 1 must exist and unique complements must exist. Notice that the definition of a Boolean Algebra does not make reference to the number of elements in the underlying set nor to an "addition table" for + and a "multiplication table" for *. Nevertheless, the theorems for Boolean Algebra (e.g., DeMorgan's Law) follow from the postulates.
• For Boolean Algebras over the two-element set {0,1} these postulates and theorems can simply be verified using truth tables.