Knowledge Representation for the Semantic Web Lecture 5...

96
Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning Knowledge Representation for the Semantic Web Lecture 5: Description Logics IV Daria Stepanova slides based on Reasoning Web 2011 tutorial “Foundations of Description Logics and OWL” by S. Rudolph Max Planck Institute for Informatics D5: Databases and Information Systems group WS 2017/18 1 / 40

Transcript of Knowledge Representation for the Semantic Web Lecture 5...

Page 1: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Knowledge Representation for the Semantic WebLecture 5: Description Logics IV

Daria Stepanovaslides based on Reasoning Web 2011 tutorial “Foundations of Description Logics and OWL” by S. Rudolph

Max Planck Institute for InformaticsD5: Databases and Information Systems group

WS 2017/18

1 / 40

Page 2: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Unit Outline

Satisfaction and Entailment

Other Reasoning Problems

Algorithmic Approaches to DL Reasoning

2 / 40

Page 3: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Satisfaction and Satisfiability

3 / 40

Page 4: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Satisfaction and Satisfiability of Knowledge Bases

Satisfaction of a KB by an interpretation

An interpretation I satisfies (or is a model of) a knowledge baseK = 〈R, T ,A〉, if I satisfies every axiom of K, i.e., I |= α for α ∈ K.

KB (un)satisfiability / (in)consistency

A KB K is satisfiable (also: consistent), if it has some model; otherwise itis unsatisfiable (also: inconsistent or contradictory).

� unsatisfiability of a KB hints at a design bug

� unsatisfiable axioms carry no information:

α is unsatisfiable ⇐⇒ ¬α is tautologic (if negation is applicable),i.e., I |= ¬α for every interpretation I

4 / 40

Page 5: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Satisfaction and Satisfiability of Knowledge Bases

Satisfaction of a KB by an interpretation

An interpretation I satisfies (or is a model of) a knowledge baseK = 〈R, T ,A〉, if I satisfies every axiom of K, i.e., I |= α for α ∈ K.

KB (un)satisfiability / (in)consistency

A KB K is satisfiable (also: consistent), if it has some model; otherwise itis unsatisfiable (also: inconsistent or contradictory).

� unsatisfiability of a KB hints at a design bug

� unsatisfiable axioms carry no information:

α is unsatisfiable ⇐⇒ ¬α is tautologic (if negation is applicable),i.e., I |= ¬α for every interpretation I

4 / 40

Page 6: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Satisfaction and Satisfiability of Knowledge Bases

Satisfaction of a KB by an interpretation

An interpretation I satisfies (or is a model of) a knowledge baseK = 〈R, T ,A〉, if I satisfies every axiom of K, i.e., I |= α for α ∈ K.

KB (un)satisfiability / (in)consistency

A KB K is satisfiable (also: consistent), if it has some model; otherwise itis unsatisfiable (also: inconsistent or contradictory).

� unsatisfiability of a KB hints at a design bug

� unsatisfiable axioms carry no information:

α is unsatisfiable ⇐⇒ ¬α is tautologic (if negation is applicable),i.e., I |= ¬α for every interpretation I

4 / 40

Page 7: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: KB Satisfiability

RBox Rowns v caresFor

”If somebody owns something, s/he cares for it.”

TBox THealthy v ¬Dead

”Healthy beings are not dead.”

Cat v Dead tAlive”Every cat is dead or alive.”

HappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy”A happy cat owner owns a cat andall beings he cares for are healthy.”

ABox AHappyCatOwner(schroedinger)”Schrodinger is a happy cat owner.”

Is K = 〈R, T ,A〉 satisfiable?

5 / 40

Page 8: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: KB Satisfiability

RBox Rowns v caresFor

”If somebody owns something, s/he cares for it.”

TBox THealthy v ¬Dead

”Healthy beings are not dead.”

Cat v Dead tAlive”Every cat is dead or alive.”

HappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy”A happy cat owner owns a cat andall beings he cares for are healthy.”

ABox AHappyCatOwner(schroedinger)”Schrodinger is a happy cat owner.”

Is K = 〈R, T ,A〉 satisfiable? Yes!

5 / 40

Page 9: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: KB SatisfiabilityTBox T

Deer v Mammal

”Deers are mammals.”

Mammal u Flies v Bat

”Mammals, who fly are bats.”

Bat v ∀worksFor .{batman}”Bats work only for Batman”

ABox ADeer u ∃hasNose.Red(rudolph)

”Rudolph is a deer with a red nose.”

∀worksFor−.(¬Deer t Flies)(santa)

”Only non-deers or fliers work for Santa.”

worksFor(rudolph, santa)

”Rudolph works for Santa.”

santa 6≈ batman

“Santa is different from Batman.”

Is K satisfiable?6 / 40

Page 10: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: KB SatisfiabilityTBox T

Deer v Mammal

”Deers are mammals.”

Mammal u Flies v Bat

”Mammals, who fly are bats.”

Bat v ∀worksFor .{batman}”Bats work only for Batman”

ABox ADeer u ∃hasNose.Red(rudolph)

”Rudolph is a deer with a red nose.”

∀worksFor−.(¬Deer t Flies)(santa)

”Only non-deers or fliers work for Santa.”

worksFor(rudolph, santa)

”Rudolph works for Santa.”

santa 6≈ batman

“Santa is different from Batman.”

Is K satisfiable? No!6 / 40

Page 11: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Entailment of Axioms

Entailment checking

A knowledge base K entails an axiom α (in symbols, K |= α), if everymodel I of K satisfies α.

models of K

interpretations satisfying α

� Informally, K |= α elicits implicit knowledge

� If α occurs in K, then trivially K |= α

� If K is unsatisfiable, then K |= α for every axiom α

7 / 40

Page 12: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: EntailmentRBox Rowns v caresFor

”If somebody owns something, s/he cares for it.”

TBox THealthy v ¬Dead

”Healthy beings are not dead.”

Cat v Dead tAlive”Every cat is dead or alive.”

HappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy”A happy cat owner owns a cat andall beings he cares for are healthy.”

ABox AHappyCatOwner(schroedinger)”Schrodinger is a happy cat owner.”

� K |= ∃caresFor .(Cat uAlive)(schroedinger)

� K |= ∀owns.¬Cat v ¬HappyCatOwner

� K |= Cat v Healthy

8 / 40

Page 13: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: EntailmentRBox Rowns v caresFor

”If somebody owns something, s/he cares for it.”

TBox THealthy v ¬Dead

