Professional Documents
Culture Documents
SIMPLIFICATION STRATEGIES
Sometimes a set of clauses can be simplified by elimination of certain
clauses or by elimination of certain literals in the clauses. These
simplifications are such that the simplified set of clauses is unsatisfiable if
and only if the original set is unsatisfiable. Thus, employing these
simplification strategies helps to reduce the rate of growth of new clauses.
SIMPLIFICATION
5.3.1.
STRATEGIES
ELIMINATION OF TAUTOLOGIES
Any clause containing a literal and its negation (we call such a clause a
tautology) may be eliminated, since any unsatisfiable set containing a
tautology is still unsatisfiable after removing it, and conversely. Thus,
clauses like P(x) V B(y) V ~B(y) and P(f(A V ~P(f(A
may
be eliminated.
5.3.2. PROCEDURAL ATTACHMENT
Sometimes it is possible and more convenient to evaluate the truth
values of literals than it would be to include these literals, or their
negations, in the base set. Typically, evaluations are performed for
ground instances. For example, if the predicate symbol "E' stands for the
equality relation between numbers, it is a simple matter to evaluate
ground instances such as (7,3) when they occur; whereas we would
probably not want to include in the base set a table containing a large
number of ground instances of (x,y) and ~(x,y).
It is instructive to look more closely at what is meant by "evaluating"
an expression like (7,3). Predicate calculus expressions are linguistic
constructs that denote truth values, elements, functions, or relations in a
domain. Such expressions can be interpreted with reference to a model
which associates linguistic entities with appropriate domain entities. The
end result is that the values Tor F become associated with sentences in
the language.
Given a model, we could use any finite processes for interpretation
with respect to it as a way of deciding truth values of sentences.
Unfortunately, models and interpretation processes are not, in general,
finite. Often, we can use partial models, however. In our equality
example, we can associate with the predicate symbol, E, a computer
program that tests the equality of two numbers within the finite domain
of the program. Let us call this program EQUALS. We say that the
program EQUALS is attached to the predicate symbol E. We can
associate the linguistic symbols 7 and 3 (i.e., numerals) with the computer
data items 7 and 3 (i.e., numbers), respectively. We say that 7 is attached
to 7, and that 3 is attached to 3, and that the computer program and
arguments represented by EQUALS(7,3) are attached to the linguistic
expression (7,3). Now we can run the program to obtain the value F
(false) which in tum induces the value F for (7,3).
RESOLUTION REFUTATION
SYSTEMS
5.3.3.
ELIMINATION BY SUBSUMPTION
V Q(A) V R(y)