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