openhpi 5.1 - description logics - alc

27
This file is licensed under the Creative Commons Attribution-NonCommercial 3.0 (CC BY-NC 3.0 ) Dr. Harald Sack Hasso Plattner Institute for IT Systems Engineering University of Potsdam Spring 2013 Semantic Web Technologies Lecture 5: Knowledge Representations II 01: Description Logics - ALC

Upload: harald-sack

Post on 16-Jan-2015

392 views

Category:

Documents


9 download

DESCRIPTION

 

TRANSCRIPT

Page 1: OpenHPI 5.1 - Description Logics - ALC

This file is licensed under the Creative Commons Attribution-NonCommercial 3.0 (CC BY-NC 3.0)

Dr. Harald Sack

Hasso Plattner Institute for IT Systems Engineering

University of Potsdam

Spring 2013

Semantic Web Technologies

Lecture 5: Knowledge Representations II01: Description Logics - ALC

Page 2: OpenHPI 5.1 - Description Logics - ALC

Semantic Web Technologies , Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

2

Lecture 5: Knowledge Representations II

Open HPI - Course: Semantic Web Technologies

Page 3: OpenHPI 5.1 - Description Logics - ALC

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

3

01 Description Logics - ALCOpen HPI - Course: Semantic Web Technologies - Lecture 5: Knowledge Representations II

Page 4: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

4logic-basedformalisms

Knowledge Representations

non logic-based formalisms

• closer to human intuition

• therefore easier to understand

• usually don‘t have consistent semantics

• E.g.:

• Semantic Networks

• Frame-based representations

• Rule-based representations

• more complex and difficult to understand

• all based on first order logic

• consistent semantics

• FOL Syntax

• FOL Semantics

• FOL Entailment

• E.g.:

• Description Logics

Page 5: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

5

FOL as Semantic Web Language?

FOL• Why not simply take FOL for Ontologies?

• FOL can do everything...

• compare higher programming languages to assemblers

• FOL has

• high expressivity

• too bulky for modelling

• not appropriate to find consensus in modelling

• proof theoretically very complex (semi-decidable)

• FOL is also not a Markup Language

Look for an appropriate fragment of FOL

Page 6: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

6 • DLs are Fragments of FOL

• In DL from simple descriptions more complex descriptions are created with the help of Constructors.

• DLs differ in the applied constructors (Expressivity)

• DLs have been developed from „semantic Networks“

• DLs are decidable (most times)

• DLs possess sufficient expressivity (most times)

• DLs are related to modal logics

• e.g., W3C Standard OWL 2 DL is based on description logics

SHROIQ(D)

Description Logics (DLs)

Page 7: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

7

Attributive Language with

Complements ALC

Building Blocks:• Classes• Roles / Properties• Individuals

• Student(Christian)Individual Christian is of class Student

• Lecture(SemanticWeb)Individual SemanticWeb is of class lecture

• visitsLecture(Christian, SemanticWeb)Christian visits the lecture SemanticWeb

Page 8: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

8 • Atomic Types

• Concept names A,B, ...

• Special concepts

• ⊤ - Top (universal concept)

• ⊥ - Bottom concept

• Role names R,S, ...

• Constructors

• Negation: ¬C

• Conjunction: C ⊓ D

• Disjunction: C ⊔ D

• Existential quantifier: ∃R.C

• Universal quantifier: ∀R.C

ALC - Building Blocks

Page 9: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

9 • Class Inclusion

• Professor ⊑ FacultyMember

• every Professor is a Faculty Member

• equals (∀x)(Professor(x) → FacultyMember(x))

• Class Equivalence

• Professor ≡ FacultyMember• the Faculty Members are exactly the Professors

• equals (∀x)(Professor(x) ↔ FacultyMember(x))

ALC - Building Blocks

Page 10: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

10 • Conjunction ⊓

• Disjunction ⊔

• Negation ¬

