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