Exercise logic.propositional.dnf
Description
Proposition to DNF
Derivation
p /\ ((~~T /\ ~F /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ (~q || (~~T /\ ~F /\ ~q /\ p /\ T /\ ~q)) /\ ((~~T /\ ~F /\ T /\ q /\ ~q /\ T /\ p /\ ~~(p /\ ~q) /\ ~F /\ ~q) || (~r /\ ~~(p /\ ~q) /\ ~F))
⇒ logic.propositional.absorporp /\ ((~~T /\ ~F /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ((~~T /\ ~F /\ T /\ q /\ ~q /\ T /\ p /\ ~~(p /\ ~q) /\ ~F /\ ~q) || (~r /\ ~~(p /\ ~q) /\ ~F))
⇒ logic.propositional.complandp /\ ((~~T /\ ~F /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ((~~T /\ ~F /\ T /\ F /\ T /\ p /\ ~~(p /\ ~q) /\ ~F /\ ~q) || (~r /\ ~~(p /\ ~q) /\ ~F))
⇒ logic.propositional.falsezeroandp /\ ((~~T /\ ~F /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ((~~T /\ ~F /\ T /\ F) || (~r /\ ~~(p /\ ~q) /\ ~F))
⇒ logic.propositional.falsezeroandp /\ ((~~T /\ ~F /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ (F || (~r /\ ~~(p /\ ~q) /\ ~F))
⇒ logic.propositional.falsezeroorp /\ ((~~T /\ ~F /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ ~~(p /\ ~q) /\ ~F
⇒ logic.propositional.notfalsep /\ ((~~T /\ ~F /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ ~~(p /\ ~q) /\ T
⇒ logic.propositional.truezeroandp /\ ((~~T /\ ~F /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ ~~(p /\ ~q)
⇒ logic.propositional.notnotp /\ ((~~T /\ ~F /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~~T /\ ~F /\ ~q /\ ~~~~(p /\ ~q) /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.notfalsep /\ ((~~T /\ T /\ ~q /\ ~~~~(p /\ ~q) /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~~T /\ ~q /\ ~~~~(p /\ ~q) /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.notnotp /\ ((T /\ ~q /\ ~~~~(p /\ ~q) /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~q /\ ~~~~(p /\ ~q) /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.notnotp /\ ((~q /\ ~~(p /\ ~q) /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.notnotp /\ ((~q /\ p /\ ~q /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~q /\ p /\ ~q /\ ((p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~q /\ p /\ ~q /\ (p || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~q /\ p /\ ~q /\ (p || (~~T /\ ~F /\ ~(q || q) /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.idemporp /\ ((~q /\ p /\ ~q /\ (p || (~~T /\ ~F /\ ~q /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.notfalsep /\ ((~q /\ p /\ ~q /\ (p || (~~T /\ T /\ ~q /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~q /\ p /\ ~q /\ (p || (~~T /\ ~q /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.notnotp /\ ((~q /\ p /\ ~q /\ (p || (T /\ ~q /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~q /\ p /\ ~q /\ (p || (~q /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.absorpandp /\ ((~q /\ p /\ ~q /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~q /\ p /\ ~q /\ (q || (~~T /\ ~F /\ ~q /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.notfalsep /\ ((~q /\ p /\ ~q /\ (q || (~~T /\ T /\ ~q /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~q /\ p /\ ~q /\ (q || (~~T /\ ~q /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.notnotp /\ ((~q /\ p /\ ~q /\ (q || (T /\ ~q /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~q /\ p /\ ~q /\ (q || (~q /\ p /\ ~q))) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.absorpandp /\ ((~q /\ p /\ ~q) || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~q /\ p /\ ~q) || (~~T /\ ~F /\ ~q /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ T /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~q /\ p /\ ~q) || (~~T /\ ~F /\ ~q /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.notfalsep /\ ((~q /\ p /\ ~q) || (~~T /\ T /\ ~q /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~q /\ p /\ ~q) || (~~T /\ ~q /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.notnotp /\ ((~q /\ p /\ ~q) || (T /\ ~q /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.truezeroandp /\ ((~q /\ p /\ ~q) || (~q /\ p /\ ~q /\ ~~~~(p /\ ~q) /\ ((T /\ p /\ T) || (~~T /\ ~F /\ ~(q || q) /\ T /\ p /\ ~q)) /\ (q || (~~T /\ ~F /\ ~q /\ T /\ p /\ ~q)))) /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.absorporp /\ ~q /\ p /\ ~q /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.idempandp /\ ~q /\ ~q /\ ~r /\ p /\ ~q
⇒ logic.propositional.idempandp /\ ~q /\ ~r /\ p /\ ~q