where PROOF, QA, and MI denote the class of all
proof problems, the class of all QA problems, and the
class of all MI problems, respectively. The class of
all MI problems is larger than that of all QA prob-
lems, and it is a more natural class to be solved by the
method presented in this paper. A general solution
method for MI problems can be applied to any arbi-
trary QA problem and any arbitrary proof problem.
MI problems are axiomatically constructed on an
abstract structure, called a specialization system. It
consists of abstract atoms and abstract operations
(extensions of variable-substitution operations) on
atoms, called specializations. These abstract com-
ponents can be any arbitrary mathematical objects as
long as they satisfy given axioms. Abstract clauses
can be built on abstract atoms. This is a sharp contrast
to most of the conventional theories in logic program-
ming, where concrete syntax is usually used. In Pro-
log, for example, usual first-order atoms and substi-
tutions with concrete syntax are used, and there is no
way to give a foundation for other forms of extended
atoms and for various specialization operations other
than the usual variable-substitution operation.
An axiomatic theory enables us to develop a very
general theory. By instantiating a specialization sys-
tem to a specific domain and by imposing certain re-
strictions on clauses, our theory can be applied to
many subclasses of MI problems.
We proposed a general schema of solving MI
problems by equivalent transformation (ET), where
problems are solved by repeated simplification. We
introduced the concept of target mapping and pro-
posed three target mappings. Since transformation
preserving a target mapping is ET, target mappings
provide a strong foundation for inventing many ET
rules for solving MI problems on clauses.
An ET-based solution consists of the following
steps: (i) formalize an initial MI problem on some
specialization system, (ii) prepare ET rules, (iii) con-
struct an ET sequence, (iv) compute a set of models
using a target mapping, (v) apply the set-intersection
operation to the resulting set of models, and (vi) apply
an exit mapping to the intersection result to obtain a
solution.
To begin with, Section 2 recalls the concept of
specialization system and formalizes MI problems on
a specialization system. Section 3 defines the notions
of a target mapping and a representative mapping, and
introduces a schema for solving MI problems based
on equivalent transformation (ET) preserving target
mappings. The correctness of this solution schema
is shown. Section 4 applies the general ET-based
schema in Section 3 to the domain of clause sets with
built-in constraint atoms. A target mapping, MM, is
introduced for associating with each clause set a col-
lection of its specific models computed in a bottom-up
manner. Section 5 shows an example of solution of a
MI problem. Section 6 concludes the paper.
The notation that follows holds thereafter. Given
a set A, pow(A) denotes the power set of A and
partialMap(A) the set of all partial mappings on A
(i.e., from A to A). For any partial mapping f from a
set A to a set B, dom( f) denotes the domain of f, i.e.,
dom( f) = {a | (a ∈ A) & ( f(a) is defined)}.
2 CLAUSES AND
MODEL-INTERSECTION
PROBLEMS
2.1 Specialization Systems
A substitution {X/ f(a),Y/g(z)} changes an atom
p(X,5,Y) in the term domain into p( f(a),5,g(z)).
Generally, a substitution in first-order logic defines
a total mapping on the set of all atoms in the term
domain. Composition of such mappings is also re-
alized by some substitution. There is a substitution
that does not change any atom (i.e., the empty sub-
stitution). A ground atom in the term domain is a
variable-free atom.
Likewise, in the string domain, substitutions for
strings are used. A substitution {X/“aYbc”,Y/“xyz”}
changes an atom p(“X5Y”) into p(“aYbc5xyz”).
Such a substitution for strings defines a total mapping
on the set of all atoms that may include string vari-
ables. Composition of such mappings is also realized
by some string substitution. There is a string substi-
tution that does not change any atom (i.e., the empty
substitution). A ground atom in the string domain is a
variable-free atom.
A similar operation can be considered in the
class-variable domain. Consider, for example, an
atom p(X : animal,Y : dog,Z: cat) in this domain,
where X : animal, Y : dog, and Z: cat represent an
animal object, a dog object, and a cat object, re-
spectively. When we obtain additional information
that X is a dog, we can restrict X : animal into
X : dog and the atom p(X : animal,Y : dog,Z: cat)
into p(X : dog,Y : dog,Z: cat). By contrast, with new
information that Z is a dog, we cannot restrict Z : cat
and the above atom since Z cannot be a dog and a cat
at the same time. More generally, such a restriction
operation may not be applicable to some atoms, i.e.,
it defines a partial mapping on the set of all atoms.
Composition of such partial mappings is also a par-
tial mapping, and we can determine some composi-