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