=Paper=
{{Paper
|id=Vol-418/paper-9
|storemode=property
|title=Complete Pruning Methods and a Practical Search Strategy for SOL
|pdfUrl=https://ceur-ws.org/Vol-418/paper9.pdf
|volume=Vol-418
|dblpUrl=https://dblp.org/rec/conf/lpar/NabeshimaII08
}}
==Complete Pruning Methods and a Practical Search Strategy for SOL==
Complete Pruning Methods and
a Practical Search Strategy for SOL
Hidetomo Nabeshima Koji Iwanuma
University of Yamanashi, Japan University of Yamanashi, Japan
Katsumi Inoue
National Institute of Informatics, Japan
Abstract
The ability to find non-trivial consequences of an axiom set is useful in many applications of
AI such as theorem proving, query answering and nonmonotonic reasoning. SOL (Skip Ordered
Linear) calculus is one of the most significant calculi for consequence finding, which is complete for
finding the non-subsumed consequences of a clausal theory. In this paper, we propose new complete
pruning methods and a practical search strategy for SOL tableaux. These methods are indispensable
for practical use in many application areas. The experimental results show that these techniques
improve the performance of consequence finding process greatly.
1 Introduction
The task of consequence finding [8] is to discover hidden theorems of a given axiom set. These theorems
to be found are not given in an explicit way, but are only characterized by some desired properties. Thus,
consequence finding is clearly distinguished from proof finding or theorem proving. One of the most
significant calculi for consequence finding is the SOL (Skip Ordered Linear) calculus[1], which is com-
plete for finding the non-subsumed consequences of a clausal theory. There are many application areas
of SOL calculus such as nonmonotonic reasoning, abduction [1, 2], induction [3], default reasoning [4]
and query answering [7, 6]. The original SOL-resolution calculus can be viewed as extending Love-
land’s model-elimination calculus [11] with a so-called Skip operation. Iwanuma et al. [5] subsequently
reformulated SOL-resolution within the framework of connection tableaux [9, 10] and proposed several
pruning methods [5, 6].
In this paper, we propose two kinds of new complete pruning methods for SOL tableau calculus,
local failure caching for length condition and skip-minimality. The former is an extension of local failure
caching [9, 10, 5] which is an excellent pruning technique for connection tableau calculus. The extension
ensures the completeness of the calculus in case we are only interested in consequences up to a given
maximal length. A user usually prefers short and simple consequences rather than long and complicated
ones. Moreover, limiting the length of consequences has the effect of reducing the search space vastly.
In such a situation, our proposed method accelerates the performance of the consequence finding process
significantly. The latter method, Skip-minimality, restrains the use of the Skip operation and prunes many
redundant SOL derivations. In addition, we describe a new practical search strategy, called consequence
iterative lengthening (CIL), which has the effect of finding short and simple consequences preferentially
in a limited time. We demonstrate the effectiveness of these methods by the experimental evaluation.
The remainder of this paper is organized as follows: Section 2 reviews the SOL tableau calculus.
Section 3 and 4 introduces new pruning methods and a search strategy for consequence finding, respec-
tively. Section 5 shows the experimental evaluation. Section 6 concludes with a summary and discussion
of future work.
Rudnicki P, Sutcliffe G., Konev B., Schmidt R., Schulz S. (eds.);
Proceedings of the Combined KEAPPA - IWIL Workshops, pp. 113- 122
113
Pruning Methods and a Search Strategy for SOL Nabeshima, Iwanuma, Inoue
2 SOL Tableaux for Consequence Finding
This section reviews the SOL tableau calculus [5]. This paper assumes a first-order language (without
equality). We write ⊆ms to denote the inclusion relation over multisets which is defined as usual. When
C and D are clauses, C subsumes D if there is a substitution ! such that C! ⊆ms D. We say C properly
subsumes D if C subsumes D but D does not subsume C. For a set " of clauses, µ " denotes the set of
clauses in " not properly subsumed by any clause in ".
Definition 1. A production field P is a pair "L, Cond #, where L is a set of literals closed under instanti-
ation, and Cond is a certain condition to be satisfied. If Cond is not specified, P is just denoted as "L #.
A clause C belongs to P = "L, Cond # if every literal in C belongs to L and C satisfies Cond. For a set of
clauses ", the set of logical consequences of " belonging to P is denoted as ThP ("). A production field
P is stable if, for any two clauses C and D such that C subsumes D, the clause D belongs to P only if
C belongs to P.
Example 1. Let L = L + ∪ L − be the set of all literals in the first-order language, where L+ and L −
are the positive and negative literals in the language, respectively. The following are examples of stable
production fields.
(a) P1 = "L #: ThP1 (") is the set of logical consequences of ".
(b) P2 = "L − , length is less than k #: ThP2 (") is the set of negative clauses implied by " consisting of
less than k literals.
In contrast, P3 = "L, length is greater than k # is not a stable production field. For example, if k = 2
and L = {p(a), q(b), ¬r(c)}, then C = p(a) ∨ q(b) subsumes D = p(a) ∨ q(b) ∨ ¬r(c), and D belongs to
P3 while C does not.
Note that the empty clause ! is the unique clause in µ ThP (") iff " is unsatisfiable. This means that
proof finding is a special case of consequence finding. Stable production fields are practically important
[1]. In the condition Cond, we can specify the maximum length of each clause, the maximum term depth
of any literal in a clause, and so on.
Definition 2. A clausal tableau T is a labeled ordered tree, where every non-root node of T is labeled
with a literal. We identify a node with its label (i.e., a literal) if no confusion arises. If the immediate
successors of a node are literals L1 , . . . , Ln , then L1 ∨ · · · ∨ Ln is called a tableau clause. The tableau
clause below the root is called the start clause. T is a clausal tableau for a set " of clauses if every
tableau clause C in T is an instance of a clause D in ". In this case, D is called an origin clause of C.
A connection tableau is a clausal tableau such that, for every non-leaf node L except the root, there is
an immediate successor labeled with L. A marked tableau T is a clausal tableau such that some leaves
are marked with labels closed or skipped. The unmarked leaves are called subgoals. A node N in T
is said to be solved if either N itself is a marked leaf node or all leaf nodes of branches through N of T
are marked. T is solved if all leaves are marked. skip(T ) denotes the set of literals of nodes marked with
skipped.
Notice that skip(T ) is a set, not a multiset. skip(T ) is also identified with a clause. We will abbreviate
a marked connection tableau as a tableau.
Definition 3. A tableau T is regular if no two nodes on any branch in T are labeled with the same literal.
T is tautology-free if no tableau clause in T is tautology. T is complement-free if no two non-leaf nodes
on any branch in T are labeled with complementary literals. A tableau T is skip-regular if there is no
node L in T such that L ∈ skip(T ). T is TCS-free (Tableau Clause Subsumption free) for a clause set "
if no tableau clause C in T is subsumed by any clause in " other than the origin clauses.
114
Pruning Methods and a Search Strategy for SOL Nabeshima, Iwanuma, Inoue
Notice that the skip-regularity applies to all over a tableau, so it is effective not only for subgoals but
also for non-leaf and solved nodes.
Definition 4 (Selection Function [5]). A selection function # is a mapping assigning a subgoal to every
tableau that is not solved. # is said to be depth-first if # selects from any tableau T a subgoal with a
maximum depth. # is stable under substitution if, for any tableau T and any substitution $ , # (T ) =
# (T $ ) holds.
Selection functions are assumed to be stable under substitution in this paper.
Definition 5 (SOL Tableau Calculus [5]). Let " be a set of clauses, C a clause, P a production field
and # a selection functions. An SOL-deduction deriving a clause S from " +C and P via # consists of
a sequence of tableaux T0 , T1 , . . . , Tn satisfying that:
(i) T0 consists of the start clause C only. All leaf nodes of T0 are unmarked.
(ii) Tn is a solved tableau, and skip(Tn ) = S.
(iii) For each Ti (i = 0, . . . , n), Ti is regular, tautology-free, complement-free, skip-regular, and TCS-free
for " ∪ {C}.
(iv) For each Ti (i = 0, . . . , n), the clause skip(Ti ) belongs to P.
(v) Ti+1 is constructed from Ti as follows. Select a subgoal K by # , then apply one of the following
rules to Ti to obtain Ti+1 :
(a) Skip: If skip(Ti ) ∪ {K} belongs to P, then mark K with label skipped.
(b) Skip-factoring: If skip(Ti ) contains a literal L, and K and L are unifiable with mgu ! , then
mark K with skipped, and apply ! to Ti .
(c) Extension: Select a clause B from " ∪ {C} and obtain a variant B( = L1 ∨ · · · ∨ Lm by
renaming. If there is a literal Lj such that K and L j are unifiable with mgu ! , then attach new
nodes L1 , . . . , Lm to K as the immediate successors. Next, mark Lj with closed and apply !
to the extended tableau.
(d) Reduction: If K has an ancestor node L, and K and L are unifiable with mgu ! , then mark
K with closed, and apply ! to Ti .
Theorem 1 (Soundness and Completeness of SOL [5]). (1) If there is an SOL-deduction of a clause S
from " +C and P via # , then S belongs to ThP (" ∪ {C}).
(2) If a clause F does not belong to ThP (") but belongs to T hP (" ∪ {C}), then there is an SOL-
deduction of a clause S from " +C and P via # such that S subsumes F.
Example 2. We define a start clause C, a set " of clauses and a production field P as follows. Let # be
a selection function.
C = p(X) ∨ s(X),
" = { q(X) ∨ ¬p(X), ¬s(Y ), ¬p(Z) ∨ ¬q(Z) ∨ r(Z) },
P = "L + , length is less than 2 #.
Figure 1 shows three solved tableaux that are derived by SOL-deductions from " + C and P via # .
In the tableau Ta , the node p(X) is skipped since the positive literal p(X) belongs to P, and s(X)
115
Pruning Methods and a Search Strategy for SOL Nabeshima, Iwanuma, Inoue
p(X) s(X) p(X) s(X)
skipped
~s(X) q(X) ~p(X) ~s(X)
closed skipped closed closed
Ta Tb
reduction p(X) s(X)
q(X) ~p(X) ~s(X)
closed closed
~p(X) ~q(X) r(X)
closed closed skipped
Tc
Figure 1: Solved tableaux of Example 2
is extended by using the unit clause ¬s(Y ). Note that s(X) cannot be skipped since the production
field P limits the maximum length of consequences to one. The derived consequence is skip(Ta ) =
{p(X)}. Tb shows the other derived tableau whose node p(X) is extended by q(X) ∨ ¬p(X), and the
node q(X) is skipped. The consequence of Tb is skip(Tb ) = {q(X)}. In Tc , the nodes p(X) and q(X) are
extended by q(X) ∨ ¬p(X) and ¬p(Z) ∨ ¬q(Z) ∨ r(Z) respectively. The bottom node ¬p(X) is closed by
reduction with the ancestor p(X), and r(X) is skipped. The consequence is skip(Tc ) = {r(X)}. There
are some redundant solved tableaux other than Ta , Tb and Tc . The consequences of those are subsumed
by p(X), q(X) or r(X)1 . As the results, we can get three new characteristic clauses in this example:
Newcarc(",C, P) = {p(X), q(X), r(X)}.
3 Pruning Methods for SOL Tableau Calculus
3.1 Local Failure Caching for Length Condition
Local failure caching [9, 10] is an excellent pruning method for refutation finding which can avoid solv-
ing repetitiously a subgoal with the same or a more specific substitution. Iwanuma et al. [5] reformulated
the local failure caching for consequence finding. This procedure is complete if a production field does
not imply a maximum length condition. We review the procedure and then show a counter example. We
first define the SOL search tree to explicitly express all possible SOL-deductions.
Definition 6. The SOL search tree from " +C and P via # is a tree T labeled with tableaux as follows.
We identify a node with its label (i.e., a tableau) if no confusion arises. The root of T is a tableau which
consists of the start clause C only. Every non-leaf node T in T has as many successor nodes as there
are successful applications of a single inference step applied to the selected subgoal in T by # , and the
successor nodes of T are the respective resulting tableaux. A segment of T is a subtree that contains the
nodes explored by # from the root to some node.
1 The new pruning method skip-minimality proposed in Section 3.2 can prune such redundant tableaux.
116
Pruning Methods and a Search Strategy for SOL Nabeshima, Iwanuma, Inoue
Definition 7 (Solution and Failure Substitution). Given a SOL search tree T and a depth-first selection
function. Let T be a tableau in T and K the selected subgoal in T .
1. If T ( in T is a descendant tableau of T such that all branches through K in T( are solved, then the
composition $ = $1 · · · $k of substitutions applied to the tableau T on the way from T to T( is called
a solution of K at T via T ( .
2. If T ( is an initial segment of T containing no proof at T( or below it, then the solution $ is named a
failure substitution for K at T in T ( .
Definition 8 (Local Failure Caching Procedure for Consequence Finding [5]). Let T ( be a finite initial
segment of a tableau search tree T .
Step 1: Whenever a subgoal K in a tableau T in T ( has been solved via a tableau T( , then the computed
solution $ is stored at the node K.
a. If T ( cannot be completed to a solved tableau in T ( and the proof procedure backtracks over
T ( , then $ is turned into a failure substitution.
b. If T ( once has been completed in T ( at a previous stage and the proof procedure back-
tracks over T ( for searching alternative consequences, then continue the backtracking, with-
out adding $ to the failure substitutions.
Step 2: In any alternative solution process of the subgoal K below the search node T , if a substitution
% = %1 · · · %m is computed such that one of the failure substitutions stored at the node K is more
general than % , then the proof procedure immediately backtracks.
Step 3: When the search node T (at which K was selected) is backtracked, then all failure substitutions
at K are deleted.
We show a counter example for the completeness of the above procedure.
Example 3. We define a start clause C = p(X)∨q(X)∨r(X), a set of clauses " = { ¬q(X)∨s(X), ¬s(Y ) },
and a production field P = "L + , length is less than 3 #. We consider finding consequences from this
problem. We can apply the Skip operation to p(X) and q(X) in the start clause since they are positive.
But we cannot close r(X), because the maximum length of consequences is limited to two (see T1 in
Figure 2). In this case, the local failure caching procedure stores an empty failure substitution $ = 0/ at
the node q(X). Since 0/ is the most general substitution, all the other applicable operations to q(X) are
pruned immediately. As the result, we cannot solve this problem and get any consequences. However,
if we do not use the local failure caching, we can obtain the consequence p(X) ∨ r(X) from the solved
tableau T2 in Figure 2. Hence, the local failure caching is incomplete if there exists a maximum length
condition.
The cause of incompleteness is that the procedure does not consider skipped nodes. We extend the
definitions of solution and failure substitution, and propose a complete procedure, called local failure
caching for length condition.
Definition 9 (Extended Solution and Failure Substitution). Given a tableau search tree T and a depth-
first selection function. Let T be a tableau in T and K the selected subgoal in T .
1. If T ( in T is a descendant tableau of T such that all branches through K in T( are solved, then the
pair "$ , s#, where $ is the composition $ = $1 · · · $k of substitutions applied to the tableau T on the
way from T to T ( and s = skip(T ( ), is called an extended solution of K at T via T( .
117
Pruning Methods and a Search Strategy for SOL Nabeshima, Iwanuma, Inoue
T1 T2
p(X) q(X) r(X) p(X) q(X) r(X)
skipped skipped skipped skipped
fail ~q(X) s(X )
closed
~s(X ) closed
Figure 2: A counter example of local failure caching for consequence finding
2. If T ( is an initial segment of T containing no proof at T( or below it, then the extended solution
"$ , s# is named an extended failure substitution for K at T in T ( .
For two extended failure substitutions "$ , s1 # and "% , s2 #, "$ , s1 # is more general than "% , s2 # if ∃! ($ ! =
% ∧ s1 ! ⊆ s2 ), that is, $ is more general than % and s1 subsumes s2 . If P does not have a maximum
length condition, then we simply ignore the latter condition, that is, "$ , s1 # is more general than "% , s2 #
if ∃! ($ ! = % ).
Definition 10 (Local Failure Caching Procedure for Length Condition). The definition is same as Def-
inition 8 except for replacing terms of “solution” and “failure substitution” with “extended solution”
and “extended failure substitution” respectively.
The completeness of the local failure caching for length condition is given by the following proposi-
tion.
Proposition 1. Let T be a tableau search tree, T a tableau in T , K the selected subgoal in T , and Ta , Tb
descendant tableaux of T . Suppose that "$ , s1 # is the extended failure substitution for K at T via Ta , and
"% , s2 # is the extended solution of K at T via Tb generated by an alternative process. If Tb has a solved
tableau Tbs as a descendant node in T , then "$ , s1 # is not more general than "% , s2 #.
Proof. We prove the completeness by a reductio-ad-absurdum. We assume that "$ , s1 # is more general
than "% , s2 #, that is, ∃! ($ ! = % ∧ s1 ! ⊆ s2 ). Let Sa and Sbs be the subtableaux with root K in Ta and
Tbs respectively (see Figure 3). Then, we replace Sbs in Tbs with Sa ! , and denote the resulting tableau as
Tbs( , which is solved and satisfies the maximum length condition. The reason is as follows. Let N be
the set of selected subgoals on the way to Tbs after Tb . We extract the set N f of nodes from N which
are skipped by the Skip-factoring operation. There might exist the skipped nodes in Nf which have the
factoring target in Sbs but not in Sa ! . However, the number of such nodes is at most |s2 \ s1 ! | since
s1 ! ⊆ s2 . Therefore, we can apply the Skip operation instead of the Skip-factoring to such nodes. As the
results, skip(Tbs( ) satisfies the maximum length condition.
This means that if the subtableau Sa was solved with the substitution $ ! instead of $ , then there
should exist a solved tableau in T below Ta . Hence, if Sa is solved with the more general substitution $ ,
then there must be a solved tableau in T below Ta . But this contradicts the assumption of "$ , s1 # being
a failure substitution.
We consider solving Example 3 by using local failure caching for length condition. Since we cannot
close r(X) in T1 , the extended failure substitution "0,
/ {p(X), q(X)}# is stored to the node q(X). When the
alternative process solves q(X) using two extension operations (see T2 in Figure 2), the extended solution
substitution "0,
/ {p(X)}# is stored to q(X). Now, "0, / {p(X), q(X)}# is not more general than "0,/ {p(X)}#
118
Pruning Methods and a Search Strategy for SOL Nabeshima, Iwanuma, Inoue
Ta Tbs Tbs’
K K K
failed
Sa Sbs solved Saθ solved
solved with <σ,s1> solved with <τ,s2> solved with <σθ,s1θ>
solved solved
Figure 3: Completeness of local failure caching for length condition
because {p(X), q(X)} +⊆ {p(X)}. Hence, we can obtain the solved tableau T2 by skipping r(X) and get
the consequence p(X) ∨ r(X).
Since the Skip operation never instantiates a tableau, local failure caching is significantly effective
for the SOL tableau calculus. Moreover, using the maximum length condition is important for finding
simple and short consequences in practical time. In such a situation, local failure caching for length
condition is an essential technique for practical use.
3.2 Skip-minimality
The task of consequence finding is to find all minimal consequences with respect to subsumption. This
means that even if we find a solved tableau, we have to continue searching other solved tableaux for
finding all minimal consequences. In proof finding, we can halt the computational process immediately
if one refutation is found. This is an important difference between consequence finding and proof finding.
Of course, if a refutation is found in a consequence finding process, then we can stop the computation
immediately since the refutation is the most general consequence.
Skip-minimality improves the efficiency of such a consequence enumeration process. This method
can prune unsolved tableaux which will generate only non-minimal consequences with respect to sub-
sumption by using the consequences derived from already solved tableaux.
Definition 11 (Skip-Minimality). Let & be a set of clauses. A tableau T is skip-minimal for & if the
clause skip(T ) is not properly subsumed by any clause in &.
Suppose that & is a set of consequences derived by some SOL-deductions in a consequence enumer-
ation process. If a tableau T is not skip-minimal for &, then T and all its descendant tableaux can be
pruned immediately. Skip-minimality is complete since the four kinds of operations in Definition5 never
generalize skip(T ). If we find general and short consequences in early stages, then skip-minimality is
very effective since it prevents generating many redundant tableaux.
4 Search Strategy
Limiting the maximum length of consequences is important. When there is no limit, the branching factor
of a SOL search tree increases and the size of the tree grows exponentially. However, it is difficult to
know the appropriate length condition in advance. One of the solutions is to execute a search process with
incrementing the maximum length limit iteratively, like DFID (depth-first iterative deepening) search
strategy.
119
Pruning Methods and a Search Strategy for SOL Nabeshima, Iwanuma, Inoue
We propose the consequence iterative lengthening (CIL) strategy. Let P be a consequence enumer-
ation process and l a length limit of consequences (initially l = 0). CIL strategy executes the process P
with the length limit l repeatedly, incrementing l for each iteration. If l reaches a given limit or satisfies
the condition s < l, then the iteration stops, where s is the maximum number of used Skip operations in
every tableau.
Since CIL strategy visits the same tableaux in a SOL search tree multiple times, it may seem wasteful.
However, it turns out to be not so costly, because the number of tableaux in the SOL search tree increases
exponentially in proportion to incrementing the length limit of consequences. We show the property of
CIL strategy in Section 5 experimentally.
5 Experimental Results
We have implemented skip-minimality, local failure caching for length condition and CIL strategy in
SOLAR [12] which is a Java implementation of the SOL tableau calculus. Table 1 shows the experi-
mental results for our proposed methods. We used some problems in the TPTP library v2.5.0 [14] as
consequence finding problems, which are satisfiable instances (for example, “BOO008-3.p” is the file
name of the problem). There are 1,092 satisfiable problems in the library and 24 categories contain such
satisfiable instances. We selected 10 categories and chose one satisfiable problem from each category.
We defined a production field in each problem as "L , length ≤ x #, where L is the set of all literals and
the length condition is given as “len ≤ x” in Table 1. “dep ≤ y” means that we limited the maximum
depth of tableaux to y. “sr”, “sm” and “lfc” denote skip-regularity, skip-minimality and local failure
caching for length condition respectively. “#C.” and “#Steps” are the number of found consequences
and the total number of derived tableaux (that is the number of nodes in a SOL search tree) respectively.
The experiments were done on a Core Duo (1.66GHz) machine with 2GB memory. “t.o.” means that the
problem could not solve within 600 CPU seconds.
Table 1 shows that our proposed pruning methods have a great ability for reducing the search space
and improving the speed. In particular, skip-minimality is very effective for solving GRP123-1.005. If
we do not use skip-minimality to solve the problem, then we cannot solve the problem within 600 CPU
seconds. In MSC009-1 and NLP026-1, local failure caching for length condition shows a high pruning
effect. In BOO008-3 and LCL168-1, skip-minimality is not effective because the current implementation
of clause-subsumption checking in SOLAR is naive. The improvement of the clause-subsumption check
algorithm is one of the important future work. The rightmost row of Table 1 indicates that CIL strategy
has almost no overhead. For example, in KRS005-1, CIL executes DFID five times with the maximum
length limit of consequences from 0 to 4. However, the number of inferences and execution time are not
so different than DFID without CIL.
6 Conclusion and Future Work
We have proposed new complete pruning methods and a search strategy for SOL tableau calculus. Local
failure caching for length condition and skip-minimality can avoid producing many redundant tableaux.
CIL is helpful to a user for finding short and simple consequences preferentially in a limited time. The
completeness of local failure caching for length condition supports CIL strategy, and the pruning power
of skip-minimality is promoted by CIL since it generates short consequences in early stages.
Currently, SOLAR does not have a special mechanism for handling equality. In order to solve a
problem with equality efficiently, the development of the complete equality handling mechanism for
consequence finding is one of the important future work.
120
Pruning Methods and a Search Strategy for SOL Nabeshima, Iwanuma, Inoue
Table 1: Experimental results
Pruning DFID DFID + CIL
Problem Params #C
Methods #Steps Time [sec] #Steps Time [sec]
none 831 308,437 2.3 355,371 2.4
dep ≤ 3 sr 831 303,424 2.3 350,358 2.5
BOO008-3.p sm 831 308,437 7.2 355,371 7.4
len ≤ 5 lfc 831 299,195 2.4 342,711 2.5
all 831 295,944 7.3 339,460 7.7
none - - t.o. - t.o.
dep ≤ 5 sr - - t.o. - t.o.
GRP123-1.005.p sm 65 822,283 4.5 935,057 4.9
len ≤ 1 lfc - - t.o. - t.o.
all 65 784,888 4.8 897,662 5.2
none 4 7,187,849 18.3 7,409,286 18.8
dep ≤ 10 sr 4 4,392,088 11.6 4,571,153 12.1
HWV034-1.p sm 4 6,686,239 17.6 6,907,676 18.1
len ≤ 3 lfc 4 4,733,454 14.2 4,952,443 15.1
all 4 3,112,295 10.6 3,288,912 11.0
none 131 160,767,095 438.5 165,203,316 441.4
dep ≤ 4 sr 131 44,631,879 136.2 46,621,089 136.4
KRS005-1.p sm 131 46,303,085 139.3 47,444,019 141.5
len ≤ 4 lfc 131 106,297,270 319.2 110,027,318 333.5
all 131 8,730,512 36.8 9,166,063 37.9
none 2,091 39,103 33.3 40,752 33.4
dep ≤ 5 sr 2,091 38,615 33.5 40,264 33.6
LCL168-1.p sm 2,091 39,103 35.4 40,752 35.6
len ≤ 1 lfc 2,091 38,629 33.4 40,278 33.8
all 2,091 38,141 35.5 39,790 36.0
none 43 11,160,097 23.4 11,442,019 24.7
dep ≤ 4 sr 43 7,453,146 16.7 7,705,908 17.0
MSC009-1.p sm 43 8,835,505 20.1 9,117,427 20.4
len ≤ 4 lfc 43 4,786,900 12.0 4,915,009 12.2
all 43 1,992,519 6.4 2,107,194 6.7
none 15 129,692,801 301.8 130,198,526 307.0
dep ≤ 5 sr 15 72,182,022 178.0 72,667,948 176.5
NLP026-1.p sm 15 129,025,421 309.8 129,531,146 305.0
len ≤ 2 lfc 15 8,218,827 23.7 8,716,795 25.6
all 15 6,391,292 20.8 6,870,050 22.8
none 26 34,997,018 134.7 39,946,809 145.8
dep ≤ 10 sr 26 14,845,990 59.6 17,823,280 66.4
PUZ001-3.p sm 26 731,711 3.8 1,157,985 5.0
len ≤ 3 lfc 26 33,799,877 143.4 38,495,682 154.7
all 26 458,832 3.2 759,780 4.3
none 3 3,906,678 9.3 3,994,168 9.6
dep ≤ 6 sr 3 1,118,100 3.4 1,158,829 3.5
SET777-1.p sm 3 3,502,145 8.5 3,583,800 8.7
len ≤ 2 lfc 3 2,251,658 7.1 2,302,211 7.3
all 3 656,933 2.8 680,619 2.9
none 5 1,335,866 7.0 1,622,436 8.0
dep ≤ 3 sr 5 1,210,436 6.9 1,486,172 7.8
SYN084-1.p sm 5 328,239 2.5 441,974 2.7
len ≤ 4 lfc 5 1,335,866 7.3 1,621,274 8.2
all 5 285,808 2.4 395,557 2.7
121
Pruning Methods and a Search Strategy for SOL Nabeshima, Iwanuma, Inoue
Ray and Inoue [13] have proposed a transformation method for unstable production fields, which
converts these into stable ones. This method greatly helps to define a desired production field and to
prune an unnecessary search space.
References
[1] K Inoue. Linear resolution for consequence finding. Artificial Intelligence, 56:301–353, 1992.
[2] Katsumi Inoue. Automated abduction. In Antonis C. Kakas and Fariba Sadri, editors, Computational Logic:
Logic Programming and Beyond, Essays in Honour of Robert A. Kowalski, Part II, volume 2408 of Lecture
Notes in Computer Science, pages 311–341. Springer, 2002.
[3] Katsumi Inoue. Induction as consequence finding. Machine Learning, 55(2):109–135, 2004.
[4] Katsumi Inoue, Koji Iwanuma, and Hidetomo Nabeshima. Consequence finding and computing answers with
defaults. Journal of Intelligent Information Systems, 26(1):41–58, 2006.
[5] K Iwanuma, K Inoue, and K Satoh. Completeness of pruning methods for consequence finding procedure
SOL. In Proceedings of FTP-2000, pages 89–100, 2000.
[6] Koji Iwanuma and Katsumi Inoue. Conditional answer computation in SOL as speculative computation in
multi-agent environments. In Proceedings of the Third International Workshop on Computational Logic in
Multi-Agent Systems (CLIMA-02), pages 149–162, 2002.
[7] Koji Iwanuma and Katsumi Inoue. Minimal answer computation and SOL. In Proceedings of the Eighth
European Conference on Logics in Artificial Intelligence (JELIA 2002), volume 2424 of Lecture Notes in
Artificial Intelligence, pages 245–257. Springer, 2002.
[8] Char Tung Lee. A completeness theorem and a computer program for finding theorems derivable from given
axioms. PhD thesis, Department of Electrical Engineering and Computer Science, University of California,
Berkeley, CA, 1967.
[9] R. Letz, C. Goller, and K. Mayr. Controlled integration of the cut rule into connection tableau calculi. Journal
of Automated Reasoning, 13(3):297–338, 1994.
[10] Reinhold Letz. Clausal tableaux. In Wolfgang Bibel and Peter H. Schmitt, editors, Automated Deduction - A
Basis for Applications, volume I: Foundations, pages 39–68. Kluwer, Dordrecht, 1998.
[11] Donald W. Loveland. Automated Theorem Proving: a logical basis. North-Holland Publishing Company,
Amsterdam, 1978.
[12] Hidetomo Nabeshima, Koji Iwanuma, and Katsumi Inoue. SOLAR: A consequence finding system for ad-
vanced reasoning. In Proceedings of Automated Reasoning with Analytic Tableaux and Related Methods
(TABLEAUX 2003), pages 257–263, 2003.
[13] Oliver Ray and Katsumi Inoue. A consequence finding approach for full clausal abduction. In Proceedings
of the 10th International Conference on Discovery Science (DS 2007), pages 173–184, 2007.
[14] Geoff Sutcliffe and Christian Suttner. The TPTP problem library for automated theorem proving v2.5.0.
http://www.tptp.org/, 2002.
122