109
Description Logics – Reasoning Petr Kˇ remen [email protected] Winter 2021 Petr Kˇ remen ([email protected]) Description Logics – Reasoning Winter 2021 1 / 36

Description Logics – Reasoning

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Description Logics – Reasoning

Description Logics – Reasoning

Petr Kremen

[email protected]

Winter 2021

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 1 / 36

Page 2: Description Logics – Reasoning

Outline

1 What can we conclude from description logics?

2 Inference problems

3 Inference AlgorithmsTableau Algorithm for ALC

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 2 / 36

Page 3: Description Logics – Reasoning

What can we conclude from description logics?

1 What can we conclude from description logics?

2 Inference problems

3 Inference AlgorithmsTableau Algorithm for ALC

What can we conclude fromdescription logics?

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 3 / 36

Page 4: Description Logics – Reasoning

What can we conclude from description logics?

Which clinical findings can occur on a head?

How: Get subclasses of Finding u ∃FindingSite · Head

e.g. Heavyhead , resulting fromHeadache ≡ Pain u ∃FindingSite · HeadPain v FindingHeavyHead v Headache

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 3 / 36

Page 5: Description Logics – Reasoning

What can we conclude from description logics?

Which properties do I have to fill in when recording anallergic head?

How: For each property p check AllergicHead v ∃p · T

e.g. FindingSite, resulting fromPain v ∃FindingSite · TImmuneFunctionDisorder v ∃PathologicalProcess · TAllergicHead v PainAllergicHead v ImmuneFunctionDisorder

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 4 / 36

Page 6: Description Logics – Reasoning

What can we conclude from description logics?

Is a Headache occurring in a Leg correct?

How: Check satisfiability of the concept Headache u ∃FindingSite · Leg

No, because the concept is unsatisfiable, resulting fromHeadache v Pain u ∃FindingSite · HeadPain v≤ 1FindingSite · TLeg v ¬Head

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 5 / 36

Page 7: Description Logics – Reasoning

What can we conclude from description logics?

Logical Consequence

For an arbitrary set S of axioms (resp. theory K = (T ,A), whereS = T ∪ A) :

ModelI |= S if I |= α for all α ∈ S (I is a model of S, resp. K)

Logical ConsequenceS |= β if I |= β whenever I |= S (β is a logical consequence of S, resp. K)

S is consistent, if S has at least one model

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 6 / 36

Page 8: Description Logics – Reasoning

What can we conclude from description logics?

Logical Consequence

For an arbitrary set S of axioms (resp. theory K = (T ,A), whereS = T ∪ A) :

ModelI |= S if I |= α for all α ∈ S (I is a model of S, resp. K)

Logical ConsequenceS |= β if I |= β whenever I |= S (β is a logical consequence of S, resp. K)

S is consistent, if S has at least one model

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 6 / 36

Page 9: Description Logics – Reasoning

What can we conclude from description logics?

Logical Consequence

For an arbitrary set S of axioms (resp. theory K = (T ,A), whereS = T ∪ A) :

ModelI |= S if I |= α for all α ∈ S (I is a model of S, resp. K)

Logical ConsequenceS |= β if I |= β whenever I |= S (β is a logical consequence of S, resp. K)

S is consistent, if S has at least one model

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 6 / 36

Page 10: Description Logics – Reasoning

What can we conclude from description logics?

Logical Consequence

For an arbitrary set S of axioms (resp. theory K = (T ,A), whereS = T ∪ A) :

ModelI |= S if I |= α for all α ∈ S (I is a model of S, resp. K)

Logical ConsequenceS |= β if I |= β whenever I |= S (β is a logical consequence of S, resp. K)

S is consistent, if S has at least one model

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 6 / 36

Page 11: Description Logics – Reasoning

What can we conclude from description logics?

Logical Consequence

For an arbitrary set S of axioms (resp. theory K = (T ,A), whereS = T ∪ A) :

ModelI |= S if I |= α for all α ∈ S (I is a model of S, resp. K)

Logical ConsequenceS |= β if I |= β whenever I |= S (β is a logical consequence of S, resp. K)

S is consistent, if S has at least one model

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 6 / 36

Page 12: Description Logics – Reasoning

Inference problems

1 What can we conclude from description logics?

2 Inference problems

3 Inference AlgorithmsTableau Algorithm for ALC

Inference problems

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 7 / 36

Page 13: Description Logics – Reasoning

Inference problems

Inference Problems in TBOX

We have introduced syntax and semantics of the language ALC. Now,let’s look on automated reasoning. Having a ALC theory K = (T ,A). ForTBOX T and concepts C(i), we want to decide whether(unsatisfiability) concept C is unsatisfiable, i.e. T |= C v ⊥ ?

(subsumption) concept C1 subsumes concept C2, i.e. T |= C2 v C1 ?(equivalence) two concepts C1 and C2 are equivalent, i.e. T |= C1 ≡ C2 ?

(disjoint) two concepts C1 and C2 are disjoint, i.e. T |= C1 u C2 v ⊥ ?All these tasks can be reduced to unsatisfiabilitychecking of a single concept ...

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 7 / 36

Page 14: Description Logics – Reasoning

Inference problems

Inference Problems in TBOX

We have introduced syntax and semantics of the language ALC. Now,let’s look on automated reasoning. Having a ALC theory K = (T ,A). ForTBOX T and concepts C(i), we want to decide whether(unsatisfiability) concept C is unsatisfiable, i.e. T |= C v ⊥ ?(subsumption) concept C1 subsumes concept C2, i.e. T |= C2 v C1 ?

(equivalence) two concepts C1 and C2 are equivalent, i.e. T |= C1 ≡ C2 ?(disjoint) two concepts C1 and C2 are disjoint, i.e. T |= C1 u C2 v ⊥ ?

All these tasks can be reduced to unsatisfiabilitychecking of a single concept ...

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 7 / 36

Page 15: Description Logics – Reasoning

Inference problems

Inference Problems in TBOX

We have introduced syntax and semantics of the language ALC. Now,let’s look on automated reasoning. Having a ALC theory K = (T ,A). ForTBOX T and concepts C(i), we want to decide whether(unsatisfiability) concept C is unsatisfiable, i.e. T |= C v ⊥ ?(subsumption) concept C1 subsumes concept C2, i.e. T |= C2 v C1 ?(equivalence) two concepts C1 and C2 are equivalent, i.e. T |= C1 ≡ C2 ?

(disjoint) two concepts C1 and C2 are disjoint, i.e. T |= C1 u C2 v ⊥ ?All these tasks can be reduced to unsatisfiabilitychecking of a single concept ...

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 7 / 36

Page 16: Description Logics – Reasoning

Inference problems

Inference Problems in TBOX

We have introduced syntax and semantics of the language ALC. Now,let’s look on automated reasoning. Having a ALC theory K = (T ,A). ForTBOX T and concepts C(i), we want to decide whether(unsatisfiability) concept C is unsatisfiable, i.e. T |= C v ⊥ ?(subsumption) concept C1 subsumes concept C2, i.e. T |= C2 v C1 ?(equivalence) two concepts C1 and C2 are equivalent, i.e. T |= C1 ≡ C2 ?

(disjoint) two concepts C1 and C2 are disjoint, i.e. T |= C1 u C2 v ⊥ ?

All these tasks can be reduced to unsatisfiabilitychecking of a single concept ...

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 7 / 36

Page 17: Description Logics – Reasoning

Inference problems

Inference Problems in TBOX

We have introduced syntax and semantics of the language ALC. Now,let’s look on automated reasoning. Having a ALC theory K = (T ,A). ForTBOX T and concepts C(i), we want to decide whether(unsatisfiability) concept C is unsatisfiable, i.e. T |= C v ⊥ ?(subsumption) concept C1 subsumes concept C2, i.e. T |= C2 v C1 ?(equivalence) two concepts C1 and C2 are equivalent, i.e. T |= C1 ≡ C2 ?

(disjoint) two concepts C1 and C2 are disjoint, i.e. T |= C1 u C2 v ⊥ ?All these tasks can be reduced to unsatisfiabilitychecking of a single concept ...

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 7 / 36

