Sie sind auf Seite 1von 20

Kapitel 2

Einfhrung in die Prdikatenlogik


2.1 Syntax und Semantik
Prdikatenlogische Formeln sind im Gegensatz zu aussagenlogischen Formeln aufgebaut aus gewissermaen parametrisierten Elementaraussagen. Auch diese knnen durch die logischen Operationen
(Junktoren) verknpft werden, zustzlich knnen ber Quantifizierungen Einschrnkungen der Parameter vorgenommen werden.
Zeichenvorrat:
1. Individuenvariablen: x, y, z, . . . , x1 , x2 , . . .
2. Individuenkonstanten: a, b, c, . . . , a1 , a2 , . . .
3. Funktionssymbole beliebiger Stelligkeiten: f, g, h, . . . , f1 , f2 , . . .
4. Prdikatssymbole beliebiger Stelligkeiten: P, Q, R, . . . , P1 , P2 , . . .
5. Junktoren: , ,
6. Quantoren: ,
7. Hilfszeichen: (, ), , (Komma)
Die Stelligkeit von Prdikats- und Funktionssymbolen wird bisweilen in Form eines oberen Indexes gekennzeichnet; so bezeichnet f (n) ein n-stelliges Funktionssymbol. Wir gehen davon aus, da
die Stelligkeit einer Funktion oder eines Prdikats immer mindestens 1 ist, sie haben also immer
mindestens ein Argument. Auerdem fordern wir, da die Funktionen und Prdikate innerhalb eines
Kontextes immer mit der gleichen Anzahl von Argumenten verwendet wird, also nicht mit wechselnder Anzahl z.B. als P (x) und P (u, v).
Eine Auswahl von Individuenkonstanten, Funktionssymbolen mit festen Stelligkeiten, Prdikatssymbolen mit festen Stelligkeiten, die jeweils auch nur aus endlich vielen Elementen bestehen kann,
wird als Signatur bezeichnet.
Man kann auf die Individuenkonstanten verzichten, wenn man 0-stellige Funktionszeichen zult.
(Eine 0-stellige Funktion hat keine Argumente, von denen der Funktionswert abhngen knnte;
die Funktion ist daher konstant.) Lt man 0-stellige Prdikatensymbole zu, so ist die Aussagenlogik unmittelbar eine Teilmenge der Prdikatenlogik. Will man ohne die 0-stelligen Prdikate die
Aussagenlogik in die Prdikatenlogik einbetten, so kann man stattdessen fr eine aussagenlogische
Variable p eine Formel xP (x) verwenden.
Mit Hilfe der Individuenvariablen, der Individuenkonstanten und der Funktionssymbole werden nun
induktiv die Terme definiert, mit denen die Prdikate parametrisiert werden knnen.

Definition 2.1.1 (Terme)


Die Klasse der Terme wird induktiv definiert durch die folgenden vier Schritte.
(1) Jede Individuenvariable ist ein Term.
(2) Jede Individuenkonstante ist ein Term.
(3) Sind t1 , . . . , tn Terme und f eine n-stellige Funktion, so ist auch f (t1 , . . . , tn ) ein Term.
(4) Nur mit (1) (3) gebildete Ausdrcke sind Terme.
Jeder Term besitzt eine eindeutige Zerlegung: Er ist entweder eine Variable, eine Konstante oder ein
(mit Hilfe einer Funktion) zusammengesetzter Term.
Man kann die Klasse der Terme auch einschrnken durch eine gegebene Signatur und eine Menge
von Variablen. T (V ) bezeichnet die Klasse der Terme die mit Individuenkonstanten und Funktionssymbolen der Signatur und Variablen aus der Variablenmenge V gebildet werden knnen.
Aufbauend auf der Klasse der Terme wird ebenfalls induktiv die Klasse der prdikatenlogischen Formeln definiert.
Definition 2.1.2 (Prdikatenlogische Formeln)
Die Klasse der prdikatenlogischen Formeln wird induktiv definiert durch die folgenden fnf Schritte.
(1) Sind t1 , . . . , tn Terme und P eine n-stelliges Prdikatssymbol, so ist P (t1 , . . . , tn ) eine Formel.
(2) Ist eine Formel, so ist auch () eine Formel.
(3) Falls und Formeln sind, so sind auch ( ) und ( ) Formeln.
(4) Falls eine Formel ist und x eine Individuenvariable, so sind auch (x) und (x) Formeln.
(5) Nur mit (1) (4) gebildete Ausdrcke sind Formeln.
Auch prdikatenlogische Formeln werden hufig auch als (prdikatenlogische) Ausdrcke bezeichnet; die nach (1) der vorstehenden Definition gebildeten atomaren Formeln heien auch Primformeln. Jede prdikatenlogische Formel besitzt eine eindeutige Zerlegung: Sie ist entweder ein Atom,
eine Negation, eine Konjunktion, eine Disjunktion oder eine existenz- bzw. allquantifizierte Formel.
Die Quantoren beziehen sich nur auf Individuenvariablen. Es knnen also nur Aussagen ber Existenz von Objekten bzw. universelle Aussagen gemacht werden. Wir sprechen daher von der Prdikatenlogik erster Stufe. Im Gegensatz dazu verfgt die Prdikatenlogik zweiter Stufe auch ber
Funktions- und Prdikatsvariablen, ber die quantifiziert werden darf. Man kann dort Aussagen ber
z.B. die Existenz einer injektiven Abbildung machen. Da wir hier nur erststufige Formeln betrachten, sprechen wir statt von der Prdikatenlogik erster Stufe nur von der Prdikatenlogik, da keine
Miverstndnisse zu befrchten sind.
Werden in einer Formel nur die Individuenkonstanten, Funktionssymbole und Prdikatensymbole
einer vorgegebenen Signatur verwendet, so sprechen wir von Formeln ber . Umgekehrt induzieren die in einer Formel vorkommenden Symbole eine Signatur.
Analog zur Aussagenlogik fhren wir die Implikation ( ) als eine Abkrzung fr (() )
ein. Ebenfalls als Abkrzung verwenden wir wieder die quivalenz ( ) fr (( ) ( )).

Zur Klammereinsparung ist es wieder sinnvoll, Bindungsregeln festzulegen.


Bindungsregeln:
1.) , und binden strker als .
2.) bindet strker als .
3.) Binre Operatoren gleicher Strke werden als links geklammert angesehen.
Dabei ist zu beachten, da in (4) der Definition der Formeln die Klammerung quantifizierter Formeln auch den Bindungsbereich der Variablen kennzeichnen. So ist es sinnvoll, in einer Formel
xP (x) Q(x) trotz Bindungsregeln die Klammerung (xP (x)) Q(x) beizubehalten, um Miverstndnissen vorzubeugen.
Wie in der Aussagenlogik bezeichnen wir negierte und nicht-negierte Primformeln als Literale. Eine
nicht-negierte Primformel P (t1 , . . . , tn ) heit auch positives Literal und P (t1 , . . . , tn ) negatives
Literal.
Fr die spteren Definitionen ist es sinnvoll, unterscheiden zu knnen, ob Variablen im Bindungsbereich eines Quantors in einer Formel vorkommen oder nicht. Wir fhren daher die Begriffe gebundene und freie Variable ein.
Definition 2.1.3 (Gebundene / freie Variablen)
Fr Terme t und Formeln der Prdikatenlogik definieren wir die Mengen vars (t) bzw. vars ()
der Variablen, freevars() der freien Variablen und boundvars() der gebundenen Variablen von t
bzw. induktiv durch:
(1) Ist t eine Individuenvariable, t = x, so ist vars (t) = {x}.
(2) Ist t eine Individuenkonstante, t = a, so ist vars (t) = .
(3) Ist t = f (t1 , . . . , tn ) mit Termen t1 , . . . , tn so ist vars (t) =

Sn

i=1 vars (ti ).

(4) Ist = P (t1 , . . . , tn ) mit Termen t1 , . . . , tn , so ist


S
vars () = freevars() = ni=1 vars (ti ) und boundvars() = .
(5) Ist = mit einer Formel , so ist
vars () = vars (),
freevars() = freevars() und
boundvars() = boundvars().
(6) Falls = oder = mit Formeln und , so ist
vars () = vars () vars (),
freevars() = freevars() freevars() und
boundvars() = boundvars() boundvars().
(7) Falls = x oder = x mit einer Formel und einer Individuenvariablen x, so ist
vars () = vars () {x},
freevars() = freevars() \ {x} und
boundvars() = boundvars() {x}.
Aufgrund der Schachtelung von Strukturen in den Termen knnen wir die Lngendefinition ber
die Atomvorkommen in der Prdikatenlogik nicht verwenden. Als Lngenma kann allerdings die
Gesamtzahl aller Vorkommen von Variablen, Konstanten, Funktionen und Prdikaten verwendet
werden. Eine Formel xy(P (f (x, x), y) Q(x)) hat danach die Lnge 9. Auf eine formale Definition des Lngenmaes verzichten wir hier, wollen aber dennoch bemerken, da Schachtelungen
von Negationen und die Lngen der Bezeichner bei diesem Lngenma genau wie in der Aussagenlogik unbercksichtigt bleiben.
3

