Description Logics Dr. Alexandra I. Cristea. Description Logics Description Logics allow formal...

Preview:

DESCRIPTION

Why Description Logics in OWL? OWL exploits results of 20+ years of DL research –Well defined (model theoretic) semantics –Formal properties well understood, e.g., computational complexity –Known reasoning algorithms –Implemented systems (highly optimised): FaCT++, Racer, Pellet, etc. Foundational research was crucial to the design of OWL –“Why not extend the language with feature x, which is clearly harmless?” –“Adding x would lead to undecidability — see proof in [... ]” 3 “I can’t find an efficient algorithm, but neither can all these famous people.” Garey & Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness

Citation preview

Description LogicsDr. Alexandra I. Cristea

Description LogicsDescription Logics allow formal concept definitions that can be reasoned about to be expressedNot a single logic, but a family of KR logicsSubsets of first-order logic (FOL)Advantages:– Well-defined model theory– Known computational complexity

2

Why Description Logics in OWL?OWL exploits results of 20+ years of DL research– Well defined (model theoretic) semantics– Formal properties well understood, e.g., computational complexity

– Known reasoning algorithms– Implemented systems (highly optimised): FaCT++, Racer, Pellet, etc.

Foundational research was crucial to the design of OWL– “Why not extend the language with feature x, which is clearly harmless?”– “Adding x would lead to undecidability — see proof in [. . . ]”

3

“I can’t find an efficient algorithm,but neither can all these famous people.”Garey & Johnson. Computers and Intractability:A Guide to the Theory of NP-Completeness. 1979.

Why ontology reasoning?Given key role of ontologies in many applications, it is essential to provide tools and services to help users:– Design and maintain high quality ontologies, e.g.:– Meaningful — all named classes can have instances (remember ‘mad cows’?)– Correct — captures intuitions of domain experts– Minimally redundant — no unintended synonyms

– Answer queries, e.g.:– Find more general/specific classes– Retrieve individuals/tuples matching a given query

– But what is (formal) reasoning?The laws of correct reasoning are the subject of mathematical logic 4

Exercise: give examples of (principles of) ‘correct reasoning’Aristotle:

Hamlet: “To be or not to be”David Hume: “The sun has risen in the east every morning up until now. Ergo the sun will also rise in the east tomorrow.”

If a drink is made with boiling water, it will be hot.This drink was not made with boiling water.Ergo this drink is not hot. 5

All humans are mortal.Socrates is a human.Ergo Socrates is mortal.

Example concept definitions in DL

Woman = Person ⊓ FemaleMan = Person ⊓ ¬Woman

6

..

Reasoning in DLA classifier (a reasoning engine) can construct class hierarchy from ontology concepts defsConcept definitions composed from primitives >> ontology is more maintainable

7

Example Reasoning

8

Example Reasoning

9

Example Reasoning

10

DL TerminologyDL separates assertions and concept definitions:A Box: Assertions– e.g. hasChild(john, mary)– This is the knowledge base

• T Box: Terminology– The definitions of concepts in the ontology– Example axioms for definitions

• C D [C is a subclass of D, D subsumes C]⊑• C ≡ D [C is defined by the expression D] 11

DL architecture

12

DL Terminology (2)Concept: class, category or type

Role: binary relation– Attributes are functional roles

Subsumption:– D subsumes C if C is a subclass of D : i.e. all Cs are Ds

Unfoldable terminologies:– The defined concept does not occur in the defining expression:– C ≡ D where C does not occur in the expression D

Language families– AL: Attributive Language– ALC: adds full negation to AL

13

Language elements for concept expressions

14

Universal restrictionUniversal (value) restriction: ∀R.CThe set {x| y, R(x, y) → y C}∀ ∈The set of things x such that for all y where x and y are related by R, y is in C.

e.g., hasChild.Parent∀Set of things x so that for all y where x and y are related by hasChild, y will be in class Parent; everything in set x is a child, everything in set y is a parent.That is, anything that is the object of the relation hasChild must be in class Parent, regardless of what the subject is.

This is a local statement: this is true for every statement in your dataset. 15

Existential restrictionExistential restriction - also called exists restriction: ∃R.CThe set {x| y, R(x, y) y C}∃ ⋀ ∈The set of things x such that there exists a y where x and y are related via R and y is in class C.

e.g., hasChild.Doctor∃The set of all x’s such that x is related to y via hasChild and y is in class Doctor.the set of all children which have at least one parent who is a doctor

