<!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>ASP Based Generation of Information Terms for Constructive E L</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Loris Bozzato</string-name>
          <email>bozzato@fbk.eu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Fondazione Bruno Kessler</institution>
          ,
          <addr-line>Via Sommarive 18, 38123 Trento</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Constructive description logics define interpretations of description logics under different constructive semantics. These logics have been mostly studied from the point of view of their formal properties: limited practical approaches have been shown for their use in knowledge representation and Semantic Web languages and tools (which, on the other hand, constitute the distinctive applications of description logics). In this paper we demonstrate a solution to address this aspect: from the theoretical point of view, we first introduce an information terms semantics for the minimal description logic E L and we establish formal results linking this constructive semantics to answer set semantics. Using these results, on the practical side, we then present a prototype managing one aspect of such semantics (the generation of information terms of a knowledge base) using OWL-EL ontologies and “off the shelf” tools.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Constructive description logics define interpretations of description logics under con</title>
      <p>
        structive semantics. The need for such reinterpretation of description logics in
nonclassical semantics mostly arises for the interest in applying the formal properties of
these semantics to solve modelling or reasoning problems. Starting from different
representation interests and reference constructive semantics, several constructive
characterizations of description logics have been recently proposed, like e.g. [
        <xref ref-type="bibr" rid="ref11 ref19 ref22 ref6">6,11,19,22</xref>
        ].
      </p>
    </sec>
    <sec id="sec-2">
      <title>However, constructive description logics have been mostly studied from the point of</title>
      <p>view of their formal properties, but limited practical approaches have been shown for
their application to knowledge representation and Semantic Web languages and tools
(which, on the other hand, constitute the distinctive application of description logics).</p>
    </sec>
    <sec id="sec-3">
      <title>Among the “real world” use of constructive description logics in applications and systems, for example, we can cite reasoning over incomplete data streams [18], managing conflicts over legal ontologies [15], and a framework for the composition of semantic services in heterogeneous domains [16] (based on [5]).</title>
    </sec>
    <sec id="sec-4">
      <title>In this paper we want to demonstrate a direction for the solution of this aspect: from</title>
      <p>
        the theoretical point of view, we introduce a minimal constructive description logic
based on E L [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] and we extend to its semantics formal results linking it to Answer
      </p>
    </sec>
    <sec id="sec-5">
      <title>Set Programming (ASP); on the practical side, by taking advantage of these properties,</title>
      <p>we present a prototype managing one task over the constructive semantics (namely, the
generation of valid “snapshots” of a knowledge base) over (a subset of) the standard</p>
    </sec>
    <sec id="sec-6">
      <title>OWL-EL profile [21] and “off the shelf” tools for ontology management (OWL API) and Answer Set Programming (DLV solver).</title>
      <sec id="sec-6-1">
        <title>In particular, in our work we chose to concentrate on the description logic E L be</title>
        <p>
          cause, on one hand, it is one of the simplest description logics over which semantics
enjoying constructive properties can be defined (cfr. explicit definability property [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]).
        </p>
      </sec>
      <sec id="sec-6-2">
        <title>On the other hand, E L is recognized as one of the reference languages for (low com</title>
        <p>
          plexity) description logics and, as such, it is at the base of the OWL-EL profile [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ] and
languages of well-known large ontologies (e.g. Gene Ontology1 and GALEN2).
        </p>
        <p>
          The task we consider in this work regards the generation of valid information terms
for a given knowledge base. Intuitively, in our semantics information terms are
mathematical objects providing a constructive justification for the truth of a formula. Notably,
they can be seen as representing the state of such formula: thus, in this light,
generating information terms for a knowledge base correspond to validate its representations
by generating a set of its possible valid states. This approach was used in the CooML
modelling language [
          <xref ref-type="bibr" rid="ref23">23</xref>
          ] and related works for the generation of valid “snapshots” of
information systems descriptions [
          <xref ref-type="bibr" rid="ref12 ref14">12,14</xref>
          ]: we will follow the direction of these works
(in particular the relations to ASP studied in [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ]) to formulate our solution. Related to
this task is the algorithm GENIT used in [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] to generate states and validate the output of
actions over constructive ALC.
        </p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>As mentioned, the solution we propose is based on the relations across information</title>
      <p>
        terms semantics and answer sets semantics: we note that this allow us, for the first time,
