<!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>On Computing Minimal E L -Subsumption Modules</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Jieying CHEN</string-name>
          <email>jieying.chen@lri.fr</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Michel LUDWIG</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Dirk WALTHER</string-name>
          <email>dirkg@tcs.inf.tu-dresden.de</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Laboratoire de Recherche en Informatique, Universite ́ Paris-Sud</institution>
          ,
          <country country="FR">France</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Theoretical Computer Science</institution>
          ,
          <addr-line>TU Dresden</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>In the paper we study algorithms for computing minimal modules that are minimal w.r.t. set inclusion and that preserve the entailment of all E L subsumptions over a signature of interest. We follow the black-box approach for finding one or all justifications by replacing the entailment tests with logical difference checks, obtaining modules that preserve not only a given consequence but all entailments over a signature. Such minimal modules can serve to improve our understanding of the internal structure of large and complex ontologies. Additionally, several optimisations to speed up the computation of minimal modules are investigated. We present an experimental evaluation of an implementation of our algorithms by applying them on the medical ontologies Snomed CT and NCI.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        A module is a subset of an ontology that can act as a substitute for the ontology in
certain contexts. A basic requirement on modules is to be indistinguishable from the
original ontology w.r.t. an inseparability relation. Such basic modules are also called ‘plain’
modules. Further module properties such as self-containment and depletion have been
proposed in the literature [
        <xref ref-type="bibr" rid="ref11 ref9">9, 11</xref>
        ] (also called weak and strong in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]). These properties
together with inseparability relations give rise to a family of module notions. Several
inseparability notions have been considered, e.g., model-theoretic inseparability w.r.t. a
signature [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], or inseparability w.r.t. answers to queries [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] (i.e., two ontologies are
inseparable iff they entail the same queries). Popular query types are subsumption, instance
and conjunctive queries. In particular, for E L -TBoxes model-theoretic inseparability
w.r.t. a signature S coincides with entailment of second-order sentences over S (cf.
Theorem 4 in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]). We call modules based on model-theoretic inseparability semantic
modules. In this paper, however, we consider a weaker inseparability relation that is based on
subsumption queries between E L -concepts over a given signature. We call the resulting
modules E L -subsumption modules.
      </p>
      <p>
        An important requirement on modules is that they should be as small as possible,
