Tableau Algorithm.

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

Query Answering based on Standard and Extended Modal Logic Evgeny Zolin The University of Manchester
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
Knowledge Representation and Reasoning using PowerLoom Presenter Shamima Mithun.
Combining the strengths of UMIST and The Victoria University of Manchester A Tableaux Decision Procedure for SHOIQ Ian Horrocks and Ulrike Sattler University.
Approximate Inference Techniques and Their Applications to the Semantic Web Perry Groot IPA Fall days, 26 November 2004.
USCISIUSCISI Loom: Basic Concepts Thomas A. Russ USC Information Sciences Institute.
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.
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.
Description Logics Franz Baader, Ian Horrocks, Ulrike Sattler Presented By Jahan Ara Arju Muhammad Nazmus Sakib CSCE
An Introduction to Description Logics. What Are Description Logics? A family of logic based Knowledge Representation formalisms –Descendants of semantic.
Computing & Information Sciences Kansas State University Wednesday, 08 Oct 2008CIS 530 / 730: Artificial Intelligence Lecture 17 of 42 Wednesday, 08 October.
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
Description Logics. What Are Description Logics? A family of logic based KR formalisms – Descendants of semantic networks and KL-ONE – Describe domain.
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.
Description Logics.
LDK R Logics for Data and Knowledge Representation Modal Logic Originally by Alessandro Agostini and Fausto Giunchiglia Modified by Fausto Giunchiglia,
1 How to decide Query Containment under Constraints using a Description Logic Ian Horrocks, Ulrike Sattler, Sergio Tessaris, and Stephan Tobies presented.
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.
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.
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
CSE-291: Ontologies in Data Integration Department of Computer Science & Engineering University of California, San Diego CSE-291: Ontologies in Data Integration.
5. Semantics of Web Services XML, Google: The syntactic web Web Services and WSDL Classical procedure invocation based on: Procedure names Parameter types.
Knowledge Repn. & Reasoning Lec #11+13: Frame Systems and Description Logics UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2004.
Knowledge Representation and Reasoning University "Politehnica" of Bucharest Department of Computer Science Fall 2011 Adina Magda Florea
Of 29 lecture 15: description logic - introduction.
An Efficient Tableau Prover Using Global Caching for the Description Logic ALC Linh Anh Nguyen University of Warsaw CS&P’2008.
CSE-291: Ontologies in Data Integration Department of Computer Science & Engineering University of California, San Diego CSE-291: Ontologies in Data Integration.
Logics for Data and Knowledge Representation Exercises: DL.
LDK R Logics for Data and Knowledge Representation Description Logics: family of languages.
Knowledge Representation and Inference Dr Nicholas Gibbins 32/3019.
LDK R Logics for Data and Knowledge Representation Description Logics.
Logics for Data and Knowledge Representation
Description Logic Reasoning
Logics for Data and Knowledge Representation
Description Logics.
ece 720 intelligent web: ontology and beyond
Description Logic: A Formal Foundation for Languages and Tools
Introduction to Description Logics
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
Logics for Data and Knowledge Representation
Presentation transcript:

Tableau Algorithm

Presentation Outline Description Logics Reasoning Tasks Structural Subsumption Tableau Algorithm Examples Q & A

DL Basics Concepts (unary predicates/formulae with one free variable) E.g., Person, Doctor, HappyParent Roles (binary predicates/formulae with two free variables) E.g., hasChild, loves, hasBrother, hasDaughter Individuals (constants) E.g., John, Mary, Italy Operators (for forming concepts and roles) restricted so that: Satisfiability/subsumption is decidable and, if possible, of low complexity

DL Semantics Interpretation function I Interpretation domain I Individuals iI 2 I John Mary Concepts CI µ I Lawyer Doctor Vehicle Roles rI µ I £ I hasChild owns (Lawyer u Doctor)

