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