<!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>
      <journal-title-group>
        <journal-title>NCI</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Implementation and Evaluation of Forgetting In ALC-Ontologies</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Patrick Koopmann</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Renate A. Schmidt</string-name>
          <email>schmidtg@cs.man.ac.uk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>The University of Manchester</institution>
          ,
          <country country="UK">UK</country>
        </aff>
      </contrib-group>
      <volume>100</volume>
      <issue>4</issue>
      <abstract>
        <p>We implement and evaluate a recently introduced method to compute uniform interpolants for ontologies speci ed in the description logic ALC. The aim of uniform interpolation is to reformulate an ontology such that it only uses a speci ed set of symbols, while preserving consequences that involve these symbols. Uniform interpolation is useful to applications in ontology engineering and modular ontologies. It is known that uniform interpolants of ontologies in ALC cannot always be presented in a nite way, and that their size can in the worst case be triple exponential in the size of the original ontology. These properties leave the question on how practical computing uniform interpolants is. The aim of this paper is to approach this question by implementing our recently presented method that always computes a nite representation of the uniform interpolant { either by using xpoint logics or by extending the signature { and by undertaking an experimental evaluation of the method on a larger set of real-life ontologies.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Ontologies represent information about concepts and relations (roles) using
description logics, fragments of rst-order logic, to allow reasoning systems to
derive implicit information automatically. The signature of an ontology is the set
of symbols used by the ontology. In forgetting, the aim is to remove concept
or role symbols from an ontology in such a way that all logical consequences
over the remaining symbols are preserved. The result of forgetting is a uniform
interpolant, the original ontology restricted to a smaller signature, such that all
consequences over that signature are preserved.</p>
      <p>
        Uniform interpolation and forgetting have several potential applications that
are interesting in the context of ontology engineering and modular ontologies.
For example, an ontology to be published contains con dential parts that should
not be accessible by the public. A solution to this problem is predicate hiding [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ],
which can be performed by forgetting the con dential concepts from the
ontology. A related application is ontology obfuscation [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. Here again, the aim is to
share an ontology for re-use by other parties without giving away all of its
information. Obfuscation is a technique known in the context of software engineering
which transforms a program into a functionally equivalent progam that is
difcult by human users to read and understand, to prevent reverse engineering.
Often, ontologies contain terms whose main function is to give structure and
make the ontology accessible. By forgetting these terms, one can create an
ontology whose structure is destroyed and which is not accessible by human users,
while it can still be used for deriving logical entailments over the remaining
concepts.
      </p>
      <p>Other applications aim at analysing ontologies or ontology changes. One such
application is exhibiting hidden relations. Often relations between di erent
concepts are not stated explicitly but are only deducible with the help of reasoners.
To get a better understanding how certain concepts relate to each other, one can
compute the uniform interpolant over a signature of interest. Uniform
interpolation can also be used to compute the logical di erence between two versions
of an ontology. Extending or modifying an ontology can lead to unintended
results. Checking whether consequences over a speci ed signature are preserved
in a new version can be performed by computing its uniform interpolant and
testing whether it is entailed by the original ontology.</p>
      <p>
        Despite these applications, there has not been much work yet to develop
practical algorithms for uniform interpolation on real-life ontologies in expressive
description logics. A reason for this might be that the known theoretical
properties of uniform interpolation cast doubt on whether such practical methods even
exist: it is known that for ontologies expressed in ALC, uniform interpolants
are not always expressible in a nite way, if ALC is also used to represent the
uniform interpolant. Also, in the worst case, the size of the uniform interpolant
can be triple exponential in the size of the original ontology [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. These
properties already hold for general ontologies expressed in E L [
        <xref ref-type="bibr" rid="ref10 ref9">10,9</xref>
        ]. The method
presented in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] is a rst approach towards practical uniform interpolation for
ALC-ontologies, but it only ensures termination if the uniform interpolant is
approximated by a given bound.
      </p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], we present a method for uniform interpolation on ALC-ontologies that
always computes nite representations of uniform interpolants with the help of
xpoint operators. The target language ALC , which is ALC enriched with
xpoint operators, has the same complexity properties on the common reasoning
tasks as ALC [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], but is currently not supported by most description logic
reasoners. Fixpoint operators are also not supported by OWL, the standard language
for representing web ontologies. The method presented in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] gives a solution
to this by simulating xpoints using `helper concept symbols' in the forgetting
result. This way, the uniform interpolant is approximated signature-wise
using a nite representation, and still preserves all consequences over the desired
signature. If helper concept symbols are used in the result, the approximated
interpolant is not entailed by the original ontology anymore, which limits the
application of our method for computing the logical di erence between
ontologies. Our experimental results suggest however that this only happens for speci c
combinations of ontologies and signatures. For the other mentioned applications,
these helper-concepts do not pose a major problem.
      </p>
      <p>In order to approach the question as to whether the method is also practical
for the mentioned applications, we present an experimental evaluation of the
method on real life ontologies. The results suggests that, while for some
ontologies uniform interpolants are still hard to compute, there are a lot real-world
cases for which the method can be used.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Preliminaries</title>
      <p>Let Nc, Nr be two disjoint sets of concept symbols and role symbols. Concepts
in ALC are of the following form:</p>
      <p>? j &gt; j A j :C j C t D j C u D j 9r:C j 8r:C;
where A 2 Nc, r 2 Nr and C and D are arbitrary concepts. &gt;, C u D and 8r:C
are de ned as abbreviations: &gt; stands for :?, C u D for :(:C t :D) and 8r:C
for :9r::C.</p>
      <p>A TBox is a set of axioms of the forms C v D and C D, where C and D
are concepts. C D is a short-hand for the two axioms C v D and D v C.
Since we are only dealing with the TBox part of an ontology, we will use the
terms `ontology' and `TBox' interchangeably.</p>
      <p>We write C[A] to denote a concept that contains a concept symbol A, and
denote the result of replacing A by a di erent expression E by C[E]. For a
TBox T , T [A7!C] denotes the result of replacing every A in T by C.</p>
      <p>The semantics of ALC is de ned as follows. An interpretation is a pair
I = h I ; I i, where the domain I is a nonempty set and the interpretation
function I assigns to each concept symbol A 2 Nc a subset of I and to each
role symbol r 2 Nr a subset of I I . The interpretation function is extended
to concepts as follows:
?I := ;
(:C)I :=</p>
      <p>I n CI
(C t D)I := CI [ DI
(9r:C)I := fx 2</p>
      <p>I j 9y : (x; y) 2 rI ^ y 2 CI g:
C v D is true in an interpretation I i CI DI . I is model of a TBox T if
all axioms in T are true in I. A TBox T is satis able if there exists a model
for T , otherwise it is unsatis able. T j= C v D holds i in every model of T we
have CI DI .</p>
      <p>In order to de ne ALC , we extend the language with a set Nv of
concept variables. ALC extends ALC with concepts of the form X:C and X:C,
where X 2 Nv, and C is a concept in which X occurs as a concept symbol only
positively (under an even number of negations). X:C is the least xpoint of C
on X, X:C the greatest xpoint.</p>
      <p>A concept variable X is bound if it occurs in the scope C of a xpoint
expression X:C or X:C. Otherwise it is free. A concept is closed if it does not
contain any free variables. Axioms in ALC are of the form C v D and C D,
where C and D are closed concepts.</p>
      <p>
        Following [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], we de ne the semantics of xpoint expressions. Let V be an
assignment function that maps concept variables to subsets of I . V[X 7! W ]
denotes V modi ed by setting V(X) = W . CI;V is the interpretation of C
taking into account this assignment, and when V is de ned for all variables
in C, CI;V = CI . The semantics of xpoint concepts is de ned as follows:
( X:C)I;V := \fW
( X:C)I;V := [fW
      </p>
      <p>I j CI;V[X7!W ]</p>
      <p>W g
I j W</p>
      <p>CI;V[X7!W ]g:</p>
      <p>
        A signature is a subset of Ns [ Nr. sig(E) denotes the concept and role
symbols occurring in E, where E ranges over concept descriptions, axioms and
TBoxes. Given two TBoxes T1, T2 and a signature , we say T1 and T2 are
-inseparable, in symbols T1 T2, i for every concept inclusion with
sig( ) , T1 j= implies T2 j= and vice versa. Given a TBox T and a
signature , T 0 is a uniform interpolant of T if sig(T 0) and T T 0(Note
that in contrast to conservative extensions and deductive modules no syntactical
constraints are given[
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] ). From this de nition follows that uniform interpolants
for a given TBox and signature are unique modulo logical equivalence. For a given
TBox and signature, we will therefore speak of the uniform interpolant and
denote it by T . Given a TBox T and a concept symbol A, the result of forgetting
A in T , denoted by T A, is the uniform interpolant T , where = sig(T )nfAg.
Since T A entails exactly the same consequences as T that are not using A, it
is easy to verify that (T A) B (T B) A. In other words forgetting a set of
concept symbols one after the other always yields an equivalent TBox, regardless
of the order in which symbols are processed.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>The Method</title>
      <p>
        In the following we give a brief overview of our method for computing uniform
interpolants. For a more detailed description see [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. We reduce computing of
uniform interpolants to the problem of forgetting single concept symbols. In
order to compute the uniform interpolant for a generic signature , we forget
the symbols which are not in one after the other.
      </p>
      <p>Given a TBox T , the clausal form of T , denoted by clauses(T ), is a TBox T 0
with T sig(T ) T 0, such that every axiom is of the form &gt; v L0 t ::: t Ln, where
every Li is of the form A,:A, 9r:D or 8r:D, with A 2 Nc, r 2 Nr and D 2 ND.
ND Nc n sig(T ) is a set of designated concept symbols called de ner symbols.
Any TBox can be transformed into its clausal form using standard structural
transformation and conjunctive normal form transformation techniques. We will
refer to axioms of a clausal form TBox as clauses and just write L0 t ::: t Ln
omitting the leading &gt; v. We also assume that clauses are represented as sets
(that is, no disjunct occurs twice in a clause and the order of the disjuncts does
not matter).</p>
      <p>Our method to compute T A consists of ve phases:
1. Set N =clauses(T ).
2. Saturate N using the rules in Figure 1.
3. Filter out unnecessary clauses and group clauses of the form :D t Ci, where</p>
      <p>D 2 ND, into concept inclusions D v d Ci.</p>
      <p>C1 t B</p>
      <p>C2 t :B</p>
      <p>C1 t C2
where B is the symbol A we want to forget or a de ner symbol and provided
C1 t C2 does not contain more than one negative de ner literal.</p>
      <p>Role Propagation:</p>
      <p>C1 t 8r:D1</p>
      <p>C2 t Qr:D2</p>
      <p>C1 t C2 t Qr:D3
where Q 2 f9; 8g and D3 is a (possibly new) de ner symbol representing D1 u D2
and provided C1 t C2 does not contain more than one negative de ner literal.
4. Apply the rules in Figure 2 exhaustively to eliminate introduced symbols.
5. Apply simpli cations and represent clauses as proper concept inclusions.</p>
      <p>The rules in Figure 1 derive all consequences based on the selected concept
symbol A we want to eliminate, rendering clauses containing A super uous for
the uniform interpolant. The role propagation rule is special since it may
involve the introduction of new de ner symbols. Because we want to preserve the
clausal form in Phase 2, in order to represent a concept conjunction D1 u D2, we
introduce a new de ner symbol D3 and add two clauses :D3 t D1 and :D3 t D2
to the current clause set. In order to restrict the introduction of new de ner
symbols, we keep track of each introduced de ner symbol and reuse them as
much as possible. By doing this wisely it is possible to restrict the number of
introduced de ner symbols to maximally 2jNDj.</p>
      <p>
        It can be shown that if a set of clauses is saturated using the rules in Figure 1,
all clauses containing the selected concept symbol A and all clauses containing
positive de ner symbols that do not occur under a role restriction can be
removed, and the resulting set is still -inseparable with the original TBox [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
The new de ner symbols that are introduced in Phase 1 and 2 are eliminated in
Phase 4 using the rules in Figure 2. These rules are motivated by Ackermann's
Lemma and its generalised form, rst published in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] and [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], respectively.
      </p>
      <p>If the desired target language is ALC, the cyclic de ner elimination rule
cannot be applied, since it introduces xpoint operators. In this case the cyclic
de ners remain in the result, which means the resulting TBox is not a uniform
interpolant. It does, however, not contain A and preserves all consequences not
containing A. The remaining cyclic de ners can be seen as `helper concept
symbols' that help keep the result nite without using xpoint operators. The result
of applying only non-cyclic de ner elimination and de ner puri cation can be
viewed as signature-wise approximation of the uniform interpolant. It should be
noted though that the existence of cyclic de ners in the returned result does not
necessarily imply that there is no nite representation of the uniform interpolant
in ALC.</p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] is it proven that our method always terminates and computes the
uniform interpolant in ALC , or a signature-wise approximation.
      </p>
    </sec>
    <sec id="sec-4">
      <title>4 Implementation</title>
      <p>We implemented our forgetting method in Scala1 using the OWL API.2 Since
xpoint operators are not supported by most standards and reasoners, for
practical applications it is of interest to compute only results that are expressible
in ALC. For this reason, our method does not eliminate de ner symbols where
this would lead to a xpoint operator in the result. In order to make the method
practical, we implemented several optimisations.</p>
      <p>Restricting the Role Propagation Rule. Though in its presented form
the calculus works correctly, in order to make the method practical, it is
neccessary to apply further restrictions on the role propagation rule. The main role of
the role propagation rule is to derive new clauses between which resolution on
the symbol we want to forget is applicable. In order to avoid the unnecessary
introduction of new clauses and de ner symbols, we check beforehand whether
applying role propagation contributes to any further resolution rule applications.
If not, we omit its application.</p>
      <p>
        Redundancy Elimination. From the proofs in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] one can see that
standard redundancy elimination techniques like tautology and subsumption deletion
are compatible with our method. We also take into account subsumptions
between introduced de ner symbols: Note that :D1 t D2 implies D1 v D2. With
every newly introduced de ner symbol we build up a subsumption hierarchy
for de ner symbols, which enables us to check for subsumption between literals
of the forms 9r:D1 and 8r:D2. On the basis of this extended subsumption
notion, we implement eager subsumption deletion and condensation as in classical
1 http://www.scala-lang.org
2 http://owlapi.sourceforge.net
resolution-based theorem provers. The correctness of these simpli cations can
be proven by adaptions of the proofs for the original method in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
      </p>
      <p>
        Structural Transformation. Since the resolution rule and the role
propagation rule only apply to a restricted subset of literals in the clause set, the
number of clauses can be signi cantly reduced by using further structural
transformations. For a clause C, let CA denote the literals on which our rules apply,
and CA the remaining literals. We replace each set of clauses fC0; :::; Cng, such
that CA = CjA for all i; j &lt; n, by a single clause X t C0A, where X is a new
i
concept symbol, and store the information that X C0A u ::: u CnA. As soon as
a clause is added to the result set, we undo this transformation and apply eager
subsumption deletion on the current result set. This optimisation is in uenced
by the uniform interpolation method presented in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>Simpli cations. The simpli cations performed in Phase 5 are the
following. Following an arbitrary ordering de ned on concept symbols, we select the
maximal literal of the form :A, if existent, and transform the clause into an
axiom of the form A v C. We then group all concept inclusion axioms that
have the same concept A on the right hand side into a single concept inclusion.
We apply several replacement rules to remove tautological or unsatis able
subexpressions. We also detect tautological xpoint-expressions. For any xpoint
expression X:C[X], if C[&gt;] is a tautology, &gt; is the greatest xpoint of C[X],
and we can replace X:C[X] by &gt;. Tautological and unsatis able sub-expressions
are detected using sound but incomplete syntactic criteria. Since the number of
introduced de ner symbols can be exponential in the number of role restrictions
of the input ontology, it is also wise to minimise their occurrences. This is
accomplished in Phase 5 by transforming disjunctions of the form 9r:C0 t ::: t 9r:Cn
into single existential role restrictions 9r:(C0 t ::: t Cn) and conjunctions of the
form 8r:C0 u ::: u 8r:Cn into single universal role restrictions 8r:(C0 u ::: u Cn).</p>
      <p>
        Module extraction. To restrict the number of symbols we have to forget,
we rst extract the syntactic locality based &gt;? -module [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] for the selected
signature. This module is a subset of the original ontology that preserves all
consequences over the signature, but may still contain thousands of additional
symbols.
      </p>
      <p>Puri cation. Before applying our method, we compute the negation
normal form TNNF of the input ontology T . If a concept symbol A occurs only
positively in TNNF , then T A = T [A7!&gt;]. If A occurs only negatively in TNNF ,
then T A = T [A7!?]. We call this transformation puri cation of A. The
soundness of puri cation follows from the fact that in these cases the resolution rule
would never be applied, what e ectively means we only remove clauses
containing A. Puri cation of A leads to an equivalent result as removing clauses
containing A, but can be performed much faster. When computing uniform
interpolants for our experimental evaluation, we observed that in some cases
already thousands of concept symbols could be eliminated using puri cation.</p>
    </sec>
    <sec id="sec-5">
      <title>Experimental Evaluation</title>
      <p>
        In order to evaluate how our implementation behaves on real-life ontologies,
we selected a set of ontologies from the NCBO BioPortal ontology repository.3
The ontologies of this corpus are known to be diverse in complexity, size and
structure [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. From this corpus we selected all ontologies for which it is
possible to download uncorrupted les of ontologies that could be parsed using
the OWL API. We further noticed that on some ontologies, extracting &gt;?
modules using the OWL API caused a runtime exception. Ontologies for which
this was the case were excluded from our corpus as well.
      </p>
      <p>Since our method is designed for ALC-ontologies, we restricted the
ontologies to their ALC-fragments in the following way. Axioms that can be rewritten
into ALC axioms in a uni ed way (equivalent concepts, disjoint concepts,
disjoint union axioms, property range axioms and property domain axioms) were
rewritten, the remaining axioms that are not in ALC were removed from the
TBox. We further removed all ontologies where the ALC-fragment of the TBox
contained less than 5 concept symbols or consisted only of axioms of the form
A v B and A B, where A and B are concept symbols. This way, we extracted
a corpus of 207 ontologies for our experiments.</p>
      <p>In these ontologies, on average 5.75% of the TBox axioms had to be
removed in order to generate an ALC-TBox, while 54 ontologies were completely
expressible in ALC.</p>
      <p>The ontologies of the resulting corpus contain between 2 and 187,514
concept symbols (on average 5,728). The average number of axioms per ontology
is 21,821.20 and the average axiom size is 4.61. The size of an axiom is de ned
recursively as follows: size(A) = 1, where A is a concept symbol, size(:C) =
size(C) + 1, size(9r:C) = size(8r:C) = size(C) + 2, size(C t D) = size(C u D) =
size(C) + size(D) + 1, and size(C v D) = size(C D) = size(C) + size(D) + 1.</p>
      <p>The experiments were run on an Intel Core i5-2400 CPU with four cores
running at 3.10 GHz and 8 GB of RAM. Since our implementation does not
make use of multi-threading, we ran several experiments in parallel in order to
make full use of the multiple processors.</p>
      <p>Depending on the application, it might either be interesting to forget a small
set of concept symbols from the ontology (predicate hiding, ontology
obfuscation, logical di erence), or to restrict the ontology to a small signature (exhibit
hidden relations, sharing restricted parts of an ontology). We rst considered
how our method performed on forgetting small sets of concept symbols. For this
we selected random subsets of 5, 10, 50 and 150 concept symbols, 10 subsets in
each case, from the signature of each ontology, for which we applied our method.
Since the average number of concept symbols per ontology is 5,728, in most cases
this represented a small subset of the overall signature. If, however, the
signature of an ontology contained less than the selected number of concept symbols,
we omitted the corresponding experiments. This was the case for 4, 21 and 60
ontologies for the signature sizes 10, 50 and 150, respectively.
3 http://bioportal.bioontology.org
8000
7000
s
n
uR 6000
l
a
t
en 5000
m
i
rep 4000
x
E
fo 3000
r
e
bm 2000
u
N 1000
0
1
10
100</p>
      <p>1000</p>
      <p>Time (sec.)
Ontologies jsig(T ) n j Timeouts De ners Left AovfeAraxgieomNsr. AovferAaxgieomSisze DAuvreartaigoen
All
NCI</p>
      <p>We used a timeout of 1,000 seconds for each experimental run. In order
to evaluate how our method performed on larger ontologies, we applied the
same procedure on the ALC-fragment of Version 13.05d of the National Cancer
Institute Thesaurus (NCI), which was part of our corpus. The ALC-fragment of
this ontology, represented only using the operators presented in the Preliminaries
Section, has 138,260 axioms of average size 5. Here, we set a higher timeout of
an hour, as well as higher numbers of concept symbols, and performed 100 runs
for each number.</p>
      <p>The size of the ontologies remained mostly unchanged, which was due to the
fact that a major part of the ontology was not touched by the method if the
concept symbols were only used in a small subset.</p>
      <p>With an increasing number of forgotten concept symbols the number of cases
in which de ner symbols are left in the result rose slightly, but in 93% of the
cases the result could be represented nitely without de ner symbols. In 99%
of the cases our method was able to compute the forgetting result in the set
time limit. The average duration suggests that a much smaller timeout could
already have led to similar results. Figure 3 shows the cumulative distribution
of the durations of each experimental run. It shows that nearly 6,000 out of
7,426 experimental runs could be performed within less than one second, which
suggests that for most cases, forgetting small sets of concepts is actually a cheap
operation.</p>
      <p>Next we wanted to evaluate how good our method performed on restricting
the signature of an ontology to a small set of concept symbols. Since computing
uniform interpolants for small signatures is much more computationally
expensive as forgetting small sets of concept symbols, we performed the experiments
only on a subset of the original corpus, for which we randomly selected 170
ontologies, and performed 5 experimental runs for each ontology and sample size.
The results are summarised in Table 2.</p>
      <p>The e ect of uniform interpolation was more apparent in these cases. In
20.1% of the cases, the computed uniform interpolant would have used xpoint
operators. Even if only 5 concept symbols were used in the result, the average
axiom size was 627. In case of the NCI ontology, the average size of an axiom
was even higher. The main reason for this is that much more information about
the role structure of the ontology and disjointnesses between concepts had to be
represented in fewer axioms.</p>
      <p>Figure 4 plots the sizes of input ontologies and the sizes of the extracted
modules against the sizes of the signature-wise approximated uniform interpolants.
Interestingly, in most cases the computed uniform interpolant was of similar size
or smaller than the corresponding module. In 90.0% of the cases, the
resulting ontology was smaller than the input ontology, and in 75.9% of the cases,
it was smaller than the corresponding &gt;? -module. In the most extreme case
the uniform interpolant was however 559 times bigger than the corresponding
&gt;? -module.</p>
      <p>The performance on our method strongly depended on how distributed the
concept symbols to be forgotten are in the ontology, and how many additional
symbols remained in the module. The biggest e ect on computation time and
output size was caused if the concept symbols to be forgotten occurred in high
numbers nested under role restrictions, since the role propagation rule had to
be applied more often in these cases. This lead to a high number of clauses and
seemed to be the main cause for timeouts.</p>
      <p>The corpora used for the experiments, as well as the implementation, can be
found under http://www.cs.man.ac.uk/~koopmanp/womo_experiments.
6</p>
    </sec>
    <sec id="sec-6">
      <title>Conclusion</title>
      <p>We implemented and evaluated a recently presented method to compute
uniform interpolants of ALC-ontologies. Uniform interpolation has a lot of potential
applications in ontology engineering and modular ontologies. It is known that
uniform interpolants of ALC-ontologies cannot always be represented in a nite
way in ALC, and their size is in the worst case triple exponential in the size of
the input ontology. We evaluated an implementation of uniform interpolation to
investigate how these theoretical properties a ect uniform interpolation of
ALCfragments of real-life ontologies. Our method computes uniform interpolants for
ALC , which is ALC extended with xpoint operators, to enable the nite
representation of uniform interpolants in all cases. Since xpoint operators are not
supported by most standards and reasoners, our implementation uses helper
concept symbols in the result, which means the computed ontologies approximate
the uniform interpolant signature-wise. Our experiments showed however, that
in a majority of cases this was not needed, since the uniform interpolant could
be represented without xpoint operators. Our experiments suggest that, even
though the worst case complexity of the size of uniform interpolants is triple
exponential, in reality, the situation where the interpolant is exponential rarely
occurs. In fact, in most cases uniform interpolants could be computed in a few
seconds, and were even smaller than the input ontologies. These results suggest
that, even though computing uniform interpolation for complex ontologies can
be expensive, there are a lot of applications where it is practical.</p>
      <p>
        In contrast to the earlier approaches on uniform interpolation of ALC-ontologies
presented [
        <xref ref-type="bibr" rid="ref13 ref8">13,8</xref>
        ], our method proceeds in a focused way in the sense that only
derivations on the currently selected symbol to be forgotten are computed. This
enables our method to perform e ciently on larger ontologies, but a trade-o
is that our method will not always compute an interpolant in ALC without
xpoint operators if it exists. To illustrate the problem, consider the TBox
T = fA v 9r:A t B; B v 9r:Bg. When forgetting B, our method computes
the TBox T B = fA v 9r:A t X:9r:Xg, since it only considers derivations on
B. The xpoint expression in this ontology is however redundant, since A v 9r:A
already entails all consequences of the form A v 9rn:&gt;. Note that while in this
example the redundancy is quite obvious, in general it will be more hidden. In
future it would be desirable to nd an e cient way to deal with these kind of
situations.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Ackermann</surname>
          </string-name>
          , W.:
          <article-title>Untersuchungen uber das Eliminationsproblem der mathematischen Logik</article-title>
          .
          <source>Mathematische Annalen</source>
          <volume>110</volume>
          (
          <issue>1</issue>
          ),
          <volume>390</volume>
          {
          <fpage>413</fpage>
          (
          <year>1935</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Brad</surname>
            <given-names>eld</given-names>
          </string-name>
          , J.,
          <string-name>
            <surname>Stirling</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Modal mu-calculi</article-title>
          .
          <source>In: Handbook of Modal Logic, Studies in Logic and Practical Reasoning</source>
          , vol.
          <volume>3</volume>
          , pp.
          <volume>721</volume>
          {
          <fpage>756</fpage>
          .
          <string-name>
            <surname>Elsevier</surname>
          </string-name>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giacomo</surname>
            ,
            <given-names>G.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lenzerini</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>Reasoning in expressive description logics with xpoints based on automata on in nite trees</article-title>
          .
          <source>In: Proc. IJCAI '99</source>
          . pp.
          <volume>84</volume>
          {
          <fpage>89</fpage>
          . Morgan Kaufmann (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Grau</surname>
            ,
            <given-names>B.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Motik</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Reasoning over ontologies with hidden content: The importby-query approach</article-title>
          .
          <source>J. of Arti cial Intelligence Research</source>
          <volume>45</volume>
          ,
          <volume>197</volume>
          {
          <fpage>255</fpage>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Horridge</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parsia</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>The state of bio-medical ontologies</article-title>
          .
          <source>BioOntologies</source>
          <year>2011</year>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Koopmann</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schmidt</surname>
            ,
            <given-names>R.A.</given-names>
          </string-name>
          :
          <article-title>Uniform Interpolation of ALC-Ontologies Using Fixpoints</article-title>
          .
          <source>In: Proc. FroCoS'13</source>
          . Springer (
          <year>2013</year>
          ), to appear.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Ludwig</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Konev</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Towards Practical Uniform Interpolation and Forgetting for ALC TBoxes</article-title>
          . http://lat.inf.tu-dresden.de/research/papers/2013/LuKoDL-2013.pdf
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Lutz</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wolter</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Foundations for uniform interpolation and forgetting in expressive description logics</article-title>
          .
          <source>In: Proc. IJCAI '11</source>
          . pp.
          <volume>989</volume>
          {
          <fpage>995</fpage>
          . AAAI Press (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Nikitina</surname>
          </string-name>
          , N.:
          <article-title>Forgetting in General EL Terminologies</article-title>
          .
          <source>Proc. DL '11</source>
          ,
          <string-name>
            <surname>CEUR-WS.org</surname>
          </string-name>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Nikitina</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rudolph</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>ExpExpExplosion: Uniform interpolation in general EL terminologies</article-title>
          .
          <source>In: Proc. ECAI'12</source>
          . pp.
          <volume>618</volume>
          {
          <fpage>623</fpage>
          . IOS Press (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Nonnengart</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Szalas</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A xpoint approach to second-order quanti er elimination with applications to correspondence theory</article-title>
          .
          <source>In: Logic at Work</source>
          , pp.
          <volume>307</volume>
          {
          <fpage>328</fpage>
          . Springer (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schneider</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zakharyaschev</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <source>Which Kind of Module Should I Extract? In: Proc. DL'09. CEUR-WS.org</source>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Topor</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          , Zhang,
          <string-name>
            <surname>X.</surname>
          </string-name>
          :
          <article-title>Tableau-based forgetting in ALC ontologies</article-title>
          .
          <source>In: Proc. ECAI '10</source>
          . pp.
          <volume>47</volume>
          {
          <fpage>52</fpage>
          . IOS Press (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>