Logics for Data and Knowledge Representation

Slides:



Advertisements
Similar presentations
Charting the Potential of Description Logic for the Generation of Referring Expression SELLC, Guangzhou, Dec Yuan Ren, Kees van Deemter and Jeff.
Advertisements

Completeness and Expressiveness
CS848: Topics in Databases: Foundations of Query Optimization Topics covered  Introduction to description logic: Single column QL  The ALC family of.
Knowledge Representation and Reasoning using Description Logic Presenter Shamima Mithun.
OWL - DL. DL System A knowledge base (KB) comprises two components, the TBox and the ABox The TBox introduces the terminology, i.e., the vocabulary of.
An Introduction to Description Logics
1 A Description Logic with Concrete Domains CS848 presentation Presenter: Yongjuan Zou.
LDK R Logics for Data and Knowledge Representation Description Logics: tableaux.
Part 6: Description Logics. Languages for Ontologies In early days of Artificial Intelligence, ontologies were represented resorting to non-logic-based.
FiRE Fuzzy Reasoning Engine Nikolaos Simou National Technical University of Athens.
LDK R Logics for Data and Knowledge Representation Description Logics as query language.
An Introduction to Description Logics. What Are Description Logics? A family of logic based Knowledge Representation formalisms –Descendants of semantic.
Tableau Algorithm.
Notes on DL Reasoning Shawn Bowers April, 2004.
Ming Fang 6/12/2009. Outlines  Classical logics  Introduction to DL  Syntax of DL  Semantics of DL  KR in DL  Reasoning in DL  Applications.
Query Answering Based on the Modal Correspondence Theory Evgeny Zolin University of Manchester Manchester, UK
LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1.
Topics in artificial intelligence 1/1 Dr hab. inż. Joanna Józefowska, prof. PP Reasoning and search techniques.
An Introduction to Description Logics (chapter 2 of DLHB)
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Description Logics: Logic foundation of Semantic Web Semantic.
Logics for Data and Knowledge Representation Exercises: DL.
LDK R Logics for Data and Knowledge Representation PL of Classes.
LDK R Logics for Data and Knowledge Representation Description Logics (ALC)
More on Description Logic(s) Frederick Maier. Note Added 10/27/03 So, there are a few errors that will be obvious to some: So, there are a few errors.
LDK R Logics for Data and Knowledge Representation Description Logics.
Knowledge Representation in Description Logic. 1. Introduction Description logic denotes a family of knowledge representation formalisms that model the.
DL Overview Second Pass Ming Fang 06/19/2009. Outlines  Description Languages  Knowledge Representation in DL  Logical Inference in DL.
4-Nov-05 CS6795 Semantic Web Techniques 1 Description Logic – 2.
LDK R Logics for Data and Knowledge Representation ClassL (Propositional Description Logic with Individuals) 1.
Logics for Data and Knowledge Representation Exercises: ClassL Fausto Giunchiglia, Rui Zhang and Vincenzo Maltese.
LDK R Logics for Data and Knowledge Representation ClassL (part 2): Reasoning with a TBox 1.
Description Logics Dr. Alexandra I. Cristea. Description Logics Description Logics allow formal concept definitions that can be reasoned about to be expressed.
ece 627 intelligent web: ontology and beyond
LDK R Logics for Data and Knowledge Representation Propositional Logic Originally by Alessandro Agostini and Fausto Giunchiglia Modified by Fausto Giunchiglia,
Complexity of Reasoning
Knowledge Repn. & Reasoning Lec #11+13: Frame Systems and Description Logics UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2004.
Logics for Data and Knowledge Representation ClassL (part 1): syntax and semantics.
Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea
Of 29 lecture 15: description logic - introduction.
Logics for Data and Knowledge Representation Exercises: DL.
LDK R Logics for Data and Knowledge Representation Description Logics: family of languages.
Ontology Technology applied to Catalogues Paul Kopp.
Knowledge Representation and Inference Dr Nicholas Gibbins 32/3019.
Logics for Data and Knowledge Representation ClassL (part 1): syntax and semantics.
LDK R Logics for Data and Knowledge Representation Description Logics.
1 Representing and Reasoning on XML Documents: A Description Logic Approach D. Calvanese, G. D. Giacomo, M. Lenzerini Presented by Daisy Yutao Guo University.
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
ece 720 intelligent web: ontology and beyond
Logics for Data and Knowledge Representation
The Propositional Calculus
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Description Logics.
Logics for Data and Knowledge Representation
Description logics (book, page 456)
Logics for Data and Knowledge Representation
CIS Monthly Seminar – Software Engineering and Knowledge Management IS Enterprise Modeling Ontologies Presenter : Dr. S. Vasanthapriyan Senior Lecturer.
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Logics for Data and Knowledge Representation
Presentation transcript:

Logics for Data and Knowledge Representation Description Logics

Outline Overview Syntax: the DL family of languages Semantics TBox ABox Tableau Algorithm

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Description Logics (DLs) is a family of KR formalisms TBox Representation Reasoning ABox Alphabet of symbols with two new symbols w.r.t. ClassL: ∀R (value restriction) ∃R (existential quantification) R are atomic role names

AL (Attributive language) OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Formation rules: <Atomic> ::= A | B | ... | P | Q | ... | ⊥ | ⊤ <wff> ::= <Atomic> | ¬<Atomic> | <wff> ⊓ <wff> | ∀R.C | ∃R.⊤ with no ⊔, ∃R.⊤ = limited existential quantifier, ¬ on atomic only Person ⊓ Female “persons that are female” Person ⊓ ∃hasChild.⊤ “(all those) persons that have a child” Person ⊓ ∀hasChild.⊥ “(all those) persons without a child” Person ⊓ ∀hasChild.Female “persons all of whose children are female”

ALU (AL with disjunction) OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Formation rules: <Atomic> ::= A | B | ... | P | Q | ... | ⊥ | ⊤ <wff> ::= <Atomic> | ¬<Atomic> | <wff> ⊓ <wff> | ∀R.C | ∃R.⊤ | <wff> ⊔ <wff> with ⊔ Person ⊓ (Mother ⊔ Father) “the people who are parents” Apple ⊓ (Red ⊔ Yellow) “red and yellow apples”

ALE (AL with extended existential) OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Formation rules: <Atomic> ::= A | B | ... | P | Q | ... | ⊥ | ⊤ <wff> ::= <Atomic> | ¬<Atomic> | <wff> ⊓ <wff> | ∀R.C | ∃R.⊤ | ∃R.C with ∃R.C (full existential quantification) Parent ⊓ ∃hasChild.Female “parents having at least a daughter” 6

ALN (AL with number restriction) OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Formation rules: <Atomic> ::= A | B | ... | P | Q | ... | ⊥ | ⊤ <wff> ::= <Atomic> | ¬<Atomic> | <wff> ⊓ <wff> | ∀R.C | ∃R.⊤ | ≥nR | ≤nR ≥nR (at-least number restriction) ≤nR (at-most number restriction) Parent ⊓ ≥2 hasChild “parents having at least two children” 7

ALC (AL with full concept negation) OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Formation rules: <Atomic> ::= A | B | ... | P | Q | ... | ⊥ | ⊤ <wff> ::= <Atomic> | ¬ <wff> | <wff> ⊓ <wff> | ∀R.C | ∃R.⊤ with full concept negation  (Mother ⊓ Father) “it cannot be both a mother and father” 8

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM AL’s extensions OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM By extending AL with any subsets of the above constructors yields a particular DL language. Each language is denoted by a string of the form: AL[U][E][N][C], where a letter in the name stands for the presence of the corresponding constructor. ALC is considered the most important for many reasons. NOTE: ALU ⊆ ALC and ALE ⊆ ALC

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM AL’s sub-languages OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM By eliminating some of the syntactical symbols and rules, we get some sub-languages of AL ClassL: the most important sub-language obtained by elimination in the AL family FL- and FL0 (where FL = frame language)

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM From AL to ClassL OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM ALUC with the elimination of roles ∀R.C and ∃R.⊤ Formation rules: <Atomic> ::= A | B | ... | P | Q | ... | ⊥ | ⊤ <wff> ::= <Atomic> | ¬ <wff> | <wff> ⊓ <wff> | <wff> ⊔ <wff> The new language is a description language without roles which is ClassL (also called propositional DL) NOTE: So far, we are considering DL without TBOX and ABox.