”Healthy beings are not dead.”

Cat v Dead tAlive”Every cat is dead or alive.”

HappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy”A happy cat owner owns a cat andall beings he cares for are healthy.”

ABox AHappyCatOwner(schroedinger)”Schrodinger is a happy cat owner.”

� K |= ∃caresFor .(Cat uAlive)(schroedinger)?

� K |= ∀owns.¬Cat v ¬HappyCatOwner

� K |= Cat v Healthy

8 / 40

Page 14: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: EntailmentRBox Rowns v caresFor

”If somebody owns something, s/he cares for it.”

TBox THealthy v ¬Dead

”Healthy beings are not dead.”

Cat v Dead tAlive”Every cat is dead or alive.”

HappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy”A happy cat owner owns a cat andall beings he cares for are healthy.”

ABox AHappyCatOwner(schroedinger)”Schrodinger is a happy cat owner.”

� K |= ∃caresFor .(Cat uAlive)(schroedinger)

� K |= ∀owns.¬Cat v ¬HappyCatOwner?

� K |= Cat v Healthy

8 / 40

Page 15: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: EntailmentRBox Rowns v caresFor

”If somebody owns something, s/he cares for it.”

TBox THealthy v ¬Dead

”Healthy beings are not dead.”

Cat v Dead tAlive”Every cat is dead or alive.”

HappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy”A happy cat owner owns a cat andall beings he cares for are healthy.”

ABox AHappyCatOwner(schroedinger)”Schrodinger is a happy cat owner.”

� K |= ∃caresFor .(Cat uAlive)(schroedinger)

� K |= ∀owns.¬Cat v ¬HappyCatOwner

� K |= Cat v Healthy?

8 / 40

Page 16: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: EntailmentRBox Rowns v caresFor

”If somebody owns something, s/he cares for it.”

TBox THealthy v ¬Dead

”Healthy beings are not dead.”

Cat v Dead tAlive”Every cat is dead or alive.”

HappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy”A happy cat owner owns a cat andall beings he cares for are healthy.”

ABox AHappyCatOwner(schroedinger)”Schrodinger is a happy cat owner.”

� K |= ∃caresFor .(Cat uAlive)(schroedinger)

� K |= ∀owns.¬Cat v ¬HappyCatOwner

� K 6|= Cat v Healthy

8 / 40

Page 17: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Decidability of DLs

DLs are decidable, i.e., there exists an algorithm that

Given: a KB and an axiom α,

Output: “yes” iff KB |= α and no otherwise.

� Likewise, there is a similar algorithm that decides whether an inputKB is satisfiable

� Just ask KB |= > v ⊥: if the answer is “yes”, then KB isunsatisfiable, otherwise it is satisfiable.

9 / 40

Page 18: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Standard Reasoning Problems

10 / 40

Page 19: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Standard DL Reasoning Problems

� KB Satisfiability: verify whether the KB is satisfiable

� Entailment: verify whether the KB entails a certain axiome.g., K |= CatOwner(Schroedinger)

� Concept Satisfiability: verify whether a given concept is(un)satisfiable, e.g., K |= Dead uAlive v ⊥

� Coherence: verify whether none of the concepts in the KB isunsatisfiable

� Classification: compute the subsumption hierarchy of all atomicconcepts, e.g. K |= Healthy v ¬Dead , etc.

� Instance Retrieval: retrieve all the individuals known to beinstances of a certain concept, e.g., find all a, s.t. ∃caresFor(a)

11 / 40

Page 20: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Deciding KB Satisfiability

� deciding KB satisfiability is a basic inference task(the “mother” of all standard reasoning tasks)

� directly needed in the process of KB engineering� detect severe modeling errors

� other reasoning tasks can be reduced to checking KB(un)satisfiability (and vice versa)

Theorem 1: Reducing reasoning problems to KB satisfiability

Let K be a KB and a an individual name not in K. Then

2. C is satisfiable w.r.t. K iff K ∪ C(a) is satisfiable;

3. K is coherent iff, for each concept name C, K ∪ C(a) is satisfiable;

4. K |= A v B iff K ∪ (A u ¬B)(a) is unsatisfiable;

5. K |= B(b) iff K ∪ ¬B(b) is unsatisfiable.

12 / 40

Page 21: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Entailment Checking

� used in the KB modeling process to check, whether the specifiedknowledge has the intended consequences

� used for querying the KB if certain propositions are necessarily true

Reduction of entailment problem K |= α to checking KB inconsistency(see Th.1) follows the idea of proof by contradiction:

� negate the axiom α

� add the negated axiom ¬α to K� check for inconsistency of the resulting KB K ∪ {¬α}

If an axiom cannot be negated directly, its negation can be emulated({¬α} Aα).

13 / 40

Page 22: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Entailment Checking, cont’dAxiom sets Aα such that K |= α exactly if K ∪Aα is unsatisfiable:

α Aαr1 ◦ . . . ◦ rn v r {¬r(c0, cn), r1(c0, c1), . . . , rn(cn−1, cn)}Dis(r, r′) {r(c1, c2), r′(c1, c2)}C v D {(C u ¬D)(c)} or {> v ∃u(C u ¬D)}C(a) {¬C(a)}¬C(a) {C(a)}r(a, b) {¬r(a, b)}¬r(a, b) {r(a, b)}a ≈ b {a 6≈ b}a 6≈ b {a ≈ b}

� Individual names c with possible subscripts are supposed to be fresh1.

� For GCIs (third line), the first variant is normally employed; the second islogical equivalent instead of just emulating.

1Fresh individuals are those not appearing in the given KB K.14 / 40

Page 23: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Concept Satisfiability

Concept Satisfiability

A concept expression C is called satisfiable with respect to a knowledgebase K, if there exists a model I of K such that CI 6= ∅.

� Unsatisfiable atomic concepts normally indicate KB modeling errors.

� Concept satisfiability can be reduced to KB consistency (Th. 1) andnon-entailment resp.:

� C is satisfiable wrt. K ⇐⇒ K ∪ {C(a)} is consistent, where a is afresh individual name

� C is satisfiable wrt. K ⇐⇒ K 6|= C v ⊥

15 / 40

Page 24: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Concept Satisfiability, cont’d

Entailment of general concept inclusions C v D and equivalences C ≡ Dcan be reduced to both concept (un)satisfiability and KB(un)satisfiability.

C v D ⇐⇒ C u ¬D is unsatisfiable

⇐⇒ KB {C(a), ¬D(a)} is unsatisfiable

