Grundlagen der Programmierung (Vorlesung 8)
z Vorige Vorlesung
y Motivation der Prädikatenlogik y Syntax der Prädikatenlogik
z Inhalt dieser Vorlesung
y Semantik der Prädikatenlogik
y Prädikatenlogische Entscheidungsprobleme
Ralf Möller, FH-Wedel
Struktur, passende Strukturen
Eine Struktur ist ein Paar
A
= (UA;IA) wobei UA eine beliebige aber nicht leere Menge ist, die die Grundmenge vonA
(oder derGrundbereich, derIndividuenbereich, das Universum) genannt wird. Ferner ist IA eine Abbildung, die
jedem k–stelligen Pr¨adikatensymbol P (das im
Definitionsbereich von IA liegt) ein k–stelliges Pr¨adikat ¨uber UA zuordnet,
jedem k–stelligen Funktionssymbol f (das im
Definitionsbereich von IA liegt) eine k–stellige Funktion auf UA zuordnet,
jeder Variablen x (sofern IA auf x definiert ist) ein Element der Grundmenge UA zuordnet.
Sei F eine Formel und
A
=(UA;IA) eine Struktur.A
heißt zu Fpassend, falls IA f¨ur alle in F vorkommenden Pr¨adikatsymbole, Funktionssymbole und freien Variablen definiert ist.
45
Mit anderen Worten, der Definitionsbereich von IA ist eine
Teilmenge von fPik; fik;xiji =1;2;3;::: und k= 0;1;2:;:::g, und der Wertebereich von IA ist eine Teilmenge aller Pr¨adikate und Funktionen auf UA, sowie der Elemente von UA. Wir schreiben abk¨urzend statt IA(P) einfach PA, statt IA(f) einfach fA und statt IA(x) einfach xA.
46
Werte von Termen und Formeln in einer Struktur
Sei F eine Formel und
A
eine zu F passende Struktur. F¨ur jeden Term t, den man aus den Bestandteilen von F bilden kann (also aus den Variablen und Funktionssymbolen), definieren wir nun den Wert von t in der StrukturA
, den wir mitA
(t) bezeichnen.Die Definition ist wieder induktiv.
1. Falls t eine Variable ist (also t = x), so ist
A
(t)= xA.2. Falls t die Form hat t = f(t1;::: ;tk) wobei t1;::: ;tk Terme und f ein k–stelliges Funktionssymbol ist, so ist
A
(t) = fA(A
(t1);:::;A
(tk)).Der Fall 2 schließt auch die M¨oglichkeit ein, daß f nullstellig ist, als t die Form hat t =a. In diesem Fall ist also
A
(t)= aA.47
Auf analoge Weise definieren wir (induktiv) den (Wahrheits–) Wert der Formeln F unter der Struktur
A
, wobei wir ebenfalls die BezeichnungA
(F) verwenden.Falls F die Form hat F =P(t1;::: ;tk) mit den Termen t1;::: ;tk und k–stelligem Pr¨adikatsymbol P, so ist
A
(F) =8
<
:
1; f alls (
A
(t1);::: ;A
(tk)) 2 PA 0; sonstFalls F die Form F = :G hat, so ist
A
(F) =8
<
:
1; f alls
A
(G) =00; sonst
Falls F die Form F = (G^H) hat, so ist
A
(F)=8
<
:
1; f alls
A
(G) =1 undA
(H)= 10; sonst
48
Falls F die Form F = (G_H) hat, so ist
A
(F) =8
<
:
1; f alls
A
(G)= 1 oderA
(H) = 10; sonst
Falls F die Form F = 8xG hat, so ist
A
(F) =8
<
:
1; f alls f ¨ur alle d 2UA gilt :
A
[x=d](G) = 1 0; sonstFalls F die Form F = 9xG hat, so ist
A
(F) =8
<
:
1; f alls es ein d 2UA gibt mit :
A
[x=d](G) = 1 0; sonstHierbei bedeutet
A
[x=d] diejenige StrukturA
0, die ¨uberall mitA
identisch ist, bis auf die Definition von xA
0
. Es sei n¨amlich xA
0
= d, wobei d 2UA =UA0 — unabh¨angig davon, ob IA auf x definiert ist oder nicht.
49
Beispiel
Es sei P ein zweistelliges Prädikatensymbol, Q ein
einstelliges Prädikatensymbol, a eine Konstante, f ein einstelliges Funktionssymbol, und es seien x, y, z
Variablen. Eine Struktur, die diesen Symbolen Werte
zuordnet, ist gegeben durch A = (U
A, I
A) mit U
A= {7, 8, 9}.
Die Interpretationsfunktion I
Aist wie folgt definiert:
a
A= 7
x
A= 8
y
A= 9
Q
A= {7, 9}
P
A= {(7, 8), (7, 9), (8, 9)}
f
A= {(7, 8), (8, 9), (9, 7)}
Beispiel (2)
z Zu bestimmen ist der Wahrheitswert der folgenden Formeln bezüglich A:
x 1. (Q(a) Ÿ P(a, x)) Æ (Q(f(a)) ⁄ P(a, y)) x 2. P(a, y) Ÿ $z P(z, a)
x 3. "z (Q(z) ⁄ ÿP(a, z))
Modell, G ¨ ultigkeit, Erf ¨ ullbarkeit
Falls f¨ur eine Formel F und eine zu F passende Struktur
A
giltA
(F) = 1, so schreiben wir wiederA
j= F.Sprechweise: F gilt in
A
oderA
ist Modell f¨ur F.Falls jede zu F passende Struktur ein Modell f¨ur F ist, so schreiben wir j= F, andernfalls 6j=F.
Sprechweise: F ist (allgemein–)g¨ultig).
Falls es mindestens ein Modell f¨ur die Formel F gibt, so heißt F erf¨ullbar, andernfalls unerf¨ullbar.
50
Aufgabe
G: G¨ultig E: Erf¨ullbar, aber nicht g¨ultig U: Unerf¨ullbar
G E U
8xP(a)
9x(:P(x)_P(a)) P(a) ! 9xP(x) P(x)! 9xP(x)
8xP(x)! 9xP(x)
8xP(x)^:8yP(y)
8x(P(x;x) !9x8yP(x;y))
8x8y(x = y ! f(x) = f(y))
8x8y(f(x)= f(y)! x =y
9x9y9z(f(x)=y^ f(x)= z^y 6=z)
51