Description logics (DL) are a family of formal knowledge representation languages. Many DLs are more expressive than propositional logic but less expressive than first-order logic. In contrast to the latter, the core reasoning problems for DLs are (usually) decidable, and efficient decision procedures have been designed and implemented for these problems. There are general, spatial, temporal, spatiotemporal, and fuzzy description logics, and each description logic features a different balance between expressive power and reasoning complexity by supporting different sets of mathematical constructors.[1]

DLs are used in artificial intelligence to describe and reason about the relevant concepts of an application domain (known as terminological knowledge). It is of particular importance in providing a logical formalism for ontologies and the Semantic Web: the Web Ontology Language (OWL) and its profiles are based on DLs. The most notable application of DLs and OWL is in biomedical informatics where DL assists in the codification of biomedical knowledge.[citation needed]

Introduction

edit

A description logic (DL) models concepts, roles and individuals, and their relationships.

The fundamental modeling concept of a DL is the axiom—a logical statement relating roles and/or concepts.[2] This is a key difference from the frames paradigm where a frame specification declares and completely defines a class.[2]

Nomenclature

edit

Terminology compared to FOL and OWL

edit

The description logic community uses different terminology than the first-order logic (FOL) community for operationally equivalent notions; some examples are given below. The Web Ontology Language (OWL) uses again a different terminology, also given in the table below.

Synonyms
FOL OWL DL
constant individual individual
unary predicate class concept
binary predicate property role

Naming convention

edit

There are many varieties of description logics and there is an informal naming convention, roughly describing the operators allowed. The expressivity is encoded in the label for a logic starting with one of the following basic logics:

  Attributive language. This is the base language which allows:
  • Atomic negation (negation of concept names that do not appear on the left-hand side of axioms)
  • Concept intersection
  • Universal restrictions
  • Limited existential quantification
  Frame based description language,[3] allows:
  • Concept intersection
  • Universal restrictions
  • Limited existential quantification
  • Role restriction
  Existential language, allows:
  • Concept intersection
  • Existential restrictions (of full existential quantification)

Followed by any of the following extensions:

  Functional properties, a special case of uniqueness quantification.
  Full existential qualification (existential restrictions that have fillers other than  ).
  Concept union.
  Complex concept negation.
  Role hierarchy (subproperties: rdfs:subPropertyOf).
  Limited complex role inclusion axioms; reflexivity and irreflexivity; role disjointness.
  Nominals. (Enumerated classes of object value restrictions: owl:oneOf, owl:hasValue).
  Inverse properties.
  Cardinality restrictions (owl:cardinality, owl:maxCardinality), a special case of counting quantification
  Qualified cardinality restrictions (available in OWL 2, cardinality restrictions that have fillers other than  ).
  Use of datatype properties, data values or data types.

Exceptions

edit

Some canonical DLs that do not exactly fit this convention are:

  An abbreviation for   with transitive roles.
  A sub-language of  , which is obtained by disallowing role restriction. This is equivalent to   without atomic negation.
  A sub-language of  , which is obtained by disallowing limited existential quantification.
  Alias for  .[4]

Examples

edit

As an example,   is a centrally important description logic from which comparisons with other varieties can be made.   is simply   with complement of any concept allowed, not just atomic concepts.   is used instead of the equivalent  .

A further example, the description logic   is the logic   plus extended cardinality restrictions, and transitive and inverse roles. The naming conventions aren't purely systematic so that the logic   might be referred to as   and other abbreviations are also made where possible.

The Protégé ontology editor supports  . Three major biomedical informatics terminology bases, SNOMED CT, GALEN, and GO, are expressible in   (with additional role properties).

OWL 2 provides the expressiveness of  , OWL-DL is based on  , and for OWL-Lite it is  .

History

edit

Description logic was given its current name in the 1980s. Previous to this it was called (chronologically): terminological systems, and concept languages.

Knowledge representation

edit

Frames and semantic networks lack formal (logic-based) semantics.[5] DL was first introduced into knowledge representation (KR) systems to overcome this deficiency.[5]

