LDK R Logics for Data and Knowledge Representation Description Logics (ALC)

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.
Chapter 7 Reasoning about Knowledge by Neha Saxena Id: 13 CS 267.
Part 6: Description Logics. Languages for Ontologies In early days of Artificial Intelligence, ontologies were represented resorting to non-logic-based.
Basics of Reasoning in Description Logics
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.
Presented by:- Somya Gupta( ) Akshat Malu ( ) Swapnil Ghuge ( ) Franz Baader, Ian Horrocks, and Ulrike Sattler.
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 Modal Logic Originally by Alessandro Agostini and Fausto Giunchiglia Modified by Fausto Giunchiglia,
LDK R Logics for Data and Knowledge Representation PL of Classes.
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
5. Semantics of Web Services XML, Google: The syntactic web Web Services and WSDL Classical procedure invocation based on: Procedure names Parameter types.
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
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
Presentation transcript:

LDK R Logics for Data and Knowledge Representation Description Logics (ALC)

Outline  Overview  Syntax  Semantics  TBox  ABox  Tableau Algorithm 2

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

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

ClassL as a DL-language  Introduction of the ⊔ and elimination of roles ∀ R.C and ∃ R. ⊤  Formation rules: ::= A | B |... | P | Q |... | ⊥ | ⊤ ::= | ¬ | ⊓ | ⊔  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. 5 OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

AL* Interpretation (∆,I)  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} 6 The SAME as in ClassL OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

Interpretation of Existential Quantifier  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. 7 b I(C) a (a,b) ∈ I(R) 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. Interpretation of Value Restriction 8 b I(C) a if (a,b) ∈ I(R) b' b'' if (a,b') ∈ I(R) if (a,b'') ∈ I(R) OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

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

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

Terminology (TBox), same as in ClassL  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 11 PhD ≡ Postgraduate ⊓ ≥3Publish Parent ≡ Person ⊓ ∃ hasChild.Person hasGrandChild ⊑ hasChild Equality axiom Definition Inclusion axiom Specialization TBOX Subsumption Equivalence OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

Reasoning with a TBox T, same as ClassL Given two class-propositions P and Q, we want to reason about:  Satisfiability w.r.t. TT ⊨ 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 12 OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

ABox, syntax  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), … 13 Student(paul) Professor(fausto) Teaches(Fausto, LDKR) OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

ABox, semantics  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 a I ∈ ∆ I, namely I(a) = a I ∈ ∆ I I (C(a)) = a I ∈ C I, I(R(a, b)) = (a I, b I ) ∈ R I  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 a I is the actual individual of the domain. 14 OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

Reasoning Services, same as ClassL 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). 15 OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

Tableaux Calculus  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. 16 OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

Preview example 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.AC2 = ∃ 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)} 17 OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

The Tableau Algorithm  The formula C in input is translated into Negation Normal Form.  If there is a TBox, we expand the ABox w.r.t. the TBox.  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) 18 OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

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’ Transformation rules  ⊓ -rule Condition: A contains (C1 ⊓ C2)(x) Action: A’ = A ∪ {C1(x), C2(x)} 19 OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

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. Transformation rules  ⊔ -rule Condition: A contains (C1 ⊔ C2)(x) Action: A’ = A ∪ {C1(x)} or A’’ = A ∪ {C2(x)} 20 OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

Transformation rules  ∃ -rule Condition: A contains ( ∃ R.C)(x) Action: A’ = A ∪ {C(z), R(x,z)} 21 OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM 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) …

Transformation rules  ∀ -rule Condition: A contains ( ∀ R.C)(x) and R(x,z) Action: A’ = A ∪ {C(z)} 22 OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM 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)

Example of Tableau Reasoning  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 23 OVERVIEW :: SYNTAX :: SEMANTICS :: TBOX :: ABOX :: TABLEAU ALGORITHM

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