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