hybrid logics and ontology languages ian horrocks information management group school of computer...

Post on 27-Mar-2015

217 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Hybrid Logics and Ontology Languages

Ian Horrocks<horrocks@cs.man.ac.uk>Information Management GroupSchool of Computer ScienceUniversity of Manchester

Talk Outline

• Introduction to Description Logics

• Ontologies and OWL• OWL ontology language• Ontology applications• Nominals in Ontology Languages

• Ontology Reasoning • Tableaux algorithms• Reasoning with nominals

• Conjunctive Query Answering• Using binders and state variables

• Summary

Introduction to Description Logics

What Are Description Logics?• A family of logic based Knowledge Representation formalisms

– Descendants of semantic networks and KL-ONE

– Describe domain in terms of concepts (classes), roles (properties, relationships) and individuals

• Distinguished by:

– Formal semantics (typically model theoretic)

• Decidable fragments of FOL (often contained in C2)

• Closely related to Propositional Modal, Hybrid & Dynamic Logics

• Closely related to Guarded Fragment

– Provision of inference services

• Decision procedures for key problems (satisfiability, subsumption, etc)

• Implemented systems (highly optimised)

DL Basics• Concepts (formulae)

– E.g., Person, Doctor, HappyParent, (Doctor t Lawyer)

• Roles (modalities)

– E.g., hasChild, loves

• Individuals (nominals)

– E.g., John, Mary, Italy

• Operators (for forming concepts and roles) restricted so that:

– Satisfiability/subsumption is decidable and, if possible, of low complexity

– No need for explicit use of variables

• Restricted form of 9 and 8 (direct correspondence with hii and [i])

– Features such as counting (graded modalities) succinctly expressed

The DL Family (1)• Smallest propositionally closed DL is ALC (equivalent to K(m))

– Concepts constructed using booleans

u, t, :, plus restricted quantifiers

9, 8– Only atomic roles

E.g., Person all of whose children are either Doctors or have a child who is a Doctor:

Person u 8hasChild.(Doctor t 9hasChild.Doctor)

The DL Family (1)• Smallest propositionally closed DL is ALC (equivalent to K(m))

– Concepts constructed using booleans

u, t, :, plus restricted quantifiers

9, 8– Only atomic roles

E.g., Person all of whose children are either Doctors or have a child who is a Doctor:

Person Æ [hasChild](Doctor Ç hhasChildiDoctor)

The DL Family (2)• S often used for ALC extended with transitive roles

– i.e., the union of K(m) and K4(m)

• Additional letters indicate other extensions, e.g.:

– H for role hierarchy (e.g., hasDaughter v hasChild)

– O for nominals/singleton classes (e.g., {Italy})

– I for inverse roles (converse modalities)

– Q for qualified number restrictions (graded modalities, e.g., hiim)

– N for number restrictions (graded modalities, e.g., hiim>)

• S + role hierarchy (H) + nominals (O) + inverse (I) + NR (N) = SHOIN

• SHOIN is the basis for W3C’s OWL Web Ontology Language

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)}

– i.e., a background theory (a set of non-logical axioms)

• An ABox is a set of “data” axioms (ground facts), e.g.:

{John:HappyParent,

John hasChild Mary}

– i.e., non-logical axioms including (restricted) use of nominals

DL Knowledge Base• A TBox is a set of “schema” axioms (sentences), e.g.:

{Doctor ! Person,

HappyParent $ Person Æ [hasChild](Doctor Ç hhasChildiDoctor)}

– i.e., a background theory (a set of non-logical axioms)

• An ABox is a set of “data” axioms (ground facts), e.g.:

{John ! HappyParent,

John ! hhasChildiMary}

– i.e., non-logical axioms including (restricted) use of nominals

• A Knowledge Base (KB) is just a TBox plus an Abox

Ontologies and OWL

• Semantic Web led to requirement for a “web ontology language”

• set up Web-Ontology (WebOnt) Working Group

– WebOnt developed OWL language

– OWL based on earlier languages OIL and DAML+OIL

