Next: Unit Resolution
Up: Resolution
Previous: Converting to Clausal Form
Recall that in considering the resolution inference rule (and various
specific strategies employing it) in Chapter 2 we restricted our
attention to the propositional case. This meant that progress revolved
around two or more contradictory propositional variables. For example,
recall the form of binary resolution for the propositional case:
Note that in this schema
and
``cancel" each other out, and note that they do so by being
contradictories. The same basic idea is present in resolution applied to
the case of first-order formula, but in this case cancellation is
extended so that two literals cancel if they can be unified so as
to contradict each other. (Resolution-based identity rules will require
a more subtle notion than contradictory literals.) We now explain
unification.
We begin with the concept of a substitution or binding list.
Such a thing is simply a set of ordered pairs, the first element of which
is a variable and the second of which is a term. A substitution must
satisfy the following two conditions.
- 1.
- Each variable is paired with at most one term.
- 2.
- No variable paired with a term occurs within any of the terms.
Here is an example of a substitution:4.2
On the other hand, the following set does not qualify; make sure you see
why.
Now we can apply a substitution or binding list to a first-order
term or formula to yield a new expression. This process is really quite
simple: we simply replace variables in the term or formula with terms
paired with these variables in the substitution. We write
to indicate the result of applying the substitution
to formula
(or term)
.
Here is an example:
A substition
is distinct from a substitution
iff no
variable paired with a term in
occurs in
.
Given a
substitution
and a distinct substitution
,
the
composition of
with
,
written
)
is the
substitution produced by apploying
to the terms of
and
then adding to
the bindings from
.
Here is an example of
a composition:
Now for a key definition.
Definition 4.6 (Definition of Unifiability)
Where an expression is a term or formula, a set

of expressions is
unifiable iff there is a substitution

such that

.
In this case

is said to be a
unifier for the set

.
To see Definition 4.6 in action, observe that the
substitution
unifies the set
{R(a,y,z),
R(x,b,z)}
to produce R(a,b,c). But
is not the only unifier of
this set. We could have left the variable z unchanged in these two
formulas, or we could have substituted some other term for z in both
formulas. The important point here is that some substitutions are more
general than others. For example, the substitution {x/f(y)} is
more general than {x/f(c)}. We say that a subsitution
is as
general as or more general than a substitution
iff there is
another subsitution
such that
Given this machinery, we can define unifiers with maximum generality:
Definition 4.7 (Definition of Most General Unifier)
Let

and

be expressions. Then the unifier

is a
most general unifier, or
mgu, of

and

provided
that, where

is any unifier of these two expressions, there
exists a substitution

such that
For example, the substition {x/a} is an mgu for R(a,y,z) and
R(x,y,z).
We can now adapt the resolution principle as defined in Chapter 2 for the
propositional case to the first-order case. The basic idea is
straightforward. Where
is an mgu for
and
we have:
Next: Unit Resolution
Up: Resolution
Previous: Converting to Clausal Form
Selmer Bringsjord
1999-04-19