A Uniform Framework for Concept Definitions in Description Logics

Most modern formalisms used in Databases and Artificial Intelligence for describing an application domain are based on the notions of class (or concept) and relationship among classes. One interesting feature of such formalisms is the possibility of defining a class, i.e., providing a set of properties that precisely characterize the instances of the class. Many recent articles point out that there are several ways of assigning a meaning to a class definition containing some sort of recursion. In this paper, we argue that, instead of choosing a single style of semantics, we achieve better results by adopting a formalism that allows for different semantics to coexist. We demonstrate the feasibility of our argument, by presenting a knowledge representation formalism, the description logic muALCQ, with the above characteristics. In addition to the constructs for conjunction, disjunction, negation, quantifiers, and qualified number restrictions, muALCQ includes special fixpoint constructs to express (suitably interpreted) recursive definitions. These constructs enable the usual frame-based descriptions to be combined with definitions of recursive data structures such as directed acyclic graphs, lists, streams, etc. We establish several properties of muALCQ, including the decidability and the computational complexity of reasoning, by formulating a correspondence with a particular modal logic of programs called the modal mu-calculus.


Introduction
Most modern formalisms used in Databases and Arti cial Intelligence for representing an application domain are based on the notions of class (or concept) and relationship among classes.For example, the object-oriented and semantics data models developed in Databases describe data in terms of classes (sometimes called entity types) and incorporate several features for establishing various forms of relationships between classes.On the other hand, the notion of class (often called concept or frame) and that of link among classes are provided in all structured formalisms for Knowledge Representation (frame-based languages, semantic networks, description logics, etc.).Finally, this notion is also present in several type systems of programming languages, specially those based on the object-oriented paradigm.
There are basically two ways of using and describing classes (concepts).In the rst one, which we can call the prescriptive approach, the description formalism allows for expressing a number of properties of a class, thus prescribing constraints that the instances of the class must satisfy.In the second one, which we can call the de nitional approach, the formalism allows for providing the de nition of a class, i.e., a set of properties that precisely characterc 1997 AI Access Foundation and Morgan Kaufmann Publishers.All rights reserved.
ize the instances of the class.While the prescriptive approach is quite well understood and established, the de nitional approach is still the subject of an interesting debate, regarding both its nature and its semantic foundation.In particular, it is well known that there are various ways to assign a meaning to a class de nition when it contains some sort of recursion (Baader, 1990(Baader, , 1991;;Nebel, 1991;Beneventano & Bergamaschi, 1992;Beeri, 1990).
In this paper, we are concerned with the semantic problems related to the de nitional approach, arguing that, instead of choosing a single style of semantics for the knowledge representation formalism, we achieve better results by allowing di erent semantics to coexist.
We discuss this issue in the context of Description Logics 1 , which are logics originally developed in Knowledge Representation to provide a formal reconstruction of frame-based languages.Description logics describe the domain of interest in terms of concepts, which represent classes of individuals, and roles, which are binary relations used to specify properties or attributes of individuals as well as links with other individuals (Nebel, 1990).Starting from atomic concepts, denoted simply by a name, more complex concepts are built by using a suitable set of constructs.For example, the expression parent u male u 8child:male denotes the concept of father (male parent) whose children are all male.The symbol u denotes the construct for concept conjunction, while 8 denotes universal role quanti cation.
Typically, concepts are structured into hierarchies determined by the properties associated with them.The hierarchical structure is de ned in such a way that more speci c concepts inherit the properties of the more general ones.
We introduce a description logic, called ALCQ, which extends the well-known description logic ALC (Schmidt-Schau & Smolka, 1991) by including the so called quali ed number restrictions, which are a very general form of cardinality constraints on roles, and special xpoint constructs, which enable us to capture the various semantics for recursive de nitions within a single formalism.Notably, the availability of these constructs makes it possible to combine the usual frame-based descriptions with de nitions of recursive data structures such as directed acyclic graphs, lists, streams, etc.
We establish several properties of ALCQ, including the decidability and the computational complexity of reasoning, by formulating a correspondence with a particular modal logic of programs called the modal mu-calculus.
Recent articles, (e.g., Bergamaschi & Sartori, 1992;Borgida, 1992), advocate the use of description logics as a unifying framework for several types of database and knowledge representation formalisms.Indeed, it is possible to show that, depending on both the constructs and the semantics used, one can capture several database models and programming language type systems by using description logics.Therefore, the study presented in this paper is not merely con ned to description logics, but is also applicable to other representation formalisms.
The paper is organized as follows.In Section 2, we present the basic notions regarding both description logics and xpoints.In Section 3, we motivate our approach through a detailed discussion about the di erent semantics of concept de nitions that have been considered in the literature, and we argue for a formalism in which the various semantics coexist.In Section 4, we present one such formalism, namely the logic ALCQ, and we 1.Also called Concept Languages or Terminological Languages.discuss several of its properties.In Section 5 we study reasoning techniques for ALCQ and expose the correspondence with modal mu-calculus.Finally, in Section 6, we draw the conclusions and discuss some open problems.

Preliminaries
In this section, we brie y present the basic notions regarding both description logics, and xpoints.The interested reader is referred to (Nebel, 1990) and(de Bakker, 1980) for a more complete introduction to the subjects.

Description Logics
Description logics allow one to represent a domain of interest in terms of concepts and roles.Concepts model classes of individuals, while roles model relationships between classes.
Starting with atomic concepts (denoted by A) and atomic roles (denoted by R), which are concepts and roles described simply by a name, complex concepts and roles can be built by means of suitable constructs.
In this section, we concentrate on the description logic ALCQ, obtained from the wellknown description logic ALC (Schmidt-Schau & Smolka, 1991) by including quali ed number restrictions.These are cardinality constraints on the role llers of a very general form, where role llers to which a constraint applies are selected by means of a generic concept expression, the quali er.
ALCQ concepts (denoted by C or D, possibly with a subscript) are composed inductively according to the following abstract syntax (n denotes a natural number): C ::= A j > j ?j :C j C 1 u C 2 j C 1 t C 2 j 9R:C j 8R:C j ( n R:C) j ( n R:C): These constructs are not all independent.The following equalities hold: > = A t :A, ?= :>, 8R:C = :9R::C, and ( n R:C) = :( n + 1 R:C).
From a semantic point of view, concepts are interpreted as subsets of an abstract domain, while roles are interpreted as binary relations over such a domain.More precisely, an interpretation I = ( I ; I ) consists of a domain of interpretation I , and an interpretation function I mapping every atomic concept A to a subset of I and every atomic role R to a subset of I I .
The interpretation function I is extended to complex concepts of ALCQ (note that in ALCQ roles are always atomic) as follows: > I = I ?I = ; (: = fs 2 I j 9s 0 : (s; s 0 ) 2 R I and s 0 2 C I g (8R:C) I = fs 2 I j 8s 0 : (s; s 0 ) 2 R I implies s 0 2 C I g ( n R:C) I = fs 2 I j #fs 0 j (s; s 0 ) 2 R I and s 0 2 C I g ng ( n R:C) I = fs 2 I j #fs 0 j (s; s 0 ) 2 R I and s 0 2 C I g ng where #S denotes the cardinality of the set S.
A concept C is satis able i there exists an interpretation I such that C I 6 = ;, otherwise C is unsatis able.A concept C 1 is subsumed by a concept C 2 , written as C 1 v C 1 , i for every interpretation I, C I 1 C I 2 .Our knowledge expressed in terms of concepts and roles is assembled into a special knowledge base, traditionally called TBox, which consists of a nite (possibly empty) set of assertions.In order to be as general as possible, we assume that every assertion has the form of an inclusion assertion (or simply inclusion): without any restriction on the form of the concepts C 1 and C 2 .A pair of inclusions of the form fC 1 v C 2 ; C 2 v C 1 g is often written as C 1 C 2 and is called equivalence assertion.
An interpretation I satis es an inclusion C 1 v C 2 i C I 1 C I 2 .An interpretation I is a model of a TBox K i I satis es all inclusions in K.
Let K be a TBox.We say that a concept C is satis able in K, i there exists a model I of K such that C I 6 = ;, unsatis able otherwise.We say that a concept C 1 is subsumed by a concept C 2 in K, written K j = C 1 v C 2 , i for every model I of K, C I 1 C I 2 .

Fixpoints
We brie y recall few notions on xpoints.Consider the equation: where f is an operator from 2 S to 2 S (2 S denotes the set of all subsets of a set S). Every solution E of this equation is called a xpoint of the operator f (while every set E such that f(E) E is called pre-xpoint, and every set E such that E f(E) is called post-xpoint).
In general, an equation as the one above may have either no solution, a nite number of solutions, or an in nite number of them.Among the various solutions, the smallest and the greatest solutions (with respect to set-inclusion) have a prominent position, if they exist.A fundamental result due to Tarski (Tarski, 1955) guarantees the existence and the uniqueness of both such solutions in case f is monotonic wrt set-inclusion ( ), where f is monotonic wrt whenever E 1 E 2 implies f(E 1 ) f(E 2 ).Theorem 1 (Tarski) Let S be a set, and f an operator from 2 S to 2 S that is monotonic wrt .Then: There exists a unique least xpoint of f, which is given by T fE S j f(E) Eg.There exists a unique greatest xpoint of f, which is given by S fE S j E f(E)g.

Concept De nitions as Equations
We now analyze the notion of concept de nition in detail.Let us ignore for the moment knowledge bases as they have been introduced in the previous section, and let us consider a di erent kind of assertion: the de nition statement.Let the form of a de nition statement (or simply de nition) be: where A is an atomic concept which cannot appear in the left-hand side of other de nition statements, and C is a concept expression in ALCQ.In principle, A = def C is intended to provide an exact account for the concept to A in terms of C, i.e., to de ne A as the set of the individuals satisfying C.
In specifying the semantics of de nitions, we need to distinguish between two di erent types of atomic concepts, namely, primitive concepts and de ned concepts.Given a set of de nition statements, the primitive concepts are the atomic concepts that do not appear in the left-hand side of any de nition statement, whereas the de ned concepts are those that appear in the left-hand side of a de nition statement.
Given an interpretation I = ( I ; I ), the interpretation function I directly assigns a subset of I to primitive concepts, but not to de ned concepts.The meaning of a de ned concept A is assigned through its de nition statement A = def C, extending the interpretation function so as the following requirement is satis ed: A I = C I : (1) Consider, for example, the de nition statement: parent = def 9child:>: Note that the de ned concept parent does not appear in the body of its de nition statement.By (1), the de nition statement provides the de nition for the concept parent, in the following sense: in any interpretation I = ( I ; I ), parent I denotes a single subset of I , exactly the one denoted by (9child:>) I , i.e., fs j 9t:(s; t) 2 child I g.In general, if a concept A is de ned in terms of primitive and already de ned concepts, then for every interpretation I there exists a unique way to extend the interpretation function to de ned concepts, and hence there is no doubt that the de nition statement provides a de nition of A. Now, consider the following de nition statement: A = def 9child:A: Given an interpretation I = ( I ; I ), by (1) the statement is interpreted as the equation: A I = fs 2 I j 9t:(s; t) 2 child I and t 2 A I g: However such equation does not specify univocally how to extend the interpretation function I to the de ned concept A, since ; satis es the equation as well as any set of individuals where each member has an in nite chain of descendants that are also members.
In general, we call recursive de nition statements 2 (or simply recursive de nitions), de nition statements of the form: A = def F(A) where F(A) stands for a concept that has A as a subconcept 3 .According to (1), the recursive de nition A = def F(A) is interpreted simply as a sort of equation specifying that, given an 2. Terminological cycles in (Baader, 1990(Baader, , 1991;;Nebel, 1991).In the present discussion, for sake of simplicity, we do not consider mutual recursive de nitions, as A = def F(B), B = def F 0 (A).We shall come back to this point later on.3. A subconcept of a concept C is any substring of C (including C itself) that is a concept, according to the syntax rules.
interpretation I, the subset of I that can be tied to the de ned concept A must satisfy the equation A I = F(A) I , i.e., must be one of its solutions.Observe that, in general, either none, one, or several subsets of I may exist which are solutions of the above equation.
Another convenient way to consider a de nition statement is to associate to it, for every interpretation I, an operator from subsets of I to subsets of I instead of an equation, so that the xpoints of the operator correspond to the solutions of the equation.For example, to the de nition A = def 9child:A we associate the operator: S:fs 2 I j 9t:(s; t) 2 child I and t 2 Sg for any interpretation I.In general as either none, one or multiple solutions exist for the equation associated with a recursive de nition, we have that either none, one or multiple xpoints exist for the corresponding operator.
In this situation the word \de nition" itself seems misleading: the body of the de nition does not give a complete account of the de ned concept.An additional criterion is needed for selecting solutions of the associated equation, or equivalently, xpoints of the associated operator.In other words in addition to (1), a criterion is needed to extend univocally the interpretations I to the de ned concepts.This observation has led to various semantics, each of which interprets recursive de nitions di erently, by choosing, a priori and once and for all, which solutions, or equivalently which xpoints, are to be assigned to the de ning concept of a recursive de nition4 .

Di erent Semantics for Recursive De nitions
In the literature on description logics, three semantics for recursive de nitions have been proposed (see Nebel, 1991):

Descriptive Semantics
Least Fixpoint Semantics Greatest Fixpoint Semantics and which of these semantics is the \right" one is a long standing matter of debate.Below we describe how each of the three semantics interprets recursive de nitions, and present some examples showing that the choice of the semantics depends in fact upon the concept to be de ned.But rst, it should be stressed that only the descriptive semantics is able to assign meaning to general inclusion assertions C 1 v C 2 introduced in the previous section.
According to the Descriptive Semantics, a recursive de nition A = def F(A) is a constraint stating that, for any I, A I has to be a solution of the equation A I = F(A) I .Under the descriptive semantics, A = def 9child:A simply states that the individuals in the class A have a child in the class A, and the individuals that have a child in the class A are themselves in the class A, where A is no better speci ed.In general the descriptive semantics is not appropriate to properly de ne recursive concepts, in the sense that, given an interpretation I, it is unable to assign a unique subset of I to the de ned concept of the recursive de nition.
In fact under descriptive semantics de nition statements are indistinguishable from the equivalence assertions introduced in the previous section.In other words, the meaning assigned to A = def F(A) is the same as that assigned to the equivalence assertion A F(A).
Although such equivalence assertions can be used to specify if-and-only-if constraints, they do not provide proper de nitions when recursion is involved.For example, we can express the fact that humans are mammals having parents that are humans, and on the converse, that mammals having parents that are humans are humans themselves, in terms of the equivalence assertion: human mammal u 9parent:> u 8parent:human: Similarly we may require horses to satisfy an analogous property: horse mammal u 9parent:> u 8parent:horse: However the two equivalence assertions above do not de ne human and horse as shown, e.g., by the fact that (correctly) they do not imply that all humans are horses and vice-versa (in contrast to what happen when a xpoint semantics is used, see below).
The Least Fixpoint Semantics interprets a recursive de nition statement A = def F(A) by assigning to A the smallest possible extension in each interpretation I, among those that satisfy A I = def F(A) I { i.e., the least xpoint of the corresponding operator.In fact it is always assumed that the operator associated with the de nition statement is monotonic, so that Theorem 1 applies and a least xpoint exists and is unique, i.e., the corresponding equation has a unique smallest solution.Hence under the least xpoint semantics the recursive de nition statement A = def F(A) de nes the concept A. It is easy to verify that in the example A = def 9child:A, the least xpoint semantics leads us to identify A with ?.
Indeed the empty set is a solution of the equation associated with the statement, and it is obviously the smallest solution.Similarly if we interpret the de nition statement: human = def mammal u 9parent:> u 8parent:human with the least xpoint semantics, we have that human I = ; for any interpretation I. Observe that if, as above, we adopt a similar de nition for horse, we get again horse I = ;, so we can trivially infer that horse human.
The least xpoint semantics is particularly suitable for providing inductive de nitions of concepts.For example, consider the class of a list (LIST) de ned as follows: An EMPTY-LIST is a LIST.
A NODE that has exactly one successor that is a LIST is a LIST.Nothing else is a LIST.The rst two conditions can be captured by the following recursive de nition statement 5 : list = def emptylist t (node u ( 1 succ:>) u 9succ:list) 5. Additionally we specify that the two concepts emptylist and node are disjoint.
where ( 1 succ:>) forces succ to be a function.To enforce the third condition we must assign the smallest possible extension to list.Thus, the class of LISTs can be naturally de ned by means of the above de nition statement, interpreted according to the least xpoint semantics.
The Greatest Fixpoint Semantics interprets a recursive de nition statement A = def F(A) by assigning to A the largest possible extension in each interpretation I, among those that satisfy A I = def F(A) I { i.e., the greatest xpoint of the corresponding operator.Again, it is assumed that such operator is monotonic in order to guaranty the existence an the unicity of the greatest xpoint (Theorem 1).As for the least xpoint semantics, under the greatest xpoint semantics a recursive de nition statement A = def F(A) de nes the concept A. For example, considering again the de nition statement A = def 9child:A, the greatest xpoint semantics leads us to interpret A as the class of all the individuals having a child that in turn is a member of A.
While the least xpoint semantics naturally captures classes de ned by induction, the greatest xpoint semantics naturally captures classes of individuals whose structure is nonwell-founded or co-inductive.An example is the class of STREAMs, modeling the wellknown linear data structure having a NODE as rst element, and such that the rest of the structure is a STREAM itself.Note that streams are similar to lists except that while lists can be considered as nite sequences of nodes, streams are in nite sequences of nodes.Such a class can be captured by the following recursive de nition statement: stream = def node u ( 1 succ:>) u 9succ:stream with the proviso that the greatest possible extension is assigned to stream.
Finally, consider under the greatest xpoint semantics the recursive de nition statements: human = def mammal u 9parent:> u 8parent:human horse = def mammal u 9parent:> u 8parent:horse: Although they do not assign the empty extension to both human and horse as the least xpoint semantics does, we do have again the rather counter intuitive consequence that human horse, since human I = horse I for any interpretation I.In general under both types of xpoint semantics the particular name used to denote a de ned concept does not have any impact on the interpretation of it, since the meaning of the de ned concept is completely speci ed by its de nition statement.

Least and Greatest Fixpoints as Concept Constructs
The above considerations show that arguing about which is the \right" semantics for recursive de nitions is not really an issue.Each of them captures an essential use of recursive equations: the descriptive semantics is appropriate to specify constraints on concepts and is the only one that extends to the general inclusion assertions introduced in Section 2; the least xpoint semantics is appropriate to de ne a structure inductively; the greatest xpoint semantics is the appropriate to de ne non-well-founded structures.Generally, we may need the three of them in the same knowledge base, in order to model the various properties of the di erent concepts.
Our proposal in this paper is exactly in the direction of reconciling the various semantics in the same knowledge base.This is pursued by means of a logic that incorporates two constructs, X:F(X) and X:F(X) (the symbols X; Y; : : : stand for concept variables), denoting, respectively, the least xpoint and the greatest xpoint of the operator associated with the de nition X = def F(X), that is, for every I, the smallest solution and the greatest solution of the equation X I = F(X) I .
In our approach, de nition statements will never appear in a TBox.Instead, a knowledge base will be simply a set of inclusion assertions (interpreted according to the descriptive semantics) that can involve xpoint constructs.For example, in order to specify the properties of the concepts of list, stream, human and horse we can use the following assertions 6 : list X:emptylist t (node u ( 1 succ:>) u 9succ:X) stream X:node u ( 1 succ:>) u 9succ:X human mammal u 9parent:> u 8parent:human horse mammal u 9parent:> u 8parent:horse: Note that, if we then add to the above knowledge base the equivalence assertion: mgm X : mammal u 9parent:> u 8parent:X de ning the concept mgm (mammal generated by mammal), then it correctly turns out that both human and horse are subsumed by mgm.
The availability of least and greatest xpoint constructs, by allowing di erent semantics to be used in the same TBox, makes it possible to model not only abstract classes, but also inductively and co-inductively de ned data structures, such as lists and streams.This is particularly important if our objective is to integrate class-based representation formalisms and programming systems (declarative or procedural), in order to make these formalisms more useful in practice.Furthermore, we have the possibility of nesting xpoints, thus going beyond the simple equational format by which we motivated their introduction.As an example, consider the following one: Among the inhabitants of the planet \Plonk", a disease called \foo" is quite common.Such a disease manifests itself in two forms: a \visible" one and a \latent" one, and it has a rather intricate hereditary pattern.Individuals that have the visible form transmit the visible form to at least one (say the rst) direct descendant (obviously, if there is any direct descendant), these ill descendants in turn do the same, and so on, until someone transmits the latent form of the disease.More precisely, along any chain of descendants, the visible form of the disease sooner or later is interrupted, because either an individual has no direct descendant or an individual transmits to some descendant the latent form.All direct descendants (if any) of an individual that has the latent form inherit the visible form.The pattern goes on like this, generation after generation, forever.
The hereditary pattern (foo hp) of the above disease can be de ned as follows: foo hp X: Y:((visible u (9child:Y t 8child:?))t (latent u 8child:(visible u X))) 6.We also include the assertion emptylist v :node, specifying that the concepts emptylist and node are disjoint.
where visible and latent denote the visible and the latent form respectively of the disease, and are assumed to be disjoint (latent v :visible).

The Description Logic ALCQ
We provide a formal account of the meaning of the xpoint constructs by introducing a description logic, called ALCQ, which is obtained by adding these constructs to ALCQ.
We make use of the notions of scope, bound and free occurrences of variables, closed formulae, etc.The de nitions of these notions are the same as the analogues in rst-order logic, treating and as quanti ers.In addition, we use the symbol as an abstraction for either or .
The primitive symbols in ALCQ are atomic concepts, (concept) variables (denoted by X; Y; : : :), and atomic roles which are the only roles admitted in the logic.
Concepts in ALCQ are formed inductively according to the following abstract syntax: C ::= A j > j ?j :C j C 1 u C 2 j C 1 t C 2 j 9R:C j 8R:C j ( n R:C) j ( n R:C) j X:C j X:C j X where A denotes an atomic concept, R an atomic role, n a natural number, and X a variable, and with the restriction that only a variable X occurring positively in C can be bounded by a xpoint in X:C.We say that a variable X occurs positively in a concept C, if every free occurrence of X is in the scope of an even number of negations, considering concepts C 0 in ( n R:C 0 ) in the scope of one negation.
The two xpoint constructs are mutually de nable: X:C = : X::C X=:X] (where C X=:X] is the concept obtained substituting all free occurrences of X by the concept :X).
As before, an interpretation I = ( I ; I ) consists of a domain of interpretation I , and a interpretation function I , which maps every atomic concept to a subset of I , and every atomic role to a subset of I I .But the presence of free variables does not allow us to extend the interpretation function I directly to every concept of the logic.For this reason we introduce valuations.A valuation on an interpretation I is a mapping from variables to subsets of I .
Given a valuation , we denote by X=E] the valuation identical to except for X=E](X) = E.In other words, for every variable Y Let I be an interpretation and a valuation on I.We assign meaning to concepts of the logic by associating to I and an extension function I , mapping concepts to subsets of I , as follows: = fs 2 I j 8s 0 : (s; s 0 ) 2 R I implies s 0 2 C I g ( n R:C) I = fs 2 I j #fs 0 j (s; s 0 ) 2 R I and s 0 2 C I g ng ( n R:C) I = fs 2 I j #fs 0 j (s; s 0 ) 2 R I and s 0 2 C I g ng ( X:C) I = T fE I j C I X=E] E g ( X:C) I = S fE I j E C I X=E] g In the last two cases C I X=E] is interpreted as an operator from subsets E of I to subsets of I .By the syntactic restriction enforced on variables, such an operator is guaranteed to be monotonic wrt .Notice that free variables appearing in a concept are interpreted similarly to atomic concepts.
A concept C is satis able, if there exists an interpretation I and a valuation on I such that C I 6 = ;, otherwise C is unsatis able.A concept C 1 is subsumed by a concept C 2 , written as C 1 v C 2 , if for every interpretation I and every valuation on I, (C 1 ) I (C 2 ) I .
A ALCQ TBox is a nite (possibly empty) set of inclusion assertions C 1 v C 2 where C 1 and C 2 are closed concepts of ALCQ.As before, we use equivalence assertions of the form C 1 C 2 as an abbreviation for fC 1 v C 2 ; C 2 v C 1 g.
An interpretation I satis es an inclusion assertion C 1 v C 2 , if (C 1 ) I (C 2 ) I , where is any valuation on I (being C 1 and C 2 closed, and hence independent from valuations).I is a model of a TBox K, if I satis es all inclusion assertions in K.We say that a TBox K is satis able, if it has a model.Observe that inclusion assertions in K are interpreted according to the descriptive semantics.
We say that a TBox K logically implies an inclusion assertion C 1 v C 2 , written K j = C 1 v C 2 , if for every model I of K and every valuation on I, (C 1 ) I (C 2 ) I .

Properties of the Fixpoint Constructs
In the following, we use the notation C(X) to indicate that the variable X occurs free in the concept C (other variables could occur free in C as well), and the notation C(D), where D is a concept, as a shorthand for C(X) X=D] (i.e., the concept obtained substituting all free occurrences of X in C(X) by the concept D).
Let us comment brie y on some simple properties of the logic.First, the concept X:C(X) is equivalent to the concept Y:C(Y ), as long as Y is free for X in C(X).Second, the extension function I assign to a closed concept a value which is independent of the actual valuation .Hence X:C, where X does not occur in C, is equivalent to C. Third, since X:C(X) is a xpoint we have that C( X:C(X)) is equivalent to X:C(X).Furthermore, we have that the concept X:C(X) is always subsumed by the concept X:C(X).
The next property is more substantial.Consider the class of a single source nite directed acyclic graphs (DAGs) de ned inductively as follows 7 : The EMPTY-DAG is a DAG (base step).A NODE that has connections and all connections are DAGs, is a DAG (inductive step).Nothing else is a DAG.
Consider now a ALCQ TBox K containing the two equivalence assertions: dag of student X : emptydag t (student u 9arc:> u 8arc:X) dag of person X : emptydag t (person u 9arc:> u 8arc:X) which de ne the concepts dag of student and dag of person as the classes of DAGs whose nodes are students and persons respectively.Assuming that students are persons, we want to be able to infer that DAGs of students are DAGs of persons as well.That is, we want: K j = student v person implies K j = dag of student v dag of person: It turns out that for ALCQ such a property holds.To prove this, we introduce the following two theorems.
Theorem 2 Let K be a ALCQ TBox, and C and D two ALCQ concepts in which a variable X occurs free positively.Then: K j = C v D implies K j = X:C v X:D: Proof We proceed by contradiction 8 .Assume that C I D I holds for all models I of K and all valuations on I.And suppose that there exists a model I of K and a valuation on I such that ( X:C) I 6 ( X:D) I .
First we prove the result for = .Let s be an individual in ( X:C) I but not in ( X:D) I .Now, we have: s 2 ( X:C) I i 8E I : s 6 2 ( X:D) I i 9E 0 I : (D I X=E 0 ] E 0 and s 6 2 E 0 ): (3) For the set E 0 in (3), the following expression holds: C I X=E 0 ] D I X=E 0 ] E 0 7.We assume that a leaf of a DAG is a NODE with all arcs leading to a special DAG called EMPTY-DAG.
As an alternative, one can assume that a leaf of a DAG is a NODE having no connection at all.In the latter case, the de nition of dag would simplify to dag = def node u 8arc:dag (in which the general form of inductive de nitions { i.e., base case and inductive case { is less apparent).8.For uniformity, we do not distinguish if X occurs free or not.Obviously if X does not occur free, the result is trivial.
hence by (2) we have s 2 E 0 and by (3) we have s 6 2 E 0 , which is impossible.
The proof for = is similar.Let s be an individual in ( X:C) I but not in ( X:D) I .Now, we have: s 2 ( X:C) I i 9E 00 I : (E 00 C I X=E 00 ] and s 2 E 00 ) (4) s 6 2 ( X:D) I i 8E I : (E D I X=E] implies s 6 2 E): (5) For the set E 00 in (4), the following expression holds: E 00 C I X=E 00 ] D I X=E 00 ] hence by (4) we have s 2 E 00 and by (5) we have s 6 2 E 00 , which is impossible. 2 Above we have de ned what it means for a variable X to occur positively in a concept C. Similarly we say that a variable X occurs negatively in a concept C, if every free occurrence of X is in the scope of an odd number of negations, considering concepts C 0 in ( n R:C 0 ) in the scope of one negation.
Theorem 3 Let K be a ALCQ TBox, and D(X) a ALCQ concept with the variable X as a free variable.Then, for any ALCQ concepts C 1 and C 2 : Proof We prove the result by induction on the formation of D(X).
Base case.If D(X) = X, the result holds trivially.
Inductive cases.If D(X) has the form :D 0 (X) j ( n R:C 0 ) , then X occurs positively (negatively) in D 0 (X) and negatively (positively) in D(X).By induction hypothesis K j = D 0 (C i ) v D 0 (C j ) (where i; j 2 f1; 2g and i 6 = j) and hence by the semantics of the constructs K j then X occurs positively (negatively) both in D 0 (X) and in D(X).By induction hypothesis K j = D 0 (C i ) v D 0 (C j ) and hence by the semantics of the constructs K j = D(C i ) v D(C j ).It remains to prove the result for D(X) = Y:D 0 (X) (Y 6 = X).In this case, by the syntactic restriction enforced, Y occurs positively in D 0 (X) and hence by Theorem 2 we have , thus by induction hypothesis we are done.2 Going back to our example, we can, in fact, infer that DAGs of students are also DAGs of persons.Indeed, by applying Theorem 3 and then Theorem 2, we have that K j = student v person implies K j = X:emptydagt(studentu9arc:>u8arc:X) v X:emptydagt(personu 9arc:> u 8arc:X).