– OWL now a W3C recommendation (i.e., a standard)

• OIL, DAML+OIL and OWL based on Description Logics

– OWL effectively a “Web-friendly” syntax for SHOIN

The Web Ontology Language OWL

OWL RDF/XML Exchange Syntax

<owl:Class> <owl:intersectionOf rdf:parseType=" collection"> <owl:Class rdf:about="#Person"/> <owl:Restriction> <owl:onProperty rdf:resource="#hasChild"/> <owl:allValuesFrom> <owl:unionOf rdf:parseType=" collection"> <owl:Class rdf:about="#Doctor"/> <owl:Restriction> <owl:onProperty rdf:resource="#hasChild"/> <owl:someValuesFrom rdf:resource="#Doctor"/> </owl:Restriction> </owl:unionOf> </owl:allValuesFrom> </owl:Restriction> </owl:intersectionOf></owl:Class>

E.g., Person u 8hasChild.(Doctor t 9hasChild.Doctor):

Class/Concept Constructors

• C is a concept (class); P is a role (property); xi is an individual/nominal

• XMLS datatypes as well as classes in 8P.C and 9P.C– Restricted form of DL concrete domains

Ontology Axioms

• OWL ontology equivalent to DL KB (Tbox + Abox)

Why (Description) Logic?• OWL exploits results of 15+ years of DL research

– Well defined (model theoretic) semantics

Why (Description) Logic?• OWL exploits results of 15+ years of DL research

– Well defined (model theoretic) semantics

– Formal properties well understood (complexity, decidability)

[Garey & Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. Freeman, 1979.]

I can’t find an efficient algorithm, but neither can all these famous people.

Why (Description) Logic?• OWL exploits results of 15+ years of DL research

– Well defined (model theoretic) semantics

– Formal properties well understood (complexity, decidability)

– Known reasoning algorithms

Why (Description) Logic?• OWL exploits results of 15+ years of DL research

– Well defined (model theoretic) semantics

– Formal properties well understood (complexity, decidability)

– Known reasoning algorithms

– Implemented systems (highly optimised)

Pellet

Why (Description) Logic?• Foundational research was crucial to design of OWL

– Informed Working Group decisions at every stage, e.g.:

• “Why not extend the language with feature x, which is clearly harmless?”

• “Adding x would lead to undecidability - see proof in […]”

Applications of Ontologies• e-Science, e.g., Bioinformatics

– Open Biomedical Ontologies Consortium (GO, MGED)

– Used e.g., for “in silico” investigations relating theory and data

• E.g., relating data on phosphatases to (model of) biological knowledge

Applications of Ontologies• Medicine

– Building/maintaining terminologies such as Snomed, NCI & Galen

Frontal Lobe

Temporal Lobe

Parietal Lobe

OccipitalLobe

Central Sulcus

Lateral Sulcus

Applications of Ontologies• Organising complex and semi-structured information

– UN-FAO, NASA, Ordnance Survey, General Motors, Lockheed Martin, …

Nominals in Ontologies• Used in extensionally defined classes

– e.g., class EU might be defined as {Austria, …, UnitedKingdom}

• Written in OWL as oneOf(Austria … UnitedKingdom)

• Equivalent to a disjunction of nominals: Austria Ç … Ç UnitedKingdom

– Allows inferences such as:

• EU contains 25 countries (assuming UNA/axioms)

• If in the EU and not in oneOf(Austria … Sweden) ! in UnitedKingdom

• Used in extended OWL Abox axioms

– e.g., individual(Jim value(friend individual(value(friend Jane))))

• Equivalent to {Jim} v 9 friend.(9 friend.{Jane})

• i.e., Jim ! hfriendi(hfriendiJane)

• Widely used in ontologies

– e.g. in Wine ontology used for colours, grape types, regions, etc.

Ontology Reasoning:How do we do it?

Using Standard DL Techniques• Key reasoning tasks reducible to KB (un)satisfiability

