Einführung in Schließen über Gleichheit Saskia Sandow 716445 7. September 2005 Zusammenfassung . Das Gleichheitsprädikat = ist das am häufigsten genutzte Prädikat und spielt eine spezielle Rolle im automatischen Beweisen. Im folgenden wird am Beispiel zweier Methoden gezeigt, wie Logik mit Gleichheit in Logik ohne Gleichheit transformiert wird. Desweiteren wird die Behandlung von Gleichheit in resolutionsbasierten Beweistechniken am Beispiel der Paramodulation und in folgenden Sequenzensystemen betrachtet: Sequenzenkalkül, Tableauxkalkül und Konnektionskalkül. 1 Gleichheit und Gleichheitsaxiome Gleichheit kommt oft in mathematischen Theoremen, aber auch in vielen Bereichen der Informatik, in denen Logik erster Ordnung benutzt wird, vor. Dabei wird angenommen, dass das Gleichheitsprädikat gewisse Gleichheitsaxiome erfüllt. Gleichheitsaxiome in Logik erster Ordnung: Reflexivität: Symmetrie: Transitivität: Funktionssubstitutivität: Prädikatssubstitutivität: . x=x . . x=y⇒y=x . . . x=y∧y =z ⇒x=z . . . x1 = y1 ∧ ... ∧ xn = yn ⇒ f (x1 , ..., xn ) = f (y1 , ..., yn ) für ein beliebiges Funktionssymbol f . . . x1 = y1 ∧ ... ∧ xn = yn ⇒ P (x1 , ..., xn ) = P (y1 , ..., yn ) für ein beliebiges Prädikatssymbol P Prinzipiell kann zu jedem Theorem ϕ mit Gleichheit die Konjunktion χ dieser Axiome als Prämisse hinzugefügt werden, um dann ∀χ ⇒ ϕ mit Hilfe einer existierenden Methode für Logik ohne Gleichheit zu beweisen. Dies führt jedoch zu einer kombinatorischen Explosion auf Grund der universellen Anwendbarkeit der Gleichheitsaxiome. Statt spezielle Methoden für die Behandlung von Gleichheit einzuführen, gibt es ”effiziente” Transformationen von Logik mit Gleichheit in Logik ohne Gleichheit. ”Effizient” meint dabei, dass das Hinzufügen der Gleichheitsaxiome vermieden werden soll. Zwei solcher Transformationsmethoden werden im folgenden Kapitel vorgestellt. 1 2 Transformation von Logik mit Gleichheit in Logik ohne Gleichheit Betrachtet werden zwei Beispiele von Methoden zur Transformation von Logik mit Gleichheit in Logik ohne Gleichheit: 1. Modifikationsmethode oder Brand’s Transformation (Brand 1975) 2. Gleichheitseliminierung mit Constraints (Bachmair, Ganzinger, Voronkov 1998). Beide Methoden werden auf eine Klauselmenge angewendet, d.h. die Formeln müssen in Klauselform umgewandelt werden. Das Prinzip der Transformation ist eine Folge von Transformationsschritten, wobei durch jeden Schritt die Notwendigkeit mindestens eines Gleichheitsaxioms eliminiert wird. Für die Betrachtung der beiden Methoden werden folgende Annahmen getroffen: . Die Formel liegt in Klauselform vor und = ist das einzige Prädikatssymbol. 2.1 Modifikationsmethode Teilen, dem Abflachen, der Symmetrieeliminierung und der Transitivitätseliminierung. 1. Abflachen Das Abflachen eliminiert die Notwendigkeit der Funktions- und Prädikatssubstitutivität. I Eine Klausel heißt flach, falls alle Vorkommen von Termen, die nicht Variablen sind, Argumente vom Gleichheitsprädikat sind. I Eine Klausel heißt flache Form einer Klausel C, falls sie flach und äquivalent zu C ist. Jede Klausel kann durch folgende Abflachungstransformation in eine äquivalente flache Klausel überführt werden: . C[f (t)] ⇒ t = 6 y ∨ C[f (y)] wobei y eine neue Variable ist. Das Ergebnis des Abflachens wird in folgendem Theorem von Brand (1975) beschrieben: Theorem 2.1 Eine Menge von flachen Klauseln ist erfüllbar gdw. sie ein Mo. dell besitzt, in dem = als Äquivalenzrelation interpretiert wird. Statt also alle Gleichheitsaxiome zu der Menge von flachen Klauseln hinzuzufügen, müssen nur solche Axiome hinzugefügt werden, die ausdrücken, dass . = eine Äquivalenzrelation ist: . x=x Reflexivität . . x= 6 y∨y =x Symmetrie . . . x= 6 y∨y = 6 z ∨ x = z Transitivität 2. Symmetrieeliminierung 2 I Eine symmetrische Version von C ist eine beliebige Klausel, die man aus . C erhält, wenn man eine oder mehrere positive Gleichungen s = t durch . t = s ersetzt. I Symmetrieeliminierung ersetzt jede Klausel durch all ihre symmetrischen Versionen. Symmetrieeliminierung produziert 2n Klauseln aus einer Klausel mit n positiven Gleichungen. Das folgende Theorem beschreibt das Ergebnis der Symmetrieeliminierung: Theorem 2.2 Sei N eine Menge flacher Klauseln und N 0 die Menge, die man durch Symmetrieeliminierung aus N erhält. Dann ist N unerfüllbar in Bezug auf . Gleichheit gdw. es kein Modell für N 0 gibt, in dem = als reflexive und transitive Relation interpretiert wird. Also müssen nur noch die Axiome für Reflexivität und Transitivität hinzugefügt werden. 3. Transitivitätseliminierung . I Transitivitätseliminierung ersetzt jede positive Gleichung s = t durch die . . Disjunktion t = 6 y ∨ s = y mit einer neuen Hilfsvariablen y. Folgendes Theorem beschreibt das Ergebnis der Transitivitätseliminierung: Theorem 2.3 Sei N eine Menge flacher Klauseln und N 0 die Menge, die man durch Symmetrie- und Transitivitätseliminierung aus N erhält. Dann ist N un. erfüllbar in Bezug auf Gleichheit gdw. N 0 ∪ {x = x} unerfüllbar ist. Also muss nur noch das Axiom für Reflexivität hinzugefügt werden. Beispiel Die Modifikationsmethode angewendet auf folgende Menge bestehend aus zwei Klauseln: . b=c (1) . f (c, x) = 6 x (2) Klausel (1) ist flach. Symmetrie- und Transitivitätseliminierung erzeugen Klauseln (3) und (4). Klausel (2) ist nicht flach. Durch Abflachen erhält man (5). Symmetrie- und Transitivitätseliminierung verändern diese Klausel nicht. Man erhält also durch die Modifikationsmethode folgende 4 Klauseln: . . b= 6 y∨c=y (3) . . c= 6 y∨b=y (4) . . c= 6 y ∨ f (y, x) = 6 x (5) . x=x (6) 2.2 Gleichheitseliminierung mit Constraints (CEE-Transformation) Die CEE-Transformation (Constraint Equality Elimination) besteht aus den gleichen drei Teilen wie die Modifikationsmethode, also Abflachen, Symmetrieeliminierung und Transitivitätseliminierung, wobei sich nur der letzte Teil in mehreren Aspekten unterscheidet. 3 Transitivitätseliminierung I Eine beschränkte Klausel ist ein Paar C · C bestehend aus der Klauselmenge C und der Menge von Constraints C, wobei Constraints die Form s = t (Gleichheits-Constraint) oder s t bzw. s t (Ordnungs-Constraint) mit Termen s, t haben. Eine Idee der Transitivitätseliminierung ist das Einführen von sogenannten . . . Link-Constraints, z.B. wird die Gleichung s = t transformiert in (t = 6 x∨s = x) · (t x ∧ s x). Die Bezeichnung kommt von der intuitiven Idee, dass die Variable x die Link-Variable ist, die der Simulation von Transitivität dient. Die Ordnungs-Constraints stellen dabei zum einen sicher, dass die Variable x nur von minimalen Termen instantiiert wird, zum anderen blockieren sie die Suche nach alternativen Beweisen, die dieselben Gleichungen anwenden, sich aber in der Instantiierung der Link-Variablen unterscheiden. I Transitivitätseliminerung ist folgende Transformation: . . . s = t ⇒ (t = 6 x ∨ s = x) · (t x ∧ s x) . . . s= 6 t ⇒ (t = 6 x∨s= 6 x) · (t x ∧ s x) . . s = x ⇒ (s = x) · (s x) . . s= 6 x ⇒ (s = 6 x) · (s x) wobei t keine Variable ist. Beispiel Die CEE-Transformation angewendet auf das Beispiel vom letzten Abschnitt mit der Ordnung, in der c das kleinste Element ist: . b=c (1) . f (c, x) = 6 x (2) Man erhält folgende 4 Klauseln: . . (b = 6 y ∨ c = y) · (b y ∧ c y) . . (c = 6 y ∨ b = y) · (c y ∧ b y) . . (c = 6 y ∨ f (y, x) = 6 x) · (c y ∧ f (y, x) x) . x=x Das Constraint c y ist unerfüllbar und c y kann nur erfüllt werden mit c = y. Das Constraint f (x, y) x ist gültig. Also vereinfacht sich die Menge wie folgt: . . c= 6 c∨b=c . . c= 6 c ∨ f (c, x) = 6 x . x=x . . Wegen x = x können beide Vorkommen von c = 6 c entfernt werden, also: . b=c . f (c, x) = 6 x . x=x Die Haupteigenschaft der CEE-Transformation ist die Erhaltung von Erfüllbarkeit, 1998 bewiesen von Bachmair et al.: 4 Theorem 2.4 Eine Menge N von unbeschränkten Gleichheitsklauseln ist unerfüllbar in Bezug auf Gleichheit gdw. die transformierte Menge unerfüllbar ist. Die CEE-Transformation kann von jedem Beweiser ohne Gleichheit durch das Hinzufügen von Constraints verwendet werden. Die Transformation ohne Constraints ist ebenso korrekt und vollständig. Die ”kleinste Konstanten”- Optimierung, wie sie oben im Beispiel zur Vereinfachung der Klauselmenge benutzt wurde, kann auch von Beweisern verwendet werden, die keine Constraints behandeln. Diese Transformation ohne Constraints wurde 1997 von Moser und Steinbach beschrieben und wird tatsächlich in einigen Versionen des Theorembeweisers SETHEO (Ibens und Letz 1997) benutzt. Im Vergleich zur Modifikationsmethode hat die CEE-Transformation den Vor. . . teil, dass positive Gleichungen in Form von t = x nicht in x = 6 y∨t = y aufgespalten werden. Der Nachteil jedoch ist, dass negative Gleichungen der . Form t = 6 s aufgespalten werden, die längere Klauseln ergeben. 2.3 Fazit Die Transformation von Logik mit Gleichheit in Logik ohne Gleichheit hat auf der einen Seite den Vorteil, dass der Beweiser selbst nicht geändert werden muss. Auf der anderen Seite hat sie den Nachteil, dass sie die Klauselform der Formeln erfordert, deren Transformation aufwändig und im Sequenzenbeweis schwierig ist. Außerdem werden die Klauseln bei jeder Eliminierung eines Gleichheitsaxioms vergrößert. Dadurch entsteht ein größerer Suchraum, der bei großen Formeln auch zu Ineffizienz führt. 3 Paramodulation Paramodulation ist eine Modifikation der Ersetzungsregel in Logik erster Ordnung für resolutionsbasierte Beweistechniken (eingeführt von Robinson und Wos 1969). Die Paramodulationsregel ist definiert auf Klauseln und nutzt allgemeinste Unifizierer (most general unifier): . L[s0 ] ∨ C1 s = t ∨ C2 (par) (L[t] ∨ C1 ∨ C2 )mgu(s, s0 ) Jedoch führt die uneingeschränkte Anwendung der Paramodulation zu kombinatorischer Explosion auf Grund ihrer zu allgemeinen Anwendbarkeit. Sie arbeitet lokal, aber wenig zielgerichtet und muss daher eingeschränkt werden. Einige dieser Einschränkungen sind folgende: 1. 2. 3. 4. Paramodulation in eine Variable ist verboten; Gebrauch von Reduktionsordnungen; die Basisstrategie der Paramodulation; Simplifikation. Die 1. Einschränkung besagt, dass Paramodulation in eine Variable . L[x] ∨ C1 s = t ∨ C2 (par) (L[t] ∨ C1 ∨ C2 )[s/x] 5 verboten ist, denn diese Regel ist immer anwendbar, wenn keine Grundklausel L[x] ∨ C1 vorliegt, da x immer unifizierbar ist mit s. Die 2. Einschränkung ergibt sich daraus, dass Paramodulation oftmals erlaubt, durch wiederholte Anwendung derselben Gleichung immer größere Terme zu erzeugen. Durch Einführung von Reduktionsordnungen kann dies vermieden werden. I Eine Reduktionsordnung auf TF (X) ist eine Ordnung auf TF (X), so dass 1. ist wohlfundiert; 2. wenn s t, dann ist r[sσ] r[tσ] für alle Terme r, s, t und Substitutionen σ; wobei TF (X) die Menge der Terme über der Signatur F mit der Variablenmenge X bezeichnet. I Geordnete Paramodulation kann wie folgt formuliert werden: . L[s0 ] ∨ C1 s = t ∨ C2 (L[t] ∨ C1 ∨ C2 )σ so dass 1. σ = mgu(s, s0 ); 2. s0 ist keine Variable; 3. tσ 6 sσ. Weitere und strengere Einschränkungen, die auf Ordnungen basieren, sind beispielsweise maximale Paramodulation und Superposition. Bei der 3. Einschränkung geht es um die sogenannte Basisstrategie. Die Idee der Basisstrategie ist das Verbot der Paramodulation in Termen, die man durch Substitutionen erhält, die in vorhergehenden Inferenzschritten angewendet wurden. Die Basisstrategie wurde erstmals eingeführt von Degtyarev (1979, 1982) unter dem Namen monotone Paramodulation. 1986 wurde sie von Degtyarev und Voronkov ebenfalls in Termen von sogenannten Konditionalklauseln beschrieben, die heute unter der Bezeichnung Klauseln mit Gleichheits-Constraints bekannt sind. I Es gibt zwei Formen der monotonen Paramodulation: . L[s0 ] ∨ C1 · C1 s = t ∨ C2 · C2 . L[t] ∨ C1 ∨ C2 · C1 ∪ C2 ∪ {s0 = s} und . L[s0 ] ∨ C1 · C1 s = t ∨ C2 · C2 . . L[z] ∨ C1 ∨ C2 · C1 ∪ C2 ∪ {s0 = s, z = t} wobei s0 in beiden Regeln keine Variable und z in der zweiten Regel eine neue Variable ist. Resolutionsbasiertes Beweisen basiert für gewöhnlich auf Sättigungsprozeduren. Solche Prozeduren starten mit einer Klauselmenge S, zu dieser Menge werden neue Klauseln hinzugefügt, die durch Anwendung von Inferenzregeln auf den Klauseln aus S entstehen. Dadurch wächst der Suchraum dieser Prozeduren rapide. Effizienter sind Sättigungsprozeduren, wenn sie durch Redundanzkriterien erweitert werden, die das Entfernen redundanter Klauseln aus dem Suchraum erlauben. Beispiele solcher Redundanzentfernungsregeln sind Subsumption (Robinson 1965) und Simplifikation (Knuth und Bendix 1970). Damit kommen wir 6 zur 4. Einschränkung: I Sei S eine Multimenge von Klauseln. Dann ist Simplifikation folgende Inferenzregel: . S ∪ {L[s0 ] ∨ C, s = t} . S ∪ {L[tσ] ∨ C, s = t} . so dass sσ = s0 , sσ tσ und L[sσ] (sσ = tσ). Die Bedeutung dieser Regel ist, dass s0 durch tσ ersetzt werden kann und die Klausel L[s0 ] ∨ C weggelassen wird. 4 Gleichheit in Sequenzensystemen In diesem Abschnitt werden folgende Sequenzensysteme betrachtet: 1. 2. 3. Sequenzenkalkül Tableauxkalkül Konnektionskalkül Die Behandlung von Gleichheit in solchen Sequenzensystemen erfolgt entweder 1. durch zusätzliche Inferenzregeln oder 2. durch Komplementaritätstests. 1. Im Sequenzenkalkül LK= ohne freie Variablen gibt es zur Behandlung von Gleichheit zusätzlich eine Termersetzungsregel und das Reflexivitätsaxiom. Im Tableauxkalkül TK mit freien Variablen werden Tableaux-Expansions- und Zweigabschluss-Regeln hinzugefügt. 2. Bei Komplementaritätstests gibt es nur Regeln für das Schließen der Beweiszweige. Beim Konnektionskalkül wird Komplementarität der Pfade durch sogenannte eq-Konnektionen getestet. 4.1 Sequenzenkalkül ohne freie Variablen Der Sequenzenkalkül LK= für klassische Logik erster Ordnung mit Gleichheit: Γ, A ` ∆, A (axiom) . Γ[t/x], s = t ` ∆[t/x] . (ref l) (=) . . Γ ` ∆, t = t Γ[s/x], s = t ` ∆[s/x] Γ, ϕ ` ∆ Γ ` ∆, ϕ (¬ − R) (¬ − L) Γ ` ∆, ¬ϕ Γ, ¬ϕ ` ∆ Γ ` ∆, ϕ Γ ` ∆, ψ Γ, ϕ, ψ ` ∆ (∧ − R) (∧ − L) Γ ` ∆, ϕ ∧ ψ Γ, ϕ ∧ ψ ` ∆ Γ ` ∆, ϕ, ψ Γ, ϕ ` ∆ Γ, ψ ` ∆ (∨ − R) (∨ − L) Γ ` ∆, ϕ ∨ ψ Γ, ϕ ∨ ψ ` ∆ Γ, ϕ ` ∆, ψ Γ, ψ ` ∆ Γ ` ∆, ϕ (⇒ −R) (⇒ −L) Γ ` ∆, ϕ ⇒ ψ Γ, ϕ ⇒ ψ ` ∆ Γ ` ∆, ϕ[y/x] Γ, ∀xϕ, ϕ[t/x] ` ∆ (∀ − R) (∀ − L) Γ ` ∆, ∀xϕ Γ, ∀xϕ ` ∆ Γ ` ∆, ∃xϕ, ϕ[t/x] Γ, ϕ[y/x] ` ∆ (∃ − R) (∃ − L) Γ ` ∆, ∃xϕ Γ, ∃xϕ ` ∆ 7 In der Regel (axiom) ist A eine atomare Formel. In den Regeln (∀ − R) und (∃ − L) hat die Variable y keine freien Vorkommen in den Konklusionen der Regeln. Die Variable y heißt Eigenvariable dieser Regeln und die Bedingung auf den Regeln (∀ − R) und (∃ − L) heißt Eigenvariablenbedingung. I Eine Ableitung Π in LK= heißt regulär, falls sie folgende Eigenschaften erfüllt: 1. Gleichheitsregeln werden vor allen anderen Regeln angewendet; . 2. in den Regeln (=) werden Vorkommen von t nur in atomaren Formeln durch s ersetzt. Theorem 4.1 (Existenz regulärer Ableitungen in LK= ). Jede Sequenz, die in LK= ableitbar ist, hat eine reguläre Ableitung. Beispiel Eine reguläre Ableitung für folgende Formel: . . . . ∃xyuv((a = b ⇒ g(x, u, v) = g(y, f c, f d)) ∧ (c = d ⇒ g(u, x, y) = g(v, f a, f b))) (ref l) (ref l) . . . . . a = b ` g(f a, f c, f d) = g(f a, f c, f d) c = d ` g(f c, f a, f b) = g(f c, f a, f b) (=) . . . . a = b ` g(f a, f c, f d) = g(f b, f c, f d) c = d ` g(f c, f a, f b) = g(f d, f a, f b) (⇒ −R) . . . . ` a = b ⇒ g(f a, f c, f d) = g(f b, f c, f d) ` c = d ⇒ g(f c, f a, f b) = g(f d, f a, f b) . . . . ` (a = b ⇒ g(f a, f c, f d) = g(f b, f c, f d)) ∧ (c = d ⇒ g(f c, f a, f b) = g(f d, f a, f b)) . . . . ` ∃xyuv((a = b ⇒ g(x, u, v) = g(y, f c, f d)) ∧ (c = d ⇒ g(u, x, y) = g(v, f a, f b))) . (=) Das System LK= hat viele gute beweistheoretische Eigenschaften, ist aber nicht sehr geeignet für automatische Beweissuche. Das Problem liegt in den γ-Regeln (∀ − L) und (∃ − R), in denen t ein beliebiger Term sein kann. Die Anwendung dieser Regeln erzeugt zu hohen Nichtdeterminismus. Um LK= für automatische Beweissuche geeignet zu machen, muss dessen Version mit freien Variablen eingeführt werden. Also anstatt t wird eine Variable substituiert, die während der Beweissuche mit einem bestimmten Term t instantiiert werden kann. Zwei Möglichkeiten, um LK= zu einer Version mit freien Variablen zu machen, sind Tableaux- und Konnektionskalkül. 4.2 Tableauxkalkül mit freien Variablen Der Tableauxkalkül TK (beschränkt man sich selbst auf skolemisierte Formeln, müssen δ-Regeln nicht betrachtet werden): Γ, ¬ϕF Γ, ¬ϕT (¬) (¬) T Γ, ϕ Γ, ϕF T F Γ, ϕ ∧ ψ Γ, ϕ ∧ ψ (β) (α) Γ, ϕF |Γ, ψ F Γ, ϕT , ψ T F T Γ, ϕ ∨ ψ Γ, ϕ ∨ ψ (α) (β) Γ, ϕF , ψ F Γ, ϕT |Γ, ψ T F T Γ, ϕ ⇒ ψ Γ, ϕ ⇒ ψ (α) (β) Γ, ϕT , ψ F Γ, ϕF |Γ, ψ T T F Γ, ∀xϕ Γ, ∃xϕ (γ) Γ, ϕ[z/x]T , ∀xϕT Γ, ϕ[z/x]F , ∃xϕF Γ1 , AT , B F |Γ2 |...|Γn (abc) (Γ2 |...|Γn )mgu(A, B) (γ) In beiden Regeln (γ) kommt die Variable z nicht in der Prämisse vor und in der Regel (abc) sind die Formeln A und B atomare Formeln, deren Prädikatssymbol 8 (⇒ −R) (∧ − R) (∃ − R) . sich von = unterscheidet. I α-, β-, γ- und ¬-Regeln heißen Tableaux-Expansions-Regeln. I Die Regel (abc) heißt Regel des atomaren Zweigabschluss (atomic branch closure). Weil TK auf Multimengen von Multimengen von Formeln operiert, sind Ableitungen in TK immer linear. Die Anwendung von TK-Inferenzregeln entspricht der Anwendung von LK= -Inferenzregeln in Gegenrichtung, d.h. von der Konklusion zu den Prämissen. Folgende Version des Herbrand-Theorems bildet die theoretische Basis für die Tableaux-Methode: Theorem 4.2 Sei ϕ eine abgeschlossene Formel. Sie ist beweisbar in klassischer Logik gdw. es ein Tableaux T gibt, das aus ϕF durch Anwendung der TableauxExpansions-Regeln und einer Substitution θ entsteht, so dass jeder Zweig in T θ abgeschlossen ist. Im Falle von Logik mit Gleichheit ist die Situation komplizierter, weil es kein einfaches Kriterium für Inkonsistenz eines Zweiges gibt. Theorem 4.2 deutet folgende Idee an: I Ein Zweig Γ heißt substitutiv inkonsistent, falls es eine Substitution σ gibt, so dass lit(Γ)σ inkonsistent ist, wobei lit(Γ) die Multimenge von Literalen auf Γ bezeichnet. I Ein Tableaux Γ1 |...|Γn heißt substitutiv inkonsistent, falls es eine Substitution σ gibt, so dass für jedes i ∈ {1, ..., n} lit(Γi )σ inkonsistent ist. Beispiel Eine Tableaux-Ableitung mit freien Variablen für das Beispiel von oben: . . . . ∃xyuv((a = b ⇒ g(x, u, v) = g(y, f c, f d)) ∧ (c = d ⇒ g(u, x, y) = g(v, f a, f b)))F . . . . (a = b ⇒ g(x, u, v) = g(y, f c, f d)) ∧ (c = d ⇒ g(u, x, y) = g(v, f a, f b))F Q Q Q . . a = b ⇒ g(x, u, v) = g(y, f c, f d)F . . c = d ⇒ g(u, x, y) = g(v, f a, f b)F . a .= bT g(x, u, v) = g(y, f c, f d)F . c .= dT g(u, x, y) = g(v, f a, f b)F Das Tableaux hat zwei Zweige mit folgenden Multimengen : . . {a = b, g(x, u, v) = 6 g(y, f c, f d)} und . . {c = d, g(u, x, y) 6= g(v, f a, f b)} Das Tableaux ist substitutiv inkonsistent: Die Substitution [f a/x, f b/y, f c/u, f d/v] schließt beide Zweige ab. Um zu zeigen, dass ein Zweig abgeschlossen ist, muss es möglich sein, eine Multimenge von Literalen auf Inkonsistenz zu überprüfen. Dazu sind einige Definitionen notwendig: 9 I Sei E eine Multimenge von Gleichungen und seien L1 , L2 Terme oder . Literale. Wir schreiben L1 ↔E L2 , falls eine Gleichung (s = t) ∈ E existiert, ∗ so dass L1 die Form L[s] und L2 die Form L[t] hat. ↔E bezeichne den reflexiven und transitiven Abschluss von ↔E . Die folgende Aussage charakterisiert Inkonsistenz einer Multimenge von Literalen: Theorem 4.3 Sei L eine Multimenge von Literalen und E(L) die Multimenge von Gleichungen in L. Dann sind folgende Bedingungen äquivalent: 1. L ist inkonsistent; . 2. entweder gibt es ein Literal (s = 6 t) ∈ L, so dass s ↔∗E(L) t, oder es gibt Nicht-Gleichheits-Literale A, ¬B ∈ L, so dass A ↔∗E(L) B. Die Frage ist, wie Tableaux-Zweige für ein gegebenes Tableaux mit freien Variablen abgeschlossen werden. Diese Frage führt zu simultaner starrer E-Unifikation. 4.3 Konnektionskalkül mit freien Variablen Eine andere Formalisierung der Beweissuche in einem Sequenzensystem mit freien Variablen ist die Konnektionsmethode (Extensionsverfahren) von Bibel (1981). I Eine eq-Konnektion ist eine Konnektion {P [s]F , P [s0 ]T } unter einer Menge E von Gleichungen, d.h. die Terme s und s0 sind unifizierbar unter E. . I Ein eq-Literal ist eine eq-Konnektion des Literals f (s) = f (s0 )T , so dass 0 die Terme s und s unifizierbar sind unter einer Menge E von Gleichungen, . . zusammen mit dem Reflexivitätsaxiom: {f (s) = f (s0 )T , t = tF }. Beispiel Für das Beispiel von oben muss der Formelbaum zunächst in Matrixform gebracht werden. Die zugehörige Matrix lautet wie folgt: . F . b g(x, u, v) = g(y, f c, f d)T a= . F . c=d g(u, x, y) = g(v, f a, f b)T Die Matrix enthält zwei Pfade und ein Pfad ist komplementär, wenn er ein gültiges eq-Literal oder eine komplementäre (eq-)Konnektion enthält. In diesem Beispiel führt die Substitution [f a/x, f b/y, f c/u, f d/v] in beiden Pfaden zu gültigen eq-Literalen, damit ist Komplementarität gezeigt. Literatur [1] Anatoli Degtyarev, Andrei Voronkov: Handbook of Automated Reasoning, 2001 Elsevier Science Publishers B.V., Chapter 10: Equality Reasoning in Sequent-Based Calculi [2] Prof. Dr. Christoph Kreitz: Inferenzmethoden, WS 2004/2005 Universität Potsdam [3] Wolfgang Bibel: Deduktion – Automatisierung der Logik, 1992 R.Oldenbourg [4] Bernhard Beckert: Semantic Tableaux with Equality, 1997 Journal of Logic and Computation, Vol. 7, No. 1, pages 38-58, www.uni-koblenz.de/∼beckert/publications.html [5] E-SETHEO, Komet E-SETHEO (1997 www.springerlink.com/index/GNN7421536H25786.pdf Moser [6] www4.informatik.tu-muenchen.de/∼schulz/WORK/e-setheo.html 10 et al):