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