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