to examine these relations also in the context of constructive description logics.
We can summarize the contributions of this paper as follows:
– We introduce (in Section 2) an information terms semantics for the minimal
description logic E L [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. This constructive semantics is a straightforward restriction of the
basic constructive description logic BCDL [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] to the syntax of E L.
– On the base of the relations across information terms semantics and answer sets for
nested expressions highlighted in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], we provide (in Section 3) results establishing
a formal relation between answer sets for formulas in E L and for their information
terms. In Section 4, these properties are used to formulate a datalog rewriting for the
generation of the sets of information terms of an input E L knowledge base
– Using these formal results, in Section 5 we present Asp-it3, a prototype
implementation of an information terms generator for ontologies in OWL-EL. Asp-it applies the
presented datalog rewriting to the input ontology: the computation of answer sets is
obtained by interacting with the DLV solver and the resulting information terms are
returned as an annotation to the OWL axioms in the original ontology.
      </p>
      <sec id="sec-7-1">
        <title>1 http://geneontology.org/ 2 http://www.opengalen.org/ 3 https://github.com/dkmfbk/asp-it</title>
        <p>E Lc: a constructive semantics for E L</p>
      </sec>
    </sec>
    <sec id="sec-8">
      <title>In this section we present a constructive semantics based on the minimal description</title>
      <p>
        logic E L [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. We will refer to this logic as E Lc: the presentation and information terms
semantics of E Lc are defined as a straightforward restriction of the logic BCDL [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
      <sec id="sec-8-1">
        <title>Syntax. The language L for E Lc is based on the disjoint denumerable sets NR of role</title>
        <p>names, NC of concept names and NI of individual names.</p>
        <p>Differently with respect to standard presentations of description logics, in L we
consider a set NG of special concepts, called generators, where NG \ NC = ;. Generators
are used in the definition of a limited form of subsumption, which facilitates the
characterization of the logic in a constructive semantics. A generator G is an atomic concept
with associated a finite set of individual names DOM(G) (the domain of G) which fixes
the interpretation of G. In our language, we use bounded quantified formulas of the
kind 8GC, meaning that every element of DOM(G) belongs to the concept C. Also,
differently from the usual presentation of E L, we limit the use of the &gt; constructor as
a special kind of generator &gt;N 2 NG such that DOM(&gt;N ) = N and for all generators</p>
      </sec>
      <sec id="sec-8-2">
        <title>G, DOM(G) N . In the language L for E Lc, concepts C are expressions of the kind:</title>
        <p>C ::= A j C u C j 9R:C</p>
        <p>K ::= R(s; t) j C(t) j 8GC
where A 2 NC [ NG and R 2 NR. Let VAR be a denumerable set of individual variables,
the formulas K of L are defined as:
where s; t 2 NI [ VAR, R 2 NR, G 2 NG and C is a concept. A formula is atomic if
it is of the kind A(t) with A 2 NC [ NG or R(s; t). A formula is closed if it does not
contain variables.</p>
      </sec>
      <sec id="sec-8-3">
        <title>A theory K (namely, a knowledge base) can be divided as usual in TBox and ABox.</title>
      </sec>
      <sec id="sec-8-4">
        <title>An ABox is a finite set of closed formulas of the kind C(d) and R(c; d) with R 2 NR,</title>
        <p>c; d 2 NI and C a concept. A TBox is a finite set of formulas of the kind 8GC (i.e.
“restricted” concept inclusions).</p>
      </sec>
      <sec id="sec-8-5">
        <title>In the following we refer to languages LN restricted to subsets N of NI. Given N</title>
        <p>NI, let NGN be the set of generators G 2 NG s.t. DOM(G) N with DOM(&gt;N ) = N .</p>
      </sec>
      <sec id="sec-8-6">
        <title>We denote with LN the language built on the set N of individual names, the set NC of</title>
        <p>concept names, the set NR of role names and the set NGN of generators.</p>
      </sec>
      <sec id="sec-8-7">
        <title>Classical semantics. A model M for LN is a pair h M; Mi, where the domain M</title>
        <p>is a non-empty set and M is a valuation map such that: for every c 2 N , cM 2 M;
for every C 2 NC, CM M; for every R 2 NR, RM M M; for every G 2
NGN , if DOM(G) = fc1; : : : ; cng, then GM = fc1M; : : : ; cnMg. Classical interpretation
of non-atomic concepts is defined by the evaluation of description logics operators:
(C1 u C2)M = C1M \ C2M
(9R:C)M = fc 2</p>
      </sec>
      <sec id="sec-8-8">
        <title>M j there exists d 2 M s.t. (c; d) 2 RM and d 2 CMg</title>
        <p>An assignment on M is a map : VAR ! M. If t 2 NI [ VAR, tM; is the element
of M denoting t in M w.r.t. , namely: tM; = (t) if t 2 VAR and tM; = tM if
t 2 NI. A formula K is valid in M w.r.t. , and we write M; j= K, if one of the
following conditions holds:</p>
        <p>M j= R(s; t) iff (sM; ; tM; ) 2 RM</p>
        <p>M j= C(t) iff tM;
M j= 8GC iff GM
If is a set of formulas, M j= means that M j= K for every K 2 . K is a logical
consequence of , and we write j= K iff, for every M, M j= implies M j= K.</p>
      </sec>
    </sec>
    <sec id="sec-9">
      <title>As noted in [11], while non-conventional in description logics languages, the provided definition of generators with a fixed domain simplifies the following presentations of the logic: alternatively, domain of generators can be defined by extending the language with nominals.</title>
      <p>
        Example 1. We build our running example over the one presented in [
        <xref ref-type="bibr" rid="ref11 ref3">3,11</xref>
        ]. In this
example, inspired to the classical example of [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], we want to describe the correct pairings
between food and wines using an E Lc knowledge base KW . The TBox of KW contains:
(Ax1) 8F ood9goesW ith:Color
(Ax2) 8Color9isColorOf:W ine
with W ine 2 NC, isColorOf; goesW ith 2 NR and F ood; Color 2 NG. Intuitively,
axiom (Ax1) states that each F ood has an appropriate wine Color and (Ax2) defines
that there exists a W ine for every Color. Domains of the generators are defined as:
DOM(F ood) = ff ish; meatg
      </p>
      <p>DOM(Color) = fred; whiteg</p>
      <sec id="sec-9-1">
        <title>The ABox of KW contains the following assertions:</title>
        <p>W ine(barolo)
W ine(chardonnay)
isColorOf (red; barolo)
isColorOf (white; chardonnay)
goesW ith(f ish; white)
goesW ith(meat; red)</p>
      </sec>
      <sec id="sec-9-2">
        <title>We implicitly consider as the finite set N of individual names the set containing all the</title>
        <p>individual names used in KW .</p>
        <p>
          A (classical) model M for KW must interpret F oodM = ff ishM; meatMg and
ColorM = fredM; whiteMg. Note that, by the interpretation of ABox assertions,
baroloM and chardonnayM belong to W ineM, but since it is not a generator, W ineM
might contain other domain elements. 3
Information terms semantics. The constructive semantics for E Lc is based on the
notion of information term [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ]. Information terms semantics is related to the BHK
(Brower-Heyting-Kolmogorov) interpretation of logical connectives [
          <xref ref-type="bibr" rid="ref26">26</xref>
          ]: intuitively, an
information term for a formula K is a syntactical object that constructively justifies
the truth of K in a classical model M. For example, the validity of the formula 9R:C(a)
in a model M can be explained by an information term (b; ) providing the filler b s.t.
(aM; bM) 2 RM and, inductively, an information term justifying bM 2 CM.
        </p>
      </sec>
      <sec id="sec-9-3">
        <title>Given a finite subset N of NI and a closed formula K of LN , we define the set of</title>
        <p>information terms ITN (K) by induction on K as follows.</p>
        <p>ITN (K) = f tt g; if K is an atomic formula
ITN (C1 u C2(c)) = f ( ; ) j
2 ITN (C1(c)) and
2 ITN (C2(c)) g
ITN (9R:C(c)) = f (d; ) j d 2 N and 2 ITN (C(d)) g</p>
        <p>ITN (8GC) = f : DOM(G) ! Sd2DOM(G)ITN (C(d)) j (d) 2 ITN (C(d)) g</p>
      </sec>
    </sec>
    <sec id="sec-10">
      <title>The justification of formulas in classical models with respect to one of their in</title>
      <p>formation terms is given by the realizability relation. Let M be a model for LN , K a
closed formula of LN and 2 ITN (K). We define the realizability relation M h i K
by induction on the structure of K.</p>
      <p>M</p>
      <p>htti K iff M j= K; where K is an atomic formula
M
h( ; )i C1 u C2(c) iff M
h i C1(c) and M
h i C2(c)
M
h(d; )i 9R:C(c) iff M j= R(c; d) and M
h i C(d)
M
h i 8GC iff, for every d 2 DOM(G), M
h (d)i C(d)</p>
      <sec id="sec-10-1">
        <title>If is a finite set of closed formulas fK1; : : : ; Kng of LN , ITN ( ) denotes the set of n-tuples = ( 1; : : : ; n) such that, for every j 2 f1; : : : ; ng, j 2 ITN (Kj ). We write M h i iff, for every j 2 f1; : : : ; ng, M h j i Kj .</title>
      </sec>
      <sec id="sec-10-2">
        <title>Example 2. Let us consider the example knowledge base KW and the axiom (Ax1)</title>
        <p>in its TBox: every element 2 ITN (Ax1) is a function mapping each food f 2</p>
      </sec>
      <sec id="sec-10-3">
        <title>DOM(F ood) to an information term (f ) 2 ITN (9goesW ith:Color). Thus, every</title>
        <p>(f ) has the form (c; tt), meaning that c is a Color that is admitted for f . For
example, we can consider 1 2 ITN (Ax1) defined as:</p>
        <p>[ f ish 7! (white; tt); meat 7! (red; tt) ]
It is easy to see that if M is a model for the ABox of KW , then M
if we consider 2 2 ITN (Ax2) where
h 1i Ax1. Similarly,
[ red 7! (barolo; tt); white 7! (chardonnay; tt) ]
we have that M
h 2i Ax2.
3</p>
      </sec>
    </sec>
    <sec id="sec-11">
      <title>The following result, provable by induction on the structure of K, shows the relation</title>
      <p>across the classical and constructive semantics.</p>
      <p>Proposition 1. Let N be a finite subset of NI, K a closed formula of LN and
ITN (K). For every model M, M h i K implies M j= K.
2
tu</p>
    </sec>
    <sec id="sec-12">
      <title>Thus, the constructive semantics is compatible with the classical one: a consequence of this is that the constructive semantics maintains the classical declarative reading of DL formulas.</title>
    </sec>
    <sec id="sec-13">
      <title>Such definition of constructive realization leads to a constructive version of the log</title>
      <p>ical consequence relation, that we call constructive consequence. Given a set of closed
formulas [ fKg 2 LN , we say that K is a constructive consequence of (denoted
j=c K) iff, for every 2 ITN ( ), there exists a 2 ITN (K) such that for every model</p>
      <sec id="sec-13-1">
        <title>M for LN , M h i implies M h i K.</title>
        <p>
          One important aspect (deeper investigated in [
          <xref ref-type="bibr" rid="ref11 ref3">3,11</xref>
          ]) is that such relation j=c K
implicitly defines a semantic map N transforming information terms in ITN ( ) to
information terms of ITN (K) such that if M h i , then M h N ( )i K. This idea
is strongly related to the proofs-as-programs paradigm: in BCDL it is shown how it is
possible to extract this map from the proofs of a natural deduction calculus which is
sound and complete w.r.t. constructive consequence.
        </p>
      </sec>
    </sec>
    <sec id="sec-14">
      <title>Our interest in the remainder of the paper is somewhat preliminary to this step:</title>
      <p>we want to be able to compute the information terms of a set of input E L formulas
(corresponding to the input knowledge base) by means of the relations between answer
sets semantics and information terms semantics.
3</p>
      <p>Answer sets semantics for formulas and information terms</p>
    </sec>
    <sec id="sec-15">
      <title>In this section we build on the work in [13], which investigates the relations between information terms and answer set semantics of logic programs with nested expressions, and we reinterpret it in our scenario.</title>
    </sec>
    <sec id="sec-16">
      <title>Given the definition of formulas and information terms given above, we can give a</title>
      <p>characterization of the “snapshot” of a formula defined by one of its information terms
with the definition of piece of information. We call piece of information over LN an
expression of the kind h iK with K 2 LN a closed formula and 2 ITN (K).</p>
    </sec>
    <sec id="sec-17">
      <title>Following the construction in [13], we adapt the definitions for logic programs with</title>
      <p>
        nested expressions [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] to the structure and reading of E Lc formulas. In this regard,
we call lp-intepretation I any set of closed atomic formulas. Given a closed formula
K 2 LN , the usual satisfiability relation I j= K can naturally be defined as:
I j= K; iff K 2 I and K is atomic
I j= C u D(c) iff I j= C(c) and I j= D(c)
I j= 9R:C(c) iff R(c; d) 2 I for d 2 N and I j= C(d)
I j= 8GC iff for every e 2 DOM(G); I j= C(e)
I j=
      </p>
      <p>iff I j= K for K 2</p>
    </sec>
    <sec id="sec-18">
      <title>Clearly, this is consistent with the definition of classical logical consequence. We can define as follows the notion of answer set for our formulas:</title>
      <p>Definition 1. An lp-interpretation I is an answer set for a set of closed formulas
LN iff I j= and, for every I0 I, I0 j= implies I0 = I.</p>
      <p>
        Given this definition of answer set on E Lc closed formulas, in the following we want to
extend this notion to the pieces of information. The idea is to denote the set of “answers”
that one can derive from the contents of informations terms on the given formula. As
noted in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], the formula represents intuitively a “query” for the information terms that
realize it in an interpretation: for example, asking “9R:A(c)?” corresponds to asking for
an information term (d; ) for the formula such that R(c; d) holds and is an answer
satisfying A(d). Given a piece of information h iK, the following defines the sets of
answers ans(h iK) obtainable from it:
      </p>
      <p>ans(httiK) = fKg; with K an atomic formula
ans(h( ; )iA1 u A2(c)) = ans(h iA1(c)) [ ans(h iA2(c))
ans(h(d; )i9R:A(c)) = fR(c; d)g [ ans(h iA(d))</p>
      <p>ans(h i8GA) = Sd2DOM(G) ans(h (d)iA(d))
We remark that ans(h iK) is a finite set of atomic formulas4.</p>
      <p>Example 3. If we recall the information term
of answers for h 1iAx1 we have that:</p>
      <sec id="sec-18-1">
        <title>1 2 ITN (Ax1), by the definition of sets</title>
        <p>ans(h 1iAx1) = ans(h 1(f ish)i H1(f ish)) [ ans(h 1(meat)i H1(meat))
= ans(httiColor(white)) [ fgoesW ith(f ish; white)g [</p>
        <p>ans(httiColor(red)) [ fgoesW ith(meat; red)g
= fColor(white); goesW ith(f ish; white);</p>
        <p>Color(red); goesW ith(meat; red)g
where we abbreviate H1 = 9goesW ith:Color. Similarly, considering 2 2 ITN (Ax2)
from previous example:
ans(h 2iAx2) = fW ine(barolo); isColorOf (red; barolo);</p>
        <p>W ine(chardonnay); isColorOf (white; chardonnay)g</p>
      </sec>
    </sec>
    <sec id="sec-19">
      <title>We can show the following relation to lp-interpretations (by an easy induction on the structure of formulas):</title>
      <p>Theorem 1. Let N be a finite subset of NI, K a closed formula of LN . For every
lpinterpretation I, I j= K iff there exists an information term 2 ITN (K) such that
I j= ans(h iK). tu</p>
    </sec>
    <sec id="sec-20">
      <title>Moreover, we can connect this notion of set of atomic answers to the realizability rela</title>
      <p>tion with the following theorem. By induction on the structure of K, we have:
Theorem 2. Let N be a finite subset of NI, K a closed formula of LN . For every model
M, M h i K iff M j= ans(h iK). tu</p>
    </sec>
    <sec id="sec-21">
      <title>Note that this result reduces the problem of determining the realizability of a piece of</title>
      <p>information to the classical satisfiability of a finite set of atomic formulas.</p>
      <sec id="sec-21-1">
        <title>Now we can study the relations between answer sets for E Lc formulas and pieces of</title>
        <p>information. Intuitively, ans(h iK) represents the information needed to get evidence
for K according to the information term : we want to define a set that describes the
minimal knowledge needed to justify the realizability of its piece of information.</p>
      </sec>
      <sec id="sec-21-2">
        <title>We say that an lp-interpretation I is a minimal model of h iK if, for every model M</title>
        <p>of LN , I is the subset minimal lp-interpretation such that M j= I implies M h i K.</p>
      </sec>
    </sec>
    <sec id="sec-22">
      <title>Using previous results, in one direction we can show:</title>
      <p>
        Theorem 3. If I is an answer set for a closed formula K 2 LN , then there exists a
piece of information h iK, with 2 ITN (K), such that I is a minimal model of h iK.
Proof. Since I is an answer set for K, we have that I j= K and by Theorem 1 there
exists 2 ITN (K) s.t. I j= ans(h iK). By Theorem 2, for each M j= I this implies
M h i K. We can prove that I is minimal: suppose that I0 I s.t. I0 j= ans(h iK),
then by Theorem 1, I0 j= K. Since I is an answer set for K, then I0 = I. tu
4 This definition of answer sets for pieces of information corresponds to the notion of
information content used in [
        <xref ref-type="bibr" rid="ref14 ref7">7,14</xref>
        ].
Definition 2. Let K be a closed formula of LN . A piece of information h iK is
minimal iff there is no 0 2 ITN (K) such that ans(h 0iK) ans(h iK).
      </p>
      <sec id="sec-22-1">
        <title>Intuitively, the answers ans(h iK) of minimal pieces of information characterize the</title>
        <p>sets of atoms whose truth is strictly necessary to get evidence for K. Using this
definition, we can then prove the other direction of the relation:
Theorem 4. Let K be a closed formula of LN and h iK be a minimal piece of
information for K. Then, ans(h iK) is an answer set for K.</p>
        <p>Proof. By Theorem 1, for every lp-interpretation I s.t. I j= ans(h iK) (that is, every
I s.t. ans(h iK) I, given that it is a set of atomic formulas) we have I j= K. Hence,
considering I = ans(h iK), also ans(h iK) j= K.</p>
        <p>Moreover, let us consider I0 ans(h iK) with I0 j= K. Then, by Theorem 1,
there exists a 2 ITN (K) s.t. I0 j= ans(h iK). Thus, ans(h iK) I0 and, for the
minimality of h iK, this implies that ans(h iK) = I0 = ans(h iK). tu</p>
      </sec>
    </sec>
    <sec id="sec-23">
      <title>Thus, we can complete these results with the following theorem:</title>
      <p>Theorem 5. Let K be a closed formula of LN . I is an answer set for K iff there exists
a minimal piece of information h iK such that I = ans(h iK).</p>
      <sec id="sec-23-1">
        <title>Proof. By Theorem 4 we directly have the “only-if” direction: if h iK is a minimal</title>
        <p>piece of information, I = ans(h iK) is an answer set for K.</p>
      </sec>
    </sec>
    <sec id="sec-24">
      <title>In the other direction, by Theorem 3 if I is an answer set for K, then there exists</title>
      <p>h iK s.t. I is a minimal model for h iK. Thus, by Theorem 2, I j= ans(h iK) which
implies that ans(h iK) = I (since I is the minimal set of atoms s.t. I j= K).</p>
      <sec id="sec-24-1">
        <title>We can show that h iK is a minimal piece of information: let us suppose that there exists a 2 ITN (K) such that ans(h iK) ans(h iK). Thus, ans(h iK) I and, for the minimality of the answer set I, we have ans(h iK) = I = ans(h iK). tu</title>
        <p>4</p>
        <p>
          ASP based generation of information terms
From the results of previous section, one solution to generate (minimal) information
terms consists in computing the answer sets of the input set of formulas and then, for
each formula K, use the recursive definition of ans(h iK) to reconstruct each
information term . The computation of answer sets can be achieved by translating the
initial knowledge base to a datalog program, for instance by applying transformations of
formulas to datalog facts and rules akin to the ones used for the translation of nested
expressions (see e.g. [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ]).
        </p>
      </sec>
    </sec>
    <sec id="sec-25">
      <title>In the following we provide a similar translation, but we also include a set of rules</title>
      <p>that keep track and recursively compose the information terms for the input formulas.</p>
    </sec>
    <sec id="sec-26">
      <title>The datalog rewriting we propose basically follows a generate-and-test approach: a</title>
      <p>first rewriting (P1) of the input E L knowledge base translate the formulas by using
their logical reading, in order to generate all the alternative interpretations that satisfies
them; the second part (P2) of the rewriting, adds rules to reconstruct from these all the
possible information terms of input formulas. Thus, while P1 is related to the definition
of interpretation for each formula K, P2 corresponds to the definition of ans(h iK).</p>
    </sec>
    <sec id="sec-27">
      <title>In the following, we assume the usual definitions for normal logic programs under</title>
      <p>
        answer set semantics (see e.g. [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] for an introduction). Note, however, that in the
formulation of rules (and in their implementation) we used the DLV notation for complex
list terms: thus considerations about management of complex and function terms and
finiteness of the domain apply (see e.g. [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]).
      </p>
    </sec>
    <sec id="sec-28">
      <title>In this version of the rewriting, we consider the case in which knowledge about</title>
      <p>
        roles is complete: in other words, we only consider roles assertions that are included in
the input set of formulas. Formally, given a finite subset N 2 NI, we consider subsets
R of the set RN = fR(c; d) j R 2 NR and c; d 2 N g of role assertions over N . As
proposed in [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ] for the translation of nested expressions, we use a labelling of concepts
to decompose complex formulas. Considering a finite set L of constants, we call lC 2 L
the label encoding the (possibly complex) concept C.
      </p>
      <sec id="sec-28-1">
        <title>Let R be a finite subset of RN . Given an input set of closed formulas of LN with</title>
      </sec>
      <sec id="sec-28-2">
        <title>R , for each formula K 2 , the model generating rewriting P1(K) is defined as:</title>
        <p>A(b) 7! f is(b; A)</p>
        <p>is(b; lA): g</p>
        <p>R(a; b) 7! f rel(a; R; b): g
C u D(a) 7! f is(a; lC )
is(a; lD)
is(a; lCuD):
is(a; lCuD): g [ P1(C(a)) [ P1(D(a))
9R:C(a) 7! f is(x; lC )</p>
        <p>rel(a; R; x); is(a; l9R:C ): g [ P1(C(x))
8GC 7! f is(x; lC )</p>
        <p>is(x; G): g [ P1(C(x))
where A 2 NC [ NG, C; D are possibly complex concepts, R 2 NR, a; b 2 NI (or
variables) and x is a variable. For each (possibly complex) concept assertion C(d) 2
, we add in P1( ) its “labelled” fact L(C(d)) = f is(d; lC ): g. Moreover, we
assume that for each generator G used in , with DOM(G) = fc1; : : : ; cng, the facts
f is(c1; G):; : : : ; is(cn; G): g are added to P1( ).</p>
      </sec>
      <sec id="sec-28-3">
        <title>The IT generating rewriting P2(K), for each K 2 is defined as follows:</title>
        <p>A(b) 7! f is it(tt; b; lA)</p>
        <p>is(b; A): g
R(a; b) 7! f rel it(tt; a; R; b)</p>
        <p>rel(a; R; b): g
C u D(a) 7! f is it([x; y]; a; lCuD)</p>
        <p>is it(x; a; lC ); is it(y; a; lD): g [ P2(C(a)) [ P2(D(a))
9R:C(a) 7! f is it([x; y]; a; l9R:C )</p>
        <p>rel it(tt; a; R; x); is it(y; x; lC ): g [ P2(C(x))
8GC 7! f isa it([x; y]; G; lC )</p>
        <p>is(x; G); is it(y; x; lC ): g [ P2(C(x))
where A 2 NC [ NG, C and D are concepts, R 2 NR, a; b 2 NI (or variables) and
x; y are variables. Note that this encoding is consistent with the vision of formulas as
“queries” and uses the definition of ans(h iK) to solve the problem for bindings of a
“variable” . The complete rewriting for is obtained as P ( ) = P1( ) [ P2( ).</p>
      </sec>
      <sec id="sec-28-4">
        <title>Example 4. Let us consider again our example knowledge base KW and suppose that we add a new wine teroldego to KW , by adding the ABox assertions:</title>
        <p>W ine(teroldego)</p>
        <p>isColorOf (red; teroldego)
Now, by applying the rewritings to KW , we want to compute all possible alternative
combinations of food and wines. We assume that R coincides to the set of role
assertions in the ABox of KW . By applying the model generating rewriting P1 to KW , it is
easy to check that an answer set for P1(KW ) contains the set of facts (derived from the
rewriting of the ABox and domains of the generators):
fis(f ish; F ood); is(meat; F ood); is(red; Color); is(white; Color)
is(chardonnay; W ine); is(barolo; W ine); is(teroldego; W ine);</p>
        <p>rel(f ish; goesW ith; white); rel(meat; goesW ith; red);
rel(white; isColorOf; chardonnay); rel(red; isColorOf; barolo);</p>
        <p>rel(red; isColorOf; teroldego)g
By applying the IT generating rewriting P2 to the axiom (Ax2) we obtain the rules:
isa it([x; y]; Color; lH2 )
is it([x; y]; z; lH2 )
is it(tt; x; lW ine)
is(x; Color); is it(y; x; lH2 ):
rel(tt; z; isColorOf; x); is it(y; x; lW ine):
is(x; W ine):
where H2 = 9isColorOf:W ine. Intuitively, by applying these rules to the model
computed for P1(KW ), we obtain this set of substitutions for the first term of the derived
isa it facts: [white; [chardonnay; tt]]; [red; [barolo; tt]]; [red; [teroldego; tt]].</p>
      </sec>
    </sec>
    <sec id="sec-29">
      <title>These correspond to two functions mapping each color to the alternative wines: the first</title>
      <p>equals 2 from previous examples, the second is [white 7! (chardonnay; tt); red 7!
(teroldego; tt)]. Similarly, the application of the rewriting for (Ax2) produces the
previously presented function 2.</p>
      <p>Moreover, we can consider the following axiom that combines (Ax1) and (Ax2):
(Ax3) 8F ood9goesW ith:(Color u 9isColorOf:W ine)
One can verify that, by applying P2(Ax3) to the presented model, its computed
information terms provide all the alternative associations between food and wines:
[ f ish 7! (white; (tt; (chardonnay; tt))); meat 7! (red; (tt; (barolo; tt))) ]
[ f ish 7! (white; (tt; (chardonnay; tt))); meat 7! (red; (tt; (teroldego; tt))) ]
3</p>
    </sec>
    <sec id="sec-30">
      <title>We can provide a notion of correctness for these rewritings by the following results. By</title>
      <p>the definition of P1 and the definition of lp-interpretations, we can prove:
Lemma 1. Given a closed formula K 2 LN and an answer set I for P1( ):
(i). if K = C(a) and I j= is(a; lC ), then there exists an lp-interpretation I0 for
s.t. I0 j= K.
(ii). if K = R(a; b) and I j= rel(a; R; b), then there exists an lp-interpretation I0 for
s.t. I0 j= K.</p>
    </sec>
    <sec id="sec-31">
      <title>Proof (Sketch). Point (ii). follows immediately considering that the fact rel(a; R; b) is</title>
      <p>added in P1( ) only if R(a; b) 2 .</p>
      <p>Point (i). can be shown by induction on the definition of the rules of P1. If the fact
is(a; lC ): is present in P1( ), then it has been added by the labelling and C(a) 2 .
Thus in every lp-interpretation I0 for it holds that I0 j= K. Otherwise, is(a; lC ) 2 I
has been added in the application of a rule in P1( ) relative to a complex concept B or
to a formula 8GC.</p>
      <p>If B = C u D, then is(a; LCuD) 2 I and, by induction, there exists an
lpintepretation I0 of such that I0 j= C u D(a). By definition, this implies I0 j= C(a).</p>
      <p>If B = 9R:C, then rel(c; R; a) 2 I and is(c; l9R:C ) 2 I. The first implies that</p>
      <sec id="sec-31-1">
        <title>R(c; a) 2 R. The second, by induction, implies that there exists an lp-interpretation I0 of such that I0 j= 9R:C(c) with I0 j= R(c; a). For the definition of lp-interpretations, one of the admissible interpretations I00 for 9R:C(c) is the one in which I00 j= R(c; a) and I00 j= C(a). Thus, if I0 = I00, then I0 j= C(a).</title>
        <p>If is(a; lC ) 2 I has been added by a rule relative to 8GC, by definition I j= is(a; G)
and a 2 DOM(G) with 8GC 2 . If I0 is an lp-interpretation of , then I0 j= 8GC and
thus, for every d 2 DOM(G), I0 j= C(d). Hence, I0 j= C(a). tu</p>
      </sec>
      <sec id="sec-31-2">
        <title>Given an lp-interpretation I for P ( ) and a closed formula K 2 LN , we define</title>
        <p>IT (K; I) as the set of information terms “returned” by P2 as follows:
– If K = C(a), let IT (C(a); I) = f j I j= is it( ; a; lC )g.
– If K = R(a; b), let IT (R(a; b); I) = tt iff I j= rel it(tt; a; R; b).
– If K = 8GC, let D = fc j I j= isa it([c; ]; G; lC )g:
– if D = DOM(G), let:</p>
        <p>IT (8GC; I) = f j (c) =</p>
        <p>for c 2 DOM(G) and I j= isa it([c; ]; G; lC )g;
– otherwise, IT (8GC; I) = ;.</p>
      </sec>
    </sec>
    <sec id="sec-32">
      <title>Then, with respect to the reconstruction of information terms we can show, using the</title>
      <p>definition of P2 and ans(h iK):
Theorem 6. Let LN be an input set of closed formulas with R
formula of LN , and I be the (unique) answer set for P ( ).</p>
      <p>If 2 IT (K; I), then there exists an lp-interpetation I0 for
, K a closed
s.t. ans(h iK)</p>
      <p>I0</p>
      <sec id="sec-32-1">
        <title>Proof. We can show by induction on the structure of K that ans(h iK) I0.</title>
        <p>If K = R(a; b), then P2(R(a; b)) = frel it(tt; a; R; b) rel(a; R; b):g and I j=
rel it(tt; a; R; b) only if I j= rel(a; R; b):, which by P1 implies that R(a; b) 2 R with
R . Thus for every lp-interpretation s.t. I0 j= , also fKg = ans(h iK) I0.</p>
        <p>If K = A(c) with A 2 NC[NG and tt 2 IT (K; I), by the definition of P2, we have
that I j= is(c; A). Thus for Lemma 1 and the definition of P1, I j= is(c; lA) and there
exists an lp-interpretation I0 for s.t. A(c) 2 I0. This implies that ans(h iK) I0.</p>
        <p>If K = C u D(c) and ( ; ) 2 IT (K; I), by the definition of P2, we have that
I j= is it( ; c; lC ) and I j= is it( ; c; lD). Thus, for induction hypothesis, there exist</p>
      </sec>
      <sec id="sec-32-2">
        <title>I1; I2 interpretations of s.t. ans(h iC(c)) I1 and ans(h iD(c)) I2. Thus</title>
        <p>ans(h( ; )iK) I1 [ I2.</p>
        <p>If K = 9R:D(c) and (d; ) 2 IT (K; I), by the definition of P2, we have that
rel it(tt; a; R; d); is it( ; d; lC ) 2 I. By the definition of P2, the first implies that</p>
      </sec>
      <sec id="sec-32-3">
        <title>R(a; d) 2 R and, by induction hypothesis, there exists an lp-interpretation for</title>
        <p>ans(h iD(c)) I0. This implies that ans(h(d; )iK) I0.</p>
        <p>If K = 8GC and 2 IT (K; I), by P2 we have that, for every c 2 DOM(G),
(c) = and isa it([c; ]; G; lC ) 2 I. This means that is it( ; c; lC ) 2 I. By
induction hypothesis, there exists Ic lp-interpretation of s.t. ans(h iC(c)) Ic. Thus,
considering the lp-interpretation IG = Sc2DOM(G) Ic, we have ans(h iK) IG. tu
We remark that an answer set for P1( ) does not coincides, in general, to an answer set
for as defined in Section 3. Basically, the difference lies in the generation of fillers
for existential formulas: for a formula 9R:C(a), while an answer set for “chooses”
one of the possible b 2 N such that R(a; b) and C(b) are verified, the approach of P1
is to generate in its model all such possible alternatives of the fillers. If we want to be
more faithful to the first interpretation, one option would be to generate a model for
each filler alternative by adding in the translation of existential formulas K = 9R:C(a)
disjunctive rules of the kind:
f illsK (x) _ :f illsK (x)
is(x; lC )
f illsK (x):</p>
        <p>rel(a; R; x):
f illsK (x); f illsK (y); y 6= x:</p>
      </sec>
    </sec>
    <sec id="sec-33">
      <title>It is easy to see, however, that this generation approach leads to a “combinatorial ex</title>
      <p>
        plosion” of the number of the models, as one has to consider all admitted combinations
of fillers for each existential formula. Similar considerations can be given if, moreover,
one does not want to restrict to a fixed input R RN but aims at computing all
possible b 2 N satisfying rel(a; R; x). In this regard, connections of such generation with
existential extensions of datalog [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] can be studied.
      </p>
      <p>Note that the two rewritings P1 and P2 can be also used separately. For example,
we might only apply the IT generating rewriting P2 if we are interested in verifying that
the input knowledge base contains all the necessary “constructive information” needed
to justify (i.e. compute an information term for) every input axiom5.
5</p>
      <p>Asp-it prototype</p>
    </sec>
    <sec id="sec-34">
      <title>The datalog translation presented in previous section has been implemented in a prototype, called Asp-it. Basically, the Asp-it prototype takes as input an OWL-EL ontology and, by using the presented datalog rewritings, outputs the ontology annotated with the information terms computed for each of its axioms.</title>
    </sec>
    <sec id="sec-35">
      <title>Asp-it is implemented as a Java-based command line application: it accepts as input</title>
      <p>an OWL-EL ontology (using the presented E L fragment), which corresponds to the
input set of formulas of the presented rewritings; Asp-it produces as output the same</p>
    </sec>
    <sec id="sec-36">
      <title>OWL ontology in which all logical axioms are annotated with the derived information terms using an OWL annotation property elc:hasIT; optionally, Asp-it can save to file the datalog rewriting used in the computation.</title>
      <p>
        5 This basically corresponds to the role of the GENIT algorithm in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
    </sec>
    <sec id="sec-37">
      <title>Thus, information terms in the output ontology take the form of string RDF literals</title>
      <p>and are structured as the list terms generated by the P2 rewriting (like, e.g.
"[meat,[red,tt]]"). The newly added elc:hasIT annotation property is
defined in a support schema file imported in the rewriting.</p>
    </sec>
    <sec id="sec-38">
      <title>The structure of Asp-it has been realized mostly around our previous work on</title>
      <p>
        CKRew6, a datalog rewriter for Contextualized Knowledge Repositories [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. The
loading and saving of OWL ontology files is managed using the OWL API7. Computation of
models for the datalog rewritings is managed using an external call to the DLV solver8,
by means of the DLVWrapper Java library [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ].
      </p>
    </sec>
    <sec id="sec-39">
      <title>The information terms generation process of Asp-it is shown in Figure 1. First of all,</title>
      <p>Input
ontology
Γ</p>
      <p>Rewrite</p>
      <p>P(Γ)</p>
      <p>Retrieve
Info.Terms</p>
      <p>Annotate
hasIT
DLV system</p>
      <p>Datalog
rewriting
P(Γ)
Output
ontology
Γ'
the input OWL-EL ontology is loaded using the methods of the OWL API. Then the
rewriting takes place, building up the datalog program associated to the input
knowledge base: for each of the OWL logical axioms in , their structure is recursively
traversed by the rewriting methods and the corresponding rules of P1 and P2 are added
to the program. Next, the program is submitted to the DLV solver to compute its
answer sets: the output models are then filtered to retrieve the terms corresponding to
information terms of the input axioms (equivalent to the IT (K; I) set from Section 4).</p>
    </sec>
    <sec id="sec-40">
      <title>The information terms elc:hasIT annotations are then written to the output ontol</title>
      <p>ogy by means of the OWL API. Finally, the output ontology 0 (and, if requested, the
computed datalog program) is saved to file.</p>
      <p>Asp-it is distributed as an open source software at https://github.com/
dkmfbk/asp-it. The latest binary release of Asp-it can be downloaded at https:
//dkm.fbk.eu/resources/asp-it/asp-it.zip. The binary package
contains (in the folder demo) example files implementing the “food and wines” running
example.</p>
      <sec id="sec-40-1">
        <title>6 http://ckrew.fbk.eu/ 7 http://owlcs.github.io/owlapi/ 8 http://www.dlvsystem.com/dlv/</title>
        <p>Conclusions and future works
In this paper, our interest was to demonstrate a practical approach to the realization of
semantics for constructive description logics (and the application of their formal
properties) on the base of Semantic Web languages and tools. We first introduced a minimal
constructive description logic E Lc based on the language of E L. Then, we extended
to this interpretation results linking its information terms semantics to answer set
semantics: on these bases, we proposed a datalog rewriting aimed at the computation of
information terms of an input E Lc knowledge base. Finally, we have developed an open
source tool implementing this computation, using well-known tools for the management
of OWL ontologies and answer set programming. We remark that, while demonstrative
from an applicative point of view, this exercise also lead to a first study of the relations
of constructive semantics for description logics with answer set programming.</p>
      </sec>
    </sec>
    <sec id="sec-41">
      <title>Of course, the presented work and prototype only represent a first step towards the</title>
      <p>use of constructive description logics in practical applications on Semantic Web data.</p>
    </sec>
    <sec id="sec-42">
      <title>As noted in previous sections, one fundamental direction would be to develop and inte</title>
      <p>grate in current work procedures that are able to manipulate the computed information
terms. In this regard, for example, it will be interesting to study the applicability of
this work in conjunction to the Semantic Web service composition calculus based on</p>
      <sec id="sec-42-1">
        <title>BCDL presented in [5]. From a formal point of view, a prosecution of this work should</title>
        <p>involve the study of the expandability of the presented results and rewritings to more
expressive description logics. For example, one direction would be to extend the results
to the language of ALC, thus aiming at the full BCDL logic. Another direction would
be to broaden the language in the E L family towards SROE L, corresponding to the
full language of OWL-EL.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Alviano</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Faber</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Leone</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Manna</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Disjunctive datalog with existential quantifiers: Semantics, decidability, and complexity issues</article-title>
          .
          <source>TPLP</source>
          <volume>12</volume>
          (
          <issue>4-5</issue>
          ),
          <fpage>701</fpage>
          -
          <lpage>718</lpage>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Terminological cycles in a description logic with existential restrictions</article-title>
          .
          <source>In: IJCAI-03</source>
          . pp.
          <fpage>325</fpage>
          -
          <lpage>330</lpage>
          . Morgan Kaufmann (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Bozzato</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ferrari</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fiorentini</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fiorino</surname>
          </string-name>
          , G.:
          <article-title>A constructive semantics for ALC</article-title>
          .
          <source>In: DL2007. CEUR-WP</source>
          , vol.
          <volume>250</volume>
          , pp.
          <fpage>219</fpage>
          -
          <lpage>226</lpage>
          . CEUR-WS.org (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Bozzato</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Eiter</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serafini</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Contextualized Knowledge Repositories with Justifiable Exceptions</article-title>
          .
          <source>In: DL2014. CEUR-WP</source>
          , vol.
          <volume>1193</volume>
          , pp.
          <fpage>112</fpage>
          -
          <lpage>123</lpage>
          . CEUR-WS.org (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Bozzato</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ferrari</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Composition of semantic web services in a constructive description logic</article-title>
          .
          <source>In: RR2010. Lecture Notes in Computer Science</source>
          , vol.
          <volume>6333</volume>
          , pp.
          <fpage>223</fpage>
          -
          <lpage>226</lpage>
          . Springer (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Bozzato</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ferrari</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fiorentini</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fiorino</surname>
          </string-name>
          , G.:
          <article-title>A decidable constructive description logic</article-title>
          .
          <source>In: JELIA 2010. Lecture Notes in Computer Science</source>
          , vol.
          <volume>6341</volume>
          , pp.
          <fpage>51</fpage>
          -
          <lpage>63</lpage>
          . Springer (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Bozzato</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ferrari</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Villa</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Actions over a constructive semantics for description logics</article-title>
          .
          <source>Fundam. Inform</source>
          .
          <volume>96</volume>
          (
          <issue>3</issue>
          ),
          <fpage>253</fpage>
          -
          <lpage>269</lpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Brachman</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McGuinness</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patel-Schneider</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Resnick</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Borgida</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Living with CLASSIC: When and how to use a KL-ONE-like language</article-title>
          .
          <source>In: Principles of Semantic Networks</source>
          . pp.
          <fpage>401</fpage>
          -
          <lpage>456</lpage>
          . Morgan Kaufmann (
          <year>1991</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Calimeri</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cozza</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ianni</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Leone</surname>
          </string-name>
          , N.:
          <article-title>Enhancing ASP by functions: Decidable classes and implementation techniques</article-title>
          .
          <source>In: AAAI</source>
          <year>2010</year>
          . AAAI Press (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Eiter</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ianni</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Krennwallner</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Answer set programming: A primer</article-title>
          .
          <source>In: Reasoning Web 2009. Lecture Notes in Computer Science</source>
          , vol.
          <volume>5689</volume>
          , pp.
          <fpage>40</fpage>
          -
          <lpage>110</lpage>
          . Springer (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Ferrari</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fiorentini</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fiorino</surname>
          </string-name>
          , G.:
          <article-title>BCDL: basic constructive description logic</article-title>
          .
          <source>J. of Automated Reasoning</source>
          <volume>44</volume>
          (
          <issue>4</issue>
          ),
          <fpage>371</fpage>
          -
          <lpage>399</lpage>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Ferrari</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fiorentini</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Momigliano</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ornaghi</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>Snapshot generation in a constructive object-oriented modeling language</article-title>
          .
          <source>In: LOPSTR</source>
          <year>2007</year>
          ,
          <string-name>
            <given-names>Selected</given-names>
            <surname>Papers</surname>
          </string-name>
          .
          <source>Lecture Notes in Computer Science</source>
          , vol.
          <volume>4915</volume>
          , pp.
          <fpage>169</fpage>
          -
          <lpage>184</lpage>
          . Springer (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Fiorentini</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ornaghi</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Answer set semantics vs. information term semantics</article-title>
          .
          <source>In: ASP2007: Answer Set Programming</source>
          ,
          <source>Advances in Theory and Implementation</source>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Fiorentini</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Momigliano</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ornaghi</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Poernomo</surname>
            ,
            <given-names>I.:</given-names>
          </string-name>
          <article-title>A constructive approach to testing model transformations</article-title>
          .
          <source>In: ICMT 2010. Lecture Notes in Computer Science</source>
          , vol.
          <volume>6142</volume>
          , pp.
          <fpage>77</fpage>
          -
          <lpage>92</lpage>
          . Springer (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Haeusler</surname>
            ,
            <given-names>E.H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>de Paiva</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rademaker</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Intuitionistic description logic and legal reasoning</article-title>
          .
          <source>In: DEXA 2011 Workshops</source>
          . pp.
          <fpage>345</fpage>
          -
          <lpage>349</lpage>
          . IEEE Computer Society (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Hilia</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chibani</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Djouani</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Amirat</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          :
          <article-title>Semantic service composition framework for multidomain ubiquitous computing applications</article-title>
          .
          <source>In: ICSOC 2012. Lecture Notes in Computer Science</source>
          , vol.
          <volume>7636</volume>
          , pp.
          <fpage>450</fpage>
          -
          <lpage>467</lpage>
          . Springer (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Lifschitz</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tang</surname>
            ,
            <given-names>L.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Turner</surname>
          </string-name>
          , H.:
          <article-title>Nested expressions in logic programs</article-title>
          .
          <source>Ann. Math. Artif. Intell</source>
          .
          <volume>25</volume>
          (
          <issue>3-4</issue>
          ),
          <fpage>369</fpage>
          -
          <lpage>389</lpage>
          (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Mendler</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scheele</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Towards a type system for semantic streams</article-title>
          .
          <source>In: SR2009 - Stream Reasoning Workshop (ESWC</source>
          <year>2009</year>
          ).
          <article-title>CEUR-WP</article-title>
          , vol.
          <volume>466</volume>
          .
          <string-name>
            <surname>CEUR-WS.org</surname>
          </string-name>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Mendler</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scheele</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Towards Constructive DL for Abstraction and Refinement</article-title>
          .
          <source>J. Autom. Reasoning</source>
          <volume>44</volume>
          (
          <issue>3</issue>
          ),
          <fpage>207</fpage>
          -
          <lpage>243</lpage>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Miglioli</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Moscato</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ornaghi</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Usberti</surname>
          </string-name>
          , G.:
          <article-title>A constructivism based on classical truth</article-title>
          .
          <source>Notre Dame Journal of Formal Logic</source>
          <volume>30</volume>
          (
          <issue>1</issue>
          ),
          <fpage>67</fpage>
          -
          <lpage>90</lpage>
          (
          <year>1989</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Motik</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fokoue</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wu</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lutz</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grau</surname>
            ,
            <given-names>B.C.</given-names>
          </string-name>
          :
          <article-title>OWL 2 Web Ontology Language Profiles</article-title>
          . W3C recommendation,
          <source>W3C (Oct</source>
          <year>2009</year>
          ), http://www.w3.org/TR/2009/RECowl2-profiles-20091027/
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Odintsov</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wansing</surname>
          </string-name>
          , H.:
          <article-title>Inconsistency-tolerant description logic. Part II: A tableau algorithm for CALCC</article-title>
          .
          <source>J. of Applied Logic</source>
          <volume>6</volume>
          (
          <issue>3</issue>
          ),
          <fpage>343</fpage>
          -
          <lpage>360</lpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Ornaghi</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Benini</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ferrari</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fiorentini</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Momigliano</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A Constructive Modeling Language for Object Oriented Information Systems</article-title>
          .
          <source>Electr. Notes Theor. Comput. Sci</source>
          .
          <volume>153</volume>
          (
          <issue>1</issue>
          ),
          <fpage>55</fpage>
          -
          <lpage>75</lpage>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Pearce</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sarsakov</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schaub</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tompits</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Woltran</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>A polynomial translation of logic programs with nested expressions into disjunctive logic programs: Preliminary report</article-title>
          .
          <source>In: ICLP 2002. Lecture Notes in Computer Science</source>
          , vol.
          <volume>2401</volume>
          , pp.
          <fpage>405</fpage>
          -
          <lpage>420</lpage>
          . Springer (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Ricca</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>The DLV java wrapper</article-title>
          .
          <source>In: AGP-2003</source>
          . pp.
          <fpage>263</fpage>
          -
          <lpage>274</lpage>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Troelstra</surname>
            ,
            <given-names>A.S.:</given-names>
          </string-name>
          <article-title>From constructivism to computer science</article-title>
          .
          <source>Theor. Comput. Sci</source>
          .
          <volume>211</volume>
          (
          <issue>1-2</issue>
          ),
          <fpage>233</fpage>
          -
          <lpage>252</lpage>
          (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>