Logout

4.2.4 Convert Boolean expressions into simpler forms.

Teaching Notes:
A maximum of three inputs will be expected. Conversions may be done "algebraically" (using identities such as x + 1 = 1 and DeMorgan's laws) or by using Karnaugh maps, Venn diagrams or any other appropriate method.

Sample Question:

(d) Simplify the Boolean expression + ⋅B+ A⋅. [2 marks]

 

JSR Notes:

K-map Samples

Here are some more possible K-maps for you to look at, appreciate, and be able to quickly draw and use for conversions in a testing situation. Forgive my incorrect symbols for now;

Easy:

 
     
       

Situation "Verticle Pair". In such a case, A won't matter, since it can be either A or !A.
This reduces to * C.

 

 
     
       

Situation "Horizontal Pair". In such cases, either B or C won't matter. In this case, B doesn't matter, since it can be true or false. But the expression is true only when C is not true, along with A being not true.
This reduces to *


 
     
       

"Easy Combos". This first one combines a verticle pair and a horizontal pair.
This reduces to B * C   +   A *

Now you should refer to page 244 of the text book for other fairly easy and standard combinations of K-maps.

 

Harder:

 
     
       

The questions you ask yoursef to answer these questions can be "Does it matter what A is?" If so, wite down what it has to be, and then do the same for B and C.

So above, "Does it matter what A is?" Yes, it must be true, so write down A.
Next, does it matter what B is? Yes, it must be true, so write down * B.
Finally, does it matter what C is? No, C can be either true or false, and the overall function is true.

This therefore reduces to A * B.

 

 
     
       

C can be either true or false, but B must be false - along with A being true - for the overall expression to be true.
So this reduces to A *.

 

 
     
       

This reduces to * .

 

 
     
       

Situation "Horizontal Middle Pairs". This presents a bit more of a difficulty. But the thing to note is that this is an XOR situation. B or C must be true, but not both. In this case, along with A being true.
This reduces to A *( B C)

 

 
     
       

Situation "Horizontal Book-ends". Even a bit trickier if we are looking for a simplification, except that we can just do the inverse of the previous. This expression is true whenever A is true and Not B xor C.
This reduces to A *. [This one I'd better put in correct symbolic form, as best I can short of Photoshoping: ]

 

 
     
       

Note that ***ALL*** diagonal pairs in K-maps do not simplify. So this expression remains, in its simplest form:
* B * C   +   A * B *

 

 
     
       

Penultimately, here's a hybrid situation. Note that you can't use the diagonals, and there are no vertical pairs, but there are two horizontal pairs. So...
This reduces to A *    +    * B

 

And finally, here's the trickiest one in the book, from pge 246. How to reduce it?

 
     
       

Take the easy part first, the vertical pair, resulting in B*C. Then you can take the middle pair,which is B xor C. So..
This reduces to B*C + (A B C).

 

Proofs With Truth Tables

Any one of these we can double check with a couple of truth tables: one big one for the whole expression, and an easier one with our reduced expression. The one I will choose is a repeat of:

  *
     
       

The full expression is: A()A().
And we said it reduced to A . Let's see if the two truth tables are indeed equivalent.

Here goes the quite mamouth truth table:

A B C A() A() A()A()
0 0 0 1 1 0 1 0 0 0
0 0 1 1 0 1 0 0 0 0
0 1 0 0 1 0 0 0 0 0
0 1 1 1 0 0 0 0 0 0
1 0 0 1 1 0 1 0 1 1
1 0 1 1 0 1 0 1 0 1
1 1 0 0 1 0 0 0 0 0
1 1 1 0 0 0 0 0 0 0

And the easier one:

A B A
0 0 1 0
0 1 0 0
1 0 1 1
1 1 0 0

Do note the way we do the truth table for double-checking the same way as the first one, with the same eight rows. And they do evaluate to the same thing. Ta da.