boolean-logickarnaugh-map

How do i simplify f = x'yz + xy'z + xyz'?


I am working on simplifying the expression f = x'yz + xy'z + xyz' + xyz. Actually, it may not be this expression. The question is: simplify the boolean expression for a voting system, the system being: three people vote on multiple candidates, and two or more people should agree(true) on the candidate in order to pass. So I think the answer would be xy + yz + xz, but I can't figure out the process between. Can anyone explain?

enter image description here


Solution

  • From the idempotent/identity law, we have x + x = x, and so xyz + xyz = xyz. Applying this principle, we can rewrite your expression as:

     f = x'yz + xy'z + xyz' + xyz
    => f = x'yz + xy'z + xyz' + xyz + xyz + xyz --OR with xyz twice without affecting the value
    => f = x'yz + xyz + xy'z + xyz + xyz' + xyz --Rearrange
    => f = yz (x + x') + xz (y + y') + xy(z' + z) --Group
    => f = yz + xz + xy --Since x+x' = 1
    

    That said, as the diagram clearly shows, you can simply take AND together each pair of inputs, and OR them together to get the same result. By doing this, you ensure that:

    The advantage of expressing it in this way is that you can just focus on each pair of inputs at one time, without worrying about the impact of the third one.