C ≡ D ⇐⇒ (C u ¬D) t (D u ¬C) is unsatisfiable

⇐⇒ both C u ¬D and D u ¬C are unsatisfiable

⇐⇒ both KBs {C(a), ¬D(a)} and{D(a), ¬C(a)} are unsatisfiable

16 / 40

Page 25: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Classification

KB Classification

Classification of a knowledge base K is to determine for any two conceptnames A,B , whether K |= A v B holds.

� This is useful at KB design time for checking the inferred concepthierarchy. Also, computing this hierarchy once and storing it canspeed up further queries.

� Classification can be reduced to checking entailment of GCIs.

� While this requires quadratically many checks, one can often domuch better in practice by applying optimizations and exploitingthat subsumption is a preorder.

17 / 40

Page 26: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Instance Retrieval

Instance Retrieval

Instance retrieval task is to find all named individuals that are known tobe in a certain concept (role).

� retrieve(C,K) = {a ∈ NI | aI ∈ CI for every model I of K }

� retrieve(r,K) = {(a, b) ∈ NI2 | (aI , bI) ∈ rI for every model I of K }

� It can be reduced to checking entailment of as many individualassertions as there are named individuals in K i.e., test K |= C(a)for each a occurring in K (excluding pathologic cases).

� Depending on the system used and the inference algorithm, this canbe done in a much more efficient way (e.g. by a transformation intoa database query, in SQL or Datalog).

18 / 40

Page 27: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Novel Reasoning Problems

In recent years, other reasoning tasks have been gaining attention

� Conjunctive Query Answering

conjunctive queries allow to join pieces of informationmore expressive: union of CQAs (akin to SQL), rules

� Inconsistency Handling

repair inconsistent KB or avoid that K |= α for every α (‘knowledgeexplosion’) if K is inconsistent by introducing, e.g., new semantics

� Entailment Explanation

identify axioms in the knowledge base that support a conclusionK |= α, typically a smallest K′ ⊆ K such that K′ |= α(’axiom pinpointing’)

19 / 40

Page 28: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Novel Reasoning Problems

In recent years, other reasoning tasks have been gaining attention

� Conjunctive Query Answering

conjunctive queries allow to join pieces of informationmore expressive: union of CQAs (akin to SQL), rules

� Inconsistency Handling

repair inconsistent KB or avoid that K |= α for every α (‘knowledgeexplosion’) if K is inconsistent by introducing, e.g., new semantics

� Entailment Explanation

identify axioms in the knowledge base that support a conclusionK |= α, typically a smallest K′ ⊆ K such that K′ |= α(’axiom pinpointing’)

19 / 40

Page 29: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Novel Reasoning Problems

In recent years, other reasoning tasks have been gaining attention

� Conjunctive Query Answering

conjunctive queries allow to join pieces of informationmore expressive: union of CQAs (akin to SQL), rules

� Inconsistency Handling

repair inconsistent KB or avoid that K |= α for every α (‘knowledgeexplosion’) if K is inconsistent by introducing, e.g., new semantics

� Entailment Explanation

identify axioms in the knowledge base that support a conclusionK |= α, typically a smallest K′ ⊆ K such that K′ |= α(’axiom pinpointing’)

19 / 40

Page 30: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Novel Reasoning Problems

In recent years, other reasoning tasks have been gaining attention

� Conjunctive Query Answering

conjunctive queries allow to join pieces of informationmore expressive: union of CQAs (akin to SQL), rules

� Inconsistency Handling

repair inconsistent KB or avoid that K |= α for every α (‘knowledgeexplosion’) if K is inconsistent by introducing, e.g., new semantics

� Entailment Explanation

identify axioms in the knowledge base that support a conclusionK |= α, typically a smallest K′ ⊆ K such that K′ |= α(’axiom pinpointing’)

19 / 40

Page 31: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Conjunctive Query Answering

Generalize Instance Retrieval by allowing joins and projections:

q(Z) = ∃Y ∃X.childOf (Z, Y ) ∧ childOf (Z,X) ∧marriedWith(Y,X)

� In databases:

� just one model (the DB itself) by Closed World Assumption(R. Reiter, 1978: if atom A is not provable from DB, ¬A is true).

� this is rather easy

20 / 40

Page 32: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Conjunctive Query Answering, cont’d

Generalize Instance Retrieval by allowing joins and projections:q(Z) = ∃Y ∃X.childOf (Z, Y ) ∧ childOf (Z,X) ∧marriedWith(Y,X)

� In Description Logics:

� one knowledge base, many models (Open World Assumption)

� not so easy

� the ∃-variables must be suitably mapped in every model

21 / 40

Page 33: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Algorithmic Approaches to DL Reasoning

22 / 40

Page 34: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Types of Reasoning Procedures

� Roughly, DL inference algorithms can be separated into two groups:

model-based algorithms: show satisfiability by constructing a model(or a representation of it).

Examples: tableau, automata, type elimination algorithms

proof-based algorithms: apply deduction rules to the KB to infernew axioms.

Examples: resolution, consequence-based algorithms

Note:

� both strategies are known from first-order logic theorem proving

� additional care is needed to ensure decidability (in particularcompleteness and termination of algorithms).

23 / 40

Page 35: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Types of Reasoning Procedures

� Roughly, DL inference algorithms can be separated into two groups:

model-based algorithms: show satisfiability by constructing a model(or a representation of it).

Examples: tableau, automata, type elimination algorithms

proof-based algorithms: apply deduction rules to the KB to infernew axioms.

Examples: resolution, consequence-based algorithms

Note:

� both strategies are known from first-order logic theorem proving

� additional care is needed to ensure decidability (in particularcompleteness and termination of algorithms).

23 / 40

Page 36: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Algorithm for DLs

Tableau-based techniques

They try to decide the satisfiability of a formula (or theory) by using rulesto construct (a representation of) a model.

� Tableau-based techniques have been used in FOL and modal logicsfor many years.

� For DLs, they have been extensively explored since the late 1990s[Smolka, 1990], [Baader and Sattler, 2001].

� They are considered well-suited for implementation.

� In fact, many of the most successful DL reasoners implementtableau techniques or variations of them,e.g.: RACER, FaCT++, Pellet, Hermit, etc.

24 / 40

Page 37: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Algorithm for Deciding KB Satisfiability

� Perform a ”bottom-up” construction of a model:

� Initialize an interpretation by all explicitly known (i.e., named)individuals and their known properties.

� Most probably, this ”model draft” will violate some of the axioms.