Internalizing Assertions
We now show that logical implication in ALCQ TBoxes (thus also satis ability of ALCQ TBoxes) is reducible to unsatis ability of a single ALCQ concept.To prove this result, we introduce the notions of generated sub-interpretation and sub-valuation 9 .
Let I = ( I ; I ) be an interpretation, a valuation on I, and s 2 I an individual.We de ne the interpretation I s = ( I s ; I s ), and the valuation s on I s , as follows: I s = fs 0 2 I j (s; s 0 ) 2 (R I 1 : : : R I m ) g.
For each atomic role R i , we have R I s i = R I i \ ( I s I s ).For each atomic concept A, we have A I s = A I \ I s .For each variable X, we have s (X) = (X) \ I s .We call I s the sub-interpretation of I generated by s, and s the sub-valuation of generated by s.
For generated sub-interpretations and sub-valuations we can state the following lemma.
Lemma 4 Let C be a ALCQ concept.Then for any interpretation I, any valuation on I, and any individual s 2 I , we have: 8t 2 I s : t 2 C I i t 2 C I s s : Proof Without loss of generality, we consider concepts formed according to the following simpli ed abstract syntax: C ::= A j ?j :C j C 1 u C 2 j 9R:C j ( n R:C) j X:C j X: We prove the result by induction on the number of nested xpoint constructs.Base case.If in C there are no xpoint constructs, the thesis can be proven by induction on the formation of C. Inductive case.We assume that the thesis holds for concepts C with k nested xpoint constructs, and we prove it for concepts X:C with k + 1.We recall that, by the Tarski-Knaster Theorem on xpoints (Tarski, 1955), t 2 ( X:C) I i there exists an ordinal such that t 2 ( X:C) I , where ( X:C) I is de ned by trans nite induction as: ( 0 X:C) I = ; ( +1 X:C) I = C I X=( X:C) I ] ( X:C) I = S < ( X:C) I , if is a limit ordinal.
Hence we proceed by trans nite induction on ordinals .
Base case of the trans nite induction.0 X:C is de ned as ?, thus trivially we have t 2 ( 0 X:C) I i t 2 ( 0 X:C) I s s .
Successor case of the trans nite induction.We want to show that t 2 ( +1 X:C) I i t 2 ( +1 X:C) I s s , which reduces to: t 2 C I X=( X:C) I ] i t 2 C I s s X=( X:C) I s s ] : (6) 9. Together these notions play the same role as that of generated sub-model in modal logics.
Proof If part.By contradiction.Assume that ( 9) is not satis able, and suppose that K 6 j = C v D, i.e., there exists an interpretation I, and a valuation on I, such that I is a model of K and C I 6 D I .It follows that, there exists an individual s 2 I such that s 2 C I and s 2 (:D) I .On the other hand, the fact that I is a model of K implies that (C K ) I = I , and thus that ( X:(8R 1 :X u : : : u 8R m :X u C K )) I = I .So we have s 2 ( X:(8R 1 :X u : : : u 8R m :X u C K ) u C u :D) I , i.e., ( 9) is satis able, contradicting the hypotheses.
Only If part.Again we proceed by contradiction.Assume K j = C v D. And suppose that ( 9) is satis able, i.e., there exists an interpretation I, a valuation on I, and an individual s 2 I , such that s 2 ( X:(8R 1 :X u : : : u 8R m :X u C K ) u C u :D) I .Now consider the sub-interpretation I s = ( I s ; I s s ) and the sub-valuation s on I s generated by s.On the one hand, we clearly have that (C K ) I s s = I s , hence I s is a model of K. On the other hand by Lemma 4 s 2 ( X:(8R 1 :X u: : :u8R m :X uC K )uC u:D) I s s , so it follows that I s and s do not satisfy the subsumption C v D, contradicting the hypotheses.

