ldk r logics for data and knowledge representation description logics

69
L Logics for D Data and K Knowledge R Representation Description Logics

Upload: daisy-penelope-garrison

Post on 14-Jan-2016

273 views

Category:

Documents


0 download

TRANSCRIPT

LLogics for DData and KKnowledgeRRepresentation

Description Logics

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

2

Overview Description Logics (DLs) is a family of KR

formalisms that represent the knowledge of an application domain (“the world”) by

defining the relevant concepts of the domain (i.e., its terminology), and then

using these concepts to specify the properties of objects in the domain (i.e., the world’s description).

3

Some History on DLs Descended from the “structured inheritance networks”

(Brachman, 1977). Introduced to overcome the ambiguities of early

semantic networks and frames. First realized in the system Kl-One by Brachman and

Schmolze (1985).First DL presented in the B & S’s paper.

Some ‘nicknames’ for DLs: Terminological knowledge representation languages, Concept languages, Term subsumption languages, Kl-One-based knowledge representation languages.

4

Three Basic Features

1.The basic syntactic building blocks are atomic concepts, atomic roles, individuals.

2.The expressive power of DLs is restricted to a rather small set of constructors for building complex concepts and relations.

3.Implicit knowledge about concepts and individuals can be inferred automatically with the help of specific reasoning services.

5

Syntax

Logical

Extended from ClassL

Extended from ClassL to Complest Role

Architecture of a KR system on DL

6

TBox

ABox

Description Language

Reasoning

Application

Programs

Rules

Language (Syntax) The first step in setting up a formal language (viz. a

descriptive language) is to list the symbols, that is, the alphabet of symbols.

We denote a generic alphabet of a descriptive (or ‘description’) language: dΣ.

Similarly to any logical language we can divide symbols in dΣ in ‘descriptive’ (nonlogical) and ‘non-descriptive’ (logical).

7

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

8

Syntax of DL Descriptive dΣ consists of concept names (set C),

which denote sets of individuals, role names (set R), which denote binary relations between individuals, and individual names, (set I), which denote individuals.

e.g.:concept names: Room, Person, Fruitrole names: likeSkiing, hasChild, partOf, isA,..individual names: I, you, apple, Fido, ...

9

DL Language and Previous Languages concept names are propositional variables

(PL/ClassL)

role names are binary predicate symbols (FOL)

individual names are constants (FOL)

10

Language (Syntax) Non-descriptive dΣ provides concept constructors to

build complex formulas, called concept descriptions and role descriptions, from atomic formulas.

e.g.:

(negation),

⊓(conjunction),∀(for all),

∃(there exists)

11

AL-family Languages We shall now discuss various descriptive languages

from the family of AL-languages. An AL-language (= Attributive Languages) is a

minimal DL language of practical interest. More expressive descriptive languages are usually

extensions of some AL-language. AL-languages do not deal with individuals.

12

AL Logical Symbols

1. Universal concept symbol: ⊤.

2. Bottom concept symbol: ⊥.

3. Parentheses (auxiliary symbols): (, )

4. Logical constants (concept constructors): (atomic negation), ⊓ (conjunction)

∀R (for all atomic roles)R (there exists an ∃ atomic role)

13

The SAME as in

ClassL

New!

AL Non-logical Symbols

5. Atomic concept names: A, B, ...

6. Concept names: C, D, ...

7. Atomic role names: R (generic)

NOTE: There is no logical symbol in AL for logical implication (as ‘→’ in PL and in FOL). For this, we will use the subsumption symbol ‘ ’ ⊑ instead (as in classL).

14

The SAME as in

ClassLNew!

Defined Symbols

Similarly to ClassL, ⊤ and ⊥ can be defined: For all concept names C,

⊥ =df C ⊓ C ⊤ =df or also ⊥ ⊤ =df U

for U be a special coincept name denoting the Universal Concept.

We prefer to consider ⊤ and ⊥ AL’ symbols.

15

Formation Rules for AL Atomic Concepts:

1. A, B,..., ⊥, ⊤. Concepts (concept descriptions):

2. All the atomic concepts3. A for A (atomic concept negation)4. C⊓D (intersection) 5. R.C (∀ value restriction)6. ∃R.⊤(limited existential quantification)

Resulting language: attributive language (AL).

16

