Exercise logic.propositional.cnf

Description
Proposition to CNF

Rules for logic.propositional.cnf

Rule nameArgsUsedSiblingsRewrite rule
andoveror.inv0nologic.propositional.distribution(p ∧ q) ∨ (p ∧ r)   ⇒   p ∧ (q ∨ r)
(p ∧ r) ∨ (q ∧ r)   ⇒   (p ∨ q) ∧ r
compland.sort0yeslogic.propositional.commutativity
complor.sort0yeslogic.propositional.commutativity
defequiv.inv0nologic.propositional.equivalence(p ∧ q) ∨ ((¬p) ∧ (¬q))   ⇒   p ↔ q
defimpl.inv0nologic.propositional.implication(¬p) ∨ q   ⇒   p → q
falsezeroor.inv0nologic.propositional.falsedisjunctionp   ⇒   F ∨ p
p   ⇒   p ∨ F
idempand.inv0nologic.propositional.idempotencyp   ⇒   p ∧ p
idempor.inv0nologic.propositional.idempotencyp   ⇒   p ∨ p
logic.propositional.absorpand0yeslogic.propositional.absorptionp ∧ (p ∨ q)   ⇒   p
p ∧ (q ∨ p)   ⇒   p
(p ∨ q) ∧ p   ⇒   p
(q ∨ p) ∧ p   ⇒   p
logic.propositional.absorpor0yeslogic.propositional.absorptionp ∨ (p ∧ q)   ⇒   p
p ∨ (q ∧ p)   ⇒   p
(p ∧ q) ∨ p   ⇒   p
(q ∧ p) ∨ p   ⇒   p
logic.propositional.andoveror0yeslogic.propositional.distributionp ∧ (q ∨ r)   ⇒   (p ∧ q) ∨ (p ∧ r)
(p ∨ q) ∧ r   ⇒   (p ∧ r) ∨ (q ∧ r)
logic.propositional.assocand0nologic.propositional.associativity(p ∧ q) ∧ r   ⇒   p ∧ (q ∧ r)
logic.propositional.assocor0nologic.propositional.associativity(p ∨ q) ∨ r   ⇒   p ∨ (q ∨ r)
logic.propositional.command0nologic.propositional.commutativityp ∧ q   ⇒   q ∧ p
logic.propositional.commor0nologic.propositional.commutativityp ∨ q   ⇒   q ∨ p
logic.propositional.compland0yeslogic.propositional.falsecomplementp ∧ (¬p)   ⇒   F
(¬p) ∧ p   ⇒   F
logic.propositional.complor0yeslogic.propositional.truecomplementp ∨ (¬p)   ⇒   T
(¬p) ∨ p   ⇒   T
logic.propositional.defequiv0yeslogic.propositional.equivalencep ↔ q   ⇒   (p ∧ q) ∨ ((¬p) ∧ (¬q))
logic.propositional.defimpl0yeslogic.propositional.implicationp → q   ⇒   (¬p) ∨ q
logic.propositional.demorganand0yeslogic.propositional.demorgan¬(p ∧ q)   ⇒   (¬p) ∨ (¬q)
logic.propositional.demorganor0yeslogic.propositional.demorgan¬(p ∨ q)   ⇒   (¬p) ∧ (¬q)
logic.propositional.falsezeroand0yeslogic.propositional.falseconjunctionF ∧ p   ⇒   F
p ∧ F   ⇒   F
logic.propositional.falsezeroor0yeslogic.propositional.falsedisjunctionF ∨ p   ⇒   p
p ∨ F   ⇒   p
logic.propositional.genandoveror0nologic.propositional.distribution
logic.propositional.gendemorganand0yeslogic.propositional.demorgan
logic.propositional.gendemorganor0yeslogic.propositional.demorgan
logic.propositional.genoroverand0yeslogic.propositional.distribution
logic.propositional.idempand0yeslogic.propositional.idempotencyp ∧ p   ⇒   p
logic.propositional.idempor0yeslogic.propositional.idempotencyp ∨ p   ⇒   p
logic.propositional.invandoveror0nologic.propositional.distribution
logic.propositional.invdemorganand0nologic.propositional.demorgan
logic.propositional.invdemorganor0nologic.propositional.demorgan
logic.propositional.invoroverand0nologic.propositional.distribution
logic.propositional.notfalse0yeslogic.propositional.group-notfalse¬F   ⇒   T
logic.propositional.notnot0yeslogic.propositional.doublenegation¬(¬p)   ⇒   p
logic.propositional.nottrue0yeslogic.propositional.group-nottrue¬T   ⇒   F
logic.propositional.oroverand0yeslogic.propositional.distributionp ∨ (q ∧ r)   ⇒   (p ∨ q) ∧ (p ∨ r)
(p ∧ q) ∨ r   ⇒   (p ∨ r) ∧ (q ∨ r)
logic.propositional.truezeroand0yeslogic.propositional.trueconjunctionT ∧ p   ⇒   p
p ∧ T   ⇒   p
logic.propositional.truezeroor0yeslogic.propositional.truedisjunctionT ∨ p   ⇒   T
p ∨ T   ⇒   T
notfalse.inv0nologic.propositional.group-notfalseT   ⇒   ¬F
notnot.inv0nologic.propositional.doublenegationp   ⇒   ¬(¬p)
nottrue.inv0nologic.propositional.group-nottrueF   ⇒   ¬T
oroverand.inv0nologic.propositional.distribution(p ∨ q) ∧ (p ∨ r)   ⇒   p ∨ (q ∧ r)
(p ∨ r) ∧ (q ∨ r)   ⇒   (p ∧ q) ∨ r
truezeroand.inv0nologic.propositional.trueconjunctionp   ⇒   T ∧ p
p   ⇒   p ∧ T