Definition 2.1.4 (Interpretation)


Eine Interpretation ist ein nicht leerer Grundbereich zusammen mit einer Abbildung der Individuenvariablen, Individuenkonstanten, Funktionskonstanten und Prdikatskonstanten einer (durch
eine Formel induzierten) Signatur und einer Variablenmenge V auf entsprechende Objekte
(gleicher Stelligkeit) ber dem Grundbereich :
: =
6
x
7
x
..
.

f (n)
..
.

7 f : n

P (n) 7 P n
..
.

a 7 a
..
.

Die Abbildung der Variablen und Konstanten auf Elemente von lt sich induktiv erweitern zu
einer ebenfalls mit bezeichneten Interpretation der Terme in T (V ) durch Elemente von :
(f (t1 , . . . , tn ) = (f )((t1 ), . . . , (tn ))
Den Formeln knnen dann Wahrheitswerte zugewiesen werden durch eine auf der Interpretation der
Terme basierende Funktion, die wieder mit bezeichnet wird:
(1) (P (t1 , . . . , tn )) = 1 gdw. P ((t1 ), . . . , (tn )) gilt.
(2) () = 1 gdw. () = 0.
(3) ( ) = 1 gdw. () = 1 und () = 1.
( ) = 1 gdw. () = 1 oder () = 1.
(4) (x) = 1 gdw. fr jedes x gilt [x/x ] () = 1
(x) = 1 gdw. es ein x gibt mit [x/x ] () = 1.
Dabei bezeichnet [x/x ] die Interpretation, die mit vllig bereinstimmt bis auf die Zuweisung
eines Wertes an die Variable x, die unter den Wert (x), unter [x/x ] jedoch den Wert x erhlt.
Fr eine Formel mssen zwei Interpretationen, die auf den in vorkommenden Symbolen gleich
sind, auch den gleichen Wahrheitswert liefern. Wie in der Aussagenlogik kann man daher auch in
der Prdikatenlogik ein Koinzidenzlemma zeigen.
Lemma 2.1.5 (Koinzidenzlemma)
Seien 1 und 2 zwei Interpretationen fr eine prdikatenlogische Formel , die von induzierte Signatur. Stimmen 1 und 2 auf und freevars() berein, so gilt 1 () = 2 ()
Die Anzahl der mglichen Interpretationen ist trotz dieses Koinzidenzlemmas nicht auf eine endliche
Anzahl beschrnkbar. Daher lassen sich Formeln der Prdikatenlogik nicht durch systematisches
Testen der Interpretationen entscheiden.
Beispiel: Sei = xyP (x, y) z(P (z, z) P (z, f (z))) P (a, a). Dann ist durch mit
: = {1, 2}
a 7
1

f (1)
P (2)

7 f :
f (1) = 2, f (2) = 1
7 P = {(1, 2), (2, 1)}

Offensichtlich gilt fr diese Interpretation:


=
=
=

Fr alle x {1, 2} gibt es ein y {1, 2} mit (x , y ) P .


Fr alle x {1, 2} gibt es ein y {1, 2} [x/x ][y/y ] (P (x, y)) = 1.
Fr alle x {1, 2} gilt [x/x ] (yP (x, y)) = 1.
(xyP (x, y)) = 1
4

Weiter gilt fr :

=
=

Fr alle z {1, 2} gilt mit (z , z ) P auch (z , f (z )) P .


Fr alle z {1, 2} gilt [z/z ] (P (z, z) P (z, f (z))) = 1.
(z(P (z, z) P (z, f (z)))) = 1

Da auch noch (1, 1) 6 P gilt, folgt insgesamt () = 1, diese Interpretation erfllt also die
prdikatenlogische Formel .
2
Analog zur entsprechenden Definition in der Aussagenlogik knnen mit Hilfe der Interpretationen
die Begriffe erfllbar und widerspruchsvoll sowie der semantische Folgerungsbegriff definiert werden.
Definition 2.1.6 (erfllbar, widerspruchsvoll, Tautologie)
Eine prdikatenlogische Formel heit erfllbar genau dann, wenn es eine Interpretation mit
() = 1 gibt. heit falsifizierbar genau dann, wenn es eine Interpretation mit () = 0
gibt. heit widerspruchsvoll genau dann, wenn fr alle Interpretationen () = 0 gilt. ist eine
Tautologie genau dann, wenn fr alle Interpretationen () = 1 gilt.
Statt ist eine Tautologie verwendet man auch die Sprechweise ist (allgemein)gltig. Offensichtlich besteht wieder der folgende Zusammenhang zwischen den Begriffen. Fr eine prdikatenlogische Formel gilt:

ist widerspruchsvoll
ist Tautologie

ist nicht erfllbar


ist nicht falsifizierbar

Definition 2.1.7 (Semantischer Folgerungsbegriff)


Seien und Formeln, dann folgt (semantisch) aus ( |= ) genau dann, wenn fr alle
Bewertungen gilt:
() = 1 = () = 1
Eine Formel folgt also semantisch aus einer Formel , wenn in jedem Kontext wahr ist, in dem
auch wahr ist. Wir erweitern den Folgerungsbegriff wieder durch 1 , . . . , n |= bzw. F |= mit
einer Formelmenge F, wenn gilt unter der Voraussetzung, da alle 1 , . . . , n bzw. alle Formeln
aus F gelten. Die Schreibweise |= ist damit quivalent zu ist Tautologie.
Wie in der Aussagenlogik kann die Folgerung |= berprft werden, indem wir ( ) auf
Widerspruch testen.
Lemma 2.1.8 Sei eine prdikatenlogische Formel, dann gilt:
a) |= ( ) ist widerspruchsvoll.
b) ist widerspruchsvoll Fr alle Formeln gilt: |=
c) ist widerspruchsvoll Es gibt eine Formel mit : |= ( )
Fr den Folgerungsbegriff in der Prdikatenlogik lt sich auch ein Deduktionstheorem beweisen.
Lemma 2.1.9 (Deduktionstheorem fr |=)
Seien und prdikatenlogische Formeln und M eine Menge solcher Formeln, dann gilt:
M {} |=

=
5

M |= ( )

Auch zwei prdikatenlogische Formeln und heien (logisch) quivalent, abgekrzt ,


genau dann, wenn fr jede Bewertung gilt: () = (), d.h. wenn gilt |= .
Die Manipulation prdikatenlogischer Formeln durch die Ersetzung von Vorkommen von Teilformeln durch andere logisch quivalente Formeln ist ebenfalls mglich. Das Resultat einer solchen
Ersetzung ist logisch quivalent zur Ausgangsformel. Diese Ersetzungen drfen nicht verwechselt
werden mit den spter noch zu definierenden Ersetzungen von Variablen durch Terme. Dort sind
Restriktionen aus den Bindungsbereichen der Quantoren zu beachten.
Die aus der Aussagenlogik bekannten Vererbungsregeln und Umformungsgesetze gelten auch hier,
sowie einige zustzliche, die die Quantifikationen bercksichtigen.
Vererbung

Negation
Idempotenz
Kommutativitt
Assoziativitt
Distributivitt
De Morgan
Quantorwechsel
Quantortausch
Quantorzusammenfassung
Quantorelimination
Quantifizierung

Umbenennung

=
= und
= x x und x x



( ) ( )
( ) ( )
( ) ( ) ( )
( ) ( ) ( )
( )
( )
(x) x() und (x) x()
xy yx und xy yx
x x x( ) und x x x( )
(x 6 freevars())
x und x
(x 6 freevars())
x x( ) und x x( )
x x( ) und x x( )
(x 6 vars ())
x x [x/x ] und x x [x/x ]

[x/x ] bezeichnet die Ersetzung aller Vorkommen von x durch x .

Eine weitere Abschwchung des quivalenzbegriffes ist die sogenannte Erfllbarkeitsquivalenz.


Sie verbindet zwei Formeln nur in Bezug auf ihre Erfllbarkeit.
Definition 2.1.10 (Erfllbarkeitsquivalenz)
sat

Zwei Formeln und heien erfllbarkeitsquivalent, abgekrzt , genau dann, wenn gilt:
ist erfllbar

ist erfllbar

