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