52 3. Tableau Model Elimination
Note 3.1.1 (Link Condition and Proof Confluence.). It must be emphasized
that the presence of the link condition is a central property for model
elimination: if the link condition is not present, then any literal along the
branch (or even none) can be used to establish the connection. This free-
dom guarantees the property of proof confluence
[
Bibel, 1987; Letz, 1993
]
,
which has the important consequence that every tableau derived so far
can be continued to a refutation, if one exists at all. The resulting cal-
culus is best called a connection calculus (cf. Def. 3.2.3 below) due to
the striking similarities with the connection calculi defined in
[
Bibel, 1987;
Eder, 1992
]
. Proof confluent calculi are attractive because of the possibility
to design proof procedures without backtracking over the generated tableaux.
On the other hand, when the link condition is present, proof confluence is
lost, but the local search space is smaller. With regard to a proof procedure,
the link condition allows us to guide the search for an extending clause around
the leaf literal (for instance, by term indexing the inference rules); in this
case, efficient implementations can be built on top of PROLOG by means
of the PTTP-technique (Prolog Technology Theorem Proving,
[
Stickel, 1989;
Stickel, 1990a
]
, see also Chapter 6).
This note should not imply that one approach is necessarily superior to
the other. Instead, the purpose is to point out that a small change in the
calculus definition may have dramatic impacts on its properties. A more
detailed comparison between these calculi variants, also taking resolution
into account is contained in
[
Baumgartner and Furbach, 1993
]
.
3.2 Inference Rules and Derivations
We are going to formally define the inference rules of model elimination next.
Due to the variety of calculi treated in this text, we find it advantageous to
use an economical notation for literal trees, namely branch sets, and define
calculi inference rules as transformations of these.
Definition 3.2.1 (Representation of Tableaux). Let T = ht, λi be a
tableau. The branch representation of T is the triple hB,λ,oi, where B =
{p | p is a branch of t} is the branch set of T and o is an ordering function,
mapping any maximal subset S
q
= {q · N
1
,... ,q· N
n
}⊆Bto a sequence of
nodes, such that o(S
q
)=N
1
,... ,N
n
iff N
1
,... ,N
n
is a maximal successor
sequence of T . In other words, o reflects the order of the nodes in T .
Let T be a tableau with branch representation hB,λ,oi. In the sequel we
will most often identify T with hB,λ,oi, or even with B alone, and let λ and o
be implicitly given. Branch sets are typically denoted by the letters P, Q,....
We find it convenient to write T =(P, Q) and mean that B = P∪Q
(disjoint union is intended here). Similarly, (p, Q) means ({p}, Q), where
p is a branch. Going further, we allow a branch N
0
· N
1
···N
n
∈Bto be
represented by the literal sequence L
1
···L
n
, with the understanding that