DL Knowledge Base A TBox is a set of “schema” axioms (sentences), e.g.: {Doctor v Person, HappyParent ´ Person u 8hasChild.(Doctor t 9hasChild.Doctor)} An ABox is a set of “data” axioms (ground facts), e.g.: {John:HappyParent, John hasChild Mary} A Knowledge Base (KB) is just a TBox plus an ABox

Example of TBox Woman ≡ Person Female Man ≡ Person ¬Woman Mother ≡ Woman hasChild.Person Father ≡ Man hasChild.Person Parent ≡ Father Mother Grandmother ≡ Mother hasChild.Parent MotherWithManyChildren ≡ Mother  3 hasChild MotherWithoutDaughter ≡ Mother hasChild.¬Woman Wife ≡ Woman hasHusband.Man

Example of ABox MotherWithoutDaughter(mary) Father(peter) hasChild(mary, peter) hasChild(peter, harry) hasChild(mary, paul)

Reasoning Tasks Whether a TBox description is satisfiable (i.e., non-contradictory) Whether one description subsumes another one in a TBox - organize the concepts of a terminology into a hierarchy according to their generality Find out whether the set of assertions in a ABox is consistent (has a model) Whether the assertions in the ABox entail that a particular individual is an instance of a given concept description A concept description can also be conceived as a query - retrieve the individuals that satisfy the query.

Types of Reasoning The simplest form of reasoning involves computing the subsumption relation between two concept expressions, i.e., verifying whether one expression always denotes a subset of the objects denoted by another expression. Parent is a specialization of Person, i.e., Person subsumes Parent A B

Types of Reasoning A more complex reasoning task consists in checking whether a certain assertion is logically implied by a knowledge base. For example, Bill is an instance of Parent

Structural Subsumption Normalize descriptions Compare syntactical structure of normal forms Normal form of C: A1 ⊓ …⊓ Am ⊓ ∀R1.C1⊓…⊓∀Rn.Cn Normal form of D: B1 ⊓ …⊓ Bk ⊓ ∀S1.D1⊓…⊓∀Sl.Dl C ⊑ D iff: For all i, 1 <= i <= k, there exists j, 1<=j<=m, such that Bi=Aj For all i, 1 <= i <= l, there exists j, 1<=j<=n, such that Si=Rj and Ci ⊑ Dj

Structural Subsumption C ≡ Person Person hasChild.(Lawyer Doctor Rockstar) D ≡ Person hasChild.Doctor hasChild.Lawyer C ⊑ D? Yes C: Person Person hasChild.Lawyer hasChild.Doctor hasChild.Rockstar D: Person hasChild.Doctor hasChild.Lawyer

Structural Subsumption What if we introduce disjunction C: A ⊔ (B ⊓ E) D: A ⊔ E C ⊑ D? Cannot be handled with structural subsumption Solution: Tableau

Tableau Algorithm Instead of directly testing subsumption of concept descriptions, these algorithms use negation to reduce subsumption to (un)satisfiability of concept descriptions. Steps Check unsatisfiability of the concept (C ⊑ D -> C ⊓ ¬D) Check whether you can construct an instance b of this concept Try to build a tree like model of the input concept Concept in Negation Normal Form Decomposition using Tableau rules Stop when clash occurs or no more rules are applicable If each branch in tableau contains a clash, the concept is inconsistent

Negation Normal Form Rewrite Description such that only atomic roles and concepts are negated Rewrite Rules ¬(C ⊓ D) -> ¬C ⊔ ¬D ¬(C ⊔ D) -> ¬C ⊓ ¬D ∀R.C -> ∃R.¬C ∃R.C -> ∀R. ¬C Example ¬∃R.A ⊓ ∃R.B ⊓ ¬ (A ⊓ B) ⊓ ¬∀R.(A ⊔ B) ∀R.¬A ⊓ ∃R.B ⊓ (¬A ⊔ ¬ B) ⊓ ∃R. ¬ (A ⊔ B) then (¬A ⊓ ¬ B)