Examples Atomic concepts: Person, Female, Room, ...

Atomic roles: hasChild, partOf, isIn, isA,...

Concepts: Person Female,⊓Person hasChild.⊓ ∃ ⊤ ( hasChild∃ )Person hasChild.⊓ ∀ ⊥ (Not:¬ hasChild.∃ ⊤) Person hasChild.¬Female ⊓ ∀

Question: What is the intended meaning?

17

Solution Person Female ⊓

“persons that are female”

Person hasChild.⊓ ∃ ⊤ “(all those) persons that have a child”

Person hasChild.⊓ ∀ ⊥ “(all those) persons without a child”

Person hasChild.Female ⊓ ∀“persons all of whose children are female”

18

AL’s Extensions - ALU Extended Alphabet:

Logical constants (concept constructors): ⊔ (disjunction).

Extended concepts (descriptions): C ⊔ D (union)

The resulting new language (i.e. AL plus the new set of concepts) usually denoted ALU.

E.g.: Mother⊔Father describes the extension of ‘parent’.

19

AL’s Extensions - ALE Extended Alphabet:

Logical constants (concept constructors):R (there exists an ∃ arbitrary role)

Extended concepts (descriptions): R.C ∃ (full existential quantification)

The resulting new language (i.e. AL plus the new set of concepts) usually denoted ALE.

E.g.: hasChild.Female describes the extension of ∃‘those parents who has at least a daughter’.

20

AL’s Extensions - ALN Extended Alphabet:

Logical constants (concept constructors):≥n, ≤n for all n N (at-least/at∈ -most n)

Extended concepts (descriptions): ≥nR (at-least number restriction)≤nR (at-most number restriction)

The resulting new language (i.e. AL plus the new set of concepts) usually denoted ALN.

E.g.: ≥2 hasChild describes the extension ‘those parents who has at least 2 children’.

21

AL’s Extensions - ALC Extended Alphabet:

Logical constants (concept constructors): (general negation)

Extended concepts (descriptions): C (full concept negation)

The resulting new language (i.e. AL plus the new set of concepts) usually denoted ALC. (C stands for “Complement”).

E.g.: (≥2 hasChild ) describes the extension ‘those parents who has at most 1 children’.

22

AL’s Extensions (Summary) Extending AL by any subsets of the above

constructors yields a particular DL language.

Each language is denoted by a string of the form AL[U][E][N][C], where a letter in the name stands for the presence of the corresponding constructor. Notation: AL*.

ALC as the most important in many aspects.(We’ll see that ALU ⊆ ALC and ALE ⊆ ALC.)

23

AL’s Sub-languages By eliminating some of the syntactical symbols, we

get some sub-languages of AL.

The most important sub-language obtained by elimination in the AL family is ClassL.

Historically, another important sub-language is named as the Frame Language FL0.

24

From AL to ClassL Elimination (w.r.t. ALUEC!):

1. Name Symbols: atomic role names R

2. Concept constructors: ∀R, R∃3. Descriptions: R.C∀ , R.∃ C

The new language is a description language without roles which is ClassL.

NOTE: So far, we are considering DL without individuals and ABox.

25

AL’s Contractions: FL- Elimination (w.r.t AL’s alphabet):

1. Symbols: Universal and bottom symbols ,⊤ ⊥2. Concept constructors: ¬ (atomic negation)

3. Descriptions: , ⊤ ⊥ , A (atomic negation)

The resulting new language (i.e. AL without negation) is denoted: FL-.

26

AL’s Contractions: FL0 Elimination(w.r.t FL-’s alphabet):

1. Concept constructors:R (there exists an ∃ atomic role)

2. Descriptions: R.∃ ⊤(limited existential quantification)

The resulting new language (i.e. FL- without the limited existential quantification) is denoted: FL0.

FL = Frame Language (for historical reasons)

27

Summary DLs are a family of logic-based KR formalisms to

describe a domain in terms of - concepts - roles - individuals (“grounding”).

Strictly speaking we do not need DLs to represent concepts and roles, but the variable-free syntax of DLs is much more concise! (That’s good for automation!)

ClassL is ALC without Role.

28

This will be discussed later.

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

29

Semantics The elements of the description languages in AL-

family (AL*) are plain strings of symbols