Page 18: Description Logics – Reasoning

Inference problems

Reducting Subsumption to Unsatisfiability

ExampleThese reductions are straighforward – let’s show, how to reducesubsumption checking to unsatisfiability checking. Reduction of otherinference problems to unsatisfiability is analogous.

(T |= C1 v C2) iff(∀I)(I |= T =⇒ I |= C1 v C2) iff(∀I)(I |= T =⇒ CI1 ⊆ CI2 ) iff(∀I)(I |= T =⇒ CI1 ∩ (∆I \ CI2 ) ⊆ ∅ iff(∀I)(I |= T =⇒ I |= C1 u ¬C2 v ⊥ iff

(T |= C1 u ¬C2 v ⊥)

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 8 / 36

Page 19: Description Logics – Reasoning

Inference problems

Inference Problems for ABOX

... and for ABOX A, axiom α, concept C , role R andindividuals a(i) we want to decide whether

(consistency checking) ABOX A is consistent w.r.t. T (in short if K isconsistent).

(instance checking) T ∪ A |= C(a)?(role checking) T ∪ A |= R(a1, a2)?(instance retrieval) find all individuals a, for which T ∪ A |= C(a).

realization find the most specific concept C from a set of concepts,such that T ∪ A |= C(a).All these tasks, as well as concept unsatisfiabilitychecking, can be reduced to consistency checking.Under which condition and how ?

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 9 / 36

Page 20: Description Logics – Reasoning

Inference problems

Inference Problems for ABOX

... and for ABOX A, axiom α, concept C , role R andindividuals a(i) we want to decide whether

(consistency checking) ABOX A is consistent w.r.t. T (in short if K isconsistent).

(instance checking) T ∪ A |= C(a)?(role checking) T ∪ A |= R(a1, a2)?(instance retrieval) find all individuals a, for which T ∪ A |= C(a).

realization find the most specific concept C from a set of concepts,such that T ∪ A |= C(a).All these tasks, as well as concept unsatisfiabilitychecking, can be reduced to consistency checking.Under which condition and how ?

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 9 / 36

Page 21: Description Logics – Reasoning

Inference problems

Inference Problems for ABOX

... and for ABOX A, axiom α, concept C , role R andindividuals a(i) we want to decide whether

(consistency checking) ABOX A is consistent w.r.t. T (in short if K isconsistent).

(instance checking) T ∪ A |= C(a)?

(role checking) T ∪ A |= R(a1, a2)?(instance retrieval) find all individuals a, for which T ∪ A |= C(a).

realization find the most specific concept C from a set of concepts,such that T ∪ A |= C(a).All these tasks, as well as concept unsatisfiabilitychecking, can be reduced to consistency checking.Under which condition and how ?

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 9 / 36

Page 22: Description Logics – Reasoning

Inference problems

Inference Problems for ABOX

... and for ABOX A, axiom α, concept C , role R andindividuals a(i) we want to decide whether

(consistency checking) ABOX A is consistent w.r.t. T (in short if K isconsistent).

(instance checking) T ∪ A |= C(a)?(role checking) T ∪ A |= R(a1, a2)?

(instance retrieval) find all individuals a, for which T ∪ A |= C(a).realization find the most specific concept C from a set of concepts,

such that T ∪ A |= C(a).All these tasks, as well as concept unsatisfiabilitychecking, can be reduced to consistency checking.Under which condition and how ?

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 9 / 36

Page 23: Description Logics – Reasoning

Inference problems

Inference Problems for ABOX

... and for ABOX A, axiom α, concept C , role R andindividuals a(i) we want to decide whether

(consistency checking) ABOX A is consistent w.r.t. T (in short if K isconsistent).

(instance checking) T ∪ A |= C(a)?(role checking) T ∪ A |= R(a1, a2)?(instance retrieval) find all individuals a, for which T ∪ A |= C(a).

realization find the most specific concept C from a set of concepts,such that T ∪ A |= C(a).All these tasks, as well as concept unsatisfiabilitychecking, can be reduced to consistency checking.Under which condition and how ?

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 9 / 36

Page 24: Description Logics – Reasoning

Inference problems

Inference Problems for ABOX

... and for ABOX A, axiom α, concept C , role R andindividuals a(i) we want to decide whether

(consistency checking) ABOX A is consistent w.r.t. T (in short if K isconsistent).

(instance checking) T ∪ A |= C(a)?(role checking) T ∪ A |= R(a1, a2)?(instance retrieval) find all individuals a, for which T ∪ A |= C(a).

realization find the most specific concept C from a set of concepts,such that T ∪ A |= C(a).

All these tasks, as well as concept unsatisfiabilitychecking, can be reduced to consistency checking.Under which condition and how ?

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 9 / 36

Page 25: Description Logics – Reasoning

Inference problems

Inference Problems for ABOX

... and for ABOX A, axiom α, concept C , role R andindividuals a(i) we want to decide whether

(consistency checking) ABOX A is consistent w.r.t. T (in short if K isconsistent).

(instance checking) T ∪ A |= C(a)?(role checking) T ∪ A |= R(a1, a2)?(instance retrieval) find all individuals a, for which T ∪ A |= C(a).

realization find the most specific concept C from a set of concepts,such that T ∪ A |= C(a).All these tasks, as well as concept unsatisfiabilitychecking, can be reduced to consistency checking.Under which condition and how ?

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 9 / 36

Page 26: Description Logics – Reasoning

Inference problems

Reduction of concept unsatisfiability to theory consistency

ExampleConsider an ALC theory K = (T ,A), a concept C and a fresh individualaf not occuring in K:

(T |= C v ⊥) iff(∀I)(I |= T =⇒ I |= C v ⊥) iff

(∀I)(I |= T =⇒ CI ⊆ ∅) iff¬

[(∃I)(I |= T ∧ CI * ∅)

]iff

¬[(∃I)(I |= T ∧ aIf ∈ CI)

]iff

(T , {C(af )}) is inconsistent

Note that for more expressive description logics than ALC, the ABOX hasto be taken into account as well due to its interaction with TBOX.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 10 / 36

Page 27: Description Logics – Reasoning

Inference Algorithms

1 What can we conclude from description logics?

2 Inference problems

3 Inference AlgorithmsTableau Algorithm for ALC

Inference Algorithms

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 11 / 36

Page 28: Description Logics – Reasoning

Inference Algorithms

Inference Algorithms in Description Logics

Structural Comparison is polynomial, but complete just for some simpleDLs without full negation, e.g. ALN , see [dlh2003].

Finite polynomial rule expansion – OWL-RL, OWL-ELTableaux Algorithms represent the State of Art for complex DLs – sound,

complete, finiteother ... – e.g. resolution-based, transformation to finite automata,

etc.We will introduce tableau algorithms.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 11 / 36

Page 29: Description Logics – Reasoning

Inference Algorithms

Inference Algorithms in Description Logics

Structural Comparison is polynomial, but complete just for some simpleDLs without full negation, e.g. ALN , see [dlh2003].

Finite polynomial rule expansion – OWL-RL, OWL-EL

Tableaux Algorithms represent the State of Art for complex DLs – sound,complete, finite

other ... – e.g. resolution-based, transformation to finite automata,etc.We will introduce tableau algorithms.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 11 / 36

Page 30: Description Logics – Reasoning

Inference Algorithms

Inference Algorithms in Description Logics

Structural Comparison is polynomial, but complete just for some simpleDLs without full negation, e.g. ALN , see [dlh2003].

Finite polynomial rule expansion – OWL-RL, OWL-ELTableaux Algorithms represent the State of Art for complex DLs – sound,

complete, finite

other ... – e.g. resolution-based, transformation to finite automata,etc.We will introduce tableau algorithms.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 11 / 36

Page 31: Description Logics – Reasoning

Inference Algorithms

Inference Algorithms in Description Logics

Structural Comparison is polynomial, but complete just for some simpleDLs without full negation, e.g. ALN , see [dlh2003].

Finite polynomial rule expansion – OWL-RL, OWL-ELTableaux Algorithms represent the State of Art for complex DLs – sound,

complete, finiteother ... – e.g. resolution-based, transformation to finite automata,

etc.

We will introduce tableau algorithms.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 11 / 36

Page 32: Description Logics – Reasoning

Inference Algorithms

Inference Algorithms in Description Logics

Structural Comparison is polynomial, but complete just for some simpleDLs without full negation, e.g. ALN , see [dlh2003].

Finite polynomial rule expansion – OWL-RL, OWL-ELTableaux Algorithms represent the State of Art for complex DLs – sound,

complete, finiteother ... – e.g. resolution-based, transformation to finite automata,

etc.We will introduce tableau algorithms.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 11 / 36

Page 33: Description Logics – Reasoning

Inference Algorithms

Tableaux Algorithms(TAs are not new in DL – they were known in predicate logics as well.)

Main idea“ABOX A is consistent w.r.t. TBOX T if we find a model ofT ∪ A.” (similarly for theory K as a whole)

Each TA can be seen as a production system :state (∼ data base) containing a set of completion graphs (see

next slides),

inference rules (∼ production rules) implement semantics of particularconstructs of the given language, e.g. ∃,u, etc. and serve tomodify the completion graphs accordingly

strategy for picking the most suitable rule for application

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 12 / 36

Page 34: Description Logics – Reasoning

Inference Algorithms

Tableaux Algorithms(TAs are not new in DL – they were known in predicate logics as well.)

Main idea“ABOX A is consistent w.r.t. TBOX T if we find a model ofT ∪ A.” (similarly for theory K as a whole)

Each TA can be seen as a production system :state (∼ data base) containing a set of completion graphs (see

next slides),inference rules (∼ production rules) implement semantics of particular

constructs of the given language, e.g. ∃,u, etc. and serve tomodify the completion graphs accordingly

strategy for picking the most suitable rule for application

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 12 / 36

Page 35: Description Logics – Reasoning

Inference Algorithms

Tableaux Algorithms(TAs are not new in DL – they were known in predicate logics as well.)

Main idea“ABOX A is consistent w.r.t. TBOX T if we find a model ofT ∪ A.” (similarly for theory K as a whole)

Each TA can be seen as a production system :state (∼ data base) containing a set of completion graphs (see

next slides),inference rules (∼ production rules) implement semantics of particular

constructs of the given language, e.g. ∃,u, etc. and serve tomodify the completion graphs accordingly

strategy for picking the most suitable rule for application

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 12 / 36

Page 36: Description Logics – Reasoning

Inference Algorithms

Completion Graphs(Do not mix with complete graphs from the graph theory.)

Completion graphis a labeled oriented graph G = (VG ,EG , LG), where each

node x ∈ VG is labeled with a set LG(x) of concepts andeach edge 〈x , y〉 ∈ EG is labeled with a set of edges LG(〈x , y〉) (orshortly LG(x , y))

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 13 / 36

Page 37: Description Logics – Reasoning

Inference Algorithms

Completion Graphs

Direct Clashoccurs in a completion graph G = (VG ,EG , LG)), if {A,¬A} ⊆ LG(x), or⊥ ∈ LG(x) for some atomic concept A and a node x ∈ VG

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 14 / 36

Page 38: Description Logics – Reasoning

Inference Algorithms

Completion Graphs

Complete Completion Graphis a completion graph G = (VG ,EG , LG)), to which no inference rule canbe applied (any more).

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 15 / 36

