Lecture #3 – Boolean Algebra

 

·         Basic Boolean Operators (AND, OR, NOT)

 

S = A + B        Represents A or B

 

S = A · B         Represents A and B

 

S = A´             Represents the complement of A

S =

 

 

            OR Operation

 

A

B

 A + B

0

0

0

0

1

1

1

0

1

1

1

1

 

 

            AND Operation

 

A

B

 A · B

0

0

0

0

1

0

1

0

0

1

1

1

 

 

            NOT Operation

 

 A

 

 0

  1

 1

  0

 

 

·         Order of Operation

 

Use the following order when evaluating complex Boolean equations.

 

Parenthesis grouping

NOT operations

AND operations

OR operations

 

 

Example:    Z = AB´ + A´C + A´B´C

                   Z =

 

Given A = 0, B = 1, C = 1, what is Z?

 

 

First insert implied parenthesis and substitute values:

 

                  Z = (0 · 1´) + (0´ · 1) + (0´ · 1´ · 1)

 

Next perform NOT operations:

 

                  Z = (0 · 0) + (1 · 1) + (1 · 0 · 1)

 

Evaluate AND operations:

 

                  Z = (0) + (1) + (0)

 

Evaluate OR operations:

 

                  Z = 1

 

 

·         Truth Tables

 

By creating a table of all possible inputs, and calculating the outputs, we can create a Truth Table that fully describes the Boolean equation.

 

                  Z = AB´ + A´C + A´B´C

 

 

A

B

C

AB´

A´C

A´B´C

Z

0

0

0

1

1

  0

  0

    0

0

0

0

1

1

1

  0

  1

    1

1

0

1

0

1

0

  0

  0

    0

0

0

1

1

1

0

  0

  1

    0

1

1

0

0

0

1

  1

  0

    0

1

1

0

1

0

1

  1

  0

    0

1

1

1

0

0

0

  0

  0

    0

0

1

1

1

0

0

  0

  0

    0

0

 

 

 

 

 

·         Boolean Function Types

 

We call an equation that is in the form Z = AB + BC + DEF as being in the Sum of Products form or SOP.

 

 

We call an equation that is in the form Z = (A + B)(B + C)(D + E + F) as being in the Product of Sums form or POS.

 

It is quite possible to have an equation that is neither SOP or POS, such as Z = A(B + C)

 

ANY valid Boolean equation can be converted into both the SOP and POS form.  The simplest method is first to derive the truth table.

 

Example - Give the following truth table lets create the SOP and POS equation:

 

 

A

B

C

Z

0

0

0

0

0

0

1

1

0

1

0

0

0

1

1

1

1

0

0

1

1

0

1

1

1

1

0

0

1

1

1

0

 

To create an SOP equation from the truth table:

 

1.      Generate a product term for each row where the results are 1.

2.      In each product term, consider the variable as complemented if 0 and uncomplemented if 1.

 

In this case:

 

            Z = A´B´C + A´BC + AB´C´ + AB´C

 

To create a POS equation from the truth table:

 

1.      Generate a product term for each row where the results are 0.

2.      In each product term, consider the variable as complemented if 1 and uncomplemented if 0.

 

In this case:

 

            Z = (A + B + C) (A + B´ + C) (A´ + B´ + C) (A´ + B´ + C´)

·         Canonical Form

 

An equation that is derived from the truth table, either POS or SOP, is said to be in canonical form.  Every term should have one of every input to be considered canonical. 

 

The two equations in POS and SOP form above are canonical, but the original equation for Z is NOT canonical.

 

It should now be obvious that there are many equivalent Boolean equations.  Some are more complex than others.

 

·         Minterms and Maxterms

 

For an equation in canonical SOP and POS, the Boolean function can be expressed as Minterms and Maxterms respectively.  This is simply a short-hand for the complete truth table.

 

 

            Z = A´B´C + A´BC + AB´C´ + AB´C

Minterms    0  0  1     0 1 1      1 0 0       1 0 1

 

= Σm (1, 3, 4, 5)

 

 

            Z = (A + B + C) (A + B´ + C) (A´ + B´ + C) (A´ + B´ + C´)

      Maxterm       0  0   0           0  1  0              1  1  0             1  1  1

 

      = ПM (0, 2, 6, 7)

 

The union of the Minterms and Maxterms should cover all combinations of input values.

 

·         Switching Theory

 

Since there are so many Boolean equations that produce the same truth table (and are therefore equivalent), there must be some way to convert from one form to another.

 

Postulate

x + 0 = x

x · 1 = x

Postulate

x + x´ = 1

x · x´ = 0

Theorem

x + x = x

x · x = x

Theorem

x + 1 = 1

x · 0 = 0

Theorem, involution

(x´)´ = x

 

Postulate, commutative

x + y = y + x

xy = yx

Theorem, associative

x + (y + z) = (x + y) + z

x(yz) = (xy)z

Postulate, distributive

x(y + z) = xy + xy

x + yz = (x + y)(x + z)

Theorem, DeMorgan

(x + y)´ = x´y´

(xy)´ = x´ + y´

Theorem, absorption

x + xy = x

x(x + y) = x