The first DL-based KR system was KL-ONE (by Ronald J. Brachman and Schmolze, 1985). During the '80s other DL-based systems using structural subsumption algorithms[5] were developed including KRYPTON (1983), LOOM (1987), BACK (1988), K-REP (1991) and CLASSIC (1991). This approach featured DL with limited expressiveness but relatively efficient (polynomial time) reasoning.[5]

In the early '90s, the introduction of a new tableau based algorithm paradigm allowed efficient reasoning on more expressive DL.[5] DL-based systems using these algorithms — such as KRIS (1991) — show acceptable reasoning performance on typical inference problems even though the worst case complexity is no longer polynomial.[5]

From the mid '90s, reasoners were created with good practical performance on very expressive DL with high worst case complexity.[5] Examples from this period include FaCT,[6] RACER (2001), CEL (2005), and KAON 2 (2005).

DL reasoners, such as FaCT, FaCT++,[6] RACER, DLP and Pellet,[7] implement the method of analytic tableaux. KAON2 is implemented by algorithms which reduce a SHIQ(D) knowledge base to a disjunctive datalog program.

Semantic web

edit

The DARPA Agent Markup Language (DAML) and Ontology Inference Layer (OIL) ontology languages for the Semantic Web can be viewed as syntactic variants of DL.[8] In particular, the formal semantics and reasoning in OIL use the   DL.[9] The DAML+OIL DL was developed as a submission to[10]—and formed the starting point of—the World Wide Web Consortium (W3C) Web Ontology Working Group.[11] In 2004, the Web Ontology Working Group completed its work by issuing the OWL[12] recommendation. The design of OWL is based on the   family of DL[13] with OWL DL and OWL Lite based on   and   respectively.[13]

The W3C OWL Working Group began work in 2007 on a refinement of - and extension to - OWL.[14] In 2009, this was completed by the issuance of the OWL2 recommendation.[15] OWL2 is based on the description logic  .[16] Practical experience demonstrated that OWL DL lacked several key features necessary to model complex domains.[2]

Modeling

edit

In DL, a distinction is drawn between the so-called TBox (terminological box) and the ABox (assertional box). In general, the TBox contains sentences describing concept hierarchies (i.e., relations between concepts) while the ABox contains ground sentences stating where in the hierarchy, individuals belong (i.e., relations between individuals and concepts). For example, the statement:

Every employee is a person (1)

belongs in the TBox, while the statement:

Bob is an employee (2)

belongs in the ABox.

Note that the TBox/ABox distinction is not significant, in the same sense that the two "kinds" of sentences are not treated differently in first-order logic (which subsumes most DL). When translated into first-order logic, a subsumption axiom like (1) is simply a conditional restriction to unary predicates (concepts) with only variables appearing in it. Clearly, a sentence of this form is not privileged or special over sentences in which only constants ("grounded" values) appear like (2).

So why was the distinction introduced? The primary reason is that the separation can be useful when describing and formulating decision-procedures for various DL. For example, a reasoner might process the TBox and ABox separately, in part because certain key inference problems are tied to one but not the other one ('classification' is related to the TBox, 'instance checking' to the ABox). Another example is that the complexity of the TBox can greatly affect the performance of a given decision-procedure for a certain DL, independently of the ABox. Thus, it is useful to have a way to talk about that specific part of the knowledge base.

The secondary reason is that the distinction can make sense from the knowledge base modeler's perspective. It is plausible to distinguish between our conception of terms/concepts in the world (class axioms in the TBox) and particular manifestations of those terms/concepts (instance assertions in the ABox). In the above example: when the hierarchy within a company is the same in every branch but the assignment to employees is different in every department (because there are other people working there), it makes sense to reuse the TBox for different branches that do not use the same ABox.

There are two features of description logic that are not shared by most other data description formalisms: DL does not make the unique name assumption (UNA) or the closed-world assumption (CWA). Not having UNA means that two concepts with different names may be allowed by some inference to be shown to be equivalent. Not having CWA, or rather having the open world assumption (OWA) means that lack of knowledge of a fact does not immediately imply knowledge of the negation of a fact.