Page 39: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Tableau Algorithm for ALC

1 What can we conclude from description logics?

2 Inference problems

3 Inference AlgorithmsTableau Algorithm for ALC

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 16 / 36

Page 40: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Tableau Algorithm for ALC when T = ∅

Let’s have K = (T ,A), where T = ∅ for now.0 (Preprocessing) Transform all concepts appearing in K to the

“negational normal form” (NNF), “shifting” negation ¬ to the atomicconcepts (using equivalent operations known from propositional andpredicate logics).

Example¬(C1 u C2) is equivalent (de Morgan rules) to ¬C1 t ¬C2.

1 Initial state of the algorithm is S0 = {G0}, whereG0 = (VG0 ,EG0 , LG0) is made up from A as follows:

for each C(a) ∈ A put a ∈ VG0 and C ∈ LG0 (a)for each R(a1, a2) ∈ A put 〈a1, a2〉 ∈ EG0 and R ∈ LG0 (a1, a2)Sets VG0 ,EG0 , LG0 are smallest possible with these properties.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 17 / 36

Page 41: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Tableau Algorithm for ALC when T = ∅

Let’s have K = (T ,A), where T = ∅ for now.0 (Preprocessing) Transform all concepts appearing in K to the

“negational normal form” (NNF), “shifting” negation ¬ to the atomicconcepts (using equivalent operations known from propositional andpredicate logics).

Example¬(C1 u C2) is equivalent (de Morgan rules) to ¬C1 t ¬C2.

1 Initial state of the algorithm is S0 = {G0}, whereG0 = (VG0 ,EG0 , LG0) is made up from A as follows:

for each C(a) ∈ A put a ∈ VG0 and C ∈ LG0 (a)for each R(a1, a2) ∈ A put 〈a1, a2〉 ∈ EG0 and R ∈ LG0 (a1, a2)Sets VG0 ,EG0 , LG0 are smallest possible with these properties.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 17 / 36

Page 42: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Tableau Algorithm for ALC when T = ∅

Let’s have K = (T ,A), where T = ∅ for now.0 (Preprocessing) Transform all concepts appearing in K to the

“negational normal form” (NNF), “shifting” negation ¬ to the atomicconcepts (using equivalent operations known from propositional andpredicate logics).

Example¬(C1 u C2) is equivalent (de Morgan rules) to ¬C1 t ¬C2.

1 Initial state of the algorithm is S0 = {G0}, whereG0 = (VG0 ,EG0 , LG0) is made up from A as follows:

for each C(a) ∈ A put a ∈ VG0 and C ∈ LG0 (a)for each R(a1, a2) ∈ A put 〈a1, a2〉 ∈ EG0 and R ∈ LG0 (a1, a2)Sets VG0 ,EG0 , LG0 are smallest possible with these properties.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 17 / 36

Page 43: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Tableau Algorithm for ALC when T = ∅

Let’s have K = (T ,A), where T = ∅ for now.0 (Preprocessing) Transform all concepts appearing in K to the

“negational normal form” (NNF), “shifting” negation ¬ to the atomicconcepts (using equivalent operations known from propositional andpredicate logics).

Example¬(C1 u C2) is equivalent (de Morgan rules) to ¬C1 t ¬C2.

1 Initial state of the algorithm is S0 = {G0}, whereG0 = (VG0 ,EG0 , LG0) is made up from A as follows:

for each C(a) ∈ A put a ∈ VG0 and C ∈ LG0 (a)

for each R(a1, a2) ∈ A put 〈a1, a2〉 ∈ EG0 and R ∈ LG0 (a1, a2)Sets VG0 ,EG0 , LG0 are smallest possible with these properties.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 17 / 36

Page 44: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Tableau Algorithm for ALC when T = ∅

Let’s have K = (T ,A), where T = ∅ for now.0 (Preprocessing) Transform all concepts appearing in K to the

“negational normal form” (NNF), “shifting” negation ¬ to the atomicconcepts (using equivalent operations known from propositional andpredicate logics).

Example¬(C1 u C2) is equivalent (de Morgan rules) to ¬C1 t ¬C2.

1 Initial state of the algorithm is S0 = {G0}, whereG0 = (VG0 ,EG0 , LG0) is made up from A as follows:

for each C(a) ∈ A put a ∈ VG0 and C ∈ LG0 (a)for each R(a1, a2) ∈ A put 〈a1, a2〉 ∈ EG0 and R ∈ LG0 (a1, a2)

Sets VG0 ,EG0 , LG0 are smallest possible with these properties.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 17 / 36

Page 45: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Tableau Algorithm for ALC when T = ∅

