<!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>Materialization Calculus for Contexts in the Semantic Web</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>
        <contrib contrib-type="author">
          <string-name>Luciano Serafini</string-name>
          <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>Representation of context dependent knowledge in the Semantic Web is becoming a recognized issue and a number of DL-based formalisms have been proposed in this regard: among them, in our previous works we introduced the Contextualized Knowledge Repository (CKR) framework. In CKR, contexts are organized hierarchically according to a broader-narrower relation and knowledge propagation across contexts is limited among contexts hierarchically related. In several applications, however, this structure is too restrictive, as they demand for a more flexible and scalable framework for representing and reasoning about contextual knowledge. In this work we present an evolution of the original CKR (based on OWL RL), where contexts can be organized in any graph based structure (declared as a metaknowledge base) and knowledge propagation is allowed among any pair of contexts via a new ”evaluate-in-context” operator. In particular, we detail a materialization calculus for reasoning over the revised CKR framework and prove its soundness and completeness. Moreover, we outline the current implementation of the calculus on top of SPRINGLES, an extension of standard RDF triple stores for representing and rule-based inferencing over multiple RDF named graphs.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Representation of context dependent knowledge in the Semantic Web is becoming a</title>
      <p>
        recognized issue and a number of DL-based formalisms have been proposed in this
regard: among them, in our previous works we introduced the Contextualized Knowledge
Repository (CKR) framework [
        <xref ref-type="bibr" rid="ref13 ref2 ref4">13, 4, 2</xref>
        ]. In a CKR, each context is associated with a
set of formulae that hold under the same circumstances, which are specified by a set
of dimensional attributes associated to the context (e.g. time, space, topic, author or
access-permissions ). In CKR, as proposed in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], the values of contextual attributes
were organized hierarchically according to a broader-narrower relation. For instance
the geographical value “Italy” is narrower than “Europe”, the time attribute “2010” is
narrower than “21st century”, and the topic attribute “football” is narrower than “sport”.
      </p>
    </sec>
    <sec id="sec-2">
      <title>This structure induces a hierarchical (coverage) relation between contexts. For exam</title>
      <p>ple, the context associated to Italian football during 2010 is covered by the context
for European sports in the 21st century. Coverage relation regulates the propagation of
knowledge across contexts, which is limited among contexts hierarchically related.</p>
      <p>Practical applications, however, show that this structure might be too restrictive and
demand for a more flexible and scalable representation of contextual knowledge. For
example, it is often necessary to: associate a type (e.g. Event) to a set of contexts and
characterize it by a set of axioms; use in a context the interpretation of a complex
expression from a possibly unrelated class of contexts. For this reason, in this work we
extend and generalize the original CKR framework by the following two aspects:
1. Generalizing contextual structure: hierarchical contextual attributes are replaced
with a generic graph structure specified by a DL knowledge base, containing individual
names to denote contexts (i.e. contexts IDs), identifiers for contextual attributes values,
and binary relations that allow to specify the relations and contextual attributes for each
context. This generalization enables also the introduction of context classes,
prototypical contexts that represent homogeneous classes of contexts.</p>
      <sec id="sec-2-1">
        <title>2. Generalizing knowledge propagation: we introduce the eval operator, a primitive</title>
        <p>that allows to refer to the extension of a concept (or role) in another set of contexts.</p>
        <sec id="sec-2-1-1">
          <title>For instance the subsumption c1 : eval(A, C) v A can be used to state that the exten</title>
          <p>sion of concept A in contexts of type C is contained in the extension of A in c1. This
subsumption enable to propagate the information of A from contexts in C to c1.</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Over this generalized version of CKR, we detail a materialization calculus for instance</title>
      <p>checking and prove its soundness and completeness1. Moreover, we outline its current
implementation on top of SPRINGLES, an extension of standard RDF triple stores for
representing and rule-based inferencing over multiple RDF named graphs.
2</p>
      <p>Preliminaries: S ROI Q-RL</p>
    </sec>
    <sec id="sec-4">
      <title>In the following we assume the usual presentation of description logics [1] and defini</title>
      <p>
        tions2 for the logic SROIQ [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
      </p>
      <p>
        OWL RL [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] is basically defined on a restriction of SROIQ syntax: in the
following we call such restricted language SROIQ-RL. The language is obtained by
limiting the form of General Concept Inclusion axioms (GCIs) and concept equivalence of
      </p>
      <sec id="sec-4-1">
        <title>SROIQ to C v D where C and D are concept expressions, called left-side concept</title>
        <p>and right-side concept respectively, and defined by the following grammar:
C := A | {a} | C1 u C2 | C1 t C2 | ∃R.C1 | ∃R.{a} | ∃R.&gt;</p>
        <p>D := A | ¬C1 | D1 u D2 | ∃R.{a} | ∀R.D1 | 6 nR.C1 | 6 nR.&gt;
where n ∈ {0, 1}. Finally, a both-side concept E is a concept expression which is both
a left- and right-side concept. TBox axioms can only take the form C v D or E ≡ E.</p>
      </sec>
      <sec id="sec-4-2">
        <title>RBox for SROIQ-RL can contain every role axiom of SROIQ but Ref(R). ABox</title>
        <p>concept assertions can be only stated in the form D(a), where D is a right-side concept.
3</p>
        <p>Contextualized Knowledge Repositories
A CKR is a two layered structure. The upper layer is composed of a knowledge base G,
which describes two types of knowledge: (i) the structure and the properties of contexts
1 Complete proofs for soundness and completeness are presented in the Appendix.
2 For ease of reference, the intended presentation of syntax and semantics for SROIQ
constructors and axioms is presented in Table 4 in the Appendix.
of the CKR (called meta-knowledge ), and (ii) the knowledge that is context
independent, i.e., that holds in every context (called global knowledge). The lower layer, is
constituted by a set of (local) contexts, each containing (locally valid) facts, that can also
refer to what holds in other contexts. To favor knowledge reuse, the knowledge of each
context is organized in multiple knowledge modules. The association between contexts
and modules is represented in the meta-knowledge via a binary relation, and can be
either explicitly asserted or inferred via meta-reasoning. The knowledge in a CKR can
be expressed by means of any DL language: in the following we provide the parametric
definition to any DL language and successively we instantiate it to SROIQ-RL.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>The meta-knowledge of a CKR is expressed by a DL language defined on a meta</title>
      <p>vocabulary, containing the elements that define the contextual structure3.
Definition 1 (Meta-vocabulary). A meta-vocabulary is a DL vocabulary Γ composed
of a set of atomic concepts NCΓ , a set atomic roles NRΓ and a set of individual
constants NIΓ that are mutually disjoint and contain the following sets of symbols</p>
      <sec id="sec-5-1">
        <title>1. N ⊆ NIΓ of context names.</title>
      </sec>
      <sec id="sec-5-2">
        <title>2. M ⊆ NIΓ of module names.</title>
      </sec>
      <sec id="sec-5-3">
        <title>3. C ⊆ NCΓ of context classes,</title>
        <p>including the class Ctx4.</p>
        <p>DA ⊆</p>
      </sec>
      <sec id="sec-5-4">
        <title>4. R ⊆ NRΓ of contextual relations.</title>
      </sec>
      <sec id="sec-5-5">
        <title>5. A ⊆ NRΓ of contextual attributes.</title>
        <p>6. For every attribute A ∈ A, a set</p>
        <p>NIΓ of attribute values of A.</p>
        <p>The meta-language of a CKR, denoted by LΓ , is a DL language built starting from the
meta-vocabulary Γ with the following syntactic conditions on the application of role
restrictions: for every • ∈ {∀ , ∃, 6 n, &gt; n}, (i) if the concept • A.B occurs in a concept
expression, then B = {a} with a ∈ DA; (ii) if the concept • mod.B occurs in a concept
expression, then B = {m} with m ∈ M.</p>
        <p>The context (in)dependent knowledge of a CKR is expressed via a DL language
called object-language , based on an object-vocabulary Σ = NCΣ ] NRΣ ] NIΣ . The
object-language LΣ is the DL language defined starting from the Σ . The expressions
of the object language will be evaluated locally to each context: namely each context
can interpret each symbol independently. However, there are cases in which one want
to constrain the meaning of a symbol in a context with the meaning of a symbol in
some other context. For instance if John likes all Indian restaurants in Trento, then the
extension of the concept GoodRestaurant in the context of John preferences, contains
the extension of IndianRestaurant in the context of tourism in Trento. To
represent such external references, we extend the object language LΣ with the so called
eval expressions. Given a concept or role expression X of LΣ , and a context
expression C of LΓ , an eval expression is an expression of the form eval(X, C). The DL
language LΣe extends LΣ with the set of eval-expressions in LΣ . Intuitively, the
expression eval(C, {c}) represents the extension of the concept C in the context c.
Generalizing, eval(C, C) with C a context class represent the union of the extensions of
C in each context of type C. Similar intuition can be given for eval(R, C). The above
example can be formalized by adding the following axiom to the context of John’s
preferences: eval(IndianRestaurant, {trento tourism}) v GoodRestaurant. Finally,
3 To support readability we use sans-serif typeface to denote elements of the meta-vocabulary.
4 Intuitively, Ctx will be used to denote the class of all contexts.
notice that we do not allow nested eval expressions: every expression occurring inside
an eval should be an expression in LΣ .</p>
        <sec id="sec-5-5-1">
          <title>Definition 2 (Contextualized Knowledge Repository, CKR). Given a meta-vocabulary</title>
          <p>Γ and an object vocabulary Σ , a Contextualized Knowledge Repository (CKR) over
