Semantic Web Grundlagen - Tableau Prozeduren

Werbung
2/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Organisatorisches: Inhalt
Einleitung und XML
Einführung in RDF
RDF Schema
fällt aus
Logik – Grundlagen
Übung 1
Semantik von RDF(S)
RDF(S) & Datalog Regeln
OWL Syntax & Intuition
Übung 2
OWL & BLs
OWL 2
Tableau
Übung 3
Blocking & Unravelling
Hypertableau
Semantic Web Grundlagen
Birte Glimm
Institut für Künstliche Intelligenz | 28. Nov 2011
3/37
Birte Glimm |
OWL 2
Semantic Web Grundlagen |
Tableau Prozeduren
28. Nov 2011
4/37
Birte Glimm |
17. Okt
20. Okt
24. Okt
27. Okt
31. Okt
3. Nov
7. Nov
10. Nov
14. Nov
17. Nov
21. Nov
24. Nov
28. Nov
1. Dez
5. Dez
8. Dez
Semantic Web Grundlagen |
SPARQL Syntax & Intuition
Übung 4
SPARQL Semantik
SPARQL 1.1
Übung 5
SPARQL Entailment
SPARQL Implemetierung
Abfragen & RIF
Übung 6
Ontology Editing
Ontology Engineering
Linked Data
Übung 7
SemWeb Anwendungen
Wiederholung
Übung 8
28. Nov 2011
Agenda
I
Generelle Idee des Tableaukalküls
I
Propositionales Beispiel
I
Transformation in Negationsnormalform
I
Erfüllbarkeit von ALC Konzepten
I
Korrektheit und Terminierung
I
Erfüllbarkeit von ALC Wissensbasen
I
Zusammenfassung
12. Dez
15. Dez
19. Dez
22. Dez
9. Jan
12. Jan
16. Jan
19. Jan
23. Jan
26. Jan
30. Jan
2. Feb
6. Feb
9. Feb
13. Feb
16. Feb
5/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
6/37
Automatisierbarkeit
I
I
I
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Agenda
Bisher Erfüllbarkeit von OWL Axiomen ad-hoc betrachtet
Ein Konzept ist erfüllbar, wenn es ein Modell hat
Idee: Konstruktives Entscheidungsverfahren um
Modelle zu bauen
Analog zu Wahrheitstabellen in der Aussagenlogik
(p ∨ q) → (¬p ∨ ¬q)
Negation vor komplexen Ausdrücken und nicht-atomare
Operatoren schwierig, daher umformulieren:
I
Generelle Idee des Tableaukalküls
I
Propositionales Beispiel
I
Transformation in Negationsnormalform
I
Erfüllbarkeit von ALC Konzepten
I
Korrektheit und Terminierung
I
Erfüllbarkeit von ALC Wissensbasen
I
Zusammenfassung
¬(p ∨ q) ∨ (¬p ∨ ¬q)
(¬p ∧ ¬q) ∨ (¬p ∨ ¬q)
(¬p ∧ ¬q) ∨ ¬p ∨ ¬q
7/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
8/37
Einfaches Tableau
Semantic Web Grundlagen |
28. Nov 2011
Einfaches Tableau mit Widerspruch
(¬p ∧ ¬q) ∨ ¬p ∨ ¬q
¬p ∧ ¬q
¬p
¬q
Birte Glimm |
¬p
¬q
I
Disjunktionen führen zu Zweigen (branch) im Tableau
I
Tableau: Endliche Menge von Tableauzweigen
I
Vergleich Wahrheitstabelle
I(p) I(q) I(¬p) I(¬q) I(p ∨ q) I(¬p ∨ ¬q) I((p ∨ q) → (¬p ∨ ¬q))
t
t
f
f
t
f
f
t
f
f
t
t
t
t
f
t
t
f
t
t
t
f
f
t
t
f
t
t
(¬p ∨ q) ∧ p ∧ ¬q
¬p ∨ q
p
¬q
¬p
q
⊥
⊥
I
Befindet sich auf einem Zweig ein atomarer Widerspruch
(clash), ist dieser Zweig abgeschlossen
I
Ein Tableau ist abgeschlossen, wenn alle Zweige
abgeschlossen sind
I
Ein komplettes Tableau ohne offenen Zweig zeigt die
Unerfüllbarkeit der Formel
9/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
10/37
Modellkonstruktion vom Tableau
11/37
¬p
¬q
I
Ausgehend von einem offenen Zweig können wir ein
Modell bauen
I
Setze I(p)=false und I(q)=false
I
Setze I(p)=false (I(q) is irrelevant, da nicht im Tableau,
default Belegung false)
I
Setze I(q)=false (I(p) is irrelevant, da nicht im Tableau,
default Belegung false)
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Konstruktion von je einem Zweig
(¬p ∨ q) ∧ p ∧ q
¬p1a ∨ q1b
p
q
⊥1a
q1b
I
I
28. Nov 2011
12/37
I
Es werden nicht immer exponentiel viele Kombinationen
gebildet, wie in der Wahrheitstabelle
I
Zweige können nacheinander gebaut werden
polynomieller Platz gebraucht
I
Für das Erfüllbarkeitstesten können wir aufhören, sobald
ein kompletter offener Zweig gefunden wurde
Birte Glimm |
Bei einer Disjunktion setzten wir Wählpunkte (choice
points)
Alle Tableauerweiterung die von der Wahl abhängen
werden ebenfalls markiert
Bei Widerspruch auf Grund einer Wahl: revidiere markierte
Formeln und versuche nächste Wahl
Semantic Web Grundlagen |
nur
28. Nov 2011
Vom Propositionalen Tableau zu Tableaux für BLs
Wie kann das Tableau zum Testen der Erfüllbarkeit von ALC
Konzepten erweitert werden?
I
Tableau repräsentiert ein Element in der Domäne
I
Tableauzweig: Endliche Menge von Aussagen der Form
C(a), ¬C(a), r(a, b)
I
Für Existenzquantoren werden neue Elemente eingeführt
I
Allquantoren propagieren Formeln zu benachbarten
Elementen
¬p1a
I
Semantic Web Grundlagen |
Propositionales Tableau
(¬p ∧ ¬q) ∨ ¬p ∨ ¬q
¬p ∧ ¬q
¬p
¬q
Birte Glimm |
13/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
14/37
Agenda
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Aussagenlogik – Einige logische Äquivalenzen
I
Generelle Idee des Tableaukalküls
Unser Ziel ist es, Negation nur vor atomaren Konzepten zu
haben
siehe Vorlesung 5: Logik – Grundlagen
I
Propositionales Beispiel
I
Transformation in Negationsnormalform
I
Erfüllbarkeit von ALC Konzepten
ϕ∧ψ ≡ψ∧ϕ
ϕ → ψ ≡ ¬ϕ ∨ ψ
I
Korrektheit und Terminierung
ϕ∨ψ ≡ψ∨ϕ
ϕ ↔ ψ ≡ (ϕ → ψ) ∧ (ψ → ϕ)
I
Erfüllbarkeit von ALC Wissensbasen
ϕ ∧ (ψ ∧ ω) ≡ (ϕ ∧ ψ) ∧ ω
¬(ϕ ∧ ψ) ≡ ¬ϕ ∨ ¬ψ
I
Zusammenfassung
ϕ ∨ (ψ ∨ ω) ≡ (ϕ ∨ ψ) ∨ ω
¬(ϕ ∨ ψ) ≡ ¬ϕ ∧ ¬ψ
I
ϕ∧ϕ≡ϕ
¬¬ϕ ≡ ϕ
ϕ∨ϕ≡ϕ
15/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
16/37
Weitere logische Äquivalenzen
¬(C u D)
¬C t ¬D
¬(D t D)
¬C u ¬D
¬¬C
I
∃r.(¬C)
¬(∃r.C)
∀r.(¬C)
¬(6 n s.C)
> n + 1 s.C
¬(> n s.C)
6 n − 1 s.C,
¬(> 0 s.C)
⊥
ϕ ∨ (ψ ∧ ω) ≡ (ϕ ∨ ψ) ∧ (ϕ ∨ ω)
ϕ ∨ (ψ ∧ ϕ) ≡ ϕ
ϕ ∧ (ψ ∨ ω) ≡ (ϕ ∧ ψ) ∨ (ϕ ∧ ω)
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
NNF Transformation
Induktive Definition einer NNF Transformation:
Wenn C atomar:
NNF(C) := C
C
¬(∀r.C)
ϕ ∧ (ψ ∨ ϕ) ≡ ϕ
NNF(¬C) := ¬C
Sonst:
NNF(¬¬C) := NNF(C)
n≥1
Wende die folgenden Regeln so lange an, bis es nicht
mehr geht
Äquivalentes Konzept in Negationsnormalform
NNF(C u D) := NNF(C) u NNF(D)
NNF(¬(C u D)) := NNF(¬C) t NNF(¬D)
NNF((C) t D) := NNF(C) t NNF(D)
NNF(¬(C t D)) := NNF(¬C) u NNF(¬D)
NNF(∀r.C) := ∀r.(NNF(C))
NNF(¬(∀r.C)) := ∃r.(NNF(¬C))
NNF(∃r.C) := ∃r.(NNF(C))
NNF(¬(∃r.C)) := ∀r.(NNF(¬C))
NNF(6 n s.C) := 6 n s.(NNF(C))
NNF(¬(6 n s.C)) := > n + 1 s.(NNF(C))
NNF(> n s.C) := > n s.(NNF(C))
NNF(¬(> n s.C)) := 6 n − 1 s.(NNF(C))
NNF(> 0 s.C) := >
NNF(¬(> 0 s.C)) := ⊥
wenn n ≥ 1
Hervorgehoben sind Fehler in der ersten Skriptversion
sonst
17/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
18/37
NNF Transformation – Beispiel
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Agenda
NNF(¬(¬C u (¬D t E)))
= NNF(¬¬C) t NNF(¬(¬D t E))
= NNF(C) t NNF(¬(¬D t E))
= C t NNF(¬(¬D t E))
= C t (NNF(¬¬D) u NNF(¬E))
= C t (NNF(D) u NNF(¬E))
I
Generelle Idee des Tableaukalküls
I
Propositionales Beispiel
I
Transformation in Negationsnormalform
I
Erfüllbarkeit von ALC Konzepten
I
Korrektheit und Terminierung
I
Erfüllbarkeit von ALC Wissensbasen
I
Zusammenfassung
= C t (D u NNF(¬E))
= C t (D u ¬E)
19/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Tableau für ALC Konzepte
I
I
I
I
I
Tableau für eine propositionelle Formel α: ein Element,
dass mit Teilformeln von α markiert ist
Tableau für ein ALC Konzept C: Graph (genauer: Baum) in
dem Knoten mit Teilformeln von C markiert sind
Wurzel markiert mit C
Repräsentiert Modell für C
Neue Knoten durch existentielle Quantoren
Definition
Sei C ein ALC Konzept, TF(C) die Menge aller Teilformeln von
C und Rol(C) die Menge der Rollen in C. Ein Tableau für C ist
ein Baum G = hV, E, Li, mit V einer Menge von Knoten,
E ⊆ V × V einer Menge von Kanten und L : V → 2TF(C) und
L : V × V → 2Rol(C) .
20/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Eigenschaften des ALC Tableau Algorithmus
I
Der Algorithmus ist spezifiziert als eine Menge von Regeln
I
Jede Regel bricht ein Konzept herunter in Teilkonzepte
I
Anwendung von Regeln in beliebiger Ordnung
I
Der Algorithmus ist nichtdeterministisch (durch
Disjunktionen, bildet jeweils einen Tableau Zweig zur Zeit).
I
Prüfen von atomaren Widersprüchen
Tableau Algorithmus zum Testen der Erfüllbarkeit von ALC
Konzepten
Eingabe: Ein ALC Konzept in NNF
Ausgabe: wahr
wenn ein widerspruchsfreies Tableau existiert
in dem keine Regeln anwendbar sind
falsch andernfalls (Tableau geschlossen)
21/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Birte Glimm |
22/37
Tableau Regeln für ALC Konzepte
I
I
23/37
28. Nov 2011
Tableau Algorithmus Beispiel
u-Regel: Für ein beliebiges v ∈ V mit C u D ∈ L(v) und
{C, D} 6⊆ L(v), setzte L(v) := L(v) ∪ {C, D}.
t-Regel: Für ein beliebiges v ∈ V mit C t D ∈ L(v) und
{C, D} ∩ L(v) = ∅, wähle X ∈ {C, D} und setzte
L(v) := L(v) ∪ {X}.
∃-Regel: Für ein beliebiges v ∈ V mit ∃r.C ∈ L(v) so dass es
keinen r-Nachfolger v0 für v mit C ∈ L(v0 ) gibt,
setzte V = V ∪ {v0 }, E = E ∪ {hv, v0 i}, L(v0 ) := {C} und
L(v, v0 ) := {r} für v0 ein neuer Knoten.
∀-Regel: Für beliebige v, v0 ∈ V, v0 r-Nachbar von v,
∀r.C ∈ L(v) und C ∈
/ L(v0 ), setze L(v0 ) := L(v0 ) ∪ {C}.
I
Semantic Web Grundlagen |
C = ∃r.(A t ∃r.B) u ∃r.¬A u ∀r.(¬A u ∀r.(¬B t A))
u
L(u) = {C}, ∃r.(A t ∃r.B),
r
r
v
w
r
∃r.¬A, ∀r.(¬A u ∀r.(¬B t A))}
L(v) = {A t ∃r.B}, ¬A, ∀r.(¬B t A)}, A}, ∃r.B}
L(w) = {¬A}, ∀r.(¬B t A)}
x
L(x) = {B}, ¬B t A}, ¬B}, A}
Ein Knoten v0 ist ein r-Nachbar eines Knotens v wenn
hv, v0 i ∈ E und r ∈ L(v, v0 )
Regel Reihenfolge: “don’t care” Nichtdeterminismus
Wahl der Disjunktion: “don’t know” Nichtdeterminismus
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Tableau Algorithmus Beispiel
Das vom Algorithmus gefundene Modell I ist wie folgt:
∆I ={u, v, w, x}
AI ={x}
24/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Tableau Algorithmus Eigenschaften
1. Das Modell ist endlich: nur endlich viele Elemente in der
Domäne
2. Das Modell ist baumförmig: das Tableau ist ein markierter
Baum
BI ={x}
rI ={hu, vi, hu, wi, hv, xi}
Übung: Prüfe, dass
ALC
CI
Der Algorithmus wird immer endliche Bäume konstruieren
I
Von einem widerspruchsfreien Tableau können wir ein
endliches Modell konstruieren
I
Wenn es kein widerspruchsfreies Tableau gibt, dann gibt
es kein Modell
= {u} unter der definierten Semantik für
25/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
26/37
Agenda
27/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Tableau Eigenschaften
I
Generelle Idee des Tableaukalküls
I
Die Tiefe (Anzahl der Verschachtelten Quantoren) nimmt in
jedem Knoten ab
I
Propositionales Beispiel
I
Transformation in Negationsnormalform
I
Jeder Knoten ist nur mit Teilformeln von C markiert
I
Erfüllbarkeit von ALC Konzepten
I
C hat nur polynomiell viele Teilformeln
I
Korrektheit und Terminierung
I
I
Erfüllbarkeit von ALC Wissensbasen
Bei Ausgabe wahr können wir an Hand des konstruierten
Tableaus ein Modell konstruieren
I
Zusammenfassung
I
Wir können ein Modell für ein erfüllbares Konzept nutzen,
um ein widerspruchsfreies Tableau für das Konzept zu
konstruieren
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Tableau Algorithmus für ALC-Konzepte
28/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Agenda
I
Generelle Idee des Tableaukalküls
1. Der Algorithmus terminiert für jede Eingabe.
I
Propositionales Beispiel
2. Wenn die Ausgabe wahr lautet, dann ist das
Eingabekonzept erfüllbar.
I
Transformation in Negationsnormalform
I
Erfüllbarkeit von ALC Konzepten
3. Wenn das Eingabekonzept erfüllbar ist, lautet die Ausgabe
wahr.
I
Korrektheit und Terminierung
I
Erfüllbarkeit von ALC Wissensbasen
I
Zusammenfassung
Theorem
Corollary
Ein ALC Konzept C hat die folgenden Eigenschaften:
1. Endliche Modell Eigenschaft (Finite Model Property):
Wenn C ein Modell hat, dann hat C ein endliches Modell
2. Baum-Modell Eigenschaft (Tree Model Property): Wenn C
ein Modell hat, dann hat C ein baumförmiges Modell
29/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
30/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Tableau Algorithmus für TBoxen
Tableau Algorithmus for TBoxes
Wir erweitern nun den Tableau Algorithmus für den Umgang mit
ALC TBoxen
Wir erweitern die Regeln des ALC Tableau Algorithmus mit der
Regel:
I
I
I
Eine TBox enthält Axiome (GCIs) der Form C v D
Annahme: C ≡ D ist ersetzt durch C v D und D v C
Jedes GCI ist äquivalent zu > v ¬C t D
T -Regel: Für ein beliebiges v ∈ V mit CT ∈
/ L(v),
setze L(v) := L(v) ∪ {CT }.
Beispiel: Sei T = A v ∃r.A. Ist A erfüllbar bzgl. T ?
Wir können die gesamte TBox in einem Axiom
zusammenfassen (internalisieren, engl. internalize):
Der Tableau Algorithmus terminiert nicht mehr!
T = {Ci v Di | 1 ≤ i ≤ n}
Die Tiefe der Quantoren nimmt nicht mehr ab auf einem Pfad
im Tableau
ist äquivalentes zu:
T 0 = {> v
l
Lösung: Wir werden Zyklen erkennen (sich wiederholende
Knotenmarkierungen)
¬Ci t Di }
1≤i≤n
Sei CT das Konzept auf der rechten Seite des GCI in NNF.
31/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
32/37
Tableau Algorithmus für TBoxen
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Tableau Algorithmus mit Blocking
Beispiel: Sei T = A v ∃r.A. Ist A erfüllbar bzgl. T ?
Definition (Blocking)
Ein Knoten v ∈ V blockiert einen Knoten v0 ∈ V direkt, wenn:
Wir erhalten das folgende widerspruchsfreie Tableau:
1. v0 von v erreichbar ist,
2. L(v0 ) ⊆ L(v); und
v0
3. es keinen direkt blockierten Knoten v00 gibt so dass v0 von
v00 erreichbar ist.
L(v1 ) = {A, CT , ∃r.A}
v1
Ein Knoten v0 ∈ V ist blockiert wenn entweder
1. v0 direkt blockiert ist oder
2. es einen direkt blockierten Knoten v gibt, so dass
erreichbar ist.
r
L(v0 ) = {A, CT , ∃r.A}
in dem v1 direkt von v0 blockiert ist.
v0
von v
Die Anwendung der ∃-Regel ist beschränkt auf Knoten die nicht
blockiert sind.
Der Algorithmus konstruiert wieder endliche Bäume
I Von einem widerspruchsfreien Tableau können wir ein
Modell konstruieren
I Wenn es kein widerspruchsfreies Tableau gibt, dann gibt
es kein Modell
33/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
34/37
Birte Glimm |
28. Nov 2011
Vom Tableau zum Modell
Tableau Algorithmus mit Blocking II
Wir können wiederum ein endliches Modell von einem
widerspruchsfreien Tableau konstruieren:
Beispiel: Sei T = A v ∃r.A u ∃s.B. Ist A erfüllbar bzgl. T ?
Wir erhalten das folgende widerspruchsfreie Tableau:
∆I = {v0 }
AI = ∆I
r = {hv0 , v0 i}
I
I
r
v1
Blockierte Knoten repräsentieren kein Element im Modell
Eine Kante von einem Knoten v zu einem direkt blockierten
Knoten v0 wird im Modell zu einer “Kante” von v zu dem
Knoten, der v0 direkt blockiert
Wir haben die finite model property
Modell nicht mehr baumförmig
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Vom Tableau zum Modell II
L(v0 ) = {A, CT , ∃r.A u ∃s.B, ∃r.A, ∃s.B}
v0
I
35/37
Semantic Web Grundlagen |
L(v1 ) = {A, CT , ∃r.A u ∃s.B, ∃r.A, ∃s.B}
s
L(v2 ) = {B, CT , ¬A}
v2
in dem v1 wieder direkt von v0 blockiert ist.
36/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Agenda
Wir können wiederum ein endliches Modell von einem
widerspruchsfreien Tableau konstruieren:
I
Generelle Idee des Tableaukalküls
I
Propositionales Beispiel
I
Transformation in Negationsnormalform
I
Erfüllbarkeit von ALC Konzepten
I
A =∆
I
Korrektheit und Terminierung
rI = {hv0 , v0 i}
I
Erfüllbarkeit von ALC Wissensbasen
sI = {hv0 , v2 i}
I
Zusammenfassung
∆I = {v0 , v2 }
I
37/37
Birte Glimm |
Semantic Web Grundlagen |
28. Nov 2011
Zusammenfassung
I
Wir haben nun ein konstruktives Verfahren zum
Konstruieren von Modellabstraktionen
I
ALC Konzepte haben immer ein endliches Modell, dass
wir auch konstruieren können
I
ALC Konzepte bzgl. Wissenbasen haben ebenfalls
endliche Modelle, aber wir können diese nure mit
Mechanismen zur Zyklen-Erkennung konstruieren
I
Die dann erstellten Modelle sind nicht mehr baumförmig
I
Nächste Vorlesung: Wir können auch baumförmige (aber
dann unendliche) Modelle konstruieren
I
Der Algorithmus ist korrekt, vollständig und terminiert
I
Grundlage für in der Praxis implementierte Algorithmen
Herunterladen