Search code examples
booleanboolean-logicboolean-operations

How to simplify this propositional logic expression (DNF)?


I simplified the original problem up to this point

((P∧¬R)∨(¬Q∨R))∧((Q∧¬R)∨(¬P∨R))

, and I got stuck here. What would be the next step? Thanks for the help!!


Solution

  • I am solving it with you.

    Hint-1: ((P∧Q)∨R) = (PVR) ∧ (QVR)

    Hint-2: P ∧ True = P

    Hint-3: P V True = True

    Answer

    It would be true in the end. Check it once.

    Next step would be

    = [(P V (~Q V R)) ^ ( ~R V (~Q V R))]
     ^[(Q V (~P V R)) ^ ( ~R V (~P V R))]
    
    = (P V ~Q V R) ^ ( ~p V Q V R)
    = R V (  (P V ~Q) ^ ( Q V ~P))
    = R v ((  Q -> P ) ^ ( P -> Q))   
    = R V (P <-> Q)
    

    whenever R is True it is True. Else

      P  Q   P<->Q
    ------------------
       F F      T
       F T      F
       T F      F
       T T      T
    

    So it conforms to the truth table. Shown above by trincot.