Description Logics Dr. Alexandra I. Cristea

advertisement
Description Logics
Dr. Alexandra I. Cristea
Description Logics
Description Logics allow formal concept definitions that
can be reasoned about to be expressed
Not a single logic, but a family of KR logics
Subsets 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
“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.
– 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
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’
All humans are mortal.
Socrates is a human.
Ergo Socrates is mortal.
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.”
Aristotle:
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
Example concept definitions in DL
.
Woman = Person ⊓ Female
.
Man = Person ⊓ ¬Woman
6
Reasoning in DL
A classifier (a reasoning engine) can construct
class hierarchy from ontology concepts defs
Concept definitions composed from primitives
>> ontology is more maintainable
7
Example Reasoning
8
Example Reasoning
9
Example Reasoning
10
DL Terminology
DL 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 restriction
Universal (value) restriction: ∀R.C
The 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 restriction
Existential restriction - also called exists restriction: ∃R.C
The 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 naming
Attributive 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
Homework
Explain, 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 expressions
Parent ≡ “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 ⊑ ⊥
(disjointness)
⊤ ⊑ Plant Animal
(partition)
23
Value and exists restrictions
{a,b,c,d,e,f} are instances; Plant and Animal are classes
∃eats.Animal = {c,d,e}
∃eats.Animal ⊓ ∀eats.Animal = {c,e}
∀eats.Animal = {a,b,c,e,f}
24
Model theory
Δ1 universal domain of individuals, let Δ1 ={a,b,c,d,e,f}
eats1 set of pairs for the relation eats, let
eats1 = {<d,a>,<d,e>,<e,d>,<e,f>,<c,f>}
For all concepts C:
i) C1 ⊆ Δ 1
ii) 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
Inference
MeatEater ≡ ∀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 Omnivore
in this model, with these definitions.
The problem is to prove this for ALL models.
26
DL Inference
Inference 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 ≡ ∅
27
• Tractable/terminating inference algorithms exist
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)
Yes
32
DL Inference (2)
Yes
33
DL Inference (2)
Yes
34
DL Inference (2)
Yes
35
DL Inference (2)
Yes
36
DL Inference (3)
Inference has 2 equivalent notions - so implementing one lets us
prove all 4 properties
Reduction 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 Summary
DLs: 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
Download