Also sind auch alle erfllbaren prdikatenlogischen Formeln erfllbarkeitsquivalent und auch alle
widerspruchsvollen prdikatenlogischen Formeln.

2.2 Normalformen
2.2.1

Prnexe Normalform (PNF)

Die im vorhergehenden Abschnitt genannten quivalenzerhaltenden Umformungen erlauben unmittelbar die Transformation auch von prdikatenlogischen Formeln in die Negationsnormalform. Die
Negationsnormalform (NNF) fr prdikatenlogische Formeln erlaubt wie in der Aussagenlogik Negationszeichen nur direkt vor einer Primformel und keine zwei Negationszeichen direkt hintereinander.
6

Lemma 2.2.1 Zu jeder prdikatenlogischen Formel gibt es eine quivalente Formel in Negationsnormalform (NNF).
Durch die auch in der Negationsnormalform noch fast berall mglichen Quantoren ist die unmittelbare Anwendung von Distributivgesetzen fr logisches Und und Oder meist nicht zulssig. Die
Transformationsregeln fr Quantoren erlauben aber die Bildung einer logisch quivalenten prnexen
Form, d.h. einer Formel, die zunchst ein Prfix aus Quantoren und dann einen quantorfreien Kern
aufweist, Q1 x1 . . . Qn xn mit Qi {, } fr 1 i n und boundvars() = . Wir nennen diese
Formelgestalt prnexe Normalform (PNF). In der Literatur findet man hufig noch die zustzliche
Forderung, da fr eine prnexe Normalform der Kern in konjunktiver Normalform (KNF) vorliegen
mu.
Fr eine Umformung in prnexe Normalform ist zu bercksichtigen, da folgende quivalenzen
nicht bestehen:
x x 6 x( )
x x 6 x( )
Dies verifiziert man leicht durch = P (x) und = P (x) mit der Interpretation x ist gerade fr
P (x) ber dem Grundbereich der ganzen Zahlen.
Zustzlich sind bei den quivalenzen aus dem letzten Abschnitt die Bedingungen x 6 freevars()
fr das Vorziehen der Quantifizierung zu bercksichtigen. Ein Ausweg aus diesem Dilemma ist das
Umbenennen der gebundenen Variablen durch neue Variablen, die bisher nicht in der Formel vorkommen. Vermeidet man dann noch Quantorzusammenfassungen, so gelangt man zu einer logisch
quivalenten prnexen Form.
Die Transformationsregeln erlauben folgendes Vorgehen:
1. Benenne durch Verwendung von neuen Variablen alle quantifizierten Variablen so um, da
verschiedene Quantoren sich auf verschiedene Variablen beziehen und keine quantifizierte
Variable auch frei vorkommt.
2. Fhre die folgenden Ersetzungsregeln solange aus, wie sie anwendbar sind.
a)
b)
c)
d)
e)
f)

Ersetze
Ersetze
Ersetze
Ersetze
Ersetze
Ersetze

(x)
(x)
(x)
(x)
x
x

durch
durch
durch
durch
durch
durch

x( )
x( )
x( )
x( )
x
x

3. Fhre die folgenden Ersetzungsregeln solange aus, wie sie anwendbar sind.
g)
h)

Ersetze
Ersetze

( )
( )

durch
durch

4. Fhre die folgenden Ersetzungsregeln solange aus, wie sie anwendbar sind.
i)

Ersetze

( )

( ) ( )

durch

Offensichtlich lassen sich die Schritte e) und f) aus 2) sowie 3) zur Bildung der Negationsnormalform auch vorab ausfhren. Hier wird allerdings durch 1) und 2) zunchst eine prnexe Form erstellt,
die in 3) zu einer prnexen Negationsnormalform transformiert wird. Schritt 4) schlielich transformiert den quantorfreien Kern von der Negationsnormalform in die Konjunktive Normalform um.
Lemma 2.2.2 Zu jeder prdikatenlogischen Formel gibt es eine quivalente Formel in prnexer
Normalform (PNF).
7

Beispiel:
= x(P (x) Q(x)) x(P (x) R(x)) x(Q(x) yR(y))
x1 (P (x1 ) Q(x1 )) x2 (P (x2 ) R(x2 )) x3 (Q(x3 ) yR(y))
x1 (P (x1 ) Q(x1 )) x2 (P (x2 ) R(x2 )) x3 y(Q(x3 ) R(y))
x1 x2 x3 y((P (x1 ) Q(x1 )) (P (x2 ) R(x2 )) Q(x3 ) R(y))
2

2.2.2

Skolem-Normalform

Die in einer prnexen Normalform vorkommenden Existenzquantoren werden in jeder Interpretation so gedeutet, da in Abhngigkeit von den Werten der im Prfix vorstehenden allquantifizierten
Variablen ein Wert fr die existenzquantifizierte Variable bestimmt werden mu, der die Formel
erfllt. Hierdurch wird auf dem Grundbereich der Interpretation eine Abbildung definiert, die den
Werten der -Variablen den Wert der -Variablen zuordnet. Es ist daher naheliegend, anstelle der
-Variablen eine neue Funktion einzusetzen mit den -Variablen als Argumenten. Diese Ersetzung
nennt man Skolemisierung.
Untersucht man die Erfllbarkeit von Formeln, so haben freie Variablen und existenzquantifizierte
Variablen, die nicht im Bindungsbereich einer allquantifizierten Variablen liegen, die gleiche Bedeutung.1 Daher beschrnken wir uns im folgenden auf geschlossene Formeln, d.h. auf Formeln ohne
freie Variablen.
Lemma 2.2.3 In einer geschlossenen prdikatenlogischen Formel mit paarweise verschiedenen quantifizierten Variablen sei y eine existenzquantifizierte Variable, die im Bindungsbereich der
allquantifizierten Variablen x1 , . . . , xn liegt. Sei die Formel, die sich durch Elimination des Quantors y und Ersetzung aller weiteren Vorkommen von y durch f (x1 , . . . , xn ) mit einer fr neuen
Funktion f ergibt. Dann sind und erfllbarkeitsquivalent.
Die Erweiterung erfllender Interpretationen fr um eine Funktion fr f in der zuvor beschriebenen Weise ergibt unmittelbar eine erfllende Bewertung fr . Umgekehrt kann fr y immer der
Funktionswert fr f (x1 , . . . , xn ) in einer erfllenden Interpretation fr gewhlt werden.
Eine prnexe Normalform ohne Existenzquantoren nennen wir Skolem-Normalform (SKNF). Als
unmittelbare Konsequenz erhalten wir das folgende Lemma.
Lemma 2.2.4 Zu jeder prdikatenlogischen Formel gibt es eine erfllbarkeitsquivalente Formel in Skolem-Normalform (SKNF).
Beispiel:
x1 x2 x3 y((P (x1 ) Q(x1 )) (P (x2 ) R(x2 )) Q(x3 ) R(y))
SKN F

x2 x3 ((P (ax1 ) Q(ax1 )) (P (x2 ) R(x2 )) Q(x3 ) R(fy (x2 , x3 )))

2
Die Skolem-Normalform ist die Basis fr das weitere Arbeiten. Wenn der quantorfreie Kern der
Skolem-Normalform in Konjunktiver Normalform vorliegt, lassen sich die Allquantoren, aus denen das Prfix ja nur noch besteht, auf die einzelnen Klauseln verteilen (Umkehrung der Regeln
fr Quantorzusammenfassung und fr Quantifizierung). Mit Hilfe der Quantorelimination kann eine
quivalente Form erreicht werden, die aus einer Konjunktion geschlossener allquantifizierter Klauseln besteht ohne berflssige Quantoren. Die so entstandene Form heit Klauselnormalform.
1
Untersucht man die Frage, ob eine Formel Tautologie ist, so ist diese Aussage nicht richtig. Beispielsweise ist
die Formel P (x) yP (y) nicht erfllt, wenn eine Interpretation des Prdikates fr ein Element des Grundbereichs zutrifft, fr ein anderes jedoch nicht und die Interpretation letzteres der freien Variablen x zuweist. Die Formel
xP (x) yP (y) xP (x) xP (x) ist offensichtlich tautologisch.

