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

L ogics for D ata and K nowledge R epresentation

  • Upload
    chiku

  • View
    22

  • Download
    0

Embed Size (px)

DESCRIPTION

L ogics for D ata and K nowledge R epresentation. Description Logics. Outline. Overview Syntax Semantics Terminology Reasoning with Terminologies World Description Reasoning with World Descriptions Tableau Algorithm. Overview. - PowerPoint PPT Presentation

Citation preview

Page 1: L ogics  for  D ata  and  K nowledge R epresentation

LLogics for DData and KKnowledgeRRepresentation

Description Logics

Page 2: L ogics  for  D ata  and  K nowledge R epresentation

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

2

Page 3: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 4: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 5: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 6: L ogics  for  D ata  and  K nowledge R epresentation

Architecture of a KR system on DL

6

TBox

ABox

Description Language

Reasoning

Application

Programs

Rules

Page 7: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 8: L ogics  for  D ata  and  K nowledge R epresentation

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

8

Page 9: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 10: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 11: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 12: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 13: L ogics  for  D ata  and  K nowledge R epresentation

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!

Page 14: L ogics  for  D ata  and  K nowledge R epresentation

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!

Page 15: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 16: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 17: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 18: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 19: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 20: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 21: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 22: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 23: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 24: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 25: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 26: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 27: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 28: L ogics  for  D ata  and  K nowledge R epresentation

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.

Page 29: L ogics  for  D ata  and  K nowledge R epresentation

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

29

Page 30: L ogics  for  D ata  and  K nowledge R epresentation

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.

Page 31: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 32: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 33: L ogics  for  D ata  and  K nowledge R epresentation

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)

Page 34: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 35: L ogics  for  D ata  and  K nowledge R epresentation

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)

Page 36: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 37: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 38: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 39: L ogics  for  D ata  and  K nowledge R epresentation

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' …

Page 40: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 41: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 42: L ogics  for  D ata  and  K nowledge R epresentation

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

42

Page 43: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 44: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 45: L ogics  for  D ata  and  K nowledge R epresentation

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

45

Page 46: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 47: L ogics  for  D ata  and  K nowledge R epresentation

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

47

Page 48: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 49: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 50: L ogics  for  D ata  and  K nowledge R epresentation

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

50

Page 51: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 52: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 53: L ogics  for  D ata  and  K nowledge R epresentation

Outline Overview

Syntax

Semantics

Terminology

Reasoning with Terminologies

World Description

Reasoning with World Descriptions

Tableau Algorithm

53

Page 54: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 55: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 56: L ogics  for  D ata  and  K nowledge R epresentation

Rules for Tableau Algorithm

56

Page 57: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 58: L ogics  for  D ata  and  K nowledge R epresentation

⊓ 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

Page 59: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 60: L ogics  for  D ata  and  K nowledge R epresentation

⊔ 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

Page 61: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 62: L ogics  for  D ata  and  K nowledge R epresentation

∃ 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

Page 63: L ogics  for  D ata  and  K nowledge R epresentation

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

Add to the ABox C(z) .

ABox’=ABox⋃{C(z)}

63

Page 64: L ogics  for  D ata  and  K nowledge R epresentation

∀ 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

Page 65: L ogics  for  D ata  and  K nowledge R epresentation

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

Page 66: L ogics  for  D ata  and  K nowledge R epresentation

Additional Rules

66

Page 67: L ogics  for  D ata  and  K nowledge R epresentation

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⊑⊥

Page 68: L ogics  for  D ata  and  K nowledge R epresentation

Exercise Prove with Tableau algorithm the satisfiability of the

following formula.

68

Page 69: L ogics  for  D ata  and  K nowledge R epresentation

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