� Iteratively ”repair” it by adding new information about concept orrole memberships and/or introducing new (i.e., anonymous)individuals, this may require case distinction and backtracking.

� If we arrive at an interpretation satisfying all axioms, satisfiability hasbeen shown.

� If every repairing attempt eventually results in an overt inconsistency,unsatisfiability has been shown.

Note: as the finite model property does not hold in general, not a fullmodel is constructed but a finite representation of it (cf. “blocking”).

25 / 40

Page 38: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Algorithm for Deciding KB Satisfiability

� Perform a ”bottom-up” construction of a model:

� Initialize an interpretation by all explicitly known (i.e., named)individuals and their known properties.

� Most probably, this ”model draft” will violate some of the axioms.

� Iteratively ”repair” it by adding new information about concept orrole memberships and/or introducing new (i.e., anonymous)individuals, this may require case distinction and backtracking.

� If we arrive at an interpretation satisfying all axioms, satisfiability hasbeen shown.

� If every repairing attempt eventually results in an overt inconsistency,unsatisfiability has been shown.

Note: as the finite model property does not hold in general, not a fullmodel is constructed but a finite representation of it (cf. “blocking”).

25 / 40

Page 39: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Algorithm for Deciding KB Satisfiability

� Perform a ”bottom-up” construction of a model:

� Initialize an interpretation by all explicitly known (i.e., named)individuals and their known properties.

� Most probably, this ”model draft” will violate some of the axioms.

� Iteratively ”repair” it by adding new information about concept orrole memberships and/or introducing new (i.e., anonymous)individuals, this may require case distinction and backtracking.

� If we arrive at an interpretation satisfying all axioms, satisfiability hasbeen shown.

� If every repairing attempt eventually results in an overt inconsistency,unsatisfiability has been shown.

Note: as the finite model property does not hold in general, not a fullmodel is constructed but a finite representation of it (cf. “blocking”).

25 / 40

Page 40: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Algorithm for Deciding KB Satisfiability

� Perform a ”bottom-up” construction of a model:

� Initialize an interpretation by all explicitly known (i.e., named)individuals and their known properties.

� Most probably, this ”model draft” will violate some of the axioms.

� Iteratively ”repair” it by adding new information about concept orrole memberships and/or introducing new (i.e., anonymous)individuals, this may require case distinction and backtracking.

� If we arrive at an interpretation satisfying all axioms, satisfiability hasbeen shown.

� If every repairing attempt eventually results in an overt inconsistency,unsatisfiability has been shown.

Note: as the finite model property does not hold in general, not a fullmodel is constructed but a finite representation of it (cf. “blocking”).

25 / 40

Page 41: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Algorithm for Deciding KB Satisfiability

� Perform a ”bottom-up” construction of a model:

� Initialize an interpretation by all explicitly known (i.e., named)individuals and their known properties.

� Most probably, this ”model draft” will violate some of the axioms.

� Iteratively ”repair” it by adding new information about concept orrole memberships and/or introducing new (i.e., anonymous)individuals, this may require case distinction and backtracking.

� If we arrive at an interpretation satisfying all axioms, satisfiability hasbeen shown.

� If every repairing attempt eventually results in an overt inconsistency,unsatisfiability has been shown.

Note: as the finite model property does not hold in general, not a fullmodel is constructed but a finite representation of it (cf. “blocking”).

25 / 40

Page 42: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Algorithm for Deciding KB Satisfiability

� Perform a ”bottom-up” construction of a model:

� Initialize an interpretation by all explicitly known (i.e., named)individuals and their known properties.

� Most probably, this ”model draft” will violate some of the axioms.

� Iteratively ”repair” it by adding new information about concept orrole memberships and/or introducing new (i.e., anonymous)individuals, this may require case distinction and backtracking.

� If we arrive at an interpretation satisfying all axioms, satisfiability hasbeen shown.

� If every repairing attempt eventually results in an overt inconsistency,unsatisfiability has been shown.

Note: as the finite model property does not hold in general, not a fullmodel is constructed but a finite representation of it (cf. “blocking”).

25 / 40

Page 43: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Overview Example: Happy Cat Owner

RBox Rowns v caresFor

”If somebody owns something, s/he cares for it.”

TBox THealthy v ¬Dead

”Healthy beings are not dead.”

Cat v Dead tAlive”Every cat is dead or alive.”

HappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy”A happy cat owner owns a cat andall beings he cares for are healthy.”

ABox AHappyCatOwner(schroedinger)”Schrodinger is a happy cat owner.”

Is K satisfiable?

26 / 40

Page 44: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Overview Example: Happy Cat OwnerRBox Rowns v caresFor

TBox THealthy v ¬Dead

Cat v Dead tAliveHappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy

ABox AHappyCatOwner(s)

Is K satisfiable?

s

c

L(s) = {HappyCatOwner}

L(c) = {Cat}

owns caresFor

27 / 40

Page 45: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Overview Example: Happy Cat OwnerRBox Rowns v caresFor

TBox THealthy v ¬Dead

Cat v Dead tAliveHappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy

ABox AHappyCatOwner(s)

Is K satisfiable?

s

c

L(s) = {HappyCatOwner}

L(c) = {Cat}

owns caresFor

27 / 40

Page 46: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Overview Example: Happy Cat OwnerRBox Rowns v caresFor

TBox THealthy v ¬Dead

Cat v Dead tAliveHappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy

ABox AHappyCatOwner(s)

Is K satisfiable?

s

c

L(s) = {HappyCatOwner}

L(c) = {Cat}

owns

caresFor

27 / 40

Page 47: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Overview Example: Happy Cat OwnerRBox Rowns v caresFor

TBox THealthy v ¬Dead

Cat v Dead tAliveHappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy

ABox AHappyCatOwner(s)

Is K satisfiable?

s

c

L(s) = {HappyCatOwner}

L(c) = {Cat}

owns caresFor

27 / 40

Page 48: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Overview Example: Happy Cat OwnerRBox Rowns v caresFor

TBox THealthy v ¬Dead

Cat v Dead tAliveHappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy

ABox AHappyCatOwner(s)

Is K satisfiable?

s

c

L(s) = {HappyCatOwner}

L(c) = {Cat , Healthy}

owns caresFor

27 / 40

Page 49: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Overview Example: Happy Cat OwnerRBox Rowns v caresFor

TBox THealthy v ¬Dead

Cat v Dead tAliveHappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy

ABox AHappyCatOwner(s)