Lemma 2.2.5 Zu jeder prdikatenlogischen Formel in Skolem-Normalform gibt es eine quivalente Formel in Klauselnormalform.
Fr das Verstndnis der Prdikatenlogischen Resolution sind folgende Eigenschaften der Klauselnormalform wichtig:
Klauseln, d.h. die allquantifizierten geschlossenen Disjunktionen knnen beliebig verdoppelt
werden.
Die quantifizierten Variablen knnen beliebig umbenannt werden.
Beide Manipulationen fhren zu logisch quivalenten Formeln.
Weitere Einschrnkungen der Klauseln in der Klauselnormalform werden analog zur Aussagenlogik
definiert, d.h. Unit-Klauseln bestehen aus nur einem Literal, Horn-Klauseln besitzen hchstens ein
positives Literal, etc.
Da alle Variablen einer Klauselnormalform jeweils pro Klausel allquantifiziert sind und die Kommutativitt des logischen Oder sowie die Invarianz bzgl. Literalverdopplung auch hier gelten, hat
sich fr die Prdikatenlogik ebenfalls eine mengenorientierte Schreibweise der Klauselnormalform
eingebrgert. So steht in der mengenorientierten Schreibweise
{{P (a, f (x)), P (x, z)}, {P (a, f (b)), P (x, y), P (g(y), x)}}
fr die Formel
xz(P (a, f (x)) P (x, z)) xy(P (a, f (b)) P (x, y) P (g(y), x))
Zu beachten ist, das nur wirklich identische Literale als Mehrfachvorkommen gezhlt werden knnen, nicht jedoch zwei Literale mit bis auf Variablen identische Struktur. So kann eine Klausel
xz(P (x, z) P (x, z)) reduziert werden zu xzP (x, z); dies gilt jedoch nicht fr die Klausel xz(P (x, z) P (z, x)).

2.3 Grenzen der Prdikatenlogik


Bisher haben wir einzelne Formeln betrachtet und auf Erfllbarkeit oder Widersprchlichkeit geprft. Endliche Mengen von Formeln knnen auch gleichzeitig berprft werden, da man sie durch
das logische Und verknpfen kann. Anders ist die Situation jedoch bei unendlichen Mengen von
Formeln. Solche unendlichen Mengen bentigt man beispielsweise, wenn man formalisieren will,
da jedes Prdikat fr mindestens ein Argumentetupel wahr sein soll.2 Die Erfllbarkeit einer solchen Menge ist gegeben, wenn eine Interpretation existiert, die alle enthaltenen Formeln gleichzeitig
erfllt.
Umgekehrt kann man sich fragen, ob auch die Widersprchlichkeit einer unendlichen Formelmenge erst aus der Gesamtheit aller enthaltenen Formeln resultieren kann. Der nachfolgende Satz gibt
darauf eine negative Antwort.
Satz 2.3.1 (Endlichkeitssatz)
Sei M eine (unendliche) Menge von Formeln. Dann ist M widerspruchsvoll genau dann, wenn es
eine endliche Teilmenge M von M gibt, so da M widerspruchsvoll ist.
Mit diesem Satz hat man ein Testverfahren fr die Widersprchlichkeit einer unendlichen Formelmenge M erhalten. Man testet systematisch alle endlichen Teilmengen der Formelmenge. Dazu
zhlt man die Formeln von M auf: (n )nIN . Nun konstruiert man eine Folge endlicher Teilmengen
(Mn )nIN induktiv durch M0 = und Mn+1 = Mn {n }. Diese endlichen Teilmengen Mn von
2

In der Prdikatenlogik erster Stufe ist es nicht zulssig ber Prdikate zu quantifizieren.

M testet man nacheinander. Ist die Gesamtformelmenge widerspruchsvoll, so gibt es nach dem Endlichkeitssatz eine endliche Teilmenge von Formeln, die bereits widerspruchsvoll ist. Diese endliche
Teilmenge ist aber irgendwann in einer Teilmenge Mn unserer Folge enthalten.
Leider ist dieses Verfahren nur dazu geeignet festzustellen, ob eine Formelmenge M widerspruchsvoll ist. Ist sie dagegen erfllbar, so hlt dieses Verfahren nicht. Die Unentscheidbarkeit der Prdikatenlogik erster Stufe, auf die wir hier nicht nher eingehen wollen, lt leider auch kein besseres
Verfahren zu.
Die Erfllbarkeit einer Formel der Prdikatenlogik erster Stufe ist definiert durch die Existenz einer erfllenden Interpretation fr diese Formel. Solch eine Interpretation zu finden, ist aufgrund
der Flexibilitt der Interpretationen nicht einfach; bereits die mathematischen Interpretationen einer
Formel sind zu zahlreich, als da man sie systematisch durchprobieren knnte. Wnschenswert wre es daher, eine Menge von Standard-Interpretationen zu definieren, die natrlich eine erfllende
Bewertungen enthlt, sofern es sie gibt, aber auch ein systematisches Testen zult.
Dazu legen wir zunchst den Grundbereich dieser Standard-Interpretationen fest.
Definition 2.3.2 (Herbrand-Universum)
Sei eine geschlossene Formel in Skolem-Normalform, d.h. = x1 . . . xn mit vars () =
{x1 , . . . , xn } und quantorfrei. Das Herbrand-Universum H() zu wird induktiv definiert durch:
1. H() enthlt alle Konstanten von . Kommt in keine Konstante vor, so sei die Konstante a
in H().
2. Ist f eine in vorkommende n-stellige Funktion und sind t1 , . . . , tn H(), so gilt auch
f (t1 , . . . , tn ) H().
3. H() enthlt nur die nach 1. und 2. gebildeten Terme.
Tritt in eine Konstante auf, so enthlt H() offensichtlich die Menge aller variablenfreien Terme,
die aus Konstanten und Funktionen von aufgebaut werden knnen.
Beispiel: Zu der Formel = xP (f (x)) Q(b) gehrt das Herbrand-Universum
H() = {b, f (b), f (f (b)), f (f (f (b))), f (f (f (f (b)))), . . .}.
2
Das Herbrand-Universum eignet sich als Grundbereich einer Interpretation, da es nach Definition
nicht leer ist. Da es sich aber um eine Menge von Termen handelt, ist das Verstndnis von Funktionen
ber diesem Grundbereich nicht so einfach wie bei Funktionen ber den natrlichen Zahlen. Wenn
etwa die Formel das 2-stellige Funktionssymbol f enthlt, so kann man eine Funktion fH()
definieren durch:
fH() : H() H() H()
fH() (t1 , t2 ) := f (t1 , t2 )
Die Argumente von fH() sind Terme. Als Funktionswert ordnen wir dem Argumentetupel (t1 , t2 )
den Term zu, der durch Einsetzen dieser Terme an den Argumentpositionen des Funktionssymbols
f entsteht. Den Wert f (t1 , t2 ) mu man also als Zeichenkette sehen, die aus den Zeichenketten t1
und t2 auf festgelegte Art und Weise konstruiert wird. In der Funktion fH() ist diese Konstruktionsvorschrift festgelegt.
Definition 2.3.3 (Herbrand-Interpretation)
Sei eine geschlossene Formel in Skolem-Normalform und H() das zugehrige Herbrand-Universum. Eine Interpretation mit Grundbereich H() heit Herbrand-Interpretation, wenn fr jedes
Funktionssymbol f in gilt
(f (t1 , . . . , tn )) = f (t1 , . . . , tn ).
10