Let’s have K = (T ,A), where T = ∅ for now.0 (Preprocessing) Transform all concepts appearing in K to the

“negational normal form” (NNF), “shifting” negation ¬ to the atomicconcepts (using equivalent operations known from propositional andpredicate logics).

Example¬(C1 u C2) is equivalent (de Morgan rules) to ¬C1 t ¬C2.

1 Initial state of the algorithm is S0 = {G0}, whereG0 = (VG0 ,EG0 , LG0) is made up from A as follows:

for each C(a) ∈ A put a ∈ VG0 and C ∈ LG0 (a)for each R(a1, a2) ∈ A put 〈a1, a2〉 ∈ EG0 and R ∈ LG0 (a1, a2)Sets VG0 ,EG0 , LG0 are smallest possible with these properties.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 17 / 36

Page 46: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Tableau algorithm for ALC without TBOX (2)

. . .

2 Current algorithm state is S. If each G ∈ S contains a direct clash,terminate as “INCONSISTENT”.

3 Let’s choose one G ∈ S that doesn’t contain a direct clash. If G iscomplete w.r.t. rules shown next, terminate as “CONSISTENT”

4 Find a rule that is applicable to G and apply it. As a result, we obtainfrom the state S a new state S ′. Jump to step 2.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 18 / 36

Page 47: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Tableau algorithm for ALC without TBOX (2)

. . .

2 Current algorithm state is S. If each G ∈ S contains a direct clash,terminate as “INCONSISTENT”.

3 Let’s choose one G ∈ S that doesn’t contain a direct clash. If G iscomplete w.r.t. rules shown next, terminate as “CONSISTENT”

4 Find a rule that is applicable to G and apply it. As a result, we obtainfrom the state S a new state S ′. Jump to step 2.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 18 / 36

Page 48: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Tableau algorithm for ALC without TBOX (2)

. . .

2 Current algorithm state is S. If each G ∈ S contains a direct clash,terminate as “INCONSISTENT”.

3 Let’s choose one G ∈ S that doesn’t contain a direct clash. If G iscomplete w.r.t. rules shown next, terminate as “CONSISTENT”

4 Find a rule that is applicable to G and apply it. As a result, we obtainfrom the state S a new state S ′. Jump to step 2.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 18 / 36

Page 49: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA for ALC without TBOX – Inference Rules→u rule

if (C1 u C2) ∈ LG (a) and {C1, C2} * LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a) = LG (a) ∪ {C1, C2}

and otherwise is the same as LG .→t rule

if (C1 t C2) ∈ LG (a) and {C1, C2} ∩ LG (a) = ∅ for some a ∈ VG .then S′ = S ∪ {G1, G2} \ {G}, where G(1|2) = (VG , EG , LG(1|2) ), and

LG(1|2) (a) = LG (a) ∪ {C(1|2)} and otherwise is the same as LG .

→∃ rule

if (∃R · C) ∈ LG (a1) and there exists no a2 ∈ VG such that R ∈ LG (a1, a2) and at thesame time C ∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG ∪ {a2}, EG ∪ {〈a1, a2〉}, LG′ ), aLG′ (a2) = {C}, LG′ (a1, a2) = {R} and otherwise is the same as LG .

→∀ rule

if (∀R · C) ∈ LG (a1) and there exists a2 ∈ VG such that R ∈ LG (a, a1) and at thesame time C /∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a2) = LG (a2) ∪ {C} andotherwise is the same as LG .

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 19 / 36

Page 50: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA for ALC without TBOX – Inference Rules→u rule

if (C1 u C2) ∈ LG (a) and {C1, C2} * LG (a) for some a ∈ VG .

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a) = LG (a) ∪ {C1, C2}and otherwise is the same as LG .

→t rule

if (C1 t C2) ∈ LG (a) and {C1, C2} ∩ LG (a) = ∅ for some a ∈ VG .then S′ = S ∪ {G1, G2} \ {G}, where G(1|2) = (VG , EG , LG(1|2) ), and

LG(1|2) (a) = LG (a) ∪ {C(1|2)} and otherwise is the same as LG .

→∃ rule

if (∃R · C) ∈ LG (a1) and there exists no a2 ∈ VG such that R ∈ LG (a1, a2) and at thesame time C ∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG ∪ {a2}, EG ∪ {〈a1, a2〉}, LG′ ), aLG′ (a2) = {C}, LG′ (a1, a2) = {R} and otherwise is the same as LG .

→∀ rule

if (∀R · C) ∈ LG (a1) and there exists a2 ∈ VG such that R ∈ LG (a, a1) and at thesame time C /∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a2) = LG (a2) ∪ {C} andotherwise is the same as LG .

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 19 / 36

Page 51: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA for ALC without TBOX – Inference Rules→u rule

if (C1 u C2) ∈ LG (a) and {C1, C2} * LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a) = LG (a) ∪ {C1, C2}

and otherwise is the same as LG .

→t rule

if (C1 t C2) ∈ LG (a) and {C1, C2} ∩ LG (a) = ∅ for some a ∈ VG .then S′ = S ∪ {G1, G2} \ {G}, where G(1|2) = (VG , EG , LG(1|2) ), and

LG(1|2) (a) = LG (a) ∪ {C(1|2)} and otherwise is the same as LG .

→∃ rule

if (∃R · C) ∈ LG (a1) and there exists no a2 ∈ VG such that R ∈ LG (a1, a2) and at thesame time C ∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG ∪ {a2}, EG ∪ {〈a1, a2〉}, LG′ ), aLG′ (a2) = {C}, LG′ (a1, a2) = {R} and otherwise is the same as LG .

→∀ rule

if (∀R · C) ∈ LG (a1) and there exists a2 ∈ VG such that R ∈ LG (a, a1) and at thesame time C /∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a2) = LG (a2) ∪ {C} andotherwise is the same as LG .

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 19 / 36

Page 52: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA for ALC without TBOX – Inference Rules→u rule

if (C1 u C2) ∈ LG (a) and {C1, C2} * LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a) = LG (a) ∪ {C1, C2}

and otherwise is the same as LG .→t rule

if (C1 t C2) ∈ LG (a) and {C1, C2} ∩ LG (a) = ∅ for some a ∈ VG .then S′ = S ∪ {G1, G2} \ {G}, where G(1|2) = (VG , EG , LG(1|2) ), and

LG(1|2) (a) = LG (a) ∪ {C(1|2)} and otherwise is the same as LG .→∃ rule

if (∃R · C) ∈ LG (a1) and there exists no a2 ∈ VG such that R ∈ LG (a1, a2) and at thesame time C ∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG ∪ {a2}, EG ∪ {〈a1, a2〉}, LG′ ), aLG′ (a2) = {C}, LG′ (a1, a2) = {R} and otherwise is the same as LG .

→∀ rule

if (∀R · C) ∈ LG (a1) and there exists a2 ∈ VG such that R ∈ LG (a, a1) and at thesame time C /∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a2) = LG (a2) ∪ {C} andotherwise is the same as LG .

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 19 / 36

Page 53: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA for ALC without TBOX – Inference Rules→u rule

if (C1 u C2) ∈ LG (a) and {C1, C2} * LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a) = LG (a) ∪ {C1, C2}

and otherwise is the same as LG .→t rule

if (C1 t C2) ∈ LG (a) and {C1, C2} ∩ LG (a) = ∅ for some a ∈ VG .

then S′ = S ∪ {G1, G2} \ {G}, where G(1|2) = (VG , EG , LG(1|2) ), andLG(1|2) (a) = LG (a) ∪ {C(1|2)} and otherwise is the same as LG .

→∃ rule

if (∃R · C) ∈ LG (a1) and there exists no a2 ∈ VG such that R ∈ LG (a1, a2) and at thesame time C ∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG ∪ {a2}, EG ∪ {〈a1, a2〉}, LG′ ), aLG′ (a2) = {C}, LG′ (a1, a2) = {R} and otherwise is the same as LG .

→∀ rule