– E.g., C v D w.r.t. KB K iff K [ {x:(C u :D)} is not satisfiable

• State of the art DL systems typically use (highly optimised) tableaux algorithms to decide satisfiability (consistency) of KB

• Tableaux algorithms work by trying to construct a concrete example (model) consistent with KB axioms:

– Start from ground facts (ABox axioms)

– Explicate structure implied by complex concepts and TBox axioms

• Syntactic decomposition using tableaux expansion rules

• Infer constraints on (elements of) model

Tableaux Reasoning (1)• E.g., KB:

{HappyParent ´ Person u 8hasChild.(Doctor t 9hasChild.Doctor), John:HappyParent, John hasChild Mary, Mary:: Doctor Wendy hasChild Mary, Wendy marriedTo John}

Person8hasChild.(Doctor t 9hasChild.Doctor)

Tableaux Reasoning (2)• Tableau rules correspond to constructors in logic (u, 9 etc)

– E.g., John:(Person u Doctor) --! John:Person and John:Doctor

• Stop when no more rules applicable or clash occurs – Clash is an obvious contradiction, e.g., A(x), :A(x)

• Some rules are nondeterministic (e.g., t, 6)– In practice, this means search

• Cycle check (blocking) often needed to ensure termination

– E.g., KB:

{Person v 9hasParent.Person, John:Person}

Tableaux Reasoning (3)• In general, (representation of)

model consists of:

– Named individuals forming arbitrary directed graph

– Trees of anonymous individuals rooted in named individuals

Decision Procedures• Algorithms are decision procedures, i.e., KB is satisfiable iff rules can be

applied such that fully expanded clash free graph is constructed:

Sound

– Given a fully expanded and clash-free graph, we can trivially construct a model

Complete

– Given a model, we can use it to guide application of non-deterministic rules in such a way as to construct a clash-free graph

Terminating

– Bounds on number of named individuals, out-degree of trees (rule applications per node), and depth of trees (blocking)

• Crucially depends on (some form of) tree model property

Reasoning with Nominals:A Tableaux Algorithm for SHOIQ

Recall Motivation for OWL Design• Exploit results of DL research:

– …

– Known tableaux decision procedures and implemented systems

But not for SHOIN (until recently)!

So why is/was SHOIN so hard?

SHIQ is Already Tricky• Does not have finite model property, e.g.:

{ITN v 61 edge– u 9edge.ITN,

R:(ITN u 60 edge–)}

– Double blocking

– Block interpreted as infinite repetition

SHIQ is Already Tricky• Does not have finite model property, e.g.:

{ITN v 61 edge– u 9edge.ITN,

R:(ITN u 60 edge–)}

– Double blocking

– Block interpreted as infinite repetition

• Termination problem due to > and 6, e.g.:

{John:9hasChild.Doctor u >2 hasChild.Lawyer u 62 hasChild}

– Add inequalities between nodes generated by > rule

– Clash if 6 rule only applicable to nodes

SHOIQ: Loss (almost) of TMP• Interactions between O, I, and Q lead to

new termination problems

– Anonymous branches can loop back to named individuals (O)

• E.g., 9r.{Mary}

– Number restrictions (Q) on incoming edges (I) lead to non-tree structure

• E.g., Mary:61 r–

– Result is anonymous nodes that act like named individual nodes

– Blocking sequence cannot include such nodes

• Don’t know how to build a model from a graph including such a block

Intuition: Nominal Nodes• Nominal nodes (N-nodes) include:

– Named individual nodes

– Nodes affected by number restriction via outgoing edge to N-node

• Blocking sequence cannot include N-nodes

• Bound on number of N-nodes

– Must initially have been on a path between named individual nodes

– Length of such paths bounded by blocking

– Number of incoming edges at an N-node is limited by number restrictions

Generate & Merge Problem is Back!E.g., KB:

{VMP ´ Person u 9loves.{Mary} u 9hasFriend.VMP,

John:9hasFriend.VMP

Mary:62 loves–}

• Blocking prevented by N-nodes

• Repeated generation and merging of nodes leads to non-termination

Intuition: Guess Exact Cardinality• New Ro?-rule guesses exact cardinality

constraint on N-nodes

{VMP ´ Person u 9loves.{Mary} u 9hasFriend.VMP,

John:9hasFriend.VMP

Mary:62 loves–}

• Inequality between resulting N-nodes fixes generate & merge problem

• Introduces new source of non-determinism

– But only if nominals used in a “nasty” way

• Usage in ontologies typically “harmless”

– Otherwise behaves as for SHIQ

Conjunctive Query Answering:Using binders (maybe)

Conjunctive Queries• Want to query KB using DB style conjunctive query language

– e.g., hx,zi à Winehxi Æ drunkWithhx,yi Æ Dishhyi Æ fromRegionhy,zi

• How to answer such queries?

– Reduce to boolean queries w.r.t. candidate answer tuples

• e.g., hi à WinehChiantii Æ drunkWithhChianti,yi Æ Dishhyi Æ fromRegionhy,Venetoi

– Transform query into concept Cq by “rolling up”

• e.g., Cq = {Chianti} u 9 drunkWith.(Dish u 9 fromRegion.{Veneto})

– such that query can be reduced to KB satisfiability test

• hT,Ai ² q iff hT [ {> v :Cq},Ai is not satisfiable

B u 9P.CB u 9P.C u 9S.DA u 9R.(B u 9P.C u 9S.D)

Rolling Up (1)• View query as a labeled graph and “roll up” from leaves to root

– e.g., hi à Ahwi Æ Rhw,xi Æ Bhxi Æ Phx,yi Æ Chyi Æ Shx,zi Æ Chyi

Cyclical Queries• Problems arise when trying to roll up cyclical queries

– e.g., hi à Ahwi Æ Rhw,xi Æ Bhxi Æ Phx,yi Æ Chyi Æ Shx,zi Æ Chyi Æ Rhy,zi

Rolling Up with Binders (1)

C u 9P-..x

x.B

D u 9R-.(C u 9P-..x)

x.Bx.(B u 9S.(D u 9R-.(C u 9P-..x)))A u 9R.(x.(B u 9S.(D u 9R-.(C u 9P-..x))))

• Problem could be solved by extending DL with binder:

– e.g., hi à Ahwi Æ Rhw,xi Æ Bhxi Æ Phx,yi Æ Chyi Æ Shx,zi Æ Chyi Æ Rhy,zi

Rolling Up with Binders (2)• Unfortunately, already known that ALC + binder is undecidable

[Blackburn and Seligman]

• But, when used in rolling up, only occurs in very restricted form:

– Only intersection, existential and positive state variables

– and when negated (in sat test), only union, universal and negated vars

– in form 8R.:x

• Now known that SHIQ conjunctive query answering is decidable

– Binders would potentially lead to a more “practical” algorithm

• But not trivial to extend tableaux algorithm to SHIQ + binder

– Blocking is difficult because binder introduces new concepts

• Decidability of SHOIQ conjunctive query answering still open

– Although believe we now have a solution

Summary

• DLs are a family of logic based KR formalisms

– Describe domain in terms of concepts, roles and individuals

– Closely related to Modal & Hybrid Logics

• DLs are the basis for ontology languages such as OWL

– Nominals widely used in ontologies

– Reasoning with SHOIQ is tricky, but now reasonalby well understood

• Binders potentially useful for conjunctive query answering

– Allow for rolling up of arbitrary queries

– Required extensions known to be decidable

– But reasoning with extended languages still an open problem

Acknowledgements

Thanks to:

– Birte Glimm

– Uli Sattler

Resources• Slides from this talk

– http://www.cs.man.ac.uk/~horrocks/Slides/HyLo06.ppt

• FaCT++ system (open source)– http://owl.man.ac.uk/factplusplus/

• Protégé– http://protege.stanford.edu/plugins/owl/

• W3C Web-Ontology (WebOnt) working group (OWL)– http://www.w3.org/2001/sw/WebOnt/

• DL Handbook, Cambridge University Press– http://books.cambridge.org/0521781760.htm

Any questions?

Thank you for listening

top related