In einer Herbrand-Interpretation wird also einem Funktionssymbol f in die oben definierte Funktion fH() zugeordnet. Eine Herbrand-Interpretation weist dagegen keine Vorschriften fr die Interpretation der Prdikate ber dem Grundbereich H() auf. Daher gibt es nicht nur eine, sondern
mehrere, im allgemeinen sogar unendlich viele verschiedene Herbrand-Interpretationen.
Ein Theorem, auf dessen Beweis wir hier nicht eingehen wollen, besagt, da die Herbrand-Interpretationen die Rolle der oben angesprochenen Standard-Interpretationen bernehmen knnen.
Satz 2.3.4 Sei eine geschlossene Formel in Skolem-Normalform. Dann gilt:
erfllbar besitzt erfllende Herbrand-Interpretation
Korollar 2.3.5 (Satz von Lwenheim/Skolem)
Jede erfllbare Formel der Prdikatenlogik erster Stufe besitzt eine erfllende Interpretation mit
abzhlbarem Grundbereich.
Der Satz von Lwenheim und Skolem erlaubt es uns, auf die Untersuchung von Modellen mit berabzhlbarem Grundbereich z.B. die reellen Zahlen zu verzichten.
Definition 2.3.6 (Herbrand-Erweiterung)
Sei eine geschlossene Formel in Skolem-Normalform, d.h. = x1 . . . xn mit vars () =
{x1 , . . . , xn } und quantorfrei. Dann ist die Herbrand-Erweiterung von definiert als
E() = {[x1 /t1 , . . . , xn /tn ] | t1 , . . . , tn H()}
Die Ersetzung der Variablen im quantorfreien Kern einer geschlossenen Skolem-Normalform
fhrt zu einer variablenfreien Formel, einer sogenannten Grundinstanz von . Die HerbrandErweiterung von ist die Menge aller Grundinstanzen von und daher nicht endlich, wenn H()
nicht endlich ist. Die Herbrand-Erweiterung von hat aber einen wesentlichen Vorteil: da keine Variablen in E() enthalten sind, knnen wir alle Primformeln in E() als aussagenlogische Atome
auffassen.
Satz 2.3.7 (Satz von Gdel/Herbrand/Skolem)
Sei eine geschlossene Formel in Skolem-Normalform. Dann ist erfllbar genau dann, wenn
E() im aussagenlogischen Sinn erfllbar ist.
Mit dem Endlichkeitssatz folgt, da alle endlichen Teilmengen von E() erfllbar sein mssen,
damit E() erfllbar ist, oder umgekehrt, da der Nachweis der Existenz einer endlichen widerspruchsvollen Teilmenge von E() zeigt, da E() widerspruchsvoll ist. Das im Anschlu an den
Endlichkeitssatz beschriebene Suchverfahren liefert uns damit die Mglichkeit, durch systematisches Testen aller endlichen Teilmengen von E() solch eine widerspruchsvolle Teilmenge zu entdecken, wobei fr dem Erfllbarkeitstest der endlichen Teilmengen beispielsweise Wahrheitstafeln
oder die aussagenlogische Resolution zum Einsatz kommen knnen.
Neben dem grundstzlichen Problem, da dieses Verfahren im allgemeinen nur bei widerspruchsvollen Ausgangsformeln zu einem Ergebnis fhrt, hat die Prdikatenlogik erster Stufe auch andere
Schwachstellen. Dadurch, da wir bisher keine Mglichkeit vorgesehen haben, in den Formeln die
Identitt zweier Objekte zu formulieren, gibt es zu jeder Formel, die ber einem endlichen Bereich
erfllt werden kann, auch eine erfllende Interpretation ber einem unendlichen Bereich existiert.
Wir nehmen daher fr die Aussage des nchsten Satzes noch zustzlich ein zweistelliges Prdikat
= zu den Prdikatssymbolen hinzu, das wir aufgrund der leichteren Lesbarkeit in Infix-Notation
verwenden: t1 = t2 . Interpretationen mssen dieses Prdikat = so interpretieren, da es die
Gleichheit ber dem Grundbereich der Interpretation ist. Bei einer Interpretation mit Grundbereich
IN ist = also die bliche Gleichheit zwischen natrlichen Zahlen, die nur zutrifft, wenn es sich um
die gleiche Zahl handelt. Fr eine Herbrand-Interpretation gilt (t1 = t2 ) = 1 genau dann, wenn
es sich bei t1 und t2 um dieselbe Zeichenkette handelt.
11

Durch die Gleichheit, die man blicherweise sofort in die Definition der Formeln der Prdikatenlogik erster Stufe aufnimmt, hat man nun die Mglichkeit, bestimmte Anzahlen von Elementen in
Grundbereichen erfllender Interpretationen zu fordern. Zwar konnten wir bisher schon durch einstellige Prdikate ausdrcken, da eine Mindestanzahl von Objekten existieren mu, beispielsweise
setzt P (a) P (b) P (c) Q(b) Q(c) mindestens drei Elemente im Grundbereich einer erfllenden Interpretation voraus, aber wir hatten keine Mglichkeit zur Angabe von oberen Schranken.
Die Formel

n := x1 . . . xn

1i<jn

xi 6= xj

hat nur erfllende Interpretationen mit Grundbereichen mit mehr als n Elementen. Die Formel

n := x1 . . . xn y

1in

y = xi

hat nur erfllende Interpretationen mit Grundbereichen mit hchstens n Elementen.


Satz 2.3.8 Die Endlichkeit ist nicht axiomatisierbar, d.h. es gibt keine Formelmenge M , die durch
jede Interpretation mit einen endlichen Grundbereich erfllt wird.
Der Beweis des Satzes wird indirekt gefhrt. Man nimmt an, da eine Formelmenge M mit der
Eigenschaft des Satzes existiert. Diese Formelmenge kann man um die Formelmenge {n | n 2}
erweitern. Die so entstandene Formelmenge M ist nach dem Endlichkeitssatz erfllbar, wenn jede
endliche Teilmenge Me erfllbar ist. Jede endliche Teilmenge Me der Formelmenge enthlt aber nur
endlich viele n . Der maximale Index der n sei k. Also gilt Me M {2 , . . . , k } und letztere
Menge wird erfllt von jeder Interpretation mit einem Grundbereich von mindestens k Elementen.
Da aber fr {n | n 2} eine erfllende Interpretation einen unendlichen Grundbereich haben
mu, erhlt man einen Widerspruch.

2.4 Substitution und Unifikation


In der Aussagenlogik werden fr die Resolution zwei Klauseln mit komplementren Literalen bentigt. Diese Klauseln werden als Implikationen gesehen wie durch einen Kettenschlu miteinander verschmolzen. In der Prdikatenlogik sind Literale aber nicht unbedingt sofort komplementr.
Die Literale P (x) und P (g(y)) umfassen bei passender Einsetzung fr die allquantifizierten Variablen x und y aber durchaus komplementre Spezialflle, etwa P (g(g(a))) und P (g(g(a))) mit
einer Konstanten a.
Die Grundlage fr die Bildung dieser Spezialflle ist die Ersetzung von Variablen durch Terme.
Diese Ersetzung ist allerdings nicht so einfach zu handhaben wie die Ersetzung von Teilformeln
durch logisch quivalente andere Formeln, z.B. bei der Anwendung des Distributivgesetzes fr das
logische Und. Die Forderung nach logischer quivalenz verhindert dort, da fehlerhafte Ergebnisse
entstehen. Ersetzen wir aber in der Formel xyP (x, y) die Variable y durch den Term x, so erhalten wir mit xyP (x, x), also xP (x, x) eine Formel, die keine Folgerung der Ausgangsformel
mehr ist, in diesem Sinne also kein Spezialfall der Ausgangsformel mehr ist. Problematisch ist bei
diesen Ersetzungen, da der eingesetzte Term Variablen enthalten kann, die ihrerseits durch andere
Quantoren gebunden sind.

12

Definition 2.4.1 (Substitution)


Unter einer Substitution [x/t] verstehen wir die simultane Ersetzung aller Vorkommen der Variablen
x durch einen Term t. Dieser Ersetzungsvorgang wird induktiv fr Terme und Formeln definiert
durch:
(1) x[x/t] = t und fr eine Individuenvariable y 6= x ist y[x/t] = y.
(2) Fr eine Individuenkonstante a ist a[x/t] = a.
(3) Fr eine n-stellige Funktion f und Terme t1 , . . . , tn ist
f (t1 , . . . , tn )[x/t] = f (t1 [x/t], . . . , tn [x/t]).
(4) Fr ein n-stelliges Prdikat P und Terme t1 , . . . , tn ist
P (t1 , . . . , tn )[x/t] = P (t1 [x/t], . . . , tn [x/t]).
(5) Ist eine Formel und ist [x/t] definiert, so ist ()[x/t] = [x/t].
(6) Sind und Formeln und sind [x/t] und [x/t] definiert, so ist
( )[x/t] = [x/t] [x/t] und ( )[x/t] = [x/t] [x/t].
(7) Fr eine Formel und eine Variable y gilt:
(a) Gilt x 6 freevars(), so ist (y)[x/t] = y und (y)[x/t] = y.
(b) Gilt x freevars(), y 6 vars (t) und ist [x/t] definiert, so ist
(y)[x/t] = y[x/t] und (y)[x/t] = y[x/t].
Hufig fassen wir eine endliche Anzahl von Substitutionen zu einer zusammen und verwenden die
Notation [x1 /t1 , . . . , xn /tn ] fr die Ausfhrung der Einzelsubstitutionen [x1 /t1 ], . . . , [xn /tn ] hintereinander in genau dieser Reihenfolge. Da die Reihenfolge wichtig sein kann, sprechen wir auch
von einer Ersetzungsliste. Die Zusammenfassung einer endlichen Anzahl von Substitutionen [x1 /t1 , . . . , xn /tn ]
bezeichnen wir ebenfalls als Substitution. Fr eine Formel und eine Substitution ist das Ergebnis der Substitution. Ist variablenfrei, so bezeichnen wir als Grundsubstitution.
Man mu beachten, da die Substitution in manchen Fllen nicht definiert ist. Bei Formeln in Klauselnormalform, wie wir sie spter bei der Resolution betrachten werden, tritt dieses Problem jedoch
nicht auf.
Die simultane Ersetzung aller Vorkommen von x erlaubt, da in dem hierfr einzusetzenden Term
t die Variable x wieder vorkommen darf. Stellt man sich die Substitution [x/t] aber als sukzessive
Ersetzung der einzelnen Vorkommen von x vor, so terminiert das Ersetzungsverfahren nicht. P (x)
wird bei [x/f (x)] zu P (f (f ( ))) mit unendlich tiefer Schachtelung der Funktion f .
Eine Ersetzungsliste lt sich ohne weiteres in eine Form bringen, so da die Einzelersetzungen
unabhngig voneinander sind und damit in beliebiger Reihenfolge ausgefhrt werden knnen. Eine
Substitution dieser Art fr [x1 /t1 , . . . , xn /tn ] ist beispielsweise
[x1 /(t1 [x2 /t2 , . . . , xn /tn ]), x2 /(t2 [x3 /t3 , . . . , xn /tn ]), . . . , xn /tn ]
Allerdings kann die Gre der Terme, die jetzt in der Substitution darzustellen sind, exponentiell
sein im Vergleich zur Lnge der Terme in der Ersetzungsliste. Wir werden nachfolgend immer nur
Ersetzungslisten zur Darstellung von Substitutionen verwenden.
Lemma 2.4.2 Seien x eine freie Variable der prdikatenlogischen Formel und seien weiter x1 , . . . , xn
die Variablen des Terms t. Wenn die Variablen x1 , . . . , xn in nicht frei vorkommen, dann gilt fr
die Substitution [x/t]:
x |= x1 . . . xn [x/t]
13

