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