if (∀R · C) ∈ LG (a1) and there exists a2 ∈ VG such that R ∈ LG (a, a1) and at thesame time C /∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a2) = LG (a2) ∪ {C} andotherwise is the same as LG .

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 19 / 36

Page 54: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA for ALC without TBOX – Inference Rules→u rule

if (C1 u C2) ∈ LG (a) and {C1, C2} * LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a) = LG (a) ∪ {C1, C2}

and otherwise is the same as LG .→t rule

if (C1 t C2) ∈ LG (a) and {C1, C2} ∩ LG (a) = ∅ for some a ∈ VG .then S′ = S ∪ {G1, G2} \ {G}, where G(1|2) = (VG , EG , LG(1|2) ), and

LG(1|2) (a) = LG (a) ∪ {C(1|2)} and otherwise is the same as LG .

→∃ rule

if (∃R · C) ∈ LG (a1) and there exists no a2 ∈ VG such that R ∈ LG (a1, a2) and at thesame time C ∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG ∪ {a2}, EG ∪ {〈a1, a2〉}, LG′ ), aLG′ (a2) = {C}, LG′ (a1, a2) = {R} and otherwise is the same as LG .

→∀ rule

if (∀R · C) ∈ LG (a1) and there exists a2 ∈ VG such that R ∈ LG (a, a1) and at thesame time C /∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a2) = LG (a2) ∪ {C} andotherwise is the same as LG .

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 19 / 36

Page 55: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA for ALC without TBOX – Inference Rules→u rule

if (C1 u C2) ∈ LG (a) and {C1, C2} * LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a) = LG (a) ∪ {C1, C2}

and otherwise is the same as LG .→t rule

if (C1 t C2) ∈ LG (a) and {C1, C2} ∩ LG (a) = ∅ for some a ∈ VG .then S′ = S ∪ {G1, G2} \ {G}, where G(1|2) = (VG , EG , LG(1|2) ), and

LG(1|2) (a) = LG (a) ∪ {C(1|2)} and otherwise is the same as LG .→∃ rule

if (∃R · C) ∈ LG (a1) and there exists no a2 ∈ VG such that R ∈ LG (a1, a2) and at thesame time C ∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG ∪ {a2}, EG ∪ {〈a1, a2〉}, LG′ ), aLG′ (a2) = {C}, LG′ (a1, a2) = {R} and otherwise is the same as LG .

→∀ rule

if (∀R · C) ∈ LG (a1) and there exists a2 ∈ VG such that R ∈ LG (a, a1) and at thesame time C /∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a2) = LG (a2) ∪ {C} andotherwise is the same as LG .

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 19 / 36

Page 56: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA for ALC without TBOX – Inference Rules→u rule

if (C1 u C2) ∈ LG (a) and {C1, C2} * LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a) = LG (a) ∪ {C1, C2}

and otherwise is the same as LG .→t rule

if (C1 t C2) ∈ LG (a) and {C1, C2} ∩ LG (a) = ∅ for some a ∈ VG .then S′ = S ∪ {G1, G2} \ {G}, where G(1|2) = (VG , EG , LG(1|2) ), and

LG(1|2) (a) = LG (a) ∪ {C(1|2)} and otherwise is the same as LG .→∃ rule

if (∃R · C) ∈ LG (a1) and there exists no a2 ∈ VG such that R ∈ LG (a1, a2) and at thesame time C ∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG ∪ {a2}, EG ∪ {〈a1, a2〉}, LG′ ), aLG′ (a2) = {C}, LG′ (a1, a2) = {R} and otherwise is the same as LG .

→∀ rule

if (∀R · C) ∈ LG (a1) and there exists a2 ∈ VG such that R ∈ LG (a, a1) and at thesame time C /∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a2) = LG (a2) ∪ {C} andotherwise is the same as LG .

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 19 / 36

Page 57: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA for ALC without TBOX – Inference Rules→u rule

if (C1 u C2) ∈ LG (a) and {C1, C2} * LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a) = LG (a) ∪ {C1, C2}

and otherwise is the same as LG .→t rule

if (C1 t C2) ∈ LG (a) and {C1, C2} ∩ LG (a) = ∅ for some a ∈ VG .then S′ = S ∪ {G1, G2} \ {G}, where G(1|2) = (VG , EG , LG(1|2) ), and

LG(1|2) (a) = LG (a) ∪ {C(1|2)} and otherwise is the same as LG .→∃ rule

if (∃R · C) ∈ LG (a1) and there exists no a2 ∈ VG such that R ∈ LG (a1, a2) and at thesame time C ∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG ∪ {a2}, EG ∪ {〈a1, a2〉}, LG′ ), aLG′ (a2) = {C}, LG′ (a1, a2) = {R} and otherwise is the same as LG .

→∀ rule

if (∀R · C) ∈ LG (a1) and there exists a2 ∈ VG such that R ∈ LG (a, a1) and at thesame time C /∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a2) = LG (a2) ∪ {C} andotherwise is the same as LG .

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 19 / 36

Page 58: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA for ALC without TBOX – Inference Rules→u rule

if (C1 u C2) ∈ LG (a) and {C1, C2} * LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a) = LG (a) ∪ {C1, C2}

and otherwise is the same as LG .→t rule

if (C1 t C2) ∈ LG (a) and {C1, C2} ∩ LG (a) = ∅ for some a ∈ VG .then S′ = S ∪ {G1, G2} \ {G}, where G(1|2) = (VG , EG , LG(1|2) ), and

LG(1|2) (a) = LG (a) ∪ {C(1|2)} and otherwise is the same as LG .→∃ rule

if (∃R · C) ∈ LG (a1) and there exists no a2 ∈ VG such that R ∈ LG (a1, a2) and at thesame time C ∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG ∪ {a2}, EG ∪ {〈a1, a2〉}, LG′ ), aLG′ (a2) = {C}, LG′ (a1, a2) = {R} and otherwise is the same as LG .

→∀ rule

if (∀R · C) ∈ LG (a1) and there exists a2 ∈ VG such that R ∈ LG (a, a1) and at thesame time C /∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a2) = LG (a2) ∪ {C} andotherwise is the same as LG .

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 19 / 36

Page 59: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA for ALC without TBOX – Inference Rules→u rule

if (C1 u C2) ∈ LG (a) and {C1, C2} * LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a) = LG (a) ∪ {C1, C2}

and otherwise is the same as LG .→t rule

if (C1 t C2) ∈ LG (a) and {C1, C2} ∩ LG (a) = ∅ for some a ∈ VG .then S′ = S ∪ {G1, G2} \ {G}, where G(1|2) = (VG , EG , LG(1|2) ), and

LG(1|2) (a) = LG (a) ∪ {C(1|2)} and otherwise is the same as LG .→∃ rule

if (∃R · C) ∈ LG (a1) and there exists no a2 ∈ VG such that R ∈ LG (a1, a2) and at thesame time C ∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG ∪ {a2}, EG ∪ {〈a1, a2〉}, LG′ ), aLG′ (a2) = {C}, LG′ (a1, a2) = {R} and otherwise is the same as LG .

→∀ ruleif (∀R · C) ∈ LG (a1) and there exists a2 ∈ VG such that R ∈ LG (a, a1) and at the

same time C /∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a2) = LG (a2) ∪ {C} andotherwise is the same as LG .

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 19 / 36

Page 60: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA for ALC without TBOX – Inference Rules→u rule

if (C1 u C2) ∈ LG (a) and {C1, C2} * LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a) = LG (a) ∪ {C1, C2}

and otherwise is the same as LG .→t rule

if (C1 t C2) ∈ LG (a) and {C1, C2} ∩ LG (a) = ∅ for some a ∈ VG .then S′ = S ∪ {G1, G2} \ {G}, where G(1|2) = (VG , EG , LG(1|2) ), and

LG(1|2) (a) = LG (a) ∪ {C(1|2)} and otherwise is the same as LG .→∃ rule

if (∃R · C) ∈ LG (a1) and there exists no a2 ∈ VG such that R ∈ LG (a1, a2) and at thesame time C ∈ LG (a2).

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG ∪ {a2}, EG ∪ {〈a1, a2〉}, LG′ ), aLG′ (a2) = {C}, LG′ (a1, a2) = {R} and otherwise is the same as LG .