AL’s Contractions: FL- and FL0 OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM FL- is AL with the elimination of ⊤, ⊥ and  Formation rules: <Atomic> ::= A | B | ... | P | Q | ... <wff> ::= <Atomic> | <wff> ⊓ <wff> | ∀R.C | ∃R.⊤ FL0 is FL- with the elimination of ∃R.⊤ <wff> ::= <Atomic> | <wff> ⊓ <wff> | ∀R.C

AL* Interpretation (∆,I) OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM I(⊥) =∅ and I(⊤) = ∆ (full domain, “Universe”) For every concept name A of L, I(A) ⊆ ∆ I(¬C) = ∆ \ I(C) I(C⊓D) = I(C) ∩ I(D) I(C ⊔ D) = I(C) ∪ I(D) For every role name R of L, I(R) ⊆ ∆ × ∆ I(∀R.C) = {a ∈ ∆ | for all b, if (a,b)∈I(R) then b∈I(C)} I(∃R.⊤) = {a ∈ ∆ | exists b s.t. (a,b) ∈ I(R)} I(∃R.C) = {a ∈ ∆ | exists b s.t. (a,b) ∈ I(R), b ∈ I(C)} I(≥nR) = {a ∈ ∆ | |{b | (a, b) ∈ I(R)}| ≥ n} I(≤nR) = {a ∈ ∆ | |{b | (a, b) ∈ I(R)}| ≤ n} The SAME as in ClassL

Interpretation of Value Restriction OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM I(∀R.C) = {a ∈ ∆ | for all b, if (a,b)∈I(R) then b∈I(C)} Those a that have only values b in C with role R. b I(C) a if (a,b) ∈I(R) b' b'' if (a,b') ∈I(R) if (a,b'') ∈I(R)

Interpretation of Existential Quantifier OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM I(∃R.C) = {a ∈ ∆ | exists b s.t. (a,b) ∈ I(R), b ∈ I(C)} Those a that have some value b in C with role R. b I(C) a (a,b)∈I(R)

Interpretation of Number Restriction OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM I(≥nR) = {a∈∆ | |{b | (a, b) ∈ I(R)}|≥ n} Those a that have relation R to at least n individuals. ∆ a b b' … |{b | (a, b) ∈ I(R)}| ≥ n

Interpretation of Number Restriction Cont. OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM I(≤nR) = {a ∈ ∆ | |{b | (a, b) ∈ I(R)}| ≤n } Those a that have relation R to at most n individuals. ∆ b b' … a |{b | (a,b) ∈ I(R)}| ≤n

Terminology (TBox), same as in ClassL OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM A terminology (or TBox) is a set of definitions and specializations Terminological axioms express constraints on the concepts of the language, i.e. they limit the possible models The TBox is the set of all the constraints on the possible models Equivalence TBOX PhD ≡ Postgraduate ⊓ ≥3Publish Parent ≡ Person ⊓ ∃hasChild.Person hasGrandChild ⊑ hasChild Equality axiom Definition Inclusion axiom Specialization Subsumption 18

