semantic web - 2. description logics (2/2) filesemantic web 2. description logics (2/2) gerd gr...
TRANSCRIPT
![Page 1: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/1.jpg)
Semantic Web2. Description logics (2/2)
Gerd Groner, Matthias Thimm
{groener,thimm}@uni-koblenz.de
Institute for Web Science and Technologies (WeST)University of Koblenz-Landau
July 9, 2013
Gerd Groner, Matthias Thimm Semantic Web 1 / 39
![Page 2: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/2.jpg)
Recap
I Ontologies: definition and applications
I Structure of an ontologyI The description logic ALC:
I Syntax: signature, concepts, relations, axiomsI Semantic: interpretations, modelsI Inference: entailmentI ALC and first-order logics
Home assignment:Consider K2 = (T2,A2) given via
T2 = { B v D }A2 = { d : B, (c , d) : S }
Is the entailment K2 |= c : ∀S .D valid? (Home assignment)
Gerd Groner, Matthias Thimm Semantic Web 2 / 39
![Page 3: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/3.jpg)
Recap
I Ontologies: definition and applications
I Structure of an ontologyI The description logic ALC:
I Syntax: signature, concepts, relations, axiomsI Semantic: interpretations, modelsI Inference: entailmentI ALC and first-order logics
Home assignment:Consider K2 = (T2,A2) given via
T2 = { B v D }A2 = { d : B, (c , d) : S }
Is the entailment K2 |= c : ∀S .D valid? (Home assignment)
Gerd Groner, Matthias Thimm Semantic Web 2 / 39
![Page 4: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/4.jpg)
Overview
I Formal syntax and semantics provide the basis forunderstanding description logics
I Implementing the semantics of e. g. ALC is intractable forobtaining a proof procedure
I Generate all interpretationsI Check whether an interpretation satisfies a potential
conclusions
I Today we have a look at a very simple proof procedure fordeciding consistency: the Tableau Algorithm
I We also take another look at ontology languages in generaland applications
Gerd Groner, Matthias Thimm Semantic Web 3 / 39
![Page 5: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/5.jpg)
Overview
I Formal syntax and semantics provide the basis forunderstanding description logics
I Implementing the semantics of e. g. ALC is intractable forobtaining a proof procedure
I Generate all interpretationsI Check whether an interpretation satisfies a potential
conclusions
I Today we have a look at a very simple proof procedure fordeciding consistency: the Tableau Algorithm
I We also take another look at ontology languages in generaland applications
Gerd Groner, Matthias Thimm Semantic Web 3 / 39
![Page 6: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/6.jpg)
Overview
I Formal syntax and semantics provide the basis forunderstanding description logics
I Implementing the semantics of e. g. ALC is intractable forobtaining a proof procedure
I Generate all interpretationsI Check whether an interpretation satisfies a potential
conclusions
I Today we have a look at a very simple proof procedure fordeciding consistency: the Tableau Algorithm
I We also take another look at ontology languages in generaland applications
Gerd Groner, Matthias Thimm Semantic Web 3 / 39
![Page 7: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/7.jpg)
Overview
I Formal syntax and semantics provide the basis forunderstanding description logics
I Implementing the semantics of e. g. ALC is intractable forobtaining a proof procedure
I Generate all interpretationsI Check whether an interpretation satisfies a potential
conclusions
I Today we have a look at a very simple proof procedure fordeciding consistency: the Tableau Algorithm
I We also take another look at ontology languages in generaland applications
Gerd Groner, Matthias Thimm Semantic Web 3 / 39
![Page 8: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/8.jpg)
Outline
1 Reasoning with Description Logics
2 Ontology languages revisited
3 Tools
4 Summary and Exercises
Gerd Groner, Matthias Thimm Semantic Web 4 / 39
![Page 9: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/9.jpg)
Outline
1 Reasoning with Description Logics
2 Ontology languages revisited
3 Tools
4 Summary and Exercises
Gerd Groner, Matthias Thimm Semantic Web 5 / 39
![Page 10: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/10.jpg)
Inference tasks 1/2
In description logics one usually distinguishes the followinginference tasks:
I Subsumption problem: Given concepts C1,C2 does K entailC1 v C2?
I Instance checking problem: Given concept C and individual tdoes K entail t : C?
I Relation checking problem: Given relation R and individualst, t ′ does K entail (t, t ′) : R?
I Consistency problem: Is there I with I |= K?
Gerd Groner, Matthias Thimm Semantic Web 6 / 39
![Page 11: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/11.jpg)
Inference tasks 2/2
The subsumption and the consistency problem are closely related:
I C2 subsumes C1 if C1 and ¬C2 are inconsistent:
K |= C1 v C2 if and only if ¬∃I : I |= K ∪ {t : (C1 u ¬C2)}
→ it suffices to investigate algorithms for checking consistency.
Gerd Groner, Matthias Thimm Semantic Web 7 / 39
![Page 12: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/12.jpg)
Inference tasks 2/2
The subsumption and the consistency problem are closely related:
I C2 subsumes C1 if C1 and ¬C2 are inconsistent:
K |= C1 v C2 if and only if ¬∃I : I |= K ∪ {t : (C1 u ¬C2)}
→ it suffices to investigate algorithms for checking consistency.
Gerd Groner, Matthias Thimm Semantic Web 7 / 39
![Page 13: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/13.jpg)
The Tableau Algorithm
Let K = (T ,A) be a knowledge base and consider the question
∃I : I |= K ?
The tableau algorithm tries to construct a model I of K:
I If this is successful, K is consistent
I otherwise it is inconsistent
It works on a set S of ABoxes and iteratively expands on it:
I S is initialized with the singleton S = {A}I Apply different rules on the elements of S depending on the
axioms in TI If no more rules are applicable, K is consistent if there is an
ABox A′ in S that is consistent (contains no axioms t : C ,t : ¬C )
Gerd Groner, Matthias Thimm Semantic Web 8 / 39
![Page 14: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/14.jpg)
The Tableau Algorithm
Let K = (T ,A) be a knowledge base and consider the question
∃I : I |= K ?
The tableau algorithm tries to construct a model I of K:
I If this is successful, K is consistent
I otherwise it is inconsistent
It works on a set S of ABoxes and iteratively expands on it:
I S is initialized with the singleton S = {A}I Apply different rules on the elements of S depending on the
axioms in TI If no more rules are applicable, K is consistent if there is an
ABox A′ in S that is consistent (contains no axioms t : C ,t : ¬C )
Gerd Groner, Matthias Thimm Semantic Web 8 / 39
![Page 15: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/15.jpg)
The Tableau Algorithm
Let K = (T ,A) be a knowledge base and consider the question
∃I : I |= K ?
The tableau algorithm tries to construct a model I of K:
I If this is successful, K is consistent
I otherwise it is inconsistent
It works on a set S of ABoxes and iteratively expands on it:
I S is initialized with the singleton S = {A}I Apply different rules on the elements of S depending on the
axioms in TI If no more rules are applicable, K is consistent if there is an
ABox A′ in S that is consistent (contains no axioms t : C ,t : ¬C )
Gerd Groner, Matthias Thimm Semantic Web 8 / 39
![Page 16: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/16.jpg)
The Tableau Algorithm
Let K = (T ,A) be a knowledge base and consider the question
∃I : I |= K ?
The tableau algorithm tries to construct a model I of K:
I If this is successful, K is consistent
I otherwise it is inconsistent
It works on a set S of ABoxes and iteratively expands on it:
I S is initialized with the singleton S = {A}I Apply different rules on the elements of S depending on the
axioms in TI If no more rules are applicable, K is consistent if there is an
ABox A′ in S that is consistent (contains no axioms t : C ,t : ¬C )
Gerd Groner, Matthias Thimm Semantic Web 8 / 39
![Page 17: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/17.jpg)
The Tableau Algorithm
Let K = (T ,A) be a knowledge base and consider the question
∃I : I |= K ?
The tableau algorithm tries to construct a model I of K:
I If this is successful, K is consistent
I otherwise it is inconsistent
It works on a set S of ABoxes and iteratively expands on it:
I S is initialized with the singleton S = {A}I Apply different rules on the elements of S depending on the
axioms in TI If no more rules are applicable, K is consistent if there is an
ABox A′ in S that is consistent (contains no axioms t : C ,t : ¬C )
Gerd Groner, Matthias Thimm Semantic Web 8 / 39
![Page 18: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/18.jpg)
The Tableau Algorithm - Negation Normal Form
In order to apply the tableau algorithm we have to assume that Kis in negation normal form:
I ¬(C1 t C2) −→ ¬C1 u ¬C2
I ¬(C1 u C2) −→ ¬C1 t ¬C2
I ¬∃R.C −→ ∀R.(¬C )
I ¬∀R.C −→ ∃R.(¬C )
From now on, we assume that every concept appearing in anaxiom in K is in negation normal form. For example
¬(C1 u C2) v ¬∃R.¬(C3 t C4) −→ ¬C1 t ¬C2 v ∀R.(C3 t C4)
Gerd Groner, Matthias Thimm Semantic Web 9 / 39
![Page 19: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/19.jpg)
The Tableau Algorithm - Negation Normal Form
In order to apply the tableau algorithm we have to assume that Kis in negation normal form:
I ¬(C1 t C2) −→ ¬C1 u ¬C2
I ¬(C1 u C2) −→ ¬C1 t ¬C2
I ¬∃R.C −→ ∀R.(¬C )
I ¬∀R.C −→ ∃R.(¬C )
From now on, we assume that every concept appearing in anaxiom in K is in negation normal form. For example
¬(C1 u C2) v ¬∃R.¬(C3 t C4) −→ ¬C1 t ¬C2 v ∀R.(C3 t C4)
Gerd Groner, Matthias Thimm Semantic Web 9 / 39
![Page 20: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/20.jpg)
The Tableau Algorithm - Negation Normal Form
In order to apply the tableau algorithm we have to assume that Kis in negation normal form:
I ¬(C1 t C2) −→ ¬C1 u ¬C2
I ¬(C1 u C2) −→ ¬C1 t ¬C2
I ¬∃R.C −→ ∀R.(¬C )
I ¬∀R.C −→ ∃R.(¬C )
From now on, we assume that every concept appearing in anaxiom in K is in negation normal form. For example
¬(C1 u C2) v ¬∃R.¬(C3 t C4) −→ ¬C1 t ¬C2 v ∀R.(C3 t C4)
Gerd Groner, Matthias Thimm Semantic Web 9 / 39
![Page 21: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/21.jpg)
The Tableau Algorithm - Rules 1/2
Let S be a set of ABoxes (initialized with S = {A}).
Let A′ ∈ S.
I u-rule: if t : C1 u C2 ∈ A′ and {t : C1, t : C2} * A′ thenremove A′ from S and add A′ ∪ {t : C1, t : C2} to S.
I t-rule: if t : C1 t C2 ∈ A′ and {t : C1, t : C2} ∩ A′ = ∅ thenremove A′ from S and add both A′ ∪ {t : C1} andA′ ∪ {t : C2} to S.
I ∃-rule: if t : ∃R.C ∈ A′ and there is no t ′ with{(t, t ′) : R, t ′ : C} ⊆ A′ then remove A′ from S, create a newindividual t ′′, and add A′ ∪ {(t, t ′′) : R, t ′′ : C} to S.
Gerd Groner, Matthias Thimm Semantic Web 10 / 39
![Page 22: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/22.jpg)
The Tableau Algorithm - Rules 1/2
Let S be a set of ABoxes (initialized with S = {A}).
Let A′ ∈ S.
I u-rule: if t : C1 u C2 ∈ A′ and {t : C1, t : C2} * A′ thenremove A′ from S and add A′ ∪ {t : C1, t : C2} to S.
I t-rule: if t : C1 t C2 ∈ A′ and {t : C1, t : C2} ∩ A′ = ∅ thenremove A′ from S and add both A′ ∪ {t : C1} andA′ ∪ {t : C2} to S.
I ∃-rule: if t : ∃R.C ∈ A′ and there is no t ′ with{(t, t ′) : R, t ′ : C} ⊆ A′ then remove A′ from S, create a newindividual t ′′, and add A′ ∪ {(t, t ′′) : R, t ′′ : C} to S.
Gerd Groner, Matthias Thimm Semantic Web 10 / 39
![Page 23: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/23.jpg)
The Tableau Algorithm - Rules 1/2
Let S be a set of ABoxes (initialized with S = {A}).
Let A′ ∈ S.
I u-rule: if t : C1 u C2 ∈ A′ and {t : C1, t : C2} * A′ thenremove A′ from S and add A′ ∪ {t : C1, t : C2} to S.
I t-rule: if t : C1 t C2 ∈ A′ and {t : C1, t : C2} ∩ A′ = ∅ thenremove A′ from S and add both A′ ∪ {t : C1} andA′ ∪ {t : C2} to S.
I ∃-rule: if t : ∃R.C ∈ A′ and there is no t ′ with{(t, t ′) : R, t ′ : C} ⊆ A′ then remove A′ from S, create a newindividual t ′′, and add A′ ∪ {(t, t ′′) : R, t ′′ : C} to S.
Gerd Groner, Matthias Thimm Semantic Web 10 / 39
![Page 24: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/24.jpg)
The Tableau Algorithm - Rules 1/2
Let S be a set of ABoxes (initialized with S = {A}).
Let A′ ∈ S.
I u-rule: if t : C1 u C2 ∈ A′ and {t : C1, t : C2} * A′ thenremove A′ from S and add A′ ∪ {t : C1, t : C2} to S.
I t-rule: if t : C1 t C2 ∈ A′ and {t : C1, t : C2} ∩ A′ = ∅ thenremove A′ from S and add both A′ ∪ {t : C1} andA′ ∪ {t : C2} to S.
I ∃-rule: if t : ∃R.C ∈ A′ and there is no t ′ with{(t, t ′) : R, t ′ : C} ⊆ A′ then remove A′ from S, create a newindividual t ′′, and add A′ ∪ {(t, t ′′) : R, t ′′ : C} to S.
Gerd Groner, Matthias Thimm Semantic Web 10 / 39
![Page 25: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/25.jpg)
The Tableau Algorithm - Rules 1/2
Let S be a set of ABoxes (initialized with S = {A}).
Let A′ ∈ S.
I u-rule: if t : C1 u C2 ∈ A′ and {t : C1, t : C2} * A′ thenremove A′ from S and add A′ ∪ {t : C1, t : C2} to S.
I t-rule: if t : C1 t C2 ∈ A′ and {t : C1, t : C2} ∩ A′ = ∅ thenremove A′ from S and add both A′ ∪ {t : C1} andA′ ∪ {t : C2} to S.
I ∃-rule: if t : ∃R.C ∈ A′ and there is no t ′ with{(t, t ′) : R, t ′ : C} ⊆ A′ then remove A′ from S, create a newindividual t ′′, and add A′ ∪ {(t, t ′′) : R, t ′′ : C} to S.
Gerd Groner, Matthias Thimm Semantic Web 10 / 39
![Page 26: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/26.jpg)
The Tableau Algorithm - Rules 2/2
Let S be a set of ABoxes (initialized with S = {A}).
Let A′ ∈ S.
I ∀-rule: if {t : ∀R.C , (t, t ′) : R} ⊆ A′ and {t ′ : C} /∈ A′ thenremove A′ from S and add A′ ∪ {t ′ : C} to S.
I v-rule: if C1 v C2 ∈ T and t : (¬C1 t C2) /∈ A′ for tappearing in A′ then remove A′ from S and addA′ ∪ {t : (¬C1 t C2)} to S.
Gerd Groner, Matthias Thimm Semantic Web 11 / 39
![Page 27: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/27.jpg)
The Tableau Algorithm - Rules 2/2
Let S be a set of ABoxes (initialized with S = {A}).
Let A′ ∈ S.
I ∀-rule: if {t : ∀R.C , (t, t ′) : R} ⊆ A′ and {t ′ : C} /∈ A′ thenremove A′ from S and add A′ ∪ {t ′ : C} to S.
I v-rule: if C1 v C2 ∈ T and t : (¬C1 t C2) /∈ A′ for tappearing in A′ then remove A′ from S and addA′ ∪ {t : (¬C1 t C2)} to S.
Gerd Groner, Matthias Thimm Semantic Web 11 / 39
![Page 28: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/28.jpg)
The Tableau Algorithm - Rules 2/2
Let S be a set of ABoxes (initialized with S = {A}).
Let A′ ∈ S.
I ∀-rule: if {t : ∀R.C , (t, t ′) : R} ⊆ A′ and {t ′ : C} /∈ A′ thenremove A′ from S and add A′ ∪ {t ′ : C} to S.
I v-rule: if C1 v C2 ∈ T and t : (¬C1 t C2) /∈ A′ for tappearing in A′ then remove A′ from S and addA′ ∪ {t : (¬C1 t C2)} to S.
Gerd Groner, Matthias Thimm Semantic Web 11 / 39
![Page 29: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/29.jpg)
The Tableau Algorithm - Rules 2/2
Let S be a set of ABoxes (initialized with S = {A}).
Let A′ ∈ S.
I ∀-rule: if {t : ∀R.C , (t, t ′) : R} ⊆ A′ and {t ′ : C} /∈ A′ thenremove A′ from S and add A′ ∪ {t ′ : C} to S.
I v-rule: if C1 v C2 ∈ T and t : (¬C1 t C2) /∈ A′ for tappearing in A′ then remove A′ from S and addA′ ∪ {t : (¬C1 t C2)} to S.
Gerd Groner, Matthias Thimm Semantic Web 11 / 39
![Page 30: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/30.jpg)
The Tableau Algorithm - Approach
Let K = (T ,A) and A be consistent.
The tableau algorithm:
1. Set S = {A}2. Is some rule applicable?
I yes: goto 3I no: K is consistent; exit
3. Apply the rule to S4. Remove all A′ ∈ S with t : C , t : ¬C ∈ A′ (for some t,C )
5. S = ∅?I yes: K is inconsistent; exitI no: goto 2
Gerd Groner, Matthias Thimm Semantic Web 12 / 39
![Page 31: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/31.jpg)
The Tableau Algorithm - Approach
Let K = (T ,A) and A be consistent.
The tableau algorithm:
1. Set S = {A}2. Is some rule applicable?
I yes: goto 3I no: K is consistent; exit
3. Apply the rule to S4. Remove all A′ ∈ S with t : C , t : ¬C ∈ A′ (for some t,C )
5. S = ∅?I yes: K is inconsistent; exitI no: goto 2
Gerd Groner, Matthias Thimm Semantic Web 12 / 39
![Page 32: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/32.jpg)
The Tableau Algorithm - Example
Let K = (T ,A) be given via
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }
Observe:
I K is in negation normal form
I A is consistent
Initialize S = {{a : A, b : D, (a, b) : R}}.
Gerd Groner, Matthias Thimm Semantic Web 13 / 39
![Page 33: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/33.jpg)
The Tableau Algorithm - Example
Let K = (T ,A) be given via
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }
Observe:
I K is in negation normal form
I A is consistent
Initialize S = {{a : A, b : D, (a, b) : R}}.
Gerd Groner, Matthias Thimm Semantic Web 13 / 39
![Page 34: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/34.jpg)
The Tableau Algorithm - Example
Let K = (T ,A) be given via
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }
Observe:
I K is in negation normal form
I A is consistent
Initialize S = {{a : A, b : D, (a, b) : R}}.
Gerd Groner, Matthias Thimm Semantic Web 13 / 39
![Page 35: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/35.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R}}
v-rule: if C1 v C2 ∈ T and t : (¬C1 t C2) /∈ A′ for t appearing inA′ then remove A′ from S and add A′ ∪ {t : (¬C1 t C2)} to S.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 14 / 39
![Page 36: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/36.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R}}
v-rule: if C1 v C2 ∈ T and t : (¬C1 t C2) /∈ A′ for t appearing inA′ then remove A′ from S and add A′ ∪ {t : (¬C1 t C2)} to S.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 14 / 39
![Page 37: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/37.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R}}
v-rule: if C1 v C2 ∈ T and t : (¬C1 t C2) /∈ A′ for t appearing inA′ then remove A′ from S and add A′ ∪ {t : (¬C1 t C2)} to S.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 14 / 39
![Page 38: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/38.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C}}
t-rule: if t : C1 t C2 ∈ A′ and {t : C1, t : C2} ∩ A′ = ∅ thenremove A′ from S and add both A′ ∪ {t : C1} and A′ ∪ {t : C2} toS.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 15 / 39
![Page 39: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/39.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C}}
t-rule: if t : C1 t C2 ∈ A′ and {t : C1, t : C2} ∩ A′ = ∅ thenremove A′ from S and add both A′ ∪ {t : C1} and A′ ∪ {t : C2} toS.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 15 / 39
![Page 40: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/40.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C}}
t-rule: if t : C1 t C2 ∈ A′ and {t : C1, t : C2} ∩ A′ = ∅ thenremove A′ from S and add both A′ ∪ {t : C1} and A′ ∪ {t : C2} toS.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 15 / 39
![Page 41: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/41.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C}}
t-rule: if t : C1 t C2 ∈ A′ and {t : C1, t : C2} ∩ A′ = ∅ thenremove A′ from S and add both A′ ∪ {t : C1} and A′ ∪ {t : C2} toS.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ¬A},←{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 16 / 39
![Page 42: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/42.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C}}
t-rule: if t : C1 t C2 ∈ A′ and {t : C1, t : C2} ∩ A′ = ∅ thenremove A′ from S and add both A′ ∪ {t : C1} and A′ ∪ {t : C2} toS.
S = {((((((((((((((((((((((
{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 17 / 39
![Page 43: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/43.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C}}
∃-rule: if t : ∃R.C ∈ A′ and there is no t ′ with{(t, t ′) : R, t ′ : C} ⊆ A′ then remove A′ from S, create a newindividual t ′′, and add A′ ∪ {(t, t ′′) : R, t ′′ : C} to S.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C ,
(a, t ′′) : R, t ′′ : C}}
Gerd Groner, Matthias Thimm Semantic Web 18 / 39
![Page 44: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/44.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C}}
∃-rule: if t : ∃R.C ∈ A′ and there is no t ′ with{(t, t ′) : R, t ′ : C} ⊆ A′ then remove A′ from S, create a newindividual t ′′, and add A′ ∪ {(t, t ′′) : R, t ′′ : C} to S.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C ,
(a, t ′′) : R, t ′′ : C}}
Gerd Groner, Matthias Thimm Semantic Web 18 / 39
![Page 45: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/45.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C ,
(a, t ′′) : R, t ′′ : C}}
v-rule: if C1 v C2 ∈ T and t : (¬C1 t C2) /∈ A′ for t appearing inA′ then remove A′ from S and add A′ ∪ {t : (¬C1 t C2)} to S.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t ′′) : R, t ′′ : C ,
b : ¬A t ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 19 / 39
![Page 46: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/46.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C ,
(a, t ′′) : R, t ′′ : C}}
v-rule: if C1 v C2 ∈ T and t : (¬C1 t C2) /∈ A′ for t appearing inA′ then remove A′ from S and add A′ ∪ {t : (¬C1 t C2)} to S.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t ′′) : R, t ′′ : C ,
b : ¬A t ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 19 / 39
![Page 47: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/47.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C ,
(a, t ′′) : R, t ′′ : C}}
v-rule: if C1 v C2 ∈ T and t : (¬C1 t C2) /∈ A′ for t appearing inA′ then remove A′ from S and add A′ ∪ {t : (¬C1 t C2)} to S.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t ′′) : R, t ′′ : C ,
b : ¬A t ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 19 / 39
![Page 48: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/48.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t ′′) : R, t ′′ : C ,
b : ¬A t ∃R.C}}
t-rule: if t : C1 t C2 ∈ A′ and {t : C1, t : C2} ∩ A′ = ∅ thenremove A′ from S and add both A′ ∪ {t : C1} and A′ ∪ {t : C2} toS.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t ′′) : R, t ′′ : C ,
b : ¬A t ∃R.C , b : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t ′′) : R, t ′′ : C ,
b : ¬A t ∃R.C , b : ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 20 / 39
![Page 49: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/49.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t ′′) : R, t ′′ : C ,
b : ¬A t ∃R.C}}
t-rule: if t : C1 t C2 ∈ A′ and {t : C1, t : C2} ∩ A′ = ∅ thenremove A′ from S and add both A′ ∪ {t : C1} and A′ ∪ {t : C2} toS.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t ′′) : R, t ′′ : C ,
b : ¬A t ∃R.C , b : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t ′′) : R, t ′′ : C ,
b : ¬A t ∃R.C , b : ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 20 / 39
![Page 50: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/50.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t ′′) : R, t ′′ : C ,
b : ¬A t ∃R.C}}
t-rule: if t : C1 t C2 ∈ A′ and {t : C1, t : C2} ∩ A′ = ∅ thenremove A′ from S and add both A′ ∪ {t : C1} and A′ ∪ {t : C2} toS.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t ′′) : R, t ′′ : C ,
b : ¬A t ∃R.C , b : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t ′′) : R, t ′′ : C ,
b : ¬A t ∃R.C , b : ∃R.C}}
Gerd Groner, Matthias Thimm Semantic Web 20 / 39
![Page 51: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/51.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ∃R.C}}
∃-rule: if t : ∃R.C ∈ A′ and there is no t′ with {(t, t′) : R, t′ : C} ⊆ A′ thenremove A′ from S, create a new individual t′′, and addA′ ∪ {(t, t′′) : R, t′′ : C} to S.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ∃R.C , (b, t′′′) : R, t′′′ : C}}
Gerd Groner, Matthias Thimm Semantic Web 21 / 39
![Page 52: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/52.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ∃R.C}}
∃-rule: if t : ∃R.C ∈ A′ and there is no t′ with {(t, t′) : R, t′ : C} ⊆ A′ thenremove A′ from S, create a new individual t′′, and addA′ ∪ {(t, t′′) : R, t′′ : C} to S.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ∃R.C , (b, t′′′) : R, t′′′ : C}}
Gerd Groner, Matthias Thimm Semantic Web 21 / 39
![Page 53: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/53.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ∃R.C}}
∃-rule: if t : ∃R.C ∈ A′ and there is no t′ with {(t, t′) : R, t′ : C} ⊆ A′ thenremove A′ from S, create a new individual t′′, and addA′ ∪ {(t, t′′) : R, t′′ : C} to S.
S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ∃R.C , (b, t′′′) : R, t′′′ : C}}
Gerd Groner, Matthias Thimm Semantic Web 21 / 39
![Page 54: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/54.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ∃R.C , (b, t′′′) : R, t′′′ : C}}
Observations:
I No more rules applicable
I All ABoxes in S are consistent
→ The knowledge base K is consistent.
Gerd Groner, Matthias Thimm Semantic Web 22 / 39
![Page 55: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/55.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ∃R.C , (b, t′′′) : R, t′′′ : C}}
Observations:
I No more rules applicable
I All ABoxes in S are consistent
→ The knowledge base K is consistent.
Gerd Groner, Matthias Thimm Semantic Web 22 / 39
![Page 56: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/56.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ∃R.C , (b, t′′′) : R, t′′′ : C}}
Observations:
I No more rules applicable
I All ABoxes in S are consistent
→ The knowledge base K is consistent.
Gerd Groner, Matthias Thimm Semantic Web 22 / 39
![Page 57: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/57.jpg)
The Tableau Algorithm - Example cont’d
T = { A v ∃R.C }A = { a : A, b : D, (a, b) : R }S = {{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ¬A},{a : A, b : D, (a, b) : R, a : ¬A t ∃R.C , a : ∃R.C , (a, t′′) : R, t′′ : C ,
b : ¬A t ∃R.C , b : ∃R.C , (b, t′′′) : R, t′′′ : C}}
Observations:
I No more rules applicable
I All ABoxes in S are consistent
→ The knowledge base K is consistent.
Gerd Groner, Matthias Thimm Semantic Web 22 / 39
![Page 58: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/58.jpg)
The Tableau Algorithm - Observations
I If a rule has been applied to an ABox in S it will never beapplied again (with the same parameters)
I Only the t-rule adds a new ABox to SI If A′ replaces A then A ⊆ A′
Theorem
I If the tableau algorithm terminates with S = ∅ then K isinconsistent
I If the tableau algorithm terminates with S 6= ∅ then K isconsistent
What about termination?
Gerd Groner, Matthias Thimm Semantic Web 23 / 39
![Page 59: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/59.jpg)
The Tableau Algorithm - Observations
I If a rule has been applied to an ABox in S it will never beapplied again (with the same parameters)
I Only the t-rule adds a new ABox to SI If A′ replaces A then A ⊆ A′
Theorem
I If the tableau algorithm terminates with S = ∅ then K isinconsistent
I If the tableau algorithm terminates with S 6= ∅ then K isconsistent
What about termination?
Gerd Groner, Matthias Thimm Semantic Web 23 / 39
![Page 60: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/60.jpg)
The Tableau Algorithm - Observations
I If a rule has been applied to an ABox in S it will never beapplied again (with the same parameters)
I Only the t-rule adds a new ABox to SI If A′ replaces A then A ⊆ A′
Theorem
I If the tableau algorithm terminates with S = ∅ then K isinconsistent
I If the tableau algorithm terminates with S 6= ∅ then K isconsistent
What about termination?
Gerd Groner, Matthias Thimm Semantic Web 23 / 39
![Page 61: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/61.jpg)
The Tableau Algorithm - Observations
I If a rule has been applied to an ABox in S it will never beapplied again (with the same parameters)
I Only the t-rule adds a new ABox to SI If A′ replaces A then A ⊆ A′
Theorem
I If the tableau algorithm terminates with S = ∅ then K isinconsistent
I If the tableau algorithm terminates with S 6= ∅ then K isconsistent
What about termination?
Gerd Groner, Matthias Thimm Semantic Web 23 / 39
![Page 62: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/62.jpg)
The Tableau Algorithm - Observations
I If a rule has been applied to an ABox in S it will never beapplied again (with the same parameters)
I Only the t-rule adds a new ABox to SI If A′ replaces A then A ⊆ A′
Theorem
I If the tableau algorithm terminates with S = ∅ then K isinconsistent
I If the tableau algorithm terminates with S 6= ∅ then K isconsistent
What about termination?
Gerd Groner, Matthias Thimm Semantic Web 23 / 39
![Page 63: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/63.jpg)
The Tableau Algorithm - Blocking Rules
What happens when applying the tableau algorithm to
T = { A v ∃R.A }A = { a : A } ?
→ Infinite application of the v- and t- and ∃-rules.
To ensure termination we introduce the notion of block. If
I t is an individual created by application of a rule andI there is an individual t ′ with
1. {C | t : C ∈ A} ⊆ {C | t ′ : C ∈ A} and2. t ′ has been created before t
then t is blocked (by t ′).
Gerd Groner, Matthias Thimm Semantic Web 24 / 39
![Page 64: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/64.jpg)
The Tableau Algorithm - Blocking Rules
What happens when applying the tableau algorithm to
T = { A v ∃R.A }A = { a : A } ?
→ Infinite application of the v- and t- and ∃-rules.
To ensure termination we introduce the notion of block. If
I t is an individual created by application of a rule andI there is an individual t ′ with
1. {C | t : C ∈ A} ⊆ {C | t ′ : C ∈ A} and2. t ′ has been created before t
then t is blocked (by t ′).
Gerd Groner, Matthias Thimm Semantic Web 24 / 39
![Page 65: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/65.jpg)
The Tableau Algorithm - Blocking Rules
What happens when applying the tableau algorithm to
T = { A v ∃R.A }A = { a : A } ?
→ Infinite application of the v- and t- and ∃-rules.
To ensure termination we introduce the notion of block. If
I t is an individual created by application of a rule andI there is an individual t ′ with
1. {C | t : C ∈ A} ⊆ {C | t ′ : C ∈ A} and2. t ′ has been created before t
then t is blocked (by t ′).
Gerd Groner, Matthias Thimm Semantic Web 24 / 39
![Page 66: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/66.jpg)
The Tableau Algorithm - Blocking Rules cont’d
I u-rule: if t : C1 u C2 ∈ A′, t is not blocked, and{t : C1, t : C2} * A′ then remove A′ from S and addA′ ∪ {t : C1, t : C2} to S.
I t-rule: if t : C1 t C2 ∈ A′, t is not blocked, and{t : C1, t : C2} ∩A′ = ∅ then remove A′ from S and add bothA′ ∪ {t : C1} and A′ ∪ {t : C2} to S.
I ∃-rule: if t : ∃R.C ∈ A′, t is not blocked, and there is no t ′
with {(t, t ′) : R, t ′ : C} ⊆ A′ then remove A′ from S, createa new individual t ′′, and add A′ ∪ {(t, t ′′) : R, t ′′ : C} to S.
I ∀-rule: if {t : ∀R.C , (t, t ′) : R} ⊆ A′, t is not blocked, and{t ′ : C} /∈ A′ then remove A′ from S and add A′ ∪ {t ′ : C}to S.
I v-rule: if C1 v C2 ∈ T , t is not blocked, andt : (¬C1 t C2) /∈ A′ for t appearing in A′ then remove A′
from S and add A′ ∪ {t : (¬C1 t C2)} to S.
Gerd Groner, Matthias Thimm Semantic Web 25 / 39
![Page 67: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/67.jpg)
The Tableau Algorithm - Blocking Rules cont’d
What happens now to
T = { A v ∃R.A }A = { a : A } ?
Theorem
I When the tableau algorithm with blocking terminates withS = ∅ then K is inconsistent
I When the tableau algorithm with blocking terminates withS 6= ∅ then K is consistent
I The tableau algorithm with blocking always terminates onALC.
I The tableau algorithm with blocking runs in EXPSPACE(worst case).
Gerd Groner, Matthias Thimm Semantic Web 26 / 39
![Page 68: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/68.jpg)
The Tableau Algorithm - Blocking Rules cont’d
What happens now to
T = { A v ∃R.A }A = { a : A } ?
Theorem
I When the tableau algorithm with blocking terminates withS = ∅ then K is inconsistent
I When the tableau algorithm with blocking terminates withS 6= ∅ then K is consistent
I The tableau algorithm with blocking always terminates onALC.
I The tableau algorithm with blocking runs in EXPSPACE(worst case).
Gerd Groner, Matthias Thimm Semantic Web 26 / 39
![Page 69: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/69.jpg)
The Tableau Algorithm - Blocking Rules cont’d
What happens now to
T = { A v ∃R.A }A = { a : A } ?
Theorem
I When the tableau algorithm with blocking terminates withS = ∅ then K is inconsistent
I When the tableau algorithm with blocking terminates withS 6= ∅ then K is consistent
I The tableau algorithm with blocking always terminates onALC.
I The tableau algorithm with blocking runs in EXPSPACE(worst case).
Gerd Groner, Matthias Thimm Semantic Web 26 / 39
![Page 70: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/70.jpg)
The Tableau Algorithm - Blocking Rules cont’d
What happens now to
T = { A v ∃R.A }A = { a : A } ?
Theorem
I When the tableau algorithm with blocking terminates withS = ∅ then K is inconsistent
I When the tableau algorithm with blocking terminates withS 6= ∅ then K is consistent
I The tableau algorithm with blocking always terminates onALC.
I The tableau algorithm with blocking runs in EXPSPACE(worst case).
Gerd Groner, Matthias Thimm Semantic Web 26 / 39
![Page 71: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/71.jpg)
The Tableau Algorithm - Blocking Rules cont’d
What happens now to
T = { A v ∃R.A }A = { a : A } ?
Theorem
I When the tableau algorithm with blocking terminates withS = ∅ then K is inconsistent
I When the tableau algorithm with blocking terminates withS 6= ∅ then K is consistent
I The tableau algorithm with blocking always terminates onALC.
I The tableau algorithm with blocking runs in EXPSPACE(worst case).
Gerd Groner, Matthias Thimm Semantic Web 26 / 39
![Page 72: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/72.jpg)
Outline
1 Reasoning with Description Logics
2 Ontology languages revisited
3 Tools
4 Summary and Exercises
Gerd Groner, Matthias Thimm Semantic Web 27 / 39
![Page 73: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/73.jpg)
Ontology languages revisited
I ALC is just one example of a description logicI Over the years a lot of different description logics have been
proposed that differ inI complexityI expressiveness
I The search for the right description logic is ongoing
I There is always the issue of balancing between complexity andexpressiveness
Gerd Groner, Matthias Thimm Semantic Web 28 / 39
![Page 74: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/74.jpg)
Ontology languages revisited
I ALC is just one example of a description logicI Over the years a lot of different description logics have been
proposed that differ inI complexityI expressiveness
I The search for the right description logic is ongoing
I There is always the issue of balancing between complexity andexpressiveness
Gerd Groner, Matthias Thimm Semantic Web 28 / 39
![Page 75: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/75.jpg)
Ontology languages revisited
I ALC is just one example of a description logicI Over the years a lot of different description logics have been
proposed that differ inI complexityI expressiveness
I The search for the right description logic is ongoing
I There is always the issue of balancing between complexity andexpressiveness
Gerd Groner, Matthias Thimm Semantic Web 28 / 39
![Page 76: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/76.jpg)
Ontology languages revisited
I ALC is just one example of a description logicI Over the years a lot of different description logics have been
proposed that differ inI complexityI expressiveness
I The search for the right description logic is ongoing
I There is always the issue of balancing between complexity andexpressiveness
Gerd Groner, Matthias Thimm Semantic Web 28 / 39
![Page 77: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/77.jpg)
Ontology languages revisited
The base description logic is ALC (Attributive Language withComplements).
Further features include
I N : unqualified number restrictions: (≥3 hasChild)
I Qualified number restrictions: (≥2 hasChild .Female)
I One-of (nominals): {t1, . . . , tn}I Functionality: (≤ hasFather)I Role operators:
I I: role inverse: hasChild− ≡ hasParentI S: Transitive roles tr(R) (tr(hasParent) ≡ hasAncestor)I H: role hierarchies: R ◦ R ′ ⊆ R ′′
(hasParent ◦ hasParent ≡ hasGrandparent)I . . .
Gerd Groner, Matthias Thimm Semantic Web 29 / 39
![Page 78: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/78.jpg)
Ontology languages revisited
The base description logic is ALC (Attributive Language withComplements).
Further features include
I N : unqualified number restrictions: (≥3 hasChild)
I Qualified number restrictions: (≥2 hasChild .Female)
I One-of (nominals): {t1, . . . , tn}I Functionality: (≤ hasFather)I Role operators:
I I: role inverse: hasChild− ≡ hasParentI S: Transitive roles tr(R) (tr(hasParent) ≡ hasAncestor)I H: role hierarchies: R ◦ R ′ ⊆ R ′′
(hasParent ◦ hasParent ≡ hasGrandparent)I . . .
Gerd Groner, Matthias Thimm Semantic Web 29 / 39
![Page 79: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/79.jpg)
Ontology languages revisited
The base description logic is ALC (Attributive Language withComplements).
Further features include
I N : unqualified number restrictions: (≥3 hasChild)
I Qualified number restrictions: (≥2 hasChild .Female)
I One-of (nominals): {t1, . . . , tn}I Functionality: (≤ hasFather)I Role operators:
I I: role inverse: hasChild− ≡ hasParentI S: Transitive roles tr(R) (tr(hasParent) ≡ hasAncestor)I H: role hierarchies: R ◦ R ′ ⊆ R ′′
(hasParent ◦ hasParent ≡ hasGrandparent)I . . .
Gerd Groner, Matthias Thimm Semantic Web 29 / 39
![Page 80: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/80.jpg)
Ontology languages revisited
The base description logic is ALC (Attributive Language withComplements).
Further features include
I N : unqualified number restrictions: (≥3 hasChild)
I Qualified number restrictions: (≥2 hasChild .Female)
I One-of (nominals): {t1, . . . , tn}I Functionality: (≤ hasFather)I Role operators:
I I: role inverse: hasChild− ≡ hasParentI S: Transitive roles tr(R) (tr(hasParent) ≡ hasAncestor)I H: role hierarchies: R ◦ R ′ ⊆ R ′′
(hasParent ◦ hasParent ≡ hasGrandparent)I . . .
Gerd Groner, Matthias Thimm Semantic Web 29 / 39
![Page 81: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/81.jpg)
Ontology languages revisited
The base description logic is ALC (Attributive Language withComplements).
Further features include
I N : unqualified number restrictions: (≥3 hasChild)
I Qualified number restrictions: (≥2 hasChild .Female)
I One-of (nominals): {t1, . . . , tn}I Functionality: (≤ hasFather)I Role operators:
I I: role inverse: hasChild− ≡ hasParentI S: Transitive roles tr(R) (tr(hasParent) ≡ hasAncestor)I H: role hierarchies: R ◦ R ′ ⊆ R ′′
(hasParent ◦ hasParent ≡ hasGrandparent)I . . .
Gerd Groner, Matthias Thimm Semantic Web 29 / 39
![Page 82: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/82.jpg)
Ontology languages revisited
The base description logic is ALC (Attributive Language withComplements).
Further features include
I N : unqualified number restrictions: (≥3 hasChild)
I Qualified number restrictions: (≥2 hasChild .Female)
I One-of (nominals): {t1, . . . , tn}I Functionality: (≤ hasFather)I Role operators:
I I: role inverse: hasChild− ≡ hasParentI S: Transitive roles tr(R) (tr(hasParent) ≡ hasAncestor)I H: role hierarchies: R ◦ R ′ ⊆ R ′′
(hasParent ◦ hasParent ≡ hasGrandparent)I . . .
Gerd Groner, Matthias Thimm Semantic Web 29 / 39
![Page 83: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/83.jpg)
Ontology languages revisited
The base description logic is ALC (Attributive Language withComplements).
Further features include
I N : unqualified number restrictions: (≥3 hasChild)
I Qualified number restrictions: (≥2 hasChild .Female)
I One-of (nominals): {t1, . . . , tn}I Functionality: (≤ hasFather)I Role operators:
I I: role inverse: hasChild− ≡ hasParentI S: Transitive roles tr(R) (tr(hasParent) ≡ hasAncestor)I H: role hierarchies: R ◦ R ′ ⊆ R ′′
(hasParent ◦ hasParent ≡ hasGrandparent)I . . .
Gerd Groner, Matthias Thimm Semantic Web 29 / 39
![Page 84: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/84.jpg)
Ontology languages revisited
The base description logic is ALC (Attributive Language withComplements).
Further features include
I N : unqualified number restrictions: (≥3 hasChild)
I Qualified number restrictions: (≥2 hasChild .Female)
I One-of (nominals): {t1, . . . , tn}I Functionality: (≤ hasFather)I Role operators:
I I: role inverse: hasChild− ≡ hasParentI S: Transitive roles tr(R) (tr(hasParent) ≡ hasAncestor)I H: role hierarchies: R ◦ R ′ ⊆ R ′′
(hasParent ◦ hasParent ≡ hasGrandparent)I . . .
Gerd Groner, Matthias Thimm Semantic Web 29 / 39
![Page 85: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/85.jpg)
Ontology languages revisited
I Other description logic types can be described by their names:
I ALCQIO: ALC with qualified number restrictions, inverseroles, and nominals.
I SHOIN : ALC with transitive roles, role hierarchies, roleinverse, nominals, unqualified number restrictions (this is thesame as OWL-DL)
I Some description languages with further restrictions:I EL: Only C1 u C2 and ∃R.> allowedI EL+ +: EL with nominals and some additional role operators
Gerd Groner, Matthias Thimm Semantic Web 30 / 39
![Page 86: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/86.jpg)
Ontology languages revisited
I Other description logic types can be described by their names:
I ALCQIO: ALC with qualified number restrictions, inverseroles, and nominals.
I SHOIN : ALC with transitive roles, role hierarchies, roleinverse, nominals, unqualified number restrictions (this is thesame as OWL-DL)
I Some description languages with further restrictions:I EL: Only C1 u C2 and ∃R.> allowedI EL+ +: EL with nominals and some additional role operators
Gerd Groner, Matthias Thimm Semantic Web 30 / 39
![Page 87: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/87.jpg)
Ontology languages revisited
I Other description logic types can be described by their names:
I ALCQIO: ALC with qualified number restrictions, inverseroles, and nominals.
I SHOIN : ALC with transitive roles, role hierarchies, roleinverse, nominals, unqualified number restrictions (this is thesame as OWL-DL)
I Some description languages with further restrictions:I EL: Only C1 u C2 and ∃R.> allowedI EL+ +: EL with nominals and some additional role operators
Gerd Groner, Matthias Thimm Semantic Web 30 / 39
![Page 88: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/88.jpg)
Ontology languages revisited
I Other description logic types can be described by their names:
I ALCQIO: ALC with qualified number restrictions, inverseroles, and nominals.
I SHOIN : ALC with transitive roles, role hierarchies, roleinverse, nominals, unqualified number restrictions (this is thesame as OWL-DL)
I Some description languages with further restrictions:I EL: Only C1 u C2 and ∃R.> allowedI EL+ +: EL with nominals and some additional role operators
Gerd Groner, Matthias Thimm Semantic Web 30 / 39
![Page 89: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/89.jpg)
Outline
1 Reasoning with Description Logics
2 Ontology languages revisited
3 Tools
4 Summary and Exercises
Gerd Groner, Matthias Thimm Semantic Web 31 / 39
![Page 90: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/90.jpg)
Tools
I In contrast to many other KR languages (propositional logic,default logic, . . . ) description logics have been developed outof the need to apply them
I Therefore, a lot of tools are around that enable ontologyengineering using description logics
Gerd Groner, Matthias Thimm Semantic Web 32 / 39
![Page 91: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/91.jpg)
Tools
I In contrast to many other KR languages (propositional logic,default logic, . . . ) description logics have been developed outof the need to apply them
I Therefore, a lot of tools are around that enable ontologyengineering using description logics
Gerd Groner, Matthias Thimm Semantic Web 32 / 39
![Page 92: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/92.jpg)
Tools: Protege
I Free open-source ontology editor
I Webpage: http://protege.stanford.edu
Gerd Groner, Matthias Thimm Semantic Web 33 / 39
![Page 93: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/93.jpg)
Tools: RacerPro
I Commercial description logic reasonerI Webpage: http://www.franz.com/agraph/racer
Gerd Groner, Matthias Thimm Semantic Web 34 / 39
![Page 94: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/94.jpg)
Further Tools
HermiT
I Free open-source description logic reasoner (OWL)
I Webpage: http://hermit-reasoner.com
FacT++
I Free open-source description logic reasoner
I Webpage: http://owl.man.ac.uk/factplusplus/
OWL API
I Official open source JAVA interfaces for programming DLapplications
I Webpage: http://owlapi.sourceforge.net
Gerd Groner, Matthias Thimm Semantic Web 35 / 39
![Page 95: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/95.jpg)
Further Tools
HermiT
I Free open-source description logic reasoner (OWL)
I Webpage: http://hermit-reasoner.com
FacT++
I Free open-source description logic reasoner
I Webpage: http://owl.man.ac.uk/factplusplus/
OWL API
I Official open source JAVA interfaces for programming DLapplications
I Webpage: http://owlapi.sourceforge.net
Gerd Groner, Matthias Thimm Semantic Web 35 / 39
![Page 96: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/96.jpg)
Further Tools
HermiT
I Free open-source description logic reasoner (OWL)
I Webpage: http://hermit-reasoner.com
FacT++
I Free open-source description logic reasoner
I Webpage: http://owl.man.ac.uk/factplusplus/
OWL API
I Official open source JAVA interfaces for programming DLapplications
I Webpage: http://owlapi.sourceforge.net
Gerd Groner, Matthias Thimm Semantic Web 35 / 39
![Page 97: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/97.jpg)
Outline
1 Reasoning with Description Logics
2 Ontology languages revisited
3 Tools
4 Summary and Exercises
Gerd Groner, Matthias Thimm Semantic Web 36 / 39
![Page 98: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/98.jpg)
Summary
I The tableau algorithm for ALC:I checks consistency of a knowledge baseI sound and completeI terminates always when using blocks
I Ontology languages revisitedI Nomenclature of description logicsI expressivity vs. complexity
I Tools for working with description logics
Gerd Groner, Matthias Thimm Semantic Web 37 / 39
![Page 99: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/99.jpg)
Pointers to further reading
I The Description Logic Complexity Navigatorhttp://www.cs.man.ac.uk/~ezolin/dl/
I Franz Baader. Tableau Algorithms for Description Logics.http://lat.inf.tu-dresden.de/~baader/Talks/
Tableaux2000.pdf
I Franz Baader, Ulrike Sattler. An Overview of TableauAlgorithms for Description Logics. http:
//www.eecs.yorku.ca/course_archive/2010-11/F/
6390A/DLmaterial/BaaderSattler-tableauxForDL.pdf
Gerd Groner, Matthias Thimm Semantic Web 38 / 39
![Page 100: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/100.jpg)
Exercises
I Apply the tableau algorithm to check whether the knowledgebase K = (T ,A) is consistent:
T = { A v C ,B v ¬C }A = { a : A, a : B }
I Download Protege (http://protege.stanford.edu) andplay around with it (Home assignment)
I Apply the tableau algorithm with blocking to check whetherthe knowledge base K = (T ,A) is consistent:
T = { A v ∃R.B, B v A u ∀S .C }A = { a : A }
(Home assignment)
Gerd Groner, Matthias Thimm Semantic Web 39 / 39
![Page 101: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/101.jpg)
Exercises
I Apply the tableau algorithm to check whether the knowledgebase K = (T ,A) is consistent:
T = { A v C ,B v ¬C }A = { a : A, a : B }
I Download Protege (http://protege.stanford.edu) andplay around with it (Home assignment)
I Apply the tableau algorithm with blocking to check whetherthe knowledge base K = (T ,A) is consistent:
T = { A v ∃R.B, B v A u ∀S .C }A = { a : A }
(Home assignment)
Gerd Groner, Matthias Thimm Semantic Web 39 / 39
![Page 102: Semantic Web - 2. Description logics (2/2) fileSemantic Web 2. Description logics (2/2) Gerd Gr oner, Matthias Thimm fgroener,thimmg@uni-koblenz.de Institute for Web Science and Technologies](https://reader030.vdocuments.net/reader030/viewer/2022041200/5d41f82288c9934b018c900b/html5/thumbnails/102.jpg)
Exercises
I Apply the tableau algorithm to check whether the knowledgebase K = (T ,A) is consistent:
T = { A v C ,B v ¬C }A = { a : A, a : B }
I Download Protege (http://protege.stanford.edu) andplay around with it (Home assignment)
I Apply the tableau algorithm with blocking to check whetherthe knowledge base K = (T ,A) is consistent:
T = { A v ∃R.B, B v A u ∀S .C }A = { a : A }
(Home assignment)
Gerd Groner, Matthias Thimm Semantic Web 39 / 39