Exercise logic.propositional.dnf
Description
Proposition to DNF
Derivation
(((F /\ r) || ((q || ~~p) /\ (q || ~~p))) /\ F /\ r) || (((F /\ r) || ((q || ~~p) /\ (q || ~~p))) /\ q) || (((F /\ r) || ((q || ~~p) /\ (q || ~~p))) /\ ~(~(T /\ p) || ~p))
⇒ logic.propositional.absorpand(F /\ r) || (((F /\ r) || ((q || ~~p) /\ (q || ~~p))) /\ q) || (((F /\ r) || ((q || ~~p) /\ (q || ~~p))) /\ ~(~(T /\ p) || ~p))
⇒ logic.propositional.falsezeroandF || (((F /\ r) || ((q || ~~p) /\ (q || ~~p))) /\ q) || (((F /\ r) || ((q || ~~p) /\ (q || ~~p))) /\ ~(~(T /\ p) || ~p))
⇒ logic.propositional.falsezeroandF || ((F || ((q || ~~p) /\ (q || ~~p))) /\ q) || (((F /\ r) || ((q || ~~p) /\ (q || ~~p))) /\ ~(~(T /\ p) || ~p))
⇒ logic.propositional.falsezeroandF || ((F || ((q || ~~p) /\ (q || ~~p))) /\ q) || ((F || ((q || ~~p) /\ (q || ~~p))) /\ ~(~(T /\ p) || ~p))
⇒ logic.propositional.falsezeroor((F || ((q || ~~p) /\ (q || ~~p))) /\ q) || ((F || ((q || ~~p) /\ (q || ~~p))) /\ ~(~(T /\ p) || ~p))
⇒ logic.propositional.falsezeroor((q || ~~p) /\ (q || ~~p) /\ q) || ((F || ((q || ~~p) /\ (q || ~~p))) /\ ~(~(T /\ p) || ~p))
⇒ logic.propositional.absorpand((q || ~~p) /\ q) || ((F || ((q || ~~p) /\ (q || ~~p))) /\ ~(~(T /\ p) || ~p))
⇒ logic.propositional.absorpandq || ((F || ((q || ~~p) /\ (q || ~~p))) /\ ~(~(T /\ p) || ~p))
⇒ logic.propositional.falsezeroorq || ((q || ~~p) /\ (q || ~~p) /\ ~(~(T /\ p) || ~p))
⇒ logic.propositional.idempandq || ((q || ~~p) /\ ~(~(T /\ p) || ~p))
⇒ logic.propositional.notnotq || ((q || p) /\ ~(~(T /\ p) || ~p))
⇒ logic.propositional.truezeroandq || ((q || p) /\ ~(~p || ~p))
⇒ logic.propositional.idemporq || ((q || p) /\ ~~p)
⇒ logic.propositional.notnotq || ((q || p) /\ p)
⇒ logic.propositional.absorpandq || p