hΓ, Σ i is a structure K = hG, {Km}m∈Mi where:
– G is a DL knowledge base over LΓ ∪ LΣ
– for every module name m ∈ M, Km is a DL knowledge base over LΣe .
Definition 3 (S ROIQ-RL CKR). A CKR is a SROIQ-RL CKR, if G is a knowledge
base in SROIQ-RL, and for each m ∈ M, Km is a S ROIQ-RL knowledge base,
where eval-expressions only occur in left-concepts and contain left-concepts or roles.
Example 1. We introduce an example in the tourism recommendation domain5. In this
scenario we use CKR to implement a knowledge base, called Ktour, that is populated
with touristic events, locations, organizations and tourists’ preferences and profiles, and
that is capable to identify events that are interesting for a tourist (or tourists class)
starting from his/her preferences. A simplified version of the structure and the
conG</p>
          <p>Event
m_event
m_tourist
CulturalEvent</p>
          <p>SportsEvent
Concert</p>
          <p>VolleyMatch</p>
          <p>VolleyA1</p>
          <p>Competition
trento_cuneo
trento_latina</p>
          <p>A1_2012-13
modena_trento
m_sport_ev</p>
          <p>Tourist
m_sp_tourist
m_v_match</p>
          <p>SportiveTourist CulturalTourist
volley_fan_01
m_tourist01
hasParentEvent
m_match1
m_match2</p>
          <p>m_match3
Kv_match HWoinmneeTre⊑aTmea⊑mT,eaLmos,eHr o⊑sTtTeaemam,..⊑.Team, Kmatch1 Loser(itas_trentino_volley), ...</p>
          <p>Winner(bre_banca_cuneo_volley),
Ksport_ev eval(Winner, TopMatch) ⊑ TopTeam</p>
          <p>eval(TopTeam, SportsEvent) ⊑
Ksp_tourist PreferredTeam</p>
          <p>Winner(casa_modena_volley),
Kmatch2 Loser(itas_trentino_volley), ...</p>
          <p>Winner(itas_trentino_volley),</p>
          <p>Kmatch3 Loser(andreoli_latina_volley), ...
texts of Ktour is shown in Figure 1. In this example we focus on sportive events and
in particular on volley matches. Intuitively, in the global context G, every sport event
and tourist is modelled with a context: in the figure, these are depicted as black
diamonds and we show some of the official volley matches and a tourist. Contexts are
5 This example is a simplified version of a real case scenario in which we apply CKR to a tourist
event recommendation system in Trentino (see http://www.investintrentino.it/
News/Trentour-Trentino-platform-for-smart-tourism ).
grouped by types and organized in hierarchies by means of context classes: in the
figure (depicted as boxes) we show a distinct context class hierarchy for event types
(e.g. SportiveEvent, VolleyMatch) and for tourists types (e.g. SportiveTourist). The
metaknowledge in G associates to contexts and context classes a set of knowledge
modules, by axioms of the kind Event v ∃mod.{m event} or {modena trento} v
∃mod.{m match2}: in the figure these associations are represented by dotted lines to
the gray empty diamonds depicting module name individuals. Knowledge bases
associated to modules are depicted as the corresponding gray boxes in the lower part of
Figure 1: for example, in Kv match we have general axioms about the structure of volley
matches, while in modules for specific matches as Kmatch1 we store assertions about the
actual results of the match. Intuitively, the semantics will enforce a form of inheritance
of modules via context class hierarchy. Contextual relations across events and tourists
are depicted as bold arrows in the figure: the only relation hasParentEvent connects
matches with the competition in which they occour. Note that in some of the knowledge
modules, we use eval expressions to define references across contexts. For example, in
Ksport ev we can state6 that “Winners of major volley matches are top teams” with:
eval(W inner, VolleyMatch u ∃hasParentEvent.VolleyA1Competition) v T opT eam
Similarly, in Ksp tourist we say that for each sportive tourist “top teams are preferred
teams” with eval(T opT eam, SportsEvent) v P ref erredT eam. 3
Definition 4 (CKR interpretation). A CKR interpretation for hΓ, Σ i, is a structure
I = hM, Ii s.t. M is a DL interpretation of Γ ∪ Σ and, for every x ∈ CtxM, I(x) is
a DL interpretation over Σ .</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>According to the previous definition, a CKR interpretation is composed by an inter</title>
      <p>pretation for the “upper-layer” (which includes the global knowledge and the
metaknowledge) and an interpretation of the object language for each instance of type
context (i.e., for all x ∈ CtxM), providing a semantics of the object-vocabulary in x.
Definition 5 (CKR Model). A CKR interpretation I is a CKR model of K (in symbols,
I |= K) iff the following conditions hold:
1. Global interpretation: (i) NM ⊆ CtxM and, for every C ∈ C, CM ⊆ CtxM;
(ii) M |= G.
2. Local interpretations: if hx, yi ∈ modM and y = mM, then I(x) |= Km.
3. Knowledge propagation: for every x ∈ CtxM: (i) for a ∈ NIΣ and any y ∈ CtxM,
aI(x) = aI(y) = aM; (ii) for α ∈ G with α ∈ LΣ , I(x) |= α .</p>
      <sec id="sec-6-1">
        <title>4. Interpretation of eval expressions: given x ∈ CtxM,</title>
        <p>eval(X, C)I(x) =
XI(e)
[
e∈CM</p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>Note that the interpretation of an eval expression is independent from the context in</title>
      <p>which it is evaluated.</p>
    </sec>
    <sec id="sec-8">
      <title>We adapt to CKR models the definition of the classic reasoning problem of entail</title>
      <p>ment: intuitively, the problem is specialized by indicating the context of reference.
6 For space reasons, in Figure 1 and in following examples, we write TopMatch as a shortcut
for the corresponding context expression.</p>
      <p>Definition 6 (c-entailment). Given a CKR K over hΓ, Σ i with c ∈ N and an axiom
α ∈ LΣe , we say that α is c-entailed by K (denoted by K |= c : α ) if, for every CKR
model I = hM, Ii of K, we have I(cM) |= α .
i and an axiom α , we</p>
    </sec>
    <sec id="sec-9">
      <title>We extend this definition to CKR knowledge bases as follows.</title>
      <p>Definition 7 (Global entailment). Given a CKR K over hΓ, Σ
say that α is (globally) entailed by K (denoted by K |= α ) if:
– α ∈ LΣe and, for every c ∈ N and model I = hM, Ii of K, we have I(cM) |= α ;
– α ∈ LΓ and, for every model I = hM, Ii of K, we have M |= α .</p>
      <p>Example 2. We can now consider again the Ktour CKR of Example 1 and provide a
formal interpretation for it. Let I = hM, Ii be the model of Ktour directly induced by
its assertions. By the definition of the model, we can now find the knowledge base
associated to each context: for example, for the context of the match modena trento, we
have that I(modena trentoM) |= Kevent ∪ Ksport ev ∪ Kv match ∪ Kmatch2 and similarly
for the other matches. In particular, we have that the local interpretation satisfies the
axiom eval(W inner, TopMatch) v T opT eam ∈ Ksport ev. We can now give the
formal reading of such axiom: we have that eval(W inner, TopMatch)I(modena trentoM) =
Se∈TopMatchM W innerI(e). From the assertions in the ABox of G, this corresponds to
Se∈{match 2, match 3} W innerI(e). Now, by assertions on W inner inside Kmatch2 and
Kmatch3, we obtain {itas trentino, casa modena} ⊆ T opT eamI(modena trentoM).</p>
    </sec>
    <sec id="sec-10">
      <title>We can do a similar reasoning for the context describing the tourist volley fan 01.</title>
      <p>We have that I(volley fan 01M) |= Ktourist ∪ Ksp tourist ∪ Ktourist01. Thus, the
interpretation satisfies eval(T opT eam, SportsEvent) v P ref erredT eam from Ksp tourist.
As in the case above, eval(T opT eam, SportsEvent)I(volley fan 01M) is interpreted as
Se∈SportsEventM T opT eamI(e). From the assertions in G, we obtain that this is equal to
Se∈{match 1, match 2, match 3} T opT eamI(e). Finally, from the reference axiom above,
we obtain {itas trentino, casa modena} ⊆ P ref erredT eamI(volley fan 01M).
3
4</p>
      <p>Materialization Calculus Kic
In this section we extend the materialization calculus Kinst for instance checking on</p>
      <sec id="sec-10-1">
        <title>SROE L(u, × ) (OWL-EL) proposed by [10] in order to reason over the two layered</title>
        <p>structure of a CKR in SROIQ-RL. As we will discuss in the following, this calculus
basically formalizes the operation of forward closure we realized in the implementation.</p>
      </sec>
    </sec>
    <sec id="sec-11">
      <title>To simplify the presentation of the calculus rules, we introduce a normal form for</title>
      <p>the considered axioms. We say that a CKR K = hG, {Km}m∈Mi is in normal form if:
– G contains axioms in LΓ of the form of Table 1 or in the form C v ∃mod.{m},</p>
      <p>C v ∃A.{dA} for A, B, C ∈ C, R, S, T ∈ R, a, b ∈ N, m ∈ M, A ∈ A and dA ∈ DA.
– G and every Km contain axioms in LΣ of the form of Table 1 and every Km contain
axioms in LΣe of the form eval(A, C) v B, eval(R, C) v T for A, B, C ∈ NC,
a, b ∈ NI, R, S, T ∈ NR and C ∈ C.</p>
      <p>A v B
∃R.A v B</p>
      <p>R(a, b)</p>
      <p>{a} v B
A v ∃R.{a}
¬R(a, b)
a = b
R v T</p>
      <p>R ◦ S v T</p>
      <p>Dis(R, S)</p>
      <p>Inv(R, S)</p>
      <p>
        Irr(R)
We can give a set of rules7 that can be used to transform any SROIQ-RL CKR in
an “equivalent” CKR in normal form. As in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], we assume that rule chain axioms in
input are already decomposed in binary role chains. The correctness of this translation
can be shown by the following lemma.
      </p>
      <p>Lemma 1. For every CKR K = hG, {Km}m∈Mi over hΓ, Σ
