Möglichkeiten der Gleichheitsbehandlung

Werbung
Möglichkeiten der Gleichheitsbehandlung
TBSE - Gleichheitseliminierung - Gleichheit in nicht-klassischer Logik
Nuria Brede
8. November 2005
Zusammenfassung
Die universelle Anwendbarkeit des Gleichheitsprädikats lässt eine spezielle Gleichheitsbehandlung in automatischen Beweisverfahren wünschenswert erscheinen. Dabei will man
möglichst die unentscheidbare Simultane Starre E-Unifikation vermeiden, was in klassischer
Logik auch möglich ist - in intuitionistischer Logik jedoch nicht. Im folgenden sollen in
diesem Zusammenhang drei Verfahren von Voronkov, bzw. Voronkov und Degtyarev vorgestellt werden: zum einen zwei Kalküle zur Gleichheitsbehandlung in klassischer Logik, die
auf Tableaux arbeiten (Tableau Basic Superposition with Equality Solution und GleichheitsEliminierung für das Tableau Verfahren); zum anderen das Kalkül LJ=
c für intuitionistische
Logik mit Gleichheit, das im Kontext der Probleme, die sich für nicht-klassiche Logiken
ergeben, betrachtet wird. Neben konstruktiver Logik kommen auch die Modallogiken kurz
zur Sprache.
Inhaltsverzeichnis
1 Einleitung
1.1 Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
2
2 Zwei Kalküle zur Gleichheitsbehandlung
in klassischer Logik
2.1 TBSE - Tableaux Basic Superposition with Equality Solution . . . . . . . . . . .
2.2 Gleichheits-Eliminierung für Tableaux . . . . . . . . . . . . . . . . . . . . . . . .
2
2
3
3 Gleichheitsbehandlung in nicht-klassischen Logiken
3.1 Intuitionistische Logik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Modallogiken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
8
11
4 Ausblick
11
1
Einleitung
Die Gleichheit spielt eine herausragende Rolle (nicht nur) in der Logik. Durch ihre universelle
Anwendbarkeit ist sie das wichtigste Prädikat und lässt eine spezielle Gleichheitsbehandlung
in automatischen Beweisverfahren wünschenswert erscheinen. Dabei besteht die Schwierigkeit
darin, vollständige und korrekte Verfahren zu finden, die Gleichheiten gesondert verarbeiten deren Komplexität aber gleichzeitg nicht zu groß ist.
Im folgenden sollen drei Verfahren für diese Aufgabe von Voronkov, bzw. Voronkov und
Degtyarev vorgestellt werden. Dabei handelt es sich zum einen um zwei Kalküle zur Gleichheitsbehandlung in klassischer Logik, die auf Tableaux arbeiten (TBSE - Tableau Basic Superposition with Equality Solution; Gleichheits-Eliminierung für das Tableau Verfahren);
1
zum anderen um das Kalkül LJ=
c für intuitionistische Logik mit Gleichheit, das im Kontext
der Schwierigkeiten, die sich für nicht-klassiche Logiken ergeben, betrachtet werden soll. Neben
konstruktiver Logik soll in diesem Zusammenhang auch die Modallogik (bzw. die Modallogiken)
zur Sprache kommen. Abschließend gibt ein kurzer Ausblick Hinweise auf Implementationen und
offene Fragen.
1.1
Notation
Um Unklarheiten bezüglich der Notation zu vermeiden, seien folgende Bezeichnungen vereinbart:
• u, v, w, x, y, z sind Variablen, a, b, c, d Konstanten und s und t Terme.
.
• Das Gleichheitsprädikat wird als = dargestellt.
.
• Starre Gleichungen haben die Form E ` s = t, wobei E eine endliche Menge starrer,
gültiger Gleichungen ist und s und t Terme bezeichnen, die unter der Annahme unifizierbar
sind, daß alle in E enthaltenen Terme gültig sind.
• [s/x] bezeichnet eine Substitution einer Variablen x durch einen Term s.
• u[s] bezeichnet einen Term u, der möglicherweise einen Term s enthält, der durch einen
Term t substituiert werden kann.
• Polaritäten in Tableau-Beweisen haben die Form ϕT , ϕF oder ϕX wobei ϕ die Formel ist
und T TRUE entspricht, F FALSE und X einer beliebigen Polarität.
2
Zwei Kalküle zur Gleichheitsbehandlung
in klassischer Logik
2.1
TBSE - Tableaux Basic Superposition with Equality Solution
Das Kalkül Tableaux Basic Superposition with Equality Solution - im weiteren kurz TBSE
- wurde 1996 von Degtyarev und Voronkov in Zusammenhang mit Verfahren für die Simultane starre E-Unifikation entwickelt. Bei TBSE handelt es sich gewissermaßen um eine Zusammenführung des Kalküls BSE (Basic Superposition with Equality Solution [DV96b]) mit einer
Paramodulationsregel für Tableaux.
Ein zur Paramodulation analoges Verfahren, das auf Tableaux arbeitet, wurde vorher bereits von Loveland (1978, nur im Zusammenhang mit Modellelimination) und Fitting [Fit90]
betrachtet. Diese Versionen der Tableaux-Paramodulation besitzen allerdings den Nachteil, daß
es durch Anwendung bestimmter Regeln zu unendlichen Folgen von Paramodulationen kommen
kann. Zur Vermeidung dieses Effekts, erlegen Voronkov und Degtyarev ihrem Verfahren an den
entsprechenden Stellen einige Beschränkungen auf:
• es gibt (anders als bei Fitting) keine Funktions-Reflexivitäts-Regel
• es darf nicht in Variablen paramoduliert werden
• Ordnungen werden benutzt, um Zyklen zu vermeiden (z.B. x darf nicht mehr nach fx
zurückgeschrieben werden)
• in nicht-variable Terme, die durch Unifikation eingeführt worden sind, darf nicht paramoduliert werden
Diese Verfeinerungen lehnen sich an BSE+TK, die korrekte und vollständige Anwendung
von BSE auf Tableaux mit Antwort-Constraints an. Wie auch BSE+TK arbeitet TBSE mit
Constraint Tableaux T · C - die Ersetzunsbedingungen werden also in Constraints abgelegt.
Dabei sind die Constraints ebenfalls Mengen, die Gleichheiten von Literalen sowie Ordnungsbedingungen enthalten - allerdings wird in TBSE für das gesamte Tableau nur ein Constraint
verwandt, der jeweils entsprechend erweitert wird.
2
Die α, β, γ, und¬-Regeln von TK werden analog zur folgenden α-Regel angepasst und die Regel abc so
veraändert, daß sie den Constraint erweitert:
Γ 1 , AT , B F | Γ 2 | . . . | Γ n · C
(abc)
Γ2 | . . . | Γn · C ∪ {A = B}
Γ1 , ϕ ∧ ψ T | . . . | Γ n · C
(α)
Γ 1 , ϕT , ψ T | . . . | Γ n · C
Für die Regeln tbs und teqs ist es jeweils notwendig, daß der Constraint in der Konklusion erfüllbar ist.
.
Die Anwendung von tbs erfordert des weiteren, daß die signierte Formel u[t] = v X nicht in Γ1 vorkommt,
0
sowie daß der Term s keine Variable ist:
.
.
.
Γ1 , s = tT , u[s0 ] = v X | . . . | Γn · C
Γ1 , s = t F | Γ2 | . . . | Γ n · C
(teqs)
(tbs)
. T
. X
Γ2 | . . . | Γn · C ∪ {s = t}
Γ1 , s = t , u[t] = v | . . . | Γn · C ∪ {s t, u[s0 ] v, s = s0 }
Abbildung 1: Der Kalkül TBSE.
Soll eine Formel ϕ mit TBSE bewiesen werden, so bildet man zunächst die Skolem NegationsNormalform ψ aus ¬ϕ (die Skolemisierung erübrigt δ-Regeln) und beginnt mit dem Constraint
Tableau ψ·∅. Anschließend versucht man, das leere Tableau #·C abzuleiten, wobei der Constraint
C erfüllbar sein muß.
Um die Regeln des Tableau-Kalküls TK als Basis für TBSE benutzen zu können, werden
diese so angepasst, daß die Expansions-Regeln (α, β, γ, ¬) den Constraint nicht verändern und
die Regel abc für den Abschluß eines Beweiszweiges den Constraint erweitert. Durch Hinzufügen
der Regeln tbs - tableau basic superposition - und teqs - tableau equality solution - ergibt sich
der formale Kalkül TBSE (Abb. 1).
TBSE ist ein vollständiger und korrekter Kalkül. Der Beweis hierfür basiert auf Vollständigkeit und Korrektheit von TK+BSE, da sich die Regeln von BSE durch die entsprechenden
TBSE-Regeln simulieren lassen und der resultierende Constraint der Vereinigung der AntwortConstraints von TK+BSE entspricht.
Der entscheidende Vorteil von TBSE gegenüber Fittings System zeigt sich bei den Terminierungseigenschaften. TBSE terminiert immer, solange keine Tableau-Expansions-Regeln
angewandt werden, während es bei Fitting auch ohne Anwendung von Expansions-Regeln zu
unendlicher Suche kommen kann.
.
.
.
.
F
g(y, f c, f d)) ∧ (c = d ⇒ g(u, x, y) = g(v, f a, f b))) und der Start-Constraint ∅. Das zugehörige Tableau
findet sich in Abb. 2. Nacheinander werden die Regeln γ, β, α (letztere auf beide entstandenen Zweige)
angewandt, die den Constraint nicht verändern. Da an dieser Stelle noch keine gültige Substitution
zum Abschluss der Zweige gefunden werden kann, muß erneut auf ϕ zurückgegriffen werden, um neue
Instanzen zu erzeugen. Im Ableitungsbaum sind diese weiteren notwendigen Expansionsschritte durch
(. . .) angedeutet. Nun ist es möglich tbs anzuwenden (die beiden hierbei enstehenden Literale sind in
Abb.2 unterstrichen), wodurch sich der Constraint
.
.
.
{g(x2 , u2 , v2 ) = g(y2 , f c, f d), c d, g(y1 , f c, f d) g(x1 , u1 , v1 ), c = c, g(x1 , u1, v1 ) =
.
.
.
g(y1 , f d, f d), a b, a = a, g(v1 , f a, f b) g(u1 , x1 , y1 ) = g(v1 , f b, f b), g(u3 , x3 , y3 ) =
g(v3 , f a, f b)} ergibt. Dieser ist durch folgende Substitution erfüllbar:
[f b/x1 , f b/y1 , f d/u1 , f d/v1 , b/x2 , b/y2 , f c/u2 , f d/v2 , d/u3 , d/v3 , f a/x3 , f b/y3 ].
Beispielableitung in TBSE: Die zu widerlegende Formel ϕ ist ∃xyuv((a = b ⇒ g(x, u, v) =
2.2
Gleichheits-Eliminierung für Tableaux
Die Methode der Gleichheits-Eliminierung für das Tableau Verfahren Tξ (bzw. Equality
Elimination for the Tableau Method) wurde ebenfalls von Voronkov und Degtyarev vorgestellt [DV96a]. Die Motivation zur Entwicklung dieses Verfahrens geht auf zwei Grundgedanken
zurück.
Zum einen benutzen Tableau-basierte Methoden mit freien Variablen (wie z.B. bei Fitting
[Fit90]) Simultane Starre E-Unifikation (SSEU) um alle Beweiszweige eines Tableaus zu schlie-
3
.
.
.
.
∃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(x1 , u1 , v1 ) = g(y1 , f c, f d)) ∧ (c = d ⇒ g(u1 , x1 , y1 ) = g(v1 , f a, f b))F
.
.
a = b ⇒ g(x1 , u1 , v1 ) = g(y1 , f c, f d)F
.
.
(c = d ⇒ g(u1 , x1 , y1 ) = g(v1 , f a, f b))F
.
a = bT
.F
g(x1 , u1 , v1 ) =
g(y1 , f c, f d)
.
c = dT
.F
g(u1 , x1 , y1 ) =
g(v1 , f a, f b)
(. . .)
.
a = bT
.F
g(x2 , u2 , v2 ) =
g(y2 , f c, f d)
(. . .)
.
c = dT
.F
g(u2 , x2 , y2 ) =
g(v2 , f a, f b)
.F
g(x1 , u1 , v1 ) =
g(y1 , f d, f d)
.
a = bT
g(x3 , y3 , v3 )F
.
= g(y3 , f c, f d)
.F
g(u1 , x1 , y1 ) =
g(v1 , f b, f b)
.
c = dT
g(u3 , x3 , y3 )F
.
= g(v3 , f a, f b)
Abbildung 2: Beispiel-Tableau zu TBSE.
ßen. Die SSEU wurde jedoch 1996 von Voronkov und Degtyarev als unentscheidbar bewiesen
- und somit wurde es wünschenswert, Methoden zu finden, die nicht von simultaner starrer EUnifizierbarkeit abhängen. (Daher benutzt Tξ die NP-vollständige Teilmengen-Unifikation und
most general unifiers mgu).
Zum anderen gab es das folgende, von Maslov 1983 aufgebrachte Problem: Ursprünglich
basieren alle Sequenzensysteme mit freien Variablen auf zwei Sorten von Regeln - einerseits
Expansions-Regeln, andererseits Regeln, mit denen Beweiszweige abgeschlossen werden. Der gemeinsame Nachteil dieser Methoden ist dabei, daß die zweite Art von Regeln ,,global” arbeiten.
D.h. Bevor festgestellt werden kann, ob sich alle Beweiszweige unter einer gemeinsamen Substitution schließen lassen, wird eine Art Vorableitung (Prededuction) durchgeführt. Der Aufwand
für diese Ableitung ist jedoch umsonst, falls sich keine entsprechende Substitution finden lässt.
Die Gleichheits-Eliminierung Tξ soll nun existierende Tableau-Beweiser um einen BottomUp-Gleichheits-Löser ergänzen, der Gleichungen ,,lokal” löst und damit Beweiszweige abschliesst.
Zur Ableitung einer Formel benutzt Tξ dabei zum einen Tableaux, zum anderen Closures (die
später noch genauer definiert werden). Im Tableau wird die Zielformel in ihre konjunktiven
Teilformeln zerlegt, die mit speziellen ξ-Namen bezeichnet werden. Den Closures kommt die
Funktion zu, Abschlussbedingungen für die mit den ξ-Namen bezeichneten Teilformeln zu verwalten.
Die Taktik, sich auf konjunktive Teilformeln zu konzentrieren, dient der Effizienzesteigerung.
Folgende Überlegung verdeutlicht den Nutzen der Betrachtung konjunktiver Teil- und Oberformeln: Falls ψ eine geringste konjunktive Oberformel von ϕ ist, gilt die Beziehung ` ∀(ϕ ⇒ ψ),
und falls ϕ keine konjunktive Oberformel besitzt, gilt sogar ` ∀(ϕ ⇒ ξ). Deterministische Beweisketten mit ∨ oder ∃, die man sonst in Sequenzensystemen findet, erübrigen sich also, da sie
in einem Schritt ausgeführt werden.
Nun zur konkreten Vorgehensweise: Für das Verfahren wird die zu beweisende Formel ξ
wiederum in Skolem Negations-Normalform angegeben und es wird o.B.d.A. vorrausgesetzt,
daß alle verschiedenen Vorkommen von Quantoren in ξ auch unterschiedliche Variablen binden.
Teilformeln (Subformulas)von ξ und deren Oberformeln (Superformulas) werden anhand ihres
Vorkommens in ξ identfiziert, z.B. in der Reihenfolge ihres Auftretens.
Da die konjunktiven Teilformeln in Tξ eine so wichtige Rolle spielen, sollen sie im Folgenden
noch einmal präzise definiert werden. So heißt eine Teilformel ϕ konjunktiv, falls sie Teil einer
Formel ϕ ∧ ψ oder ψ ∧ ϕ ist. Eine konjunktive Oberformel ist dementsprechend eine (nicht
notwendigerweise echte) Oberformel ψ von ϕ, die konjunktiv ist. Falls jede andere konjunktive
Oberformel von ϕ auch Oberformel von ψ ist, so heißt ψ geringste konjunktive Oberformel von
4
ϕ (ein ausführliches Beispiel zu geringsten konjunktiven Oberformeln findet sich in [DV01]).
Alle konjunktiven Teilformeln der Zielformel ξ werden in der Reihenfolge ihres Auftretens
durchnummeriert zu ξ1 , . . . , ξk , so daß die Bezeichnung der k-ten Teilformel als ξk von ξ unzweitdeutig ist.
Seien nun A1 , . . . , An Prädikatsymbole, die nicht in ξ vorkommen. Dann wird die atomare
Formel Ak (x1 , . . . , xm ) ξ-Name einer Teilformel ϕ von ξ genannt, falls folgende Bedingungen
erfüllt sind:
1. die geringste konjunktive Oberformel von ϕ ist ξk und
2. x1 , . . . , xm sind alle freien Variablen von ξk in der Reihenfolge ihres Auftretens
Da nicht jede Teilformel von ξ eine konjunktive Oberformel besitzt, existiert auch nicht für jede
ein ξ-Name - aber falls dieser existiert, so ist er eindeutig. Allerdings folgt aus der Definition,
daß mehrere Teilformeln mit demselben ξ − N amen bezeichnet sein können. Im weiteren wird
die Menge der ξ − N amen einer Teilformel verwendet, die je nachdem, ob der ξ − N ame existiert
oder nicht, entsprechend leer oder einelementig {Ak (x1 , ..., xm )} ist.
Der oben bereits erwähnte Begriff der Closure 1 definiert sich hier wie folgt: Unter einer
Closure wird ein Paar C · σ verstanden, wobei C eine Klausel und σ eine Substitution ist.
Auf diesen Vorüberlegungen baut nun das deduktive System Tξ der Gleichheits-Eliminierung
für Tableaux auf. Die Axiome von Tξ sind initial closure und initial tableau und werden wie
folgt definiert:
werden aus einer der folgenden drei Regeln erzeugt:
.
1. wenn ein Literal s 6= t in ξ vorkommt und C die Menge der ξ-Namen dieses Vorkommens
.
ist, dann ist die Closure s = t, C · ε eine initial closure
.
2. wenn ein Literal s = t in ξ vorkommt und C die Menge der ξ-Namen dieses Vorkommens
.
ist, dann ist die Closure s 6= t, C · ε eine initial closure
3. Seien P (s1 , . . . , sn ) und ¬P (t1 , . . . , tn ) zwei Literale, die in ξ vorkommen und C1 , C2 als
Mengen von ξ-Namen besitzen; Sei σ eine Substitution, die die Variablen so umbenennt,
daß die Variablen von P (s1 , . . . , sn )σ und ¬P (t1 , . . . , tn ) disjunkt sind. Dann ist die Closure
.
.
s1 σ 6= t1 , . . . , sn σ 6= tn , C1 σC2 · ε eine initial closure
Initial Closures
Im Prinzip greift man also Gleichheiten oder aber unifizierbare Literale mit entgegengesetzten
Polaritäten aus den Teilformeln heraus und speichert die Bedingung(en) oder Möglichkeiten,
.
unter der(denen) man einen Widerspruch erhielte (wie z.B. in Fall(1): es kommt s 6= t vor, also
.
ist s = t Abschlussbedingung).
Initial Tableau
ist das aus der leeren Klausel bestehende Tableau 2.
Bei der Definition der fünf Inferenzregeln des Kalküls wird angenommen, daß die Prämissen
disjunkte Variablen besitzen (was im Zweifelsfall durch Umbenennung zu erreichen wäre).
Basic Right and Left Superposition
.
.
s = t, C · σ1 u[s0 ] 6= v, D · σ2
(bls)
.
u[t] 6= v, C, D · σ1 σ2 θ
.
.
s = t, C · σ1 u[s0 ] = v, D · σ2
(brs)
.
u[t] = v, C, D · σ1 σ2 ρ
wobei folgende Bedingungen erfüllt sein müssen:
1. θ ist mgu von sσ1
2. tσ1 θ sσ1 θ und vσ2 θ u[s0 ]σ2 θ
1 um die Namen der Kalkülsregeln ohne Verwirrung beibehalten zu können, wird im weiteren der englische
Begriff verwendet
5
3. s0 ist keine Variable
.
4. (nur für bls) u[s0 ] 6= v ist die am weitesten links stehende Ungleichung in der zweiten
Prämisse
bls und brs fügen also jeweils zwei Closures durch Superposition zusammen.
Equality Solution
.
s 6= t, C · σ
(eqs)
C · σmgu(sσ, tσ)
.
wobei s 6= t die am weitesten links stehende Ungleichung der Prämisse ist. eqs löst in Closures
vorhandene Ungleichungen auf, indem eine Substitution gefunden und der Closure hinzugefügt
wird, die die beiden Seiten der Ungleichung gleich und diese somit widersprüchlich machen
würde.
Tableau Expansion
D1 |D2 | . . . |Dm
(teξ )
(C1 , D1 |C2 , D1 |D2 | . . . |Dm )σ
Dabei seien C1 , C2 und C die Mengen von ξ-Namen von ϕ, ψ und ϕ ∧ ψ (mit ϕ ∧ ψ Teilformel
von ξ) und σ ein minimaler Teilmengen-Unifikator (subset unificator ) von C gegen D1 . Diese
Regel ist gewissermaßen eine Anpassung der β-Regel von TK und verzweigt das Tableau.
Branch Closure
C1 |C2 | . . . |Cm
(bcξ )
(C2 | . . . |Cm )σ
wobei C eine beliebige Lösungs-Klausel sei und σ ein minimaler Teilmengen-Unifikator von C
gegen C1 . Diese Regel ist offensichtlich analog zu abc aus TK.
Der so definierte Kalkül Tξ ist korrekt und vollständig für Logik erster Stufe, d.h. eine Formel
ξ ist beweisbar in Logik erster Stufe g.d.w. eine Ableitung des leeren Tableaus # in Tξ existiert.
Folgendes Beispiel veranschaulicht die Anwendung der Regeln von Tξ :
.
.
ξ = ∃x((a 6= x ∨ ¬G(b) ∨ G(f f x)) ∧ (¬G(f x) ∨ x = b))
ξ enthält zwei konjunktive Teilformeln mit den angegebenen Mengen von ξ-Namen:
.
a 6= x ∨ ¬G(b) ∨ G(f f x)
.
¬G(f x) ∨ x = b
{A1 (x)}
{A2 (x)}
Aus dieser Struktur ergibt sich, daß in dieser Ableitung alle Anwendungen von teξ folgendermaßen
aussehen (die Variable y kommt dabei in der Prämisse nicht vor):
D1 |D2 | . . . |Dm
(A1 (y), D1 |A2 (y), D1 |D2 | . . . |Dm )
Als Ordnungsrelation wird die lexikographische Pfadordnung verwendet, die durch die Vorgängerrelation f > a > b induziert wird.
Ableitung (abgeschlossene Zweige des Tableaus werden unterstrichen):
1. Start mit initial tableau 2
2. Anwendung von teξ ergibt
A1 (x)
.
3. initial closure x 6= b, A2 (x) · ε
A2 (x)
4. eqs angewandt auf (3) ergibt closure A2 (x) · {b/x}
6
5. bcξ aus (2) und (4) wendet die Substitution {b/x} global auf das tableau an und schließt den
Beweiszweig ab
A1 (b)
A2 (b)
6. teξ aus (5) erweitert das Tableau
A1 (b)
A2 (b)
A1 (x)
A2 (x)
.
7. a = x, A1 (x) · ε ist initial closure
.
8. b 6= f f x, A1 (x), A1 (y) · ε ergibt sich als inital closure aus ¬G(b) ∨ G(f f x)
.
9. auf (7) und (8) wird bls angewandt und leitet die closure b 6= a, A1 (x), A1 (y), A1 (z) · {f f y/x} ab
.
10. bls angewandt auf (7) und (9) erzeugt b 6= u, A1 (u), A1 (x), A1 (y), A1 (z) · {f f y/x}
11. eqs aus (10) ist die closure A1 (u), A1 (x), A1 (y), A1 (z) · {f f y/x, b/u}
12. bcξ angewandt auf (11) und das Tableau aus (6) führt die Substitution wieder global durch und
ergibt das Tableau
A1 (b)
A1 (f f b)
A2 (b)
A2 (f f b)
13. teξ aus (12) erweitert das Tableau wiederum zu
A1 (b)
A1 (f f b)
A2 (b)
A2 (f f b)
A1 (x)
A2 (x)
.
14. f x 6= f f y, A2 (x), A1 (y) · ε ergibt sich als initial closure aus G(f f x) in A1 und ¬G(f x) aus A2
15. A2 (x), A1 (y) · {f y/x} wird erzeugt durch Anwednung von eqs auf (14)
16. jetzt kann die Substitution wieder global durchgeführt werden und bcξ auf die closure aus (15)
und das Tableau aus (13) angewandt werden:
A1 (b)
A1 (f f b)
A2 (b)
A2 (f f b)
A1 (f b)
A2 (f b)
17. und eine erneute Anwendung von bcξ , diesmal mit der closure aus (15) auf das Tableau aus (16)
erzeugt das leere Tableau # und schließt somit den Beweis ab:
A1 (b)
A1 (f f b)
A2 (f f b)
A1 (f b)
7
A2 (b)
A2 (f b)
3
Gleichheitsbehandlung in nicht-klassischen Logiken
Gleichheit in nicht-klassischen Logiken speziell zu behandeln, ist besonders problematisch, und
es existieren kaum maschinen-orientierte Beweisverfahren. Im folgenden soll auf die Rolle der
Simultanen Starren E-Unifikation für die intuitionistische Logik und gewisse Modallogiken eingegangen, das Verfahren LJ=
c [Vor96] vorgestellt und kurz eine alternative Charakterisierung
der Gleichheit für Modallogiken [Fit91] beschrieben werden.
3.1
Intuitionistische Logik
Prozeduren für klasssiche Logik lassen sich nicht ohne Weiteres auf intuitionistische Logik übertragen, wie auch klassische Beweise sich auch nur mit einigem Aufwand in kontruktive Beweise
umwandeln lassen. Bei der Entwicklung eines Deduktionssystems treten zunächst folgende Einschränkungen auf: Es gibt kein Äquivalent zur Skolemisierung (also müssen δ-Regeln miteinbezogen werden), die Beweise sind nicht konfluent (die Reihenfolge der Regelanwendungen ist
somit von entscheidender Bedeutung) und das klassische Axiom des ausgeschlossenen Dritten
gilt nicht. Beweise erfordern also die Konstruktion eines positiven Beispiels.
Betrachtet man Sequenzensysteme für intuitionistische Logik, so ändert sich in erster Linie die Definition einer Sequenz. Dies ist nötig, da konstruktive Beweise keine Alternative im
Sukzedenten erlauben. Unter Berücksichtigung dieser Einschränkung ergibt sich aus dem Sequenzenkalkül mit Gleichheit LK= der Kalkül LJ= für intuitionistische Logik mit Gleichheit
(die formalen Regeln von LJ= finden sich in [DV01], Abb.3.1 zeigt die modifizierte Version LJ=
c ).
Vorhandene vollständige, terminierende Verfahren für Logik erster Stufe mit Gleichheit (wie
u.a. die in Abschnitt 2 vorgestellten) funktionieren nicht für intuitionistische Logik. Diese Erkenntnis ergibt sich aus der von Voronkov in [Vor96] dargestellten Beobachtung, daß die unentscheidbare Simultane Starre E-Unifikation in intuitionistischer Logik mit Gleichheit eine gewissermaßen ,,natürliche Repräsentation” besitzt.
Tatsächlich ist es möglich zu zeigen, daß sich simultane starre E-Unifizierbarkeit in polynomieller Zeit auf das Problem der Ableitbarkeit in LJ= reduzieren lässt. Da somit für jedes
vollständige Verfahren eine Behandlung von SSEU nötig ist, stellt sich einerseits die Frage nach
der Effizienz einer solchen Prozedur. Andererseits gibt es Fragmente der SSEU, die durchaus entscheidbar sind: So ist der Fall ohne Funktionssymbole NP-vollständig und das Pränex-Fragment
∀∗ ∃∀∗ entscheidbar und EXPTIME-hart. Ebenfalls entscheidbar sind Fälle mit nur einer Variable und nur einem unären Funktionssymbol. Es wäre also sinnvoll, diese Fragemente seperat zu
betrachten.
Um eine Implementation möglich zu machen, entwickelt Voronkov in [Vor96] ein für die
=
Automatisierung geeignetes, constraint-basiertes Ableitungssystem LJ=
c , das äquivalent zu LJ
ist. Dabei wird angenommen, es existiere eine Semi-Entscheidungs-Prozedur für SSEU, die bei
Bedarf aufgerufen werden kann.
Das System LJ=
c besteht aus zwei Teilen: Zum einen der Konstruktion eines Ableitungsskeletts
(die genaue Definition findet sich unten), zum anderen aus der Überprüfung der Erfüllbarkeit
eines aus diesem Skelett berechneten Constraints. Die Erzeugung des Skeletts lässt sich in etwa
mit Tableau-Expansionsschritten vergleichen.
Um den Kalkül LJ=
c genauer zu beschreiben, ist es also nötig, zunächst die Begriffe AbleitungsSkelett und Constraint einzuführen bzw. für diesen Zusammenhang zu definieren. Ein AbleitungsSkelett (derivation sekeleton) wird wie eine Ableitung ohne Sequenzen dargestellt und ist ein wie
folgt aufgebauter Baum: Seine Knoten werden mit den Namen von Inferenzregeln aus LJ = (in
diesem Falle außer der Gleichheits-Regeln) respektive LJ=
c bezeichnet, die Zahl der Elternknoten
eines Knotens ergibt sich aus der Anzahl der Prämissen der mit ihm identifizierten Inferenzregel,
und alle Knoten, deren Label Antezedenten-Regeln oder aber (Ax) sind, werden nummeriert,
Auf diese Weise abstrahieren Skelette von der Instanziierung der Variablen in Quantoren-Regeln
8
(Ax)
.
.
Γ, A(s1 , . . . , sn ), ∆ → A(t1 , . . . , tn ) · Γ=. ∪ ∆=. ` s1 = t1 ∧ . . . ∧ Γ=. ∪ ∆=. ` sn = tn
Γ, Λ, ∆ → ϕ · >
.
.
. (=)
Γ → s = t · Γ=. ` s = t
(Λ)
Γ, ϕ, ψ, ∆ → χ · C
(∧ →)
Γ, ϕ ∧ ψ, ∆ → χ · C
Γ, ϕ, ∆ → χ · C1 Γ, ψ, ∆ → χ · C2
(∨ →)
Γ, ϕ, ∨ψ, ∆ → χ · C1 ∧ C2
Γ → ϕ · C1 Γ → ψ · C2
(→ ∧)
Γ → ϕ ∧ ψ · C 1 ∧ C2
Γ→ϕ·C
(→ ∨1 )
Γ→ϕ∨ψ·C
Γ, ψ, ∆ → χ · C1 Γ, ϕ ⇒ ψ, ∆ → ϕ · C2
(⇒→)
Γ, ϕ ⇒ ψ, ∆ → χ · C1 ∧ C2
Γ, ϕ[y/x], ∀xϕ, ∆ → χ · C
(∀ →)
Γ, l∀xϕ, ∆ → χ · ∃yC
Γ→ψ·C
(→ ∨2 )
Γ→ϕ∨ψ·C
ϕ, Γ → ψ · C
(→⇒)
Γ→ϕ⇒ψ·C
Γ → ϕ[y/x] · C
(→ ∀)
Γ → ∀xϕ · ∃y(y 6 {v1 , . . . , vn } ∧ C
Γ, ϕ[y/x], ∆ → χ · C
(∃ →)
Γ, ∃xϕ, ∆ → χ · ∃y(y 6 {v1 , . . . , vn } ∧ C
Γ → ϕ[y/x]·
(→ ∃)
Γ → ∃xϕ · ∃yC
Abbildung 3: Der Sequenzenkalkül LJ=
c für intuitionistische Logik mit Gleichheit und Constraints
und (in LJ= ) von der Reihenfolge, in der die Gleichheitsregeln angewandt werden.
Den Zusammenhang zwischen einem solchen Ableitungs-Skelett und der Ableitbarkeit einer
Formel in LJ= ergibt sich aus dem Skelett-Instanziierungs-Problem. Dieses Problem betrifft die
Frage, ob zu einer gegebenen geschlossenen Sequenz S und einem Skelett S eine Ableitung von
S in LJ= mit dem Skelett S exitiert. Dieses Problem ist zwar für Formeln ohne Gleichheit entscheidbar und NP-vollständig - für Formeln mit Gleichheit jedoch unentscheidbar: Die simultane
starre E-Unifizierbarkeit lässt sich auch auf das Skelett-Instanziierungsproblem reduzieren.
Als weitere Voraussetzung für den Kalkül LJ=
c ist es nun notwendig, die Art der hier benutzten Constraints genau zu definieren - sie unterscheiden sich deutlich von den bisher benutzten.
Die Definition der Constraints für LJ=
c erfolgt induktiv:
1.
2.
3.
4.
5.
> ist ein Constraint,
für Terme t, t1 , . . . , tn ist t 6 {t1 , . . . , tn } Constraint,
.
.
.
starre Gleichungen der Form s1 = t1 , . . . , sn = tn ` s = t sind Constraints,
falls C1 , C2 Constraints sind, dann ist auch C1 ∧ C2 Constraint,
Ist C ein Constraint und x eine Variable, dann ist auch ∃xC Constraint.
Zum besseren Verständnis kann man einen solchen Constraint als Formel erster Ordnung interpretieren. Für diese Sichtweise benutzt man die atomaren Formeln >, t 6 {t1 , . . . , tn } und
.
E ` s = t dergestalt, daß man . . . 6 . . . und . . . ` . . . als Familie von Prädikatsymbolen beliebiger
Stelligkeit betrachtet.
Unter der Erfüllbarkeit eines Constraints C durch eine Substitution σ versteht man dementsprechend (analog zum Erfüllbarkeitsbegriff in Logik erster Stufe), daß C unter σ wahr ist. Falls
eine Substitution σ existiert, die C erfüllt, so heißt C erfüllbar. Dargestellt wird die ,,erfüllt”Beziehung als σ C und ebenfalls induktiv genauer definiert:
1.
2.
3.
4.
5.
für jede Substitution σ gilt σ >,
.
.
σ E ` s = t falls σ eine Lösung der starren Gleichung E ` s = t ist,
σ t 6 {t1 , . . . , tn } falls tσ eine Variable ist und tσ nicht in t1 σ, . . . , tn σ vorkommt,
σ C1 ∧ C2 falls σ C1 und σ C2 ,
σ ∃xC falls es eine Substitution τ gibt mit τ C und yτ = yσ für jede Variable y.
Zum Einführung des Constraint-Sequenzenkalküls LJ=
c sei noch folgende Notation festgelegt:
.
.
Sei Γ eine Sequenz, dann sei Γ=. := {s = t|s = t ∈ Γ}. Die Ableitungsregeln des Kalküls finden
9
sich in Abb. 3.1. Wie zu sehen ist, verabeitet der Kalkül LJ=
c Constraint-Sequenzen der Form
S · C, wobei S eine Sequenz und C ein Constraint wie oben definiert sind.
Zunächst wird ein Ableitungs-Skelett konstruiert, indem man eine mögliche Reihenfolge
von Regelanwendungen auf die Zielformel betrachtet. Dann ist es möglich, den -gewissermaßen
synthetisch- den resultierenden Constraint zu bestimmen. Von dessen Erfüllbarkeit hängt es
schließlich ab, ob diese Ableitungsfolge zu einem Beweis der Zielformel führt oder nicht. Um zu
veranschaulichen, wie eine Ableitung in LJ=
c konkret aussehen kann, folgen nun zwei Beipiele.
.
.
.
Beweis der Formel ∀x(x = a ∨ x = b ⇒ ∃y(f (x, y) = b)) ⇒
.
∃u∃v∃w(f (f (u, v), w) = b) - zunächst ein kürzerer Ableitungsversuch, der nicht zum Ziel führt, danach
ein längerer, erfolgreicher Beweis der Formel. Um das Beispiel etwas übersichtlicher zu gestalten, wird
.
.
.
die Teilformel ∀x(x = a ∨ x = b ⇒ ∃y(f (x, y) = b)) mit ϕ bezeichnet.
Beispielableitung in LJ=
c :
.
.
. (=)
ϕ → f (f (u, v), w) = b· ` f (f (u, v), w) = b
.
. (→∃)
ϕ → ∃w(f (f (u, v), w) = b) · ∃w(` f (f (u, v), w) = b)
.
. (→∃)
ϕ → ∃v∃w(f (f (u, v), w) = b) · ∃v∃w(` f (f (u, v), w) = b)
.
. (→∃)
ϕ → ∃u∃v∃w(f (f (u, v), w) = b) · ∃u∃v∃w(` f (f (u, v), w) = b)
.
. (→⇒)
→ ϕ ⇒ ∃u∃v∃w(f (f (u, v), w) = b) · ∃u∃v∃w(` f (f (u, v), w) = b)
.
Der hier ermittelte Constraint ∃u∃v∃w(` f (f (u, v), w) = b) ist offensichtlich nicht erfüllbar (es sind
ja gar keine zu lösenden Gleichungen vorhanden). Im zweiten Beispiel wird bei der Skelett-Konstruktion
anders vorgegangen: Nach der Introduktion des ersten Existenzquantors wird ϕ miteinbezogen, bevor
die restlichen Existenzquantoren betrachtet werden. So wird es möglich, im Constraint die notwendigen
starren Gleichungen zu erhalten. Die Constraints werden nun aus Platzgründen mit C1 − C12 bezeichnet
und im Nachhinein angegeben.
.
(=)
.
.
.
f (x1 , y1 ) = b, f (x2 , y2 ) = b, ϕ → f (f (u, v), vw) = b · C1
.
(→∃)
(=)
.
.
.
.
f (x1 , y1 ) = b, f (x2 , y2 ) = b, ϕ → ∃w(f (f (u, v), vw) = b) · C2
. . . → x2 = b · C 3
(∃→)
(→∨2 )
.
.
.
.
.
f (x1 , y1 ) = b, ∃y(f (x2 , y2 ) = b), ϕ → ∃w(f (f (u, v), vw) = b) · C4
. . . → x2 = a ∨ x 2 = b · C 3
(⇒→)
.
.
.
.
.
f (x1 , y1 ) = b, x2 = a ∨ x2 = b ⇒ ∃y(f (x2 , y2 ) = b), ϕ → ∃w(f (f (u, v), w) = b) · C5
(∀→)
.
.
f (x1 , y1 ) = b, ϕ → ∃w(f (f (u, v), vw) = b) · C6
.
(=)
(→⇒∃)
.
.
.
f (x1 , y1 ) = b, ϕ → ∃v∃w(f (f (u, v), vw) = b) · C7
. . . → x2 = a · C 8
(∃→)
(→∨1 )
.
.
.
.
∃y(f (x1 , y1 ) = b), ϕ → ∃v∃w(f (f (u, v), vw) = b) · C9
. . . → x2 = a ∨ x 2 = b · C 8
(⇒→)
.
.
.
.
x2 = a ∨ x2 = b ⇒ ∃y(f (x1 , y1 ) = b), ϕ → ∃v∃w(f (f (u, v), vw) = b) · C10
(→∀)
.
ϕ → ∃v∃w(f (f (u, v), w) = b) · C11
(→∃)
.
ϕ → ∃u∃v∃w(f (f (u, v), w) = b) · C12
(→⇒)
.
→ ϕ ⇒ ∃u∃v∃w(f (f (u, v), w) = b) · C12
.
.
.
C1 f (x1 , y1 ) = b, f (x2 , y2 ) = b ` f (f (u, v), w) = b
.
.
.
C2 ∃w(f (x1 , y1 ) = b), f (x2 , y2 ) = b ` f (f (u, v), w) = b
.
.
C3 f (x1 , y1 ) = b ` x2 = b
.
.
.
C4 ∃y2 (y2 6 {x1 , y1 , x2 , u, v} ∧ ∃w(f (x1 , y1 ) = b), f (x2 , y2 ) = b ` f (f (u, v), w) = b
C5 C 3 ∧ C 4
C6 ∃x2 (C3 ∧ C4 )
C7 ∃v∃x2 (C3 ∧ C4 )
.
C8 ` x1 = a
C9 ∃y1 (y1 6 {x1 , u} ∧ ∃v∃x2 (C3 ∧ C4 )
.
C10 ∃y1 (y1 6 {x1 , u} ∧ ∃v∃x2 (C3 ∧ C4 )∧ ` x1 = a
.
C11 ∃x1 (∃y1 (y1 6 {x1 , u} ∧ ∃v∃x2 (C3 ∧ C4 )∧ ` x1 = a)
.
C12 ∃u∃x1 (∃y1 (y1 6 {x1 , u} ∧ ∃v∃x2 (C3 ∧ C4 )∧ ` x1 = a)
10
Γ, ϕT
(T )
Γ, ϕT
Γ T , ∆F , ϕ F
(F )
Ξ, ΓT , ♦∆F , ϕF
Γ T , ∆F , ϕ T
(T ♦)
Ξ, ΓT , ♦∆F , ♦ϕT
Γ, ϕF
(F ♦)
Γ, ♦F
Abbildung 4: Der Kalkül S4= für die Modallogik S4 mit Gleichheit
3.2
Modallogiken
Für Modallogiken stellt sich die Gleichheitsbehandlung als sehr kontrovers heraus. Zwar existieren einige Modallogiken wie beispielsweise S4, für die die Gleichheit axiomatisiert ist. Trotzdem
ist die Definition des Gleichheitsbegriffes für modale Logiken nicht einheitlich. Ursprünglich gilt
die Substitutivität als die entscheidende Eigenschaft der Gleichheit. Dies gilt uneingeschränkt für
Objekte - jedoch nicht mehr, wenn über Objekte gesprochen wird. Dieses Dilemma beschreibt
das Morgenstern/Abendstern-Problem: Es gilt, daß Morgenstern = Abendstern; also sollte man
in jedem Zusammenhang beide Begriffe beliebig gegeneinander austauschen können, ohne daß
sich der Wahrheitswert einer Aussage dadurch verändert. Ersetzt man jedoch in der wahren
Aussage ,,Die Griechen wussten, dass der Morgenstern der Morgenstern ist.” das zweite Vorkommen von ,,Morgenstern”, so erhält man die falsche Aussage ,,Die Griechen wußten, daß der
Morgenstern der Abendstern ist.”.
Angesichts solcher Schwierigkeiten ist es nicht überraschend, daß es offenbar nur wenige
Ansätze für eine spezielle Gleichheitsbehandlung gibt. Voronkov und Degtyarev stellen in [DV01]
ein Kalkül S4= vor, ohne alternative Gleichheitsbegriffe zu berücksichtigen (S4= entsteht aus
LK= durch hinzufügen der in Abb.3.2 dargestellten Regeln). Dieses Kalkül lässt sich zwar auf mit
S4 verwandte Logiken übertragen - wirft jedoch gleichzeitig das nächste Problem auf: Anhand
von S4= skizzieren Degtyarev und Voronkov einen Beweis dafür, dass hier die simultane starre
E-Unifikation genauso unumgänglich ist wie für intuitionistische Logik mit Gleichheit.
Fitting beschäftigt sich in [Fit91] mit dem Problem der oben beschriebenen Diskrepanz zwischen der Gleichheit von Objekten und Gleichheit ihrer Bezeichner. Seine Lösung sieht wie
folgt aus: Er definiert ein nicht-starres Kripke Modell als normal, falls in jeder möglichen Welt
.
die Interpretation des zweistelligen Prädikats = die Gleichheitsrelation ist. Um Gleichheit von
Objekten behandeln zu können, ergänzt er folgende Regeln zum Tableaukalkül:
Reflexive Rule: Für jede verfügbare obejct expression o und jedes verfügbare Präfix σ darf der
verallgemeinerte Satz σo = o zum Ende jedes beliebigen Zweigs hinzugefügt werden.
Substitution Rule: Falls Φ(x) eine Formel, in der nur x frei vorkommt, dann darf zu jedem
Tableau Zweig, der σΦ(o1 ) und σo1 = o2 enthält σΦ(o2 ) hinzufügen (wobei o1 und o2
ebenfalls object expressions sind).
4
Ausblick
Während für Gleichheitsbehandlung in klassischer Logik einige vollständige und korrekte Verfahren unabhängig von der Unentscheidbarkeit der SSEU existieren (wie beispielsweise die
vorgestellte Gleichheits-Eliminierung) , ist diese für intuitionistische sowie vergleichbare nichtklassische Logiken unumgänglich. Dementsprechend gibt es bisher auch kaum Erfolge in diesen
Bereichen - also wäre es durchaus sinnvoll, nach effektiveren Verfahren für simultane starre EUnifizierbarkeit zu suchen. Ausserdem wäre es interessant, nicht-klassische Logiken zu finden,
für die eine Gleichheitsbehandlung analog zu klassischer Logik möglich wäre.
Auch alternative Charakterisierungen von Gleichheit bieten sich für weitere Betrachtungen
an. So gibt es beispielsweise einen Theorem Beweiser für intuitionistische Logik von Sahlin,
Franzén und Haridi, der einen abweichenden Gleichheitsbegriff benutzt. Laut [Vor96] gibt es
11
auch Pläne, Gleichheit in Tammets Beweiser für intuitionistische Logik einzubauen. Dieser Beweiser implementiert im Übrigen auch die von Voronkov erstmals 1985 entwickelte Strategie,
sich auf konjunktive Teilformeln der Zielformel zu konzentrieren. Implementationen der Gleichheitseliminierung (die ja ebenfalls auf dieser Methode aufbaut) existieren offenbar derzeit genausowenig wie Umsetzungen von TBSE. Die Frage, ob beispielsweise eine Implementation der
Gleichheitseliminierung mit resolutionsbasierten Beweisern konkurrieren könnte, bleibt somit
offen.
Literatur
[DV96a] Anatoli Degtyarev and Andrei Voronkov. Equality elimination for the tableau method.
In DISCO, pages 46–60, 1996.
[DV96b] Anatoli Degtyarev and Andrei Voronkov. What you always wanted to know about
rigid E-unification. In JELIA, pages 50–69, 1996.
[DV01]
A. Degtyarev and A. Voronkov. Equality reasoning in sequent-based calculi. In A. Robinson and A. Voronkov, editors, Handbook of Automated Reasoning, volume I, chapter 10, pages 611–706. Elsevier Science, 2001.
[Fit90]
Melvin C. Fitting. First order logic and automated theorem proving. Berlin: SpringerVerlag, Berlin, 1990.
[Fit91]
Melvin C. Fitting. Modal logic should say more than it does. In Jean-Louis Lassez
and Gordon Plotkin, editors, Computational Logic, Essays in Honor of Alan Robinson,
pages 113–135. MIT Press, Cambridge, MA, 1991.
[Vor96] Andrei Voronkov. On proof-search in intuitionistic logic with equality, or back to
simultaneous rigid E-unification. Technical report, June 05 1996.
12
Herunterladen