This is a local statement: this is true for at least one statement in your dataset.

16

DL namingAttributive language - basic language which allows:

– atomic negation– concept intersection– universal restrictions– limited existential quantification

Frame based description language, allows:– concept intersection– universal restrictions– limited existential quantification– role restriction

allows:– concept intersection– existential restrictions (of full existential quantification)

17

DL naming: Extensions

18

DL naming: Exceptions

19

Common DLs

20

HomeworkExplain, based on the naming conventions you’ve just seen, what do the DL types for OWL2, Protégé, OWL-Lite, and OWL-DL stand for.

21

Example concept expressionsParent ≡ “Persons who have (amongst other things) some children”

Person hasChild.⨅ ∃ ⊤ParentOfBoys ≡ “Persons who have some children, and only have children that are male”

Person ( hasChild. ) ( hasChild.Male)⨅ ∃ ⊤ ⨅ ∀ScottishParent ≡ “Persons who only have children that drink (amongst other things) some IrnBru”

Person ( hasChild. ( drink.IrnBru))⨅ ∀ ∃22

Value and exists restrictions{a,b,c,d,e,f} are instances; Plant and Animal are classes

⊤⊑ Plant Animal(partition)

Plant Animal ⊓ ⊑⊥(disjointness) 23

Value and exists restrictions{a,b,c,d,e,f} are instances; Plant and Animal are classes

∀eats.Animal = {a,b,c,e,f}∃eats.Animal = {c,d,e} ∃eats.Animal eats.Animal = {c,e}⊓ ∀ 24

Model theoryΔ1 universal domain of individuals, let Δ1 ={a,b,c,d,e,f}eats1 set of pairs for the relation eats, leteats1 = {<d,a>,<d,e>,<e,d>,<e,f>,<c,f>}For all concepts C:

i) C1 ⊆ Δ 1ii) C1≠ ∅

Let Animal1 = {d,e,f} ∴ (¬Animal)1 = {a,b,c} ∴ ( eats.Animal)1={a,b,c,e,f}∀ ∴ ( eats. Animal)1 = {c,d,e}∃

25

InferenceMeatEater ≡ eats. Animal = {a,b,c,e,f}∀Vegetarian ≡ eats. ¬Animal = {a,b,f}∀Omnivore ≡ eats. Animal = {c,d,e}∃

Inference:From the above classes we can see that:• MeatEater subsumes Vegetarian• Vegetarian is disjoint from Omnivorein this model, with these definitions.

The problem is to prove this for ALL models. 26

DL InferenceInference can be expressed in terms of the model– Satisfiability of C: C1 is non-empty– Subsumption C D iff C1 D1 (“C is subsumed ⊑ ⊆

by D”)– Equivalence C ≡ D iff C1 = D1– Disjointness(C D) ⊑ iff C1 ∩ D1 ≡ ⊑ ∅• Tractable/terminating inference algorithms exist27

Last time:– Started DL– DL terminology, some reasoning/ inference,

models, architecture

Next:– More on DL inference 28

Value and exists restrictions{a,b,c,d,e,f} are instances; Plant and Animal are classes

Vegetarian = {a,b,f}Omnivore = {c,d,e}

disjoint?MeatEater= {a,b,c,e,f} 29

DL Inference (2)

30

DL Inference (2)

31

DL Inference (2)

32

Yes

DL Inference (2)

33

Yes

DL Inference (2)

34

Yes

DL Inference (2)

35

Yes

DL Inference (2)

36

Yes

DL Inference (3)Inference has 2 equivalent notions - so implementing one lets us prove all 4 propertiesReduction to subsumption :⊑– Unsatisfiability of C: C ⊑⊥– Equivalence C≡D iff C D and D C⊑ ⊑– Disjointness (C D) ⊑⊑ ⊥Reduction to unsatisfiability CI = :∅– Subsumption C D iff (C ¬D) is unsatisfiable⊑ ⨅– Equivalence C≡D iff (C ¬D) and (D ¬C) are unsatisfiable⨅ ⨅– Disjointness (C D) is unsatisfiable⨅ 37

DL SummaryDLs: family of languages based on subsets of FOL.Expressivity depends on language attributes.Attributes: indicated by letters; DL language names: series of letters => expressivity of DL language in its name.DLs allow complex expressions of how concepts relate to one another.Many algorithms (e.g., Tableaux Algorithms) allowing efficient reasoning over DLs.

38

Additional Slides DL

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

Recommended