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