Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

The irresistible SRIQ

2005

Abstract. Motivated primarily by medical terminology applications, the prominent DL SHIQ has already been extended to a DL with complex role inclusion axioms of the form R◦ S⊑ R or S◦ R⊑ R, called RIQ, and the SHIQ tableau algorithm has been extended to handle such inclusions.

The Irresistible SRIQ Ian Horrocks, Oliver Kutz, and Ulrike Sattler School of Computer Science, The University of Manchester, Kilburn Building, Oxford Road, Manchester, M13 9PL, UK, {Horrocks, Kutz, Sattler}@cs.man.ac.uk Abstract. Motivated primarily by medical terminology applications, the prominent DL SHIQ has already been extended to a DL with com˙ R or S ◦ R ⊑ ˙ R, called plex role inclusion axioms of the form R ◦ S ⊑ RIQ, and the SHIQ tableau algorithm has been extended to handle such inclusions. This paper further extends RIQ and its tableau algorithm with important expressive means that are frequently requested in ontology applications, namely with reflexive, symmetric, transitive, and irreflexive roles, disjoint roles, and the construct ∃R.Self, allowing, for instance, the definition of concepts such as a “narcist”. Furthermore, we extend the algorithm to cover Abox reasoning extended with negated role assertions. The resulting logic is called SRIQ. 1 Introduction We describe an extension, called SRIQ, of the description logic (DL) SHIN (11) underlying OWL lite and OWL DL (7). We believe that SRIQ enjoys some useful properties. Firstly, SRIQ extends SHIN with numerous expressive means which have been asked for by users, and which, we believe, will make modeling using DLs easier and more intuitive. Even though some of these expressive means can be viewed as minor syntactic sugar, their absence has proven quite harmful since developers of ontologies use work-arounds to compensate for this. As a consequence, ontologies become cluttered, complicated, and difficult to understand. In the worst case, the work-around only partially captures the intended semantics, thus leading to unintended or missing consequences, thereby destroying one of the main features of a logic-based formalism, namely its well-defined semantics and reasoning services. A well-known example of such an expressive means are qualified number restrictions. Their absence in OWL lite and OWL DL has caused problems in the past (14), and has lead to the development and use of questionable surrogates. Hence, SRIQ provides qualified number restrictions. Other, novel expressive means of SRIQ concern mostly roles and include: – disjoint roles. E.g., the roles sister and mother could be declared as being disjoint. Most DLs can be said to be “lopsided” since they allow to express disjointness on concepts but not on roles, despite the fact that role disjointness is quite natural and can generate new subsumptions or inconsistencies in the presence of role hierarchies and number restrictions. 2 – reflexive and irreflexive roles. E.g., the role knows could be declared as being reflexive, and the role sibling could be declared as being irreflexive. Such statements can only cause new consequences in the presence of Aboxes, or in interplay with the new concept ∃R.Self described below, and could thus be said to be merely syntactic sugar. – negated role assertions. Most Abox formalisms only allow for positive role assertions (with few exceptions (1; 5)), whereas SRIQ also allows for statements such as (John, Mary) : ¬likes. In the presence of complex role inclusions, negated role assertions can be quite useful and, like disjoint roles, they overcome a certain “lopsidedness” of DLs. – Since SRIQ extends SHIQ, we can also express that a role is transitive or symmetric, and can use role inclusion axioms R ⊑ S. – Since SRIQ extends RIQ (9), we can use complex role inclusion axioms ˙ R and S ◦ R ⊑ ˙ R. For example, w.r.t. the axiom of the form R ◦ S ⊑ ˙ ˙ owns ◦ hasPart ⊑ owns, and the fact that each car contains an engine Car ⊑ ∃hasPart.Engine, an owner of a car is also an owner of an engine, i.e., the following subsumption is implied: ∃owns.Car ⊑ ∃owns.Engine. – Finally, SRIQ allows for concepts of the form ∃R.Self which can be used to express “local reflexivity” of a role R, e.g., to define the concept “narcist” using ∃likes.Self. Besides a Tbox and an Abox, SRIQ provides a so-called Rbox to gather all statements concerning roles. Secondly, SRIQ is designed to be of similar practicability as SHIQ. The tableau algorithm for SHIQ and the one for SRIQ presented here are very similar, even though the additional expressive means of SRIQ require certain adjustments. However, these adjustments do not add new sources of non-determinism, and can thus be seen as “harmless”. More precisely, we employ the same tech˙ R and nique using finite automata as in (9) to handle role inclusions R ◦ S ⊑ ˙ S ◦ R ⊑ R. This involves a pre-processing step which takes an Rbox and builds, for each role R, a finite automaton that accepts exactly those words R1 . . . Rn such that, in each model of the Rbox, hx, yi ∈ (R1 . . . Rn )I implies hx, yi ∈ RI . These automata are then used in the tableau expansion rules to check, for a node x with ∀R.C ∈ L(x) and an R1 . . . Rn -neighbour y of x, whether to add C to L(y). Even though the pre-processing step might appear a little cumbersome, the usage of the automata in the algorithm makes it quite elegant and compact. The current paper describes work in progress towards a description logic that overcomes certain shortcomings in expressiveness of other DLs. We have used SHIN , SHIQ, and RIQ as a starting point, extended them with some “usefulyet-harmless” expressive means, and also extended the tableau algorithm accordingly. Our selection of “harmless” language extensions certainly is not complete, and it has to be seen which further additions are particularly desirable. Moreover, we wish to generalise SRIQ also in another direction: currently, various new operators are restricted to simple roles, and we have yet to establish which of these restrictions are necessary in order to preserve decidability1 or practica1 See (11) for such a case. 3 bility. Moreover, we plan to extend SRIQ towards SHOIQ (10), i.e., to also include nominals. 2 The Logic SRIQ In this section, we introduce the DL SRIQ. This includes the definition of syntax, semantics, and inference problems. 2.1 Roles, Role Hierarchies, and Role Assertions Definition 1 (Interpretations). Let C be a set of concept names, R a set of role names, and I = {a, b, c . . .} a set of individual names. The set of roles is R ∪ {R− | R ∈ R}, where a role R− is called the inverse role of R. As usual, an interpretation I = (∆I , ·I ) consists of a set ∆I , called the domain of I, and a valuation ·I which associates, with each role name R, a binary relation RI ⊆ ∆I ×∆I , with each concept name C a subset C I ⊆ ∆I and, with each individual name a an element aI ∈ ∆I . Inverse roles are interpreted as usual, i.e., for each role R ∈ R, we have (R− )I = {hy, xi | hx, yi ∈ RI }. Note that, unlike in the case of SHIQ, we did not introduce transitive role names. This is so since, as will become apparent below, role box assertions can be used to force roles to be transitive. To avoid considering roles such as R−− , we define a function Inv on roles such that Inv(R) = R− if R ∈ R is a role name, and Inv(R) = S ∈ R if R = S − . Since we will often work with a string of roles, it is convenient to extend both ·I and Inv(·) to such strings: if w = R1 . . . Rn for Ri roles, then we set wI = R1I ◦. . .◦RnI and Inv(w) = Inv(Rn ) . . . Inv(R1 ), where ◦ denotes composition of binary relations. A role box R consists of two components. The first component is a role hierarchy Rh which consists of (generalised) role inclusion axioms, i.e., statements ˙ S, RS ⊑ ˙ S, and SR ⊑ ˙ S. The second component is a set of the form R ⊑ Ra of role assertions stating, for instance, that a role R must be interpreted as a transitive, reflexive, irreflexive, symmetric, or transitive relation, or that two (possibly inverse) roles R and S are to be interpreted as disjoint binary relations. We start with the definition of a role hierarchy, whose definition involves a strict partial order ≺ on roles, i.e., an irreflexive and transitive relation on R ∪ {R− | R ∈ R}. Definition 2 ((Regular) Role Inclusion Axioms). Let ≺ be a strict partial order on roles. A role inclusion axiom (RIA for ˙ R, where w is a finite string of roles, short) is an expression of the form w ⊑ and R is a role name. A role hierarchy Rh , then, is a finite set of RIAs. ˙ R, if An interpretation I satisfies a role inclusion axiom S1 . . . Sn ⊑ S1I ◦ . . . ◦ SnI ⊆ RI , 4 where ◦ stands for the composition of binary relations. An interpretation is a model of a role hierarchy Rh , if it satisfies all RIAs in Rh , written I |= Rh . ˙ R is ≺-regular if A RIA w ⊑ – – – – – – R is a role name, w = RR, w = R− , w = S1 . . . Sn and Si ≺ R, for all 1 ≤ i ≤ n, w = RS1 . . . Sn and Si ≺ R, for all 1 ≤ i ≤ n, or w = S1 . . . Sn R and Si ≺ R, for all 1 ≤ i ≤ n. Finally, a role hierarchy Rh is said to be regular if there exists a strict partial order ≺ on roles such that each RIA in Rh is ≺-regular. Regularity prevents a role hierarchy from containing cyclic dependencies. For instance, the role hierarchy ˙ S, {RS ⊑ ˙ R, RT ⊑ ˙ T, UT ⊑ ˙ U} US ⊑ is not regular because it would require ≺ to satisfy S ≺ U ≺ T ≺ R ≺ S, which would imply S ≺ S, thus contradicting irreflexivity. Such cyclic dependencies are known to lead to undecidability (9). From the definition of the semantics of inverse roles, it follows immediately that hx, yi ∈ wI iff hy, xi ∈ Inv(w)I . ˙ S also satisfies Inv(w) ⊑ ˙ Inv(S) (and vice Hence, each model satisfying w ⊑ versa), and thus the restriction to those RIAs with role names on their right hand side does not have any effect on expressivity. Given a role hierarchy Rh , we define the relation ⊑ * to be the transitive˙ over {R ⊑ ˙ S, Inv(R) ⊑ ˙ Inv(S) | R ⊑ ˙ S ∈ Rh }. A role R reflexive closure of ⊑ is called a sub-role (resp. super-role) of a role S if R ⊑ * S (resp. S ⊑ * R). Two roles R and S are equivalent (R ≡ S) if R ⊑ * S and S ⊑ * R. Note that, due to the fourth restriction in the definition of ≺-regularity, we also restrict ⊑ * to be acyclic, and thus regular role hierarchies never contain two equivalent roles.2 Next, let us turn to the second component of Rboxes, the role assertions. For an interpretation I, we define Diag I to be the set {hx, xi | x ∈ ∆I } and set RI ↓:= {hx, xi | ∃y ∈ ∆I .hx, yi ∈ RI }. Definition 3 (Role Assertions). For roles R and S, we call the assertions Ref(R), Irr(R), Sym(R), Tra(R), and Dis(R, S), role assertions, where, for each interpretation I and all x, y, z ∈ ∆I , we have: 2 This is not a serious restriction for, if R contains ⊑ * cycles, we can simply choose one role R from each cycle and replace all other roles in this cycle with R in the input Rbox, Tbox and Abox (see below). 5 I I I I I |= Sym(R) |= Tra(R) |= Ref(R) |= Irr(R) |= Dis(R, S) if if if if if hx, yi ∈ RI implies hy, xi ∈ RI ; hx, yi ∈ RI and hy, zi ∈ RI imply hx, zi ∈ RI ; RI ↓⊆ RI ; RI ∩ Diag I = ∅; RI ∩ S I = ∅. Adding symmetric and transitive role assertions is a trivial move since both of these expressive means can be replaced by complex role inclusion axioms as follows: for the role assertion Sym(R) we can add to the Rbox, equivalently, the ˙ R, and, for the role assertion Tra(R), we can add role inclusion axiom R− ⊑ ˙ R. The proof of this should be obvious. Thus, to the Rbox, equivalently, RR ⊑ as far as expressivity is concerned, we can assume for convenience that no role assertions of the form Tra(R) or Sym(R) appear in Ra , but that transitive and symmetric roles will be handled by the RIAs alone. The situation is different, however, for the other Rbox assertions. Neither reflexivity nor irreflexivity nor disjointness of roles can be enforced by role inclusion axioms. However, as we shall see later, reflexivity and irreflexivity of roles are closely related to the new concept ∃R.Self. In SHIQ, the application of qualified number restrictions has to be restricted to certain roles, called simple roles, to preserve decidability (11). In the context of SRIQ, the definition of simple role has to be slightly modified, and simple roles figure not only in qualified number restrictions, but in several other constructs as well. Intuitively, non-simple roles are those that are implied by the composition of roles. Given a role hierarchy Rh and a set of role assertions Ra (without transitivity or symmetry assertions), the set of roles that are simple in R = Rh ∪ Ra is inductively defined as follows: – a role name is simple if it does not occur on the right hand side of a RIA in Rh , – an inverse role R− is simple if R is, and – if R occurs on the right hand side of a RIA in Rh , then R is simple if, for ˙ R ∈ Rh , w = S for a simple role S. each w ⊑ A set of role assertions Ra is called simple if all roles R, S appearing in role assertions of the form Ref(R), Irr(R), or Dis(R, S) are simple in R. If R is clear from the context, we often use “simple” instead of “simple in R”. Definition 4 (Role Box). A SRIQ-role box (Rbox for short) is a set R = Rh ∪ Ra , where Rh is a regular role hierarchy and Ra is a finite, simple set of role assertions. An interpretation satisfies a role box R (written I |= R) if I |= Rh and I |= φ for all role assertions φ ∈ Ra . Such an interpretation is called a model of R. 6 2.2 Concepts and Inference Problems for SRIQ We are now ready to define the syntax and semantics of SRIQ-concepts. Definition 5 (SRIQ Concepts, Tboxes, and Aboxes). The set of SRIQconcepts is the smallest set such that – every concept name and ⊤, ⊥ are concepts, and, – if C, D are concepts, R is a role (possibly inverse), S is a simple role (possibly inverse), and n is a non-negative integer, then C ⊓ D, C ⊔ D, ¬C, ∀R.C, ∃R.C, ∃S.Self, (>nS.C), and (6nS.C) are also concepts. A general concept inclusion axiom (GCI) is an expression of the form ˙ D for two SRIQ-concepts C and D. A Tbox T is a finite set of GCIs. C⊑ An individual assertion is of one of the following forms: a : C, (a, b) : R, . (a, b) : ¬S, or a = 6 b, for a, b ∈ I (the set of individual names), a (possibly inverse) role R, a (possibly inverse) simple role S, and a SRIQ-concept C. A SRIQ-Abox A is a finite set of individual assertions. Note that number restrictions (>nS.C) and (6nS.C), the concept ∃S.Self, and negated role assertions (a, b) : ¬S, are all restricted to simple roles. The reason for this restriction is simple: without it, the satisfiability problem of SHIQconcepts is already undecidable (11), even for a logic without inverse roles and with only unqualifying number restrictions (these are number restrictions of the form (>nR.⊤) and (6nR.⊤)). For SRIQ, it is part of future work to determine which of the other restrictions to simple roles are necessary in order to preserve decidability. For example, it should be possible to also allow non-simple roles in negated role assertions (a, b) : ¬R without losing decidability. Note also that, in the definition of SRIQ-Aboxes, we do not assume the unique name assumption (UNA) (which is commonly assumed in DLs (4)). Rather, by allowing inequalities between individuals in the Abox to be explicitly stated, we increase flexibility while, obviously, the UNA can be regained by . explicitly stating a = 6 b for every pair a, b ∈ I of individuals. Moreover, notice that, in contrast to standard Aboxes, SRIQ-Aboxes can also contain negated role assertions of the form (a, b) : ¬R. Definition 6 (Semantics and Inference Problems). Given an interpretation I = (∆I , ·I ), concepts C, D, roles R, S, and nonnegative integers n, the extension of complex concepts is defined inductively by the following equations, where ♯M denotes the cardinality of a set M : ⊤I = ∆I , ⊥I = ∅, (¬C)I = ∆I \ C I (top, bottom, negation) I I I (C ⊓ D) = C ∩ D , (C ⊔ D)I = C I ∪ DI (conjunction, disjunction) I (∃R.C) = {x | ∃y.hx, yi ∈ RI and y ∈ C I } (exists restriction) (∃R.Self)I = {x | hx, xi ∈ RI } (∃R.Self-concepts) (∀R.C)I = {x | ∀y.hx, yi ∈ RI implies y ∈ C I } (value restriction) (>nR.C)I = {x | ♯{y.hx, yi ∈ RI and y ∈ C I } > n} (atleast restriction) (6nR.C)I = {x | ♯{y.hx, yi ∈ RI and y ∈ C I } 6 n} (atmost restriction) 7 An interpretation I is a model of a Tbox T (written I |= T ) if C I ⊆ DI ˙ D in T . for each GCI C ⊑ A concept C is called satisfiable if there is an interpretation I with C I 6= ∅. A concept D subsumes a concept C (written C ⊑ D) if C I ⊆ DI holds for each interpretation. Two concepts are equivalent (written C ≡ D) if they are mutually subsuming. The above inference problems can be defined w.r.t. a general role box R and/or a Tbox T in the usual way, i.e., by replacing interpretation with model of R and/or T . For an interpretation I, an element x ∈ ∆I is called an instance of a concept C if x ∈ C I . An interpretation I satisfies (is a model of ) an Abox A (I |= A) if for all individual assertions φ ∈ A we have I |= φ, where I I I I |= a : C . |= a = 6 b |= (a, b) : R |= (a, b) : ¬R if if if if aI ∈ C I ; aI 6= bI ; haI , bI i ∈ RI ; haI , bI i ∈ / RI . An Abox A is consistent with respect to an Rbox R and a Tbox T if there is a model I for R and T such that I |= A. For DLs that are closed under negation, subsumption and (un)satisfiability of concepts can be mutually reduced: C ⊑ D iff C ⊓ ¬D is unsatisfiable, and C is unsatisfiable iff C ⊑ ⊥. Furthermore, a concept C is satisfiable iff the Abox {a : C} is consistent. It is straightforward to extend these reductions to Rboxes and Tboxes. In contrast, the reduction of inference problems w.r.t. a Tbox to pure concept inference problems (possibly w.r.t. a role hierarchy), deserves special care: in (2; 13; 3), the internalisation of GCIs is introduced, a technique that realises exactly this reduction. For SRIQ, this technique only needs to be slightly modified. The following Lemma shows how general concept inclusion axioms can be internalised using a “universal” role U , that is, a transitive super-role of all roles occurring in T , A, or R and their respective inverses. Lemma 1. Let C and D be concepts, A an Abox, T a Tbox, and R = Rh ∪ Ra an Rbox. We define CT := ⊓ ¬Ci ⊔ Di . ˙ i ∈T Ci ⊑D Let U be a role that does not occur in C, D, T , A, or R. We set ˙ ˙ RU h := Rh ∪ {R ⊑ U, Inv(R) ⊑ U | R occurs in C, D, T , A, or R}, U U U RU a := Ra ∪ {Tra(U )}, and R := Rh ∪ Ra . – C is satisfiable w.r.t. T and R iff C ⊓ CT ⊓ ∀U.CT is satisfiable w.r.t. RU . – D subsumes C with respect to T and R iff C ⊓ ¬D ⊓ CT ⊓ ∀U.CT is unsatisfiable w.r.t. RU . 8 – A is satisfiable w.r.t. R and T iff A ∪ {a : CT ⊓ ∀U.CT | a occurs in A} is satisfiable w.r.t. RU . The proof of Lemma 1 is similar to the ones that can be found in (13; 2). Most importantly, it must be shown that (a): if a SRIQ-concept C is satisfiable with respect to a Tbox T and an Rbox R, then C, T have a connected model, i.e., a model where any two elements are connect by a role path over those roles occurring in C and T , and (b): if y is reachable from x via a role path (possibly involving inverse roles), then hx, yi ∈ U I . These are easy consequences of the semantics and the definition of U . Now, note also that, instead of having a role assertion Ref(R) ∈ Ra , we ˙ ∃R.Self to T , which can in turn be can add, equivalently, the GCI ∃R.⊤ ⊑ internalised. Likewise, instead of asserting Irr(R), we can, equivalently, add the ˙ ¬∃R.Self. Thus, we arrive at the following theorem: GCI ⊤ ⊑ Theorem 1. 1. Satisfiability and subsumption of SRIQ-concepts w.r.t. Tboxes and Rboxes are polynomially reducible to (un)satisfiability of SRIQ-concepts w.r.t. Rboxes. 2. Consistency of SRIQ-Aboxes w.r.t. Tboxes and Rboxes is polynomially reducible to consistency of SRIQ-Aboxes w.r.t. Rboxes. 3. W.l.o.g., we can assume that Rboxes do not contain role assertions of the form Irr(R), Ref(R), Tra(R), or Sym(R). With Theorem 1, all standard inference problems for SRIQ-concepts and Aboxes can be reduced to the problem of determining the consistency of a SRIQ-Abox w.r.t. to an Rbox, where we can assume w.l.o.g. that all role assertions in the Rbox are of the form Dis(R, S)—we call such an Rbox reduced. 3 SRIQ is Decidable In this section, we show that SRIQ is decidable. We present a tableau-based algorithm that decides the consistency of a SRIQ-Abox w.r.t. a reduced Rbox, and therefore also all standard inference problems as discussed above, see Theorem 1. Therefore, in the following, by Rbox we always mean reduced Rbox. The algorithm tries to construct, given a SRIQ-Abox A, a tableau for A, that is, an abstraction of a model of A. Given the appropriate notion of a tableau, it is then quite straightforward to prove that the algorithm is a decision procedure for SRIQ-satisfiability. Before specifying this algorithm, we translate a role hierarchy Rh into nondeterministic automata which are used both in the definition of a tableau and in the tableau algorithm. Intuitively, an automaton is used to memorise the path between an object x that has to satisfy a concept of the form ∀R.C and other objects, and then to determine which of these objects must satisfy C.3 3 This technique together with the relationship between automata and regular languages is the reason why we called these role hierarchies “regular”. 9 For the following considerations, it is worthwhile to recall that, for a string w = R1 . . . Rm and Ri roles, Inv(w) = Inv(Rm ) . . . Inv(R1 ). The following Lemma is a direct consequence of the definition of the semantics. ˙ S ∈ Rh and w ⊑ ˙ S ∈ Rh , then Lemma 2. If I is a model of Rh with S − ⊑ I I Inv(w) ⊆ S . 3.1 Translating RIAs into Automata The technique used in this chapter is identical to the one presented in (9), and repeated here only to make this paper self-contained. First, we will define, for a regular role hierarchy Rh and a (possibly inverse) role S occurring in Rh , a non-deterministic finite automaton (NFA) BS which captures all implications between (paths of) roles and S that are consequences of Rh . To make this clear, before we define BS , we formulate the lemma which we are going to prove for it. Proposition 1. I is a model of Rh if and only if, for each (possibly inverse) role S occurring in Rh , each word w ∈ L(BS ), and each hx, yi ∈ wI , we have hx, yi ∈ S I . In the (see, e.g., transition transition following, we use NFAs with ε-transitions in a rather informal way R (6) for more details), e.g., we use p → q to denote that there is a from a state p to a state q with the letter R instead of introducing relations formally. The automata BS are defined in three steps. Definition 7. Let A be a SRIQ-Abox and R a reduced Rbox which is ≺-regular. For each role name R occurring in R or A, we first define the NFA AR as follows: R AR contains a state iR and a state fR with the transition iR → fR . The state iR is the only initial state and fR is the only final state. Moreover, for each ˙ R ∈ R, AR contains the following states and transitions: w⊑ ε 1. if w = RR, then AR contains fR → iR , and 2. if w = R1 · · · Rn and R1 6= R 6= Rn , then AR contains R ε R R R ε R R ε iR → iw →1 fw1 →2 fw2 →3 . . . →n fwn → fR , 3. if w = RR2 · · · Rn , then AR contains R ε R fR → iw →2 fw2 →3 fw3 →4 . . . →n fwn → fR , 4. if w = R1 · · · Rn−1 R, then AR contains ε R R R Rn−1 ε iR → iw →1 fw1 →2 fw2 →3 . . . → fwn−1 → iR , where all fwi , iw are assumed to be distinct. In the next step, we use a mirrored copy of NFAs: this is a copy of an NFA in which we have carried out the following modifications: we 10 – make final states to non-final but initial states, – make initial states to non-initial but final states, S Inv(S) – replace each transition p → q for S a (possibly inverse) role S with q → p, and ε ε – replace each transition p → q with q → p. Secondly, we define the NFAs ÂR as follows: ˙ R 6∈ R, then ÂR := AR , – if R− ⊑ ˙ R ∈ R, then ÂR is obtained as follows: first, take the disjoint union4 – if R− ⊑ of AS with a mirrored copy of AS . Secondly, make iR the only initial state, fR the only final state. Finally, for fR′ the copy of fR and i′R the copy of iR , ε ε ε ε add transitions iR → fR′ , fR′ → iR , i′R → fR , and fR → i′R . Thirdly, the NFAs BR are defined inductively over ≺: – if R is minimal w.r.t. ≺ (i.e., there is no R′ with R′ ≺ R), we set BR := ÂR . – otherwise, BR is the disjoint union of ÂR with a copy BS′ of BS for each S transition p → q in ÂR with S 6= R. Moreover, for each such transition, we add ε-transitions from p to the initial state in BS′ and from the final state in BS′ to q, and we make iR the only initial state and fR the only final state in BR . Finally, the automaton BR− is a mirrored copy of BR . Please note that the inductive definition of BR is well-defined since the acyclic relation ≺ is used to restrict the dependencies between roles. We have kept the construction of BS as simple as possible. If one wants to construct an equivalent NFA without ε-transitions or which is deterministic, then there are well-known techniques to do this (6). Recall that elimination of εtransitions can be carried out without increasing the number of an automaton’s states, whereas determinisation might yield an exponential blow-up. However, as we will see later, this determinisation will happen anyway “on-the-fly” in the tableau algorithm, and thus has no influence on the complexity, see (9) for a discussion. Lemma 3. For R a role, the size of BR is bounded exponentially in the depth ˙ Si ∈ R} dR := max{n | there are S1 ≺ . . . ≺ Sn , ui , vi with ui Si−1 vi ⊑ and thus in the size of R. Moreover, there are R and R such that the number of states in BR is 2dR . In (9), certain further syntactic restrictions of role hierarchies were considered (there called simple role hierarchies) that avoid this exponential blow-up. We conjecture that without some such further restriction, this blow-up is unavoidable. Next, we will repeat a technical Lemma from (9) which we will use later, and refer the reader to (9) for its proof and the proof of Proposition 1. 4 A disjoint union of two automata is the disjoint union of their states, transition relations, etc. 11 ˙ S ∈ R, then w ∈ L(BS ). Lemma 4. 1. S ∈ L(BS ) and, if w ⊑ 2. If S is a simple role, then L(BS ) = {R | R ⊑ * S}. ← − ← − 3. If A is a mirrored copy of an NFA A, then L( A ) = {Inv(w) | w ∈ L(A)}. 3.2 A Tableau for SRIQ In the following, if not stated otherwise, C, D (possibly with subscripts) denote SRIQ-concepts, R, S (possibly with subscripts) roles, R = Rh ∪ Ra an Rbox, A an Abox, RA the set of roles occurring in A and R together with their inverses, and IA the set of individuals occurring in A. Furthermore, as noted in Theorem 8, we can (and will from now on) assume w.l.o.g. that no role assertions of the form Irr(R), Ref(R), Tra(R), or Sym(R) appear in Ra . We start by defining fclos(C0 , R), the closure of a concept C0 w.r.t. a regular role hierarchy R. Intuitively, this contains all relevant sub-concepts of C0 together with universal value restrictions over sets of role paths described by an NFA. We use NFAs in universal value restrictions to memorise the path between an object that has to satisfy a value restriction and other objects. To do this, we “push” this NFA-value restriction along this path while the NFA gets “updated” with the path taken so far. For this “update”, we use the following definition. Definition 8. For B an NFA and q a state of B, B(q) denotes the NFA obtained S from B by making q the (only) initial state of B, and we use q → q ′ ∈ B to denote S that B has a transition q → q ′ . Without loss of generality, we assume all concepts to be in NNF, that is, negation occurs only in front of concept names or in front of ∃R.Self. Any SRIQconcept can easily be transformed into an equivalent one in NNF by pushing negations inwards using a combination of DeMorgan’s laws and the following equivalences: ¬(∃R.C) ≡ (∀R.¬C) ¬(6nR.C) ≡ (>(n + 1)R.C) ¬(∀R.C) ≡ (∃R.¬C) ¬(>(n + 1)R.C) ≡ (6nR.C) ¬(>0R.C) ≡ ⊥ We use ¬C ˙ for the NNF of ¬C. Obviously, the length of ¬C ˙ is linear in the length of C. For a concept C0 , clos(C0 ) is the smallest set that contains C0 and that is closed under sub-concepts and ¬. ˙ The set fclos(C0 , R) is then defined as follows: fclos(C0 , R) := clos(C0 ) ∪ {∀BS (q).D | ∀S.D ∈ clos(C0 ) and BS has a state q}. It is not hard to show and well-known that the size of clos(C0 ) is linear in the size of C0 . For the size of fclos(C0 , R), we have seen in Lemma 3 that, for a role S, the size of BS can be exponential in the depth of R. Since there are at most linearly many concepts ∀S.D, this yields a bound for the cardinality of fclos(C0 , R) that is exponential in the depth of R and linear in the size of C0 . 12 Next, we define fclos(A, R) := [ fclos(C, R). a:C∈A The size of fclos(A, R) is linear in A and exponential in the depth of R. Definition 9. T = (S, L, E, I) is a tableau for A w.r.t. R iff – – – – S is a non-empty set, L : S → 2fclos(A,R) maps each element in S to a set of concepts, E : RA → 2S×S maps each role to a set of pairs of elements in S, and I : IA → S maps individuals occurring in A to elements in S. Furthermore, for all s, t ∈ S, C, C1 , C2 ∈ fclos(A, R), R, S ∈ RA , and a, b ∈ IA , the tableau T satisfies: (P1a) if C ∈ L(s), then ¬C ∈ / L(s) (C atomic or ∃R.Self), (P1b) ⊤ ∈ L(s), and ⊥ ∈ / L(s), for all s, (P1c) if ∃R.Self ∈ L(s), then hs, si ∈ E(R), (P2) if C1 ⊓ C2 ∈ L(s), then C1 ∈ L(s) and C2 ∈ L(s), (P3) if C1 ⊔ C2 ∈ L(s), then C1 ∈ L(s) or C2 ∈ L(s), S (P4a) if ∀B(p).C ∈ L(s), hs, ti ∈ E(S), and p → q ∈ B(p), then ∀B(q).C ∈ L(t), (P4b) if ∀B.C ∈ L(s) and ε ∈ L(B), then C ∈ L(s), (P5) if ∃S.C ∈ L(s), then there is some t with hs, ti ∈ E(S) and C ∈ L(t), (P6) if ∀S.C ∈ L(s), then ∀BS .C ∈ L(s), (P7) hx, yi ∈ E(R) iff hy, xi ∈ E(Inv(R)), (P8) if (6nS.C) ∈ L(s), then ♯S T (s, C) 6 n, (P9) if (>nS.C) ∈ L(s), then ♯S T (s, C) > n, (P10) if (6nS.C) ∈ L(s) and hs, ti ∈ E(S), then C ∈ L(t) or ¬C ˙ ∈ L(t), (P11) if a : C ∈ A, then C ∈ L(I(a)), (P12) if (a, b) : R ∈ A, then hI(a), I(b)i ∈ E(R), (P13) if (a, b) : ¬R ∈ A, then hI(a), I(b)i ∈ / E(R), . (P14) if a = 6 b ∈ A, then I(a) 6= I(b), (P15) if Dis(R, S) ∈ R, then E(R) ∩ E(S) = ∅, (P16) if hs, ti ∈ E(R) and R ⊑ * S, then hs, ti ∈ E(S), where, in (P8) and (P9), S T (s, C) := {t ∈ S | hs, ti ∈ E(S ′ ) for some S ′ ∈ L(BS ) and C ∈ L(t)}. Lemma 5. A SRIQ-Abox A is consistent w.r.t. R iff there exists a tableau for A w.r.t. R. Proof: For the if direction, let T = (S, L, E, I) be a tableau for A w.r.t. R. We extend the relational structure of T and then prove that this indeed gives a model. More precisely, a model I = (∆I , ·I ) of A and R can be defined as follows: 13 we set ∆I := S, C I := {s | C ∈ L(s)} for concept names C in fclos(A, R), aI := I(a) for individual names a ∈ IA , and for roles names R ∈ RA , we set RI := {hs0 , sn i ∈ (∆I )2 | there are s1 , . . . , sn−1 with hsi , si+1 i ∈ E(Si+1 ) for 0 ≤ i ≤ n − 1 and S1 · · · Sn ∈ L(BR )} The semantics of complex concepts is given through the definition of the SRIQsemantics. Due to Lemma 4.3 and (P7), the semantics of inverse roles can either be given directly as for role names, or by setting (R− )I := {hy, xi | hx, yi ∈ RI }. We have to show that I is a model of R and A. We begin by showing that I |= R. First, we look at role assertions. Remember that we assumed that R is reduced, and thus we only have to deal with role disjointness assertions of the form Dis(R, S). Consider an assertion Dis(R, S) ∈ R. By definition of SRIQRboxes, both R and S are simple roles, and (P15) implies E(R) ∩ E(S) = ∅. Moreover, we have, by definition of I, Lemma 4.2, (P7), and (P16) that, for T a simple role, T I = E(T ). Hence RI ∩ S I = ∅, and thus I satisfies each role assertion in Ra . Next, we show that I |= Rh . Due to Proposition 1, it suffices to prove that, for each (possibly inverse) role S, each word w ∈ L(BS ), and each hx, yi ∈ wI , we have hx, yi ∈ S I . Let w ∈ L(BS ) and hx, yi ∈ wI . For w = S1 . . . Sn , this implies the existence of yi such that y0 = x, yn = y, and hyi−1 , yi i ∈ SiI for each 1 ≤ i ≤ n. For each i, we define a word wi as follows: – if hyi−1 , yi i ∈ E(Si ), then set wi := Si . (i) (i) (i) – otherwise, there is some vi = T1 . . . Tni ∈ L(BSi ) and there are yj such (i) (i) (i) (i) (i) that yi−1 = y0 , yi = yni , and hyj−1 , yj i ∈ E(Tj ) for each 1 ≤ j ≤ ni . In this case, we set wi := vi . Let ŵ := w1 . . . wn . By construction of BS from ÂS , w ∈ L(BS ) implies that (i) ŵ ∈ L(BS ). For ŵ = U1 . . . Un′ , we can thus re-name the yi and yj to zi such that we have z0 = x, zn = y, and hzi−1 , zi i ∈ E(Ui ). Hence, by definition of ·I , we have hx, yi ∈ S I . Secondly, we prove that I is a model of A. We show that C ∈ L(s) implies s ∈ C I for each s ∈ S and each C ∈ fclos(A, R). Together with (P11)–(P14), this implies that I is a model of A. This proof can be given by induction on the length of concepts, where we count neither negation nor integers in number restrictions. The only interesting cases are C = (6nS.E), C = ∀S.E, and C = ∃R.Self (for the other cases, see (12; 8)): – If (6nS.E) ∈ L(s), then (P8) implies that #S T (s, E) ≤ n. Moreover, since S is simple, Lemma 4.2 implies that L(BS ) = {S ′ | S ′ ⊑ * S}, and (P16) implies that S I = E(S). Hence (P10) implies that, for all t, if hs, ti ∈ S I , then E ∈ L(t) or ¬E ˙ ∈ L(t). By induction E I = {t | E ∈ L(t)}, and thus I s ∈ (6nS.E) . 14 – Let ∀S.E ∈ L(s) and hs, ti ∈ S I . From (P6) we have that ∀BS .E ∈ L(s). By definition of S I , there are S1 . . . Sn ∈ L(BS ) and si with s = s0 , t = sn , and hsi−1 , si i ∈ E(Si ). Applying (P4a) n times, this yields ∀BS (q).E ∈ L(t) for q a final state of BS . Thus (P4b) implies that E ∈ L(t). By induction, t ∈ E I , and thus s ∈ (∀S.E)I . – Let ∃R.Self ∈ L(s). Then, by (P1c), hs, si ∈ E(R) and, since R ∈ L(BR ) and by definition of I, we have hs, si ∈ RI . It follows that s ∈ (∃R.Self)I . For the converse, suppose I = (∆I , ·I ) is a model of A w.r.t. R. We define a tableau T = (S, L, E, I) for A and R as follows: S := ∆I , I(a) := aI , E(R) := RI , and L(s) := {C ∈ clos(A) | s ∈ C I } ∪ {∀BS .C | ∀S.C ∈ clos(A) and s ∈ (∀S.C)I } ∪ {∀BR (q).C ∈ fclos(A, R) | for all S1 · · · Sn ∈ L(BR (q)), s ∈ (∀S1 .∀S2 . · · · ∀Sn .C)I and if ε ∈ L(BR (q)), then s ∈ C I } We have to show that T satisfies each (Pi). We restrict our attention to the only new cases. For (P6), if ∀S.C ∈ L(s), then s ∈ (∀S.C)I and thus ∀BS .C ∈ L(s) by definition of T . For (P4a), let ∀B(p).C ∈ L(s) and hs, ti ∈ E(S) = S I . Assume that there is S a transition p → q in B(p) and ∀B(q).C 6∈ L(t). By definition of T , this can have two reasons: – there is a word S2 . . . Sn ∈ L(B(q)) and t 6∈ (∀S2 . . . . ∀Sn .C)I . However, this implies that SS2 . . . Sn ∈ L(B(p)) and thus that s ∈ (∀S.∀S2 . . . . ∀Sn .C)I , which contradicts, together with hs, ti ∈ S I , the definition of the semantics of SRIQ concepts. – ε ∈ L(B(q)) and t 6∈ C I . This implies that S ∈ L(B(p)) and thus contradicts s ∈ (∀S.C)I . Hence ∀B(q).C 6∈ L(t). For (P4b), ε ∈ L(B(p)) implies s ∈ C I by definition of T , and thus C ∈ L(s). Finally, (P11) to (P16) follow immediately from the definition of the semantics. ⊓ ⊔ 3.3 The Tableau Algorithm In this section, we present a tableau algorithm that decides consistency of SRIQAboxes w.r.t. Rboxes, and thus, using Lemma 1, also w.r.t. Tboxes. Since Aboxes usually involve several individuals with arbitrary role relationships between them, the completion algorithm presented works on forests rather 15 than on trees (which suffice for deciding concept satisfiability). A forest is a collection of trees whose root nodes correspond to the individuals appearing in the input Abox and which form an arbitrarily connected graph according to the role assertions stated in the Abox. The algorithm generates a completion forest, a structure that, if complete and clash-free, can be unravelled to an (infinite) tableau for the input Abox and Rbox. Moreover, it is shown that the algorithm returns a complete and clash-free completion forest for A and R if and only if there exists a tableau for A and R, and thus with Lemma 5, if and only if the Abox A is consistent w.r.t. R. As usual, in the presence of transitive roles, blocking is employed to ensure termination of the algorithm. In the additional presence of inverse roles, blocking is dynamic, i.e., blocked nodes (and their sub-branches) can be un-blocked and blocked again later. In the further, additional presence of number restrictions, pairs of nodes are blocked rather than single nodes (12). The blocking conditions as they are presented here are, clearly, too strict. As a consequence, blocking may occur later than necessary, and thus we end up with a search space that is larger than necessary. In (8), we have shown how to loosen the blocking condition for SHIQ while retaining correctness of the algorithm. Here, we focus on the decidability of SRIQ, and defer a similar loosening for SRIQ to future work. Definition 10. A completion forest F for a SRIQ-Abox A and an Rbox R is a collection of trees whose distinguished root nodes can be connected arbitrarily. Moreover, each node x is labelled with a set L(x) ⊆ fclos(A, R) and each edge hx, yi from a node x to its successor y is labelled with a non-empty set L(hx, yi) of (possibly inverse and possibly negated) roles occurring in A and R. Finally, . completion forests come with an explicit inequality relation = 6 on nodes which is implicitly assumed to be symmetric. ′ Let x and y be nodes in F and R a role. If R′ ⊑ * R and R ∈ L(hx, yi), then y is called an R-successor of x. If y is an R-successor of x or x is an Inv(R)-successor of y, then y is called an R-neighbour of x. Moreover, a node x is a neighbour of y, if it is an R-neighbour for some role R. Successors, predecessors, ancestors, and descendants are defined as usual. For a role S, a concept C, and a node x in F, we define S F (x, C) by S F (x, C) := {y | y is an S-neighbour of x and C ∈ L(y)}. A node is called blocked if it is either directly or indirectly blocked. A node x is directly blocked if none of its ancestors are blocked, and it has ancestors x′ , y and y ′ such that 1. 2. 3. 4. none of x′ , y and y ′ is a root node, x is a successor of x′ and y is a successor of y ′ and L(x) = L(y) and L(x′ ) = L(y ′ ) and L(hx′ , xi) = L(hy ′ , yi). In this case, we say that y blocks x. 16 A node y is indirectly blocked if one of its ancestors is blocked. Given a non-empty SRIQ-Abox A and a reduced Rbox R, the tableau algorithm is initialised with the completion forest FA,R defined as follows: – – – – – for each individual a occurring in A, FA,R contains a root node xa , if (a, b) : R ∈ A or (a, b) : ¬R ∈ A, then FA,R contains an edge hxa , xb i, . . if a = 6 b ∈ A, then xa = 6 xb is in FA,R , L(xa ) := {C | a : C ∈ A}, and L(hxa , xb i) := {R | (a, b) : R ∈ A} ∪ {¬R | (a, b) : ¬R ∈ A} A completion forest F is said to contain a clash if there are nodes x and y such that 1. 2. 3. 4. 5. 6. ⊥ ∈ L(x), or for some concept name A, {A, ¬A} ⊆ L(x), or x is an S-neighbour of x and ¬∃S.Self ∈ L(x), x and y are root nodes, y is an R-neighbour of x, and ¬R ∈ L(hx, yi), or there is some Dis(R, S) ∈ Ra and y is an R- and an S-neighbour of x, or there is some concept (6nS.C) ∈ L(x) and {y0 , . . . , yn } ⊆ S F (x, C) with . yi = 6 yj for all 0 ≤ i < j ≤ n. A completion forest that does not contain a clash is called clash-free. A completion forest is complete if none of the rules from Figure 1 can be applied to it. When started with a non-empty Abox A and a reduced Rbox R, the tableau algorithm initialises FA,R and repeatedly applies the expansion rules from Figure 1 to it, stopping when a clash occurs, and applying the shrinking rules eagerly, i.e., the ≤- and the ≤r -rule are applied with highest priority. The algorithm answers “A is satisfiable w.r.t. R” if and only if the expansion rules can be applied in such a way that they yield a complete and clash-free completion forest, and “A is unsatisfiable w.r.t. R” otherwise. All but the Self-rule have been used before for fragments of SRIQ, see (11; 8; 9), and the three ∀i -rules are the obvious counterparts to the tableau conditions (P4a), (P4b), and (P6). As usual, we prove termination, soundness, and completeness of the tableau algorithm to show that it indeed decides consistency of SRIQ-Aboxes w.r.t. Rboxes. Lemma 6. Let A be a SRIQ-Abox and R a reduced Rbox. The tableau algorithm terminates when started for A and R. Proof: Let m = ♯fclos(A, R), n the number of roles occurring in A and R, and nmax := max{n | (>nR.C) ∈ fclos(A, R)}. Termination is a consequence of the following properties of the expansion rules: 1. Nodes are labelled with subsets of fclos(A, R) and edges with sets of roles occurring in A and R plus possibly negated roles for roles between root nodes. Hence, there are at most 22mn different possible labellings for a pair 17 ⊓-rule: if C1 ⊓ C2 ∈ L(x), x is not indirectly blocked, and {C1 , C2 } 6⊆ L(x), then L(x) −→ L(x) ∪ {C1 , C2 } ⊔-rule: if C1 ⊔ C2 ∈ L(x), x is not indirectly blocked, and {C1 , C2 } ∩ L(x) = ∅ then L(x) −→ L(x) ∪ {E} for some E ∈ {C1 , C2 } ∃-rule: if ∃S.C ∈ L(x), x is not blocked, and x has no S-neighbour y with C ∈ L(y) then create a new node y with L(hx, yi) := {S} and L(y) := {C} Self-rule: if ∃S.Self ∈ L(x), x is not blocked, and S ∈ / L(hx, xi) then add an edge hx, xi if it does not yet exist, and set L(hx, xi) −→ L(hx, xi) ∪ {S} ∀1 -rule: if ∀S.C ∈ L(x), x is not indirectly blocked, and ∀BS .C 6∈ L(x) then L(x) −→ L(x) ∪ {∀BS .C} S ∀2 -rule: if ∀B(p).C ∈ L(x), x is not indirectly blocked, p → q in B(p), and there is an S-neighbour y of x with ∀B(q).C ∈ / L(y), then L(y) −→ L(y) ∪ {∀B(q).C} ∀3 -rule: if ∀B.C ∈ L(x), x is not indirectly blocked, ε ∈ L(B), and C 6∈ L(x) then L(x) −→ L(x) ∪ {C} choose-rule: if (6nS.C) ∈ L(x), x is not indirectly blocked, and there is an S-neighbour y of x with {C, ¬C} ˙ ∩ L(y) = ∅ then L(y) −→ L(y) ∪ {E} for some E ∈ {C, ¬C} ˙ >-rule: if (>nS.C) ∈ L(x), x is not blocked, and there are no y1 , . . . , yn ∈ S F (x, C) . with yi = 6 yj for each 1 ≤ i < j ≤ n then create n new successors y1 , . . . , yn of x with L(hx, yi i) = {S}, . L(yi ) = {C}, and yi = 6 yj for 1 ≤ i < j ≤ n. 6-rule: if (6nS.C) ∈ L(x), x is not indirectly blocked, and #S F (x, C) > n, there are y, z ∈ S F (x, C) with . not y = 6 z and y is not a root node nor an ancestor of z, then 1. L(z) −→ L(z) ∪ L(y) and 2. if z is an ancestor of x then L(hz, xi) −→ L(hz, xi) ∪ Inv(L(hx, yi)) else L(hx, zi) −→ L(hx, zi) ∪ L(hx, yi) . . 3. Set u = 6 z for all u with u = 6 y. 4. remove y and the sub-tree below y from F. 6r -rule: if (6nS.C) ∈ L(x), #S F (x, C) > n, . and there are two root nodes y, z ∈ S F (x, C) with not y = 6 z, then 1. L(z) −→ L(z) ∪ L(y) and 2. For all edges hy, wi: i. if the edge hz, wi does not exist, create it with L(hz, wi) := L(hy, wi); ii. else L(hz, wi) −→ L(hz, wi) ∪ L(hy, wi). 3. For all edges hw, yi: i. if the edge hw, zi does not exist, create it with L(hw, zi) := L(hw, yi); ii. else L(hw, zi) −→ L(hw, zi) ∪ L(hw, yi). . . 4. Set u = 6 z for all u with u = 6 y. 5. Remove y and all incoming and outgoing from y from F. Fig. 1. The Expansion Rules for the SRIQ Tableau Algorithm. 18 of non-root nodes and an edge. Therefore, if a path p of non-root nodes is of length at least 22mn , the pair-wise blocking condition implies the existence of a node x on p such that x is blocked. Since a path on which nodes are blocked cannot become longer, paths are of length at most 22mn . 2. The expansion rules never remove labels from nodes in the forest, and the only rules that removes nodes from the forest are the 6- and the 6r -rule. 3. Only the ∃- or the >-rule generate new nodes, and each generation is triggered by a concept of the form ∃R.C or (>nR.C) in the label of a node x. Each of these concepts triggers at most once the generation of at most nmax R-successors yi of x: note that if the 6-rule subsequently causes an R-successor yi of x to be removed, then x will have some R-neighbour z with L(z) ⊇ L(yi ). This, together with the definition of a clash, implies that the rule application which led to the generation of yi will not be repeated. Since fclos(A, R) contains a total of at most m ∃R.C, the out-degree of the forest is bounded by mnmax . ⊓ ⊔ Lemma 7. Let A be a SRIQ-Abox and R an Rbox. The expansion rules can be applied to A and R such that they yield a complete and clash-free completion forest if and only if there is a tableau for A w.r.t. R. For the if direction, we can unravel a complete and clash-free completion forest F in a standard way into a tableau T , where the same technique as for SHIQ is used to make sure that (P9) is satisfied even if two “sibling” nodes are blocked by the same node. It is easily seen that the ∀i expansion rules make sure that the resulting structure indeed satisfies the new tableau condition (P4a), (P4b), and (P6). For the only-if direction, we take a tableau I of A and R and use it to steer the application of the non-deterministic rules, i.e., the ⊔-, the X- and the 6 -rule. To do this, while building the completion forest, we define a mapping π from the nodes of the completion forest into the tableau which satisfies the following three conditions:  L(x) ⊆ L(π(x)),  if y is an S-neighbour of x, then hπ(x), π(y)i ∈ E(S), and (∗) .  x= 6 y implies π(x) 6= π(y). We start with π mapping the root node to some tableau element s0 with C0 in its label, and prove that, if an expansion rule is applicable to F, then this rule can be applied in such a way that (∗) is preserved. As a consequence of this claim, (P1), (P8), and Lemma 6, we thus end with a complete and clash-free completion forest. From Theorem 1, Lemmas 5, 6 and 7, we thus have the following theorem: Theorem 2. The tableau algorithm decides satisfiability and subsumption of SRIQ-concepts with respect to Aboxes, Rboxes, and Tboxes. Bibliography [1] Areces, C., Blackburn, P., Hernandez, B., and Marx, M. Handling Boolean Aboxes. In Proc. of the 2003 Description Logic Workshop (DL 2003) (2003), CEUR (http://ceur-ws.org/). [2] Baader, F. Augmenting Concept Languages by Transitive Closure of Roles: An Alternative to Terminological Cycles. In Proc. of the 12th Int. Joint Conf. on Artificial Intelligence (IJCAI-91) (Sydney, 1991). [3] Baader, F., Bürckert, H.-J., Nebel, B., Nutt, W., and Smolka, G. On the Expressivity of Feature Logics with Negation, Functional Uncertainty, and Sort Equations. Journal of Logic, Language and Information 2 (1993), 1–18. [4] Baader, F., Calvanese, D., McGuinness, D., Nardi, D., and PatelSchneider, P. F., Eds. The Description Logic Handbook: Theory, Implementation, and Applications. Cambridge University Press, 2003. [5] Baader, F., Lutz, C., Milicic, M., Sattler, U., and Wolter, F. Integrating Description Logics and Action Formalisms: First Results. In Proc. of the 20th National Conference on Artificial Intelligence (AAAI-05) (2005), A. Press, Ed. [6] Hopcroft, J. E., and Ullman, J. D. Introduction to Automata Theory, Languages, and Computation. Addison Wesley Publ. Co., Reading, Massachussetts, 1997. [7] Horrocks, I., Patel-Schneider, P. F., and van Harmelen, F. From SHIQ and RDF to OWL: The Making of a Web Ontology Language. J. of Web Semantics 1, 1 (2003), 7–26. [8] Horrocks, I., and Sattler, U. Optimised Reasoning for SHIQ. In Proc. of the 15th European Conf. on Artificial Intelligence (ECAI 2002) (2002). [9] Horrocks, I., and Sattler, U. Decidability of SHIQ with complex role inclusion axioms. Artificial Intelligence 160 (2004), 79–104. [10] Horrocks, I., and Sattler, U. A Tableaux Decision Procedure for SHOIQ. In Proc. of 19th International Joint Conference on Artificial Intelligence (IJCAI 2005) (2005), Morgan Kaufmann, Los Altos. [11] Horrocks, I., Sattler, U., and Tobies, S. Practical Reasoning for Expressive Description Logics. In Proc. of the 6th Int. Conf. on Logic for Programming and Automated Reasoning (LPAR’99) (1999), H. Ganzinger, D. McAllester, and A. Voronkov, Eds., vol. 1705 of Lecture Notes in Artificial Intelligence, Springer-Verlag, pp. 161–180. [12] Horrocks, I., Sattler, U., and Tobies, S. Reasoning with individuals for the description logic SHIQ. In Proc. of the 17th Conf. on Automated Deduction (CADE-17) (Germany, 2000), D. MacAllester, Ed., vol. 1831 of Lecture Notes in Computer Science, Springer-Verlag. 20 [13] Schild, K. A Correspondence Theory for Terminological Logics: Preliminary Report. In Proc. of the 12th Int. Joint Conf. on Artificial Intelligence (IJCAI-91) (Sydney, 1991), pp. 466–471. [14] Wolstencroft, K., Brass, A., Horrocks, I., Lord, P., Sattler, U., Turi, D., and Stevens, R. A Little Semantic Web Goes a Long Way in Biology. In Proc. of the 4th International Semantic Web Conference (2005), LNCS, SV. To appear.