2
This result states that satis ability of ALCQ concepts and logical implication in ALCQ TBoxes (and thus of satis ability of ALCQ TBoxes) are not distinct reasoning tasks.Hence in the following we will limit our attention to concept satis ability without loss of generality.

Reasoning with Fixpoints
In this section we concentrate on developing reasoning methods to check for satis ability concepts involving xpoints.In particular, we exhibit a correspondence between ALCQ and a well-known logic of programs, called modal mu-calculus (Kozen, 1983;Kozen & Parikh, 1983;Streett & Emerson, 1984, 1989), that has been recently investigated for expressing temporal properties of reactive and parallel processes (Stirling, 1992;Larsen, 1990;Cleaveland, 1990;Winsket, 1989;Dam, 1992).
To get a better insight on the correspondence between the two logics, we rst study the sublanguage ALC obtained from ALCQ leaving out quali ed number restrictions 10 .Then, we study the full logic ALCQ.

Reasoning in ALC
Let us introduce modal mu-calculus formally.Formulae ; ; : : : of modal mu-calculus are formed inductively from atomic formulae A; : : : and variables X; : : : according to the following abstract syntax: ; ::= A j > j ?j : j ^ j _ j hai j a] j X: j X: j X where a is the generic element of a set of labels L, and every bounded occurrence of every variable X must be in the scope of an even number of negation signs.
10. Observe that, in Theorem 5 quali ed number restrictions play no role.Hence exactly the same reduction from logical implication to unsatis ability holds for ALC as well.This allows us to restrict our attention to satis ability only.
Proof The satis ability problem for modal mu-calculus is EXPTIME-complete (Emerson & Jutla, 1988), hence by Theorem 6 and by Theorem 5 the thesis follows. 2 5.2 Reasoning in ALCQ Next we exhibit a mapping from ALCQ concepts to formulae of variant of modal mucalculus, called deterministic modal mu-calculus, which has the same syntax as the modal mu-calculus, but is interpreted over deterministic Kripke structures, that is Kripke structures M = (S; fR i j i 2 Lg; V) in which the relations R i are partial functions (Streett & Emerson, 1984).
Let us ignore for a moment the quali ed number restriction constructs.Formulae of ALCQ without quali ed number restrictions are, in fact, formulae of the modal mucalculus, as shown in the previous section.By using a well-known technique developed for propositional dynamic logic (Parikh, 1981), (nondeterministic) modal mu-calculus formulae can be reduced to deterministic modal mu-calculus formulae (Streett & Emerson, 1984), as shown below.
We use the following notations for usual operations on binary relations: for chaining, for re exive transitive closure, + for transitive closure, and for converse.We also use the following abbreviations: R ] for X:( ^ R]X) R + ] for R] R ] hR i for X:( _ hRiX) hR + i for hRihR i : The reduction is as follows: in a formula , we recursively replace each subformulae of the form R] by R] (R new ) ] and each subformulae of the form hRi by hRih(R new ) i , where R new is a new symbol and both R and R new in the resulting formula are interpreted as partial functions.Let us call the resulting formula 0 , we have that is satis able if and only if 0 is satis able.
We brie y sketch the reasoning behind the proof of this statement.The if direction is easy: it su ces to observe that if M D = (S D ; fR D i j i 2 L D g; V D ) is a model of 0 , then can transform it into a model M = (S; fR i j i 2 Lg; V) of by de ning S = S D , L = L D new, R R = R D R (R D new ) , and V = V D .The only if direction is as follows.We recall that both nondeterministic and deterministic modal mu-calculus have the tree model property (Streett & Emerson, 1989, 1984): if a formula has a model it has a tree model, i.e., a model having the form of a tree 11 .So without loss of generality we can restrict our attention to tree models only.Now there is a one-to-one transformation from tree models M T = (S T ; fR T i j i 2 L T g; V T ) of to (tree) models M B = (S B ; fR B i j i 2 L B g; V B ) of 0 .Indeed, we put S B = S T , V B = V T , L B = L T , and given a state x 2 S T having as u(( n R:C)) = R] (R new ) ](:u(C) _ (R new ) + ](:u(C)_ (R new ) + ](: : : (:u(C) _ (R new ) + ]:u(C)) : : :))) where the number of nested formulae of the form :u(C) _ (R new ) + ] is n, and u(( n R:C)) =hRih(R new ) i(u(C) ^h(R new ) + i(u(C)ĥ (R new ) + i(: : : (u(C) ^h(R new ) + iu(C)) : : :))) where the number of nested formulae of the form u(C) ^h(R new ) + i is n 1. u(C) is clearly polynomial in the size of C (under the usual assumption that numbers in C coded in unary).Moreover, following the technique in (Parikh, 1981;Streett & Emerson, 1984) that as been exposed above, it is easy to verify, by induction on the formation of the concept C, that the mapping t preserves satis ability. 2 It follows that we may transfer both decidability and complexity results for the deterministic modal mu-calculus (Streett & Emerson, 1984;Emerson & Jutla, 1988;Safra, 1988) to ALCQ.Thus, we can immediately state what is the complexity of reasoning with ALCQ concepts and ALCQ TBoxes.Theorem 9 Satis ability of ALCQ concepts, satis ability of ALCQ TBoxes, and logical implication in ALCQ TBoxes are EXPTIME-complete problems.Proof Satis ability in deterministic modal mu-calculus is an EXPTIME-complete problem (Streett & Emerson, 1984;Emerson & Jutla, 1988;Safra, 1988).Hence by Theorem 8 and Theorem 5 the thesis follows. 2