Dieses Ergebnis bertrgt sich natrlich sofort auf Ersetzungslisten von mehreren Einzelsubstitutionen.
Korollar 2.4.3 Sei eine quantorfreie prdikatenlogische Formel mit Variablen x1 , . . . xn sowie
eine Substitution. eien y1 , . . . , ym die Variablen in (), dann gilt:
x1 . . . xn |= y1 . . . yn ()
Da eine Substitution fr eine Klausel als Bildung eines Spezialfalles dieser Klausel aufgefat werden
kann, zeigt das Korollar, da jede spezialisierte Klausel eine Folgerung der ursprnglichen Klausel
ist.
Definition 2.4.4 (Unifikator)
Seien 1 und 2 prdikatenlogische Formeln. Eine Substitution [x1 /t1 , . . . , xn /tn ] heit Unifikator
von 1 und 2 , falls gilt 1 [x1 /t1 , . . . , xn /tn ] = 2 [x1 /t1 , . . . , xn /tn ]. 1 und 2 heien dann
unifizierbar.
Der Begriff des Unifikators kann genauso auch fr beliebige Formelmengen und nicht nur fr zwei
Formeln definiert werden. Fr die Literale P (a, x) und P (x , y ) ist [x /a, x/b, y /b] ein Unifikator.
Fr die Formulierung einer Resolutionsregel fr die Prdikatenlogik knnen wir nun davon ausgehen, da eine Formel in Klauselnormalform vorliegt. Die Formel enthalte zwei Klauseln, die keine
gemeinsame Variable haben und von denen die eine ein positives Literal und die andere ein negatives
Literal ber dem gleichen Prdikat P enthlt. Indem wir nun geeignete Spezialisierungen der Klauseln betrachten, knnen wir auch hier von komplementren, sonst aber gleichen Literalen ausgehen.
Allerdings sollten die Klauseln nicht berspezialisiert werden, um nachfolgend noch ein hohes Ma
an weiteren Spezialisierungen in den nchsten Resolutionsschritten vornehmen zu knnen.
Definition 2.4.5 (Allgemeinster Unifikator)
Ein Unifikator der prdikatenlogischen Formeln 1 und 2 heit allgemeinster Unifikator (most
general unifier, mgu) von 1 und 2 , wenn es zu jedem anderen Unifikator von 1 und 2 eine
Substitution existiert, so da gilt = .
bezeichnet die Hintereinanderausfhrung der beiden Substitutionen und (erst anwenden,
dann ). Sind beide durch Ersetzungslisten gegeben, etwa = [y1 /s1 , . . . , ym /sm ] und =
[x1 /t1 , . . . , xn /tn ], dann ist = [y1 /s1 , . . . , ym /sm , x1 /t1 , . . . , xn /tn ].
Ein allgemeinster Unifikator umfat also nur die Substitutionen, die unbedingt ntig sind, zwei Formeln zu unifizieren. Jeder andere Unifikator lt sich aus dem allgemeinsten Unifikator gewinnen,
indem noch zustzliche Substitutionen durchgefhrt werden. Fr die Literale P (a, x) und P (x , y )
ist [x /a, y /x] ein allgemeinster Unifikator.
Nach Korollar 2.4.3 gilt fr beliebige Substitutionen und :
() |= (())
Damit ist ein allgemeinster Unifikator die beste Wahl, die man unter den Unifikatoren treffen kann.
Zur Bestimmung des allgemeinsten Unifikators zweier Primformeln verwendet man hufig den Unifikationsalgorithmus nach Robinson. Zum Verstndnis des Verfahrens ist die Identifikation der ersten
Stelle wichtig, an der sich zwei Primformeln unterscheiden. Sind P (t1 , . . . , tn ) und P (t1 , . . . , tn )
zwei verschiedene Primformeln, so wird das erste Paar korrespondierender verschiedener Terme
(s, s ) von P (t1 , . . . , tn ) und P (t1 , . . . , tn ) dadurch bestimmt, da man in der Argumentliste von P
von links nach rechts das erste Termpaar sucht, das in beiden Primformeln verschieden ist. Dabei
werden auch die Argumentlisten der vorkommenden Funktionen in gleicher Weise von links nach
rechts durchsucht.
14

Fr die Literale P (a, x) und P (x , y ) ist das erste korrespondierende Termpaar (a, x ), fr die
Literale P (a, x) und P (a, b) ist dies (x, b), fr die Literale P (a, f (x, b)) und P (a, f (b, x)) ist dies
(x, b), und fr die Literale P (a, f (g(x), y)) und P (a, f (h(z), u)) ist dies (g(x), h(z)).
Fr das erste Paar korrespondierender verschiedener Terme (s, s ) bestehen also nur zwei Mglichkeiten:
a) ein Term ist eine Variable:
Falls s eine Variable ist und in s vorkommt oder falls umgekehrt s eine Variable ist und in s
vorkommt, sind die Terme nicht unifizierbar und damit auch die Literale nicht.
Ansonsten kann die Variable durch den anderen Term ersetzt werden, so da dieses Termpaar
(s, s ) durch die Substitution unifiziert wird. Das nchste Paar korrespondierender verschiedener Terme ist in den sich ergebenden Literalen weiter rechts zu suchen.
b) kein Term ist eine Variable:
Da die Terme s und s verschieden sind, handelt es sich entweder um verschiedene Konstanten, eine Konstante und einen zusammengesetzten Term oder zwei zusammengesetzte Terme
mit verschiedenen Funktionszeichen. In allen drei Fllen kann keine Substitution dieses Termpaar unifizieren.
Unifikationsverfahren nach Robinson: Seien P (t1 , . . . , tn ) und P (t1 , . . . , tn ) zwei Primformeln.
1. Setze = id

und 1 = P (t1 , . . . , tn ), sowie 2 = P (t1 , . . . , tn ).

2. Falls 1 und 2 zeichenweise gleich sind, ist der allgemeinste Unifikator.


3. Bestimme in 1 und 2 das erste Paar korrespondierender, verschiedener Terme (s, s ).
(a) Falls s eine Variable ist und s nicht in s vorkommt, setze = [s/s ] und 1 :=
1 [s/s ], sowie 2 := 2 [s/s ]. Gehe zu 2.
(b) Falls s eine Variable ist und s nicht in s vorkommt, setze = [s /s] und 1 :=
1 [s /s], sowie 2 := 2 [s /s]. Gehe zu 2.
(c) Sonst: Die Ausgangsformeln sind nicht unifizierbar.
Im Algorithmus ist zu beachten, da die bisher gewonnene Substitution jedesmal angewendet wird,
bevor das nchste Paar erster minimaler verschiedener Subterme bestimmt wird. Die neue Einzelsubstitution [s/s ] bzw. [s /s] unifiziert die Teilterme (s, s ), so da im nchsten Durchlauf das erste
Paar verschiedener Terme nur weiter rechts in der Argumentliste gefunden werden kann.
Mit diesem Algorithmus knnen auch allgemeinste Unifikatoren fr grere Mengen von Primformeln 1 , . . . , n bestimmt werden, indem zunchst fr zwei Primformeln 1 und 2 der allgemeinste Unifikator 1 bestimmt wird, dann der allgemeinste Unifikator 2 fr 1 1 und 3 , dann
der allgemeinste Unifikator 3 fr 1 1 2 und 4 , usw. Der gesuchte allgemeinste Unifikator ist
schlielich 1 2 . . . n1 .

