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