Exercise logic.propositional.dnf
Description
Proposition to DNF
Derivation
(p || (p /\ T /\ T /\ ~(p /\ ~~q))) /\ (q || (p /\ T /\ T /\ ~(p /\ ~~q))) /\ ((T /\ ~(p /\ T) /\ q /\ p) || (p /\ T /\ T /\ ~(p /\ ~~q)))
⇒ logic.propositional.absorporp /\ (q || (p /\ T /\ T /\ ~(p /\ ~~q))) /\ ((T /\ ~(p /\ T) /\ q /\ p) || (p /\ T /\ T /\ ~(p /\ ~~q)))
⇒ logic.propositional.idempandp /\ (q || (p /\ T /\ ~(p /\ ~~q))) /\ ((T /\ ~(p /\ T) /\ q /\ p) || (p /\ T /\ T /\ ~(p /\ ~~q)))
⇒ logic.propositional.idempandp /\ (q || (p /\ T /\ ~(p /\ ~~q))) /\ ((T /\ ~(p /\ T) /\ q /\ p) || (p /\ T /\ ~(p /\ ~~q)))
⇒ logic.propositional.truezeroandp /\ (q || (p /\ ~(p /\ ~~q))) /\ ((T /\ ~(p /\ T) /\ q /\ p) || (p /\ T /\ ~(p /\ ~~q)))
⇒ logic.propositional.notnotp /\ (q || (p /\ ~(p /\ q))) /\ ((T /\ ~(p /\ T) /\ q /\ p) || (p /\ T /\ ~(p /\ ~~q)))
⇒ logic.propositional.truezeroandp /\ (q || (p /\ ~(p /\ q))) /\ ((~(p /\ T) /\ q /\ p) || (p /\ T /\ ~(p /\ ~~q)))
⇒ logic.propositional.truezeroandp /\ (q || (p /\ ~(p /\ q))) /\ ((~p /\ q /\ p) || (p /\ T /\ ~(p /\ ~~q)))
⇒ logic.propositional.truezeroandp /\ (q || (p /\ ~(p /\ q))) /\ ((~p /\ q /\ p) || (p /\ ~(p /\ ~~q)))
⇒ logic.propositional.notnotp /\ (q || (p /\ ~(p /\ q))) /\ ((~p /\ q /\ p) || (p /\ ~(p /\ q)))
⇒ logic.propositional.demorganandp /\ (q || (p /\ (~p || ~q))) /\ ((~p /\ q /\ p) || (p /\ ~(p /\ q)))
⇒ logic.propositional.andoverorp /\ (q || (p /\ ~p) || (p /\ ~q)) /\ ((~p /\ q /\ p) || (p /\ ~(p /\ q)))
⇒ logic.propositional.complandp /\ (q || F || (p /\ ~q)) /\ ((~p /\ q /\ p) || (p /\ ~(p /\ q)))
⇒ logic.propositional.falsezeroorp /\ (q || (p /\ ~q)) /\ ((~p /\ q /\ p) || (p /\ ~(p /\ q)))
⇒ logic.propositional.oroverandp /\ (q || p) /\ (q || ~q) /\ ((~p /\ q /\ p) || (p /\ ~(p /\ q)))
⇒ logic.propositional.absorpandp /\ (q || ~q) /\ ((~p /\ q /\ p) || (p /\ ~(p /\ q)))
⇒ logic.propositional.complorp /\ T /\ ((~p /\ q /\ p) || (p /\ ~(p /\ q)))
⇒ logic.propositional.truezeroandp /\ ((~p /\ q /\ p) || (p /\ ~(p /\ q)))
⇒ logic.propositional.demorganandp /\ ((~p /\ q /\ p) || (p /\ (~p || ~q)))
⇒ logic.propositional.andoverorp /\ ((~p /\ q /\ p) || (p /\ ~p) || (p /\ ~q))
⇒ logic.propositional.complandp /\ ((~p /\ q /\ p) || F || (p /\ ~q))
⇒ logic.propositional.falsezeroorp /\ ((~p /\ q /\ p) || (p /\ ~q))
⇒ logic.propositional.andoveror(p /\ ~p /\ q /\ p) || (p /\ p /\ ~q)
⇒ logic.propositional.compland(F /\ q /\ p) || (p /\ p /\ ~q)
⇒ logic.propositional.falsezeroandF || (p /\ p /\ ~q)
⇒ logic.propositional.falsezeroorp /\ p /\ ~q
⇒ logic.propositional.idempandp /\ ~q