Exercise logic.propositional.dnf
Description
Proposition to DNF
Derivation
p /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ ~~(~q /\ p) /\ ~~~~(T /\ p /\ ~q) /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ~~(~q /\ p) /\ T
⇒ logic.propositional.truezeroandp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ ~~(~q /\ p) /\ ~~~~(T /\ p /\ ~q) /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ~~(~q /\ p)
⇒ logic.propositional.notnotp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ ~q /\ p /\ ~~~~(T /\ p /\ ~q) /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ~~(~q /\ p)
⇒ logic.propositional.idempandp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ p /\ ~~~~(T /\ p /\ ~q) /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ~~(~q /\ p)
⇒ logic.propositional.notnotp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ p /\ ~~(T /\ p /\ ~q) /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ~~(~q /\ p)
⇒ logic.propositional.notnotp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ p /\ T /\ p /\ ~q /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ~~(~q /\ p)
⇒ logic.propositional.idempandp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ p /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ~~(~q /\ p)
⇒ logic.propositional.truezeroandp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ p /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ~~(~q /\ p)
⇒ logic.propositional.idempandp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ~~(~q /\ p)
⇒ logic.propositional.notnotp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ p /\ ~q /\ ~~(p /\ ~q) /\ ~~(~q /\ p)
⇒ logic.propositional.notnotp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ p /\ ~q /\ p /\ ~q /\ ~~(~q /\ p)
⇒ logic.propositional.idempandp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ p /\ ~q /\ ~~(~q /\ p)
⇒ logic.propositional.notnotp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ p /\ ~q /\ ~q /\ p
⇒ logic.propositional.idempandp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ p /\ ~q /\ p
⇒ logic.propositional.idempandp /\ (q || (~r /\ ~(T /\ r))) /\ ~q /\ p
⇒ logic.propositional.truezeroandp /\ (q || (~r /\ ~r)) /\ ~q /\ p
⇒ logic.propositional.idempandp /\ (q || ~r) /\ ~q /\ p
⇒ logic.propositional.andoveror((p /\ q) || (p /\ ~r)) /\ ~q /\ p
⇒ logic.propositional.andoveror(p /\ q /\ ~q /\ p) || (p /\ ~r /\ ~q /\ p)
⇒ logic.propositional.compland(p /\ F /\ p) || (p /\ ~r /\ ~q /\ p)
⇒ logic.propositional.falsezeroand(p /\ F) || (p /\ ~r /\ ~q /\ p)
⇒ logic.propositional.falsezeroandF || (p /\ ~r /\ ~q /\ p)
⇒ logic.propositional.falsezeroorp /\ ~r /\ ~q /\ p