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