i, a CKR K0 over extended
vocabularies hΓ 0, Σ 0i can be computed in linear time s.t. all axioms in K0 are in normal
form and, for all axioms α only using symbols from hΓ, Σ
i, K |= α iff K0 |= α .</p>
      <p>tu</p>
    </sec>
    <sec id="sec-12">
      <title>Let us introduce the basic concepts of the proposed calculus. We follow the same pre</title>
      <p>
        sentation given in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], and we will thus express our rules in the language of datalog.
      </p>
      <sec id="sec-12-1">
        <title>A signature is a tuple hC, Pi, with C a finite set of constants and P a finite set of</title>
        <p>predicates. We assume a set V of variables and we call terms the elements of C ∪ V.</p>
      </sec>
      <sec id="sec-12-2">
        <title>An atom over hC, Pi is in the form p(t1, . . . , tn) with p ∈ P and every ti ∈ C ∪ V</title>
        <p>for i ∈ {1, . . . , n}. A rule is an expression in the form B1, . . . , Bm → H where H and
B1, . . . , Bm are datalog atoms (the head and body of the rule). A fact H is a ground
rule with empty body. A program P is a finite set of datalog rules. A ground substitution
σ for hC, Pi is a function σ : V
→</p>
        <p>C. We define as usual substitutions on atoms and
ground instances of atoms. A proof tree for P is a structure hN, E, λ i where hN, Ei is
a finite directed tree and λ is a labelling function assigning a ground atom to each node,
exists a proof tree for P with root node r and with λ (r) = H.
where: for each v ∈ N , there exists a rule B1, . . . , Bm → H in P and a ground
substitution σ s.t. (i) λ (v) = σ (H) and (ii) v has m child nodes wi in E, with λ (wi) = σ (Bi)
for i ∈ {1, . . . , m}. A ground atom H is a consequence of P (denoted P |= H) if there</p>
      </sec>
    </sec>
    <sec id="sec-13">
      <title>We can now present the definition of our materialization calculus: we instantiate and adapt the general definition given by [10] in order to meet the structure of CKR.</title>
      <p>undefined or a set of datalog facts;
Definition 8 (Materialization calculus Kic). The materialization calculus Kic is
composed by the input translations Iglob, Iloc, Irl, the deduction rules Ploc, Prl, and output
translation O, such that:
– every input translation I and output translation O are partial functions (defined over
axioms in normal form) while deduction rules P are sets of datalog rules;
– given an axiom or signature symbol α (and c ∈ N), each I(α ) (or I(α, c)) is either
– the set of predicates used by each I, P, O is fixed and finite;
– given an axiom α and c ∈ N, O(α, c) is either undefined or a single datalog fact;
– all constant symbols in input or output translations for α are signature symbols
appearing in (or equal to) α .
7 Presented in Table 5 in the Appendix.</p>
      <sec id="sec-13-1">
        <title>Global input rules Iglob(G)</title>
        <p>(igl-subctx1) C ∈ C 7→ {subClass(C, Ctx, gm)}
(igl-subctx2) c ∈ N 7→ {inst(c, Ctx, gm)}
Local input rules Iloc(Km, c)
(ilc-subevalat) eval(A, C) v B 7→ {subEval(A, C, B, c)}
(ilc-subevalr)</p>
        <p>eval(R, C) v T 7→ {subEvalR(R, C, T, c)}
