<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Tableau-Based ABox Abduction for Description Logics: Preliminary Report</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Júlia Pukancová</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Martin Homola</string-name>
          <email>homola@fmph.uniba.sk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Comenius University in Bratislava</institution>
          ,
          <addr-line>Mlynská dolina, 84248 Bratislava</addr-line>
          ,
          <country country="SK">Slovakia</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>ABox abduction is an important reasoning problem for description logics (DL) with applications in diagnosis, manufacturing control, multimedia interpretation, etc. Several abductive reasoners for DL were designed and implemented using a translation to first-order logic or logic programming. Algorithms for ABox abduction based directly on native DL reasoning techniques, such as tableau algorithms, were also proposed. Such approaches may potentially benefit from various optimization techniques implemented in tableau-based DL reasoners. In this paper we present our preliminary results with an implementation of an ABox abduction algorithm that is based on the Pellet reasoner.</p>
      </abstract>
      <kwd-group>
        <kwd>Abduction</kwd>
        <kwd>description logics</kwd>
        <kwd>implementation</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        Abduction [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] is a form of backward reasoning which is often used to derive
explanations of some observation. Given a knowledge base K that models a certain problem,
we are confronted with an observation O which is supposed to follow in situations
captured by K , but we are not able to explain O deductively. In abductive reasoning we ask
the question – why is it that O does not follow from K – and we look for a hypothesis
(or, explanation) H such that O follows from K [ H.
      </p>
      <p>
        Considering abduction in the DL area [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], we need to further di erentiate between
TBox abduction, where we are interested in explaining why some intentional axiom
(e.g., subsumption) does not follow from the given knowledge base which can be useful
for instance in ontology engineering. On the other hand, in ABox abduction we have
an observation in form of some data, that is, some recorded facts that are observed.
We also typically look for an extensional explanation: some data that could explain
the observation. Applications of ABox abduction can be found in diagnostics, such as
diagnosing the condition of the patient from the observed symptoms [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] or diagnosing
the behaviour of a manufacturing system [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. But also in other areas, such as
multimedia interpretation [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
      <p>
        Several works were devoted to development of reasoning algorithms for ABox
abduction. Klarman et al. [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] and Du et al. [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] designed and implemented such solvers
using a translation to first-order logic or logic programming, respectively. Halland and
Britz [
        <xref ref-type="bibr" rid="ref4 ref5">5,4</xref>
        ] proposed an ABox abduction algorithm based on a tableau reasoner. They
conjectured that such an approach may possibly take advantage of optimization
techniques already implemented in DL reasoners, however we are not aware of an
implementation and experimental evaluation of their work.
      </p>
      <p>
        In this paper, we describe an implementation of an ABox abduction reasoner
similar to that proposed by Halland and Britz. The reasoner is based on Reiter’s minimal
hitting set algorithm [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] which is combined with a tableau reasoner, Pellet [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] in our
case. Our implementation is based on a more tight integration of the minimal hitting
set algorithm and the tableau reasoner as it was proposed by Reiter. So far it has a
number of limitations which we plan to address in future research. Consecutively we
plan to conduct an experimental evaluation and compare the performance with other
approaches.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>ABox Abduction in DL</title>
      <p>
        In DL, the knowledge base K is typically split into the TBox T , containing intensional
knowledge in form of subsumption axioms, and the ABox A containing extensional
knowledge in form of assertions. Subsumption axioms are of the form C v D, meaning
that C is more specific than D; concept assertions are of the form a : C, meaning that
the individual a belongs to the concept C; while role assertions are of the form a; b : R,
meaning that the individuals a and b are connected by the role R. Depending on the
particular DL, concepts (and sometimes roles) may be atomic or constructed using di erent
constructors (e.g., :, u, t, 9, and 8, for ALC). Models of K are typically understood as
interpretations I = ( I; I) with a nonempty domain I and an interpretation function
I that satisfy all axioms in K , however in this work we will homomorphically record
them as enumerations of ABox assertions M such that for each individual a and atomic
concept A either = a : A 2 M or : = a : :A 2 M, and similarly for each pair of
individuals a; b and each role R. A subsumption axiom or an ABox assertion is said
to follow from K if it is satisfied in all models of K , which is then denoted by K j= .
For further details, refer for instance to the DL Handbook [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        ABox abduction covers the case in which the observation is of the form of actual
facts, that is ABox assertions. Formal definition was proposed by Elsenbroich et al. [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
Definition 1 (ABox Abduction Problem [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]). An ABox abduction problem is a pair
P = (K ; O) such that K is a knowledge base in DL and O is an ABox assertion. A
solution of P is any finite set H of ABox assertions such that and K [ H j= O.
      </p>
      <p>Abduction is a form of hypothetical reasoning. The solutions do not follow from
the knowledge base in the deductive sense of the word, but they are rather hypothetical
guesses of certain new knowledge (facts in the case of ABox abduction) that, if added
to K , allow to explain the observation O deductively. Therefore they are also called
hypotheses.</p>
      <p>Definition 1 is very general, it allows also certain trivial types of solutions. Further
constraints are typically required to hold. The most basic constraints that are typically
always required are the following three.</p>
      <p>
        Definition 2 ([
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]). Given an ABox abduction problem P = (K ; O) and its solution H
we say that:
      </p>
      <p>Consistency is required, because if the knowledge base together with the hypothesis
are inconsistent (K [ H j= ?), anything follows. Such hypotheses would explain every
observation and so they are not meaningful. Relevance is required, because the
knowledge base K represents some background theory from which we are interested to derive
the hypotheses. Therefore we should not be able to explain the observation without it.
Finally, an abduction problem only needs explaining if the observation does not already
follow from K .</p>
      <p>Even if all three of these constraints are applied the number of possible explanations
is still very high. In fact it is even infinite, as deductive entailment in DL is monotonic:
given an abduction problem P = (K ; O) and its solution H, we always have that also
H0 is a solution of P for any H0 such that H H0. Therefore further restrictions are
required. These can be based on syntactic or semantic measures.</p>
      <p>Definition 3 (Syntactic Minimality). Assume an ABox abduction problem P = (K ; O).
Given two solutions H and H0 of P, we say that H is (syntactically) smaller than H0 if
H H0.1 We further say that a solution H of P is syntactically minimal if there is no
other solution H0 of P that is smaller than H.</p>
      <p>Example 1. Consider the knowledge base K with two axioms:</p>
      <sec id="sec-2-1">
        <title>Professor t Scientist v Academician</title>
      </sec>
      <sec id="sec-2-2">
        <title>AssocProfessor v Professor</title>
        <p>(1)
(2)
Given the observation O = fjack : Academiciang we are able to find a number of
abductive explanations of P = (K ; O), e.g., H1 = fjack : Professorg, H2 = fjack : Scientistg,
H3 = fjack : Professor; jack : Scientistg, H4 = fjack : AssocProfessorg. We may observe
that H1 and H2 are both smaller than H3. Therefore H3 is not a syntactically minimal
explanation, while the other three are.</p>
        <p>Indeed if H is a syntactically smaller solution of P than H0, then the assertions of
H0 n H are useless; they are not required in order to explain P. As abduction is a form of
hypothetical reasoning, H0 amounts to additional and unnecessary guessing, which is
not desired. Even if two solutions are incomparable with respect to Definition 3 smaller
solutions (with respect to set size) are often preferred. While syntactic measures allow
to filter out a great number of undesired solutions, semantic measures are usually more
preferred.</p>
        <p>K H.</p>
        <p>Definition 4 (Semantic Minimality). Assume an ABox abduction problem P = (K ; O).
Given two solutions H and H0 of P, we say that H is (semantically) stronger than H0
(denoted by H K H0) if K [ H j= H0. A solution H of P is semantically minimal if for
every H0, H0
1 Note that before we compare two solutions H and H0 of P syntactically, we typically normalize
the assertions w.r.t. (outermost) concept conjunction: as a : C u D is equivalent to the pair of
assertions a : C and a : D, we replace the former form by the latter while possible.</p>
        <p>Also, if H is a semantically stronger solution of P than H0, then vice-versa H0 is a
(semantically) weaker solution of P than H.</p>
        <p>Example 2. Reinspecting the explanations from Example 1 we may now observe that
both H1 and H2 are weaker than H3. However, the explanation H5 = fjack : Professor t
Scientistg is weaker then either of H1 and H2, and is semantically minimal.</p>
        <p>In general, almost always only consistent, relevant, and explanatory solutions are
considered. Syntactically minimal solutions are also typically preferred. However,
semantic measures are considered the most important because they allow to compare a
greater number of hypotheses. As we saw in Examples 1, 2 we were not able to
compare H1 and H2 with H3 purely syntactically.</p>
        <p>
          While semantically weaker solutions are most typically preferred as this reduces
the amount of guessing, this may also depend of the particular application. For example
Petatis et al. [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ] show an application of abduction in muti-media interpretation where
semantically stronger solutions represent a higher level of abstraction and therefore they
are more preferable.
3
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>ABox abduction algorithm</title>
      <p>
        From Definition 1 we know that a set of assertions H is an explanation of P = (K ; O)
if K [ H j= O. As entailment is reducible to consistency checking, we have that H is
an explanation of P if K [ H [ f:Og is inconsistent. According to Reiter [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] one can
find such explanations by considering all models of K [ f:Og and constructing the set
H by selecting and negating one assertion from each of these models. It follows that
K [ H [ f:Og will have no models. For this reason Reiter uses the notion of a hitting
set [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]:
Definition 5 (Hitting Set [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]). Given a set of sets F, a hitting set H of F is any set
such that H \ S , fg for every S 2 F.
      </p>
      <p>A hitting set H of F is called minimal if there is no other hitting set H0 of F such
that H0 H. An interesting property of minimal hitting sets is that, given F the set of
all negated models of K [ f:Og, called conflict sets,2 the set of all minimal hitting sets
of F corresponds to the set of all syntactically minimal explanations of P. Therefore
the task of finding these explanations reduces to the task of finding the minimal hitting
sets of F.</p>
      <p>
        To find all minimal hitting sets, Reiter constructs a structure called HS-tree.
Definition 6 (HS-tree [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]). Suppose F is a collection of sets. An edge-labelled and
node-labelled tree T is an HS-tree for F i it is a smallest tree with the following
properties:
1. Its root is labelled by X if F is empty. Otherwise, its root is labelled by a set of F.
2 More precisely, since we are only interested in explanations composed of atomic (and
negated atomic) concept assertions, that is, given a model M the respective conflict set is
fa : :C j a : C 2 M where C is either atomic or negated atomic conceptg.
      </p>
      <p>HS-tree has the property, that the sets H(n) where n is a leaf-node are all hitting
sets for F, and the minimal hitting sets are all included. Since there are possibly hitting
sets which are not minimal, the HS-tree is constructed breadth-first and some pruning
is applied for the sake of optimization.</p>
      <p>A branch of the tree can be pruned in the node n (such nodes are labelled by
instead of X) without losing any minimal hitting set: if there is n0 such that H(n0) H(n)
and n0 is labelled by X; or if there is n0 such that H(n0) = H(n) and n0 is labelled by
some nonempty conflict set S 2 F.</p>
      <p>If S 2 F and S 0 2 F with S a proper subset of S 0, then F nfS 0g has the same minimal
hitting sets as F. Therefore if there are nodes n and n0 respectively labelled by S and S 0
of F such that S 0 S , then we can prune each edge from node n labelled by 2 S n S 0
including its subtree.</p>
      <p>Now the pruned HS-tree has the following property.</p>
      <p>
        Theorem 1 (Reiter [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]). Let F be a collection of sets, and T a pruned HS-tree for F,
as previously described. Then fH(n) j n is a node of T labelled by Xg is the collection
of minimal hitting sets for F.
      </p>
      <p>
        One possible approach how to use the minimal hitting set algorithm (MHS) is to
start by generating all models of K [ f:Og using the tableau algorithm for DL [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] (TA),
create the collection of respective conflict sets F, and consecutively to construct the
HS-tree.3
      </p>
      <p>
        Once the HS-tree is constructed we are able to extract the explanations as the
minimal hitting sets. However, since we have further requirements on the explanations as
given in Definition 2 they still have to be checked whether they satisfy consistency and
relevance. This can be done by calling TA and verifying the consistence of K [ H and
H [ f:Og respectively for each extracted hitting set H. This approach, which was also
used by Halland and Britz [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], is illustrated in the following example.
      </p>
      <p>Example 3. Find the explanation for the knowledge base K = T [ A and observation
O = a : C. TBox T and ABox A are: T = fE v C; F v Dg, A = fg .
1. Models for K [ f:Og are in collection MS = fM1; M2; M3g.</p>
      <p>M1 = fa : :C; a : :D; a : :E; a : :Fg
M2 = fa : :C; a : D; a : :E; a : Fg</p>
      <p>
        M3 = fa : :C; a : D; a : :E; a : :Fg
3 Note that this approach requires to enumerate the models (or, the conflict sets) which is only
straight forwardly possible for logics with the finite model property [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Further extension
would be required to handle also infinite models.
      </p>
      <p>fa: C; a: D; a: E; a: Fg
X
fa: C; a: :D; a: E; a: :Fg
fa: C; a: :D; a: E; a: :Fg
a: C</p>
      <p>a: D
a: C
a: :D</p>
      <p>X
a: E a: :F</p>
      <p>X
a: E</p>
      <p>X
a: F
a: C a: :D</p>
      <p>X
a: E a: :F</p>
      <p>X</p>
      <p>
        The computation of all models of a knowledge base is a costly pre-processing step.
Instead, the set F can be computed step by step sequentially during the construction
of HS-tree. We will adopt this approach in our implementation. Further details are
described in the following section.
We will now describe the version of the abductive algorithm actually implemented in
our work. As proposed by Reiter [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], to avoid computing the whole collection of
conflict sets F we start by computing the first conflict set for the root node of the HS-tree
as the negation of the first model obtained by calling TA on K [ f:Og. For any of the
following nodes n we need to obtain a conflict set S such that S \ H(n) = fg. This can
be done by calling TA on K [ f:Og [ H(n).
      </p>
      <p>Thus we construct the HS-tree even without pre-computing all elements of F
beforehand and extract the explanations from the HS-tree as all minimal hitting sets.</p>
      <p>The algorithm takes a DL ontology K as the input knowledge base and a single
(even complex) concept assertion O as input observation. It starts by checking the
consistency of K [ f:Og by a call to TA. If K [ f:Og is inconsistent then there is nothing
to explain and the algorithm terminates without returning any explanations. In the other
case it initializes the HS-tree with root n which is labelled by a conflict set S obtained by
negating the model of K [ f:Og returned by TA. The algorithm then creates a successor
node ns of n for each s 2 S .</p>
      <p>Consequently the main cycle is executed for each node n without label; the nodes
are loaded w.r.t. breadth-first search:
1. create K 0 as the union of K [ f:Og and the set of ABox assertions H(n),
2. call TA for K 0 and get a new model M
3. create new conflict set S as the negation of M,
4. label n with S ,
5. for every s 2 S create the n-successor ns and label the edge with s.</p>
      <p>If K 0 is inconsistent, i.e. it has no model, we will set M = fg in step 2. Consequently
the respective conflict set will be S = fg and that implies that step 5 produces no
successors. The label fg is analogous to Reiter’s label X, but we are not introducing a new
symbol – the meaning of the empty set fg is exactly the same as of Reiter’s X.</p>
      <p>In addition, it is possible to construct the set of minimal hitting sets HS on the fly
during the run of our algorithm. The consecutively stored hitting sets will all be minimal
thanks to breadth-first search. The following optimizations proposed by Reiter are also
performed before calling TA for each node n in order to reduce the number of these
calls:
o1. if there is an ABox assertion a : C 2 H(n) and also an ABox assertion a : :C 2 H(n)
for some individual a and some concept C, then label node n by fg and do not store
H(n) in HS , that is, close the path in n,
o2. otherwise if there is a hitting set H 2 HS such that H H(n), then label node n by
fg and do not store H(n) in HS , that is, close the path in n,
o3. otherwise if there is a node n0 such that H(n0) = H(n) and the label of n0 is neither
null nor fg, then label node n by fg and do not store H(n) in HS , that is, close the
path in n,
o4. otherwise if there is a model M in the stored models MS (M 2 MS ) and H(n) M,
then label the node n by negation of M, that is, reuse existing model.</p>
      <p>If none of the previous conditions is satisfied, the algorithm calls TA. If the returned
model M is fg and if H(n) is a relevant and consistent explanation according to
Definition 2, then H(n) is added to the set of stored hitting sets HS . If M , fg then M is stored
in MS . The hitting sets may also be output on the fly at the time when they are added
into HS . It follows from the construction of the edge labels, that the output explanations
will all be collections of atomic and negated atomic concept assertions. The run of the
algorithm is demonstrated in Example 4.</p>
      <p>Example 4. Let us find the explanations for the same knowledge base K = T [ A and
observation O = a : C as in Example 3, where T = fE v C; F v Dg, and A = fg. Refer
again to Figure 1 as the hitting tree constructed in this example will be the same.
1. Let TA compute a model for K [ :O: M1 = fa : :C; a : :D; a : :E; a : :Fg.
2. Create a conflict set for M1: S 1 = fa : C; a : D; a : E; a : Fg.
3. Create HS-tree T with root r labelled with S 1.</p>
      <p>
        Observe that it was su cient for our algorithm to compute models M1 and M2 to
complete the whole process. We never computed M3 from Example 3. Hence by tighter
integration of MHS and the TA calls we save some of the work the approach of Halland
and Britz [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] does already during pre-processing. Of course a thorough experimental
evaluation would be needed to understand which of the approaches is more e ective in
practice.
      </p>
      <p>The detailed pseudo code of our algorithm is included in the Algorithm 3.1. We will
now comment on the pseudo code in details:
Line 1: Variable inputKB is used to store the initial ontology Ont and the negation of
observation O.</p>
      <p>Lines 2-3: K is the working instance of the knowledge base for which we will be
checking the consistency and subsequently obtaining a model via TA.
Lines 8-9: HS is initialized as the empty set and the minimal hitting sets will be stored
in it subsequently. MS is initialized by adding the first model that was computed
and the other models will be stored in it subsequently.
Line 12: The main cycle is running while there are still nodes from the HS-tree T that
are not explored w.r.t. breadth-first search.</p>
      <p>Lines 15-16: If one of the path-trimming condition o1–3 is satisfied, then M is set to
empty set.</p>
      <p>Lines 17-18: If it is possible to reuse some model N already stored in MS according
to the optimization o4, then set M to N.</p>
      <p>Lines 20-21: If none of previous conditions was satisfied, it is necessary to call TA in
order to check the consistency of the updated K .</p>
      <p>Lines 22-24: If TA returned an empty model, and if the path from root to node n is
a relevant and consistent explanation, then algorithm found a minimal hitting set
and stores it in HS .</p>
      <p>Line 27: If TA found another nonempty model, then algorithm stores it in MS .
Line 30-32: The node n is labelled, its successors are created and n is set to next node
from T .
4</p>
    </sec>
    <sec id="sec-4">
      <title>Implementation</title>
      <p>Our algorithm is implemented in pure Java. The run of the algorithm combines calls to
the tableau algorithm and the implementation of the minimal hitting set algorithm.</p>
      <p>
        Calling the tableau algorithm is executed by checking the consistency of the
respective knowledge base through the Pellet reasoner [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. Pellet is an open source OWL DL
reasoner implemented in Java. We have used Pellet 2.3.1 which is the latest open-source
version. It features full OWL 2 support which means that theoretically OWL 2 ontology
may be used with our algorithm, however additional care needs to be taken for logics
without the finite model property [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>The input OWL ontology is loaded in Pellet from a file in RDF/XML syntax.
Consequently our algorithm is able to add ABox assertions as needed to the knowledge base
at any time, and it may also start reasoning at any time. One of the main tasks of Pellet is
to verify the consistency of the knowledge base, but not to enumerate or return models.
Pellet works on top of the ABox and tries to complete it using the tableau rules. Once
done, it verifies the consistency by checking if the completed ABox contains a clash or
not. Our algorithm then gets the model as the extraction of atomic concept assertions
from the Pellet’s ABox. To actually complete the model, if for some individual a and
concept A the assertion a : A is not present in the ABox we add a : :A to the model.</p>
      <p>Our own implementation includes the minimal hitting set algorithm and its
combination with the tableau reasoning using Pellet. All of the optimizations used in
Algorithm 3.1 were implemented. Our entire algorithm is based on the construction of
the HS-tree, thus our implementation works with its own tree structure, node and edge
labelling, collection of conflict sets and models, and so on. For checking the relevance
and consistency of the hitting sets it is again necessary to call Pellet, as well as for
knowledge base consistency checking.</p>
      <p>As we can see in Algorithm 3.1 the algorithm is storing the minimal hitting sets on
the fly. It stores only the minimal hitting sets, hence when the main cycle finishes then
the answer of the algorithm is the stored collection of minimal hitting sets HS , i.e. the
explanations.</p>
      <p>Our implementation is available for download at: http://dai.fmph.uniba.sk/
~pukancova/aaa/ .
5</p>
    </sec>
    <sec id="sec-5">
      <title>Related Work</title>
      <p>
        Most relevant to our work is the one of Halland and Britz [
        <xref ref-type="bibr" rid="ref4 ref5">5,4</xref>
        ] who also combine
a tableau-based DL reasoner with the Reiter’s MHS algorithm. To the best of our
knowledge, the actual implementation of the work of Halland and Britz was not described in
the literature. It is the aim of our work to implement and evaluate this approach. As
noted above, one actual di erence in our work is that we avoid to compute all
models by TA during pre-processing and instead we call TA on demand during the run of
MHS. Another di erence is that for now we only support single concept assertion as
the observation.
      </p>
      <p>
        In comparison to the translation-based approaches [
        <xref ref-type="bibr" rid="ref2 ref9">2,9</xref>
        ] we exploit the
tableaubased reasoning directly in DL. Tableau-based reasoning may be more e ective in case
of DL and we want to exploit various tableau optimization techniques as well.
      </p>
      <p>
        Yet another interesting approach to abduction was presented by Petatis et al. [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
Their abduction algorithm is described by Kaya et al. [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. The abductive reasoning
service is tailored to a specific application where only a part of the KB is used
abductively represented by conjunctive DL-safe rules. The abduction is then executed by
a backward-chaining procedure. Our work is di erent in that we want to derive a general
purpose abductive reasoner for DL in which the whole DL knowledge base is reasoned
with abductively.
6
      </p>
    </sec>
    <sec id="sec-6">
      <title>Conclusions</title>
      <p>In this preliminary report we have described our implementation of an abductive
reasoning algorithm for DL that combines Reiter’s minimal hitting set algorithm with a
tableau-based DL reasoner, Pellet in this case. Our implementation so far has the
following limitations:
1. observations are only in the form of a single concept assertion;
2. explanations are limited to a set of atomic and negated atomic concept assertions,
that is the explanation H5 from Example 2 will not be computed by our algorithm;
3. the computed explanations are syntactically minimal, however our algorithm is not
yet able to take also semantic minimality into the account;
4. while some basic optimization techniques are already implemented (especially
HStree pruning), many of them are still missing (e.g., some form of tableau caching or
incremental tableau reasoning).</p>
      <p>
        In the future we would like to address the limitations above, and we would like to
conduct an empirical evaluation of the implementation by trial runs on selected
ontologies, similarly as described by Du et al. [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>
        We would also like to implement a version similar to the approach described by
Halland and Britz [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] where the models are computed in an exhaustive run of the tableau
reasoner in the pre-processing step and only then the minimal hitting set algorithm is
executed. We would like to compare the performance of both approaches as well as
some of the approaches based on translation to first-order logic or logic programming
[
        <xref ref-type="bibr" rid="ref2 ref9">2,9</xref>
        ].
      </p>
      <p>Acknowledgments. The research reported in this paper was supported by VEGA
projects 1/1333/12 and 1/0867/16. Júlia Pukancová is also supported by an
extraordinary scholarship awarded by Faculty of Mathematics, Physics, and Informatics,
Comenius University in Bratislava.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McGuinness</surname>
            ,
            <given-names>D.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nardi</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patel-Schneider</surname>
            ,
            <given-names>P.F</given-names>
          </string-name>
          . (eds.):
          <article-title>The Description Logic Handbook: Theory, Implementation, and Applications</article-title>
          . Cambridge University Press (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Du</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Qi</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shen</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pan</surname>
            ,
            <given-names>J.Z.</given-names>
          </string-name>
          :
          <article-title>Towards practical ABox abduction in large description logic ontologies</article-title>
          .
          <source>Int. J. Semantic Web Inf. Syst</source>
          .
          <volume>8</volume>
          (
          <issue>2</issue>
          ),
          <fpage>1</fpage>
          -
          <lpage>33</lpage>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Elsenbroich</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kutz</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>A case for abductive reasoning over ontologies</article-title>
          .
          <source>In: Proceedings of the OWLED*06 Workshop on OWL: Experiences and Directions</source>
          , Athens, Georgia, USA, November
          <volume>10</volume>
          -
          <issue>11</issue>
          ,
          <year>2006</year>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Halland</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Britz</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Abox abduction in ALC using a DL tableau</article-title>
          . In: 2012 South African Institute of Computer Scientists and Information Technologists Conference, SAICSIT '12,
          <string-name>
            <surname>Pretoria</surname>
          </string-name>
          , South Africa,
          <source>October 1-3</source>
          ,
          <year>2012</year>
          . pp.
          <fpage>51</fpage>
          -
          <lpage>58</lpage>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Halland</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Britz</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Naïve ABox abduction in ALC using a DL tableau</article-title>
          .
          <source>In: Proceedings of the 2012 International Workshop on Description Logics, DL-2012</source>
          , Rome, Italy, June 7-10,
          <year>2012</year>
          .
          <source>Sun SITE Central Europe (CEUR)</source>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Hubauer</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Legat</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Seitz</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Empowering adaptive manufacturing with interactive diagnostics: A multi-agent approach</article-title>
          .
          <source>In: Advances on Practical Applications of Agents and Multiagent Systems - 9th International Conference on Practical Applications of Agents and Multiagent Systems, PAAMS</source>
          <year>2011</year>
          , Salamanca, Spain,
          <fpage>6</fpage>
          -
          <lpage>8</lpage>
          April
          <year>2011</year>
          . pp.
          <fpage>47</fpage>
          -
          <lpage>56</lpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Karp</surname>
            ,
            <given-names>R.M.:</given-names>
          </string-name>
          <article-title>Reducibility among combinatorial problems</article-title>
          .
          <source>In: Proceedings of a symposium on the Complexity of Computer Computations, held March 20-22</source>
          ,
          <year>1972</year>
          , at the IBM Thomas J. Watson Research Center, Yorktown Heights, New York. pp.
          <fpage>85</fpage>
          -
          <lpage>103</lpage>
          (
          <year>1972</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Kaya</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Melzer</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Möller</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Espinosa</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wessel</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Towards a foundation for knowledge management: Multimedia interpretation as abduction</article-title>
          .
          <source>In: Proceedings of the 2007 International Workshop on Description Logics (DL</source>
          <year>2007</year>
          ),
          <article-title>Brixen-Bressanone, near BozenBolzano</article-title>
          , Italy,
          <fpage>8</fpage>
          -
          <lpage>10</lpage>
          June,
          <year>2007</year>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Klarman</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Endriss</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schlobach</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>ABox abduction in the description logic ALC</article-title>
          .
          <source>Journal of Automated Reasoning</source>
          <volume>46</volume>
          (
          <issue>1</issue>
          ),
          <fpage>43</fpage>
          -
          <lpage>80</lpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Peirce</surname>
            ,
            <given-names>C.S.</given-names>
          </string-name>
          :
          <article-title>Deduction, induction, and hypothesis</article-title>
          .
          <source>Popular science monthly 13</source>
          ,
          <fpage>470</fpage>
          -
          <lpage>482</lpage>
          (
          <year>1878</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Petasis</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Möller</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Karkaletsis</surname>
          </string-name>
          , V.:
          <article-title>BOEMIE: Reasoning-based information extraction</article-title>
          .
          <source>In: Proceedings of the 1st Workshop on Natural Language Processing and Automated Reasoning co-located with 12th International Conference on Logic Programming and Nonmonotonic Reasoning (LPNMR</source>
          <year>2013</year>
          ),
          <string-name>
            <given-names>A</given-names>
            <surname>Corunna</surname>
          </string-name>
          , Spain,
          <year>September 15th</year>
          ,
          <year>2013</year>
          . pp.
          <fpage>60</fpage>
          -
          <lpage>75</lpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Pukancová</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Homola</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Abductive reasoning with description logics: Use case in medical diagnosis</article-title>
          .
          <source>In: Proceedings of the 28th International Workshop on Description Logics (DL</source>
          <year>2015</year>
          ), Athens,Greece, June 7-10,
          <year>2015</year>
          . (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Reiter</surname>
          </string-name>
          , R.:
          <article-title>A theory of diagnosis from first principles</article-title>
          .
          <source>Artif. Intell</source>
          .
          <volume>32</volume>
          (
          <issue>1</issue>
          ),
          <fpage>57</fpage>
          -
          <lpage>95</lpage>
          (
          <year>1987</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Sirin</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parsia</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grau</surname>
            ,
            <given-names>B.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kalyanpur</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Katz</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          :
          <article-title>Pellet: A practical OWL-DL reasoner</article-title>
          .
          <source>Web Semantics: science, services and agents on the World Wide Web</source>
          <volume>5</volume>
          (
          <issue>2</issue>
          ),
          <fpage>51</fpage>
          -
          <lpage>53</lpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>