Reasoning with a TBox T, same as ClassL OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Given two class-propositions P and Q, we want to reason about: Satisfiability w.r.t. T T ⊨ P ? A concept P is satisfiable w.r.t. a terminology T, if there exists an interpretation I with I ⊨ θ for all θ ∈ T, and such that I ⊨ P, I(P)≠∅ Subsumption T ⊨ P ⊑ Q? T ⊨ Q ⊑ P? A concept P is subsumed by a concept Q w.r.t. T if I(P)  I(Q) for every model I of T Equivalence T ⊨ P ⊑ Q and T ⊨ Q ⊑ P? Two concepts P and Q are equivalent w.r.t. T if I(P) = I(Q) for every model I of T Disjointness T ⊨ P ⊓ Q ⊑ ⊥? Two concepts P and Q are disjoint with respect to T if their intersection is empty, I(P)  I(Q) = ∅, for every model I of T 19

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM ABox, syntax OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM In an ABox one introduces individuals, by giving them names, and one asserts properties about them. We denote individual names as a, b, c,… An assertion with concept C is called concept assertion (or simply assertion) in the form: C(a), C(b), C(c), … An assertion with Role R is called role assertion in the form: R(a, b), R(b, c), … Student(paul) Professor(fausto) Teaches(Fausto, LDKR) 20

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM ABox, semantics OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM An interpretation I: L  pow(∆I) not only maps atomic concepts to sets, but in addition it maps each individual name a to an element aI ∈ ∆I, namely I(a) = aI ∈ ∆I I (C(a)) = aI ∈CI, I(R(a, b)) = (aI, bI)∈RI Unique name assumption (UNA). We assume that distinct individual names denote distinct objects in the domain NOTE: ∆I denotes the domain of interpretation, a denotes the symbol used for the individual (the name), while aI is the actual individual of the domain. 21

