Professional Documents
Culture Documents
3 Boolean Algebra
In the previous section we looked at the eight logical operations: and, or, not,
exclusive-or, nand, nor, if-then and if-and-only-if. In this section we shall look at the
algebra of these operations. Recall, from the last section
For example, (p + q)(pq)' and pq' + p'q are logical expressions. Often we use a capital
letter, e.g. P or Q, to denote a logical expression. For example, we might write
P = (p + q)(pq)' or Q = pq' + p'q. In the following we shall just say expression for logical
expression if there is no danger of confusion with other types of exprssions such as
arithmetic expressions or mixed arithemetic/logical expressions.
Expressions are equivalent if they give the same result for every possible
combination of logical values for the logical variables appearing in them.
This occurs precisely if they have the same truth table. We write P = Q if P and Q are
equivalent. In the previous section we showed that (p + q)(pq)' = pq' + p'q.
Some of the equivalences that we showed in the previous section were the following.
The right equivalences in (1) and (2) are called the DeMorgan laws. Here is a list of
some useful identities in Boolean algebra. The DeMorgan identities on the right of (1)
and (2) are included as formulas (7) in this list.
1.3 - 1
(12) (p')' = p double negation law (or involution law)
One of the main reasons we are interested in equivalences is because they give us
alternative ways to design logic circuits.
For more applications of Boolean algebra to logic design, see Fundamentals of Logic
Design by Charles H. Roth, Jr. and published by Thomson.
Some of the equivalences in the list (4) (12) follow directly from the definition.
Consider pq = qp. The left side pq is 1 only if both p and q are 1. The right side qp is 1
only if both q and p are 1. However both p and q are 1 precisely if both q and p are 1. So
pq and qp are 1 under the same circumstances. So pq = qp.
The equivalences that are less obvious can be shown to be true using truth tables.
Example 3. Show the first distributive law is valid using a truth table.
p q r q+r p(q + r) pq pr pq + pr
At the right is the truth 0 0 0 0 0 0 0 0
table. Note that both 0 0 1 1 0 0 0 0
p(q + r) and pq + pr are 0 1 0 1 0 0 0 0
0 1 1 1 0 0 0 0
true precisely in the last 1 0 0 0 0 0 0 0
three rows, i.e. in the 1 0 1 1 1 0 1 1
following three cases. 1 1 0 1 1 1 0 1
1 1 1 1 1 1 1 1
1.3 - 2
p = 1, q = 0, r = 1
p = 1, q = 1, r = 0
p = 1, q = 1, r = 1
The equivalences (4) (11) are examples of dual pairs of equivalences. Every logical
expression has a dual expression that is obtained by interchanging and and or and 0 and
1. For example, the dual of the expression p(q + r) is p + qr. One way to get the dual of
an expression is to do the following three steps.
1. complement the expression
2. Use the DeMorgan laws
3. Replace each variable by its complement
For example, if we do that with p(q + r) we get the following.
p' + q'r' p + qr
If two expressions are equivalent then the duals of the two expressions are equivalent. So
in each of the equivalence (4) (11) the right equivalence follows from the left and vice-
versa.
Example 4. Go through this argument to prove the commutative law for "or" from the
commutative law for "and".
We start with the commutative law for and, i.e. pq = qp. Next we not both sides giving
(pq)' = (qp)'. Next we use the first DeMorgan law giving p' + q' = q' + p'. Since this
holds for all p and q we can replace p by p' and q by q', giving p'' + q'' = q'' + p''. Finally
we use (12) which gives p + q = q + p.
In this argument we used some properties of equivalences that we usually use without
taking note that we are actually using them. Here are three useful properties of
equivalences.
First, suppose P = Q and P and Q contain the logical variable p and R is another
expression. If we replace all occurrences of p in P and Q by R the resulting expressions
are equivalent. In symbols
1.3 - 3
Here R/PQ denotes the expression obtained by replacing some, but not necessarily all,
occurrences of P in R by Q. We used (14) to go from p'' + q'' = q'' + p'' to p + q = q + p.
Third, two expressions equivalent to the same expression are equivalent. In symbols
The commutative and associative laws are similar in structure to the commutative and
associative laws in regular algebra. So is the first of the two distributive laws in (6), i.e.
p(q + r) = pq + pr. However, the second, p + (qr) = (p + q)(p + r), is not true in regular
algebra. This is one thing that distinguishes Boolean algebra from regular algebra. The
reason p + (qr) = (p + q)(p + r) is called a distributive law is because it is obtained from
the first distributive law p(q + r) = pq + pr by interchanging + and ..
Problem 1. Make a truth table showing the second distributive law is valid. Show that
both sides are true in the last five rows if the first three columns are the same as the above
truth table.
Example 1. Suppose
(16) The Pistons win and either the Lions win or the Red Wings win
has the form p(q + r). The distributive law p(q + r) = pq + pr says that (16) is equivalent
to
(17) Either both the Pistons and Lions win or both the Pistons and Red Wings win
The pistons win, the Lions lose, the Red Wings win
The pistons win, the Lions win, the Red Wings lose
The pistons win, the Lions win, the Red Wings win
Example 2. On a certain river there are two sets of rapids. To go past the first set of
rapids boats must go through lock A. For the second set of rapids boats can choose
between lock B and lock C.
1.3 - 4
lock B
lock A lock C
To get by both sets of rapids boats must go through lock A and either lock B or lock C.
So to get by both sets of rapids the following statement must be true.
If we let
p = "Lock A is working"
q = "Lock B is working"
r = "Lock C is working"
then (18) has the form p(q + r). By the first distributive law this is equivalent to pq + pr.
Thus an alternative condition for a boat to get by both sets of is the following statement
be true.
Either both locks A and B are working or both locks A and C are working.
The algebra of exclusive-or. In many cases and, or and not are regarded as the most
basic of the logical operations and expressions involving the other operations are reduced
to expressions involving and, or and not. In which case the identities (4) (12) play an
important role. However, in some cases it is convenient to work with exclusive or. In
that case the following identities involving exclusive or are useful. Some of these are
similar to regular or while others are different.
(19) pq = qp commutative
(20) p (q r) = (p q) r associative
(21) p(q r) = pq pr distributive
(22) p0 = p zero is an identity
(23) pp = 0 p is its own inverse
(24) p 1 = p' exclusive or'ing with 1 inverts
(25) p p' = 1
1.3 - 5
(19), and (22) (25) can be proved using the definition of exclusive or. For example, the
commutative property is true since p q is 1 if exactly one of p and q is 1 and the same
is true for q p. Similarly, p 0 is 1 if exactly one of p and 0 is 1, i.e. if p is 1.
The associative and distributive properties can be shown to be true either using truth
tables or by expressing exclusive or in terms of and, or and not using p q = pq' + p'q
and using (4) (12).
p q r qr p (q r)
0 0 0 0 0
0 0 1 1 1
0 1 0 1 1
0 1 1 0 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 0 1
Now consider (p q) r. Using the commutative property for exclusive or, one has
(p q) r = r (p q). The right side has the form p (q r) but p, q and r are
replace by r, p and q respectively. From (26) it follows that r (p q) is 1 if an odd
number of r, p and q are 1. However, this occurs if an odd number of p, q and r are 1. So
p (q r) and (p q) r are both 1 if an odd number of p, q and r are 1. So they are
equivalent.
Remark 1. Because exclusive or satisfies the associative law we usually don't use
parentheses if we are exclusive or'ing more than two things. For example, we write
p q r for both p (q r) and (p q) r.
Let's show that this holds for n = 4. The proof of the general case is the same. Consider
p q r s. We want to show that
1.3 - 6
There are four cases. The first case is when p q r has an even number of 1's and
s = 0. Then p q r = 0 and p q r s = 0 and p q r s has an even number
of 1's. So (28) is true in the first case.
The second case is when p q r has an even number of 1's and s = 1. Then
p q r = 0 and p q r s = 1 and p q r s has an odd number of 1's. So
(28) is true in the second case.
The third case is when p q r has an odd number of 1's and s = 0. Then p q r = 1
and p q r s = 1 and p q r s has an odd number of 1's. So (28) is true in the
third case.
The last case is when p q r has an odd number of 1's and s = 1. Then p q r = 1
and p q r s = 0 and p q r s has an even number of 1's. So (28) is true in
this case.
Solution. We could do this with a truth table. However, let's do by expressing exclusive
or in terms of and, or and not and using properties (4) (12). In section (1.2) we showed
that p q = pq' + p'q. Using this one has
Using DeMorgan, some of the other properties (4) (12) one has
So p(q r) and pq pr are equivalent to the same thing and hence are equivalent.
1.3 - 7