Boolean logic - simplifying sum of products

803 views Asked by At

I've got a question that asks to synthesise the simplest possible sum of products expression for a given function. Basically the function is 1 if AB == CD, and 0 otherwise, which works out like this:

(!A && !B && !C && !D) || (!A && B && !C && D) || (A && !B && C && !D) || (A && B && C && D)

None of the terms differ by only one bit, so I can't see a way to group them together and simplify them that way. I've drawn up a Karnaugh map as below, but that doesn't seem to help, as I can't group more than one 1 together.

\ AB 00 01  11  10
CD +---+---+---+---+
00 | 1 | 0 | 0 | 0 |
   +---+---+---+---+
01 | 0 | 1 | 0 | 0 |
   +---+---+---+---+
11 | 0 | 0 | 1 | 0 |
   +---+---+---+---+
10 | 0 | 0 | 0 | 1 |
   +---+---+---+---+

So my question is, is the expression above already the simplest possible sum of products expression?

1

There are 1 answers

2
hcarver On

I think your Karnaugh map is equivalent to: ((A && C) || (!A && !C)) && ((B && D) || (!B && !D))

That would be simpler, I think.