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