Buggy rules for logic.propositional.cnf

Rule nameArgsUsedSiblingsRewrite rule
logic.propositional.buggy.absor0no(p ∨ q) ∨ ((p ∧ q) ∧ r)   ⇏   p ∨ q
(p ∧ q) ∨ ((p ∨ q) ∧ r)   ⇏   p ∧ q
(p ∨ q) ∧ ((p ∧ q) ∨ r)   ⇏   p ∨ q
(p ∧ q) ∧ ((p ∨ q) ∨ r)   ⇏   p ∧ q
logic.propositional.buggy.andcompl0nop ∧ (¬p)   ⇏   T
(¬p) ∧ p   ⇏   T
p ∧ (¬p)   ⇏   p
(¬p) ∧ p   ⇏   p
logic.propositional.buggy.andcompl.inv0no
logic.propositional.buggy.andsame0nop ∧ p   ⇏   T
logic.propositional.buggy.assimp0nop → (q → r)   ⇏   (p → q) → r
(p → q) → r   ⇏   p → (q → r)
logic.propositional.buggy.assoc0nop ∨ (q ∧ r)   ⇏   (p ∨ q) ∧ r
(p ∨ q) ∧ r   ⇏   p ∨ (q ∧ r)
(p ∧ q) ∨ r   ⇏   p ∧ (q ∨ r)
p ∧ (q ∨ r)   ⇏   (p ∧ q) ∨ r
logic.propositional.buggy.commimp0nop → q   ⇏   q → p
logic.propositional.buggy.defimpl.inv0no(¬p) ∧ q   ⇏   p → q
p ∨ (¬q)   ⇏   p → q
p ∧ (¬q)   ⇏   q → p
(¬p) ∨ q   ⇏   q → p
¬(p ∨ q)   ⇏   p → q
logic.propositional.buggy.demorgan10no¬(p ∧ q)   ⇏   (¬p) ∨ q
¬(p ∧ q)   ⇏   p ∨ (¬q)
¬(p ∧ q)   ⇏   p ∨ q
¬(p ∨ q)   ⇏   (¬p) ∧ q
¬(p ∨ q)   ⇏   p ∧ (¬q)
¬(p ∨ q)   ⇏   p ∧ q
logic.propositional.buggy.demorgan20no¬(p ∧ q)   ⇏   ¬((¬p) ∨ (¬q))
¬(p ∨ q)   ⇏   ¬((¬p) ∧ (¬q))
logic.propositional.buggy.demorgan30no¬(p ∧ q)   ⇏   (¬p) ∧ (¬q)
logic.propositional.buggy.demorgan3.inv0no(¬p) ∧ (¬q)   ⇏   ¬(p ∧ q)
logic.propositional.buggy.demorgan40no¬(p ∨ q)   ⇏   (¬p) ∨ (¬q)
logic.propositional.buggy.demorgan4.inv0no(¬p) ∨ (¬q)   ⇏   ¬(p ∨ q)
logic.propositional.buggy.demorgan50no¬((¬(p ∧ q)) ∨ r)   ⇏   (¬((¬p) ∨ (¬q))) ∨ r
¬((¬(p ∧ q)) ∧ r)   ⇏   (¬((¬p) ∨ (¬q))) ∧ r
¬((¬(p ∨ q)) ∨ r)   ⇏   (¬((¬p) ∧ (¬q))) ∨ r
¬((¬(p ∨ q)) ∧ r)   ⇏   (¬((¬p) ∧ (¬q))) ∧ r
logic.propositional.buggy.distr0nop ∧ (q ∨ r)   ⇏   (p ∧ q) ∧ (p ∧ r)
(p ∨ q) ∧ r   ⇏   (p ∧ r) ∧ (q ∧ r)
p ∧ (q ∨ r)   ⇏   (p ∨ q) ∧ (p ∨ r)
(p ∨ q) ∧ r   ⇏   (p ∨ r) ∧ (q ∨ r)
p ∨ (q ∧ r)   ⇏   (p ∨ q) ∨ (p ∨ r)
(p ∧ q) ∨ r   ⇏   (p ∨ r) ∨ (q ∨ r)
p ∨ (q ∧ r)   ⇏   (p ∧ q) ∨ (p ∧ r)
(p ∧ q) ∨ r   ⇏   (p ∧ r) ∨ (q ∧ r)
logic.propositional.buggy.distr.inv0no(p ∧ q) ∧ (p ∧ r)   ⇏   p ∧ (q ∨ r)
(p ∧ r) ∧ (q ∧ r)   ⇏   (p ∨ q) ∧ r
(p ∨ q) ∧ (p ∨ r)   ⇏   p ∧ (q ∨ r)
(p ∨ r) ∧ (q ∨ r)   ⇏   (p ∨ q) ∧ r
(p ∨ q) ∨ (p ∨ r)   ⇏   p ∨ (q ∧ r)
(p ∨ r) ∨ (q ∨ r)   ⇏   (p ∧ q) ∨ r
(p ∧ q) ∨ (p ∧ r)   ⇏   p ∨ (q ∧ r)
(p ∧ r) ∨ (q ∧ r)   ⇏   (p ∧ q) ∨ r
logic.propositional.buggy.distrnot0no(¬p) ∧ (q ∨ r)   ⇏   ((¬p) ∧ q) ∨ (p ∧ r)
(¬p) ∧ (q ∨ r)   ⇏   (p ∧ q) ∨ ((¬p) ∧ r)
(p ∨ q) ∧ (¬r)   ⇏   (p ∧ (¬r)) ∨ (q ∧ r)
(p ∨ q) ∧ (¬r)   ⇏   (p ∧ r) ∨ (q ∧ (¬r))
(¬p) ∨ (q ∧ r)   ⇏   ((¬p) ∨ q) ∧ (p ∨ r)
(¬p) ∨ (q ∧ r)   ⇏   (p ∨ q) ∧ ((¬p) ∨ r)
(p ∧ q) ∨ (¬r)   ⇏   (p ∨ (¬r)) ∧ (q ∨ r)
(p ∧ q) ∨ (¬r)   ⇏   (p ∨ r) ∧ (q ∨ (¬r))
logic.propositional.buggy.equivelim10nop ↔ q   ⇏   (p ∧ q) ∨ (¬(p ∧ q))
p ↔ q   ⇏   (p ∧ q) ∨ ((¬p) ∧ q)
p ↔ q   ⇏   (p ∧ q) ∨ (p ∧ (¬q))
p ↔ q   ⇏   (p ∧ q) ∨ (p ∧ q)
p ↔ q   ⇏   (p ∧ q) ∨ (¬(p ∨ (¬q)))
logic.propositional.buggy.equivelim20nop ↔ q   ⇏   (p ∨ q) ∧ ((¬p) ∨ (¬q))
p ↔ q   ⇏   (p ∧ q) ∧ ((¬p) ∧ (¬q))
p ↔ q   ⇏   (p ∧ q) ∨ ((¬p) ∨ (¬q))
logic.propositional.buggy.equivelim30nop ↔ q   ⇏   (¬p) ∨ q
logic.propositional.buggy.falseprop0nop ∨ F   ⇏   F
F ∨ p   ⇏   F
p ∧ F   ⇏   p
F ∧ p   ⇏   p
logic.propositional.buggy.falseprop.inv0no
logic.propositional.buggy.idemequi0nop ↔ p   ⇏   p
logic.propositional.buggy.idemequiv.inv0nop   ⇏   p ↔ p
logic.propositional.buggy.idemimp0nop → p   ⇏   p
logic.propositional.buggy.idemimp.inv0nop   ⇏   p → p
logic.propositional.buggy.implelim0nop → q   ⇏   ¬(p ∨ q)
p → q   ⇏   p ∨ q
p → q   ⇏   ¬(p ∧ q)
p → q   ⇏   p ∨ (¬q)
logic.propositional.buggy.implelim10nop → q   ⇏   (¬p) ∧ q
logic.propositional.buggy.implelim20nop → q   ⇏   (p ∧ q) ∨ ((¬p) ∧ (¬q))
logic.propositional.buggy.notoverimpl0no¬(p → q)   ⇏   (¬p) → (¬q)
logic.propositional.buggy.orcompl0nop ∨ (¬p)   ⇏   F
(¬p) ∨ p   ⇏   F
p ∨ (¬p)   ⇏   p
(¬p) ∨ p   ⇏   p
logic.propositional.buggy.orcompl.inv0no
logic.propositional.buggy.orsame0nop ∨ p   ⇏   T
logic.propositional.buggy.parenth10no¬(p ∧ q)   ⇏   (¬p) ∧ q
¬(p ∨ q)   ⇏   (¬p) ∨ q
logic.propositional.buggy.parenth20no¬(p ↔ q)   ⇏   (¬(p ∧ q)) ∨ ((¬p) ∧ (¬q))
logic.propositional.buggy.parenth30no¬((¬p) ∧ q)   ⇏   p ∧ q
¬((¬p) ∨ q)   ⇏   p ∨ q
¬((¬p) → q)   ⇏   p → q
¬((¬p) ↔ q)   ⇏   p ↔ q
logic.propositional.buggy.trueprop0nop ∨ T   ⇏   p
T ∨ p   ⇏   p
p ∧ T   ⇏   T
T ∧ p   ⇏   T
logic.propositional.buggy.trueprop.inv0no