Formal description

edit

Like first-order logic (FOL), a syntax defines which collections of symbols are legal expressions in a description logic, and semantics determine meaning. Unlike FOL, a DL may have several well known syntactic variants.[8]

Syntax

edit

The syntax of a member of the description logic family is characterized by its recursive definition, in which the constructors that can be used to form concept terms are stated. Some constructors are related to logical constructors in first-order logic (FOL) such as intersection or conjunction of concepts, union or disjunction of concepts, negation or complement of concepts, universal restriction and existential restriction. Other constructors have no corresponding construction in FOL including restrictions on roles for example, inverse, transitivity and functionality.

Notation

edit

Let C and D be concepts, a and b be individuals, and R be a role.

If a is R-related to b, then b is called an R-successor of a.

Conventional Notation
Symbol Description Example Read
  ⊤ is a special concept with every individual as an instance   top
  empty concept   bottom
  intersection or conjunction of concepts   C and D
  union or disjunction of concepts   C or D
  negation or complement of concepts   not C
  universal restriction   all R-successors are in C
  existential restriction   an R-successor exists in C
  Concept inclusion   all C are D
  Concept equivalence   C is equivalent to D
  Concept definition   C is defined to be equal to D
  Concept assertion   a is a C
  Role assertion   a is R-related to b

The description logic ALC

edit

The prototypical DL Attributive Concept Language with Complements ( ) was introduced by Manfred Schmidt-Schauß and Gert Smolka in 1991, and is the basis of many more expressive DLs.[5] The following definitions follow the treatment in Baader et al.[5]

Let  ,   and   be (respectively) sets of concept names (also known as atomic concepts), role names and individual names (also known as individuals, nominals or objects). Then the ordered triple ( ,  ,  ) is the signature.

Concepts
edit

The set of   concepts is the smallest set such that:

  • The following are concepts:
    •   (top is a concept)
    •   (bottom is a concept)
    • Every   (all atomic concepts are concepts)
  • If   and   are concepts and   then the following are concepts:
    •   (the intersection of two concepts is a concept)
    •   (the union of two concepts is a concept)
    •   (the complement of a concept is a concept)
    •   (the universal restriction of a concept by a role is a concept)
    •   (the existential restriction of a concept by a role is a concept)
Terminological axioms
edit

A general concept inclusion (GCI) has the form   where   and   are concepts. Write   when   and  . A TBox is any finite set of GCIs.

Assertional axioms
edit

  • A concept assertion is a statement of the form   where   and C is a concept.
  • A role assertion is a statement of the form   where   and R is a role.

An ABox is a finite set of assertional axioms.

Knowledge base
edit

A knowledge base (KB) is an ordered pair   for TBox   and ABox  .

Semantics

edit

The semantics of description logics are defined by interpreting concepts as sets of individuals and roles as sets of ordered pairs of individuals. Those individuals are typically assumed from a given domain. The semantics of non-atomic concepts and roles is then defined in terms of atomic concepts and roles. This is done by using a recursive definition similar to the syntax.

The description logic ALC

edit

The following definitions follow the treatment in Baader et al.[5]

A terminological interpretation   over a signature   consists of

  • a non-empty set   called the domain
  • a interpretation function   that maps:
    • every individual   to an element  
    • every concept to a subset of  
    • every role name to a subset of  

such that

  •  
  •  
  •   (union means disjunction)
  •   (intersection means conjunction)
  •   (complement means negation)
  •  
  •  

Define   (read in I holds) as follows

TBox
edit
  •   if and only if  
  •   if and only if   for every  
ABox
edit
  •   if and only if  
  •   if and only if  
  •   if and only if   for every  
Knowledge base
edit

Let   be a knowledge base.

  •   if and only if   and  

Inference

edit

Decision problems

edit