→∀ ruleif (∀R · C) ∈ LG (a1) and there exists a2 ∈ VG such that R ∈ LG (a, a1) and at the

same time C /∈ LG (a2).then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), and LG′ (a2) = LG (a2) ∪ {C} and

otherwise is the same as LG .Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 19 / 36

Page 61: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA Run Example

Example – Consistency CheckingK2 = (∅,A2), where A2 = {(∃maDite ·Muz u ∃maDite · Prarodic u¬∃maDite · (Muz u Prarodic))(JAN)}).

Let’s transform the concept into NNF:∃maDite ·Muz u ∃maDite · Prarodic u ∀maDite · (¬Muz t ¬Prarodic)

Initial state G0 of the TA is

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 20 / 36

Page 62: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA Run Example

Example – Consistency CheckingK2 = (∅,A2), where A2 = {(∃maDite ·Muz u ∃maDite · Prarodic u¬∃maDite · (Muz u Prarodic))(JAN)}).

Let’s transform the concept into NNF:∃maDite ·Muz u ∃maDite · Prarodic u ∀maDite · (¬Muz t ¬Prarodic)Initial state G0 of the TA is

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 20 / 36

Page 63: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA Run Example (2)Example. . .

Now, four sequences of steps 2,3,4 of the TA are performed. TA statein step 4, evolves as follows:

{G0}u-rule−→ {G1}

∃-rule−→ {G2}∃-rule−→ {G3}

∀-rule−→ {G4}, where G4 is

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 21 / 36

Page 64: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA Run Example (2)Example. . .

Now, four sequences of steps 2,3,4 of the TA are performed. TA statein step 4, evolves as follows:

{G0}u-rule−→ {G1}

∃-rule−→ {G2}∃-rule−→ {G3}

∀-rule−→ {G4}, where G4 is

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 21 / 36

Page 65: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA Run Example (3)Example. . .

By now, we applied just deterministic rules (we still have just a singlecompletion graph). At this point no other deterministic rule isapplicable.

Now, we have to apply the t-rule to the concept ¬Muz t ¬Rodiceither in the label of node “0”, or in the label of node “1”. Itsapplication e.g. to node “1” we obtain the state {G5,G6} (G5 left, G6right)

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 22 / 36

Page 66: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA Run Example (3)Example. . .

By now, we applied just deterministic rules (we still have just a singlecompletion graph). At this point no other deterministic rule isapplicable.Now, we have to apply the t-rule to the concept ¬Muz t ¬Rodiceither in the label of node “0”, or in the label of node “1”. Itsapplication e.g. to node “1” we obtain the state {G5,G6} (G5 left, G6right)

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 22 / 36

Page 67: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA Run Example (4)Example. . .

We see that G5 contains a direct clash in node “1”. The only otheroption is to go through the graph G6. By application of t-rule weobtain the state {G5,G7,G8}, where G7 (left), G8 (right) are derivedfrom G6 :

G7 is complete and without direct clash.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 23 / 36

Page 68: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA Run Example (4)Example. . .

We see that G5 contains a direct clash in node “1”. The only otheroption is to go through the graph G6. By application of t-rule weobtain the state {G5,G7,G8}, where G7 (left), G8 (right) are derivedfrom G6 :

G7 is complete and without direct clash.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 23 / 36

Page 69: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA Run Example (5)

Example. . . A canonical model I2 can be created from G7. Is it the only model ofK2 ?

∆I2 = {Jan, i1, i2},

maDiteI2 = {〈Jan, i1〉, 〈Jan, i2〉},PrarodicI2 = {i1},MuzI2 = {i2},“JAN ′′I2 = Jan, “0′′I2 = i2, “1′′I2 = i1,

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 24 / 36

Page 70: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA Run Example (5)

Example. . . A canonical model I2 can be created from G7. Is it the only model ofK2 ?

∆I2 = {Jan, i1, i2},maDiteI2 = {〈Jan, i1〉, 〈Jan, i2〉},

PrarodicI2 = {i1},MuzI2 = {i2},“JAN ′′I2 = Jan, “0′′I2 = i2, “1′′I2 = i1,

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 24 / 36

Page 71: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA Run Example (5)

Example. . . A canonical model I2 can be created from G7. Is it the only model ofK2 ?

∆I2 = {Jan, i1, i2},maDiteI2 = {〈Jan, i1〉, 〈Jan, i2〉},PrarodicI2 = {i1},

MuzI2 = {i2},“JAN ′′I2 = Jan, “0′′I2 = i2, “1′′I2 = i1,

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 24 / 36

Page 72: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA Run Example (5)

Example. . . A canonical model I2 can be created from G7. Is it the only model ofK2 ?

∆I2 = {Jan, i1, i2},maDiteI2 = {〈Jan, i1〉, 〈Jan, i2〉},PrarodicI2 = {i1},MuzI2 = {i2},

“JAN ′′I2 = Jan, “0′′I2 = i2, “1′′I2 = i1,

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 24 / 36

Page 73: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

TA Run Example (5)

Example. . . A canonical model I2 can be created from G7. Is it the only model ofK2 ?

∆I2 = {Jan, i1, i2},maDiteI2 = {〈Jan, i1〉, 〈Jan, i2〉},PrarodicI2 = {i1},MuzI2 = {i2},“JAN ′′I2 = Jan, “0′′I2 = i2, “1′′I2 = i1,

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 24 / 36

Page 74: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Finiteness

Finiteness of the TA is an easy consequence of the following:K is finite

in each step, TA state can be enriched at most by one completiongraph (only by application of →t rule). Number of disjunctions (t)in K is finite, i.e. the t can be applied just finite number of times.for each completion graph G = (VG ,EG , LG) it holds that number ofnodes in VG is less or equal to the number of individuals in A plusnumber of existential quantifiers in A.after application of any of the following rules →u,→∃,→∀ graph G iseither enriched with a new node, new edge, or labeling of an existingnode/edge is enriched. All these operations are finite.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 25 / 36

Page 75: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Finiteness

Finiteness of the TA is an easy consequence of the following:K is finitein each step, TA state can be enriched at most by one completiongraph (only by application of →t rule). Number of disjunctions (t)in K is finite, i.e. the t can be applied just finite number of times.

for each completion graph G = (VG ,EG , LG) it holds that number ofnodes in VG is less or equal to the number of individuals in A plusnumber of existential quantifiers in A.after application of any of the following rules →u,→∃,→∀ graph G iseither enriched with a new node, new edge, or labeling of an existingnode/edge is enriched. All these operations are finite.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 25 / 36

Page 76: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Finiteness

Finiteness of the TA is an easy consequence of the following:K is finitein each step, TA state can be enriched at most by one completiongraph (only by application of →t rule). Number of disjunctions (t)in K is finite, i.e. the t can be applied just finite number of times.for each completion graph G = (VG ,EG , LG) it holds that number ofnodes in VG is less or equal to the number of individuals in A plusnumber of existential quantifiers in A.

after application of any of the following rules →u,→∃,→∀ graph G iseither enriched with a new node, new edge, or labeling of an existingnode/edge is enriched. All these operations are finite.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 25 / 36

Page 77: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Finiteness

Finiteness of the TA is an easy consequence of the following:K is finitein each step, TA state can be enriched at most by one completiongraph (only by application of →t rule). Number of disjunctions (t)in K is finite, i.e. the t can be applied just finite number of times.for each completion graph G = (VG ,EG , LG) it holds that number ofnodes in VG is less or equal to the number of individuals in A plusnumber of existential quantifiers in A.after application of any of the following rules →u,→∃,→∀ graph G iseither enriched with a new node, new edge, or labeling of an existingnode/edge is enriched. All these operations are finite.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 25 / 36

Page 78: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Relation between ABOXes and Completion Graphs

We define also I |= G iff I |= AG , where AG is an ABOX constructedfrom G , as follows

C(a) for each node a ∈ VG and each concept C ∈ LG(a) and