Reasoning Services, same as ClassL OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Given an ABox A, we can reason (w.r.t. a TBox T) about the following: Satisfiability/Consistency: An ABox A is consistent with respect to T if there is an interpretation I which is a model of both A and T. Instance checking: checking whether an assertion C(a) or R(a,b) is entailed by an ABox, i.e. checking whether a belongs to C. A ⊨ C(a) if every I that satisfies A also satisfies C(a). A ⊨ R(a,b) if every I that satisfies A also satisfies R(a,b). Instance retrieval: given a concept C, retrieve all the instances a which satisfy C. Concept realization: given a set of concepts and an individual a find the most specific concept(s) C (w.r.t. subsumption ordering) such that A ⊨ C(a). 22

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Tableaux Calculus OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM The Tableaux calculus is a decision procedure to check satisfiability of a DL formula. The procedure looks for a model satisfying the formula in input The basic idea is to incrementally build the model by looking at the formula and by decomposing it into pieces in a top-down fashion. The procedure exhaustively tries all possibilities so that it can eventually prove that no model could be found and therefore the formula is unsatisfiable.

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Preview example OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM C = (∃R.A) ⊓ (∃R.B) ⊓ (∃R.(A ⊔ B)) C = (∃R.A) ⊓ (∃R.B) ⊓ (∃R.( A ⊓  B)) De Morgan In Negation Normal Form C is safisfiable iff I(C) ≠ ∅ for some I C1 = ∃R.A C2 = ∃R.B C3 = ∃R.( A ⊓  B) Decomposition For C1  ∃ (b,c) ∈ I(R) and c ∈ I(A) For C2  ∃ (b,d) ∈ I(R) and d ∈ I(B) For C3  ∃ (b,e) ∈ I(R) and e ∈ I( A ⊓  B)  e ∈ I( A) and I( B)  e must be a new symbol different from c and d. The following ABox is consistent with C: {R(b,c), A(c), R(b, d), B(d), R(b, e)} 24

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM The Tableau Algorithm OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM The formula C in input is translated into Negation Normal Form. An ABox A is incrementally constructed by adding assertions according to the constraints in C (identified by decomposition) following precise transformation rules Each time we have more than one option we split the space of the solutions as in a decision tree (i.e. in presence of ⊔) When a contradiction is found (i.e. A is inconsistent) we need to try another path in the space of the solutions (backtracking) The algorithm stops when either we find a consistent A satisfying all the constraints in C (the formula is satisfiable) or there is no consistent A (the formula is unsatisfiable) 25

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Transformation rules OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM ⊓-rule Condition: A contains (C1 ⊓ C2)(x), but not both C1(x) and C2(x) Action: A’ = A ∪ {C1(x), C2(x)} T={Mother ≡ Female ⊓ ∃hasChild.Person} A={Mother(Anna)} Is ¬∃hasChild.Person ⊓ ¬∃hasParent. Person) satisfiable? Expand A w.r.t. T Mother(Anna)  (Female ⊓ ∃hasChild.Person)(Anna)  A’ = A ∪ {Female(Anna), (∃hasChild.Person)(Anna)} (¬∃hasChild.Person ⊓ ¬∃hasParent.Person)(Anna)  A’ = A ∪ {¬∃hasChild.Person)(Anna), ¬∃hasParent.Person)(Anna)} Both of them must be true, but the first constraint is clearly in contradiction with A’ 26

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Transformation rules OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM ⊔-rule Condition: A contains (C1 ⊔ C2)(x), but neither C1(x) or C2(x) Action: A’ = A ∪ {C1(x)} and A’’ = A ∪ {C2(x)} T={Parent≡∃hasChild.Female⊔∃hasChild.Male, Person≡Male⊔Female, Mother≡Parent ⊓Female} A={Mother(Anna)} Is ¬∃hasChild.Person satisfiable? Expand A w.r.t. T A = {Mother(Anna)}  A’ = A ∪ {Parent(Anna), Female(Anna)} Parent(Anna)  (∃hasChild.Female⊔∃hasChild.Male)(Anna)  (∃hasChild.Female)(Anna) or (∃hasChild.Male)(Anna) Both are in contradiction with ¬∃hasChild.Person, not satisfiable. 27

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Transformation rules OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM ∃-rule Condition: A contains (∃R.C)(x), but there is no z such that both C(z) and R(x,z) are in A Action: A’ = A ∪ {C(z), R(x,z)} T={Parent≡∃hasChild.Female⊔∃hasChild.Male, Person≡Male⊔Female, Mother≡Parent⊓Female} A={Mother(Anna), hasChild(Anna,Bob), ¬Female(Bob)} Is ¬(∃hasChild.Person) satisfiable? Expand A w.r.t. T Mother(Anna)  Parent(Anna)  (∃hasChild.Female⊔∃hasChild.Male)(Anna) take (∃hasChild.Male)(Anna)  hasChild(Anna,Bob), Male(Bob) … 28

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Transformation rules OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM ∀-rule Condition: A contains (∀R.C)(x) and R(x,z), but it does not C(z) Action: A’ = A ∪ {C(z)} T={DaughterParent≡∀hasChild.Female, Male⊓Female⊑⊥} A={hasChild(Anna,Bob), ¬Female(Bob)} Is DaughterParent satisfiable? Expand A w.r.t. T DaughterParent(x)  ∀hasChild.Female(x)  Given that hasChild(Anna,Bob)  A’ = A ∪ {Female(Bob)} but this in contradiction with ¬Female(Bob) 29

Example of Tableau Reasoning OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Is ∀hasChild.Male ⊓ ∃hasChild.¬Male satisfiable? NOTE: we do not have an initial T or A (∀hasChild.Male ⊓ ∃hasChild.¬Male)(x)  A = {(∀hasChild.Male)(x), (∃hasChild.¬Male)(x)} ⊓-rule (∃hasChild.¬Male)(x)  A’ = A ∪ {hasChild(x,y), ¬Male(y)} ∃-rule (∀hasChild.Male)(x), hasChild(x,y)  A’’ = A’ ∪ Male(y) ∀-rule A’’ is clearly inconsistent

OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM Additional Rules OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

Complexity of Tableau Algorithms OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM The satisfiability algorithm of ALCN may need exponential time and space. It is PSPACE-complete. An optimized algorithm needs only polynomial space as it assumes a depth-first search and stores only the ‘correct’ path. The consistency and instance checking problem for ALCN are also PSPACE-complete. The complexity results for other Description Logics varies according to corresponding constructors.