In addition to the ability to describe concepts formally, one also would like to employ the description of a set of concepts to ask questions about the concepts and instances described. The most common decision problems are basic database-query-like questions like instance checking (is a particular instance (member of an ABox) a member of a given concept) and relation checking (does a relation/role hold between two instances, in other words does a have property b), and the more global-database-questions like subsumption (is a concept a subset of another concept), and concept consistency (is there no contradiction among the definitions or chain of definitions). The more operators one includes in a logic and the more complicated the TBox (having cycles, allowing non-atomic concepts to include each other), usually the higher the computational complexity is for each of these problems (see Description Logic Complexity Navigator for examples).

Relationship with other logics

edit

First-order logic

edit

Many DLs are decidable fragments of first-order logic (FOL)[5] and are usually fragments of two-variable logic or guarded logic. In addition, some DLs have features that are not covered in FOL; this includes concrete domains (such as integer or strings, which can be used as ranges for roles such as hasAge or hasName) or an operator on roles for the transitive closure of that role.[5]

Fuzzy description logic

edit

Fuzzy description logics combines fuzzy logic with DLs. Since many concepts that are needed for intelligent systems lack well defined boundaries, or precisely defined criteria of membership, fuzzy logic is needed to deal with notions of vagueness and imprecision. This offers a motivation for a generalization of description logic towards dealing with imprecise and vague concepts.

edit

Description logic is related to—but developed independently of—modal logic (ML).[5] Many—but not all—DLs are syntactic variants of ML.[5]

In general, an object corresponds to a possible world, a concept corresponds to a modal proposition, and a role-bounded quantifier to a modal operator with that role as its accessibility relation.

Operations on roles (such as composition, inversion, etc.) correspond to the modal operations used in dynamic logic.[17]

Examples

edit
Syntactic variants
DL ML
  K[5]
  PDL[17]
  DPDL (deterministic PDL)[17]
  Converse-PDL[17]
  Converse-DPDL (deterministic PDL)[17]

Temporal description logic

edit

Temporal description logic represents—and allows reasoning about—time dependent concepts and many different approaches to this problem exist.[18] For example, a description logic might be combined with a modal temporal logic such as linear temporal logic.

See also

edit

References

