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