# Boolean expression simplification

• Aug 31st 2010, 05:11 PM
Mattpd
Boolean expression simplification
I know this stuff should be way easy once I figure it out, but right now I am literally pulling out my hair trying to do so.(Headbang) The original expression is:

A`D` + A`BC + A` + AB` + A`BC + ABC`

I see that A and A` are common factors, so I pull them out:

A`(D` + BC + 1 + BC) + A(B` + BC`)

The fact that there is a "1" in the first parentheses makes everything in the parentheses 1, right?

A`(1) + A(B` + BC`)

X and 1 = X

A` + A(B` + BC`)

The only thing I can think to do is distribute the (B` + BC`) but I don't know if that is the right thing to do...

A` + A(B+B`)(B`+C`)

Now, (B+B`) is equal to 1. A and 1 is equal A.

A` + A(B`+C`)

Now I am stuck. I have no way to check my answer, but Wolfram says the simplified answer is:

A`+B`+C`

Can you help me finish/correct the above work?
• Sep 1st 2010, 01:50 AM
Ackbeet
You're ok up until the moment you distribute. I don't think the way you did that was valid. If you multiply back out again your factorization, you end up with

A(BB` + BC` + B`B` + B`C`) = A(0 + BC` + B` + B`C`) = A((B + B`)C` + B`) = A(C` + B`). This is not equal to A(B` + BC`). I don't think there's any way of simplifying any further. That is, A` + A(B` + BC`) is as far as you get.
• Sep 1st 2010, 08:18 AM
Isomorphism
Quote:

Originally Posted by Ackbeet
You're ok up until the moment you distribute. I don't think the way you did that was valid. If you multiply back out again your factorization, you end up with

A(BB` + BC` + B`B` + B`C`) = A(0 + BC` + B` + B`C`) = A((B + B`)C` + B`) = A(C` + B`). This is not equal to A(B` + BC`). I don't think there's any way of simplifying any further. That is, A` + A(B` + BC`) is as far as you get.

Actually B` + C` = B` + BC`.

To the original poster, use the identity A + A`B = A + B on your last step and you will get "Wolfram"'s identity.

Additionally, whenever you wonder if two expression F and G are equal, I encourage you to write the truth tables of F and G and check if they are equal.
(A truth table is just a fancy name for testing the functions on all possible values in the domain. In Boolean cases, we only have to try 1 and 0 for each variable and thus testing equality in Boolean logic for small number of variables is quite simple).
• Sep 1st 2010, 08:23 AM
Ackbeet
Quote:

Actually B' + C' = B' + BC'.
Hmm. You're right. Maybe it's been too long since I've done boolean simplifications!

Going off of Isomorphism's post, and your last step

A` + A(B`+C`),

if it's true that x' + xy' = x' + y', then can you see that you only have one step from

A` + A(B`+C`)

to

A` + B`+C`?