Transformation rules ⊓-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)(Anna) 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)}

Transformation rules ⊔-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(Anna) 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 Action: A’ = A ∪ {C(z), R(x,z)} 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(Anna) 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), but not C(z) Action: A’ = A ∪ {C(z)} T={DaughterParent≡∀hasChild.Female, Male⊓Female⊑⊥} A={hasChild(Anna,Bob), ¬Female(Bob)} Is DaughterParent(Anna) 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)

Examples Example 1 Example 2 DL knowledge base vegan ≐ person ⊓ ∀eats.plant vegetarian ≐ person ⊓ ∀eats.(plants ⊔ dairy) Query: vegan ⊑ vegetarian Example 2 Query: vegetarian ⋢ vegan

Example-1 DL knowledge base vegan ≐ person ⊓ ∀eats.plant vegetarian ≐ person ⊓ ∀eats.(plants ⊔ dairy) Query: vegan ⊑ vegetarian Convert to vegan ⊓ ¬ vegetarian is unsatisfiable

Example-1 Unfold and normalise vegan ⊓ ¬ vegetarian A0 =( person ⊓ ∀eats.plant ⊓ (¬ person ⊔ ∃eats.(¬ plant ⊓ ¬ dairy))(x) Apply ⊓-rule and add to C0: A1 = A0 U {person(x), ∀eats.plant(x), (¬ person ⊔ ∃eats.(¬ plant ⊓ ¬ dairy))(x)}

Example-1 Apply ⊔-rule to ¬ person ⊔ ∃eats.(¬ plant ⊓ ¬ dairy): A1 = {person(x), ∀eats.plant(x), (¬ person ⊔ ∃eats.(¬ plant ⊓ ¬ dairy))(x)} Add ¬ person to A1: Clash Go back and add ∃eats.(¬ plant ⊓ ¬ dairy) to A1 A2= A1 U {∃eats.(¬ plant ⊓ ¬ dairy) (x)} Apply ∃-rule to ∃eats.(¬ plant ⊓ ¬ dairy): A3= A2 U {(¬ plant ⊓ ¬ dairy) (y), eats(x,y)} Apply ∀-rule to ∀eats.plant (x) in A1 and eats(x, y) in A3 Add plant(y) to A3

Example-1 Apply ⊓-rule to ¬ plant ⊓ ¬ dairy in A3 Add {¬ plant(y), ¬ dairy(y)} to A3: Clash Conclusion Both applications of the ⊔-rule have lead to clashes So vegan ⊓ ¬ vegetarian is unsatisfiable So vegan ⊑ vegetarian

Example-2 Query: vegetarian ⋢ vegan Convert to vegetarian ⊓ ¬ vegan is satisfiable Unfold and normalise vegetarian ⊓ ¬ vegan person ⊓ ∀eats.(plant ⊔ dairy) ⊓ (¬ person ⊔ ∃eats. ¬ plant) A0 = {person ⊓ ∀eats.(plant ⊔ dairy) ⊓ (¬ person ⊔ ∃eats. ¬ plant)} (x)

Example-2 Apply ⊓-rule and add to A0: A1= A0 U {person(x), ∀eats.(plant ⊔ dairy) (x),(¬person ⊔ ∃eats.¬plant) (x)} Apply ⊔-rule to ¬person ⊔ ∃eats.¬ plant: Add ¬person (x) to A1: Clash Go back and add ∃eats.¬plant to A1 Apply ∃-rule to ∃eats.¬ plant: A2 = A1 U{¬plant(y), eats(x,y)}

Example-2 Apply ∀-rule to ∀eats.(plant ⊔ dairy) in A1 A2 = A1 U {(plant ⊔ dairy)(y)} Apply ⊔-rule to plant ⊔ dairy in A2 Add plant (y) to A2: Clash Go back and add dairy(y) to A2 Conclusion No more rules are applicable So vegetarian ⊓ ¬ vegan is satisfiable So vegetarian ⋢ vegan