Skript zur Vorlesung Ontologien im Semantic Web (Wintersemester 14/15) Gehalten von Lutz Schröder Mitgeschrieben von Hans-Peter Deifel Stand: 23. März 2015 Inhaltsverzeichnis 1 Logik erster Stufe 1.1 Das PCP (Post Correspondence 1.2 Unentscheidbarkeit . . . . . . . 1.3 Ehrenfeucht-Fraı̈ssé-Spiele . . . 1.3.1 Erreichbarkeit . . . . . . 1.3.2 Back-and-Forth-Systeme 1.3.3 FO-Definierbarkeit . . . 2 Algorithmik der Aussagenlogik 2.1 Recall Aussagenlogik . . . . . . 2.2 Normalformen . . . . . . . . . . 2.3 Resolution . . . . . . . . . . . . 2.3.1 Optimierungen (DPLL) 2.4 Tableaux . . . . . . . . . . . . 2.4.1 Flache Tableaux . . . . 2.4.2 (Echte) Tableaux . . . . Problem) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Beschreibungslogik 3.1 Modallogik . . . . . . . . . . . . . . . . . . . . . . 3.2 Terminologien . . . . . . . . . . . . . . . . . . . . . 3.3 Bisimilarität . . . . . . . . . . . . . . . . . . . . . . 3.4 Tableaux für ALC . . . . . . . . . . . . . . . . . . 3.5 Vollständigkeit des Tableaux-Algorithmus . . . . . 3.6 PSPACE-Härte . . . . . . . . . . . . . . . . . . . . 3.7 EL . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.8 TBoxen in EL . . . . . . . . . . . . . . . . . . . . . 3.9 Fixpunkte . . . . . . . . . . . . . . . . . . . . . . . 3.9.1 EL und klassische TBoxen in gfp-Semantik 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 . 5 . 5 . 7 . 9 . 10 . 13 . . . . . . . . . . . . . . 16 16 17 19 21 22 22 23 . . . . . . . . . . 27 28 29 31 33 35 36 41 42 43 44 . . . . . . . . . . Überblick Formale Wissensrepresentation (logikbasiert) • FOL: Unentscheidbarkeit, Ausdrucksstärke • Propositionale Logik: Algorithmik (DPLL, Tableaux) • Beschreibungslogiken/Modallogiken – OWL – ALC/Km – ausdrucksstarke DL ∗ transitive Rollen ∗ Zählen ∗ Nominale ∗ TBoxen/ABoxen – leichtgewichtige DL: EL, SNOMED CT – Global Caching 3 1 Logik erster Stufe ϕ ::= E = D | p(E1 , . . . , En ) | ¬ϕ | ϕ1 ∧ ϕ2 | ∀X.ϕ (X ∈ V ar, p/n ∈ Σ) E ::= X | f (E1 , . . . , En ) (f /n ∈ Σ) Σ, die Signatur, ist ein Paar (F, P ) von Mengen F von Funktionssymbolen P von Prädikatssymbolen gegebener Stelligkeit ≥ 0 Semantik = Modellbegriff + Erfüllbarkeitsrelation. Ein Σ-Modell M besteht aus: • einem Grundbereich M • für f /n ∈ Σ: MJf K : M n → M • für p/n ∈ Σ: MJP K ⊆ M n Umgebung: η : Var → M M, η ϕ rekursiv definiert: M, η ¬ϕ ⇔ M, η 6 ϕ M, η ϕ1 ∧ ϕ2 ⇔ M, η ϕ1 und M, η ϕ2 M, η ∀X.ϕ ⇔ für alle x ∈ M : M, η[X → x] ϕ M, η E = D ⇔ MJEKη = MJDKη M, η p(E1 , . . . , En ) ⇔ (MJE1 Kη , . . . , MJEn Kη ) ∈ MJpK MJXKη = η(X) MJf (E1 , . . . , En )Kη = MJf Kη (MJE1 Kη , . . . , MJEn Kη ) Aristotische Formeln: Alle Q sind ϕ ∀X.(Q(X) → ϕ) Einige Q sind ϕ ∃X.(Q(X) → ϕ) 4 1.1 Das PCP (Post Correspondence Problem) Sei P ⊆ (Σ∗ )2 endlich. P heißt lösbar, genau dann wenn es (u1 , v1 ), . . . , (un , vn ) ∈ P mit u1 . . . un = v1 . . . vn gibt. (Achtung: Die (ui , vi ) müssen nicht paarweise verschieden sein.) P nennt man dann PCP-Instanz. Zum Beispiel: 1 0 010 P = , , . 10 10 01 PCP = {P ⊆fin (Σ∗ )2 | P lösbar} ist unentscheidbar (für |Σ| > 1). Rekursive Aufzählbarkeit: A ⊆ {0, 1}∗ r.e (recursively enumerable) ⇔ es existiert ein Algorithmus, der alle Elemente von A ausgibt ⇔ es gibt ein Halbentscheidungsverfahren für A. A ist entscheidbar ⇔ (A und {0, 1}∗ − A r.e.) 1.2 Unentscheidbarkeit Reduktion Seien A, B ⊆ {0, 1}∗ , f : {0, 1}∗ → {0, 1}∗ berechenbar. f reduziert A auf B, wenn ∀u ∈ {0, 1}∗ , f (u) ∈ B ⇔ u ∈ A. Dann gilt: B entscheidbar ⇒ A entscheidbar (Reduction to). A unentscheidbar ⇒ B unentscheidbar (Reduction from). Satz Gültigkeit in FOL ist unentscheidbar (nicht co-r.e.). Recall: ϕ ⇔ ∀M, η. M, η ϕ (z.B. x = x). Vollständigkeit: Φ ψ ⇔ Φ ` ψ, insbesondere ψ ⇔ ` ψ. Damit ist Gültigkeit in FOL r.e.: Erzeuge alle Beweise und gib jeweils letzte Formel aus (Britisch Museum Algorithm). Äquivalente Formulierung des Satzes: Erfüllbarkeit in FOL ist unentscheidbar (nicht r.e.). 5 Eingeschobener Erklärungseinschub Φ ψ ⇔ ∀M, η. (M, η Φ ⇒ M, η ψ) Φ ` ψ ⇔ es existiert ein Beweis von ψ mit Annahmen ausΦ Beispiel: ∃Y. ∀X. P (X, Y ) ∀X. ∃Y. P (X, Y ) Sei M, η ∃Y. ∀X. P (X, Y ). Zu zeigen ist: M, η ∀X. ∃Y. P (X, Y ) Sei also x ∈ M , wähle y mit M, η[Y 7→ y] ∀X. P (X, Y ), also M, η[X 7→ x, Y 7→ y] P (X, Y ), also M, η[X 7→ x] ∃Y.P (X, Y ). 1 ∃Y. ∀X. P (X, Y ) 2 c d ∀X. P (X, d) 3 P (c, d) ∀E, 2 4 ∃Y. P (c, Y ) ∃I, 3 ∃Y. P (c, Y ) 5 6 ∀X. ∃Y. P (X, Y ) Beweis Reduction from PCP. D.h zu P ⊆ ({0, 1}∗)2 definiere Formel ϕP (berechenbar!) mit P lösbar ⇔ ϕP gültig. Haskell-Einschub Algebraischer Datentyp wie in Haskell data Bitstring = Epsilon | Null Bitstring | One Bitstring data Nat = Zero | Suc Nat Die Formel ∀P.((∀n.(P (n) → P (Suc n))) ∧ P (Zero) → ∀n.P (n)) ist nicht FOL. Signatur Konstante f0 , f1 unär C binäres Prädikat leerer Bitstring“ ” f0 (x) = 0x, f1 (x) = 1x“ ” konstruierbar“ ” Notation: fb1 ,...,bn (X) = fb1 · · · fbn (X) für b1 , . . . , bn ∈ {0, 1}∗ . Setze ψP = ^ (u,v)∈P (C(fu (), fv ()) ∧ ∀x, y. (C(x, y) → C(fu (x), fv (y)))) | {z } | {z } (i) (ii) ϕP = ψP → ∃X.C(X, X) 6 Behauptung: P lösbar ⇔ ϕP gültig. ⇒“: Sei P lösbar. ” Seien (u1 , v1 ), . . . , (un , vn ) ∈ P mit u1 , . . . , un = v1 , . . . , vn . Dann gilt ψP → C(fu1 ,...,un (ε), fu1 ,...,un (ε)), (1.1) = also gilt ψP → ∃X. C(X, X). Zeige für (1.1) allgemeiner: für 1 ≤ k ≤ n ψP → C(fu1 ,...,uk (), fv1 ,...,vk ()) Per Induktion über k: I.A. (k = 1) per Teil (i) von ψP I.S. (k − 1 → k). Sei ψP → C(fu2 ,...,uk (), fv2 ,...,vk ()). Ferner per (ii): ψP → (C(fu2 ,...,uk (), fv2 ,...,vk ()) → C(fu1 (fu2 ,...,uk ()), fv1 (fv2 ,...,vk ()))) also ψP → C(fu1 ,...,uk (), fv1 ,...,vk ()) ⇐“: Sei ϕP gültig. ” Definiere das Modell M durch M = {0, 1}∗ MJK = MJf0 K(x) = 0x MJf1 K(x) = 1x MJCK = {(u1 · · · un , v1 · · · vn ) | (u1 , v1 ), . . . , (un , vn ) ∈ P, n ≥ 1} Dann nach Vorraussetzung M ψP → ∃X.C(X, X). Ferner M ψP . Beachte: MJfu (X)Kη = uη(X) MJfu ()Kη = u also M ∃X.C(X, X). Dass heißt, es existiert (w, w) ∈ MJCK. 2014-10-17 1.3 Ehrenfeucht-Fraı̈ssé-Spiele Definition Ein partieller Isomorphismus zwischen Σ-Modellen (ohne Funktionssymbolen) A und B ist eine Teilmenge {(a1 , b1 ), . . . , (an , bn )} ⊆ A × B, so dass: • a: paarweise verschieden (also ai → bi wohl definiert) • b: paarweise verschieden (also bi → ai injektiv) Für alle P/k ∈ Σ: (ai1 , . . . , aik ) ∈ AJP K ⇔ (bi1 , . . . , bik ) ∈ BJP K. 7 Beispiel Φ ist partieller Iso. Notation Für X = (X1 , . . . , Xn ) Vektor von Variablen bezeichnet (A, ā) mit Vektor ā = (a1 , . . . , an ) ∈ An A mit Umgebung η mit η(Xi ) = ai (i = 1, . . . , n). Definition (Quantorenrang) von Quantoren in ϕ: Der Quantorenrang QR(ϕ) bezeichnet Schachtelungstiefe QR(ϕ) = 0, wenn ϕ atomar QR(¬ϕ) = QR(ϕ) QR(ϕ ∧ ψ) = max(QR(ϕ), QR(ψ)) QR(∀X.ϕ) = 1 + QR(ϕ) Beispiel QR(∀X.(X = Y ) ∧ ∃X.∀Y.P (X, Y )) = 2 Definition (m-Äquivalent) (A, ā) ∼ =m (B, b̄) ⇔ |ā| = |b̄| ∀ϕ. QR(ϕ) ≤ m ∧ FV(ϕ) ⊆ {X1 , . . . , Xk } ⇒ (A, ā) ϕ ⇔ (B, b̄) ϕ 8 Definition E-F-Spiel Das m-Runden-E-F-Spiel Gm ((A, ā), (B, b̄)) hat Konfigurationen: {(a1 , b1 ), . . . , (an , bn )} ⊆ A × B n ≥ k ( potentielle partielle Isos“) ” Initial: {(a1 , b1 ), . . . , (ak , bk )} Spieler: Spoiler (beginnt), Duplicator Züge: In der i-ten Runde (i + 1, . . . , m) • Spoiler (zieht zuerst) wählt ak+i ∈ A (oder bk+i ∈ B) • Duplicator wählt bk+i ∈ B (oder ak+i ∈ A) Nach m Runden gewinnt D, wenn {(a1 , b1 ), . . . , (ak+m , bk+m )} ein partieller Iso ist. Satz (E-F) (A, ā) ∼ =m (B, b̄) ⇔ D hat Gewinnstrategie Gm ((A, ā), (B, b̄)). 2014-10-23 1.3.1 Erreichbarkeit Signatur: I unär, R binär. x ∈ M erreichbar ⇔ es existiert MJIK 3 x0 und n ≥ 0 mit (xi , xi+1 ) ∈ MJRK, i = 0, . . . , n − 1 M erreichbar ⇔ jedes x ∈ M erreichbar ( erreichbar“ ist in FOL nicht ausdrückbar) ” Strategie Nimm an ϕ drücke Erreichbarkeit aus. Finde dann Modelle A, B mit • A∼ =QR(ϕ) B per EF-Spiele • A erreichbar, B nicht. zum Beispiel QR(ϕ) = 3 9 1.3.2 Back-and-Forth-Systeme Definition Seien (A, ā), (B, b̄) Σ-Modelle, ā ∈ Ak , b̄ ∈ B k . Ein m-Back-and-Forth-System (Fraı̈ssé) zwischen (A, ā), (B, b̄) ist eine Familie (Ii )0≤i≤m von Mengen Ii partieller Isos zwischen A und B mit (a) {(a1 , b1 ), . . . , (ak , bk )} ∈ I0 (b) Forth: Für {(a1 , b1 ), . . . , (ak+i , bk+i )} ∈ Ii und ak+i+1 ∈ A existiert bk+i+1 ∈ B mit {(a1 , b1 ), . . . , (ak+i+1 , bk+i+1 )} ∈ Ii+1 (c) Back: Entsprechend mit A und B vertauscht. Lemma Seien (A, ā), (B, b̄) Σ-Modelle mit Umgebung ā ∈ Ak , b̄ ∈ B k . Duplicator gewinnt Gm ((A, ā), (B, b̄)) genau dann, wenn ein B-n-F-System zwischen (A, ā) und (B, b̄) existiert. Beweis ⇐“: Sei (Ii )i≤m B-n-F zwischen (A, ā) und (B, b̄). Die Gewinnstrategie für ” Duplicator ist: Bleibe in der i-ten Runde in Ii . (a) Das gilt am Anfang: {(a1 , b1 ), . . . , (ak , bk )} ∈ I0 (b) Das kann D in der i + 1-ten Runde durchhalten: Fall 1 Zieht Spoiler ak+i+1 ∈ A, wählt Duplicator dann bk+i+1 wie in Forth“ ” Fall 2 Analog mit Back“ ” (c) Nach m Runden gewinnt Duplicator: Im besteht aus partiellen Isos. ⇒“ ” Ii = {(a1 , b1 ), . . . , (ak+i , bk+i )} = P | D gewinnt Gm−i ((A, (a1 , . . . , ak+i )), (B, (b1 , . . . , bk+i ))) Das ist B-n-F: (a) {(a1 , b1 ), . . . , (ak , bk )} ∈ I0 n.V. (b) Sei {(a1 , b1 ), . . . , (ak+i , bk+i )} ∈ Ii und ak+i+1 ∈ A. Sei bk+i+1 Antwort von D auf | {z } Gewinn pos für D ak+i+1 , dann ist {(a1 , b1 ), . . . , (ak+i+1 , bk+i+1 )} Gewinnposition für D, also in Ii+1 . (c) Analog 2014-10-24 10 Recap-Satz (Wenn Σ endlich) (A, ā) ∼ =m (B, b̄) ⇔ D hat Gewinnstrategie Gm ((A, ā), (B, b̄)) Lemma ⇔ Es existiert B’n’F zwischen (A, ā), (B, b̄) ⇐“ (gilt für beliebige Σ): Zu zeigen: (A, ā) ϕ ⇔ (B, b̄) ϕ für QR(ϕ) ≤ m, FV(ϕ) ⊆ ” {X1 , . . . , Xn }. Per Induktion über ϕ, gegeben m-B’n’F (Ii )i≤m Boolsche Schritte sind trivial. Beispiel: Konjugation, Disjunktion, usw: I.V. (A, ā) ¬ϕ ⇔ (A, ā) 6 ϕ ⇔ (B, b̄) 6 ϕ ⇔ (B, b̄) ¬ϕ Atomare Formeln: • (1) (A, ā) P (Xi1 , . . . , Xin ) ⇔ (ai1 , . . . , ain ) ∈ AJP K ⇔ (bi1 , . . . , bin ) ∈ BJP K ⇔ (B, b̄) P (Xi1 , . . . , Xin ) (1): {(a1 , b1 ), . . . , (ak , bk )} ∈ Io aso partieller Iso (1) • (A, ā) Xi = Xj ⇔ ai = aj ⇔ bi = bj ⇔ (B, b̄) Xi = Xj • ∃Xk+1 .ϕ: (A, ā) ∃Xk+1 .ϕ ⇔ es existiert ak+1 mit (A, āak+1 ) ϕ Forth ⇒ es existiert bk+1 ∈ B mit {(a1 , b1 ), . . . , (ak+1 , bk+1 )} ∈ I1 Setze Ji = Ii+1 (1 ≤ m − 1), dann ist (Ji )i≤m−1 ein (m − 1)-B’n’F zwischen (A, āak+1 ), (B, b̄bk+1 ) I.V. QR(ϕ) ≤ m − 1, FV(ϕ) ⊆ {X1 , . . . , Xk+1 } ⇒ (B, b̄bk+1 ) ϕ ⇒ (B, b̄) ∃Xk+1 .ϕ Umkehrung analog mit Back“ ” Lemma Sei Σ endlich. Dann gibt es bis auf logische Äquivalenz (zum Beispiel ϕ ≡ ϕ ∧ ϕ ≡ ϕ ∧ ϕ ∧ ϕ) nur endliche ϕ mit QR(ϕ) ≤ m, FV(ϕ) ⊆ {X1 , . . . , Xn }. 11 Beweis N.B.: Die Behauptung gilt für Aussagenlogik“. Es existieren bis auf logische ” Äquivalenz nur endlich viele aussagenlogische ψ mit At(ψ) ⊆ {A1 , . . . , Ar } (nämlich so r viele wie Wahrheitstafeln, also 2(2 ) ). Damit Induktion über m: m = 0 : ϕ ist aussagenlogische Formel über Atome P (Xi1 , . . . , Xin ), Xi = Xj . | {z } | {z } endlich viele endlich viele m → m + 1 : ϕ ist bis auf α-Äquivalenz (= umbennenen quantifizierter Variablen) aussagenlogische Formel mit Atomen wie bei m = 0 oder ∃Xk+1 .ϕ mit QR(ϕ) ≤ m, FV(ϕ) ⊆ {X1 , . . . , Xm }, also endlich viele ϕ nach IV . ⇒“ (für endliches Σ). ” Setze (für i ≤ m) Ii = {{(a1 , b1 ), . . . , (ak+i , bk+i )} | (A, (a1 , . . . , ak+i )) ∼ =m−i (B, (b1 , . . . , bk+i ))} Zu zeigen: Das ist m-B’n’F zwischen (A, ā), (B, b̄). • {(a1 , b1 ), . . . , (ak , bk )} ∈ I0 nach Vorraussetzung. • (Forth). Sei {(a1 , b1 ), . . . , (ak+i , . . . , bk+i )} ∈ Ii und ak+i+1 ∈ A. Da Σ endlich, gibt es (bis auf Äquivalenz) nur endlich viele ψ1 , . . . , ψN mit QR(ψj ) ≤ m − (i + 1) und FV(ψj ) ⊆ {X1 , . . . , Xk+i+1 } ( ψj Setze ψ̄j = ¬ψj falls A, (a1 , . . . , ak+i+1 ) ψj sonst Dann A, (a1 , . . . , ak+i , ak+i+1 ) N ^ ψ̄j j=1 ⇒A, (a1 , . . . , ak+i ) ∃Xk+i+1 N ^ ψ̄j j=1 I i ⇒B, (b1 , . . . , bk+i ) ∃Xk+i+1 N ^ ψ̄j j=1 ⇒es existiert bk+i+1 mit B, (b1 , . . . , bk+i+1 ) N ^ ψ̄j j=1 ⇒(A, (a1 , . . . , ak+i+1 )) ∼ =m−(i+1) (B, (b1 , . . . , bk+i+1 )) ⇒{(a1 , b1 ), . . . , (ak+i+1 , bk+i+1 )} ∈ Ii+1 12 Ferner: Ii besteht aus partiellen Isos. {(a1 , b1 ), . . . , (ak+i , bk+i )} partieller Iso ⇔ A, (a1 , . . . , ak+i ) ∼ =0 B, (b1 , . . . , bk+i ). 2014-10-30 1.3.3 FO-Definierbarkeit (A, ā) seien Σ-Strukturen. Definition Seien C ⊆ D Klassen von Σ-Strukturen. • C heißt FO-definierbar in D, genau dann wenn eine Formel ϕ existiert mit C = {(A, ā) ∈ D | (A, ā) ϕ} • C heißt FO-definierbar, wenn C FO-definierbar in der Klasse aller Σ-Strukturen ist. Beispiel Σ = {≤} ORD = {(A, (a0 , a1 )) | A ist endliche lineare Ordnung1 mit Min a0 , Max a1 } EVEN = {(A, (a0 , a1 )) ∈ ORD | |A| gerade} Satz EVEN ist nicht FO-definierbar in ORD. Lemma Seien (A, ā), (B, b̄) ∈ ORD mit |A|, |B| > 2m . Dann (A, ā) ∼ =m (B, b̄). Beweis (per E-F.) Gewinnstrategie für D. Definiere Distanz auf A durch d(a, a0 ) = |{c ∈ A | a < c ≤ a0 }| ∈ N. Analog auf B. Invariante in Runde i: (a) {(a0 , b0 ), . . . , (ai+1 , bi+1 )} partieller Iso (b) Für j, j 0 ∈ {0, . . . , i + 1}: d(aj , aj 0 ) = d(bj , bj 0 ) oder d(aj , aj 0 ), d(bj , bj 0 ) ≥ 2m−i Damit gewinnt D nach Konstruktion: • Die Invariante gilt Anfangs: Per Annahme |A|, |B| > 2m • Die Invariante lässt sich in Runde i + 1 durchhalten: Ohne Einschränkung zieht Spoiler ai+1 . Setze: j = arg max{ak | ak < ai+1 } j 0 = arg min{ak | ak > ai+1 } 1 Anm. d. Red: Totale Ordnung 13 a0 j ai+1 j j0 j0 Fall 1 d(aj , aj 0 ) = d(bj , bj 0 ). Dann wähle bi+1 mit d(bj , bi+1 ) = d(aj , ai+1 ) und d(bi+n , bj 0 ) = d(ai+1 , aj 0 ). Fall 2 d(aj , aj 0 ), d(bj , bj 0 ) ≥ 2m−i . (a) d(aj , ai+1 ), d(ai+1 , aj 0 ) ≥ 2m−i−1 , wählt dann bi+1 entsprechend (b) . . . restliche Fälle ähnlich ⇒ Damit Beweis von Satz! Man nehme jetzt an, ϕ mit QR(ϕ) = m definiere die Klasse EVEN. Wähle dann A mit |A| > 2m und B mit |B| = |A| + 1. Lemma ⇒ EVEN nicht FO-definierbar! Logische Reduktion von C ⊆ D auf C 0 ⊆ D0 : • nimm an, ϕ definiere C 0 in D0 • konstruiere daraus ϕ0 , das C in D definiert • Wenn C in D nicht FO-definierbar, folgt C 0 in D0 nicht FO-definierbar. Beispiel Zusammenhang von ungerichteten Graphen ist nicht FO-definierbar. Annahme: ϕ definiert Zusammenhang (Σ = {R/2}) Idee: Konstruiere aus (A, ā) ∈ ORD“ ungerichteten Graphen (A, R) mit (A, ā) 6∈ ” EVEN ⇔ (A, R) zusammenhängend: Drücke R(X, Y ) durch Formeln ψ(X, Y ) über ≤ aus. (a) 14 (b) ψ(X, Y ) siehe Übung Ersetze dann in ϕ R(X, Y ) durch ψ(X, Y ) ϕ0 . Dann: (A, ā) ϕ0 ⇔ ϕ0 ⇔ (A, R) zusammenhängend ⇔ (A, ā) 6∈ EVEN 15 2 Algorithmik der Aussagenlogik 2014-10-31 (SAT-Solving) • Resolution • DPLL (Verfahren für SAT-Solver) (Stållmark: Alternative) • Tableaux 2.1 Recall Aussagenlogik (A ∈ A 6= ∅) ϕ, ψ ::= A|¬ϕ|ϕ ∧ ψ|ϕ ∨ ψ (⊥ ≡ A ∧ ¬A, > ≡ ¬⊥) Modelle: Wahrheitsbelegungen (WB) κ : A → 2 = {⊥, >} Erfüllbarkeit |=: κ |= A ⇔ κ(A) = > κ |= ¬ϕ ⇔ κ 6|= ϕ κ |= ϕ ∧ ψ ⇔ κ |= ϕ und κ |= ψ κ |= ϕ ∨ ψ ⇔ κ |= ϕ oder κ |= ψ ϕ erfüllbar ⇔ ∃κ.κ |= ϕ ϕ gültig ⇔ ∀κ.κ |= ϕ ϕ erfüllbar ⇔ ¬ϕ nicht gültig ϕ gültig ⇔ ¬ϕ nicht erfüllbar Satz von Cook Efüllbarkeit in Aussagenlogik ist NP-vollständig. CoNP = {A ⊆ {0, 1}∗ | {0, 1}∗ − A ∈ NP}. 16 Korrolar Gültigkeit in Aussagenlogik ist CoNP-vollständig 2.2 Normalformen ϕ NNF (Negationsnormalform) ⇔ ϕ erzeugt durch ϕ, ψ ::= A|¬A|ϕ ∧ ψ|ϕ ∨ ψ ϕ CNF (Konjunktive Normalform) ⇔ ϕ erzeugt durch L ::= A|¬A C ::= ⊥|L ∨ C (Klauseln) ϕ ::= >|C ∧ ϕ ϕ CNF (Disjunktive Normalform) ⇔ ϕ erzeugt durch ϕ ::= ⊥|C ∧ ϕ C ::= >|L ∨ C (DNF-Klauseln) L ::= A|¬A Normalisierung zu NNF ¬(ϕ ∧ ψ) −→ ¬ϕ ∨ ¬ψ ¬(ϕ ∨ ψ) −→ ¬ϕ ∧ ¬ψ ¬¬ϕ −→ ϕ Normalisierung zu CNF (Anwenden auf NNF) ϕ ∨ (ψ ∧ ξ) −→ (ϕ ∨ ψ) ∧ (ϕ ∨ ξ) (ψ ∧ ξ) ∨ ϕ −→ (ψ ∨ ϕ) ∧ (ξ ∨ ϕ) Generell ist die Größe von CNF(ϕ) (bzw. DNF(ϕ)) eine exponentielle Funktion von der Größe von ϕ. 2014-11-14 17 Ordered binary decision diagrams (OBDD) Ein BDD ist ein gerichteter Graph mit Wurzel und genau zwei Senken, die mit 0 und 1 gekennzeichnet sind; alle anderen Knoten sind mit Atomen von A gekennzeichnet. Aus jedem Knoten (außer den Senken) starten zwei Kanten, die mit 0 und 1 markiert sind. Ein OBDD ist ein BDD mit der Eigenschaft, dass in jedem Pfad von der Wurzel zu den Senken die Atome in der gleichen Reihenfolge vorkommen. ϕ = (¬x1 ∧ ¬x2 ∧ ¬x3 ) ∨ (x1 ∧ x2 ) ∨ (x2 ∧ x3 ), x1 > x2 > x3 Formeln CNFs DNFs OBDD Gültigkeit CoNP Logspace CoNP P* Erfüllbarkeit NP NP (SAT) Logspace P ¬ O(1) hart hart *: Die Berechnung selbst ist sehr komplex 18 ∧ O(1) O(1) hart (O(n2 )) ∨ O(1) (per Heap) hart (O(n2 )) O(1) 2.3 Resolution {{A} ∪ C, {¬A} ∪ D} ∪ B Res {{A} ∪ C, {¬A} ∪ D, C ∪ D} ∪ B Resolutionsregel (prüft Erfüllbarkeit einer CNF) Es gibt zwei Möglichkeiten: • entweder (Res) ist nicht anwendbar und die leere Klausel ist nicht dabei. ⇒ erfüllbar. • ist dabei. ⇒ nicht erfüllbar. Der Algorithmus terminiert sobald keine neuen Untermengen mehr gefunden werden. Vereinfachte Version: {A} ∪ C {¬A} ∪ D C ∪D hier ist implizit, dass bereits weiter oben aufgeführete Mengen mit erhalten bleiben. Beispiel {¬C, B, ¬A} {C, B, ¬A} {B, ¬A} {¬B, ¬A} {D, B, ¬C} {D, C} {¬A} {¬B, A} {D, B} {¬D, B} {¬B} {B} Lemma Sei D1 ∪ {A}, D2 ∪ {¬A} ∈ ϕ, Dann gilt: ϕ ist erfüllbar ⇔ ϕ ∪ {D1 ∪ D2 } erfüllbar ist. Beweis ⇐“ trivial ” ⇒“ Sei κ |= ϕ. Es gibt zwei Fälle: ” (a) κ(A) = > ⇒ κ |= D2 ⇒ κ |= D1 ∪ D2 (b) κ(A) = ⊥ ⇒ κ |= D1 ⇒ κ |= D1 ∪ D2 19 Theorem (Korrektheit der Resolution) Wenn das Resolutionsverfahren die Antwort Ja“ liefert, dann ist die Formel erfüllbar. Wenn es die Antwort Nein“ liefert, dann ist ” ” die Formel nicht erfüllbar. Wir sagen ϕ ist Resolution-Abgeschlossen (ra), wenn C ∪ D ∈ ϕ sobald C ∪ {A}, D ∪ {¬A} ∈ ϕ. Beweis (der zweiten Aussage): Antwort ist Nein“ ⇒ ∈ ϕ ⇒ ϕ nicht erfüllbar ⇒ ” (nach Lemma) die ursprüngliche Formel ist auch nicht erfüllbar. 2014-11-20 Einschub: Dualität 2 = {⊥, >} Boolsche Algebra (∧, ¬) ¬ : |{z} 2 → |{z} 2op Iso ⊥≤> >≤⊥ Dualität zum Beispiel ∧: ¬(¬ϕ ∧ ¬ψ) = ϕ ∨ ψ >: ¬> = ⊥ (ϕ ∨ ψ) ∧ ξ = (ϕ ∧ ξ) ∨ (ψ ∧ ξ) Dual: (ϕ ∧ ψ) ∨ ξ = (ϕ ∨ ξ) ∧ (ψ ∨ ξ) Einschub: Zur Gültigkeit CNF ϕ gültig ⇔ ∀C ∈ ϕ.∃A.A, ¬A ∈ C, also Gültigkeit ∈ L ⊆ P , dass heißt brauche nur konstant viele Pointer zu speichern. reduzierte OBBDs: nicht erfüllbar Weiter im Beweis seln. Terminierung: Über At(ϕ) gibt es nur 3| At(ϕ)| nichttriviale Klau- Noch zu zeigen: Algorithmus sagt Ja“ ⇒ ϕ erfüllbar. ” Zu zeigen also: ϕ ra. und 6∈ ϕ ⇒ ϕ erfüllbar. Per Induktion über | At(ϕ)| = n I.A (n = 0): At(ϕ) = ∅, 6∈ ϕ ⇒ ϕ = ∅ = >, also ϕ erfüllbar. I.S (< n → n): Sei A ∈ At(ϕ). Setze ϕ/A = {C \ {¬A} | C ∈ ϕ, A 6∈ C} ϕ angenommen A“ ” ϕ/¬A = {C \ {A} | C ∈ ϕ, ¬A 6∈ C} 20 ϕ ra Dann ist 6∈ ϕ/A oder 6∈ ϕ/¬A, denn sonst: {¬A} ∈ ϕ 3 {A} ⇒ ∈ ϕ Ohne Einschränkung sei 6∈ ϕ/A. Noch zu zeigen ist: ϕ/A ra. Sei nun C ∪ {B}, D ∪ {¬B} ∈ ϕ/A. Dann existiert C̃, D̃ mit C̃ \ {¬A} = C, D̃ \ {¬A} = D, C̃ ∪ {B}, D̃ ∪ {¬B} ∈ ϕ ϕ ra ⇒ C̃ ∪ D̃ ∈ ϕ ⇒ C̃ ∪ D̃} \{¬A} | {z ∈ ϕ/A 63A | {z } =C̃\{¬A}∪D̃\{¬A}=C∪D I.V ⇒ es existiert κ |= ϕ/A. Dann κ[A 7→ >] |= ϕ : Sei D ∈ ϕ. Fall 1 A ∈ D ⇒ κ[A 7→ >] |= D. Fall 2 A 6∈ D ⇒ D \ {¬A} ∈ ϕ/A ⇒ κ |= D \ {¬A} ⇒ κ[A 7→ >] |= D \ {¬A} ⇒ κ[A 7→ >] |= D N.B. Aus Beweis ϕ erfüllbar ⇔ ϕ/A erfüllbar oder ϕ/¬A erfüllbar (*). (*) ist rekursiver Algorithmus, der Backtracking-Algorithmus. 2.3.1 Optimierungen (DPLL) Unit Propagation L Literal: {L} ∈ ϕ ⇒ ϕ := ϕ/L (sound per (*): ∈ ϕ/¬L) Pure literal elimination ∀C ∈ ϕ.L 6∈ C ⇒ ϕ := ϕ/¬L (sound: Zu zeigen: ϕ erfüllbar ⇔ ϕ/¬L erfüllbar) ⇐“ per (*) ” ⇒“ Sei κ |= ϕ, dann κ |= ϕ/¬L: Sei C ∈ ϕ/¬L, also C = C̃ \ {L} für C̃ ∈ ϕ mit ” | {z } =C̃ n.V ¬L 6∈ C̃. Also κ |= C̃ = C 21 Beispiel ϕ : {A, B, ¬C}, {A, C, B}, {B, D}, {¬D, ¬A}, {¬A, B, C}, {¬D, A}, {¬A, ¬B} ϕ/A : {B, D}, {¬D}, {B, C}, {¬B} Unit Prop. mit ¬B: {D}, {¬D}, {C} Unit Prop. mit D: , {C} ϕ/¬A = {B, ¬C}, {C, B}, {B, D}, {¬D} Unit Prop. mit ¬D: {B, ¬C}, {C, B}, {B} Unit Prop. mit B: {} erfüllbar 2014-11-21 2.4 Tableaux 2.4.1 Flache Tableaux (Halpern/Mose 1992) Tableaumethode: Modellbau längs der Formelstruktur. Definition Ein flaches Tableau (für ϕ) ist eine endliche Menge T von Formeln (mit ϕ ∈ T ), so dass ⊥ 6∈ T ϕ1 ∧ ϕ2 ∈ T ⇒ ϕ1 , ϕ2 ∈ T ¬(ϕ1 ∧ ϕ2 ) ∈ T ⇒ ¬ϕ1 ∈ T oder ¬ϕ2 ∈ T ¬¬ϕ ∈ T ⇒ ϕ ∈ T ¬A ∈ T ⇒ A 6∈ T ( (( ¬ϕ(∈ ⇒(ϕ 6∈ T (T(( ( Satz ϕ erfüllbar ⇔ es existiert ein flaches Tableau für ϕ. Beweis ⇒“ Sei κ |= ϕ. Setze Σ = {ψ | ψ Unterformel von ϕ}∪{¬ψ | ψ Unterformel von ϕ}. ” Dann T = {ψ ∈ Σ | κ |= ψ}. T ist flaches Tableau für ϕ: κ |= ϕ ⇒ ϕ ∈ T ψ1 ∧ ψ2 ∈ T ⇒ κ |= ψ1 ∧ ψ2 ⇒ κ |= ψ1 und κ |= ψ2 ⇒ ψ1 , ψ2 ∈ T ¬(ψ1 ∧ ψ2 ) ∈ T ⇒ κ |= ¬ψ1 oder κ |= ¬ψ2 ; ¬ψ1 , ¬ψ2 ∈ Σ, also ¬ψ1 ∈ T oder ¬ψ2 ∈ T ¬A ∈ T ⇒ κ |= ¬A ⇒ κ 6|= A ⇒ A 6∈ T ⇐“ (Modellexistenzlemma) Sei T flaches Tableau für ϕ. Setze κ(A) = >, genau dann ” wenn A ∈ T . Dann gilt: 22 Wahrheitslemma Für alle ψ ∈ T gilt κ |= ψ. Beweis Induktion über ψ. ψ = ⊥ : ψ 6∈ T IV ψ = ψ1 ∧ ψ2 : ψ1 ∧ ψ2 ∈ T ⇒ ψ1 , ψ2 ∈ T ⇒ κ |= ψ1 , κ |= ψ2 ⇒ κ |= ψ1 ∧ ψ2 ψ = ¬(ψ1 ∧ ψ2 ) : Sei ¬(ψ1 ∧ ψ2 ) ∈ T , dann ohne Einschränkung ¬ψ ∈ T IV ⇒ κ |= ¬ψ1 ⇒ κ |= ¬(ψ1 ∧ ψ2 ) IV ψ = ¬¬ψ0 : ¬¬ψ0 ∈ T ⇒ ψ0 ∈ T ⇒ κ |= ψ0 ⇒ κ |= ¬¬ψ0 ψ = ¬⊥ : κ |= ψ X ψ = ¬A : ¬A ∈ T ⇒ A 6∈ T ⇒ κ 6|= A ⇒ κ |= ¬A ψ = A : X nach Konstruktion Beispiel (¬(¬(A ∧ ¬¬(¬A ∧ ¬B)) ∧ C)) ∧ ¬¬(¬C ∧ ¬¬(¬A ∧ ¬B)) = ϕ T = {ϕ, ¬(¬(A ∧ ¬¬(¬A ∧ ¬B)) ∧ C), ¬¬(¬C ∧ ¬¬(¬A ∧ ¬B)), ¬C ∧ ¬¬(¬A ∧ ¬B), ¬C, ¬¬(¬A ∧ ¬B), ¬A ∧ ¬B, ¬A, ¬B} 2.4.2 (Echte) Tableaux Bäume Label = endliche Menge Γ, ∆, . . . von Formeln, konjunktiv gelesen Regeln (∧) Γ, ϕ ∧ ψ Γ, ϕ, ψ Γ, ¬(ϕ ∧ ψ) (¬∧) Γ, ¬ϕ | Γ, ¬ψ (¬¬) Γ, ¬¬ϕ Γ, ϕ Schreibweise: Γ, A, ¬A (Ax) ⊥ Regelanwendung erzeugt Bäume, Knoten n haben Label l(n). 23 ,= b Vereinigung ψ= b {ψ} Blätter: {⊥} = l(n) : Clash n saturiert ⇔ keine Regel auf n anwendbar innere Knoten = b Regelinstanzen ( n saturiert n Blatt Definition n erfolgreich ⇔ n hat erfolgreichen Nachfolger n innerer Knoten (rekursiv!) So ein Baum heißt Tableau für ϕ ⇔ ∃n. ϕ ∈ l(n), n erfolgreich. Satz ϕ erfüllbar ⇔ es existiert ein Tableau für ϕ. Definition Label Γ erfolgreich ⇔ jede auf Γ anwendbare Regelinstanz hat eine erfolgreiche Konklusion.1 (rekursiv!) Lemma n erfolgreich ⇔ l(n) erfolgreich. Beweis Γ0 Vor. ⇐“ Sei2 bei n angewendete Regelinstanz. ⇒ es existiert i mit ” Γ1 | · · · | Γk IV Γi erfolgreich; ferner existiert n → ni mit l(ni ) = Γi ⇒ ni erfolgreich ⇒ n erfolgreich. 2014-11-27 Definition Ein Label Γ hat ein erfolgreiches Tableau, wenn ein erfolgreicher Knoten n in einem Tableau existiert mit l(n) ⊆ Γ. Theorem Äquivalent sind für Label Γ (i) Γ erfolgreich (ii) Γ hat ein erfolgreiches Tableau (iii) Γ hat ein flaches Tableau T (d.h. Γ ⊆ T ) (iv) Γ erfüllbar 1 2 Anm. d. Red: Damit wäre ⊥ ein erfolgreiches Label Anm. d. Red: Das setzt eine anwendbare Regelinstanz vorraus. 24 Beweis (iii) ⇔ (iv) siehe oben (i) ⇒ (ii): Fall 1 Auf Γ ist keine Regel anwendbar. ⇒ n mit l(n) = Γ ist erfolgreich. Γ0 , ψ (n = 0 = b ⊥) nach Γ, ∆1 | . . . | Γ, ∆n Vorraussetzung, existiert ein i, so dass Γ, ∆i erfolgreich. Fall 2 Haben wir Γ = Γ0 , ψ und die Regelinstanz Γ Γ, ∆1 Γ, ∆i ← neuer Knoten n Γ, ∆n Tableau, n erfolgreich > Da ∆i einfacher (Anzahl der Konnektiven) ist als ψ, hat Γ0 , ∆i nach IV ein erfolgreiches Tableau T . (ii) ⇒ (iii): Sei l(n) ⊇ Γ, n erfolgreich. I.A. n Blatt ⇒ keine Regel auf l(n) anwendbar ⇒ l(n) flaches Tableau. IV I.S. (von Kindern auf Eltern). Es existiert i mit mi erfolgreich. ⇒ l(mi ) = Γ, ∆i hat ein flaches Tableau T . l(n) = Γ, ψ Γ, ∆1 l(m1 ) Γ, ∆k = = ... l(m2 ) ⇒ T ∪ {ψ} ist ein flaches Tableau für Γ, ψ (Formeln in T OK, da T flaches Tableau, Formel ψ OK per Konstruktion: verlangte neue Formeln sind in T ; falls zum Beispiel ¬A ∈ T kann ψ = A nicht sein, da auf ψ Regel 6= (Ax) anwendbar) (iii) ⇒ (i) Sei Γ ⊆ T , T flaches Tableau. Sei Γ = Γ0 , ψ und 25 Γ0 , ψ RegelinΓ0 , ∆1 | . . . | Γ0 , ∆k IV stanz. T flaches Tableau ⇒ Γ0 , ∆i ⊆ T für alle i. ⇒ Γ0 , ∆i ist erfolgreich. Tableau Beispiel ¬(A ∧ ¬B) ∧ ¬(B ∧ ¬C) ∧ A (∧)∗ ¬(A ∧ ¬B), ¬(B ∧ ¬C), A (¬∧) ¬A, ¬(B ∧ ¬C), A ¬¬B, ¬(B ∧ ¬C), A (¬¬) ⊥ B, ¬(B ∧ ¬C), A (¬∧) B, ¬¬C, A B, ¬B, . . . (¬¬) B, C, A ⊥ 26 3 Beschreibungslogik 2014-12-04 • Fragment von FOL (erstmal) • enthält Aussagenlogik (seit ca. 1990) (erstmal) • Objektorientierte“ Sicht: ” – Klassen – (Attribute) / Eigenschaften = b – unäre (Klassen) + binäre (Eigenschaften) Prädikate – lokale“ Sicht ” Syntaktisches Material“ ” • (NI Individuennamen) • NC Klassennamen“ / atomare Konzepte ” • NR Eigenschaften“ / Rollen(namen) ” Syntax Konzepte ( Class expressions“) (ALC) ” C, D ::= ⊥ | A | ¬C | C u D | C t D | ∃R. C Interpretationen I besteht aus • Bereich ∆I (domain) • zu A ∈ NC : AI ⊆ ∆I • Zu R ∈ NR : RI ⊆ ∆I × ∆I 27 (A ∈ NC , R ∈ NR ) Direkte Semantik C I ⊆ ∆I (schreibe I, d |= C ⇔ d ∈ C I ) rekursiv: Extension ⊥I = ∅ (¬C)I = ∆I − C I (C u D)I = C I ∩ DI (∃R.C)I = {d ∈ ∆I | ∃e ∈ ∆I . (d, e) ∈ RI ∧ e ∈ C I } Beispiel: ∃hasChild. gingerHaired ∀R.C :≡ ¬∃R.¬C ⇒ (∀R.C)I = {d ∈ ∆I | ∀e ∈ ∆I .(d, e) ∈ RI ⇒ e ∈ C I } Beispiel: ∀hasAccount. overDrawn 3.1 Modallogik Formeln: ϕ ::= ⊥ | p | ¬ϕ | ϕ1 ∧ ϕ2 | ♦i ϕ ♦i = b ∃Ri , (p ∈ P, i ∈ I) i = ¬♦i ¬ = b ∀Ri Modell: Kripke-Modelle M = (F, V ) mit F = (X, (Ri )i∈I ) (multimodaler) Kripkerahmen aus Menge X von Zuständen oder Welten Ri ⊆ X × X (i ∈ I) V : P → P(X) Valuation Semantik ist mutatis mutandis gleich. Beispiel: ♦i gingerHaired (i = b hasChild). Wörterbuch Modallogik Formel Kripkemodell ♦, Modalität Relation Erfüllbarkeit Beschreibungslogik Konzept Interpretation Restriktion Rolle Erfüllbarkeit oder Konsistenz 28 Indirekte“ Semantik Übersetzung STy (ϕ) (standard translation) in Logik erster Stufe ” mit M, w |= ϕ ⇔ M, w |= STy (ϕ) | {z } M = ((X, (Ri )), V ), w ∈ X direkte Semantik und FV(STy (ϕ)) ⊆ {y}: STy (⊥) = ⊥ STy (p) = p(y) STy (¬ϕ) = ¬ STy (ϕ) STy (ϕ ∧ ψ) = STy (ϕ) ∧ STy (ψ) STy (♦i ϕ) = ∃z.Ri (y, z) ∧ STz (ϕ) (z frisch) Variablen X0 , X1 reichen: STXj (♦i ϕ) = ∃X1−j .Ri (Xj , X1−j ) ∧ STX1−j (ϕ) Das heißt: STXi (ϕ) ∈ F O2 ← entscheidbar Mehr Syntax I |= C v D ⇔ C I ⊆ DI C v D Konzeptinklusion C =D ≡C vD∧D vC Beispiel Grandfather = Male u (∃hasChild. Mother t ∃hasChild. Father) Grandfather = Male u ∃hasChild. ∃hasChild. > > = Person → (Male t Female) > = ∀hasChild. Person 2014-12-05 3.2 Terminologien Achtung: ∆I 6= ∅ (General) Concept Inclusion (gci) C v D I |= C v D ⇔ C I ⊆ DI zum Beispiel: I |= > v C ⇔ ∀d ∈ ∆I . I, d |= C N.B.: C v D äquivalent zu > v ¬C t D TBox (Terminologie) = Menge T von Konzeptinklusionen 29 I T -Modell ⇔ I |= T ⇔ ∀C v D ∈ T . I |= C v D C erfüllbar über T ⇔ es existiert T -Modell I mit C I 6= ∅ (insbesondere C erfüllbar ⇔ es existiert I mit C I 6= ∅). |= lokale Konsequenz: C |= D ⇔ ∀I, d. I, d |= C ⇒ I, d |= D | {z } C I ⊆DI , d.h I|=CvD ⇔ C v D gültig ⇔ ¬C t D gültig |=g globale Konsequenz: T |=g C v D ⇔ ∀I. I |= T ⇒ I |= C v D Reasoning Tasks (i) TBox-Konsistenz: existiert ein T -Modell? (ii) Konzepterfüllbarkeit (iii) Subsumption: gilt T |=g C v D Reduktionen (i) → (ii) : T konsistent ⇔ > erfüllbar über T (ii) → (iii) : C unerfüllbar über T ⇔ T |=g C v ⊥ (iii) → (ii) : T |=g C v D ⇔ C u ¬D unerfüllbar über T T klassisch ⇔ (i) in C = D ∈ T ist C stets atomar. (ii) Die linken Seiten aller C = D ∈ T sind paarweise verschieden. Ohne Einschränkung nur = erlaubt: A v C äquivalent zu A = C u A T azyklisch ⇒ (i) T klassisch (mit nur =) (ii) Definiere uses per A uses B ⇔ A = C ∈ T , B kommt in C vor. Verlange uses azyklisch. Nicht azyklisch: PopularGuy v ∀ hasFriend.popularGuy Wir können v in azyklischer TBox emulieren: T ∪ {A v C} erfüllbarkeitsäquivalent (nicht äquivalent) zu T ∪ {A = C u A∗ } (A∗ frisch) 30 ⇐“ I |= T ∪ {A = C u A∗ } ⇒ I |= T ∪ {A v C} ” ∗ ⇒“ Sei I |= T ∪ {A v C}. Definiere I ∗ wie I, aber mit (A∗ )I = AI . Dann I ∗ |= T , da ” ∗ ∗ wie oben A∗ nicht in T vorkommt. Ferner I ∗ |= A = C u A∗ : C I ∩ (A∗ )I = C I ∩ AI = Beweis I|=AvC AI = ∗ AI 2014-12-11 3.3 Bisimilarität Definition Seien M1 = ((X1 , R1 ), V1 ), M2 = ((X2 , R2 ), V2 ) Kripkemodelle. Eine Relation S ⊆ X1 × X2 heißt Simulation (xSy: y simuliert x), wenn für alle (x, y) ∈ S gilt: y R1 R2 x0 S ∃y 0 x • xR1 x0 ⇒ ∃y 0 . yR2 y 0 ∧ x0 Sy 0 x y (x similar zu“ y) ⇔ es existiert eine Simulation S mit xSy. ” Beispiel S ⇒ • x ∈ V1 (p) ⇒ y ∈ V2 (p) für alle p ∈ P 0 0 1∞ M1 11 12 2∞ 3∞ 22 M2 Simulation S = {(0, 0), (0, 1∞), (0, 2∞), . . .} Aber auch S2 = X2 × X1 ist eine Simulation. Definition S ist eine Bisimulation, genau dann wenn S eine Simulation ist und S − = {(y, x) | (x, y) ∈ S} eine Simulation ist. x ≈ y (x bisimilar zu y) ⇔ es existiert eine Bisimulation S mit xSy. 31 Beispiel 0 6≈ 0: M1 0 S M2 0 0 S 11 0 11 Lemma Bisimilare Zustände erfüllen die gleichen Modalformeln (Modallogik ist bisimulationsinvariant). Beweis Sei S eine Bisimulation. Zeige ∀x, y. xSy ⇒ (x |= ϕ ⇔ y |= ϕ) per Induktion über Modalformeln in ϕ. Boolsche Fälle trivial (⊥, ¬, ∧). ϕ=p: xSy x |= p ⇔ x ∈ V1 (p) ⇔ y ∈ V2 (p) ⇔ y |= p ϕ = ♦ψ : Sei x |= ♦ψ. Dann existiert x0 mit xR1 x0 , x0 |= ψ. Da S eine Simulation ist, existiert y 0 mit yR2 y 0 , x0 Sy 0 . IV ⇒ y 0 |= ψ, also y |= ♦ψ Das heißt M1 , 0 6|= ♦⊥, M2 , 0 |= ♦⊥ impliziert M1 , 0 6≈ M2 , 0. Also: xRx nicht durch Modalformel ausdrückbar, da nicht bisimulationsinvariant: ... Es gilt im Allgemeinen nicht: x, y erfüllen die gleichen Modalformeln ⇒ x ≈ y. 1∞ o1 2∞ o2 ··· 11 32 o1 6≈ o2 : o1 1i S S o1 1∞ ... aber: o1 und o2 erfüllen die gleichen Formeln. ii S ... i∞ Definition Ein Modell M = ((X, R), V ) heißt endlich verzweigt, genau dann wenn ∀x ∈ X.{x0 | xRx0 } endlich ist. Satz (Hennessy/Milner) Seien M1 = ((X1 , R1 ), V1 ), M2 = ((X2 , R2 ), V2 ) endlich verzweigt. Dann gilt: Wenn x ∈ X1 , y ∈ X2 die gleichen Modalformeln erfüllen, dann x ≈ y. Beweis Setze S = {(x, y) ∈ X1 × X2 | x und y erfüllen dieselben Formeln} Zu zeigen: S Bisimulation. Sei also xSy. Def S • Sei x ∈ V1 (p) ⇒ x |= p ⇒ y |= p ⇒ y ∈ V2 (p) • Sei xR1 x0 . Sei {y 0 | yR2 y 0 } = {y1 , . . . , yn } (NB: M2 endlich verzweigt). Anmerkung: Gilt ¬(x0 Syi ) für alle i, dann existieren ϕ1 , . . . , ϕn mit ohne Einschränkung (NB: haben ¬) x0 |= ϕi , yi |= ¬ϕi , also yi |= ¬ϕ1 ∨ . . . ∨ ¬ϕn . Dann y |= (¬ϕ1 ∨ . . . ∨ ¬ϕn ) xSy ⇒ x |= (¬ϕ1 ∨ . . . ∨ ¬ϕn ) ⇒x0 |= ¬ϕ1 ∨ . . . ∨ ¬ϕn . Also existiert i mit (yR2 yi ), x0 Syi . Satz (van Benthem/Rosen) Sei ϕ(X) eine Formel in FOL. ϕ(X) ist bisimulationsinvariant (dass heißt M1 , x1 ≈ M2 , x2 ⇒ M1 , x1 |= ϕ(X) ⇔ M2 , x2 |= ϕ(X)) ⇒ es existiert ψ modal mit ϕ(X) ≡ STX (ψ) (über beliebigen oder endlichen Modellen). 2014-12-18 3.4 Tableaux für ALC (Echte) aussagenlogische Tableaux plus Γ, ϕ1 , . . . , ϕn , ¬ϕ0 ¬ (ohne Einschränkung ϕ1 , . . . , ϕn , ¬ϕ0 sei kein ψ ∈ Γ) 33 Beispiel ♦(♦p ∧ ♦¬p) ¬¬(¬¬p ∧ ¬p) (¬) ¬¬(¬¬p ∧ ¬p) (¬¬) ¬¬p ∧ ¬p (∧) ¬¬p, ¬p ¬¬p ¬p (¬) p (¬¬) Anderes Beispiel: (q → ♦p), ♦q, ¬p ¬(q ∧ ¬p), ¬¬q, ¬p (¬) ¬(q ∧ ¬p), ¬¬q, ¬p (¬¬) ¬(q ∧ ¬p), q, ¬p (¬∧) ¬q, q, ¬p ¬¬p, q, ¬p (¬) p, ¬p ⊥ ⊥ Label Γ ist propositional saturiert genau dann, wenn Γ keine Formeln ϕ ∧ ψ enthält, und ¬ψ nur für ψ = q. (Dass heißt Γ = ±q1 , . . . , ±qn , ±ϕ1 , . . . , ±ϕk ± ∈ {·, ¬}). Äquivalente Formulierung: Auf Γ ist keine propositionale Regel anwendbar. Γ heißt blatant inkonsistent genau dann, wenn q, ¬q ∈ Γ existieren. Damit formale Definition von Tableaux: • Bäume, Knoten gelabelt (OR-Knoten) • Kinder (AND-Knoten) per propositionaler Regel wenn Γ blatant inkonsistent oder nicht propositional saturiert per allen anwendbaren Instanzen von ¬ sonst Ein Knoten n heißt erfolgreich, wenn • n ein erfolgreiches Kind hat, wenn n ein OR-Knoten ist • alle Kinder von n erfolgreich sind, wenn n ein AND-Knoten ist Lemma (Korrektheit) L(n) erfüllbar ⇒ n erfolgreich. 34 Beweis Per Induktion über |L(n)|: Fall n OR-Knoten wie bisher. Fall n AND-Knoten Sei M = ((X, R), V ), x ∈ X, M, x |= L(n). Seien ϕ1 , . . . , ϕn , ¬ϕ0 ∈ L(n) ⇒ es existiert xRx0 mit x0 |= ϕi∈{1,...,n} und IV x0 |= ¬ϕ0 , also Kind n0 mit L(n0 ) = {ϕ1 , . . . , ϕn , ¬ϕ0 } erfüllbar ⇒ n0 erfolgreich. 2014-12-19 3.5 Vollständigkeit des Tableaux-Algorithmus Lemma n erfolgreich ⇒ L(n) erfüllbar. Beweis Baue Modell: Zustände sind erfolgreiche AND-Knoten Zustand q1 , . . . , qn , ¬p1 , . . . , ¬pk , ϕ1 , . . . ϕm , ¬ψ1 , . . . , ¬ψl ϕ1 , . . . , ϕn , ¬ψi Zustandsübergang = Baumstruktur AND AND AND i.A. kein Zustand Zustände Formal Setze M = ((X, R), V ) mit X ={n | n erfolgreicher AND-Knoten} nRn0 ⇔ n0 von n aus im Tableau erreichbar auf Pfad, der sonst keine Knoten in X enthält. n ∈ V (p) ⇔ p ∈ L(n) Wahrheitslemma M, n |= L(n) Beweis Zeige per Induktion über ϕ: ϕ ∈ L(n) ⇒ M, n |= ϕ • p ∈ L(n) ⇒ n ∈ V (p) ⇒ n |= p • ¬p ∈ L(n) L(n) nicht blatant inkonsistent ⇒ p 6∈ L(n) ⇒ n 6∈ V (p) ⇒ n |= ¬p • ¬¬p ∈ L(n) Da L(n) propositional saturiert ist, ebenso ¬(ϕ1 ∧ ϕ2 ), ϕ1 ∧ ϕ2 • (der Einfachheit halber ⊥ = p ∧ ¬p) 35 • ¬ϕ ∈ L(n). Dann existiert n → n0 im Tableaux mit ¬ϕ ∈ L(n0 ) und n0 erfolgreich. Es existiert n0 →k n00 (k ≥ 0) im Tableaux mit n00 erfolgreicher AND-Knoten (da n0 erfolgreich) und nRn00 . Per Induktion über k: L(n00 ) |= L(n0 ) (in propositionaler Logik) (Da L(n00 ) aus L(n0 ) durch propositionale Regeln entsteht). Insbesondere L(n00 ) |= ¬ϕ propositional. Nach IV M, n00 |= L(n00 ), also M, n00 |= ¬ϕ. • ϕ ∈ L(n). Sei nRn0 , n k 0 n ¬ n00 k−1 ϕ ∈ L(n00 ). Wie oben L(n0 ) |= L(n00 ), also L(n0 ) |= ϕ, per IV n0 |= L(n0 ), also n0 |= ϕ. Korrolar Erfüllbarkeit in K/ALC (ohne T-Box) ist entscheidbar. In der Weihnachtszeit erinnern wir uns gerne an Komplexitätsklassen: A Problem (A ⊆ {0, 1}∗ ). A ∈ PSPACE ⇔ es existiert eine Turingmaschine M , die A entschedet und O(p(n)) Bandzellen besucht für ein Polynom p (n Eingabegröße). Zu zeigen: Tableaux-Algorithmus in PSPACE implementiertbar: Unterstelle für alle ORKnoten Auswahl einer propositionalen Regel. Für AND-Knoten sind alle (¬)-Instanzen ausgewählt“. ” Deterministischer Algorithmus SAT(Γ) ( ist Γ erfüllbar?“) per Rekursion: ” Γ0 SAT(Γ) ⇔ alle für Γ ausgewälten Regelninstanzen (mit Γ0 ⊆ Γ) haben Γ1 | . . . | Γn SAT(Γi ) für ein i ∈ {1, . . . , n} Rekursionsstack: Tiefe O(n), Stackframe: O(n), also Platz O(n2 ) Achtung: Tableau ist insgesamt exponentiell groß, wird aber nie als Ganzes gespeichert. P ⊆ NP ⊆ NPSPACE = PSPACE ⊆ EXPTIME 6= P 2015-01-09 3.6 PSPACE-Härte QBF: Quantifizierte Boolsche Formeln: ∀X.ϕ ≡ ϕ[X 7→ >] ∧ ϕ[X 7→ ⊥] ∃X.ϕ ≡ ¬∀X.¬ϕ ϕ geschlossen (FV(ϕ) = ∅) ⇒ ϕ evaluiert zu > oder ⊥. TQBF = {ϕ ∈ QBF geschlossen | ϕ war} 36 TQBF ∈ PSPACE: Definiert Funktion True(ϕ): True(⊥) = ⊥ True(¬ϕ) = ¬ True(ϕ) True(ϕ ∧ ψ) = True(ϕ) ∧ True(ψ) True(∀X.ϕ) = True(ϕ[X 7→ >]) ∧ True(ϕ[X 7→ ⊥]) linear tiefer Stack, linear große Stack Frames, also Platz O(n2 ). Turingmaschinen-Konfiguration in Platz s: q Zustand der Kontrolleinheit C = (q, p, t) mit p Kopfposition 1 ≤ p ≤ s t Bandinhalt auf Positionen 1 . . . s Größe: q O(1) p log(s) t O(s) Lemma Es existiert eine aussagenlogische Formel ϕsM zu Turingmaschine M und Platzschranke s, so dass für Konfigurationen C, C 0 in Platz s ϕsM (C, C 0 ) ⇔ C geht in M in einem Schritt nach C 0 über mit |ϕsM | ∈ O(s2 ): Beweis Sei C = (q, p, t), C 0 = (q 0 , p0 , t0 ) O(log(s)) }| { ^ z ϕsM (C, C 0 ) = (q = q0 ∧ p = p0 ∧ t@p = b0 ) → ( q 0 = nextstate(q0 , b0 ) O(log(s)) 0 O(1) ∧ p = nextpos(q0 , b0 , p0 ) | ∧ t @p0 = nextsymb(q0 , b0 ) ^ ∧ t0 @p̄ = t@p̄) | {z } {z O(s) Konjunkte } O(1) 0 q0 ∈Q,p0 ∈{1,...,s} b0 ∈Σ O(s) p̄6=p0 O(1) p̄∈{1,...,s} Gesamt: O(s2 ) Satz TQBF ist PSPACE-hart. 37 Beweis Sei M ∈ space(p(n)), p Polynom Baue Reduktion f : {x | M (x) = 1} → TQBF (d.h f : {0, 1}∗ → QBF, f (x) ∈ TQBF ⇔ M (x) = 1) Prinzip: f (x) = ϕ(Cinit,x , Cacc ) mit Cinit,x = (qinit , 1, x), Cacc = (qacc , 1, 1 ( ja“)) ” 2s mit ϕ(C, C 0 ) ⇔ M ` C → C 0 (s = p0 (n), p0 Polynom) Idee 1 ϕ(C, C 0 ) = ∃C0 , . . . , C2p0 (n) .C0 ∧ C 0 = C2p0 (n) | {z } ∧ ∀i=0,...,2p0 (n)) −1.(ϕsM (Ci , Ci+1 ) ∨ Ci = Ci+1 ) exponentiell viele i Idee 2 ϕ(C, C 0 ) = ϕs (C, C 0 ) mit ϕi (C, C 0 ) = M ` C →2 C 0 rekursiv definiert: ϕ0 (C, C 0 ) = ϕsM (C, C 0 ) ϕi+1 (C, C 0 ) = ∃C 00 . ϕi (C, C 00 ) ∧ ϕi (C 00 , C 0 ) {z } | Dopplung, also exponentielle Größe Idee 3 Abkürzen per ∀ Äquivalent ϕi+1 (C, C 0 ) = = ∃C 00 . ∀D1 , D2 . (D1 = C ∧ D2 = C 00 ) ∨ (D1 = C 00 ∧ D2 = C 0 ) → ϕi (D1 , D2 ) ⇒ O(s) Kein Blowup Platzverbrauch: |ϕ1 | = O(s2 ), Σ|ϕi | = s · O(s), also wieder O(s2 ), Formel leicht auszurechnen. ⇒ Reduktion in ptime Zeige: Erfüllbarkeit in K (beziehungsweise jeder Logik L mit K ⊆ L ⊆ S4) ist PSPACEhart per Reduktion von TQBF. Recall: Pränexe Normalform: Q1 X1 . . . Qn Xn .ϕ, Qi ∈ {∀, ∃}, ϕ quantorenfrei Fakt: Zu jeder QBF existiert eine äquivalente polymoniell große pränexe Normalform. (Beweis wie in FOL) Also: TQBF ist PSPACE-hart auch bei Einschränkung auf pränexe Normalform. 38 2015-01-15 Definition Ein Quantorenbaum für ϕ = Q1 X1 . . . Qn Xn .ϕ0 wie oben ist ein 2-1-Baum uniformer Tiefe n, dessen Knoten v mit L(v) ∈ {⊥, >} beschriftet sind, so dass ( 1-verzweigend wenn Qi = ∃ • Knoten in Ebene i: 2-verzweigend wenn Qi = ∀ • Kinder von 2-verzweigenden Knoten haben verschiedene Label • für Pfad v0 . . . vn gilt [X1 7→ L(V1 ), . . . , Xn 7→ L(Vn )] |= ϕ0 Beispiel: ∀X.∃Y (X ↔ ¬Y ) q0 · ⊥ > ∀X ∃Y X→⊥ > Y →> X → > q1 ⊥ Y → ⊥ q2 ⊥ ↔ ¬> > ↔ ¬⊥ Lemma ϕ geschlossene QBF: ϕ wahr ⇔ es existiert ein Quantorenbaum für ϕ. Beweis ϕ = Q1 X1 . . . Qn Xn .ϕ0 ⇒“ Fall 1: Q1 = ∀. Dann sind ” ϕ> = Q2 X2 . . . Qn Xn .ϕ0 [X1 7→ >], ϕ⊥ = Q2 X2 . . . Qn Xn .ϕ0 [X1 7→ ⊥] · IV wahr. ⇒ es existieren Quantorenbäume T⊥ , T> für ϕ⊥ , ϕ> . renbaum für ϕ. Fall 2 ist ähnlich. ⊥ T⊥ T⊥ ⇐“ Sei T ein Quantorenbaum für ϕ. ” · Fall 1: Q1 = ∃, dann > b . Per Induktion ist ϕb wahr, also ϕ wahr. Tb 39 ist Quanto- Idee für die Reduktion Kontrolliere Baumstruktur durch propositionale Atome q0 , . . . , qn für die Ebenen des Baumes. Konstruiere zu ϕ = Q1 X1 . . . Qn Xn .ϕ0 modales f (ϕ) mit: ϕ hat Quantorenbaum ⇔ f (ϕ) erfüllbar (3.1) f (ϕ) Konjunktion von (i) q0 : sind an der Wurzel ^ (ii) ≤n (qi → ¬qj ) i = 0, . . . , n; j = 0, . . . , n j6=i (iii) i (qi → ♦qi+1 ) i = 0, . . . , n − 1, Qi+1 = ∃ (iv) i (qi → (♦(qi+1 ∧ Xi+1 ) ∧ ♦(qi+1 ∧ ¬Xi+1 ))), i = 0, . . . , n − 1, (Qi+1 = ∀) (v) ≤n−1 (qi → ((Xj → Xj ) ∧ (¬Xj → ¬Xj ))) q ≤ j ≤ i, i = 1, . . . , n (vi) n (qn → ϕ0 ) Polynomiell groß, leicht zu berechnen. Zeige (3.1), genauer: ⇒“ f (ϕ) erfüllbar in S4: ” Konstruiere ((X, R), V ), X = Knoten im Quantorenbaum T ; R = Abstammung in T : vRw ⇔ es existiert ein Pfad v · · · w; V (qi ) = Knoten der i-ten Ebene V (Xi ) = {w | es {z v in Ebene }i mit L(v) = >, vRw} | existiert ein v∈V (qi ) v0 Wurzel von T , dann (X, R) S4, ((X, R), V ), v0 |= f (ϕ) ⇐“ Sei M = ((X, R), V ) K-Modell mit M, x0 |= f (ϕ). Konstruiere Quantorenbaum T ” induktiv als Teilmenge von X mit Nachfolgerrelation ⊆ R top-down. I.A. Ebene 0: x0 I.S. Seien Ebenen 0, . . . , i−1 konstruiert. Sei v Knoten in Ebene i−1, also M, v |= qi−1 • Fall 1: Qi = ∃: Nach (iii) gilt M, v |= qi → ♦qi , also existiert ein v 0 mit vRv 0 , v 0 |= qi : Mache v zu Kind von v, L(v 0 ) = > ⇔ v 0 ∈ V (Xi ). • Fall 2: ähnlich Sei nun v0 , . . . , vn Pfad in so konstruierten T . Behauptung Für j ≥ i: vj ∈ V (Xi ) ⇔ L(vi ) = > Beweis Induktion über j − i: IA nach Konstruktion, IS per (v). Also vn ∈ V (Xi ) ⇔ l(vi ) = >. Nach (vi) M, vn |= ϕ0 , also [X1 7→ l(v1 ), . . . , Xn 7→ l(vn )] |= ϕ0 . 40 Satz Erfüllbarkeit in L PSPACE-hart für K ⊆ L ⊆ S4. 2015-01-16 3.7 EL ϕ ::= > | p | ϕ ∧ ψ | ♦ϕ Reasoning-Problem: Subsumption (T ) |= ϕ v ψ ? positive Formeln: ϕ ::= |{z} ... | ⊥ | ϕ ∨ ψ wie EL Lemma Positive Formeln sind monoton, dass heißt, ((X, R), V ), x |= ϕ, V (p) ⊆ V 0 (p) für alle p ⇒ ((X, R), V 0 ), x |= ϕ. Lemma (Simulationsstabilität) positive Formeln ϕ sind stabil unter Simulation S, dass heißt wenn xSy und x |= ϕ, dann y |= ϕ. Beweis Induktion über ϕ. x |= p ⇒ y |= p, da S Simulation ⊥,> trivial IV x |= ϕ ∧ ψ ⇒ x |= ϕ und x |= ψ ⇒ y |= ϕ und y |= ψ ⇒ y |= ϕ ∧ ψ x |= ϕ ∨ ψ analog x |= ♦ϕ ⇒ ∃x0 mit x → x0 , x0 |= ϕ x y S ∃ x0 S IV ⇒ y 0 |= ϕ ⇒ y |= ♦ϕ y0 Definition Ein punktiertes Modell M, x heißt Materialisator von ϕ, wenn ∀N, y. N, y |= ϕ ⇔ es existiert eine Simulation S mit xSy Fakten Wenn M, x Materialisator von ϕ (i) M, x |= ϕ (Wähle N, y = M, x, S = {(x0 , x0 ) | x0 ∈ . . .}) (ii) ϕ v ψ für ψ positiv ⇔ M, x |= ψ. Denn: Wenn N, y |= ϕ, dann existiert eine Simulation S mit xSy, also per Simulationsstabilität1 N, y |= ψ, dass heißt ϕ v ψ (Umkehrung trivial). 1 Anm. d. Red: Und M, x |= ψ 41 (ii) liefert Algorithmus in PTIME (in der Größe von M ). Satz Jede EL-Formel hat einen Materialisator. Beweis Definiere zu ϕ Materialisator Mϕ,xϕ rekursiv. ϕ hat“ Form ϕ ≡ p1 ∧ . . . ∧ pn ∧ ” ♦ψ1 ∧ . . . ∧ ♦ψk , k, n ≥ 0 xϕ · Konstruiere Mϕ,xϕ , als xψ1 p1 , . . . , pn xψk ··· Mψ1 Mψk Per Simulationsstabilität reicht: (i) Mϕ,xϕ |= ϕ (ii) ∀N, y. (N, y |= ϕ ⇒ es existiert eine Simulation S mit xSy) (i) klar (ii): Setze S = {(xχ , y) | y |= χ}. Behauptung: S ist Simulation. Beweis: Sei (xχ , y) ∈ S. y|=χ (i) Sei xχ |= p. Dann ist p ein Konjunkt von χ ⇒ y |= p xχ S y , dann ist ♦ρ Konjunkt von χ, also y |= ♦ρ, also existiert y 0 mit (ii) Sei xρ S y → y 0 und y 0 |= ρ, also xρ Sy 0 . y0 2015-01-23 3.8 TBoxen in EL Klassische TBoxen: A1 = C1 A2 = C 2 . . . Ai paarweise verschieden, dürfen aber beliebig in den Ci vorkommen. Semantiken: deskriptiv“ AIi = CiI (wie bisher) ” gfp greatest fixpoint (oder lfp) Beispiele: 42 Engendered = ∃ engenderedBy.Engendered gfp: · → · → · → · · · lfp: ⊥ Lion = ∃hasParent.Lion Tiger = ∃hasParent.Tiger gfp: Lion = Tiger 3.9 Fixpunkte = Lösung von F (x) = x, nicht immer eindeutig (siehe oben). wähle Lösung anhand Ordnung. Recall • (X, ≤) Ordnung ⇔ ≤ ist reflexiv, transitiv und antisymmetrisch. • (X, ≤) ist ein vollständiger Verband ⇔ jedes A ⊆ X hat Supremum. Recall • x obere Schranke von A (x ≥ A) ⇔ ∀y ∈ A. x ≥ y. • x Supremum von A ⇔ x kleinste obere Schranke von A Fakt Dann hat auch jedes A ⊆ X ein Infimum: Beispiel (P(Y ), ⊆) ist vollständiger Verband: T A. W {x | x ≤ A} = W S A = V A A (für A ⊆ P(Y )). V A = X, Y vollständige Verbände ⇒ X × Y mit (x, y) ≤ (x0 , y 0 ) ⇔ x ≤ x0 ∧ y ≤ y 0 ist vollständiger Verband. Äquivalente Formulierung der Vollständigkeit: (X, ⊆) ist ein W vollständiger Verband, genau dann wenn jede Familie (xi )i∈I ∈ X I ein Supremum xi hat i∈I W W ⇒“: xi = {xi | i ∈ I} ” i∈I W W ⇐“: A = a ” a∈A W W W W W Damit Vollständigkeit von (X×Y ): (xi , yi ) = ( xi , yi ). Damit A = (x, y) = i∈I i∈I x∈I (x,y)∈A W W W W ( x, y) = ( {x | ∃y.(x, y) ∈ A}, {. . .}) (x,y)∈A (x,y)∈A 2015-01-29 43 Satz (Knaster/Tarski) Sei (X, ≤) ein vollständiger Verband und f : X → X monoton (dass heißt, x ≤ y ⇒ f (x) ≤ f (y)). Dann hat f einen kleinsten (Prä-)Fixpunkt2 µf = V {x | f (x) ≤ x} W Dual: f hat größten (Post-)Fixpunkt3 νf = {x | x ≤ f (x)} Beweis Zu zeigen: (i) µf ist Prä-Fixpunkt: f (µf ) ≤ µf , dass heißt f (µf ) ≤ x für einen Prä-Fixpunkt x: µf ≤ x f monoton ⇒ f (µf ) ≤ f (x) ≤ x (ii) µf ist Fixpunkt, dass heißt µf ≤ f (µf ) Dazu reicht: f (µf ) ist Prä-Fixpunkt. Haben laut (i) f (µf ) ≤ µf f (µf ). f monoton ⇒ f (f (µf )) ≤ Falls X endlich: Definiere für monotones f : ^ ∅ = ⊥ ≤ f (⊥) ≤ f 2 (⊥) . . . ≤ f n=|x| (⊥) = f n+1 (⊥) = . . . Behauptung (Satz von Kleene) µf = f i (⊥) = f n (⊥), wenn f n+1 (⊥) = f n (⊥). W Reicht: µf ist kleinster Fixpunkt. Klar: µf ist Fixpunkt. Sei f (x) = x, zu zeigen ist µf ≤ x. Dazu reicht“: f i (⊥) ≤ x für alle i. Per Induktion ” über i: f 0 (⊥) = ⊥ f i+1 (⊥) f monoton, IV ≤ f (x) = x Terminiert für X = P(Y ), ≤ = ˆ ⊆ in |Y | Schritten. 3.9.1 EL und klassische TBoxen in gfp-Semantik x 1 = ϕ1 .. . (Jx1 K, . . . , Jxn K) := νF dabei Jxi KV = V(xi ) x n = ϕn 2 3 x Prä-Fixpunkt ⇔ f (x) ≤ x x Post-Fixpunkt ⇔ x ≤ f (x) 44 F : P(X)n → P(X)n (A1 , . . . , An ) 7→ (Jϕ1 KV , . . . , Jϕn KV ) mit V(xi ) = Ai x1 = p1 ∧ ♦x2 Beispiel x2 = p2 ∧ ♦x1 x1 p1 s1 p1 s1 |= x1 s2 p2 x2 p2 x1 p1 s2 |= x2 x2 ... p2 Lemma (Simulationsstabilität mit gfp) Sei T klassische EL-TBox mit gfp-Semantik. T = {xi = ϕi | i = 1, . . . , n}, M, w |= xi , S Simulation zwischen M und N und es gelte wSv. Dann v |= xi . Beweis S[A] = {v | ∃w ∈ A, wSv} für A ⊆ X S[V](xi ) = S[V(xi )], Behauptung: S [JϕKV ] ⊆ JϕKS[V] Induktion über ϕ: u trivial, ♦, p wie bisher. ϕ = xi : w ∈ V(xi ), wSv ⇒ v ∈ S[V](xi ) = S[V(xi )] ⇒ v ∈ Jxi KS[V] Zu zeigen jetzt: S [Jxi KM ] ⊆ Jxi KN Koinduktion:4 Reicht: (S[Jxi KM ])i=1,...,n ist Post-Fixpunkt von F mit F (A1 , . . . , An ) = (Jϕi K[x1 7→A1 ,...,xn 7→An ] )i=1,...,n , dass heißt S[Jxi K ]M ⊆ Jϕi K[xi 7→S[Jxi KM ]]i=1,...,n . Gezeigt, siehe |{z} =Jϕi K[xi 7→Jxi KM ] Behauptung. Normalisierung In xi = ϕi hat ϕi ohne Einschränkung folgende Form: ϕi = p1 ∧ . . . ∧ pk ∧ ♦xi1 ∧ . . . ∧ ♦xim Zum Beispiel x1 = x2 ∧ ♦ϕ1 x2 = x1 ∧ ♦ϕ2 ersetze x2 durch x1 , x1 = x1 ∧ ♦ϕ2 ∧ ♦ϕ1 , also x1 = x2 gfp dass heißt x1 v ♦ϕ1 ∧ ♦ϕ2 ⇔ x = ♦ϕ1 ∧ ♦ϕ2 Materialisator MT : XT = {x1 , . . . , xn } VT (p) = {xi | p ∈“ ϕi } ” xi RT xj ⇔ ♦xj ∈“ ϕi ” Lemma MT , xi |= xi 4 Koinduktion: x Post-Fixpunkt von f ⇒ x ≤ νf 45 Beweis Koinduktion: Reicht ({x1 }, . . . , {xn }) ist Post-Fixpunkt, dass heißt xi ∈ Jϕi K[xi 7→{xi }]i=1,...,n , gilt nach Konstruktion. Lemma N, y |= xi ⇒ Es existiert eine Simulation S mit xi Sy. xi S y Beweis S := {(xi , y) | N, y |= xi } ist Simulation. Sei xj y0 xi RS xj ⇒ ♦xj ∈ ϕi ⇒ y |= ♦xj ⇒ es existiert ein y 0 mit y → y 0 und y 0 |= xj , also xj Sy 0 . PTIME (O(n2 )) z }| { T |= xi v xj ⇔ MT , xi |= xj , denn: ⇒“ klar, ⇐“ per letztem Lemma und Simulationsstabilität. ” ” 46