[ENGN3213 Home]

Canonical Forms

There are two standard or canonical  ways of expressing boolean functions:

1.
Sum-of-products (SOP).  E.g.

2.
Product-of-sums (POS)   E.g.

These representations are useful for
• direct implementation, and
• starting logic function minimization.

We will focus on SOP.

Consider

where
• product terms A, ,
• minterms
A minterm is any ANDed term containing all of the varibles (perhaps complemented).

Let's look at the truth table which corresponds to this function:

 A B C f(A,B,C) m0 0 0 0 0 m1 0 0 1 1 m2 0 1 0 0 m3 0 1 1 1 m4 1 0 0 1 m5 1 0 1 1 m6 1 1 0 1 m7 1 1 1 1
(Check this!)

Each row of the truth table corresponds to one of the 2n = 8 possible minterms in n=3 variables.

E.g.

Actually, the truth table specifies the function as a sum of minterms:

This is called the canonical SOP representation   of the function f.

The minterm code   for n=3 is as follows:

 m0 0 0 0 m1 0 0 1 C m2 0 1 0 B m3 0 1 1 B C m4 1 0 0 A m5 1 0 1 A C m6 1 1 0 A B m7 1 1 1 A B C
Complemented variables correspond to 0 and uncomplemented variables correspond to 1.

The function can be put into canonical SOP form algebraically as follows:

(fill in the missing steps!) and so on combining we get as before.

Any Boolean function can be expressed in canonical SOP form.

[ENGN3213 Home]

ANU Engineering - ENGN3213