Exercise logic.propositional.dnf
Description
Proposition to DNF
Derivation
~~((~(~(q /\ ~q) /\ ~(p /\ ~q)) /\ T /\ q) || (~r /\ T /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q)) /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q))))
⇒ logic.propositional.notnot(~(~(q /\ ~q) /\ ~(p /\ ~q)) /\ T /\ q) || (~r /\ T /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q)) /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q)))
⇒ logic.propositional.idempand(~(~(q /\ ~q) /\ ~(p /\ ~q)) /\ T /\ q) || (~r /\ T /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q)))
⇒ logic.propositional.truezeroand(~(~(q /\ ~q) /\ ~(p /\ ~q)) /\ q) || (~r /\ T /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q)))
⇒ logic.propositional.compland(~(~F /\ ~(p /\ ~q)) /\ q) || (~r /\ T /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q)))
⇒ logic.propositional.notfalse(~(T /\ ~(p /\ ~q)) /\ q) || (~r /\ T /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q)))
⇒ logic.propositional.truezeroand(~~(p /\ ~q) /\ q) || (~r /\ T /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q)))
⇒ logic.propositional.notnot(p /\ ~q /\ q) || (~r /\ T /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q)))
⇒ logic.propositional.compland(p /\ F) || (~r /\ T /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q)))
⇒ logic.propositional.falsezeroandF || (~r /\ T /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q)))
⇒ logic.propositional.falsezeroor~r /\ T /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q))
⇒ logic.propositional.truezeroand~r /\ ~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q))
⇒ logic.propositional.idempand~r /\ ~(~(q /\ ~q) /\ ~(p /\ ~q))
⇒ logic.propositional.compland~r /\ ~(~F /\ ~(p /\ ~q))
⇒ logic.propositional.notfalse~r /\ ~(T /\ ~(p /\ ~q))
⇒ logic.propositional.truezeroand~r /\ ~~(p /\ ~q)
⇒ logic.propositional.notnot~r /\ p /\ ~q