Is K satisfiable?

s

c

L(s) = {HappyCatOwner}

L(c) = {Cat , Healthy,¬Dead}

owns caresFor

27 / 40

Page 50: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Overview Example: Happy Cat OwnerRBox Rowns v caresFor

TBox THealthy v ¬Dead

Cat v Dead tAliveHappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy

ABox AHappyCatOwner(s)

Is K satisfiable?

s

c

L(s) = {HappyCatOwner}

L(c) = {Cat , Healthy,¬Dead,Alive}

owns caresFor

27 / 40

Page 51: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Overview Example: Happy Cat OwnerRBox Rowns v caresFor

TBox THealthy v ¬Dead

Cat v Dead tAliveHappyCatOwner v ∃owns.Cat u ∀caresFor .Healthy

ABox AHappyCatOwner(s)

Is K satisfiable? Yes!

s

c

L(s) = {HappyCatOwner}

L(c) = {Cat , Healthy,¬Dead,Alive}

owns caresFor

27 / 40

Page 52: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Naive Tableau Algorithm for ALCGiven a KB in NNF we construct a tableau, which for ALC KBs consists of

� a set of nodes, labeled with individual names or variable names

� directed edges between some pairs of nodes

� for each node labeled x, a set L(x) of class expressions and

� for each pair of nodes x and y, a set L(x, y) of role names.

Provisos:

� omit edges which are labeled with the empty set

� assume > is contained in L(x) for any x.

� concept expressions should be in negation normal form

28 / 40

Page 53: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Recall ALC Syntax

Construct Syntax Example Semantics

atomic concept A Doctor AI ⊆ ∆I

atomic role r hasChild rI ⊆ ∆I ×∆I

conjunction C uD Human uMale CI ∩DI

unqual. exist. res.2 ∃r ∃hasChild {o | ∃o′.(o, o′) ∈ rI}value res. ∀r.C ∀hasChild .Male {o | ∀o′.(o, o′) ∈ rI → o′ ∈ CI}full negation ¬C ¬∀hasChild .Male ∆I\CI

2Unqualified existential restriction29 / 40

Page 54: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Negation Normal Form

Negation normal form (NNF)

A concept expression C is in negation normal form, if negation occurs inC only in front of atomic concepts, nominal concepts and self-restrictions.

Given a KB K to construct nnf (K) we need to� replace every C ≡ D by C v D and D v C;� replace every C v D by ¬C tD;� recursively translate every C into nnf (C ):

nnf(C) C if C ∈ {A,¬A, {a1 . . . an},¬{a1 . . . an},∃r.Self,¬∃r.Self,>,⊥}nnf(¬¬C) nnf(C)nnf(C uD) nnf(C) u nnf(D)nnf(C tD) nnf(C) t nnf(D)

nnf(¬(C tD)) nnf(¬C u ¬D)nnf(¬(C uD)) nnf(¬C t ¬D)

nnf(∀r.C) ∀r.nnf(C)nnf(∃r.C) ∃r.nnf(C)

nnf(¬∀r.C) ∃r.nnf(¬C)nnf(¬∃r.C) ∀r.nnf(¬C)nnf(≤ k r.C) ≤ k r.nnf(C)nnf(≥ k r.C) ≥ k r.nnf(C)

nnf(¬ ≤ k r.C) ≥ (k + 1) r.nnf(C)nnf(¬ ≥ k r.C) ≤ (k − 1) r.nnf(C)

nnf(¬>) ⊥

C and nnf(C) are logically equivalent, i.e., CI = nnf(C)I , for every interpre-tation I, and the translation process terminates in linear time.

30 / 40

Page 55: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Negation Normal Form

Negation normal form (NNF)

A concept expression C is in negation normal form, if negation occurs inC only in front of atomic concepts, nominal concepts and self-restrictions.

Given a KB K to construct nnf (K) we need to� replace every C ≡ D by C v D and D v C;� replace every C v D by ¬C tD;

� recursively translate every C into nnf (C ):

nnf(C) C if C ∈ {A,¬A, {a1 . . . an},¬{a1 . . . an},∃r.Self,¬∃r.Self,>,⊥}nnf(¬¬C) nnf(C)nnf(C uD) nnf(C) u nnf(D)nnf(C tD) nnf(C) t nnf(D)

nnf(¬(C tD)) nnf(¬C u ¬D)nnf(¬(C uD)) nnf(¬C t ¬D)

nnf(∀r.C) ∀r.nnf(C)nnf(∃r.C) ∃r.nnf(C)

nnf(¬∀r.C) ∃r.nnf(¬C)nnf(¬∃r.C) ∀r.nnf(¬C)nnf(≤ k r.C) ≤ k r.nnf(C)nnf(≥ k r.C) ≥ k r.nnf(C)

nnf(¬ ≤ k r.C) ≥ (k + 1) r.nnf(C)nnf(¬ ≥ k r.C) ≤ (k − 1) r.nnf(C)

nnf(¬>) ⊥

C and nnf(C) are logically equivalent, i.e., CI = nnf(C)I , for every interpre-tation I, and the translation process terminates in linear time.

30 / 40

Page 56: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Negation Normal Form

Negation normal form (NNF)

A concept expression C is in negation normal form, if negation occurs inC only in front of atomic concepts, nominal concepts and self-restrictions.

Given a KB K to construct nnf (K) we need to� replace every C ≡ D by C v D and D v C;� replace every C v D by ¬C tD;� recursively translate every C into nnf (C ):

nnf(C) C if C ∈ {A,¬A, {a1 . . . an},¬{a1 . . . an},∃r.Self,¬∃r.Self,>,⊥}nnf(¬¬C) nnf(C)nnf(C uD) nnf(C) u nnf(D)nnf(C tD) nnf(C) t nnf(D)

nnf(¬(C tD)) nnf(¬C u ¬D)nnf(¬(C uD)) nnf(¬C t ¬D)

nnf(∀r.C) ∀r.nnf(C)nnf(∃r.C) ∃r.nnf(C)

nnf(¬∀r.C) ∃r.nnf(¬C)nnf(¬∃r.C) ∀r.nnf(¬C)nnf(≤ k r.C) ≤ k r.nnf(C)nnf(≥ k r.C) ≥ k r.nnf(C)

nnf(¬ ≤ k r.C) ≥ (k + 1) r.nnf(C)nnf(¬ ≥ k r.C) ≤ (k − 1) r.nnf(C)

nnf(¬>) ⊥