Local deduction rules Ploc
(plc-subevalat) subEval(a, c1, b, c), inst(c0, c1, gm), inst(x, a, c0) → inst(x, b, c)
(plc-subevalr)
(plc-eq)
nom(x, c), eq(x, y, c0) → eq(x, y, c)
subEvalR(r, c1, t, c), inst(c0, c1, gm), triple(x, r, y, c0) → triple(x, t, y, c)
Output translation O(α, c)
(o-role)
(o-concept) A(a) 7→ {inst(a, A, c)}
for global context, input translation Iloc and deduction rules Ploc for local contexts and
output rules O are presented in Table 2. Finally, SROIQ-RL input Irl and deduction
s∈Σ,I (s) defined I(s, c)). The sets of rules defining input translation Iglob
α ∈S I(α ) ∪ S
s∈Σ,I (s) defined I(s) (similarly I(S, c) =</p>
      </sec>
    </sec>
    <sec id="sec-14">
      <title>In order to introduce the notion of entailment, we define in the following the “trans</title>
      <p>lation process” to produce a program that represents the knowledge of the complete
input CKR. Let K = hG, {Km}m∈Mi be an input CKR in normal form. Then, let:</p>
      <p>P G(G) = Iglob(G) ∪ Prl ∪ Irl(GΓ , gm) ∪ Irl(GΣ , gk)
we define its associated knowledge base as:
with gm, gk new, GΓ = {α ∈ G | α ∈ LΓ } and GΣ
= {α ∈ G | α ∈ LΣ }. We define
the set of contexts NG = {</p>
      <p>c ∈ C | P G(G) |= inst(c, Ctx, gm)}. For every c ∈ NG,
Kc = [</p>
      <p>{Km ∈ K | P G(G) |= triple(c, mod, m, gm)}</p>
    </sec>
    <sec id="sec-15">
      <title>We define the program for c as:</title>
      <p>P C(c) = Ploc ∪ Iloc(Kc, c) ∪ Irl(Kc, c) ∪ Irl(GΣ , c)
Finally, the program for K can be encoded as P K(K) = P G(G) ∪ S
c∈NG</p>
      <p>P C(c).</p>
      <p>We say that G entails an axiom α</p>
      <p>∈ LΓ (denoted G ` α ) if P G(G) and O(α, gm)
gm with gk. We say that K entails an axiom α
are defined and P G(G) |= O(α, gm). The same can be stated if α
∈ LΣ
e in a context c ∈ N (denoted
∈ LΣ , substituting
K ` c : α ) if the elements of P K(K) and O(α, c) are defined and P K(K) |= O(α, c).</p>
    </sec>
    <sec id="sec-16">
      <title>The presented rules and translation provide a sound and complete materialization</title>
      <p>
        calculus for instance checking (with respect to c-entailment) in SROIQ-RL CKRs in
normal form. The result can be verified by extending the proofs in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] to SROIQ-RL
and to the CKR structure. Soundness w.r.t. the global knowledge is established as:
with α an atomic concept or role assertion, then G ` α implies G |= α .
Lemma 2. Given K = hG, {Km}m∈Mi a CKR in normal form, and α ∈ LΓ or α ∈ LΣ
RL input translation Irl(S, c)
(irl-ntriple) ¬R(a, b) 7→ {negtriple(a, R, b, c)} (irl-leqone) A v 61R.B 7→ {supLeqOne(A, R, B, c)}
a ∈ NI 7→ {nom(a, c)}
A ∈ NC 7→ {cls(A, c)}
R ∈ NR 7→ {rol(R, c)}
A(a) 7→ {inst(a, A, c)}
      </p>
    </sec>
    <sec id="sec-17">
      <title>Soundness for global entailment is proved by extending the result to local knowledge.</title>
      <p>Theorem 1 (Soundness). Given K = hG, {Km}m∈Mi a CKR in normal form, α ∈ LΣ
an atomic concept or role assertion and c ∈ N, then K ` c : α implies K |= c : α .
tu</p>
    </sec>
    <sec id="sec-18">
      <title>Completeness can be verified in a similar way. We say that a CKR K is consistent if there</title>
      <p>does not exist c ∈ N ∪ {gm, gk} and a ∈ NIΣ ∪ NIΓ s.t. P K(K) |= inst(a, bot, c).
Lemma 3. Given K = hG, {Km}m∈Mi a consistent CKR in normal form, and α ∈ LΓ
or α ∈ LΣ with α an atomic concept or role assertion, then G |= α implies G ` α .
Theorem 2 (Completeness). Given K = hG, {Km}m∈Mi a consistent CKR in normal
form, α ∈ LΣ an atomic concept or role assertion and c ∈ N, then K |= c : α implies
tu
tu</p>
      <p>Concrete Syntax for RDF with Named Graphs
The forward reasoning over CKR expressed by the materialization calculus has been
implemented in a prototype. Basically, the prototype accepts RDF input data
expressing OWL-RL axioms and assertions for global and local knowledge modules: these
different pieces of knowledge are represented as distinct named graphs, while contextual
primitives (e.g. contexts and the eval operator) have been encoded in a RDF
vocabulary. The prototype is based on an extension of the Sesame 2.6 framework: the main
component, called CKR core module exposes the CKR primitives and a SPARQL 1.1
endpoint for query and update operations on the contextualized knowledge. The
module offers the ability to compute and materialize the inference closure of the input CKR,
add and remove knowledge and execute queries over the complete CKR structure.</p>
    </sec>
    <sec id="sec-19">
      <title>The distribution of knowledge in different named graphs asks for a module to com</title>
      <p>pute inference over multiple graphs in a RDF store. This component has been realized as
a general software layer called SPRINGLES8. Intuitively, the layer provides methods to
demand a closure materialization on the RDF store data: rules are encoded as SPARQL
queries and it is possible to customize both the input ruleset and the evaluation strategy.</p>
    </sec>
    <sec id="sec-20">
      <title>In our case, the ruleset basically encodes the rules of the presented materialization</title>
      <p>calculus. As an example, we present the rule dealing with atomic concept inclusions:
:prl-subc a spr:Rule ;
spr:head """ GRAPH ?mx { ?x rdf:type ?z } """ ;
spr:body """ GRAPH ?m1 { ?y rdfs:subClassOf ?z }</p>
      <p>GRAPH ?m2 { ?x rdf:type ?y }
GRAPH sys:dep { ?mx sys:derivedFrom ?m1,?m2 }
FILTER NOT EXISTS
{ GRAPH ?m0 { ?x rdf:type ?z }</p>
      <p>GRAPH sys:dep { ?mx sys:derivedFrom ?m0 } } """ .</p>
      <p>This code corresponds to the local rule (prl-subc) of Prl, thus has the scope of a single
context. When the condition in the body part of the rule is verified in graphs ?m1 and
?m2, the head part is materialized in the inference graph ?mx. In the rule we work at
level of knowledge modules (i.e. named graphs): the first three lines directly correspond
to the rule in Prl; in the fourth line we require that module ?mx, containing the
inferences in the given context, depends on the modules of the assumptions. In other words,
we require that both rule preconditions and results belong to the KB associated to the
same context9. The filter expression checks that the results have not been derived yet.</p>
      <p>The rules are evaluated with a strategy that basically follows the same steps of
the translation process defined for the calculus. Intuitively, the plan goes as follows:
(i) we compute the closure on the graph for global context G, by a fixpoint on rules
corresponding to Prl; (ii) we derive associations between contexts and their modules,
by adding dependencies for every assertion of the kind mod(c, m) in the global closure;
(iii) we compute the closure the contexts, by applying rules encoded from Prl and Ploc
and resolving eval expressions by the metaknowledge information in the global closure.
8 SParql-based Rule Inference over Named Graphs Layer Extending Sesame .
9 Statements ?mx sys:derivedFrom ?my are generated from the closure of the global
context. For every context, an additional module for its inferences is created and associated to
it via sys:derivedFrom relation.</p>
    </sec>
    <sec id="sec-21">
      <title>A demo of the prototype, containing RDF data that encodes the example CKR</title>
      <p>Ktour, can be found at https://dkm.fbk.eu/index.php/CKR-TourismDemo .
6</p>
      <p>Related Works</p>
    </sec>
    <sec id="sec-22">
      <title>The interest in representation of contexts in the Semantic Web favored the proposal of</title>
      <p>
        several DL-based formalisms. One relevant example is the Two-dimensional
description logics of context [
        <xref ref-type="bibr" rid="ref8 ref9">8, 9</xref>
        ]. It is based on a multimodal extension of one DL with
another: the composition of an object language LO with a contextual language LC
results in a combined language CLC . This allows a clear separation of the metaknowledge
      </p>
      <p>
        LO
and a complex definition of the contextual structure. Contextual modal operators
introduced by this logic allow to define references to other contexts, similarly to the eval
operator. On the other hand, we note that most of the approaches (including [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]) only
consider fixed structures for the representation of metaknowledge, possibly for dealing
with the complexity of the combination of languages [
        <xref ref-type="bibr" rid="ref14 ref15 ref16 ref17 ref18 ref19 ref7">7, 14–16</xref>
        ]. A comparison of the
approaches with respect to the needs for context in Semantic Web can be found in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
    </sec>
    <sec id="sec-23">
      <title>The presented materialization calculus extends the calculus for instance checking</title>
      <p>
        presented in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] for SROE L(u, × ) to the language of OWL RL: in our extension, we
also referred to the subsequent work [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] presenting a rule-based calculus for
classification in OWL RL.
7
      </p>
      <p>Conclusions</p>
    </sec>
    <sec id="sec-24">
      <title>In this paper we presented a revised and extended version of the CKR framework, gen</title>
      <p>eralizing the previous formalization in aspects of contextual structure and knowledge
propagation. We then proposed a sound and complete materialization calculus for
reasoning over the new CKR definition and outlined its implementation based on SPARQL
and a concrete syntax in RDF with named graphs.</p>
      <p>
        We remark that the newly proposed version addresses several limitations of CKR
in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]: the global context G extends the metaknowledge component of CKR with
global object knowledge and, most of all, metaknowledge is not limited by a fixed
structure but can be defined as a full DL knowledge base; contextual structure is now
independent from the definition of context dimensions and the coverage relation, while
general context relations can be explicitly asserted across contexts; the eval operator
generalizes the notion of qualified symbols to generic object expressions and contexts
classes; finally, we allow multiple modules to be associated to contexts. On the other
hand we have still to verify how this increase in representation potential affects the
complexity of reasoning in the new representation.
      </p>
    </sec>
    <sec id="sec-25">
      <title>We are currently realizing a different implementation of the calculus based on DL</title>
      <p>
        rewritings to Datalog programs [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Moreover we plan to study the complexity
properties of the new version of the CKR with respect to the previous formalization. Finally,
we want to evaluate the different realizations of CKR with respect to reasoning
performances and ease of modelling over the same set of contextualized data, as in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>Appendix: Result Proofs</p>
      <sec id="sec-25-1">
        <title>Soundness</title>
        <p>Lemma 1. Given K = hG, {Km}m∈Mi a CKR in normal form, and α ∈ LΓ or α ∈ LΣ
with α an atomic concept or role assertion, then G ` α implies G |= α .</p>
      </sec>
    </sec>
    <sec id="sec-26">
      <title>Proof. We can basically follow the same proof schema used for proving soundness</title>
      <p>
        in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], by adapting it to the rules of our calculus. By definition, we have that P G(G) =
