Projection in a Description Logic of Context with Actions? Satyadharma Tirtarasa and Benjamin Zarrieß Institute for Theoretical Computer Science Technische Universität Dresden {satyadharma.tirtarasa,benjamin.zarriess}@tu-dresden.de Abstract. Projection is the problem of checking whether the execution of a given sequence of actions will achieve its goal starting from some initial state. In this paper, we study a setting where we combine a two- dimensional Description Logic of context (ConDL) with an action for- malism. We choose a well-studied ConDL where both: the possible states of a dynamical system itself (object level) and also different context- dependent views on this system state (context level) are organised in relational structures and can be described using usual DL constructs. To represent how such a system and its views evolve we introduce a suit- able action formalism. It allows one to describe change on both levels. Furthermore, the observable changes on the object level due to an action execution can also be context-dependent. We show that the formalism is well-behaved in the sense that projection has the same complexity as standard reasoning tasks in case ALCO is the underlying DL. 1 Introduction The role-based paradigm of modelling languages has been introduced for the design of adaptive and context-sensitive software systems. The concept of roles has been used at different levels of abstraction, for example in data models [6], in a formal high-level modelling language [11] for dynamical systems, and as an extension of more low-level object-oriented programming languages [12]. Unlike in a classical object-oriented setting, where an object has a fixed number of methods attached to it, in a role-based setting an object adapts its behaviour dynamically according to the roles it can play in different contexts. For example, in the conference management system used for this workshop the concept of roles is quite prominent. In the context of this workshop a researcher might play the role of an author whereas in context of some other conference also the role of a program committee member can be played by the same researcher. Both the view on submissions and the abilities to change something are context-dependent and may vary over time in this scenario. How to deal with explicit context extensions of modelling languages efficiently is a well-studied research topic in different areas (e.g. [10,12,7]). In [8], Böhme ? Supported by DFG within the Research Training Group 1907 (RoSI) and the DFG Research Unit FOR 1513 and Lippmann studied a family of contextualized Description Logics (ConDLs). For this family, a reasoning tool has been implemented, and has been used for translating and checking consistency of models of a role-based modelling lan- guage for software systems [11,7]. However, ConDLs are only suitable for expressing static context-dependent knowledge. In this paper, we focus on an extension with dynamic aspects and in- troduce a ConDL-based action formalism for reasoning about change in context models. To talk about particular states we consider the ConDL ALCOJALCOK from [8]. It is a two-sorted logic with a meta level signature for describing con- texts and an object level signature for the object domain. ALCO is the outer meta level logic and is used to describe sets of contexts and relations among them. Each context element of the meta level domain corresponds to a rela- tional structure of the inner object level, which is represented using ALCO as well. Both levels are connected with a modality that allows one to access the object level from the meta level. In the example of the conference management system one could think of a model, where we talk about researcher accounts with their properties (for example, being PC member or author) and relations (like conflict of interest with someone else) on the meta level, and where each account corresponds to an individual view on concrete submissions and reviews on the object level. The action formalism we introduce makes it possible to de- scribe changes on both levels. For example, the meta level can change if someone becomes a PC member or declares conflict of interest with someone. An object level action might represent the changes when a particular review is entered for a submission. The observable changes of this action from the perspective of a particular account depend on its meta level properties. As a reasoning task we consider the projection problem. Projection is the problem of checking whether the execution of a given sequence of actions will achieve its goal starting from some initial state. In our example, a typical projection query could ask whether, after a subreviewer has accepted to review some submission s due to an invita- tion by a PC member and after a review has been entered by some other PC member for this submission s, the subreviewer is able to see this review or not. To solve projection we reduce it polynomially to consistency in the underlying logic ALCOJALCOK by adapting techniques that have been used before for reasoning in DL-based action formalisms [5]. The remainder of this paper is structured as follows. In the next section we recall the definitions of ALCOJALCOK. Section 3 introduces our action formal- ism and defines the projection problem. In Section 4, we present our reduction method for deciding projection. We finish with a conclusion in Section 5. 2 The Description Logic of Context ALCOJALCOK For representing context-dependent knowledge we choose ALCOJALCOK, a sim- ple member of the family of ConDLs studied in [8]. To keep this part as simple as possible we omit rigidity constraints and focus only on ALCO on both levels. The full Boolean concept constructors and nominals are essential in our setting because the actions we define later act on concrete individuals. The logic is two-sorted with a meta level signature M = (MC , MR , MI ) and an object level signature O = (OC , OR , OI ). We call MC , MR and MI the set of meta concept names, role names, and individual names respectively. Analogously, OC , OR , OI is called the set of object concept names, role names, and individual names respectively. All these sets are assumed to be pairwise disjoint. We assume the standard definition of the syntax of ALCO-concepts, general concept inclusions (GCIs) and KBs (see [2,3] for details) and the corresponding semantics in terms of interpretations over some signature (either M or O in our case) with the unique name assumption for individual names. Definition 1 (Syntax). Let ϕ be an ALCO-KB over the object level signature O and A ∈ MC , r ∈ MR and a ∈ MI meta level names. An ALCOJALCOK- meta level concept description C over M and O ( m-concept for short) is built according to the following syntax rule C ::= A | {a} | JϕK | C u C | ¬C | ∃r.C. Further constructors are defined as abbreviations: > := ¬(A u ¬A) and ⊥ := (A u ¬A) (for some A ∈ MC ), C t D := ¬(C u ¬D) and ∀r.C := ¬∃r.¬C. Let C and D be m-concepts. An ALCOJALCOK-Boolean meta level knowl- edge base ψ over M and O (m-KB for short) is built according to the following syntax rule ψ ::= C v D | ψ ∧ ψ | ¬ψ. Notation for concept assertions and role assertions is used as abbreviations: (a : C) := {a} v C and ((a, b) : r) := {a} v ∃r.{b}. Further Boolean connectives like ∨ and → are defined as usual. The only non-standard expression is the meta concept constructor JϕK that refers to a standard ALCO-KB ϕ. It gives access to the object level from the meta level and describes the set of meta level domain elements (contexts) in which ϕ is true. The semantics of ALCOJALCOK is defined in terms of nested interpretations. The structure consists of a single meta level interpretation over M where each domain element is associated with an object level interpretation over O. Definition 2 (Nested Interpretation). A nested interpretation I (over M and O) is a tuple of the form I := (C, ·I , ∆, {Ic }c∈C ), where – (C, ·I ) is an M-interpretation, and – Ic := (∆, ·Ic ) is an O-interpretation for each c ∈ C. Definition 3 (Semantics). Let I = (C, ·I , ∆, {Ic }c∈C ) be a nested interpre- tation. The extension of the mapping ·I to complex m-concepts is defined by induction on the structure of m-concepts C and D as follows: ({a})I := {aI }; (JϕK)I := {c ∈ C | Ic |= ϕ}; (C u D) := C I ∩ DI ; I (¬C)I := C \ C I ; (∃r.C)I := {c ∈ C | there exists c0 ∈ C such that (c, c0 ) ∈ rI and c0 ∈ C I }, where a ∈ MI , r ∈ MR and ϕ is an ALCO-KB over O. Let ψ be an m-KB. Satisfaction of ψ in I, written as I |= ψ ( I is a model of ψ), is defined by induction on the structure of ψ as follows: I |= C v D iff C I ⊆ DI ; I |= ψ1 ∧ ψ2 iff I |= ψ1 and I |= ψ2 ; I |= ¬ψ1 iff I 6|= ψ1 . Example 1. We describe some aspects of a conference management domain. On the meta level we talk about accounts that can be PC members of the DL work- shop (meta level concept name DL-PC) with possibly conflict of interest (meta level role has-conflict) to authors (concept name DL-Author). Each account has a particular view on the object level where we have a domain of submissions and reviews. The object level concept names Subs-To-Review and Own-Subs describe the assigned submissions for reviewing and their own written submis- sions, respectively. The object level role has-review relates submissions to their reviews. We describe an initial situation using the meta level individual names bob’s-account and alice’-account and the object level name s denoting a concrete submission. Intuitively, in this model the meta level concept Js : Own-SubsK describes the set of accounts (meta level domain elements) in which s is an instance of Own-Subs. Therefore, it represents the set of author accounts of s. The following meta level axioms represent some initial knowledge: alice’-account : (∀has-conflict.¬Js : Own-SubsK) (1) bob’s-account : Js : Own-SubsK (2) > v Js : ∀has-review .⊥K (3) DL-Author ≡ ¬JOwn-Subs v ⊥K (4) ¬JSubs-To-Review v ⊥K v DL-PC (5) Alice has no conflict of interest with an author of the submission s (1). Bob is an author of s (2), which has not received any reviews yet (3). DL author accounts are defined as those accounts with own submissions (4). Only PC members are allowed to review (5). 3 Representing Context-dependent Change We define separate action descriptions for the object level and the meta level. Syntactically, action descriptions are complex expressions with constructors for describing conditional and simultaneous execution. Semantically, actions update interpretations by changing the membership of named individuals in concept names or of pairs of named individuals in role names. Definition 4. Let ψ be an m-KB and A ∈ MC , r ∈ MR and a, b ∈ MI be meta level names. An M-action description α ( M-action for short) is built according to the following syntax rule: α := hA ⊕ ai | hA ai | hr ⊕ (a, b)i | hr (a, b)i | (ψ . α) | (α k α). Let C be an m-concept and B ∈ OC , s ∈ OR and o, o0 ∈ OI object level names. An O-action description β ( O-action for short) is built according to the following syntax rule: β := hB ⊕ oi | hB oi | hs ⊕ (o, o0 )i | hs (o, o0 )i | (C . β) | (β k β). We write just action if we do not distinguish between M-actions and O-actions. Actions of the form hA ± ai, hr ± (a, b)i, hB ± oi or hs ± (o, o0 )i are called atomic actions. An atomic action like hA ⊕ ai over some signature N changes an N-interpretation I by adding aI to AI and hr (a, b)i deletes (aI , bI ) from rI . M-actions have m-KBs as conditions and O-actions have m-concepts as conditions. A conditional M-action (ψ . α1 ) takes effect in the meta-level interpretation only if ψ is satisfied and a conditional O-action of the form C . β1 means that an O-interpretation Ic in a nested interpretation I is only updated with β1 if c belongs to C in I. The construct (α1 ◦ α2 ) means that α1 and α2 are executed simultaneously. For the first step of the definition of the execution semantics we define how a set of atomic M-actions (or atomic O-actions) updates a non-nested M- interpretation (or O-interpretation). Definition 5 (Update). Let N ∈ {M, O} denote either the meta-level or object- level signature, and let I := (∆I , ·I ) be an N-interpretation and E a set of atomic N-actions. The update of I with E is an interpretation denoted by I E and is defined for all A ∈ NC , all r ∈ NR and all a ∈ NI as follows ∆I E := ∆I ; E AI := AI \ {aI | hA ai ∈ E} ∪ {bI | hA ⊕ bi ∈ E}  E rI := rI \ {(aI , bI ) | hr (a, b)i ∈ E} ∪ {(aI , bI ) | hr ⊕ (a, b)i ∈ E}  E aI := aI . Next, we define the effects of the execution of a complex action in a nested in- terpretation as a set of atomic actions. The definition tells us how the conditions attached by the “.” operator are evaluated for M-actions and O-actions. Definition 6 (Effects). Let I = (C, ·I , ∆, {Ic }c∈C ) be a nested interpretation and α an M-action. The set of atomic M-actions for I and α, denoted by E(α, I), is defined by induction on the structure of α as follows E(hA ± ai, I) := {hA ± ai} and E(hr ± (a, b)i, I) := {hr ± (a, b)i} ( E(α1 , I) if I |= ψ, E(ψ . α1 , I) := ∅ otherwise; E(α1 k α2 , I) := E(α1 , I) ∪ E(α2 , I). Let β be an O-action and c ∈ C. The set of sets of atomic O-actions for I, c and β, denoted by E(β, c, I), is defined by induction on the structure of β as follows E(hB ± oi, c, I) := {hB ± oi} and E(hs ± (o, o0 )i, c, I) := {hs ± (o, o0 )i} ( E(β1 , c, I) if c ∈ C I , E(C . β1 , c, I) := ∅ otherwise; E(β1 k β2 , c, I) := E(β1 , c, I) ∪ E(β2 , c, I). An M-action only updates the outer meta level interpretation of a nested interpretation. An O-action leaves the meta level interpretation unchanged and updates all object level interpretation simultaneously. How a particular object level interpretation Ic in a nested interpretation I is updated as the result of executing an O-action β depends only on the membership of c in the meta level concepts used as conditions in β. The corresponding set E(β, c, I) can also be empty. Definition 7 (Nested Update). Let I := (C, ·I , ∆, {Ic }c∈C ) be some nested interpretation, α an M-action and β an O-action. The update of I with α is the nested interpretation α Iα := (C, ·I , ∆, {Ic }c∈C ), α where (C, ·I ) is the update of (C, ·I ) with E(α, I) and all other components are unchanged. The update of I with β is the nested interpretation Iβ := (C, ·I , ∆, {Jc }c∈C ), where for each c ∈ C the O-interpretation Jc := (∆, ·Jc ) is the update of Ic with E(β, c, I). Let σ be a sequence of M-actions and O-actions the update Iσ is defined in the obvious way by induction on σ. As in [1] the semantics of actions is defined independent from global constraints formulated as GCIs. Checking whether or not a given sequence of actions pre- serves certain GCIs is viewed as a reasoning task (called projection problem). Preserving global GCIs is not something we try to enforce in the semantics. For a discussion on this view on state constraints we refer to [9]. Note that it is possible to write an action that adds and deletes an object (or a pair of objects) to and from a name simultaneously. The semantics of updates gives precedence to add effects but we want to exclude those descriptions. In the following we assume that for any M-action α, any O-action β and any nested interpretation I and meta level domain element c the sets E(α, I) and E(β, c, I) are non-contradictory. We are interested in checking whether a certain consequence formulated as an m-KB holds after executing a sequence of actions given an incomplete repre- sentation of the initial state in terms of an m-KB. Definition 8 (Projection Problem). Let ψ, ψ 0 be m-KBs and σ a sequence of actions. We say that ψ 0 is a consequence of executing σ in ψ iff for all models I of ψ, we have that Iσ |= ψ 0 . The projection problem is then to decide whether ψ 0 is a consequence of executing σ in ψ. We continue our example about the conference management system. Example 2 (Example 1 continued). An M-action for adding Alice as a PC Mem- ber of DL is given by add-pc := hDL-PC ⊕ alice’-accounti. It updates a nested interpretation by adding alice’-account to DL-PC on the meta level and changing nothing else. Next, we want to define an action which assigns Alice as a reviewer for the submission s under the condition that she has no conflict of interest with an author of this submission. It is specified as an O-action: add-sub := ({alice’-account} u ¬∃has-conflict.Js : Own-SubsK) . hSubs-To-Review ⊕ si Note that only the account of Alice is affected. The action only updates the object level interpretation associated with alice’-account by adding s to the review set (Subs-To-Review ). Let r be the name for the review Alice has written for s. We define an O- action that enters this review to the system and removes s from the review list of Alice simultaneously. finish := enter k remove; enter := (DL-PC u ¬∃has-conflict.Js : Own-SubsK) . hhas-review ⊕ (s, r)i; remove := {alice’-account} . hSubs-To-Review si. The review r is only visible for PC members with no conflict of interest with someone that is an author of s. Assume initially we have axioms (1)-(5) from Example 1. After performing the sequence add-pc; add-sub it holds that alice’-account : Js : Subs-To-Review K is true and the constraint ¬JSubs-To-Review v ⊥K v DL-PC is preserved. Furthermore, after add-pc; add-sub; finish we have that alice’-account : J(s, r) : has-review K is true. 4 Deciding the Projection Problem in ALCOJALCOK The approach of solving the projection problem in a DL-based action formalism by reducing it to a standard consistency problem in the underlying DL has been applied already in several settings (e.g. [5,4,13]). The overall idea we use here is similar to previous techniques extended to nested structures in our case. As a first step we introduce a normal form of action descriptions by conjoining conditions and pushing them inside. We say that an N-action µ with N ∈ {M, O} is in normal form if it is of the form (ψ1 . e1 ) k ... k (ψn . en ), where each ei , for any i, 1 ≤ i ≤ n is an atomic N-action and ψi is either an m-KB (in case of an M-action) or an m-concept (in case of an O-action). We normalize an arbitrary N-action by applying exhaustively the following rules: ψ1 . (ψ2 . µ) (ψ1 ? ψ2 ) . µ ψ . (µ1 k µ2 ) (ψ . µ1 ) k (ψ . α2 ) , where ? ∈ {∧, u} stands for ∧ in case of an M-action and for u in case of an O-action. W.l.o.g., we assume from now on that any action is in normal form. For convenience, we denote a normal form of an N-action µ as a set of atomic N-actions with a single condition attached: µ = {(ψ1 . e1 ), ..., (ψn . en )}. Let an m-KB ψ (initial state), ψ 0 (goal state) and a sequence of actions σ = µ1 , ..., µn in normal form be the input of the projection problem. Our goal is to construct a reduction m-KB that is consistent iff ψ 0 is a consequence of executing σ in ψ. We say that concepts, roles, and individuals are relevant if they occur in the input of the projection problem. For the reduction we use fresh concept names and role names of the corresponding sort. For each execution step 0 ≤ i ≤ n, we introduce fresh time-stamped copies A(i) of all relevant concept names, r(i) (i) of all relevant role names, and fresh time-stamped concept names TC for every (0) relevant complex subconcept C. A refers to the initial content of A and the further copies A(j) , 1 ≤ j ≤ n refer only to the set of named individual names of the corresponding sort that are instance of A after the jth execution step. This (i) holds for both concept and role names. The copies of the form TC represent the content (both named and unnamed) of the complex concept C after the ith execution step. The distinction between named and unnamed is made because actions only affect named individuals. Furthermore, for the set of all named individuals of sort object in the input (denoted by ObjO ) and for the set of all named meta level individuals in the input (ObjM ) two fresh concept names NO and NM , respectively, are introduced. The meaning of the new names is now axiomatized using meta level axioms as follows. For NO and NM we have G G ψobj = (NM ≡ {c}) ∧ (> v JNO ≡ {a}K). c∈ObjM a∈ObjO We use τ (C, i) to denote the concept definition we introduce to define the (i) names of the form TC . It is defined by induction on the structure of C as follows: (i) TA ≡ (NO u A(i) ) t (¬NO u A(0) ) (i) (i) (i) (i) (i) (i) T{a} ≡ {a} T¬C ≡ ¬TC TC1 uC2 ≡ TC1 u TC2 (i) (i) (i) (i) T∃r.C ≡ (NO u ((∃r(0) .(¬NO u TC )) t (∃r(i) .(NO u TC )))) t (¬NO u ∃r(0) .TC ) (i) For referring meta concepts we haveTJϕK ≡ Jϕ(i) K. For the object level, we ensure that the concept definitions hold in any context: (i) (i) ^ ^ ψdefO := > v Jτ (C, i)K ψdefM := τ (G, i), C∈RO G∈RM where RO is the set of relevant object level subconcepts and RM the analogous set on the meta level. Given an O-GCI γ = C v D and a timestamp 0 ≤ i ≤ n, (i) (i) we define the timestamped copy γ (i) := TC v TD , and ϕ(i) is the timestamped O-KB obtained from ϕ as the result of replacing every O-GCI γ in ϕ with γ (i) . Timestamped copies for M-GCI ζ (i) and m-KB ψ (i) are defined analogously. We simply put timestamp zero for the initial knowledge base ψ, i.e., we include ψ (0) as a conjunct of the reduction m-KB. Next, we encode the effects of each action µi using the m-KB ψacti . Intuitively, we make sure that if the condition is satisfied, then corresponding atomic actions are applied to the next step. We define corresponding assertions for each atomic action e and a timestamp i with π(e, i). π(hA ⊕ ai, i) := (a : A(i) ) π(hA ai, i) := (a : ¬A(i) ) π(hr ⊕ (a, b)i, i) := ((a, b) : r(i) ) π(hr (a, b)i, i) := ((a, b) : ¬r(i) ) We distinguish two cases, whether the action is an M-action or an O-action. First, we consider the case of µi is an M-action αi . We define: (i) ^ ψactM := (ψ (i−1) → π(e, i)) ψ.e∈αi We encode the atomic O-actions similarly for µi = βi , with taking the context into account. Instead of having an m-KB, we have a timestamped m-concept as the condition. The atomic O-actions are propagated using referring meta concept for those contexts. (i) (i−1) ^ ψactO := (TG v Jπ(e, i)K) G.e∈βi In case of the other type of action happens at timestamp i, the corresponding (i) (i) ψact is simply >. For example, ψactM = > if µi is an O-action. Then, we make sure a change only happens if there is an effect that enforces (i) it. For every i, 1 ≤ i ≤ n, we define an m-KB ψminM that encodes all the non- effects, that is, for each named individual a, each relevant concept name A from the meta level it contains a conjunct of the form  ^  (a : A(i−1) ∧ ¬ψ (i−1) ) → a : A(i) ∧ ψ.hA ai∈µi ^ (a : ¬A(i−1) ∧ ¬ψ (i−1) ) → a : ¬A(i) , ψ.hA⊕ai∈µi and analogous conjuncts for all relevant role names and pairs of named individ- uals. Likewise, we ensure a minimization of changes on the object level with an (i) m-KB ψminO for every i, 1 ≤ i ≤ n consisting of conjuncts of the form (i−1) ^ (Jo : B (i−1) K ∧ ¬TG ) → Jo : B (i) K, G.hB oi∈µi and analogously for the negative case and role names. Finally, we define the complete reduction m-KB: (i) (i) ^ ^ ψred := ψinit ∧ ψobj ∧ ψdefO ∧ ψdefM ∧ 0≤i≤n 0≤i≤n (i) (i) (i) (i) ^ ^ ^ ^ ψactO ∧ ψactM ∧ ψminO ∧ ψminM 1≤i≤n 1≤i≤n 1≤i≤n 1≤i≤n Lemma 1. Let ψ be an m-KB, σ = µ1 , ..., µn be a sequence of actions, and ψred be defined as above. The following properties hold: 1. For every sequence of nested-interpretations I0 , ..., In such that I0 |= ψ and Ii = Iµi−1 i for each i, 1 ≤ i ≤ n there exists an interpretation L |= ψred such that for every i, 0 ≤ i ≤ n, and every relevant m-KB ψ, we have Ii |= ψ iff L |= ψ (i) . 2. For every nested-interpretation L |= ψred , there exists a sequence of nested- interpretations I0 , ..., In such that I0 |= ψ and Ii = Iµi−1i for every i, 1 ≤ i ≤ n such that for every i, 0 ≤ i ≤ n, and every relevant m-KB ψ, we have Ii |= ψ iff L |= ψ (i) . Lemma 1 shows the correspondence between the models of the reduction m- KB ψred and the sequence of nested interpretations we obtain by executing σ in a model of the initial m-KB. This allows one to use the following reduction of the projection problem to a (in)consistency problem in ALCOJALCOK. Lemma 2. Let ψ, ψ 0 be m-KBs, and σ be a sequence of actions. It holds that ψ 0 is a consequence of executing σ in ψ iff ψred ∧ ¬(ψ 0(n) ) is inconsistent. This gives us a complexity result for the projection problem. Theorem 1. The projection problem in ALCOJALCOK is ExpTime-complete. Proof. ψred is polynomial in the size of the input, and obviously ¬(ψ 0(n) ) as well. Since the consistency problem in ALCOJALCOK is ExpTime-complete [8], we can use the following procedure: build ψred ∧¬(ψ 0(n) ) as defined, and check using an ALCOJALCOK consistency checker that runs in exponential time. Hence, we get an ExpTime procedure. For hardness, we can reduce the consistency problem in ALCOJALCOK to the projection problem. It is easy to see that an m-KB ψ is consistent iff {a} v > is a consequence of executing hi in ψ. 5 Conclusion We have introduced an action formalism for reasoning about context and object level change in the ConDL ALCOJALCOK. The formalism is well-behaved in the sense that the projection problem has the same complexity as standard reasoning in ALCO. From a practical point of view, choosing ALCOJALCOK has the advantage that an efficient reasoning tool for checking consistency already exists [7]. The reasoner even supports the more expressive combination SHOIQJSHOIQK. For future work, we plan to investigate whether our action formalism offers sufficient expressiveness for capturing also the dynamic features of the role-based modelling language in [11]. Furthermore, we would like to study the complexity of reasoning in several extensions of the action formalism. This for example includes operators for non- determinism in the action dimension and temporal specifications for possibly infinite action sequences. References 1. Ahmetaj, S., Calvanese, D., Ortiz, M., Simkus, M.: Managing change in graph- structured data using description logics. ACM Trans. Comput. Log. 18(4), 27:1– 27:35 (2017) 2. Baader, F., Calvanese, D., McGuinness, D.L., Nardi, D., Patel-Schneider, P.F. (eds.): The Description Logic Handbook: Theory, Implementation, and Applica- tions. Cambridge University Press (2003) 3. Baader, F., Horrocks, I., Lutz, C., Sattler, U.: An Introduction to Description Logic. Cambridge University Press (2017) 4. Baader, F., Lippmann, M., Liu, H.: Using causal relationships to deal with the ramification problem in action formalisms based on description logics. In: Fermüller, C.G., Voronkov, A. (eds.) Logic for Programming, Artificial Intelli- gence, and Reasoning - 17th International Conference, LPAR-17, Yogyakarta, In- donesia, October 10-15, 2010. Proceedings. Lecture Notes in Computer Science, vol. 6397, pp. 82–96. Springer (2010). https://doi.org/10.1007/978-3-642-16242-8, https://doi.org/10.1007/978-3-642-16242-8_7 5. Baader, F., Lutz, C., Milicic, M., Sattler, U., Wolter, F.: Integrating description logics and action formalisms: First results. In: AAAI. pp. 572–577. AAAI Press / The MIT Press (2005) 6. Bachman, C.W., Daya, M.: The role concept in data models. In: Proceedings of the Third International Conference on Very Large Data Bases, October 6-8, 1977, Tokyo, Japan. pp. 464–476. IEEE Computer Society (1977) 7. Böhme, S., Kühn, T.: Reasoning on context-dependent domain models. In: Wang, Z., Turhan, A., Wang, K., Zhang, X. (eds.) Semantic Technology - 7th Joint In- ternational Conference, JIST 2017, Gold Coast, QLD, Australia, November 10- 12, 2017, Proceedings. Lecture Notes in Computer Science, vol. 10675, pp. 69–85. Springer (2017), https://doi.org/10.1007/978-3-319-70682-5_5 8. Böhme, S., Lippmann, M.: Decidable description logics of context with rigid roles. In: Lutz, C., Ranise, S. (eds.) Frontiers of Combining Systems - 10th International Symposium, FroCoS 2015, Wroclaw, Poland, September 21-24, 2015. Proceedings. Lecture Notes in Computer Science, vol. 9322, pp. 17–32. Springer (2015), https: //doi.org/10.1007/978-3-319-24246-0_2 9. Herzig, A., Varzinczak, I.J.: Metatheory of actions: Beyond consistency. Artif. In- tell. 171(16-17), 951–984 (2007) 10. Klarman, S., Gutiérrez-Basulto, V.: Description logics of context. J. Log. Comput. 26(3), 817–854 (2016), https://doi.org/10.1093/logcom/ext011 11. Kühn, T., Böhme, S., Götz, S., Aßmann, U.: A combined formal model for re- lational context-dependent roles. In: Paige, R.F., Ruscio, D.D., Völter, M. (eds.) Proceedings of the 2015 ACM SIGPLAN International Conference on Software Language Engineering, SLE 2015, Pittsburgh, PA, USA, October 25-27, 2015. pp. 113–124. ACM (2015), https://dl.acm.org/citation.cfm?id=2814255 12. Schütze, L., Castrillón, J.: Analyzing state-of-the-art role-based programming lan- guages. In: Sartor, J.B., D’Hondt, T., Meuter, W.D. (eds.) Companion to the first International Conference on the Art, Science and Engineering of Programming, Programming 2017, Brussels, Belgium, April 3-6, 2017. pp. 9:1–9:6. ACM (2017). https://doi.org/10.1145/3079368, https://doi.org/10.1145/3079368.3079386 13. Zarrieß, B.: Complexity of projection with stochastic actions in a probabilistic description logic. In: Thielscher, M., Toni, F., Wolter, F. (eds.) Principles of Knowledge Representation and Reasoning: Proceedings of the Sixteenth Interna- tional Conference, KR 2018, Tempe, Arizona, 30 October - 2 November 2018. pp. 514–523. AAAI Press (2018), https://aaai.org/ocs/index.php/KR/KR18/paper/ view/18050