Tableau-Methodik Exkurs: Beweisen mit Tableau Semantische Tableau ergeben ein Beweisverfahren, mit dem ähnlich wie mit der Resolution eine Formel dadurch bewiesen wird, dass ihre Negation als widersprüchlich abgeleitet wird (proof by refutation). Erster Algorithmus (für ALC) [Schmidt-Schauß und Smolka, 1991]. Erweiterungen für: ◮ Zahlenrestriktion [Baader, 1991] ◮ Transitive Relationen [Sattler, 1996] ◮ Konkrete Bildbereiche, z. B. Zahlen [Baader und Hanschke, 1991] ◮ ... Es wird ein Baum konstruiert, in dem jeder Knoten mit einer Formel markiert ist. Ein Pfad von der Wurzel zu einem Blatt stellt die Konjunktion aller Formeln der Knoten entlang des Pfads dar; eine Verzweigung stellt eine Disjunktion dar. Der Baum wird aufgebaut durch sukzessive Anwendung der Tableau-Erweiterungsregeln. Inzwischen existieren hoch-optimierte Tableau-Algorithmen für eine Reihe von beschreibungslogischen Sprachen, die sich auch im Vergleich mit klassischen Beweisern gut schlagen (vgl. mit TABLEAUX/TANCS’99 Benchmark). Idee: Ein Pfad in einem Tableau ist abgeschlossen, wenn entlang des Pfads sowohl X wie ¬X für eine Formel X auftreten, oder wenn F (false) auftritt (X muss nicht atomar sein). Ein Tableau heißt abgeschlossen, wenn alle seine Pfade abgeschlossen sind. Man entscheidet die Unerfüllbarkeit eines Begriffs C, indem man systematisch versucht ein Modell von C zu konstruieren. Ist dies erfolgreich, ist C erfüllbar, sonst nicht. SS07, T. Liebig, Uni Ulm Auswahl der Regeln bei der Erweiterung sind z. T. nichtdeterministisch. Tableau-Beweis für eine Formel X ist ein abgeschlossenes Tableau für ¬X . 2 - 165 Tableau-Erweiterungsregeln SS07, T. Liebig, Uni Ulm Tableau-Beweis: Beispiel (1) Aussagenlogischer Tableau-Beweis für (P ⇒ (Q ⇒ R)) ⇒ ((P ⇒ Q) ⇒ (P ⇒ R)): Für Aussagenlogik: ¬W F ¬¬X X ` ´ (1) ¬ (P ⇒ (Q ⇒ R)) ⇒ ((P ⇒ Q) ⇒ (P ⇒ R)) ¬F W (α aus 1) (2) (P ⇒ (Q ⇒ R)) Für konjunktive Formeln (“α-Regeln”): α α1 α2 2 - 166 X ∧Y X Y ¬(X ∨ Y ) ¬X ¬Y (α aus 1) ` ´ (3) ¬ (P ⇒ Q) ⇒ (P ⇒ R) ¬(X ⇒ Y ) X ¬Y (α aus 3) (4) (P ⇒ Q) Für disjunktive Formeln (“β-Regeln”): β β1 | β2 X ∨Y X | Y ¬(X ∧ Y ) ¬X | ¬Y (α aus 3) X ⇒Y ¬X | Y (5) ¬(P ⇒ R) (α aus 5) SS07, T. Liebig, Uni Ulm 2 - 167 SS07, T. Liebig, Uni Ulm 2 - 168 Tableau-Beweis: Beispiel (2) Tableau-Verfahren für Prädikatenlogik (α aus 5) Tableau-Erweiterungsregeln für Prädikatenlogik: (6) P (α aus 5) (7) ¬R Q Q (β aus 2) Q Q Q (8) ¬P (9) Zusätzlich die folgenden Regeln für die Behandlung quantifizierter Formeln: δ γ γ[t] δ[c] γ ∀x.Φ ¬∃x.Φ (11) R Q Q (β aus 4) Q Q Q γ[t] Φ[x := t] ¬Φ[x := t] δ ∃x.Φ ¬∀x.Φ δ[c] Φ[x := c] ¬Φ[x := c] Hierbei sind t ein Grundterm (oder allgemeiner: ein Term, der keine Variablen enthält, die in Φ gebunden sind) und c eine “neue” Konstante. (13) Q SS07, T. Liebig, Uni Ulm 2 - 169 Tableau-Regeln mit Variablen SS07, T. Liebig, Uni Ulm 2 - 170 Tableau-Verfahren: Eigenschaften Statt geeignete Instanzen der γ- und δ-Regeln zu “erraten”, können auch freie Variablen und Skolem-Funktionen in der Erweiterung benutzt werden. Tableau-Erweiterungsregeln mit Skolem-Funktionen und freien Variablen δ γ γ[v ] δ[f (v1 , .., vn )] Sätze über das Tableau-Verfahren: 1. Erfüllbarkeit wird durch die Tableau-Regeln erhalten: wenn die Wurzel-Formel eines Tableaus erfüllbar ist, dann gibt es mindestens einen Pfad im Tableau, der erfüllbar ist. 2. Eine Tableau-Formel G ist unerfüllbar genau dann, wenn ein geschlossenes Tableau für G existiert. (Korrektheit und Widerlegungsvollständigkeit des Verfahrens) Hierbei sind v eine neue Variable, f eine neue Skolem-Funktion, v1 , . . . , vn alle bisher in dem betreffenden Zweig des Tableaus eingeführten freien Variablen. Das Verfahren kann auf unerfüllbare Mengen von Formeln erweitert werden. Tableau-Verfahren werden zunehmend auch für maschinelles Beweisen herangezogen, als Alternative zu Resolution. Wegen der relativ einfachen Modifierbarkeit der Dekompositionsregeln werden Tableau-Verfahren insbesondere auch für andere Logiken (wie intuitionistische Logik, Modal-Logiken) entwickelt. Tableau-Substitutionsregel: T sei ein Tableau für eine Menge S von geschlossenen Formeln, σ eine Substitution, die frei für T (d. h. frei für alle Formeln in T ) ist; dann ist σ(T ) (d. h. jede Formel X in T durch σ(X ) ersetzt) auch eine Tableau für S. Eine elementar Substitution {x ← t} ist frei für eine Formel P, wenn x in P nicht im Bindungsbereich einer Variablen y vorkommt, die auch in t vorkommt. Eine Substitution σ ist frei für eine Formel P, wenn jede ihrer Elementar-Substitutionen frei für P ist. SS07, T. Liebig, Uni Ulm ◮ γ[t] und δ[c] ergeben sich aus den folgenden Tabellen: Q Q (β aus 9) Q Q Q (12) ¬P Erweiterungsregeln wie für Aussagenlogik – in den Regeln stehen X und Y dann für beliebige (prädikatenlogische) Formeln γ ist eine universell quantifizierte Formel, δ eine existentiell quantifizierte Formel. (Q ⇒ R) (10) ¬Q ◮ Seit einiger Zeit gibt es sogar eine eigene Tagungsreihe speziell für Beweisen mit Tableaus. 2 - 171 SS07, T. Liebig, Uni Ulm 2 - 172 Tableau-Verfahren und Resolution Tableau-Methode in Beschreibungslogiken: (einf. Bsp. 1) Gemeinsamkeiten: TBox: T ◮ Beweis durch Widerlegung ◮ ausgehend von der zu beweisenden (bzw. zu widerlegenden) Formel ◮ Steuerung durch Auswahl-Strategien C = ˙ ∃r .A ⊓ ∃r .B D = ˙ ∃r .E E = ˙ A⊓B Unterschiede: ◮ ◮ ◮ Fragestellung: Resolution setzt Transformation der Formeln in Klauselform voraus; Tableau-Verfahren nimmt in gewisser Weise eine Transformation während der Konstruktion des Tableau vor, d. h. Tranformation ist Teil der Regeln. C D Reduktionen: ∃r .A ⊓ ∃r .B ⊑ ∃r .(A ⊓ B) 1. Auffalten: Resolution erfordert Reduktion auf leere Klausel für erfolgreichen Beweis; Tableau-Verfahren kann (im Prinzip) erfolgreich stoppen, ohne dass die Formel vollständig auf Atome reduziert ist. 2. Reduktion auf Unerfüllbarkeit: ∃r .A ⊓ ∃r .B ⊓ ¬(∃r .(A ⊓ B)) unerfüllbar? 3. Negationsnormalform (Negationen nach innen schieben): F = ∃r .A ⊓ ∃r .B ⊓ ∀r .(¬A ⊔ ¬B) Es ist im allgemeinen einfacher, aus einem nicht weiter reduzierbaren Tableau ein Modell (und damit ein Gegenbeispiel) abzulesen, als aus einem fehlgeschlagenen Resolutionsbeweis. SS07, T. Liebig, Uni Ulm ⊑T 4. Versuch, ein Modell für F zu konstruieren: 2 - 173 Tableau-Methode: allg. Vorgehensweise (einf. Bsp. 2) SS07, T. Liebig, Uni Ulm 2 - 174 Tableau-Methode: allg. Vorgehensweise (einf. Bsp. 3) 1. Annahme: Es existiert ein Element a in der Interpretation des Begriffs F , d. h. a ∈ (∃r .A ⊓ ∃r .B ⊓ ∀r .(¬A ⊔ ¬B))I (a, b) b b 2. Dann muss dieses a auch in der Interpretation aller Konjunkte liegen: ∈ ∈ ∈ rI A I (¬A ⊔ ¬B) I (a, c) ∈ rI c ∈ BI c ∈ (¬A ⊔ ¬B)I a ∈ (∃r .A)I a ∈ (∃r .B)I a ∈ (∀r .(¬A ⊔ ¬B)I a : {∃r .A, ∃r .B, ∀r .(¬A ⊔ ¬B)} e 3. Dann muss es auch Elemente b und c geben, so dass (a, b) ∈ r I und (a, c) ∈ r I b ∈ AI und und r c ∈ B I und b ∈ (¬A ⊔ ¬B)I c ∈ (¬A ⊔ ¬B) SS07, T. Liebig, Uni Ulm e und b : {A} I 2 - 175 SS07, T. Liebig, Uni Ulm @ @ @ r @ @ @ R @ e c : {B} 2 - 176 Tableau-Methode: allg. Vorgehensweise (einf. Bsp. 3) (a, b) ∈ rI I b ∈ A b ∈ (¬A ⊔ ¬B)I Tableau-Methode: allg. Vorgehensweise (einf. Bsp. 4) (a, c) ∈ rI c ∈ BI c ∈ (¬A ⊔ ¬B)I Es ist ein Modell für F gefunden (drei Individuen a, b und c existieren ohne Widerspruch). Die Subsumtionsbeziehung gilt nicht! Erweiterung des Beispiels: (Hinzunahme einer Kardinalitätseinschränkung) TBox: T ′ a : {∃r .A, ∃r .B, ∀r .(¬A ⊔ ¬B)} e r e C = ˙ ∃r .A ⊓ ∃r .B ⊓ (≤ 1 r ) D = ˙ ∃r .E E = ˙ A⊓B @ @ @ r @ @ @ R @ Fragestellung: C ⊑T ′ D Negationsnormalform: ∃r .A ⊓ ∃r .B ⊓ (≤ 1 r ) ⊓ ∀r .(¬A ⊔ ¬B) e b : {A, (¬A ⊔ ¬B)} b : {A, ¬B} c : {B, (¬A ⊔ ¬B)} c : {B, ¬A} SS07, T. Liebig, Uni Ulm 2 - 177 Tableau-Methode: allg. Vorgehensweise (einf. Bsp. 5) SS07, T. Liebig, Uni Ulm 2 - 178 Tableau-Methode: allg. Vorgehensweise (einf. Bsp. 5) Kardinalitätseinschränkung führt zur Verschmelzung der Relationsfüller (Relationsfüllereinschränkung bzgl. A fällt notwendigerweise mit dem Füller bzgl. der Einschränkung B zusammen). Kardinalitätseinschränkung führt zur Verschmelzung der Relationsfüller (Relationsfüllereinschränkung bzgl. A fällt notwendigerweise mit dem Füller bzgl. der Einschränkung B zusammen). a : {∃r .A, ∃r .B, (≤ 1 r ), ∀r .(¬A ⊔ ¬B)} a : {∃r .A, ∃r .B, (≤ 1 r ), ∀r .(¬A ⊔ ¬B)} e e r r ? e ? e b = c : {A, B, (¬A ⊔ ¬B)} Widerspruch Alternative 1: b = c : {A} Alternative 2: b = c : {B} Widerspruch b = c : {A, B, (¬A ⊔ ¬B)} Gleichsetzung der Individuen Widerspruch in allen Fällen: D. h. die Subsumtionsbeziehung gilt! SS07, T. Liebig, Uni Ulm 2 - 179 SS07, T. Liebig, Uni Ulm 2 - 180 Tableau-Methodik in Beschreibungslogiken: allg. Vorgehensweise Tableau-Verfahren für Beschreibungslogiken Um einen “optimalen” (sprich effizienten) Tableau-Algorithmus für Beschreibungslogiken zu erhalten, werden: Allgemeine Vorgehensweise um ein Modell für ein Konzept C zu finden: ◮ Tableau-Regeln nicht blind angewendet und ◮ Auffalten und Reduktion auf Unerfüllbarkeit ◮ Redundante Verifikationen vermieden bzw. zwischengespeichert. ◮ Negationsnormalform Das Modell wird durch einen Baum T abgebildet. ◮ Abstraktion: Beispiel: ∃r .C. In einer geg. Interpretation I gibt es ein a mit a ∈ (∃r .C)I . Aus der formalen Semantik des ∃-Konstruktors folgt, dass es ein b geben muss, so dass (a, b) ∈ r I und b ∈ C I . ◮ ◮ ◮ ◮ Dies gilt für alle Interpretationen, so dass von Interpretationen abstrahiert werden kann. ◮ SS07, T. Liebig, Uni Ulm ◮ 2 - 181 Tableau-Verfahren für Beschreibungslogiken: Baum Knoten repräsentieren generische Elemente der generischen Interpretation. Diese werden mit den Unterbegriffen annotiert. ◮ Kanten repräsentieren Relations-Nachfolger zwischen Elementen der generischen Interpretation. Expansion vollständig (Baum stellt ein gültiges Modell dar) Widerspruch beweist, dass kein Modell existiert ◮ Nichtdeterministische Expansion (z. B. bei C ⊔ D). ◮ Blocking sichert die Termination (bei zyklischen Sprachen). SS07, T. Liebig, Uni Ulm 2 - 182 Tableau-Verfahren für Beschreibungslogiken: Regeln (1) Und-Regel (→⊓ ): Enthält ein Knoten eine Konjunktion C ⊓ D, dann füge C und D zum Knoten hinzu (falls nicht schon dort). [x : {C ⊓ D, C, D}] Semantik: Ein generisches Individuum x muss sowohl in der Interpretation von C als auch D sein. Tableau-Regeln bauen eine Baum auf (semantisch wird eine generische ABox erzeugt): ◮ Start vom Wurzelknoten {C} Anwendung von Expansionsregeln, bis ◮ In einer generischen Interpretation arbeiten wir fortan mit generischen Elementen (x, y, z, . . .). Notation: Das generische Element x liegt in der generischen Interpretation der Konzeptbeschreibung ∃r .C, geschrieben: x : {∃r .C}. Knoten in Ts entsprechen Individuen im Modell. Restriktionen bzgl. Knoten drücken sich in Einschränkungen bzgl. Individuen aus. Kanten werden mit Relationsnamen in T annotiert. Oder-Regel (→⊔ ): Enthält ein Knoten eine Disjunktion C ⊔ D und weder C noch D, dann erzeuge zwei alternative Knoten mit einmal C und einmal D. [x : {C ⊔ D, E} mit E ∈ {C, D}] Semantik: Ein generisches Individuum x muss entweder in der Interpretation von C oder D sein. Initialisierung des Baums mit einem Wurzelknoten (generisches Element x): x : {C} Exist.-Qualif.-Regel (→∃ ): Enthält ein Knoten eine existentielle Quantifikation ∃r .C, dann erzeuge eine neue Kante r und einen neuen Knoten für ein neues generischen Individuum y mit (x, y) ∈ r ein; als Einschränkung für den neuen Knoten gilt {C} (alles falls nicht schon vorhanden). [y : {C} und x r y (Kante von x nach y mit Bezeichnung r ).] Semantik: Es muss für x bzgl. der Relation r ein generisches Individuum y geben, das in C liegt. Der Baum enthält einen Widerspruch, wenn für einen Knoten im Baum gilt: SS07, T. Liebig, Uni Ulm {A, ¬A} ⊆ {. . .} {(≥ m r ), (≤ n r )} ⊆ {. . .} für n < m oder 2 - 183 SS07, T. Liebig, Uni Ulm 2 - 184 Tableau-Verfahren für Beschreibungslogiken: Regeln (2) Tableau-Verfahren für Beschreibungslogiken: Regeln (3) Univ.-Qualif.-Regel (→∀ ): Enthält ein Knoten eine universelle Quantifikation der Art ∀r .C und es existiert eine Kante r zu y, dann füge die Einschränkung C zu y hinzu. [y : {C}] Semantik: Hinzunahme der Restriktion C für alle Füller von r . Die Regeln →⊔ und →≤ sind nicht-deterministische Regeln. D. h. sie können einen Baum in unterschiedlicher Weise expandieren. Minimum-Regel (→≥ ): Enthält ein Knoten eine Kardinalitätseinschränkung (≥ n r ) und es existieren nicht mindestens n gen. Individuen y1 , . . . , yn mit (x, yi ) ∈ r für (1 ≤ i ≤ n) und yi 6= yj für (1 ≤ i < j ≤ n), dann füge solche Individuen hinzu. Semantik: Es müssen mindestens n unterschiedliche generische Individuen als Füller von r existieren. Alle anderen Regeln sind deterministische Regeln. Die Regeln →∃ und →≥ werden als generierende Regeln bezeichnet, da sie neue generische Individuen erzeugen. Alle anderen Regeln bezeichnet man als nicht-generierende Regeln. Maximum-Regel (→≤ ): Enthält ein Knoten eine Kardinalitätseinschränkung (≤ n r ) und es existieren n + 1 paarweise verschiedene gen. Individuen y1 , . . . , yn+1 mit (x, yi ) ∈ r für alle (1 ≤ i ≤ n + 1), aber für ein Paar i 6= j ist yi 6= yj nicht im Tableau enthalten, dann verschmelze ein yi mit einem yj durch systematisches Ersetzen von yi durch yj . Semantik: Es dürfen maximal n unterschiedliche generische Individuen als Füller von r existieren. SS07, T. Liebig, Uni Ulm Eine Regel kann nur dann angewendet werden, wenn das entsprechende Konstrukt im Knoten vorhanden ist. 2 - 185 Tableau-Verfahren für Beschreibungslogiken: Einfaches Beispiel Ein Constraint ist ein syntaktisches Objekt der Art x : C oder x r z , mit C ein Begriff in NNF, r einer atomaren Relation und x, y Variablen. x : {(∀hat-kind.Mann) ⊓ (∃hat-kind.¬Mann)} x : {(∀hat-kind.Mann)} →⊓ -Regel x : {(∃hat-kind.¬Mann)} Sei I eine Interpretation. Eine I-Belegung α ist eine Funktion, die jede Variable auf ein Objekt des Universums D abbildet. Ein Constraint c = x : C (oder c = x r z) wird von einer I-Belegung α erfüllt, falls α(c) ∈ C I (oder (α(x), α(z)) ∈ r I ). e →∃ -Regel Ein System von Constraints S ist eine nicht-leere, endliche Menge von Constraints. Eine I-Belegung α erfüllt S, falls α jedes Constraint in S erfüllt. S ist erfüllbar, falls es I und α gibt, so dass α S erfüllt. x hat-kind y ? e →∃ -Regel y : {¬Mann} →∀ -Regel y : {Mann} SS07, T. Liebig, Uni Ulm 2 - 186 Tableau als Constraint-System Fragestellung: Sind ∀hat-kind.Mann und ∃hat-kind.¬Mann disjunkt? Reduktion: Ist ((∀hat-kind.Mann) ⊓ (∃hat-kind.¬Mann)) unerfüllbar? →⊓ -Regel SS07, T. Liebig, Uni Ulm Theorem. Ein ALC-Begriff C in NNF ist erfüllbar, gdw. das System x : C erfüllbar ist. 2 - 187 SS07, T. Liebig, Uni Ulm 2 - 188 Tableau-Verfahren: Theoreme Tableau-Verfahren zu Beschreibungslogiken: Eigenschaften Aufgrund nicht-deterministischer Regeln können exponentiell viele geschlossene Constraint-Systeme entstehen. Theorem (Invarianz). Seien S und T Constraint-Systeme: 1. Falls T aus S durch Anwendung einer deterministischen Regel gewonnen wurde, dann ist S erfüllbar, gdw. T erfüllbar ist. Selbst ein einzelnes Constraint-System kann exponentielle Größe haben. 2. Falls T aus S durch Anwendung einer nicht-deterministischen Regel gewonnen wurde, dann ist S erfüllbar, falls T erfüllbar ist. Weiterhin gilt, dass falls eine nicht-deterministische Regel auf S anwendbar ist, dann kann sie so angewendet werden, dass S erfüllbar ist, gdw. T erfüllbar ist. Beispiel: ∃r .A ⊓ ∃r .B ⊓ ∀r .( ∃r .A ⊓ ∃r .B ⊓ ∀r .( ∃r .A ⊓ ∃r .B ⊓ ∀r .(. . .) )) n Erzeugt 2 viele Variablen bei einer Verschachtelungstiefe von n. Theorem (Terminierung). Sei C ein ALC-Begriff in NNF. Dann gibt es keine unendlichen Ketten von Transformationsschritten ausgehend von x : {C}. Der Speicherplatzbedarf kann jedoch polynomiell begrenzt werden, indem jeweils nur eine Variable für ein ∃r .C erzeugt wird und Tiefenexpansion angewendet wird: Ein Constraint-System ist abgeschlossen, falls keine weiteren Transformationsregeln angewendet werden können. Theorem (Abgeschlossenheit). Ein abgeschlossenes Constraint-System ist erfüllbar, gdw. es keinen elementaren Widerspruch, d. h. Paar der Form x : A und x : ¬A wobei A atomar, enthält. SS07, T. Liebig, Uni Ulm 2 - 189 Tableau-Verfahren: Spracherweiterungen Der Tableau-Algorithmus kann um folgende Konstrukte erweitert werden (PSpace): ◮ ALC mit qualifizierender Kardinalitätseinschränkung ((≤ n r C) und (≥ n r C)) ◮ ALC mit inversen Relationen (z. B. hat-kind− ) ◮ ALC mit Relationskonjunktion (∃(r ⊓ s).C und ∀(r ⊓ s).C) ◮ TBox mit azyklischen abgeleiteten Konzeptdefinitionen A = ˙ C Normales Auffalten kann jedoch zu exponentiellem Aufblähen führen. “Auffalten nach Bedarf” (lazy unfolding) erlaubt Konsistenzüberprüfung in PSpace. Problematischer sind: ◮ ◮ ◮ TBox mit GCI’s Ci ⊑ Di . Zu jedem Knoten muss ¬Ci ⊔ Di hinzugefügt werden. Transitiver Abschluss von Relationen r ∗ . Z. B. ∀r ∗ .C führt zu C in allen r -Nachfolgern Zyklische TBoxen ( SS07, T. Liebig, Uni Ulm Termininierungsproblem) 2 - 191 ◮ Pfade in einem Tableau sind voneinander unabhängig ◮ Ein Widerspruch in einem Pfad hängt nur von Regeln/Knoten in diesem Pfad ab ◮ Ein Pfad hat lediglich polynomielle Tiefe SS07, T. Liebig, Uni Ulm 2 - 190