(~ABC)+(A ~ B ~ C) + (AB ~ C) + (ABC)

I am trying to solve this Formula:

(~ABC)+(A~B~C)+(AB~C)+(ABC)
(~ABC)+(A~B~C)+AB
(~ABC)+A(B+~B~C)

But I don't know how to get out of this last part. I know the end result has to be a~c + bc. But I don't know how to get into it.

Author: Victor Stafusa, 2018-10-20

2 answers

Let's start with this:

(~ABC)+(A~B~C)+(AB~C)+(ABC)

Let's reorder the expressions:

(~ABC)+(ABC)+(A~B~C)+(AB~C)

Let's put BC and A~C in evidence:

BC(~A+A)+(A~C)(~B+B)

Every expression in the form X+~X is true. Logo:

BC+(A~C)

Note that its original expression (~ABC)+(A~B~C)+(AB~C)+(ABC) has an interesting property: it says exactly what are the four rows of the truth table in which the expression is true, since each subexpression in parentheses has all three variables A, B and C exactly once each.

 7
Author: Victor Stafusa, 2018-10-20 06:08:16

Victor's answer is very good, but this solution I will give you is a direct continuation of yours.

Basic properties of Boolean algebra used.

   A ( B + C) = AB + AC   (Distributiva AND)
   A + ( BC) = (A+B)(A+C) (Distributiva OR) /*Cuidado com essa propriedade,
                                              ela não existe na aritmética
                                              convencional*/

   AB = BA                (Comutativa AND)
   A ^ 1 = A              (Elemento Neutro AND)
   A + B = B + B          (Comutativa OR)
   A + 1 = 1              (Elemento Máximo)
   A + ~A = 1             (Involução)

All these properties can be proved using a truth table.

Step by step:

(~ABC) + (A~B~C) + (AB~C) + (ABC)
(~ABC) + (A~B~C) + AB                   
(~ABC) + A(B+ ~B~C)    (Seu Checkpoint)  

To get out of this point it is necessary to develop B +~B ~ C, I will develop it separately in (1).

(~ABC) + A(B+ ~B~C)    /* Por (1) */
(~ABC) + A(B + ~C)     /* Distributiva AND */
(~ABC) + (AB) + (A~C)  /* Comutativa AND, irei colocar o B no inicio*/
(B~AC) + (BA) + (A~C)  /* Distributiva AND, "isolar" o B*/
B(~AC + A) + (A~C)

To get out of this step you need to develop ~AC + A, I will develop it separately in (2).

B(~AC + A) + (A~C)     /* Por (2) */   
B(A + C) + (A~C)       /* Distributiva AND*/
(BA) + (BC) + (A~C)

Notice that we are 1 term from the answer:

(BA) + (BC) + (A~C)   /* Colocaremos um elemento neutro no primeiro termo */

(BA) (C + ~C) + (BC) + (A~C)    /* Distributiva AND*/
Você pode notar que se desenvolvermos (C + ~C) temos 1 que é neutro no AND.    

(BAC) + (BA~C) + (BC) + (A~C)   /* Comutativa AND, deixarei em ordem alfabética*/
(ABC) + (AB~C) + (BC) + (A~C)   /* Comutativa OR, juntarei os termos semelhantes */
(ABC) + (BC) + (AB~C) + (A~C)   /* Distributiva AND, "isolar" os termos*/
BC(A + 1) + (A~C)(B + 1)        /* Elemento Máximo OR */
BC + A~C //  

Justification

(1) B + ~ B ~ C

B + ~B~C          /* Distributiva OR */
(B + ~B) (B + ~C) /* Elemento Máximo */
1 (B + ~C)        /* Elemento Neutro */
B + ~C

That is, B + ~ B~C = B + ~C. You can confirm that B + ~B~C B + ~C using a true table.

(2) ~AC + A

~AC + A              /* Comutativa OR       */
 A + ~AC             /* Distributiva OR     */
 (A + ~A) (A + C)    /* Elemento Máximo     */
 1 (A + C)           /* Elemento Neutro AND */
 A + C

I.e. ~AC + A = A + C.
If you compare (1) with (2) you will see that we essentially justify the same thing.

Remark I believe that at doing Boolean algebra exercises you can end up in two ways: (1) having an initial balcony, as Victor did, that quickly solves the problem or (2) doing it randomly and needing to use several properties to achieve the answer;)

 1
Author: Pedro, 2019-12-27 02:10:01