(∀x)(Professor(x) → ((Person(x) Λ UniversityEmployee(x))

V (Person(x) Λ ¬Student(x)))

Professor ⊑ (Person ⊓ UniversityEmployee)" " ⊔ (Person ⊓ ¬Student)

ALC - Complex Class Relations

Page 11: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

11

ALC - Quantifiers on Roles

•Strict Binding of the Range of a Role to a Class

•Examination ⊑ ∀hasSupervisor.Professor

•An Examination must be supervised by a Professor

•(∀x)(Examination(x) → (∀y)(hasSupervisor(x,y) → Professor(y)))

•Open Binding of the Range of a Role to a Class

•Examination ⊑ ∃hasSupervisor.Person

•Every Examination has at least one supervisor (who is a person)

•(∀x)(Examination(x) → (∃y)(hasSupervisor(x,y) Λ Person(y)))

Page 12: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

12

ALC - Formal Syntax

•Production rules for creating classes in ALC:

(A is an atomic class, C and D are complex classes and R is a Role)

•C,D::= A|⊤|!|¬C|C⊓D|C⊔D|∃R.C|∀R.C

Page 13: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

12

ALC - Formal Syntax

•Production rules for creating classes in ALC:

(A is an atomic class, C and D are complex classes and R is a Role)

•C,D::= A|⊤|!|¬C|C⊓D|C⊔D|∃R.C|∀R.C

•An ALC TBox contains assertions of the form C ⊑ D and C ≡ D, where C,D are complex classes.

Page 14: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

12

ALC - Formal Syntax

•Production rules for creating classes in ALC:

(A is an atomic class, C and D are complex classes and R is a Role)

•C,D::= A|⊤|!|¬C|C⊓D|C⊔D|∃R.C|∀R.C

•An ALC TBox contains assertions of the form C ⊑ D and C ≡ D, where C,D are complex classes.

•An ALC ABox contains assertions of the form C(a) and R(a,b), where C is a complex Class, R a Role and a,b Individuals.

Page 15: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

12

ALC - Formal Syntax

•Production rules for creating classes in ALC:

(A is an atomic class, C and D are complex classes and R is a Role)

•C,D::= A|⊤|!|¬C|C⊓D|C⊔D|∃R.C|∀R.C

•An ALC TBox contains assertions of the form C ⊑ D and C ≡ D, where C,D are complex classes.

•An ALC ABox contains assertions of the form C(a) and R(a,b), where C is a complex Class, R a Role and a,b Individuals.

•An ALC-Knowledge Base contains an ABox and a TBox.

Page 16: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

13

ALC - Semantic (Interpretation)

•we define a model-theoretic semantic for ALC (i.e. Entailment will be defined via Interpretations)

•an Interpretation I=(ΔI,.I) contains

•a set ΔI (Domain) of Individuals and

•an interpretation function .I that maps

•Individual names a to domain elements aI∈ΔI•Class names C to a set of domain elements CI⊆ΔI•Role names R to a set of pairs of domain elements RI⊆ΔI×ΔI

Page 17: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

14

ALC - Semantic (Interpretation)

Individual Names Class Names Role Names

Page 18: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

15•Extension for complex classes:

•⊤I = ΔI and ⊥I = ∅

ALC - Semantic (Interpretation)

Page 19: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

15•Extension for complex classes:

•⊤I = ΔI and ⊥I = ∅

•(C ⊔ D)I = CI ∪ DI and

(C ⊓ D)I = CI ∩ DI

ALC - Semantic (Interpretation)

Page 20: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

15•Extension for complex classes:

•⊤I = ΔI and ⊥I = ∅

•(C ⊔ D)I = CI ∪ DI and

(C ⊓ D)I = CI ∩ DI •(¬C)I = ΔI \ CI

ALC - Semantic (Interpretation)

Page 21: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

15•Extension for complex classes:

•⊤I = ΔI and ⊥I = ∅

•(C ⊔ D)I = CI ∪ DI and

(C ⊓ D)I = CI ∩ DI •(¬C)I = ΔI \ CI

•∀R.C={a∈ΔI|(∀b∈ΔI)((a,b)∈RI&b∈CI)}

ALC - Semantic (Interpretation)

Page 22: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

15•Extension for complex classes:

•⊤I = ΔI and ⊥I = ∅

•(C ⊔ D)I = CI ∪ DI and

(C ⊓ D)I = CI ∩ DI •(¬C)I = ΔI \ CI

•∀R.C={a∈ΔI|(∀b∈ΔI)((a,b)∈RI&b∈CI)}

•∃R.C={a∈ΔI|(∃b∈ΔI)((a,b)∈RI∧b∈CI)}

ALC - Semantic (Interpretation)

Page 23: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

16 •...and Axioms:

• C(a) holds, iff aI ∈ CI

• R(a,b) holds, iff (aI,bI) ∈ RI

• C ⊑ D holds, iff CI ⊆ DI

• C ≡ D holds, iff CI = DI

ALC - Semantic (Interpretation)

Page 24: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

17

ALC - Knowledgebase

•Terminological Knowledge (TBox)Axioms that describe the structure of the modeled domain (conceptional schema):

•Human ⊑ ∃parentOf.Human

•Orphan ≡ Human ⊓ ¬∃hasParent.Alive

•Assertional Knowledge (ABox)Axioms that describe specific situations (data):

•Orphan(harrypotter)•hasParent(harrypotter,jamespotter)

Page 25: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

18

Description Logics

Operator/Constructor Syntax LanguageLanguage

Conjunction A ⊓ B

FLValue Restriction ∀R.C FL

Existential Quantifier ∃R

Top ⊤

Bottom ⊥

S*Negation ¬A

S*

Disjunction A ⊔ B AL*

Existential Restriction ∃R.C

Number Restriction (≤nR) (≥nR)

Set of Inividuals {a1,...,a2}

Role Hierarchy R ⊑ S HH

inverse Role R-1 II

Qualified Number Restriction (≤nR.C) (≥nR.C) QQ

Page 26: OpenHPI 5.1 - Description Logics - ALC

Lecture: Semantic Web Technologies, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam, WS 2012/13

19•ALC: Attribute Language with Complement

•S: ALC + Transitivity of Roles

•H: Role Hierarchies

•O: Nominals

•I: Inverse Roles

•N: Number restrictions ≤n R etc.

•Q: Qualified number restrictions ≤n R.C etc.

•(D): Datatypes

•F: Functional Roles

•R: Role Constructors

• OWL 2 DL is SHROIQ(D)

Description Logics

Page 27: OpenHPI 5.1 - Description Logics - ALC

Semantic Web Technologies , Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

20

02 DL Inference and ReasoningOpen HPI - Course: Semantic Web Technologies - Lecture 5: Knowledge Representations II