The meaning which is intended to be attached to concept, role, and individual names form an informal interpretation of the given AL* language’s expressions.

30

No (formal) meaning.

Recall: Interpretation (∆, I)

Def. An interpretation of a language L is a pair I = (∆,I), where:- ∆ (domain) is a non-empty set of objects - I(interpretation function) is a mapping from L to ∆.

NOTE: sometimes, the mapping ‘I’ is written as ‘⋅I’ but of the same function.

E.g.: I(Person) ={p|p is a person} is written as

PersonI ={p|p is a person}.

31

AL* Interpretation (∆,I) I( ) =⊥ ∅ and I(⊤) = ∆ (full domain, “Universe”) For every concept name A of L, I(A) ∆.⊆ I(¬C) = ∆ \ I(C). I(C D) = I(C) ∩ I(D); I(C ⊓ ⊔ D) = I(C) ∪ I(D). For every role name R of L, I(R) ∆ × ∆.⊆ I( R.C) = {a ∆ | for all b, if (a,b) I(R) then b I(C)}. ∀ ∈ ∈ ∈ I( R.∃ ⊤) = {a ∆ | exists b s.t. (a,b) I(R)}.∈ ∈ I( R.∃ C) = {a ∆ | exists b s.t. (a,b) I(R), b I(C)}. ∈ ∈ ∈ I(≥nR) = {a ∆ | |{b | (a, b) I(R)}| ≥ n}. ∈ ∈ I(≤nR) = {a ∆ | |{b | (a, b) I(R)}| ≤ n}.∈ ∈

32

The SAME as in

ClassL

Interpretation of Existential Quantifier I( R.C)∃ = {a ∆ | exists b s.t. (a,b) I(R), b I(C)} ∈ ∈ ∈

Those that have some value in C with role R. Remark: a ∆∈

33

b I(C)

a (a,b)∈I(R)

Example “Those who have a daughter.” I( R.C)∃ = I( hasChild.Female) ∃ = {a ∆ | exists b s.t. ∈

(a,b) I(hasChild), b I(Female)} ∈ ∈

34

betty

I(Female)

anna

Anna has a child betty and betty is a female, then Anna is an individual of the concept ∃hasChild.Female.

hasChild

I( R.C) = {a ∆ | for all b, if (a,b) I(R) then b I(C)}∀ ∈ ∈ ∈

Those that have only value in C with role R. Remark: a ∆∈

Interpretation of Value Restriction

35

b I(C)

aif (a,b) ∈I(R)

b' b''