2.5 Prdikatenlogische Resolution


Damit die nachfolgend beschriebene Resolution korrekt bleibt, beschrnkten wir uns von nun
an auf geschlossene Formeln in Klauselnormalform, in denen das Gleichheitsprdikat =
nicht vorkommt. Eine Erweiterung der Resolution um die Paramodulation erlaubt auch die
korrekte Behandlung des Gleichheitsprdikats.
3

id bezeichne die identische Abbildung, also eine leere Folge von einzelnen Substitutionen.

15

In der Aussagenlogik wird die Resolutionsregel benutzt, um neue Klauseln herzuleiten, die Folgerungen der ursprnglichen Formel sind und daher der Formel hinzugefgt werden knnen. Kann auf
diesem Wege die leere Klausel hergeleitet werden, so liegt eine widerspruchsvolle Folgerung vor.
Daraus kann man schlieen, da dann bereits die Ausgangsformel widerspruchsvoll gewesen sein
mu.
{A, B}, {A, B} | RES {B}
Die Mengenschreibweise fr Klauseln bewirkt, da doppelte Vorkommen von Literalen in Elternklauseln und Resolvente unbercksichtigt bleiben knnen, obwohl sich eigentlich eine Anwendung
der Idempotenzregel dahinter verbirgt.
In der Prdikatenlogik bentigen wir eine strkere Regel, um Literale zusammenziehen zu knnen.
Betrachten wir beispielsweise die Klausel
xy(P (x, y) P (y, x))
Als Spezialfall dieser Aussage erhalten wir die Klausel xP (x, x). Wenn also zwei Literale einer
Klausel mit einer Substitution unifiziert werden knnen, dann enthlt () zwei gleiche Literale,
die mit Hilfe der Idempotenzregel zu einem Literal zusammengezogen werden knnen. Fr das
Beispiel bedeutet dies mit = [y/x]:
xy(P (x, y) P (y, x)) |= x(P (x, x) P (x, x)) |= xP (x, x)
Um auf diesem Weg eine mglichst allgemeine Folgerung der Ausgangsklausel zu bekommen, verwendet man als Unifikator natrlich einen allgemeinsten Unifikator. Die beiden Schritte werden in
der sogenannten Faktorisierungsregel zusammengefat.
Binre Faktorisierungsregel:
{L1 , . . . , Lk , L, L }
(Fak)
{L1 , . . . , Lk , L}
mit allgemeinster Unifikator von L und L .
Die Benennung binre Faktorisierungsregel rhrt daher, da genau zwei Literale aus der Elternklausel der Faktorisierung zusammengezogen werden. Die so gewonnene neue Klausel heit Faktor der
Ausgangsklausel.
Wie in der Aussagenlogik knnen wir eine Resolutionsregel anwenden, um aus zwei Klauseln eine
neue Klausel zu generieren, die ebenfalls Folgerung der ursprnglichen Formel ist.
= xz(P (a, x) P (x, z)) xy(P (a, b) P (x, y) P (y, x))
Dazu erzeugen wir zunchst fr zwei Klauseln mit komplementren Vorkommen eines Prdikates
P zwei variablenfremde Kopien mit den Idempotenz- und Umbenennungsregeln.
xy(P (a, x) P (x, y)) uv(P (a, b) P (u, v) P (v, u))
Die beiden variablenfremden Klauseln knnen wir unter einem gemeinsamen Prfix zusammenfassen durch die Quantifizierungsregeln.
xyuv((P (a, x) P (x, y)) (P (a, b) P (u, v) P (v, u)))
Anschlieend versuchen wir, ein positives Literal ber P aus der einen Klausel und ein negatives
Literal ber P aus der anderen Klausel zu unifizieren.
P (a, x), P (u, v) unifizieren = = [u/a, v/x] allgemeinster Unifikator
Falls ein allgemeinster Unifikator existiert, bilden wir die beiden entsprechend spezialisierten
Klauseln.
xy((P (a, x) P (x, y)) (P (a, b) P (a, x) P (x, a)))
16

Die Anwendung der Resolutionsregel auf die spezialisierten Klauseln entspricht dann einem Kettenschlu.
xy((P (a, x) P (x, y)) (((P (a, b) P (x, a)) P (a, x)))
Die Resolvente ist insgesamt eine Folgerung der Ausgangsformel.
xy(P (x, y) P (a, b) P (x, a))
Auch diese Schritte werden zu einer einzigen Regel, der sogenannten Resolutionsregel, zusammengefat, die zwei Klauseln einer Formel ber ein Literalpaar resolviert.
Binre Resolutionsregel:
{L1 , . . . , Lk , L}
{K1 , . . . , Kr , L }
(Res)
{L1 , . . . , Lk , K1 , . . . , Kr }
mit allgemeinster Unifikator von L und L .
Auch hier soll die Benennung binre Resolutionsregel andeuten, da genau zwei Literale durch die
Anwendung der Regel entfernt werden.
Wie bereits am Anfang dieses Abschnitts gesagt, gehen wir davon aus, da die Ausgangsformeln
in Klauselnormalform vorliegen. Da dann alle vorkommenden Variablen allquantifiziert sind und
sich der Bindungsbereich der Quantoren immer nur auf die Klausel beschrnkt ist, lassen wir zur
Vereinfachung der Schreibweise die Quantoren weg und stellen die Klauseln in Mengenschreibweise
dar. Diese Kurzschreibweise ist bei der Angabe der Faktorisierungs- und der Resolutionsregel bereits
verwendet worden.
Meist werden Faktorisierungs- und Resolutionsschritte kombiniert, um Klauseln herzuleiten. Im
folgenden Beispiel notieren wir die jeweiligen allgemeinsten Unifikatoren an den Anwendungen
der Faktorisierungs- und der Resolutionsregel:
{P (a, b), P (x, y), P (y, x)}

{P (a, x), P (x, z)}


[x/a, z/a]

[y/x]

{P (a, a)}

{P (a, b), P (x, x)}


[x/a]
{P (a, b)}

Wie in der Aussagenlogik ergeben sich hier also Herleitungsbume. An Verzweigungsstellen sind
Resolutionsschritte vorgenommen worden, alle anderen Schritte sind Faktorisierungsschritte.
In der Aussagenlogik konnte eine Klausel nur dann mit sich selbst resolviert werden, wenn sie
eine tautologische Klausel war, denn sie mute sowohl ein positives Literal als auch ein negatives
Literal ber einem Atom A enthalten. Im Gegensatz dazu sind in der Prdikatenlogik auch sinnvolle
Resolventen aus einer Klausel mglich:
{P (x), P (f (x)))}

{P (y), P (f (y)))}

{P (x), P (f (f (x))))}

[y/f (x)]

Ein wichtiger Schritt war hier allerdings die Umbennennung der Variablen x zu y in der Kopie der
Klausel.
Um die Faktorisierungs- und die Resolutionsregel leichter anwendbar zu machen, geben wir entsprechende Verfahrensvorschriften, an denen man sich orientieren kann.
In beiden Fllen gehen wir von einer Klauselnormalform aus, die Klauseln werden in Mengenschreibweise dargestellt.

17

Binre Faktorisierung:
1. Whle eine Klausel aus.
2. Whle in der Klausel zwei Literale L und L mit gleichem Vorzeichen (negiert oder nicht
negiert) und dem gleichen Prdikat.
3. Bestimme den allgemeinsten Unifikator fr L und L .
4. Bestimme den Faktor:
Bilde () und eliminiere ein Vorkommen von (L).
Jedes Eliminieren eines weiteren, doppelt vorkommenden Literals im entstandenen Faktor gilt als
neuer Faktorisierungsschritt.
Binre Resolution:
1. Whle zwei Klauseln 1 und 2 aus.
2. Benenne die Variablen so um, daSS keine Variable in beiden Klauseln vorkommt. Die Klauseln sind dann variablenfremd.
3. Whle in der Klausel 1 ein Literal L und in 2 ein komplementres Literal L (d.h. L negiert
und L positiv oder umgekehrt), wobei L und L Literale ber dem gleichen Prdikat sind.
4. Bestimme den allgemeinsten Unifikator fr L und L .
5. Bestimme die Resolvente:
Vereinige die Literalmengen von (1 ) und von (2 ), lasse aber je ein Vorkommen von (L)
und von (L ) weg.
Jedes Eliminieren eines weiteren, doppelt vorkommenden Literals in der entstandenen Resolvente
gilt als neuer Faktorisierungsschritt.
Genau wie in der Aussagenlogik kann man mit Hilfe der Stufensttigungsstrategie alle Faktoren
und Resolventen einer Formel in Klauselnormalform aufzhlen. Allerdings mssen hier zustzlich
zu den Klauseln, die durch Resolution gewonnen werden knnen (bzw. den Anfangsklauseln) in der
Spalte jeweils auch alle Faktoren von Klauseln der Spalte enthalten sein.
Stufensttigungsstrategie
1. Fge alle Klauseln der Ausgangsformel in die erste Spalte der Tabelle ein (Generation 0).
Diese Spalte ist die aktuelle Spalte.
2. Bilde alle Faktoren zu Klauseln der aktuellen Spalte und fge sie in der aktuellen Spalte an.
(a) Beginne mit der ersten Klausel der Spalte.
(b) Bilde alle Faktoren der Klausel, die sich durch jeweils eine Anwendung der Faktorisierungsregel auf diese Klausel ergeben, d.h. alle Mglichkeiten zur Anwendung der
Faktorisierungsregel auf die Originalklausel werden durchgefhrt.
(c) Fge die neuen (d.h. noch nirgendwo in der Tabelle vorkommenden) Faktoren am Ende
der Spalte an.
(d) Wenn die aktuell bearbeitete Klausel noch nicht die letzte in der Spalte ist, whle die
nchste und mache weiter mit Schritt b). Ansonsten ist dieser Teilschritt beendet.
18