edit
  1. ^ Sikos, Leslie F. (2017). Description Logics in Multimedia Reasoning. Cham: Springer International Publishing. doi:10.1007/978-3-319-54066-5. ISBN 978-3-319-54066-5. S2CID 3180114.
  2. ^ a b c Grau, B. C.; Horrocks, I.; Motik, B.; Parsia, B.; Patel-Schneider, P. F.; Sattler, U. (2008). "OWL 2: The next step for OWL" (PDF). Web Semantics: Science, Services and Agents on the World Wide Web. 6 (4): 309–322. doi:10.1016/j.websem.2008.05.001.
  3. ^ Levesque, Hector J.; Brachmann, Ronald J. (1987). "Expressiveness and tractability in knowledge representation and reasoning". Computational Intelligence. 3 (3): 78–93. doi:10.1111/j.1467-8640.1987.tb00176.x. S2CID 30031046.
  4. ^ Maier, Frederick; Mutharaju, Raghava; Hitzler, Pascal (2010). "Distributed Reasoning with EL++ Using MapReduce". Computer Science and Engineering Faculty Publications. Technical Report, Kno.e.sis Center, Wright State University, Dayton, Ohio. Retrieved 2016-08-24.
  5. ^ a b c d e f g h i j k l m n o Franz Baader, Ian Horrocks, and Ulrike Sattler Chapter 3 Description Logics. In Frank van Harmelen, Vladimir Lifschitz, and Bruce Porter, editors, Handbook of Knowledge Representation. Elsevier, 2007.
  6. ^ a b Tsarkov, D.; Horrocks, I. (2006). "FaCT++ Description Logic Reasoner: System Description" (PDF). Automated Reasoning. Lecture Notes in Computer Science. Vol. 4130. pp. 292–297. CiteSeerX 10.1.1.65.2672. doi:10.1007/11814771_26. ISBN 978-3-540-37187-8.
  7. ^ Sirin, E.; Parsia, B.; Grau, B. C.; Kalyanpur, A.; Katz, Y. (2007). "Pellet: A practical OWL-DL reasoner" (PDF). Web Semantics: Science, Services and Agents on the World Wide Web. 5 (2): 51–53. doi:10.1016/j.websem.2007.03.004. S2CID 101226. Archived from the original (PDF) on 2007-06-27.
  8. ^ a b Ian Horrocks and Ulrike Sattler Ontology Reasoning in the SHOQ(D) Description Logic, in Proceedings of the Seventeenth International Joint Conference on Artificial Intelligence, 2001.
  9. ^ Fensel, D.; Van Harmelen, F.; Horrocks, I.; McGuinness, D. L.; Patel-Schneider, P. F. (2001). "OIL: An ontology infrastructure for the Semantic Web". IEEE Intelligent Systems. 16 (2): 38–45. CiteSeerX 10.1.1.307.9456. doi:10.1109/5254.920598.
  10. ^ Ian Horrocks and Peter F. Patel-Schneider The Generation of DAML+OIL. In Proceedings of the 2001 Description Logic Workshop (DL 2001), volume 49 of CEUR <http://ceur-ws.org/>, pages 30–35, 2001.
  11. ^ Web Ontology Working Group Charter, 2003
  12. ^ W3C Press Release, 2004
  13. ^ a b Horrocks, I.; Patel-Schneider, Peter; van Harmelen, Frank (2003). "From SHIQ and RDF to OWL: The making of a Web Ontology Language" (PDF). Web Semantics: Science, Services and Agents on the World Wide Web. 1: 7–26. CiteSeerX 10.1.1.2.7039. doi:10.1016/j.websem.2003.07.001. S2CID 8277015.
  14. ^ OWL Working Group Charter, 2007
  15. ^ Hitzler, Pascal; Krötzsch, Markus; Parsia, Bijan; Patel-Schneider, Peter F.; Rudolph, Sebastian (27 October 2009). "OWL 2 Web Ontology Language Primer". OWL 2 Web Ontology Language. World Wide Wed Consortium. Retrieved 2010-12-14.
  16. ^ Pascal Hitzler; Markus Krötzsch; Sebastian Rudolph (August 25, 2009). Foundations of Semantic Web Technologies. CRCPress. ISBN 978-1-4200-9050-5.
  17. ^ a b c d e Schild, Klaus. "Correspondence theory for terminological logics: Preliminary Report" (PDF). KIT Report 91. KIT-BACK. Retrieved 2012-10-25.
  18. ^ Alessandro Artale and Enrico Franconi "Temporal Description Logics". In "Handbook of Temporal Reasoning in Artificial Intelligence", 2005.

Further reading

edit
edit

Reasoners

edit

There are some semantic reasoners that deal with OWL and DL. These are some of the most popular:

  • CEL is an open source LISP-based reasoner (Apache 2.0 License).
  • Cerebra Engine was a commercial C++-based reasoner, acquired in 2006 by webMethods.
  • FaCT++ is a free open-source C++-based reasoner.
  • KAON2 is a free (for non-commercial use) Java-based reasoner, offering fast reasoning support for OWL ontologies.
  • MSPASS is a free open-source C reasoner for numerous DL models.
  • Pellet is a dual-licensed (AGPL and proprietary) commercial, Java-based reasoner.
  • RacerPro of Racer Systems was a commercial (free trials and research licenses are available) lisp-based reasoner, today both an open source version of RACER exists from the original developers at Lübeck University using the BSD 3 license, and also a commercialized version, still named RacerPro by Franz Inc.
  • Sim-DL is a free open-source Java-based reasoner for the language ALCHQ. It also provides a similarity measurement functionality between concepts. To access this functionality a Protégé plugin can be used.
  • HermiT is an open-source reasoner based on the "hypertableau" calculus. It is developed by the University of Oxford.
  • Owlready2 is a package for ontology-oriented programming in Python. It can load OWL 2.0 ontologies as Python objects, modify them, save them, and perform reasoning via HermiT (included). Owlready2 allows a transparent access to OWL ontologies (contrary to usual Java-based API).

Editors

edit

Interfaces

edit