Canonical Form

Once we know that all Boolean functions can be expressed as a sum of product terms, it will be meaningful to introduce the concept of canonical representation so that each function will have a unique canonical form.

Let (S,+, , , 0,1) be a Boolean algebra and x, y and z be any variables taking values in S, then

literals are individual variables or their complements, e.g. x, x', y, y'
product terms are expressions made of literals and the binary operation '''' although the symbol '''' is optional, e.g. x, x', x y'z, x y x'y z
Boolean expression is a sum of product terms, e.g. x + x' y (z + y')
standard product term of an expression is a product in which each variable appears in the product exactly once, e.g. xy' is a standard product of xy' + x + x'y', but is not a standard product of xy' + xyz because variable z is missing from the product.
a Boolean expression is canonical if it is a sum of distinct standard product terms, e.g. xy + x'y' is canonical, but xy + x'y + z is not canonical.
Two Boolean expressions are equivalent if they either
have the same truth table, or
can be transformed from one another through the use of the axioms B1 -- B5 in the previous lecture, and their induced properties such as the De Morgan's Laws, or
have the same canonical form.

Example

  1. Show Boolean expressions x and xy + xy' are equivalent.
    (a)
    By truth table

    (b)
    By properties of Boolean algebra

    (c)
    By canonical form