Iglob(G) ∪ Prl ∪ Irl(GΓ , gm) ∪ Irl(GΣ , gk). We can assign an interpretation to the
ground atoms derived from P G(G) as follows, where g = gm or g = gk:
– inst(a, A, g) with a ∈ NIΓ ∪ NIΣ , A ∈ NCΓ ∪ NCΣ , then G |= A(a);
– inst(a, top, g) with a ∈ NIΓ ∪ NIΣ , then G |= &gt;(a);
– inst(a, bot, g) with a ∈ NIΓ ∪ NIΣ , then G |= ⊥(a);
– triple(a, R, b, g) with a, b ∈ NIΓ ∪ NIΣ , R ∈ NRΓ ∪ NRΣ , then G |= R(a, b);
– eq(a, b, g) with a, b ∈ NIΓ ∪ NIΣ , then G |= a = b;
– neq(a, b, g) with a, b ∈ NIΓ ∪ NIΣ , then G |= a 6= b;
      </p>
    </sec>
    <sec id="sec-27">
      <title>We claim that, for any ground atom H of the above form with the corresponding se</title>
      <p>mantic condition C(H), P G(G) |= H implies G |= C(H). We can prove the claim by
induction on the possible proof tree of the above atoms H.
– (prl-ntriple): then H = inst(a, bot, g) and P G(G) |= negtriple(a, R, b, g),
P G(G) |= triple(a, R, b, g). We have that ¬R(a, b) ∈ G and, by the above
interpretation of atoms, we obtain that G |= R(a, b). This is an absurd, thus there cannot
be an interpretation satisfying G, which justifies the consequence G |= ⊥(a).
– (prl-eq1): then H = eq(a, a, g) and, by Irl rules, a ∈ NIΓ ∪ NIΣ . For any model M
of G, for any a ∈ NIΓ ∪NIΣ it holds that aM = aM, thus this verifies G |= (a = a).
– (prl-eq2): then H = eq(b, a, g) and P G(G) |= eq(a, b, g). By the above
interpretation of atoms, G |= (a = b): by symmetricity of equality relation this directly implies
that G |= (b = a).
– (prl-eq3): then H = inst(b, B, g) and P G(G) |= eq(a, b, g), P G(G) |= inst(a, B, g).</p>
      <p>By the above interpretation of atoms, G |= (a = b) and G |= B(a). This directly
implies that G |= B(b), thus proving the assertion.
– (prl-eq4): then H = triple(a, R, b, g) and P G(G) |= eq(c, a, g), P G(G) |=
triple(c, R, b, g). By the above interpretation of atoms, G |= (c = a) and G |=
R(c, b). This directly implies that G |= R(a, b). The case for (prl-eq5) can be verified
similarly.
– (prl-eq6): then H = eq(a, b, g) and P G(G) |= eq(a, c, g), P G(G) |= eq(c, b, g).</p>
      <p>By the above interpretation of atoms, G |= (a = c) and G |= (c = b): by transitivity
of equality relation this directly implies that G |= (a = b).
– (prl-neq): then H = inst(a, bot, g) and P G(G) |= neq(a, b, g), P G(G) |=
eq(a, b, g). By induction hypothesis and the above semantic conditions, we obtain
G |= (a = b) and G |= (a 6= b). This is an absurd, thus there cannot be an
interpretation satisfying G: this justifies the consequence G |= ⊥(a).
– (prl-top): then H = inst(a, top, g) and P G(G) |= inst(a, B, g). By induction
hypothesis, G |= B(a): for every model M of G, it holds that aM ∈ Δ M = &gt;M,
thus it is verified that G |= &gt;(a).</p>
      <p>Concept constructors
atomic concept
complement
intersection
union
existential restriction
self restriction
universal restriction
min. card. restriction
max. card. restriction
cardinality restriction
nominal
Role constructors
atomic role
inverse role
role composition
Axioms</p>
      <p>Syntax
A
¬C
C u D
C t D
∃R.C
∃R.Self
∀R.C
&gt;nR.C
6nR.C
= nR.C
{a}
Syntax
R
R−
S◦ Q
Syntax</p>
      <p>Semantics
AI
Δ I \ CI
CI ∩ DI
CI ∪ DI
x ∈ Δ I ˛˛˛ ∃y. hx, yi ∈ RIff</p>
      <p>˛ ∧ y ∈ CI
˘x ∈ Δ I ˛˛ hx, xi ∈ RI ¯
x ∈ Δ I ˛˛˛ ∀y. hx, yi ∈ RIff</p>
      <p>˛ → y ∈ CI
x ∈ Δ I ˛˛˛ ]{y| hx, yi ∈ RIff</p>
      <p>˛ ∧ y ∈ CI } ≥ n
x ∈ Δ I ˛˛˛ ]{y| hx, yi ∈ RIff</p>
      <p>˛ ∧ y ∈ CI } ≤ n
x ∈ Δ I ˛˛˛ ]{y| hx, yi ∈ RIff</p>
      <p>˛ ∧ y ∈ CI } = n
˘aI ¯
Semantics
RI
Semantics
˘hy, xi ˛˛ hx, yi ∈ RI ¯
˘hx, zi ˛˛ hx, yi ∈ SI , hy, zi ∈ QI ¯
concept inclusion (GCI) C v D CI ⊆ DI
concept definition C ≡ D CI = DI
role inclusion (RIA) S v R SI ⊆ RI
role disjointness Dis(P, R) P I ∩ RI = ∅
reflexivity assertion Ref(R) {hx, xi | x ∈ Δ I } ⊆ RI
irreflexivity assertion Irr(R) RI ∩ {hx, xi | x ∈ Δ I } = ∅
symmetry assertion Sym(R) hx, yi ∈ RI ⇒ hy, xi ∈ RI
asymmetry assertion Asym(R) hx, yi ∈ RI ⇒ hy, xi ∈/ RI
transitivity assertion Tra(R) {hx, yi, hy, zi} ⊆ RI ⇒ hx, zi ∈ RI
concept assertion
role assertion
negated role assertion
equality assertion
inequality assertion</p>
      <p>C(a)
R(a, b)
¬R(a, b)
a = b
a 6= b
aI ∈ CI
˙aI , bI ¸ ∈ RI
˙aI , bI ¸ ∈/ RI
aI = bI
aI 6= bI
With A, B ∈ NC, R, S, T ∈ NR, X, Y ∈ NC fresh concept names, W ∈ NR a fresh role
name, mx a fresh module name and Kmx its associated knowledge base, C, D, C concept
expressions with C, D, C ∈/ NC.
G |= T (a, b).</p>
      <p>G |= ⊥(a).
every model M of G, it holds that bM = cM, which implies G |= (b = c).</p>
      <p>G |= R(a, c) with G |= B(b) and G |= B(c). By definition of the semantics, for
– (prl-subr): then H = triple(a, S, b, g), R v S ∈ G and P G(G) |= triple(a, R, b, g).</p>
      <p>By the above semantic constraints, G |= R(a, b) which directly implies G |= S(a, b).
– (prl-subrc): then H
= triple(a, T, b, g), R ◦ S
v T
∈ G and P G(G) |
=
triple(a, R, c, g), P G(G) |= triple(c, S, b, g). By the above semantic constraints,
G |= R(a, c) and G |= S(c, b): by definition of the semantics, this implies that
– (prl-dis): then H = inst(a, bot, g), Dis(R, S) ∈ G and P G(G) |= triple(a, R, b, g),
P G(G) |= triple(a, S, b, g). By the above semantic constraints, G |= R(a, b) and
G |= S(a, b): this is an absurd, thus there cannot be an interpretation satisfying G,
which justifies the consequence G |= ⊥(a).</p>
      <p>S(a, b). The case for (prl-inv2) can be proved similarly.
– (prl-inv1): then H = triple(a, S, b, g), Inv(R, S) ∈ G and P G(G) |= triple(b, R, a, g).</p>
      <p>By the above semantic constraints, G |
=</p>
      <p>R(b, a): this directly implies that G |=
– (prl-irr): then H = inst(a, bot, g), Irr(R) ∈ G and P G(G) |= triple(a, R, a, g).</p>
      <p>By induction hypothesis this would imply that G |