R(a1, a2) for each edge 〈a1, a2〉 ∈ EG and each role R ∈ LG(a1, a2)

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 26 / 36

Page 79: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Relation between ABOXes and Completion Graphs

We define also I |= G iff I |= AG , where AG is an ABOX constructedfrom G , as follows

C(a) for each node a ∈ VG and each concept C ∈ LG(a) andR(a1, a2) for each edge 〈a1, a2〉 ∈ EG and each role R ∈ LG(a1, a2)

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 26 / 36

Page 80: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Soundness

Soundness of the TA can be verified as follows. For any I |= AGi , itmust hold that I |= AGi+1 . We have to show that application of eachrule preserves consistency. As an example, let’s take the →∃ rule:

Before application of →∃ rule, (∃R · C) ∈ LGi (a1) held for a1 ∈ VGi .As a result aI

1 ∈ (∃R · C)I .Next, i ∈ ∆I must exist such that 〈aI

1 , i〉 ∈ RI and at the same timei ∈ CI .By application of →∃ a new node a2 was created in Gi+1 and the labelof edge 〈a1, a2〉 and node a2 has been adjusted.It is enough to place i = aI

2 to see that after rule application thedomain element (necessary present in any interpretation because of ∃construct semantics) has been “materialized”. As a result, the rule iscorrect.

For other rules, the soundness is shown in a similar way.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 27 / 36

Page 81: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Soundness

Soundness of the TA can be verified as follows. For any I |= AGi , itmust hold that I |= AGi+1 . We have to show that application of eachrule preserves consistency. As an example, let’s take the →∃ rule:

Before application of →∃ rule, (∃R · C) ∈ LGi (a1) held for a1 ∈ VGi .

As a result aI1 ∈ (∃R · C)I .

Next, i ∈ ∆I must exist such that 〈aI1 , i〉 ∈ RI and at the same time

i ∈ CI .By application of →∃ a new node a2 was created in Gi+1 and the labelof edge 〈a1, a2〉 and node a2 has been adjusted.It is enough to place i = aI

2 to see that after rule application thedomain element (necessary present in any interpretation because of ∃construct semantics) has been “materialized”. As a result, the rule iscorrect.

For other rules, the soundness is shown in a similar way.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 27 / 36

Page 82: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Soundness

Soundness of the TA can be verified as follows. For any I |= AGi , itmust hold that I |= AGi+1 . We have to show that application of eachrule preserves consistency. As an example, let’s take the →∃ rule:

Before application of →∃ rule, (∃R · C) ∈ LGi (a1) held for a1 ∈ VGi .As a result aI

1 ∈ (∃R · C)I .

Next, i ∈ ∆I must exist such that 〈aI1 , i〉 ∈ RI and at the same time

i ∈ CI .By application of →∃ a new node a2 was created in Gi+1 and the labelof edge 〈a1, a2〉 and node a2 has been adjusted.It is enough to place i = aI

2 to see that after rule application thedomain element (necessary present in any interpretation because of ∃construct semantics) has been “materialized”. As a result, the rule iscorrect.

For other rules, the soundness is shown in a similar way.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 27 / 36

Page 83: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Soundness

Soundness of the TA can be verified as follows. For any I |= AGi , itmust hold that I |= AGi+1 . We have to show that application of eachrule preserves consistency. As an example, let’s take the →∃ rule:

Before application of →∃ rule, (∃R · C) ∈ LGi (a1) held for a1 ∈ VGi .As a result aI

1 ∈ (∃R · C)I .Next, i ∈ ∆I must exist such that 〈aI

1 , i〉 ∈ RI and at the same timei ∈ CI .

By application of →∃ a new node a2 was created in Gi+1 and the labelof edge 〈a1, a2〉 and node a2 has been adjusted.It is enough to place i = aI

2 to see that after rule application thedomain element (necessary present in any interpretation because of ∃construct semantics) has been “materialized”. As a result, the rule iscorrect.

For other rules, the soundness is shown in a similar way.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 27 / 36

Page 84: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Soundness

Soundness of the TA can be verified as follows. For any I |= AGi , itmust hold that I |= AGi+1 . We have to show that application of eachrule preserves consistency. As an example, let’s take the →∃ rule:

Before application of →∃ rule, (∃R · C) ∈ LGi (a1) held for a1 ∈ VGi .As a result aI

1 ∈ (∃R · C)I .Next, i ∈ ∆I must exist such that 〈aI

1 , i〉 ∈ RI and at the same timei ∈ CI .By application of →∃ a new node a2 was created in Gi+1 and the labelof edge 〈a1, a2〉 and node a2 has been adjusted.

It is enough to place i = aI2 to see that after rule application the

domain element (necessary present in any interpretation because of ∃construct semantics) has been “materialized”. As a result, the rule iscorrect.

For other rules, the soundness is shown in a similar way.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 27 / 36

Page 85: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Soundness

Soundness of the TA can be verified as follows. For any I |= AGi , itmust hold that I |= AGi+1 . We have to show that application of eachrule preserves consistency. As an example, let’s take the →∃ rule:

Before application of →∃ rule, (∃R · C) ∈ LGi (a1) held for a1 ∈ VGi .As a result aI

1 ∈ (∃R · C)I .Next, i ∈ ∆I must exist such that 〈aI

1 , i〉 ∈ RI and at the same timei ∈ CI .By application of →∃ a new node a2 was created in Gi+1 and the labelof edge 〈a1, a2〉 and node a2 has been adjusted.It is enough to place i = aI

2 to see that after rule application thedomain element (necessary present in any interpretation because of ∃construct semantics) has been “materialized”. As a result, the rule iscorrect.

For other rules, the soundness is shown in a similar way.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 27 / 36

Page 86: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Soundness

Soundness of the TA can be verified as follows. For any I |= AGi , itmust hold that I |= AGi+1 . We have to show that application of eachrule preserves consistency. As an example, let’s take the →∃ rule:

Before application of →∃ rule, (∃R · C) ∈ LGi (a1) held for a1 ∈ VGi .As a result aI

1 ∈ (∃R · C)I .Next, i ∈ ∆I must exist such that 〈aI

1 , i〉 ∈ RI and at the same timei ∈ CI .By application of →∃ a new node a2 was created in Gi+1 and the labelof edge 〈a1, a2〉 and node a2 has been adjusted.It is enough to place i = aI

2 to see that after rule application thedomain element (necessary present in any interpretation because of ∃construct semantics) has been “materialized”. As a result, the rule iscorrect.

For other rules, the soundness is shown in a similar way.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 27 / 36

Page 87: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Completeness

To prove completeness of the TA, it is necessary to construct a modelfor each complete completion graph G that doesn’t contain a directclash. Canonical model I can be constructed as follows:

the domain ∆I will consist of all nodes of G .

for each atomic concept A let’s define AI = {a | A ∈ LG (a)}for each atomic role R let’s define RI = {〈a1, a2〉 | R ∈ LG (a1, a2)}

Observe that I is a model of AG . A backward induction can be usedto show that I must be also a model of each previous step and thusalso A.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 28 / 36

Page 88: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Completeness

To prove completeness of the TA, it is necessary to construct a modelfor each complete completion graph G that doesn’t contain a directclash. Canonical model I can be constructed as follows:

the domain ∆I will consist of all nodes of G .for each atomic concept A let’s define AI = {a | A ∈ LG (a)}

for each atomic role R let’s define RI = {〈a1, a2〉 | R ∈ LG (a1, a2)}

Observe that I is a model of AG . A backward induction can be usedto show that I must be also a model of each previous step and thusalso A.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 28 / 36

Page 89: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Completeness

To prove completeness of the TA, it is necessary to construct a modelfor each complete completion graph G that doesn’t contain a directclash. Canonical model I can be constructed as follows:

the domain ∆I will consist of all nodes of G .for each atomic concept A let’s define AI = {a | A ∈ LG (a)}for each atomic role R let’s define RI = {〈a1, a2〉 | R ∈ LG (a1, a2)}

Observe that I is a model of AG . A backward induction can be usedto show that I must be also a model of each previous step and thusalso A.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 28 / 36