C and nnf(C) are logically equivalent, i.e., CI = nnf(C)I , for every interpre-tation I, and the translation process terminates in linear time.

30 / 40

Page 57: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Negation Normal Form

Negation normal form (NNF)

A concept expression C is in negation normal form, if negation occurs inC only in front of atomic concepts, nominal concepts and self-restrictions.

Given a KB K to construct nnf (K) we need to� replace every C ≡ D by C v D and D v C;� replace every C v D by ¬C tD;� recursively translate every C into nnf (C ):

nnf(C) C if C ∈ {A,¬A, {a1 . . . an},¬{a1 . . . an},∃r.Self,¬∃r.Self,>,⊥}nnf(¬¬C) nnf(C)nnf(C uD) nnf(C) u nnf(D)nnf(C tD) nnf(C) t nnf(D)

nnf(¬(C tD)) nnf(¬C u ¬D)nnf(¬(C uD)) nnf(¬C t ¬D)

nnf(∀r.C) ∀r.nnf(C)nnf(∃r.C) ∃r.nnf(C)

nnf(¬∀r.C) ∃r.nnf(¬C)nnf(¬∃r.C) ∀r.nnf(¬C)nnf(≤ k r.C) ≤ k r.nnf(C)nnf(≥ k r.C) ≥ k r.nnf(C)

nnf(¬ ≤ k r.C) ≥ (k + 1) r.nnf(C)nnf(¬ ≥ k r.C) ≤ (k − 1) r.nnf(C)

nnf(¬>) ⊥

C and nnf(C) are logically equivalent, i.e., CI = nnf(C)I , for every interpre-tation I, and the translation process terminates in linear time. 30 / 40

Page 58: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Negation Normal Form

Negation Normal Form

FilmActor v (∃actedIn uArtist) t ¬(¬∃actedIn t ∃playsIn.Theater)

1. ¬FilmActor t (∃actedIn uArtist) t ¬(¬∃actedIn t ∃playsIn.Theater)

2. ¬FilmActor t (∃actedIn uArtist) t (∃actedIn u ¬∃playsIn.Theater)

3. ¬FilmActor t (∃actedIn uArtist) t (∃actedIn u ∀playsIn.¬Theater)

31 / 40

Page 59: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Negation Normal Form

Negation Normal Form

FilmActor v (∃actedIn uArtist) t ¬(¬∃actedIn t ∃playsIn.Theater)

1. ¬FilmActor t (∃actedIn uArtist) t ¬(¬∃actedIn t ∃playsIn.Theater)

2. ¬FilmActor t (∃actedIn uArtist) t (∃actedIn u ¬∃playsIn.Theater)

3. ¬FilmActor t (∃actedIn uArtist) t (∃actedIn u ∀playsIn.¬Theater)

31 / 40

Page 60: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Negation Normal Form

Negation Normal Form

FilmActor v (∃actedIn uArtist) t ¬(¬∃actedIn t ∃playsIn.Theater)

1. ¬FilmActor t (∃actedIn uArtist) t ¬(¬∃actedIn t ∃playsIn.Theater)

2. ¬FilmActor t (∃actedIn uArtist) t (∃actedIn u ¬∃playsIn.Theater)

3. ¬FilmActor t (∃actedIn uArtist) t (∃actedIn u ∀playsIn.¬Theater)

31 / 40

Page 61: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Negation Normal Form

Negation Normal Form

FilmActor v (∃actedIn uArtist) t ¬(¬∃actedIn t ∃playsIn.Theater)

1. ¬FilmActor t (∃actedIn uArtist) t ¬(¬∃actedIn t ∃playsIn.Theater)

2. ¬FilmActor t (∃actedIn uArtist) t (∃actedIn u ¬∃playsIn.Theater)

3. ¬FilmActor t (∃actedIn uArtist) t (∃actedIn u ∀playsIn.¬Theater)

31 / 40

Page 62: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Initial Tableau

For an ALC knowledge base K in negation normal form, the initial tableau isdefined as follows:

1. For each individual a occurring in K, create a node labeled a and setL(a) = ∅.

2. For all pairs a, b of individuals, set L(a, b) = ∅.

3. For each ABox statement C(a) in K, set L(a)← C.

4. For each ABox statement r(a, b) in K set L(a, b)← r.

Note: “←” means “update with”, “add to”

32 / 40

Page 63: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Initial Tableau

K = {A(a), (∃r.B)(a), r(a, b), r(a, c), s(b, b), (A tB)(c),¬A t (∀s.B)}

b

a

c

L(b) = ∅

L(a) = {A, ∃r.B}

L(c) = {A tB}

r

s

s

33 / 40

Page 64: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Initial Tableau

K = {A(a), (∃r.B)(a), r(a, b), r(a, c), s(b, b), (A tB)(c),¬A t (∀s.B)}

b

a

c

L(b) = ∅

L(a) = {A,

∃r.B}

L(c) = {A tB}

r

s

s

33 / 40

Page 65: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Initial Tableau

K = {A(a), (∃r.B)(a), r(a, b), r(a, c), s(b, b), (A tB)(c),¬A t (∀s.B)}

b

a

c

L(b) = ∅

L(a) = {A, ∃r.B}

L(c) = {A tB}

r

s

s

33 / 40

Page 66: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Initial Tableau

K = {A(a), (∃r.B)(a), r(a, b), r(a, c), s(b, b), (A tB)(c),¬A t (∀s.B)}

b

a

c

L(b) = ∅

L(a) = {A, ∃r.B}

L(c) = {A tB}

r

s

s

33 / 40

Page 67: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Initial Tableau

K = {A(a), (∃r.B)(a), r(a, b), r(a, c), s(b, b), (A tB)(c),¬A t (∀s.B)}

b

a

c

L(b) = ∅

L(a) = {A, ∃r.B}

L(c) = {A tB}

r

s

s

33 / 40

Page 68: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Initial Tableau

K = {A(a), (∃r.B)(a), r(a, b), r(a, c), s(b, b), (A tB)(c),¬A t (∀s.B)}

b

a

c

L(b) = ∅

L(a) = {A, ∃r.B}

L(c) = {A tB}

r

s

s

33 / 40

Page 69: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Initial Tableau

K = {A(a), (∃r.B)(a), r(a, b), r(a, c), s(b, b), (A tB)(c),¬A t (∀s.B)}

b

a

c

L(b) = ∅

L(a) = {A, ∃r.B}

L(c) = {A tB}

r

s

s

33 / 40

Page 70: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Expansion Rules for the Naive Tableau

