alpha OR beta, NOT beta OR gamma -------------------------------- alpha OR gammaThis is equivalent to:
NOT alpha -> beta, beta -> gamma -------------------------------- NOT alpha -> gamma
The generalized resolution rule for disjunctions allows multiple literals in the sentences being combined. Remember that a literal is an atomic sentence or its negation. For implications, the implications must be made up of atoms, so no negation is allowed.
For literals p_i and q_i where UNIFY(p_j,NOTq_k) = theta,
p_1 OR ... p_j ... OR p_m q_1 OR ... q_j ... OR q_m -------------------------------------------- SUBST(theta, (OR_(i!=j)p_i OR OR_(i!=k)q_i))
For atoms p_i, q_i, r_i, s_i where UNIFY(p_j,q_k) = theta,
AND_(i=1,n1)p_i => OR_(i=1,n2)r_i AND_(i=1,n3)s_i => OR_(i=1,n4)q_i ------------------------------------------------------------------------------- SUBST(theta, (AND_(i!=j)p_i AND_(i=1,n3)s_i => OR_(i=1,n2)r_i OR OR_(i!=k)q_i))
Notice we reduce the number of atoms by one on one side of each implication when we apply the resolution rule.
Cannonical forms
Conjunctive Normal Implicative Normal NOT P(w) OR Q(w) P(w) => Q(w) P(x) OR R(x) True => P(x) OR R(x) NOT Q(y) OR S(y) Q(y) => S(y) NOT R(z) OR S(z) R(z) => S(z)Resolution proofs:
We can do resolution proofs using backward-chaining. This method, however, is not complete. This is because there may be nothing in the database for resolution to be applied to, even though the query is valid. (Prove p OR NOT p from an empty KB.)
A complete proof system called proof by contradiction
exists using resolution. If the KB is consistent and the query sentence
is true, this procedure will find a proof of it.
Steps in conversion to normal form:
The KB and query must be in normal form.
This proof is impossible using modus ponens, but possible with refutation.
NOT p AND pConvert to normal form:
NOT p NOT p OR FALSE p => FALSE p TRUE => pResolve
p => FALSE, TRUE => p -------------------------- TRUE => FALSE
- Jack owns a dog
- Every dog owner is an animal lover.
- No animal lover ever kills an animal.
- Either Jack or Curiosity killed the cat, who is named Tuna.
- Did Curiosity kill the cat?
![]()