thus there cannot be an interpretation satisfying G, which justifies the consequence
= R(a, a), which is an absurd:
tu
Theorem 1 (Soundness). Given K = hG, {Km}m∈Mi a CKR in normal form, α ∈ LΣ
an atomic concept or role assertion and c ∈ N, then K ` c : α implies K |= c : α .</p>
    </sec>
    <sec id="sec-28">
      <title>Proof. To prove the assertion, we extend the construction of the previous Lemma 1 to the local interpretations for contexts and the definition of the program representing the whole input CKR.</title>
      <p>By definition, P K(K) = P G(G) ∪ S
P C(c) = Ploc ∪ Iloc(Kc, c) ∪ Irl(Kc, c) ∪ Irl(GΣ , c).</p>
      <p>M |</p>
      <p>For Lemma 1, we can also easily derive that, for every interpretation M such that
= G: if c ∈ NG (that is, if P G(G) |= inst(c, Ctx, gm)) then cM ∈ CtxM; if
Km ∈ Kc (that is, if P G(G) |= triple(c, mod, m, gm)) then cM, mM
∈ modM.</p>
    </sec>
    <sec id="sec-29">
      <title>As in previous lemma, we can assign a semantic constraint to the ground atoms</title>
      <p>derived from P K(K) as follows, where c ∈ NG:
c∈NG</p>
      <p>P C(c) where, for every c ∈ NG,
– eq(a, b, c) with a, b ∈ NIΣ , then K |= c : a = b;
– neq(a, b, c) with a, b ∈ NIΣ , then K |= c : a 6= b;
– inst(a, top, c) with a ∈ NIΣ , then K |= c : &gt;(a);
– inst(a, bot, c) with a ∈ NIΣ , then K |= c : ⊥(a);
– inst(a, A, c) with a ∈ NIΣ , A ∈ NCΣ , then K |= c : A(a);
– triple(a, R, b, c) with a, b ∈ NIΣ , R ∈ NRΣ , then K |= c : R(a, b);</p>
    </sec>
    <sec id="sec-30">
      <title>We claim that, for any ground atom H of the above form with the corresponding se</title>
      <p>mantic condition C(H), P K(K) |= H implies K |= c : C(H). We show the claim by
induction on the possible proof tree of the above atoms H: the cases for the rules in
Prl are analogous to what has been shown in the previous lemma, thus we only have to
prove the assertion for the rules in Ploc.</p>
      <p>every model I = hM, Ii of K, S
e∈CM AI(e)
⊆</p>
      <p>BI(cM) then AI(c0M)</p>
      <p>BI(cM)
⊆
and thus I(cM) |= B(a) which means K |= c : B(a).
– (plc-subevalr): then H = triple(a, S, b, c) and P K(K) |= subEvalR(R, C, S, c),
P K(K) |= inst(c0, C, B, gm) and P K(K) |= triple(a, R, b, c0). By induction
hypothesis and Lemma 1, G |= C(c0), K |= c0 : R(a, b). and K |= c : eval(R, C) v S.
means K |= c : (a = b).</p>
      <sec id="sec-30-1">
        <title>A.2 Completeness</title>
        <p>Hence, for every model I = hM, Ii of K, Se∈CM RI(e)
SI(cM) and thus I(cM) |= S(a, b) which means K |= c : S(a, b).
⊆ SI(cM) then RI(c0M)
⊆
– (plc-eq): then H = eq(a, b, c), P K(K) |= nom(a, c) and P K(K) |= eq(a, b, c0). By
induction hypothesis, by rules in Irl we have a ∈ NIΣ and K |= c0 : (a = b). Then,
for every model I = hM, Ii of K, we have that aI(c0M) = bI(c0M). By the condition
on local interpretation of individuals in the definition of CKR model, we have that
aI(cM) = aI(c0M) = bI(c0M) = bI(cM). Thus it holds that I(cM) |= (a = b) which
– (plc-subeval): then H = inst(a, B, c) and P K(K) |= subEval(A, C, B, c), P K(K) |=
inst(c0, C, B, gm) and P K(K) |</p>
        <p>= inst(a, A, c0). By induction hypothesis and
Lemma 1, G |= C(c0), K |= c0 : A(a) and K |= c : eval(A, C) v B. Hence, for
tu
tu
sociated program. We define the equivalence relation ≈
P K(K) as the reflexive, symmetric and transitive closure of
Lemma 2. Let K = hG, {Km}m∈Mi be a CKR in normal form and P K(K) its
ason the Herbrand universe of
{ha, bi | P K(K) |= eq(a, b, c), for a, b, c ∈ NIΓ ∪ NIΣ }
Given a, b, c, d ∈ NIΓ ∪ NIΣ with a ≈ b, it holds that:
(i) if P K(K) |= inst(a, A, c), then P K(K) |= inst(b, A, c);
(iv) if P K(K) |= inst(d, A, a), then P K(K) |= inst(d, A, b);
(ii) if P K(K) |= triple(a, R, d, c), then P K(K) |= triple(b, R, d, c);
(iii) if P K(K) |= triple(d, R, a, c), then P K(K) |= triple(d, R, b, c);
(v) if P K(K) |= triple(c, R, d, a), then P K(K) |= triple(c, R, d, b);
(i) of the assertion. By rule (prl-eq2) and (prl-eq4), we can derive that if
Proof. By rules (prl-eq2) and (prl-eq3), it follows immediately that if P K(K) |= eq(a, b, c)
then P K(K) |= inst(a, A, c) iff P K(K) |= inst(b, A, c). This also proves point
ing point (ii). Point (iii) can be proved similarly by rules (prl-eq2) and (prl-eq5).
eq(a, b, c), then P K(K) |= triple(a, R, d, c) iff P K(K) |= triple(b, R, d, c),
provP K(K) |=
lows from similar reasoning.</p>
        <p>For point (iv), let us assume that P K(K) |= inst(d, A, a) with a 6= c
(otherwise the assertion is immediate). Then, by the definition of the program, it must be
that P G(G) |= eq(a, b, gm). By rules (prl-eq2)-(prl-eq5), in praticular this implies that
P G(G) |= triple(a, mod, m, gm) iff P G(G) |= triple(b, mod, m, gm), meaning
that, by definition of the translation, they have analogous local programs P C(a) and
P C(b) (in which only the “context argument” in the atoms translated by Irl and Iloc
changes). Thus, we obtain that P K(K) |= inst(d, A, b). The proof for point (v)
folLemma 3. Given K = hG, {Km}m∈Mi a consistent CKR in normal form, and α ∈ LΓ
or α ∈ LΣ with α an atomic concept or role assertion, then G |= α implies G ` α .
Proof. We show by contrapositive that: G 6` α implies G 6|= α . Assuming that G 6` α ,
then we have by definition that P G(G) 6|= O(α, gm) if α ∈ LΓ or P G(G) 6|= O(α, gk)
if α ∈ LΣ . Let us assume that α ∈ LΓ (the other case can be proved similarly). Then
there exists an Herbrand model H of P G(G) such that H 6|= O(α, gm). We show that
from this model for P G(G) we can build a model M for G (meeting the definition
of the CKR model for the global interpretation) such that M 6|= α , which allow us to
derive that G 6|= α .</p>
        <p>Let us consider the equivalence relation ≈ as defined in Lemma 2. We define the
equivalence classes [c] = {d | d ≈ c}, that will be used to define the domain of the
built interpretation.</p>
        <p>Then M = hΔ M, · Mi is defined as follows:
– Δ M = {[c] | c ∈ NIΓ ∪ NIΣ };
– For each e ∈ Δ M, we define the projection function ι (e) such that, if e = [c], then
ι (e) = b with a fixed b ∈ [c];
– cM = [c], for every c ∈ NIΓ ∪ NIΣ ;
– AM = {d ∈ Δ M | H |= inst(ι (d), A, g)}, for every A ∈ NCΓ ∪ NCΣ , with
g = gm or g = gk;
– RM is the smallest set such that hd, d0i ∈ RM if one of the following conditions
hold:
– H |= triple(ι (d), R, ι (d0), g) with g = gm or g = gk;
– S v R ∈ G and hd, d0i ∈ SM;
– S ◦ T v R ∈ G and hd, ei ∈ SM, he, d0i ∈ T M for e ∈ Δ M;
– Inv(R, S) ∈ G or Inv(S, R) ∈ G and hd0, di ∈ SM;</p>
        <sec id="sec-30-1-1">
          <title>Note that by Lemma 2, the definition of M does not depend on the choice of the ι ([c]) ∈</title>
          <p>[c]. It is easy to see that, given α ∈ LΓ with H 6|= O(α, gm), then M 6|= α . For example,
if α = C(a), then H 6|= inst(a, C, gm) which implies by definition that M 6|= C(a).</p>
          <p>In order to show that M is a model for G, we have to prove that M satisfies the