Page 90: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

A few remarks on TAs

Why we need completion graphs ? Aren’t ABOXes enough tomaintain the state for TA ?

indeed, for ALC they would be enough. However, for complex DLs aTA state cannot be stored in an ABOX.

What about complexity of the algorithm ?

P-SPACE (between NP and EXP-TIME).

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 29 / 36

Page 91: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

A few remarks on TAs

Why we need completion graphs ? Aren’t ABOXes enough tomaintain the state for TA ?

indeed, for ALC they would be enough. However, for complex DLs aTA state cannot be stored in an ABOX.

What about complexity of the algorithm ?

P-SPACE (between NP and EXP-TIME).

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 29 / 36

Page 92: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

A few remarks on TAs

Why we need completion graphs ? Aren’t ABOXes enough tomaintain the state for TA ?

indeed, for ALC they would be enough. However, for complex DLs aTA state cannot be stored in an ABOX.

What about complexity of the algorithm ?

P-SPACE (between NP and EXP-TIME).

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 29 / 36

Page 93: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

A few remarks on TAs

Why we need completion graphs ? Aren’t ABOXes enough tomaintain the state for TA ?

indeed, for ALC they would be enough. However, for complex DLs aTA state cannot be stored in an ABOX.

What about complexity of the algorithm ?P-SPACE (between NP and EXP-TIME).

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 29 / 36

Page 94: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

What if T is not empty?

consider T containing axioms of the form Ci v Di for 1 ≤ i ≤ n.Such T can be transformed into a single axiom

> v >C

where >C denotes a concept (¬C1 t D1) u . . . u (¬Cn t Dn)for each model I of the theory K, each element of ∆I must belongto >IC . How to achieve this ?

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 30 / 36

Page 95: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

What if T is not empty?

consider T containing axioms of the form Ci v Di for 1 ≤ i ≤ n.Such T can be transformed into a single axiom

> v >C

where >C denotes a concept (¬C1 t D1) u . . . u (¬Cn t Dn)

for each model I of the theory K, each element of ∆I must belongto >IC . How to achieve this ?

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 30 / 36

Page 96: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

What if T is not empty?

consider T containing axioms of the form Ci v Di for 1 ≤ i ≤ n.Such T can be transformed into a single axiom

> v >C

where >C denotes a concept (¬C1 t D1) u . . . u (¬Cn t Dn)for each model I of the theory K, each element of ∆I must belongto >IC . How to achieve this ?

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 30 / 36

Page 97: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

General Inclusions (2)

What about this ?→v rule

if >C /∈ LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), a LG′ (a) = LG (a) ∪ {>C} and

otherwise is the same as LG .

ExampleConsider K3 = ({Muz v ∃maRodice ·Muz},A2). Then >C is¬Muz t ∃maRodice ·Muz . Let’s use the introduced TA enriched by →vrule. Repeating several times the application of rules →v, →t, →∃ to G7(that is not complete w.r.t. to →v rule) from the previous example wecan get into an infinite loop

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 31 / 36

Page 98: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

General Inclusions (2)

What about this ?→v rule

if >C /∈ LG (a) for some a ∈ VG .

then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), a LG′ (a) = LG (a) ∪ {>C} andotherwise is the same as LG .

ExampleConsider K3 = ({Muz v ∃maRodice ·Muz},A2). Then >C is¬Muz t ∃maRodice ·Muz . Let’s use the introduced TA enriched by →vrule. Repeating several times the application of rules →v, →t, →∃ to G7(that is not complete w.r.t. to →v rule) from the previous example wecan get into an infinite loop

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 31 / 36

Page 99: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

General Inclusions (2)

What about this ?→v rule

if >C /∈ LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), a LG′ (a) = LG (a) ∪ {>C} and

otherwise is the same as LG .

ExampleConsider K3 = ({Muz v ∃maRodice ·Muz},A2). Then >C is¬Muz t ∃maRodice ·Muz . Let’s use the introduced TA enriched by →vrule. Repeating several times the application of rules →v, →t, →∃ to G7(that is not complete w.r.t. to →v rule) from the previous example wecan get into an infinite loop

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 31 / 36

Page 100: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

General Inclusions (2)

What about this ?→v rule

if >C /∈ LG (a) for some a ∈ VG .then S′ = S ∪ {G ′} \ {G}, where G ′ = (VG , EG , LG′ ), a LG′ (a) = LG (a) ∪ {>C} and

otherwise is the same as LG .

ExampleConsider K3 = ({Muz v ∃maRodice ·Muz},A2). Then >C is¬Muz t ∃maRodice ·Muz . Let’s use the introduced TA enriched by →vrule. Repeating several times the application of rules →v, →t, →∃ to G7(that is not complete w.r.t. to →v rule) from the previous example wecan get into an infinite loop

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 31 / 36

Page 101: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

General Inclusions (3)Example

. . . this algorithm doesn’t necessarily terminate /.Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 32 / 36

Page 102: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Blocking in TA

Blocking ensures that inference rules will be applicable until theirchanges will not repeat “sufficiently frequently”.

For ALC it can be shown that so called subset blocking is enough:

In completion graph G a node x (not present in ABOX A) isblocked by node y , if there is an oriented path from y to x andLG (x) ⊆ LG (y).

∃− rule is only applicable if the node a1 in its definition is notblocked by another node.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 33 / 36

Page 103: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Blocking in TA

Blocking ensures that inference rules will be applicable until theirchanges will not repeat “sufficiently frequently”.For ALC it can be shown that so called subset blocking is enough:

In completion graph G a node x (not present in ABOX A) isblocked by node y , if there is an oriented path from y to x andLG (x) ⊆ LG (y).

∃− rule is only applicable if the node a1 in its definition is notblocked by another node.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 33 / 36

Page 104: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Blocking in TA

Blocking ensures that inference rules will be applicable until theirchanges will not repeat “sufficiently frequently”.For ALC it can be shown that so called subset blocking is enough:

In completion graph G a node x (not present in ABOX A) isblocked by node y , if there is an oriented path from y to x andLG (x) ⊆ LG (y).

∃− rule is only applicable if the node a1 in its definition is notblocked by another node.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 33 / 36

Page 105: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Blocking in TA

Blocking ensures that inference rules will be applicable until theirchanges will not repeat “sufficiently frequently”.For ALC it can be shown that so called subset blocking is enough:

In completion graph G a node x (not present in ABOX A) isblocked by node y , if there is an oriented path from y to x andLG (x) ⊆ LG (y).

∃− rule is only applicable if the node a1 in its definition is notblocked by another node.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 33 / 36

Page 106: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Blocking in TA (2)

In the previous example, the blocking ensures that node “2′′ isblocked by node “0′′ and no other expansion occurs. Which modelcorresponds to such graph ?

Introduced TA with subset blocking is sound, complete andfinite decision procedure for ALC.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 34 / 36

Page 107: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Blocking in TA (2)

In the previous example, the blocking ensures that node “2′′ isblocked by node “0′′ and no other expansion occurs. Which modelcorresponds to such graph ?Introduced TA with subset blocking is sound, complete andfinite decision procedure for ALC.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 34 / 36

Page 108: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

Let’s play . . .

http://kbss.felk.cvut.cz/tools/dl

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 35 / 36

Page 109: Description Logics – Reasoning

Inference Algorithms Tableau Algorithm for ALC

References I

[1] * Vladimır Marık, Olga Stepankova, and Jirı Lazansky.Umela inteligence 6 [in czech], Chapters 2-4.Academia, 2013.

[2] * Franz Baader, Diego Calvanese, Deborah L. McGuinness,Daniele Nardi, and Peter Patel-Schneider, editors.The Description Logic Handbook, Theory, Implementation andApplications, Chapters 2-4.Cambridge, 2003.

[3] * Enrico Franconi.Course on Description Logics.http://www.inf.unibz.it/ franconi/dl/course/, cit. 22.9.2013.

Petr Kremen ([email protected]) Description Logics – Reasoning Winter 2021 36 / 36