in Prolog implementations (Bruynooghe,1982), how-
ever our notion of proof-trees is extended to make it
complete for full first-order logic, in a way similar to
that proposed in MESON system by Loveland(1978).
The representation of a proof by proof-trees induces
the reading of clauses as implications, allowing an-
swer explanations independent of the steps actually
done by the inference system (Vieira, 1987).
Thus, in this paper, we present an algorithm that,
from a proof-tree that corresponds to a disjunctive an-
swer of the form
P(T
1
) ∨ P(T
2
) ∨ ...∨ P(T
k
),
k ≥ 2, extracts a case-based answer, of the form
α
1
→ P(T
i
1
)
α
2
→ P(T
i
2
)
...
α
m
→ P(T
i
m
)
1 ≤ i
1
, i
2
,...,i
m
≤ k, where α
1
∨ α
2
∨ ... ∨ α
m
is a
logical consequence of the knowledge base and α
j
is a case that implies the answer P(T
i
j
). Moreover,
we assume that each T
i
is a n-tuple of ground terms,
and so the answer is a “specific answer” according to
the classification of Burhans and Shapiro (2007). As
far as we know, the presentation of a specific disjunc-
tive answer in the above format is original. We are
still working in the generalization of our method to
the other classes of answers (generic and hypothetical
answers).
We must, however, emphasize that the quality of
the answers of our algorithm depends on the knowl-
edge present in the proof-tree. In particular, if the
knowledge is intrinsically disjunctive, then it may
not be possible to obtain an answer that has the
general form indicated above. For example, if you
ask the question “What subject does John teach?”,
and the knowledge base contains the fact that “John
teaches Mathematics or John teaches Logic”, then
from this fact it follows immediately the statement
“John teaches some subject.”. Obviously, a corre-
sponding proof-tree does not contain information that
would allows us to extract or construct cases that im-
ply the answer “John teaches Mathematics” or “John
teaches Logic”. Even if the proof-free has sufficient
knowledge for the extraction of an answer with the
above format, a meaningful answer could depend on
characteristics of the user not present in a proof-tree
(typically, one would try to capture such characteris-
tics in an user model). Any way, the non deterministic
algorithm to be presented will not exclude any of the
meaningful answers.
This work builds one additional step in the di-
rection of making formal methods of reasoning more
amenable to use in practice. It exhibits information
already present in a proof but otherwise concealed
from users. As a consequence, it makes a question-
answering system more “collaborative” at practically
no additional cost.
This paper is organized in the following way: sec-
tion 2 presents the definition of proof-trees and its
properties. Section 3 makes a brief discussion about
information extraction from closed proof-trees and
introduces an example that will be used to explain
the algorithm proposed. The algorithm for extract-
ing case-based answers from closed proof-trees is de-
scribed in section 4. Finally, the conclusions of this
work are presented in section 5.
2 PROOF-TREES
A proof-tree is essentially what in (Letz and Stenz,
2001) is defined as a clausal tableau. Proof-trees have
its nodes labeled with literals. In our definition of
proof-trees, we will use a linear notation. A proof-
tree is an ordered pair Lα, such that L is a literal and α
is a set (possibly empty) of literals and/or proof-trees.
The literals M of every subtree Mβ that occurs in Lα
are termed expanded literals. The remaining literals
are divided into two groups: reduced and candidate
literals. Candidate literals are literals that have yet to
be proven. Expanded and reduced literals are literals
already used in some inference rule of the proof pro-
cedure.
A proof-tree is defined inductively by the follow-
ing inference rules. The notation
L is used to refer to
the complement of literal L, while |L| is used to refer
to the atom of literal L.
(Codification rule) The codification of an input
clause L
1
∨ L
2
∨ ... ∨ L
m
produces the proof-tree
⊥{
L
1
, L
2
,...,L
m
}. Thus, the root of every proof-
tree is the literal ⊥ (falsum).
(Expansion rule) The expansion of a proof-tree
⊥{...L
1
...}, where L
1
is a candidate literal,
with an input clause M
0
∨ M
1
∨ ... ∨ M
n
such
that L
1
and M
0
are unifiable with most gen-
eral unifier (mgu) σ, produces the proof-tree
⊥{...L
1
{M
1
, M
2
,...,M
n
}...}σ.
(Reduction rule) The reduction of a proof-tree
⊥{...L
1
{...L
2
...}...}, where L
2
is a candidate
literal of opposite sign to L
1
and |L
1
| and |L
2
|
are unifiable with mgu σ, produces the proof-tree
⊥{...L
1
{...L
2
...} ...}σ.
Every deduction starts with the application of the cod-
ification rule, which produces the initial proof-tree.
The expansion and reduction rules are similar to the
extension and reduction rules of model elimination
ICAART 2010 - 2nd International Conference on Agents and Artificial Intelligence
378