3. Bilde alle Resolventen zu Klauselpaaren, von denen eine aus der aktuellen Spalte stammt und
die andere aus der aktuellen Spalte oder einer frheren Spalte, und fge sie in die nchste
Spalte ein.
(a) Beginne mit der ersten Klausel der Spalte als Klausel 1 .
(b) Prfe nacheinander alle folgenden Klauseln der Spalte einschlielich der Klausel 1
selbst und dann alle Klauseln aus frheren Spalten auf Resolvierbarkeit mit der Klausel
1 , bilde ggf. alle Resolventen pro Klauselpaar.
(c) Fge die neuen Resolventen in die nchste Spalte ein.
(d) Wenn die Klausel 1 noch nicht die letzte in der Spalte ist, whle die nchste und mache
weiter mit Schritt b). Ansonsten ist dieser Teilschritt beendet.
Da die Variablen ohne weiteres umbenannt werden knnen, betrachten wir nur solche Klauseln als
neu fr die Tabelle, die weder selbst, noch in irgendeiner durch Variablenumbenennung hervorgegengenen Form in der Tabelle auftreten. D.h. P (x) ist neu, wenn weder P (x) noch P (y) fr
irgeneine Variable y in der Tabelle auftritt.
In der Aussagenlogik knnen durch dieses Verfahren hchstens soviele Spalten produziert werden,
wie es verschiedene Klauseln geben kann. Aufgrund der festen Zahl von Atomen, die in einer Formel
vorkommen, sind dies nur endlich viele, bei n Atomen genau 22n .
In der Prdikatenlogik ist die Situation schwieriger. Das Beispiel der Klausel {P (x), P (f (x)))}
zeigt, das unendlich viele verschiedene Resolventen mglich sind, da die Terme durch Funktionen
beliebig tief geschachtelt sein knnen. Daher wird das Verfahren der Stufensttigung zur Generierung aller Resolventen im allgemeinen nicht terminieren. in der Formel vorhanden sind.
1
Dennoch kann auf Basis der prdikatenlogischen Resolution die Herleitungsbegriffe | RES+FAK
und
| RES+FAK definiert werden in Analogie zu denen der Aussagenlogik. Fr diese Herleitungsbegriffe
kann der folgende Satz gezeigt werden:
Satz 2.5.1 Sei eine prdikatenlogische Formel in Klauselnormalform. Dann gilt widerspruchsvoll genau dann, wenn | RES+FAK gilt.
Die Resolution ist also fr die Prdikatenlogik korrekt und widerlegungsvollstndig. Der Beweis des
Satzes wird unter Zuhilfenahme eines aussagenlogischen Resolutionsbeweises ber den HerbrandInstanzen der Formel gefhrt.
Es ist zu beachten, da es sich bei der prdikatenlogischen Resolution nicht um ein Entscheidungsverfahren handelt, mit dem festgestellt werden kann, ob eine Formel widerspruchsvoll ist oder nicht.
Nach dem gerade genannten Theorem erscheint diese Aussage etwas befremdlich. Allerdings kann
nur dann die Aussage ist widerspruchsvoll getroffen werden, wenn die leere Klausel hergeleitet wurde. Solange die Generierung neuer Resolventen z.B. mit der Stufensttigungsstrategie noch
nicht beendet ist, kann auch nicht ausgeschlossen werden, da nicht doch noch die leere Klausel irgendwann produziert wird. Nach den obigen Bemerkungen terminiert die Stufensttigungsmethode
aber nicht immer. Daher sind mit Hilfe der Resolution drei Typen von Antworten mglich auf die
Frage, ob widerspruchsvoll ist:
ist widerspruchsvoll.
Die leere Klausel wurde nach hchstens K Resolutionen hergeleitet.
ist erfllbar.
Nach hchstens K Resolutionen war keine neue Klausel mehr generierbar und die leere Klausel wurde nicht generiert.
konnte nicht entschieden werden.
Nach K Resolutionen war die leere Klausel noch nicht generiert worden und die Bildung
neuer Resolventen war noch nicht beendet.
19

Je hher die Schranke K gewhlt wird, um so mehr Formeln knnen bezglich ihrer Erfllbarkeit
entschieden werden. Das Verfahren terminiert aber nur dann, wenn wir auch solch eine Schranke
verwenden. Damit gibt es immer noch Formeln, deren Erfllbarkeit mit Hilfe der beschrnkten
Resolution nicht festgestellt werden kann.
Ebenfalls wie fr die aussagenlogische Resolution lassen sich alle Resolutionsstrategien und Resolutionsrestriktionen auch fr die Prdikatenlogik definieren.
Ein alternatives Konzept zur Resolution beruht strker auf der Sicht der Klauseln als Mengen. Da
hierdurch Doppelvorkommen eliminiert werden knnen, bentigt man keine explizite Faktorisierungsregel. Stattdessen mssen wir aber in der Resolutionsregel aus jeder Klausel mehr als ein Literal fr die Resolution auswhlen. Daher hat die mengenorientierte Resolutionsregel die folgende
allgemeine Gestalt:
{L1 , . . . , Lk }
{B1 , . . . , Bm }
(({L1 , L2 , . . . , Lk } \ {L}) ({B1 , B2 , . . . , Bm } \ {L}))
mit allgemeinster Unifikator von L(. . . ), L(. . . ), . . . und L(. . . ), L(. . . ), . . ..
Wenn wir wie hier die mengenorientierte Schreibweise verwenden mit der Vorstellung, da alle
vorkommenden Variablen allquantifiziert sind, lassen sich mehrere hintereinanderausgefhrte Resolutionen recht einfach darstellen. Problematisch ist meist nur, da Resolutionen nicht wie geschachtelte Brche geschrieben werden knnen, da unterschiedliche Umbenennungen der Variablen ntig
sein knnen.
Das Verfahren zur Generierung einer Resolvente besteht dann aus folgenden Schritten:
1. Auswhlen der Klauseln fr die Resolution.
2. Umbenennen der Variablen, so daSS die Klauseln variablenfremd werden.
3. Festlegen der Literale, ber die resolviert wird (Seien dies L(. . . ), L(. . . ), . . . aus der
ersten Klausel L1 , . . . , Lk und L(. . . ), L(. . . ), . . . aus der zweiten Klausel B1 , . . . , Bm ).
4. Bestimmen des allgemeinster Unifikator fr L(. . . ), L(. . . ), . . . , L(. . . ), L(. . . ), . . ..
5. Bestimmung der Resolvente:
(({L1 , L2 , . . . , Lk } \ {L}) ({B1 , B2 , . . . , Bm } \ {L}))
Die Auswahl von mehr als einem Literal pro Klausel ist auch notwendig, wie man an dem folgenden
Beispiel erkennen kann:
:= xy(P (a, x) P (y, b)) xy(P (x, b) P (a, y))
Jede Auswahl von nur einem Literal pro Klausel fhrt zu Resolventen mit zwei Literalen, fhrt also
nicht zur leeren Klausel.
Beide Konzepte Mengenorientierte Resolution und Resolution und Faktorisierung sind quivalent in dem Sinne, da aus einer Formel die leere Klausel mit Hilfe der mengenorientierten Resolutionsregel hergeleitet werden kann, genau dann wenn die Herleitung der leeren Klausel auch mit
Hilfe der binren Resolution und der binren Faktorisierungsregel gebildet werden kann.
Das erste Konzept ist allerdings implementationstechnisch einfacher zu handhaben, da in jedem
Schritt jeweils nur zwei Literale beteiligt sind.

20