Simplifying Boolean expression A.B + A.B.C + A.B.C.D + A.B.C.D.E + A.B.C.D.E.F

Thread Starter

Jake_Edwards23

Joined Aug 3, 2015
4
How do you simplify Boolean expressions? This is one of the questions on the homework and i don't understand how do it? Any explanation will be appreciated.

A.B + A.B.C + A.B.C.D + A.B.C.D.E + A.B.C.D.E.F
 

Kermit2

Joined Feb 5, 2010
4,162
Without even knowing any BOOLEAN anything, you should be able to discern that A.B is common in all of the terms and can be reduced in some fashion.
 

WBahn

Joined Mar 31, 2012
29,976
Before you can simplify an algebraic expression that involved addition and multiplication, you need to first understand what the rules are governing what you can do with an algebraic expression that involves addition and multiplication. For example, the identity properties and the distributive properties and such.

The same is true with Boolean Algebra -- the first step is to become aware of the rules, known as identities, that govern what manipulations you can perform.

Give this a try:

http://www.allaboutcircuits.com/technical-articles/boolean-identities/
 

MrAl

Joined Jun 17, 2014
11,388
Is that was this is? Boolean Algebra?
Hi,

About Boolean Algebra...

Well that is one way to solve these problems, and it doesnt hurt to learn something about that anyway. Another way is to build a map and inspect it for changes to the output.

Boolean algebra offers more possibilities for simplification than regular algebra because there are certain simplifications that arise from having variables that can only take on values of 0 or 1. There are theorems that result from this simplified space, but you can read about them in the links that others here have graciously presented in the other posts.

For a quick example similar to yours only simpler:
C=A+A*B

We can read this as "output C equals A or A and B" but since the 'and' operator has higher priority than the "or" operator we have to read this as:
"output C equals A or (A and B)"

which means we have to do the (A and B) part first. Using 1 as TRUE, that means the output changes to 1 when we have either of two conditions:
1. A is 1.
2. (A and B) equals 1.

Now the simplification arises because the second condition requires A to be 1 if the output is ever going to be 1, so A must be 1 for the second condition to be possibly met, and the other requirement is that B is 1 also, so both A and B must be 1 for the second condition to be met (which makes the output 1).
But wait a minute, either of the two conditions will make the output 1, and the second case has A and B in it and it requires A to be 1, but what does that say about B? That says that ti doesnt matter what B is because since A has to be 1 in the second case that means the first case was already met, so we get a 1 output whenever A is 1 and that means we dont need B, so this reduces to:
C=A

You can test this in the original equation by going through all the possible states if you like. For two variables A and B we have 2^2=4 cases. For 6 variables (your original problem) we have 2^6=64 cases to test. On a digital computer that is a walk in the park on a cool day :)
As the number of variables gets larger however, it may be harder to check this way. For example, with 32 variables the number of combinations is 2^32 which is over 4 billion combinations. This would take up a lot of storage space and would be hard to inspect by eye anyway, so a programmed test would be in order (that doesnt take any storage or manual examination), if you wanted to do it that way.
 
Top