which is particularly useful, e.g., in the ontology re-use scenario [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. As smallest modules
are not necessarily unique, we are interested in computing all basic E L -subsumption
modules that are minimal w.r.t. set inclusion. Computing minimal basic semantic
modules of E L -terminologies that are additionally self-contained and depleting has been
investigated in [
        <xref ref-type="bibr" rid="ref8 ref9">8, 9</xref>
        ]. Algorithms for computing minimal modules of DL-Lite
ontologies have been studied in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. However, to the best of our knowledge, no practical
approach for computing one or all basic E L -subsumption modules of E L -terminologies
has been considered.
      </p>
      <p>
        Minimal modules can serve as explanations of the entire set of entailments over a
signature, similar to the justifications for one consequence (i.e., minimal sets of axioms
sufficient to entail the consequence) [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. In this sense, minimal modules can improve our
understanding of the internal structure of large and complex ontologies. Moreover, being
able to compute all minimal modules allows us to select the smallest minimal module.
      </p>
      <p>
        In general, extracting minimal modules is intractable, which is the reason why
efficiently extractable approximations of the (union of all) minimal modules have been
introduced. Among such approximations are the family of syntactic locality-based
modules [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Such modules may contain more axioms than necessary to ensure the
preservation of entailments over a signature. For instance, the size of the syntactic ?&gt;
locality modules [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] of Snomed CT (version Jan 2016) for 100 signatures consisting of
50 concept names selected at random together with all roles names ranges from 1 075 to
2 456 axioms. This is in contrast to the size of the minimal basic E L -subsumption
modules for these signatures that ranges from around 50 to 118 axioms. Hence, such
minimal modules of Snomed CT may be more than 20 times smaller than the corresponding
syntactic ?&gt; -locality modules.
      </p>
      <p>
        The system MEX has been introduced to compute minimal depleting semantic
modules (which are unique for a given signature) from acyclic E L -terminologies (possibly
extended with inverse roles) such as Snomed CT. The MEX-modules contain all
minimal basic E L -subsumption modules, i.e., the module notion that we are interested in.
The size of the MEX-modules of Snomed CT for the same signatures as above ranges
from 401 to 720 axioms. However, the corresponding minimal basic E L -subsumption
modules are still at least 6 times smaller. Moreover, MEX cannot handle cyclic E L
terminologies such as some recent versions of NCI. For instance, the size of the
syntactic ?&gt; -locality module of NCI (version 14.01d) for 100 random signatures selected
from NCI (as before for Snomed CT just with 100 concept names) ranges from 679 to
3 895 axioms, whereas the size of the corresponding minimal basic E L -subsumption
modules ranges from around 0 to 64 axioms. Clearly, the ratio of the size of the syntactic
?&gt; -locality based modules compared to the size of the minimal basic E L -subsumption
modules is even larger than 20 in this case. Another approach for extracting minimal
depleting modules from DL-Lite ontologies is based on using QBF-solvers [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
      <p>
        In this paper, in order to compute minimal basic E L -subsumption modules we
extend the black-box approach for finding one or all justifications in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], which is based
on Reiter’s hitting set algorithm [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. Instead of ensuring that a given entailment is
preserved, we introduce an oracle to determine the inseparability between the original
ontology and the resulting module. As an oracle we use a variant of the system CEX, which
is the only currently available tool for deciding whether two E L -terminologies are
logically different w.r.t. a signature [
        <xref ref-type="bibr" rid="ref10 ref7">7, 10</xref>
        ]. Additionally, several optimisations to speed up
the computation of minimal modules are investigated. We present an experimental
evaluation of our algorithms by applying them on the prominent and large medical ontologies
Snomed CT and NCI. We note that our algorithms are applicable to ontologies
formulated in any ontology language provided that a tool is available that can effectively
decide the inseparability relation. As CEX works with variants of E L -terminologies, we
restrict the presentation of our algorithms to E L -terminologies.
      </p>
      <p>We proceed as follows. We start by reviewing E L -terminologies together with the
notion of logical difference. In Section 3 we define the notion of basic E L -subsumption
module and we introduce algorithms for extracting one or all minimal such modules. In
Section 4 we present the results of an evaluation of our algorithms using Snomed CT and
NCI. We close the paper with a conclusion.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Preliminaries</title>
      <p>Let NC and NR be mutually disjoint (countably infinite) sets of concept names and role
names. In the following we use upper case letters A, B, X , Y , Z to denote concept names,
and lower case letters r, s stand for role names. The set of E L -concepts C and the set
of E L -inclusions a are built according to the following grammar rules: C ::= &gt; j A j
C u C j 9r:C and a ::= C v C j C C, where A 2 NC and r; s 2 NR. An E L -TBox T is
a finite set of E L -inclusions. We also refer to E L -inclusions as axioms when they are
contained in an E L -TBox.</p>
      <p>The semantics is defined using interpretations I = (DI ; I ), where the domain
DI is a non-empty set, and I is a function mapping each concept name A to a subset
AI of DI and every role name r to a binary relation rI over DI . The extension CI
of a possibly complex concept C is defined inductively as: (&gt;)I := DI , (C u D)I :=
CI \ DI , and (9r:C)I := fx 2 DI j 9y 2 CI : (x; y) 2 rI g.</p>
      <p>An interpretation I satisfies an E L -concept C, an E L -inclusion C v D, or C D
if CI 6= 0/ , CI DI , or CI = DI , respectively. We write I j= a if I satisfies the
axiom a . Note that every E L -concept and E L -inclusion is satisfiable, but a particular
interpretation does not necessarily satisfy a concept or inclusion. An interpretation I
is a model of T if I satisfies all axioms in T . An E L -inclusion a follows from an
E L -TBox T , written T j= a , if for all models I of T , we have that I j= a .</p>
      <p>A signature S is a finite set of symbols from NC and NR. The signature sig(j ) is the
set of concept and role names occurring in j , where j ranges over any syntactic object.
We set sigNC (j ) := sig(j ) \ NC. The symbol S is used as a subscript to a set of concepts
or axioms to denote that the elements only use symbols from S, e.g., E L S, etc.</p>
      <p>An E L -terminology T is an E L -TBox consisting of axioms of the forms X v C
or X C, where X is a concept name in NC and C is an E L -concept, and no concept
name X occurs more than once on the left-hand side of an axiom. A terminology is
said to be acyclic if it can be unfolded (i.e., the process of substituting concept names
by the right-hand sides of their defining axioms terminates). Formally, we define the
relation T : sigNC (T ) sigNC (T ) by setting (X ;Y ) 2 T iff there exists an axiom of
the form X C or X v C in T such that Y 2 sig(C). Then, a terminology T is acyclic iff
the transitive closure ( T )+ of T is irreflexive. For instance, the prominent medical
ontology Snomed CT (version Jan 2016) is an acyclic E L -terminology, whereas the
ontology NCI (version 14.01d) is a cyclic E L -terminology.</p>
      <p>
        We now recall basic notions related to the logical difference between two E L
terminologies for E L -inclusions over a given signature as query language [
        <xref ref-type="bibr" rid="ref10 ref6">6, 10</xref>
        ].
Definition 1 (Logical Difference) Let T1 and T2 be two E L -terminologies, and let S
be a signature. The E L -concept inclusion difference between T1 and T2 w.r.t. S is the
set cDi S(T1; T2) of all E L -inclusions a of the form C v D for E L -concepts C and D
such that sig(a) S, T1 j= a, and T2 6j= a.
      </p>
      <p>
        Two E L -terminologies T1 and T2 are also called inseparable w.r.t. E L -concept
inclusions over S iff cDi S(T1; T2) = 0/ and cDi S(T2; T1) = 0/ [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. If there exists an
E L -inclusion a such that sig(a) S, T1 j= a, and T2 6j= a, then the set cDi S(T1; T2)
consists of infinitely many concept inclusions.
      </p>
      <p>
        For acyclic E L -terminologies T1 and T2, the version 2.5 of the system CEX [
        <xref ref-type="bibr" rid="ref10 ref7">7,10</xref>
        ]
can decide whether the set cDi S(T1; T2) is empty. In this paper we use a variant of CEX
that works with cyclic E L -terminologies, implementing a hypergraph-based approach
to the logical difference problem as introduced in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] and further extended in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. Minimal Modules</title>
      <p>We now give a formal definition of the module notion that we consider in this paper.</p>
    </sec>
    <sec id="sec-4">
      <title>Definition 2 (Basic E L -Subsumption Module) Let T be an E L -terminology, and</title>
      <p>let S be a signature. A subset M T is called a basic E L -subsumption module of T
w.r.t. S iff for all E L -inclusions a of the form C v D for E L -concepts C and D with
sig(a) S it holds that T j= a iff M j= a.</p>
      <p>
        Every subset M of a terminology T that preserves the entailment of all E L
subsumptions over a given signature S is a basic E L -subsumption module of T w.r.t. S.
In particular, T itself is a basic E L -subsumption module of T w.r.t. any signature.
It can readily be seen that M is a basic E L -subsumption module of T w.r.t. S iff
cDi S(T ; M ) = 0/ (cf. Definition 1). We have that M and T are inseparable w.r.t. E L
inclusions over S. More precisely, as M T , it holds that T is a conservative
extension of M w.r.t. E L -inclusions over S [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. There may be exponentially many (in the
size of T ) subsets of T that satisfy that criterion (see Example 6). For the use-case of
ontology re-use, however, we are most interested in modules that are as small as
possible [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Note that smallest modules (regarding the number of axioms) are also
minimal w.r.t. , whereas the converse does not hold in general, i.e., there may be minimal
modules w.r.t. that contain more axioms than other minimal modules w.r.t. .
Example 3 Let T = fA v X u Y; X v B; Y v Z; Z v Bg be an E L -terminology, and
S = fA; Bg be a signature. It holds that both sets, M1 = fA v X u Y; X v Bg and M2 =
fA v X u Y; Y v Z; Z v Bg, are minimal basic E L -subsumption modules of T w.r.t. S,
whereas M1 is the smallest minimal basic E L -subsumption module of T w.r.t. S as
jM1j &lt; jM2j.
      </p>
      <p>
        The notion of a justification for a concept inclusion a has been introduced as a
minimal subset of a TBox that entails a given concept inclusion [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. We can understand a
minimal module as a more general notion of justification: a minimal basic E L -subsumption
module of T w.r.t. S is a justification for all the concept inclusions over S entailed by T .
      </p>
      <p>
        Semantic modules of E L -terminologies that are self-contained or depleting (in fact,
such modules have both properties [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]) can be larger than basic E L -subsumption
modules as introduced in Definition 2.
      </p>
      <p>
        Example 4 Let T = fA v 9r:Bg be an E L -terminology, and S = fA; Bg be a signature.
It is easy to verify that T itself is a basic, self-contained, and depleting semantic module
of T w.r.t. S [
        <xref ref-type="bibr" rid="ref8 ref9">8,9</xref>
        ], whereas the empty set is the minimal basic E L -subsumption module
of T w.r.t. S.
      </p>
      <p>
        The following example extends Example 3 to show that the modules computed by
the system MEX [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] as well as the modules based on syntactic locality can be larger than
minimal basic E L -subsumption modules as introduced in Definition 2. Note that
MEXmodules are semantic modules that are self-contained as well as depleting [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]
(equivalently, weak and strong [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]).
      </p>
      <p>Example 5 Let T = fA v X u Y u U; X v B; Y v Z; Z v B; U V u W g be an E L
terminology, and S = fA; Bg be a signature. It holds that both sets, M1 = fA v X u
Y; X v Bg and M2 = fA v X u Y; Y v Z; Z v Bg, are minimal basic E L -subsumption
modules of T w.r.t. S. Moreover, MEX outputs M3 = M1 [ M2 = fA v X uY uU; X v
B; Y v Z; Z v Bg as module of T w.r.t. S. Finally, T itself is the ?&gt; -local module
of T w.r.t. S.</p>
      <p>In general, there can be several minimal basic E L -subsumption modules of an
acyclic E L -terminology for a signature, and even the smallest of such modules are not
necessarily unique. The next example shows a sequence of acyclic E L -terminologies
whose number of minimal basic E L -subsumption modules for a given signature is
exponentially increasing.</p>
      <p>Example 6 Let Tn = fA v X0g [ f Xi 1 v Yi u Zi j 1 i n g [ fYi v Xi; Zi v Xi j 1
i n g [ fXn v Bg with n 0 be E L -terminologies, and let S = fA; Bg be a signature.</p>
      <p>It holds that the set fA v X0; X0 v Bg is the minimal basic E L -subsumption module
of T0 w.r.t. S, the sets fA v X0; X0 v Y1 u Z1; Y1 v X1; X1 v Bg and fA v X0; X0 v Y1 u
Z1; Z1 v X1; X1 v Bg are the two minimal basic E L -subsumption modules of T1, and the
sets fA v X0; X0 v Y1 u Z1; Y1 v X1; X1 v Y2 u Z2; Y2 v X2; X2 v Bg, fA v X0; X0 v Y1 u
Z1; Y1 v X1; X1 v Y2 u Z2; Z2 v X2; X2 v Bg, fA v X0; X0 v Y1 u Z1; Z1 v X1; X1 v Y2 u
Z2; Y2 v X2; X2 v Bg, and fA v X0; X0 v Y1 u Z1; Z1 v X1; X1 v Y2 u Z2; Z2 v X2; X2 v
Bg are the four minimal basic E L -subsumption modules of T2, etc. In general, it can
readily be verified that Tn has 2n many distinct minimal basic E L -subsumption modules
w.r.t. S.</p>
      <p>In the remainder of this section, we present algorithms for computing minimal basic
E L -subsumption modules. In Section 4 we analyse the number of minimal basic E L
subsumption modules in large medical ontologies for certain signatures. We will simply
write module instead of ‘basic E L -subsumption module’.</p>
      <sec id="sec-4-1">
        <title>3.1. Computing a Single Minimal Module</title>
        <p>
          A first straightforward procedure SINGLE-MINIMAL-MODULE for computing a
minimal module of an E L -terminology T w.r.t. a signature S is given in Algorithm 1.1 The
procedure operates as follows. First, the variable M is initialised with T . Subsequently,
1A similar algorithm for DL-Lite ontologies has already been described in Theorem 67 of [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ].
the procedure iterates over every axiom a 2 T and checks whether cDi S(T ; M n
fag) = 0/ , in which case the axiom a is removed from M . During the execution of the
while-loop the set M is hence shrunk by removing axioms that do not lead to a logical
difference until a minimal module of T for S remains.
        </p>
        <p>Algorithm 1 Computing a Single Minimal Module w.r.t. a Signature
INPUT: E L -terminology T , signature S
1: function SINGLE-MINIMAL-MODULE(T ; S)
2:
3:
4:
5:
6:
7:
8:
end for
return M
9: end function</p>
        <p>M := T
for every axiom a 2 T do
if cDi S(T ; M n fag) = 0/ then</p>
        <p>M := M n fag
end if</p>
        <p>Note that the minimal module that is extracted by Algorithm 1 depends on the
order in which axioms were chosen during the iteration (Line 3), i.e. by iterating over
the axioms in a different order one can potentially obtain a different minimal module.
Moreover, one can show that all minimal modules can be computed by using all possible
orderings on the axioms a 2 T in the for-loop in Line 3.</p>
        <p>It is easy to see that Algorithm 1 always terminates and that it runs in polynomial
time in the size of T and S since deciding the existence of a logical difference between
E L -terminologies can be performed in polynomial time in the size of T and S.</p>
        <p>Regarding correctness, if we assume towards a contradiction that a set Mmin T
computed by Algorithm 1 applied on T and S is not a minimal module of T w.r.t. S,
then there would exist an axiom a 2 M such that cDi S(T ; Mmin n fag) = 0/ . However,
when a was analysed in the for-loop in Line 3, cDi S(T ; M 0 n fag) must have been
empty as well by monotonicity of j=, where M 0 with Mmin M 0 represents the value
of the variable M in Algorithm 1 at the time a was inspected. Consequently, it would
hold that a 62 Mmin and we have derived a contradiction. We hence obtain the following
result.</p>
        <p>Theorem 7 Let T be an E L -terminology and let S be a signature. Then Algorithm 1
applied on T and S computes a minimal module of T for S.</p>
        <p>As checking the existence of a logical difference can be costly in practice, we now
introduce a refinement of the previous algorithm that potentially allows it to reduce the
number of logical difference checks that are required for computing a minimal module.
The refined procedure SINGLE-MINIMAL-MODULE-BUBBLE is shown in Algorithm 2.</p>
        <p>Intuitively, instead of checking whether the removal of a single axiom leads to a
logical difference, the refined procedure removes a set B of axioms from T at once.
Such a set B is also called a bubble. As an additional optimisation we introduce the
notion of logical difference core, which will become relevant in the context of computing
all minimal modules when the algorithm for computing one minimal module has to be
executed frequently.</p>
        <p>Algorithm 2 Computing a Single Minimal Module w.r.t. a Signature using Axiom Bubbles
INPUT: E L -terminology T , signature S, n 1, logical difference core C T w.r.t. S</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Definition 8 (Logical Difference Core) Let T be an E L -terminology and let S be a</title>
      <p>signature. A subset C T is said to be a logical difference core of T w.r.t. S iff for
every a 2 C it holds that cDi S(T ; T n fag) 6= 0/ .</p>
      <p>Given a logical difference core C of T w.r.t. S and a minimal module M of T
w.r.t. S, it is easy to see that C M must hold. The maximal logical difference core can
be computed by collecting all the axioms a 2 T for which cDi S(T ; T n fag) 6= 0/ .</p>
      <p>Now, the procedure SINGLE-MINIMAL-MODULE-BUBBLE applied on a
terminology T , a signature S, an initial size parameter n for the bubbles, and a logical difference
core C of T w.r.t. S operates as follows. First, the variable M is set to contain all the
axioms of T and the bubble queue Q is initialised by partitioning the axioms contained
in T n C into bubbles of size n. Note that the size of one bubble may be different from n
if n is not a divisor of jT j, or if n &gt; jT j. The resulting bubbles are then stored in the
queue Q. As long as Q is not empty, the first bubble B is extracted from the queue
(lines 5 and 6). Note that the empty queue is denoted with [ ]. Subsequently, it is
verified in Line 7 whether the removal of the axioms in B from the minimal module
candidate M leads to a logical difference. If not, all the axioms in B can safely be removed
from M in Line 8. Otherwise, if the bubble contained more than one axiom (Line 10),
we have to identify the subsets of B whose removal does not yield a logical difference.
To that end, B is split into two bubbles Bl and Br (Line 11) such that Bl ; Br B,
jBl j = 21 jBj , and jBrj = 12 jBj . The bubbles Bl and Br are then prepended to
the queue (Line 12), and the algorithm continues with the next iteration.</p>
      <p>The correctness of Algorithm 2 can be shown as before with Algorithm 1.
Termination on any input follows from the fact that every axiom in T appears in at most one
bubble in Q and that in each iteration either the overall number of bubbles is reduced,
or one bubble that contains more than one axiom is split into two smaller bubbles. Note
that once a bubble B of size 1 has been selected in Line 5, it will not be contained in Q
in subsequent iterations. We obtain the following result.</p>
      <p>Theorem 9 Let T be an E L -terminology and let S be a signature. Additionally, let
C T be a logical difference core of T w.r.t. S.</p>
      <p>Then Algorithm 2 applied on T , S, and C computes a minimal module of T for S.</p>
      <p>Regarding computational complexity, we observe that the decomposition of every
bubble B induces a binary tree in which the nodes are labelled with the bubbles resulting
from splitting the parent bubble. In our algorithm, given a bubble B, such a
decomposition tree has a depth of at most blog2 jBjc and the number of nodes in a decomposition
tree corresponds to the number of logical difference checks. As the number of nodes
in a binary tree of depth h is bounded by 2h+1 1, we hence obtain that every initial
bubble B results in at most 2 jBj 1 logical difference checks. Overall, we can infer
that the procedure SINGLE-MINIMAL-MODULE-BUBBLE runs in polynomial time in
the size of T , S, and n.</p>
      <sec id="sec-5-1">
        <title>3.2. Computing All Minimal Modules</title>
        <p>
          A na¨ıve way to compute all minimal modules is to enumerate all subsets of the input
TBox T and to check their logical difference w.r.t. T and a given signature. For E L
terminologies the logical difference problem can be decided in polynomial time [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ].
Example 6 shows that there are E L -terminologies with exponentially many minimal
modules. Consequently, computing all minimal modules of an E L -terminology can only be
achieved in time exponential in the size of the terminology in the worst case.
        </p>
        <p>
          For that reason, upper approximations of (the union of) all minimal modules such
as the syntactic locality-based module notions that can be extracted more efficiently
have been introduced [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]. In our algorithm for computing all minimal modules (and
in our experiments for extracting one minimal module) we will make use of syntactic
?&gt; -locality modules to speed up computations. These modules are among the
smallest modules based on syntactic locality notions [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ]. They can be obtained by iterating
the process of extracting a syntactic ?-local module followed by extracting a
syntactic &gt;-local module until a fixpoint is reached. We will extract syntactic ?&gt; -locality
modules using the OWLAPI.2 Note that any syntactic ?&gt; -locality module Ms of an
E L -terminology T w.r.t. a signature S contains all the minimal modules of T w.r.t. S.
        </p>
        <p>
          In our algorithm for computing all minimal modules, we make use of a technique
developed for computing all minimal hitting sets [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ]. Our algorithm is based on the
following observation: given a minimal module M of T w.r.t. a signature S, then for
any other minimal module M 0 of T w.r.t. S there must exist a 2 M 0 such that a 62 M ,
i.e. M 0 must be contained in T n fag for some a 2 M .
        </p>
        <p>
          Similarly to [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ], our algorithm organises the search space using a labelled,
directed tree t, called module search tree for T , that is extended during the run of the
algorithm. Formally, t is a tuple (V ; E ; L ; r), where V is a non-empty, finite set of
nodes, E V V is a set of edges, L is an edge labelling function, mapping
every edge e 2 E to an axiom a 2 T , and r 2 V is the root node of t. The procedure
ALL-MINIMAL-MODULES shown in Algorithm 3 operates on a queue Q that contains
the nodes of t that still have to be expanded. Intuitively, the labels of the edges on the
unique path from the root node to a node v 2 V are the axioms that should be excluded
from the search for minimal modules. In each iteration a node v is extracted from Q and
the set Tex T of exclusion axioms is computed by analysing the path from the root
node to v. The procedure SINGLE-MINIMAL-MODULE-BUBBLE is then used to find a
minimal module M of T n Tex w.r.t. S. Subsequently, the tree t is extended by adding
a child va of v for every a 2 M and the search for all minimal modules continues in the
next iteration on the newly added nodes va .
        </p>
        <p>T w.r.t. S</p>
        <p>
          We now describe the ALL-MINIMAL-MODULES procedure in detail, together with
the optimisations that we implemented. Some of the improvements to prune the search
space have been proposed in [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ] already.
        </p>
        <p>Given an E L -terminology T , a signature S, a bubble size n 1, and a logical
difference core C T of T w.r.t. S as input, in the lines 2 and 3 a syntactic ?&gt;
locality module TS of T w.r.t. S is extracted from T , the variable t is initialised to
represent a module search tree for T having only one node r. Moreover, the variables
M 2TS , containing the minimal modules that have been computed so far, and W V ,
containing the already explored nodes of t, are both initialised with the empty set. The
queue Q of nodes in t that still have to be explored is also set to contain the node r as
its only element.</p>
        <p>The algorithm then enters a while-loop in the lines 4 to 29 in which it remains as
long as Q is not empty. In each iteration the first element v is extracted from Q and v is
added to W (lines 5 to 7). Subsequently, the axioms labelling the edges of the path pv
from r to v in t are collected in the set Tex (Line 8). The algorithm then checks whether
pv is redundant, in which case the next iteration of the while-loop starts.</p>
        <p>
          The path pv is redundant iff there exists an already explored node w 2 W such that (a)
the axioms in Tex are exactly the axioms labelling the edges of the path pw from r to w
in t, or (b) w is a leaf node of t and the edges of pw are only labelled with axioms
from Tex. Condition (a) corresponds to early path termination in [
          <xref ref-type="bibr" rid="ref15 ref5">5, 15</xref>
          ]: the existence
of pw implies that all possible extensions of pv have already been considered.
Condition (b) implies that the axioms labelling the edges of pw lead to a logical difference
when removed from TS. Consequently, removing Tex from TS also induces a logical
difference by monotonicity of j=, implying that pv and all its extensions do not have
to be explored. Moreover, the current iteration can also be terminated immediately if
cDi S(TS; TS n Tex) 6= 0/ (lines 12 to 14) as no subset of TS n Tex can be a module of TS
(and therefore of T ) w.r.t. S.
        </p>
        <p>
          Subsequently, in Line 15 the variable M that will hold a minimal module of TS n Tex
is initialised with 0/ . At this point we can check if a minimal module M 0 2 M has already
been computed for which Tex \ M 0 = 0/ (lines 16 and 17) holds, in which case we set M
to M 0. This optimisation step can also be found in [
          <xref ref-type="bibr" rid="ref15 ref5">5,15</xref>
          ] and it allows us to avoid a costly
call to the SINGLE-MINIMAL-MODULE-BUBBLE procedure. Otherwise, in the lines 18
to 24 we have to apply SINGLE-MINIMAL-MODULE-BUBBLE on TS n Tex to obtain a
minimal module of TS n Tex w.r.t. S. The algorithm then checks whether M is equal to
C (lines 20 to 22), in which case the search for additional modules can be aborted. If the
logical difference core C is a minimal module itself, we can infer that no other minimal
module exists since C is a subset of all the minimal modules. Otherwise, the module M
is added to M in Line 23. Finally, in the lines 25 to 28 the tree t is extended by adding
a child va to v for every a 2 M n C , connected by an edge labelled with a. Note that it
is sufficient to take a 62 C as a set M with C 6 M cannot be a minimal module of T
w.r.t. S. The procedure finishes by returning the set M in Line 30.
        </p>
        <p>Regarding correctness of Algorithm 3, we note that only minimal modules are added
to M. For completeness, one can show that the locality-based module TS of T w.r.t. S
contains all the minimal modules of T w.r.t. S. Moreover, it is easy to see that the
proposed optimisations do not lead to a minimal module not being computed. Overall,
we obtain the following result.
68 / 483 / 197 / 82.5 70 / 505 / 202 / 85.3
50 / 118 / 77 / 14.5 50 / 118 / 77 / 14.6</p>
        <p>401 / 720 / 587 / 60.7
1075 / 2456 / 1803 / 300.2
50
50</p>
        <p>100
Time (s)
Sizes
Size MEX-Mod
Size ?&gt; -Mod
Theorem 10 Let T be an E L -terminology and let S be a signature. Additionally,
let n 1, and let C T be a logical difference core of T w.r.t. S.</p>
        <p>Then the procedure ALL-MINIMAL-MODULES shown in Algorithm 3 and applied
on T , S, n, and C , exactly computes all the minimal modules of T for S.</p>
        <p>Algorithm 3 terminates on any input as the paths in the module search tree t for T
that is constructed during the execution represent all the permutations of the axioms in T
that are relevant for finding all minimal modules. It is easy to see that the procedure
ALLMINIMAL-MODULES runs in exponential time in size of T (and polynomially in S, n,
and C ) in the worst case.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>4. Evaluation</title>
      <p>To demonstrate the practical applicability of our approach, we have implemented
Algorithms 2 and 3 in a Java prototype to compute one and all minimal basic E L
subsumption modules of E L -versions (i.e., without role axioms) of two prominent
biomedical ontologies: Snomed CT (version Jan 2016), an acyclic E L -terminology
consisting of 317 891 axioms, and NCI (version 14.01d), a cyclic E L -terminology
containing 105 280 axioms. The experiments have been carried out on machines equipped with
an Intel Xeon Core 4 Duo CPU running at 2.50GHz and with 64GiB of RAM.</p>
      <p>Tables 1 and 2 show the results for computing one minimal basic E L -subsumption
module of Snomed CT and NCI for 100 random signatures of different sizes. When the
size of the signature increases, it takes more time in general to compute one minimal
module and the size of their minimal module is also increasing. Moreover, in our
experiments the median computation times were decreasing with an increasing bubble size for
signatures with 200 concept names.</p>
      <p>Table 3 shows that there exist several minimal basic E L -subsumption modules of
Snomed CT for the selected signatures (which contain concept names connected to at
most 8 other axioms). Note that we did not consider signatures that are extracted at
random as they usually yield one minimal module only. In our experiments the number
of minimal modules rose up to 32, and the size of the minimal modules varied from one
signature to another.
Time (s)
Sizes
Size ?&gt; -Mod
200</p>
      <p>Although a precomputation of the maximal logical difference core has the potential
of narrowing down the search space, it requires extra computational effort, which can be
potentially very time-consuming. In order to check whether the use of the logical
difference core can help to speed up the process of searching for all minimal modules, we
computed all the minimal modules of Snomed CT with and without precomputing the
maximal logical difference core for the same signatures. It turns out that in our
experiments the precomputation of the maximal core was beneficial to the overall performance:
the overall computation process was sped up by more than three times.</p>
    </sec>
    <sec id="sec-7">
      <title>5. Conclusion</title>
      <p>We have reused the black-box approach for computing justifications in order to
devise two algorithms for computing one or all basic E L -subsumption modules. We
deploy a version of CEX as an oracle for determining whether two possibly cyclic E L
terminologies are logically different (i.e. not inseparable). Our algorithms are applicable
to ontologies formulated in any ontology language provided that a tool is available that
can effectively decide the inseparability notion of interest.</p>
      <p>
        Our algorithms may require many costly calls to a logical difference tool. One way
to reduce the overall computation time would be to use a tool that allows for an iterative
computation of the logical difference (i.e., a tool that utilises previous computations on
similar input to determine the existence of a logical difference faster). Another possible
optimisation is refining the single module search algorithm by deploying a strategy for
selecting the sets of axioms (bubbles) that are to be removed next from the minimal
module candidate. Moreover, when creating bubbles (Algorithm 2) or selecting axioms that
are to be excluded from minimal modules (Algorithm 3) one can ensure that axioms that
always co-occur in minimal basic E L -subsumption modules are not separated. Finally,
instead of searching for minimal modules in the entire ontology, our algorithm first
extracts modules that are based on the notion of syntactic locality. A further optimisation
might be achieved by exploring ways to compute such modules faster [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
      </p>
      <p>Acknowledgements. This work was partially supported by the German Research
Foundation (DFG) within the Cluster of Excellence ‘Center for Advancing Electronics
Dresden’ and the China Scholarships Council. We would also like to thank the reviewers
of the workshop WOMoCoE 2016 and Yue Ma (Laboratoire de Recherche en
Informatique, Universite´ Paris-Sud, France) for helpful feedback and input.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>F.</given-names>
            <surname>Baader</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Brandt</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Lutz</surname>
          </string-name>
          .
          <article-title>Pushing the EL envelope further</article-title>
          .
          <source>In In Proceedings of the OWLED 2008 DC Workshop on OWL: Experiences and Directions</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>F.</given-names>
            <surname>Baader</surname>
          </string-name>
          , R. Pen˜aloza, and
          <string-name>
            <given-names>B.</given-names>
            <surname>Suntisrivaraporn</surname>
          </string-name>
          .
          <article-title>Pinpointing in the description logic EL</article-title>
          .
          <source>In Proceedings of KI'07</source>
          , volume
          <volume>4667</volume>
          <source>of LNAI</source>
          , pages
          <fpage>52</fpage>
          -
          <lpage>67</lpage>
          , Osnabru¨ck, Germany,
          <year>2007</year>
          . Springer-Verlag.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>A.</given-names>
            <surname>Ecke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ludwig</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Walther</surname>
          </string-name>
          .
          <article-title>The concept difference for EL-terminologies using hypergraphs</article-title>
          .
          <source>In Proceedings of the International workshop on (Document)</source>
          <article-title>Changes: modeling, detection, storage and visualization</article-title>
          (DChanges
          <year>2013</year>
          ), volume
          <volume>1008</volume>
          <source>of CEUR-WS</source>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>B. C.</given-names>
            <surname>Grau</surname>
          </string-name>
          , I. Horrocks,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Kazakov</surname>
          </string-name>
          , and
          <string-name>
            <given-names>U.</given-names>
            <surname>Sattler</surname>
          </string-name>
          .
          <article-title>Modular reuse of ontologies: Theory and practice</article-title>
          .
          <source>Journal of Artificial Intelligence Research (JAIR)</source>
          ,
          <volume>31</volume>
          (
          <issue>1</issue>
          ):
          <fpage>273</fpage>
          -
          <lpage>318</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>A.</given-names>
            <surname>Kalyanpur</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Parsia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Horridge</surname>
          </string-name>
          , and
          <string-name>
            <given-names>E.</given-names>
            <surname>Sirin</surname>
          </string-name>
          .
          <article-title>Finding all justifications of OWL DL entailments</article-title>
          .
          <source>In Proceedings of the 6th International Semantic Web Conference &amp; 2nd Asian Semantic Web Conference (ISWC</source>
          <year>2007</year>
          &amp;
          <article-title>ASWC 2007)</article-title>
          , volume
          <volume>4825</volume>
          <source>of LNCS</source>
          , pages
          <fpage>267</fpage>
          -
          <lpage>280</lpage>
          . Springer,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>B.</given-names>
            <surname>Konev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ludwig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Walther</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Wolter</surname>
          </string-name>
          .
          <article-title>The logical difference for the lightweight description logic EL</article-title>
          .
          <source>Journal of Artificial Intelligence Research (JAIR)</source>
          ,
          <volume>44</volume>
          :
          <fpage>633</fpage>
          -
          <lpage>708</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>B.</given-names>
            <surname>Konev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ludwig</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Wolter</surname>
          </string-name>
          .
          <article-title>Logical difference computation with CEX2.5</article-title>
          .
          <source>In Proceedings of IJCAR'12</source>
          , pages
          <fpage>371</fpage>
          -
          <lpage>377</lpage>
          , Berlin, Heidelberg,
          <year>2012</year>
          . Springer-Verlag.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>B.</given-names>
            <surname>Konev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Lutz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Walther</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Wolter</surname>
          </string-name>
          .
          <article-title>Semantic modularity and module extraction in description logics</article-title>
          .
          <source>In Proceedings of ECAI'08</source>
          , pages
          <fpage>55</fpage>
          -
          <lpage>59</lpage>
          , Amsterdam, The Netherlands,
          <year>2008</year>
          . IOS Press.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>B.</given-names>
            <surname>Konev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Lutz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Walther</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Wolter</surname>
          </string-name>
          .
          <article-title>Model-theoretic inseparability and modularity of description logic ontologies</article-title>
          .
          <source>Artificial Intelligence</source>
          ,
          <volume>203</volume>
          :
          <fpage>66</fpage>
          -
          <lpage>103</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>B.</given-names>
            <surname>Konev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Walther</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Wolter</surname>
          </string-name>
          .
          <article-title>The logical difference problem for description logic terminologies</article-title>
          .
          <source>In Proceedings of IJCAR'08</source>
          , pages
          <fpage>259</fpage>
          -
          <lpage>274</lpage>
          , Berlin, Heidelberg,
          <year>2008</year>
          . Springer-Verlag.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>R.</given-names>
            <surname>Kontchakov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Wolter</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Zakharyaschev</surname>
          </string-name>
          .
          <article-title>Logic-based ontology comparison and module extraction, with an application to DL-Lite</article-title>
          .
          <source>Artificial Intelligence</source>
          ,
          <volume>174</volume>
          (
          <issue>15</issue>
          ):
          <fpage>1093</fpage>
          -
          <lpage>1141</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>M.</given-names>
            <surname>Ludwig</surname>
          </string-name>
          and
          <string-name>
            <given-names>D.</given-names>
            <surname>Walther</surname>
          </string-name>
          .
          <article-title>The logical difference for ELHr-terminologies using hypergraphs</article-title>
          .
          <source>In Proceedings of ECAI'14</source>
          , volume
          <volume>263</volume>
          <source>of Frontiers in Artificial Intelligence and Applications</source>
          , pages
          <fpage>555</fpage>
          -
          <lpage>560</lpage>
          . IOS Press,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>C.</given-names>
            <surname>Lutz</surname>
          </string-name>
          and
          <string-name>
            <given-names>F.</given-names>
            <surname>Wolter</surname>
          </string-name>
          .
          <article-title>Deciding inseparability and conservative extensions in the description logic EL</article-title>
          .
          <source>Journal of Symbolic Computation</source>
          ,
          <volume>45</volume>
          (
          <issue>2</issue>
          ):
          <fpage>194</fpage>
          -
          <lpage>228</lpage>
          , Feb.
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>F.</given-names>
            <surname>Martin-Recuerda</surname>
          </string-name>
          and
          <string-name>
            <given-names>D.</given-names>
            <surname>Walther</surname>
          </string-name>
          .
          <article-title>Fast modularisation and atomic decomposition of ontologies using axiom dependency hypergraphs</article-title>
          .
          <source>In Proceedings of ISWC'14</source>
          ,
          <string-name>
            <surname>Part</surname>
            <given-names>II</given-names>
          </string-name>
          , volume
          <volume>8797</volume>
          <source>of LNCS</source>
          , pages
          <fpage>49</fpage>
          -
          <lpage>64</lpage>
          . Springer-Verlag,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>R.</given-names>
            <surname>Reiter</surname>
          </string-name>
          .
          <article-title>A theory of diagnosis from first principles</article-title>
          .
          <source>Artificial Intelligence</source>
          ,
          <volume>32</volume>
          (
          <issue>1</issue>
          ):
          <fpage>57</fpage>
          -
          <lpage>95</lpage>
          ,
          <year>1987</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>U.</given-names>
            <surname>Sattler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Schneider</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Zakharyaschev</surname>
          </string-name>
          .
          <article-title>Which kind of module should I extract?</article-title>
          <source>In Proceedings of DL'09</source>
          , volume
          <volume>477</volume>
          <source>of CEUR Workshop Proceedings. CEUR-WS.org</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>