Discussion and Conclusion
The work presented in this paper stems out from (De Giacomo, 1993), where the basic ideas of introducing explicit xpoint was rst presented, and (De Giacomo & Lenzerini, 1994b), where such idea was further elaborated and ALCQ was rst introduced.
One of the main contributions of this work has been to devise a tight correspondence between description logics with xpoints and modal mu-calculus.In this respect we remark that, while ALC corresponds directly to modal mu-calculus, the full ALCQ corresponds to a variant of modal mu-calculus whose decidability and complexity had not been studied.More precisely, a notion essentially equivalent to that of quali ed number restrictions has independently emerged in modal logics, namely that of graded modalities (Van der Hoek & de Rijke, 1995;Van der Hoek, 1992;Fattorosi-Barnaba & De Caro, 1985;Fine, 1972).However the combination of xpoints and graded modalities had not been investigated before in the setting of modal logics.Given the tight correspondence between ALC and modal mu-calculus, ALCQ can be considered as modal mu-calculus augmented with graded modalities.Hence the results in this paper apply to such a logic as well.
The research reported in this paper bears several similarities with the one on the correspondence between description logics and propositional dynamic logics (Baader, 1991;Schild, 1991;De Giacomo & Lenzerini, 1994a, 1995;De Giacomo, 1995).In fact what characterize description logics based on propositional dynamic logics are the role constructs for chaining, choice, test, and above all re exive transitive closure of roles, which is a limited form of xpoint.Such role constructs can be easily expressed by using the explicit xpoints introduced here.It su ce to resort to the following equivalences: 9R 1 R 2 :C = 9R 1 :9R 2 :C 9R 1 t R 2 :C = 9R 1 :C t 9R 2 :C 9R :C = X:(C t 9R:X) 9id(D):C = C u D: Note that 8R :C = X:(C u 8R:X).In (Calvanese, De Giacomo, & Lenzerini, 1995) a further implicit form of xpoint has been advocated, the so called well-founded role construct wf(R).By explicit xpoints, wf(R) is expressed simply as X:(8R:X).
Our proposal of allowing for xpoint constructs explicitly in the formalism is shared by the study independently carried out by Schild in (Schild, 1994) 14 .The main goal of that work is to study both the expressive power and the computational complexity of subsumption and satis ability for TBoxes expressed in ALC (no xpoint constructs), that allow for mutually recursive de nitions.To this end, a description logic is de ned that corresponds to a variant of the modal mu-calculus in which mutual xpoints are allowed but some restrictions on nested xpoints are enforced (Vardi & Wolper, 1984).It is well known that mutual xpoints can be re-expressed by means of nested ones (see, for example, Park, 1976;de Bakker, 1980).As a consequence of this observation it follows that the logic introduced in this paper, is more expressive than the one analyzed in (Schild, 1994) since, on the one hand, it allows nesting of xpoints without any restriction, on the other hand it makes it possible to state sophisticated forms of cardinality constraints on role llers by means of quali ed number restrictions.
The present work can be extended along several directions.We conclude by outlining two of them.
We already noticed that xpoint constructs allow for representing not only abstract classes, but also several data structures extensively used in software development.We believe that this characteristic is an important step towards a satisfactory integration of description logics with both traditional and declarative programming systems.Indeed the description logic proposed in this paper provides powerful mechanisms for data structure modeling.In particular, the properties stated in Section 4.1 can be the base to formulate a notion of parametric concept15 .For instance, the expression (named dag of Z]) X : emptydag t (Z u 9arc:> u 8arc:X) where Z is a formal parameter, denotes the class of DAGs whose nodes are left unspeci ed.This class can be used in several ways in the TBox.For example, it can be instantiated by binding the formal parameter to actual parameters, thus getting, say, dag of student], dag of person], etc., which are concepts inheriting the properties of dag of Z].
Although ALCQ is a powerful logic, it lacks the construct for inverse roles which is needed for example to correctly capture the notions of ( nite) TREE, BINARY-TREE, etc. Indeed, to de ne the concept of TREE (an EMPTY-TREE is a TREE; a NODE that has at most one parent, some children, and all children are TREEs, is a TREE; nothing else is a TREE) we can write tree X : empty treet(nodeu( 1 child :>)u9child:>u8child:X where child denotes the inverse of child.Notice that the introduction of inverse roles does not pose any di culty from the semantical point of view; however, its impact on the reasoning method needs to be investigated.More generally, a wide variety of concept constructs can be studied in conjunction with xpoints.The research on description logics related to propositional dynamic logics in (De Giacomo & Lenzerini, 1994a, 1995;Calvanese et al., 1995;De Giacomo, 1995) may give us hints on how to proceed along this direction.