� u-rule: If C uD ∈ L(x) and {C,D} 6⊆ L(x), then setL(x)← {C,D}.

� t-rule: If C tD ∈ L(x) and {C,D} ∩ L(x) = ∅, then setL(x)← C or L(x)← D.

� ∃-rule: If ∃r.C ∈ L(x) and there is no y with r ∈ L(x, y) andC ∈ L(y), then

1. add a new node with label y (where y is a new node label),

2. set L(x, y) = {r}, and

3. set L(y) = {C}.

� ∀-rule: If ∀r.C ∈ L(x) and there is a node y with r ∈ L(x, y) andC 6∈ L(y), then set L(y)← C.

� TBox-rule: If C is a (rewritten and normalized) TBox statement andC 6∈ L(x), then set L(x)← C.

34 / 40

Page 71: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Expansion Rules for the Naive Tableau

� u-rule: If C uD ∈ L(x) and {C,D} 6⊆ L(x), then setL(x)← {C,D}.

� t-rule: If C tD ∈ L(x) and {C,D} ∩ L(x) = ∅, then setL(x)← C or L(x)← D.

� ∃-rule: If ∃r.C ∈ L(x) and there is no y with r ∈ L(x, y) andC ∈ L(y), then

1. add a new node with label y (where y is a new node label),

2. set L(x, y) = {r}, and

3. set L(y) = {C}.

� ∀-rule: If ∀r.C ∈ L(x) and there is a node y with r ∈ L(x, y) andC 6∈ L(y), then set L(y)← C.

� TBox-rule: If C is a (rewritten and normalized) TBox statement andC 6∈ L(x), then set L(x)← C.

34 / 40

Page 72: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Expansion Rules for the Naive Tableau

� u-rule: If C uD ∈ L(x) and {C,D} 6⊆ L(x), then setL(x)← {C,D}.

� t-rule: If C tD ∈ L(x) and {C,D} ∩ L(x) = ∅, then setL(x)← C or L(x)← D.

� ∃-rule: If ∃r.C ∈ L(x) and there is no y with r ∈ L(x, y) andC ∈ L(y), then

1. add a new node with label y (where y is a new node label),

2. set L(x, y) = {r}, and

3. set L(y) = {C}.

� ∀-rule: If ∀r.C ∈ L(x) and there is a node y with r ∈ L(x, y) andC 6∈ L(y), then set L(y)← C.

� TBox-rule: If C is a (rewritten and normalized) TBox statement andC 6∈ L(x), then set L(x)← C.

34 / 40

Page 73: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Expansion Rules for the Naive Tableau

� u-rule: If C uD ∈ L(x) and {C,D} 6⊆ L(x), then setL(x)← {C,D}.

� t-rule: If C tD ∈ L(x) and {C,D} ∩ L(x) = ∅, then setL(x)← C or L(x)← D.

� ∃-rule: If ∃r.C ∈ L(x) and there is no y with r ∈ L(x, y) andC ∈ L(y), then

1. add a new node with label y (where y is a new node label),

2. set L(x, y) = {r}, and

3. set L(y) = {C}.

� ∀-rule: If ∀r.C ∈ L(x) and there is a node y with r ∈ L(x, y) andC 6∈ L(y), then set L(y)← C.

� TBox-rule: If C is a (rewritten and normalized) TBox statement andC 6∈ L(x), then set L(x)← C.

34 / 40

Page 74: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Expansion Rules for the Naive Tableau

� u-rule: If C uD ∈ L(x) and {C,D} 6⊆ L(x), then setL(x)← {C,D}.

� t-rule: If C tD ∈ L(x) and {C,D} ∩ L(x) = ∅, then setL(x)← C or L(x)← D.

� ∃-rule: If ∃r.C ∈ L(x) and there is no y with r ∈ L(x, y) andC ∈ L(y), then

1. add a new node with label y (where y is a new node label),

2. set L(x, y) = {r}, and

3. set L(y) = {C}.

� ∀-rule: If ∀r.C ∈ L(x) and there is a node y with r ∈ L(x, y) andC 6∈ L(y), then set L(y)← C.

� TBox-rule: If C is a (rewritten and normalized) TBox statement andC 6∈ L(x), then set L(x)← C.

34 / 40

Page 75: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Naive Tableau AlgorithmInput: ALC knowledge base K in negation normal form

Output: “yes” if K is satisfiable

1. Initialize the tableau;

2. While some expansion rule is applicable:

2.1. nondeterministically apply an applicable rule;2.2. if for some node x, there exists some C ∈ L(x) such that ¬C ∈ L(x),

output “no” and terminate;

3. Output “yes”.

A nondeterministic run of the algorithm terminates, if either

� for some node x, L(x) contains a contradiction (“no”; attempt to find a modelfor K was unsuccessful), or

� no expansion rule is applicable (“yes”; attempt was successful)

� K is satisfiable if some run outputs “yes”, andunsatisfiable if every run outputs “no’

� only the t-rule creates true branching regarding yes/no output

35 / 40

Page 76: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Expansion Rules

K = {C(a), ¬C t ∃r.D, ¬D t E, ∀r.¬E(a)}

a

L(a) = {C, ∀r.¬E,¬C t ∃r.D, ∃r.D}

x

r

L(x) = {D,¬D t E, E, ¬E}

Clash is obtained, KB is unsatisfiable!

36 / 40

Page 77: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Expansion Rules

K = {C(a), ¬C t ∃r.D, ¬D t E, ∀r.¬E(a)}

a L(a) = {C,

∀r.¬E,¬C t ∃r.D, ∃r.D}

x

r

L(x) = {D,¬D t E, E, ¬E}

Clash is obtained, KB is unsatisfiable!

36 / 40

Page 78: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Expansion Rules

K = {C(a), ¬C t ∃r.D, ¬D t E, ∀r.¬E(a)}

a L(a) = {C, ∀r.¬E,

¬C t ∃r.D, ∃r.D}

x

r

L(x) = {D,¬D t E, E, ¬E}

Clash is obtained, KB is unsatisfiable!

36 / 40

Page 79: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Expansion Rules

K = {C(a), ¬C t ∃r.D, ¬D t E, ∀r.¬E(a)}

a L(a) = {C, ∀r.¬E,¬C t ∃r.D,

∃r.D}

x

r

L(x) = {D,¬D t E, E, ¬E}

Clash is obtained, KB is unsatisfiable!

36 / 40

Page 80: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Expansion Rules

K = {C(a), ¬C t ∃r.D, ¬D t E, ∀r.¬E(a)}