definition of global model from the definition of CKR model, and in particular that
M |= G. We easily prove that NM ⊆ CtxM: by the definition of rule (igl-subctx2),
for every c ∈ N we have H |= inst(c, Ctx, gm), which implies cM ∈ CtxM. The
condition CM ⊆ CtxM for every C ∈ C can be shown similarly by the rule
(iglsubctx1). To prove that M |= G, we proceed by cases and consider the form of all of
the axioms β ∈ LΓ or β ∈ LΣ that can appear in G.
– Let β = A(a) ∈ G, then H |= inst(a, A, g)10. This directly implies that aM =
[a] ∈ AM.
– Let β = R(a, b) ∈ G, then H |= triple(a, R, b, g). By definition, we directly have
that h[a], [b]i ∈ RM.
– Let β = ¬R(a, b) ∈ G, then H |= negtriple(a, R, b, g). Suppose that h[a], [b]i ∈
RM, then H |= triple(ι ([a]), R, ι ([b]), g). By rule (prl-ntriple) and Lemma 2, this
would imply that H |= inst(ι ([a]), bot, g) contradicting our assumptions on the
consistency of K. Thus h[a], [b]i ∈/ RM as required.
10 In the proof of these cases, for simplicity of notation, we assume g = gm or g = gk.
– Let β = (a = b) ∈ G, then H |= eq(a, b, g). By the definition of ≈ , it holds that
a ≈ b, thus {a, b} ⊆ [a] and aM = bM = [a].
– Let β = (a 6= b) ∈ G, then H |= neq(a, b, g). Suppose that aM = bM, then
H |= eq(ι ([a]), ι ([b]), g). By rule (prl-neq) and Lemma 2, we would obtain that H |=
inst(ι ([a]), bot, g). Again, this contradicts our assumptions on the consistency of
K. Thus aM 6= bM as required.
– Let β = {a} v B ∈ G, then H |= inst(a, B, g). This case can be proved similarly
to the case β = A(a).
– Let β = A v B ∈ G, then H |= subClass(A, B, g). If d ∈ AM, then by definition
H |= inst(ι (d), A, g): by rule (prl-subc) we obtain that H |= inst(ι (d), B, g) and
thus d ∈ BM.
– Let β = &gt;(a) ∈ G, then H |= inst(a, top, g). As in the case for β = A(a) (in
which this case is subsumed), we directly obtain that aM = [a] ∈ &gt;M.
– Let β = ⊥(a) ∈ G. Assuming that K in input is consistent, this case can not subsist
as we would directly derive that H |= inst(a, bot, g), showing the inconsistency of
K.
– Let β = A v ¬B ∈ G, then H |= supNot(A, B, g). Suppose that d ∈ AM,
then H |= inst(ι (d), A, g). Moreover, suppose that d ∈ BM: this implies that
H |= inst(ι (d), B, g). By rule (prl-not) and Lemma 2, we would obtain that H |=
inst(ι (d), bot, g). This contradicts our assumptions on the consistency of K, thus
d ∈/ BM as required.
– Let β = A1 u A2 v B ∈ G, then H |= subConj(A1, A2, B, g). If d ∈ A1M and
d ∈ A2M, then by definition H |= inst(ι (d), A1, g) and H |= inst(ι (d), A2, g). By
rule (prl-subconj), we directly obtain that H |= inst(ι (d), B, g): thus d ∈ BM as
required.
– Let β = ∃R.A v B ∈ G, then H |= subEx(R, A, B, g). Let d ∈ (∃R.A)M: by
definition of the semantics this means that there exists d0 ∈ AM such that hd, d0i ∈
RM. Thus, H |= inst(ι (d0), A, g) and H |= triple(ι (d), R, ι (d0), g). By rule
(prl-subex), we obtain that H |= inst(ι (d), B, g): thus d ∈ BM as required.
– Let β = A v ∃R.{a} ∈ G, then H |= supEx(A, R, a, g). Let d ∈ AM, then H |=
inst(ι (d), A, g). By rule (prl-subex), this implies that H |= triple(ι (d), R, a, g):
this proves d, aM ∈ RM as required.
– Let β = A v ∀R.B ∈ G, then H |= supForall(A, R, B, g). Let d ∈ AM, then
H |= inst(ι (d), A, g). Supposing that there exists d0 ∈ Δ M such that hd, d0i ∈ RM,
we have that H |= triple(ι (d), R, ι (d0), g). By rule (prl-supforall) this implies that
H |= inst(ι (d0), B, g), thus proving d0 ∈ BM as required.
– Let β = A v6 1R.B ∈ G, then H |= supLeqOne(A, R, B, g). Let d ∈ AM, then
H |= inst(ι (d), A, g). Suppose that there exist d1, d2 ∈ Δ M such that hd, d1i ∈
RM and hd, d2i ∈ RM, and {d1, d2} ⊆ BM. Thus H |= {triple(ι (d), R, ι (d1), g),
triple(ι (d), R, ι (d2), g), inst(ι (d1), B, g), inst(ι (d2), B, g)}. By (prl-leqone) rule
we obtain that H |= eq(ι (d1), ι (d2), g). This implies that ι (d1) ≈ ι (d2) and thus they
are interpreted as the same domain element d1 = d2 in M.
– The cases for β = R v S, R ◦ S v T and Inv(R, S) follow directly from the
interpretation of roles in M.
– Let β = Dis(R, S) ∈ G, then H |= dis(R, S, g). Suppose that hd, d0i ∈ RM and
hd, d0i ∈ SM. Then H |= triple(ι (d), R, ι (d0)g) and H |= triple(ι (d), S, ι (d0)g).
By rule (prl-dis) and Lemma 2, we would obtain that H |= inst(ι (d), bot, g). This
contradicts our assumptions on the consistency of K, thus there can not exists a pair
hd, d0i ∈ RM ∩ SM as required.
– Let β
= Irr(R) ∈</p>
          <p>G, then H |</p>
          <p>= irr(R, g). Suppose that hd, di ∈ RM, then
thus hd, di ∈/ RM as required.</p>
          <p>H |
H |= triple(ι (d), R, ι (d), g). By rule (prl-irr) and Lemma 2, we would obtain that
= inst(ι (d), bot, g). This contradicts our assumptions on the consistency of K,
tu</p>
          <p>Theorem 2 (Completeness). Given K = hG, {Km}m∈Mi a consistent CKR in normal
form, α ∈ LΣ an atomic concept or role assertion and c ∈ N, then K |= c : α implies
K 6|= c : α .
for each e ∈ Δ
since we can show
– Δ c = {[d] | d ∈ NIΣ };
– aI(c) = [a], for every a ∈ NIΣ ;</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-31">
      <title>Proof. As in the case of soundness, we prove the assertion by extending the previous</title>
      <p>construction on the global context to the whole structure of the input CKR.</p>
      <p>We prove by contrapositive that K 6` c : α implies K 6|= c : α . If K 6` c : α , then</p>
      <sec id="sec-31-1">
        <title>H of P K(K) such that H 6|</title>
        <p>we have by definition that P K(K) 6|=</p>
        <p>O(α, c). Then there exists an Herbrand model
= O(α, c). As in the previous lemma, from this model for
P K(K) we build a CKR model I = hM, Ii for K such that I(cM) 6|= α , implying that
We consider again the equivalence relation ≈
defined in Lemma 2 and the
equivalence classes [c] = {
d | d ≈</p>
        <p>c} as from the above lemma. Then we build I = hM, Ii as
follows: the global interpretation M
= hΔ</p>
        <p>M, · Mi is a structure defined as in Lemma 3;</p>
        <p>M, we define again the projection function ι (e) such that, if e = [c],
then ι (e) = b with a fixed b ∈ [c]. As in the case of Theorem 1, we can note that,
M |</p>
        <p>= G then: if c ∈ NG (that is, if P G(G) |= inst(c, Ctx, gm))
cM, mM
then cM ∈ CtxM; if Km ∈ Kc (that is, if P G(G) |= triple(c, mod, m, gm)) then
∈ modM. For every c ∈ NG, we build I(c) = hΔ c, · I(c)i as follows:
– AI(c) = {
d ∈ Δ c | H |</p>
        <p>= inst(ι (d), A, c)}, for every A ∈ NCΣ ;
– RI(c) is the smallest set such that hd, d0i ∈ RI(c) if one of the following conditions
hold:
– H |= triple(ι (d), R, ι (d0), c);
– S v R ∈ Kc ∪ GΣ and hd, d0i ∈ SI(c);
– S ◦ T v R ∈ Kc ∪ G</p>
        <p>Σ and hd, ei ∈ SI(c), he, d0i ∈ T I(c) for e ∈ Δ c;
– Inv(R, S) ∈ Kc ∪ GΣ or Inv(S, R) ∈ Kc ∪ GΣ and hd0, di ∈ SI(c);
required.
and that I |
As in the above lemma, we can see that, given H 6|
= O(α, c), then I(cM) 6|= α as</p>
      </sec>
    </sec>
    <sec id="sec-32">
      <title>To show the assertion, we have to prove that I meets the definition of CKR model</title>
      <p>= K. By Lemma 3 we directly obtain that the conditions on the global
of ι (e), for every a ∈ NIΣ it holds that aI(x) = aI(y) = aM = [a].
interpretation M are verified. Given x, y ∈ CtxM, we note also that, by the definition</p>
      <p>To complete the proof, we have to show that for every Km s.t. c, mM