if (a,b') ∈I(R) if (a,b'') ∈I(R)

Example “Those who have only daughter(s)” I( R.C)∀ = I( hasChild.Female)∀ = {a ∆ | for all b, if ∈

(a,b) I(R) then b I(C)}∈ ∈

36

bettyI(Female)

anna

bianca babara

if anna has a child betty, then betty is a female. if anna has a child bianca, then bianca is a female.

if anna has a child babara, then babara is a female. if ...

hasChild

Interpretation of Number Restriction I(≥nR) = {a ∆ | ∈ |{b | (a, b) I(R)}|≥ n} ∈

Those that have relation R to at least n individuals.37

a

b b' …

|{b | (a, b) ∈ I(R)}| ≥ n

Example “Those who has at least 2 children” I(≥nR) = I(≥2hasChild)={a ∆ |∈ |{ b | (a, b) I(R)}|∈

≥n }

38

Anna’s children {betty, bianca, babara,...} are ≥ 2. Anna is one individual of those who has at least 2

children.

betty

anna

bianca babara

hasChild

Interpretation of Number Restriction Cont. I(≤nR) = {a ∆ | ∈ |{b | (a, b) I(R)}| ≤n } ∈

Those that have relation R to at most n individuals.39

a

|{b | (a,b) ∈ I(R)}| ≤n

b b' …

Example “Those who as at most 2 children” I(≤nR) = I(≤2hasChild)={a ∆ | ∈ |{b | (a, b) I(R)}|∈

≤n }

40

Anna has only one child Betty, so Anna belongs to the concept of those who has at most 2 children.

betty

annahasChild

Simple Exercises Verify the following equivalences hold

for all interpretations (∆,I): I(¬(C ⊓ D)) = I(¬C ⊔ ¬D) I(¬(C ⊔ D)) = I(¬C ⊓ ¬D) I(¬ R.C∀ ) = I( R.¬C∃ ) I(¬ R.C∃ ) = I( R.¬C∀ )

E.g.:

I(¬ R.C∃ )= {a ∆ | not exists b s.t. (a,b) I(R), b ∈ ∈ ∈I(C)} = {a ∆ | ¬ b. R(a,b)∈ ∃ ∧C(b)}

= {a ∆ | ∈ ∀b. ¬ (R(a,b)∧C(b))}

= {a ∆ | ∈ ∀b. R(a,b)→¬C(b)}

= I( R.¬C∀ ) 41

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

42

Terminological AxiomsInclusion Axiom

C⊑D

e.g.:Master ⊑ ≥18Pass.Exam⊓≥1Finish.Project,

Professor⊑∃Give.Lecture⊓∃Organize.(Exam⊔Experiment)

Equivalence (Equality) Axiom

C≡D

e.g.:PhD ≡ Postgraduate⊓≥3Publish.Paper,

Parent ≡ Man⊓∃hasChild.⊤

Is the TBox definition the SAME here as in ClassL?43

R⊑S

R≡S

Terminology (TBox)

A terminology (or TBox) is a set of a (terminological) axioms.

e.g.: T is

{

PhD≡ Postgraduate ≥3Publish.Paper,⊓Parent ≡ Person hasChild.Person,⊓∃

hasGrandChild hasChild⊑}

NOTE: the punctuations mean logical conjunctions..

44

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

45

TBox ReasoningLet T be a TBox

Satisfiability:(with respect to T):

T satisfies P?

Subsumption (with respect to T):

T |= P Q?⊑Equivalence (with respect to T): :

(T|= P ≡ Q) T|= P Q and ⊑ T |= P Q⊑ ?

Disjointness: (with respect to T):

T|= P Q ⊓ ⊑ ⊥?

NOTE: they are the SAME as in ClassL with more concepts built by the role constructors.

46

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

47

ABox In a ABox, one introduces individuals, by giving

them names, and one asserts properties about

these individuals. We denote individual names as a, b, c,… An assertion with Role R is called Role assertion (in

contrast to Concept assertion C(a) in ClassL) as:

R(a, b), R(b, c), …

e.g.

Study(Tin, ldkr)

NOTE: the other part of the ABox is the Concept assertions the SAME as in Ground ClassL.

48

The SAME as in Class

L

Semantics of the ABox We give a semantics to ABox by extending

interpretations to individual names. An interpretation I =(∆, ⋅I) not only maps atomic

concepts to sets, but in addition maps each individual name a to an element aI ∈∆., namely

I (C(a)) = aI ∈CI,

I(R(a, b))=(aI, bI)∈RI

We still assume unique name assumption as in ClassL.

‘set’ constructor is the SAME as in ClassL, which allows individual description in TBox.

49

The SAME as in

ClassL

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

50

Consistency

Consistency: An ABox A is consistent with respect to a TBox T if there is an interpretation I which is a model of both A and T.

e.g. : T={Parent⊑≤1hasChild.Person}

A={hasChild(mary, bob), hasChild(mary, cate)}

is consistent but Not consistent with respect the above TBox.

NOTE: it is the SAME as in ClassL, with respect to more complex TBox (Role axioms).

51

Other ABox ReasoningInstance Checking: Checking whether an assertion C(a) or

R(a, b) is entailed by an ABox A (and TBox via expansion)

A ⊨ C(a) or A ⊨ R(a, b)Instance retrieval: Given an ABox A and a concept C

retrieve all instance ai which satisfies C.

A ⊨ C(ai)

Concept Realization: Given an ABox A, a set of concepts and an individual a find the most specific concepts C in the set such that A ⊨ C(a)

NOTE: the last two services are the SAME as in ClassL, with respect to more complex TBox (Role axioms).

52

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

53

Tableaux Calculus The Tableaux calculus is a decision procedure solving

the problem of satisfiability.

If a formula is satisfiable, the procedure will constructively exhibit a model of the formula.

The basic idea is to incrementally build the model by looking at the formula, by decomposing it in a top-down fashion. The procedure exhaustively tries all the possibilities so that it can prove eventually that no model could be found for an unsatisfiable formula.

54

The Tableau Algorithm• Construct a model for the input concept description

C0.

• Model is represented by tree form.• The formula has been translated into Negation

Normal Form (NNM).• To decide satisfiability of the concept C0 , start with

the initial tree (root node).• Repeatedly apply expansion rules until find

contradiction or expansion completed.• Satisfiable iff a complete and contradiction-free tree

is found

55

Rules for Tableau Algorithm

56

When there are not both C1(x) and C2(x) in the ABox.

Add to the ABox C1(x) and C2(x) .

ABox’=ABox⋃{C1(x), C2(x) }

57

⊓ cont. TBox={Mother ≡Female ⊓∃hasChild.Person} ABox={Mother(Anna)}

Is ¬(∃hasChild.Person⊔∃ hasParent.Person) satisfiable?

Mother(Anna)

(Female ⊓∃hasChild.Person)(Anna)

Female(Anna)

(∃hasChild.Person)(Anna)

¬(∃hasChild.Person⊔∃ hasParent.Person)(Anna)

(¬∃hasChild.Person)(Anna)

(¬ ∃ hasParent.Person)(Anna)58

When there are neither C1(x) nor C2(x) in the ABox.

Split into multiple branches Add in branch 1 to the ABox C1(x)

and add in branch 2 to the Abox C2(x) .

ABox’=ABox⋃{C1(x)}

ABox’’=ABox⋃{C2(x)}

59

⊔ cont. TBox={Parent≡∃hasChild.Female⊔∃hasChild.Male,

Person≡Male⊔Female,

Mother≡Parent ⊓Female} ABox={Mother(Anna)}

Is ¬(∃hasChild.Person) satisfiable?

Mother(Anna)

Parent(Anna)

(∃hasChild.Female⊔∃hasChild.Male)(Anna)

(∃hasChild.Female)(Anna) (∃hasChild.Male)(Anna)

… …

60

When there are no individual name z such that both C(z) and R(x,z) in the ABox.

Add to the ABox C(z) and R(x,z) .

ABox’=ABox⋃{C(z), R(x,z) }

61

∃ cont. TBox={Parent≡∃hasChild.Female⊔∃hasChild.Male,

Person≡Male⊔Female,

Mother≡Parent ⊓Female} ABox={Mother(Anna), hasChild(Anna,Bob),

¬Female(Bob)}

Is ¬(∃hasChild.Person) satisfiable?

Mother(Anna)

Parent(Anna)

(∃hasChild.Female⊔∃hasChild.Male)(Anna)

… (∃hasChild.Male)(Anna)

hasChild(Anna,Bob)

Male(Bob)62

When there is R(x,z) but not C(z) in the ABox.

Add to the ABox C(z) .

ABox’=ABox⋃{C(z)}

63

∀ cont. TBox={DaughterParent≡∀hasChild.Female,

Male⊓Female⊑⊥} ABox={hasSibling(Anna,Bob), ¬Female(Bob)}

Is DaughterMather satisfiable?

DaughterMather(x)

∀hasChild.Female(x)

hasSibling(Anna,Bob)

Female(Bob)

¬Female(Bob)

64

Example of Tableau Reasoning Is ∀hasChild.Male⊓∃hasChild.¬Male satisfiable?

(∀hasChild.Male⊓∃hasChild.¬Male)(x)

(∀hasChild.Male)(x)

(∃hasChild.¬Male)(x)

hasChild(x,y)

¬Male(y)

Male(y)

65

Additional Rules

66

Exercise Suppose we have the following knowledge base: TBox:

Female⊔Male⊑Human Mother⊑Female Father⊑Male Child≡∃has.Mother⊓ ∃has.Father Male⊓Female⊑⊥

ABox: Mother(Anna) Father(Bob) has (Cate,Anna) has (Cate,Bob)

67

Prove:Human(Anna)¬Female(Bob)Child(Cate)Father⊓Mother⊑⊥

Exercise Prove with Tableau algorithm the satisfiability of the

following formula.

68

Complexity of Tableau Algorithms The satisifiability algorithm of ALC may need

exponential time and space. It is PSPACE-complete. A modified algorithm needs only polynomial space as it

assumes a depth-first search and store only the ‘correct’ path.

The consistency and instance checking problem for ALC are also PSPACE-complete.

The complexity results for other Description Logics varies according to corresponding constructors.

69