a L(a) = {C, ∀r.¬E,¬C t ∃r.D,

∃r.D}

x

r

L(x) = {D,¬D t E, E, ¬E}

Clash is obtained, KB is unsatisfiable!

36 / 40

Page 81: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Expansion Rules

K = {C(a), ¬C t ∃r.D, ¬D t E, ∀r.¬E(a)}

a L(a) = {C, ∀r.¬E,¬C t ∃r.D, ∃r.D}

x

r

L(x) = {D,

¬D t E, E, ¬E}

Clash is obtained, KB is unsatisfiable!

36 / 40

Page 82: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Expansion Rules

K = {C(a), ¬C t ∃r.D, ¬D t E, ∀r.¬E(a)}

a L(a) = {C, ∀r.¬E,¬C t ∃r.D, ∃r.D}

x

r

L(x) = {D,¬D t E,

E, ¬E}

Clash is obtained, KB is unsatisfiable!

36 / 40

Page 83: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Expansion Rules

K = {C(a), ¬C t ∃r.D, ¬D t E, ∀r.¬E(a)}

a L(a) = {C, ∀r.¬E,¬C t ∃r.D, ∃r.D}

x

r

L(x) = {D,¬D t E,

E, ¬E}

Clash is obtained, KB is unsatisfiable!

36 / 40

Page 84: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Expansion Rules

K = {C(a), ¬C t ∃r.D, ¬D t E, ∀r.¬E(a)}

a L(a) = {C, ∀r.¬E,¬C t ∃r.D, ∃r.D}

x

r

L(x) = {D,¬D t E, E,

¬E}

Clash is obtained, KB is unsatisfiable!

36 / 40

Page 85: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Expansion Rules

K = {C(a), ¬C t ∃r.D, ¬D t E, ∀r.¬E(a)}

a L(a) = {C, ∀r.¬E,¬C t ∃r.D, ∃r.D}

x

r

L(x) = {D,¬D t E, E, ¬E}

Clash is obtained, KB is unsatisfiable!

36 / 40

Page 86: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Expansion Rules

K = {C(a), ¬C t ∃r.D, ¬D t E, ∀r.¬E(a)}

a L(a) = {C, ∀r.¬E,¬C t ∃r.D, ∃r.D}

x

r

L(x) = {D,¬D t E, E, ¬E}

Clash is obtained, KB is unsatisfiable!

36 / 40

Page 87: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Tableau Algorithm with Blocking for ALC

� Naive tableau algorithm does not always terminateExample: K = {¬Person t ∃hasParent , Person(a1 )}.

� Modify the naive tableau algorithm to ensure termination

� Use blocking

� A node with label x is directly blocked by a node with label y if� x is a variable (i.e., not an individual),� y is an ancestor of x, and� L(x) ⊆ L(y)

� A node with label x is blocked, if it is directly blocked or one of itsancestors is blocked

� Expansion rules may only be applied if x is not blocked

37 / 40

Page 88: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Blocking

K = {B(t), ¬H t ∃P.H, H(t)}

t

L(t) = {B,H,¬H t ∃P.H,∃P.H}

x

P

L(x) = {H} ⊆ L(t)

38 / 40

Page 89: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Blocking

K = {B(t), ¬H t ∃P.H, H(t)}

t L(t) = {B,H,

¬H t ∃P.H,∃P.H}

x

P

L(x) = {H} ⊆ L(t)

38 / 40

Page 90: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Blocking

K = {B(t), ¬H t ∃P.H, H(t)}

t L(t) = {B,H,¬H t ∃P.H,

∃P.H}

x

P

L(x) = {H} ⊆ L(t)

38 / 40

Page 91: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Blocking

K = {B(t), ¬H t ∃P.H, H(t)}

t L(t) = {B,H,¬H t ∃P.H,

∃P.H}

x

P

L(x) = {H} ⊆ L(t)

38 / 40

Page 92: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Blocking

K = {B(t), ¬H t ∃P.H, H(t)}

t L(t) = {B,H,¬H t ∃P.H,∃P.H}

x

P

L(x) = {H}

⊆ L(t)

38 / 40

Page 93: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Example: Blocking

K = {B(t), ¬H t ∃P.H, H(t)}

t L(t) = {B,H,¬H t ∃P.H,∃P.H}

x

P

L(x) = {H} ⊆ L(t)

38 / 40

Page 94: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Computational Properties

� The simple tableau algorithm is expensive in general (worst case):

� the worst case complexity is double exponential

� testing KB consistency in ALC is EXPTIME-complete

� testing concept satisfiability in ALC is PSPACE-complete

� Still in practice, (optimized) tableaux algorithms work well

� other notions of blocking might be used, e.g. “cross-path blocking”(blocking node need not be an ancestor)

� single exponential time tableaux algorithms are available

� For many other description logics, also tableaux algorithms exist(e.g. SHIQ, SHOIQ, ...)Some algorithms are quite involved!

39 / 40

Page 95: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

Satisfaction and Entailment Other Reasoning Problems Algorithmic Approaches to DL Reasoning

Summary

1. Satisfaction and Entailment� Notions� Decidability

2. Reasoning Problems� Knowledge base consistency� Entailment checking� Concept satisfiability� Classification� Instance retrieval

3. Algorithmic Approaches to DL Reasoning� Types of reasoning procedures� Tableaux

4. Novel reasoning problems� Conjunctive query answering

40 / 40

Page 96: Knowledge Representation for the Semantic Web Lecture 5 ...people.mpi-inf.mpg.de/~dstepano/KRSW/slides/lecture5.pdf · Satisfaction and EntailmentOther Reasoning ProblemsAlgorithmic

References I

Franz Baader, Diego Calvanese, Deborah McGuinness, Daniele Nardi, andPeter Patel-Schneider, editors.

The Description Logic Handbook: Theory, Implementation andApplications.

Cambridge University Press, 2007.

Pascal Hitzler, Markus Krotzsch, and Sebastian Rudolph.

Foundations of Semantic Web Technologies.

Chapman and Hall, 2010.

Sebastian Rudolph.

Foundations of description logics.

In Axel Polleres, Claudia d’Amato, Marcelo Arenas, Siegfried Handschuh,Paula Kroner, Sascha Ossowski, and Peter Patel-Schneider, editors,Reasoning Web. Semantic Technologies for the Web of Data, volume 6848of Lecture Notes in Computer Science, pages 76–136. Springer Berlin /Heidelberg, 2011.