(that is, every Km ∈ Kc) we have I(c) |= Km and I(c) |= GΣ . As in the case above
∈ modM
AI(c0), then by definition H |
– Let β = eval(A, C) v B ∈ Kc, then H |= subEval(A, C, B, c). If c0 ∈ CM and d ∈
in Kc ∪ GΣ . The case for the axioms in the general normal form of Table 1 can be
proved analogously as in the cases of Lemma 3: thus we have to prove the case of local
– Let β = eval(R, C) v T ∈ Kc, then H |= subEvalR(R, C, T, c). If there exists
= triple(ι (a), R, ι (b), ι (c0)). By rule (plc-evalr) and by Lemma 2 we obtain
c0 ∈ CM, then H |</p>
      <p>= inst(ι (c0), C, gm). Moreover, suppose ha, bi ∈ RI(c0), then
that H |= triple(ι (a), T, ι (b), c), and thus ha, bi ∈ T I(c).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McGuinness</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nardi</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patel-Schneider</surname>
            ,
            <given-names>P</given-names>
          </string-name>
          . (eds.):
          <article-title>The Description Logic Handbook</article-title>
          . Cambridge University Press (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Bozzato</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ghidini</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serafini</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Comparing contextual and flat representations of knowledge - a concrete case about football data</article-title>
          .
          <source>In: K-Cap</source>
          <year>2013</year>
          (
          <year>2013</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>Homola</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serafini</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Context on the semantic web: Why and how</article-title>
          .
          <source>In: ARCOE-12</source>
          (
          <year>2012</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>Homola</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serafini</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Towards More Effective Tableaux Reasoning for CKR</article-title>
          .
          <source>In: DL2012. CEUR-WP</source>
          , vol.
          <volume>824</volume>
          , pp.
          <fpage>114</fpage>
          -
          <lpage>124</lpage>
          . CEUR-WS.org (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Heymans</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Eiter</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xiao</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          :
          <article-title>Tractable reasoning with dl-programs over datalogrewritable description logics</article-title>
          .
          <source>In: ECAI 2010. Frontiers in Artificial Intelligence and Applications</source>
          , vol.
          <volume>215</volume>
          , pp.
          <fpage>35</fpage>
          -
          <lpage>40</lpage>
          . IOS Press (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kutz</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>The even more irresistible SROIQ</article-title>
          .
          <source>In: KR 2006</source>
          . pp.
          <fpage>57</fpage>
          -
          <lpage>67</lpage>
          . AAAI Press (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Khriyenko</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Terziyan</surname>
          </string-name>
          , V.:
          <article-title>A framework for context sensitive metadata description</article-title>
          .
          <source>IJSMO</source>
          <volume>1</volume>
          (
          <issue>2</issue>
          ),
          <fpage>154</fpage>
          -
          <lpage>164</lpage>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Klarman</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Reasoning with Contexts in Description Logics</article-title>
          .
          <source>Ph.D. thesis</source>
          , Free University of Amsterdam (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Klarman</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <article-title>Gutie´rrez-</article-title>
          <string-name>
            <surname>Basulto</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Two-dimensional description logics of context</article-title>
          .
          <source>In: DL2011. CEUR-WP</source>
          , vol.
          <volume>745</volume>
          , pp.
          <fpage>235</fpage>
          -
          <lpage>245</lpage>
          . CEUR-WS.org (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10. Kro¨tzsch, M.:
          <article-title>Efficient inferencing for owl el</article-title>
          .
          <source>In: JELIA 2010. Lecture Notes in Computer Science</source>
          , vol.
          <volume>6341</volume>
          , pp.
          <fpage>234</fpage>
          -
          <lpage>246</lpage>
          . Springer (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11. Kro¨tzsch,
          <string-name>
            <surname>M.:</surname>
          </string-name>
          <article-title>The not-so-easy task of computing class subsumptions in OWL RL</article-title>
          .
          <source>In: ISWC 2012. Lecture Notes in Computer Science</source>
          , vol.
          <volume>7649</volume>
          , pp.
          <fpage>279</fpage>
          -
          <lpage>294</lpage>
          . Springer (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <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="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Serafini</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Homola</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Contextualized knowledge repositories for the semantic web</article-title>
          .
          <source>J. of Web Semantics</source>
          <volume>12</volume>
          ,
          <fpage>64</fpage>
          -
          <lpage>87</lpage>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Straccia</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lopes</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          , Luka´csy, G.,
          <string-name>
            <surname>Polleres</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A general framework for representing and reasoning with annotated semantic web data</article-title>
          .
          <source>In: AAAI</source>
          <year>2010</year>
          ,
          <article-title>Special Track on Artificial Intelligence and the Web</article-title>
          . AAAI Press (
          <year>July 2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Tanca</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Context-Based Data Tailoring for Mobile Users</article-title>
          .
          <source>In: BTW 2007 Workshops</source>
          . pp.
          <fpage>282</fpage>
          -
          <lpage>295</lpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Udrea</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Recupero</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Subrahmanian</surname>
            ,
            <given-names>V.S.</given-names>
          </string-name>
          :
          <article-title>Annotated RDF</article-title>
          .
          <source>ACM Trans. Comput. Log</source>
          .
          <volume>11</volume>
          (
          <issue>2</issue>
          ),
          <fpage>1</fpage>
          -
          <lpage>41</lpage>
          (
          <year>2010</year>
          )
          <article-title>eval(D, C) v B ∈ Km 7→ {eval(X, Y ) v B ∈ Km, A v ¬C 7→ {A v ¬X, C v X} D v X∈ Kmx</article-title>
          , C v Y ∈ G,
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          <string-name>
            <surname>C u</surname>
          </string-name>
          <article-title>A v B 7→ {C v X, X u A v B} Y v ∃mod</article-title>
          .{mx} ∈ G}
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          <article-title>A v C u D 7→ {A v C, A v D} eval</article-title>
          (R, C) v
          <source>T ∈ Km</source>
          <volume>7</volume>
          → {eval(R, Y ) v T ∈ Km,
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          <string-name>
            <surname>C t D</surname>
          </string-name>
          v B 7→ {C v B,
          <string-name>
            <surname>D v B} C v Y ∈ G} ∃R.C v</surname>
          </string-name>
          <article-title>A 7→ {C v X, ∃R.X v A} ∃eval(R, C)</article-title>
          .
          <source>A v B ∈ Km</source>
          <volume>7</volume>
          → {∃W.A v B ∈
          <string-name>
            <surname>Km</surname>
          </string-name>
          , A v ∃R.C 7→
          <string-name>
            <surname>{A v ∃R.X</surname>
          </string-name>
          , C v X}
          <string-name>
            <surname>eval(R</surname>
          </string-name>
          , C) v W ∈ Km} A v ∀R.D 7→ {A v
          <string-name>
            <surname>∀R.X</surname>
          </string-name>
          , X v D}
          <string-name>
            <surname>eval(R</surname>
            , C) ◦ S v
            <given-names>T</given-names>
          </string-name>
          ∈ Km 7→ {eval(R, C) v W ∈ Km,
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          <article-title>A v 60R.D 7→ {A v ∀</article-title>
          R.¬D} W ◦ S v
          <string-name>
            <surname>T</surname>
          </string-name>
          ∈ Km}
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          <article-title>A v 61R.D 7→ {A v 61R.X, D v X} Dis(eval(R, C), S) ∈ Km 7→ {eval(</article-title>
          <string-name>
            <surname>R</surname>
          </string-name>
          , C) v W ∈ Km,
          <string-name>
            <surname>Dis</surname>
          </string-name>
          (W, S) ∈ Km}
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          <article-title>- (prl-leqone): then H = eq(b, c</article-title>
          , g),
          <article-title>A v6 1R</article-title>
          .B ∈ G. Moreover,
          <string-name>
            <surname>P G</surname>
          </string-name>
          (G) |
          <article-title>= inst(a, A</article-title>
          , g),
          <string-name>
            <surname>P G</surname>
          </string-name>
          (G) |
          <article-title>= triple(a</article-title>
          , R, b, g)
          <string-name>
            <surname>with P G(G) |</surname>
          </string-name>
          <article-title>= inst(b</article-title>
          , B, g) and
          <string-name>
            <surname>P G</surname>
          </string-name>
          (G) |
          <article-title>= triple(a</article-title>
          , R, c, g)
          <string-name>
            <surname>with P G(G) |</surname>
          </string-name>
          <article-title>= inst(c, B</article-title>
          , g).
          <article-title>By induction hypothesis, G |= A(a) and thus G |= (6 1R.B)(a</article-title>
          ). Moreover, G |=
          <article-title>R(a, b) and</article-title>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>