• Keine Ergebnisse gefunden

Semantik der Prädikatenlogik

N/A
N/A
Protected

Academic year: 2022

Aktie "Semantik der Prädikatenlogik"

Copied!
12
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

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

(2)

Struktur, passende Strukturen

Eine Struktur ist ein Paar

A

= (UA;IA) wobei UA eine beliebige aber nicht leere Menge ist, die die Grundmenge von

A

(oder der

Grundbereich, 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 F

passend, falls IA f¨ur alle in F vorkommenden Pr¨adikatsymbole, Funktionssymbole und freien Variablen definiert ist.

45

(3)

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

(4)

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 Struktur

A

, den wir mit

A

(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

(5)

Auf analoge Weise definieren wir (induktiv) den (Wahrheits–) Wert der Formeln F unter der Struktur

A

, wobei wir ebenfalls die Bezeichnung

A

(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; sonst

Falls F die Form F = :G hat, so ist

A

(F) =

8

<

:

1; f alls

A

(G) =0

0; sonst

Falls F die Form F = (G^H) hat, so ist

A

(F)=

8

<

:

1; f alls

A

(G) =1 und

A

(H)= 1

0; sonst

48

(6)

Falls F die Form F = (G_H) hat, so ist

A

(F) =

8

<

:

1; f alls

A

(G)= 1 oder

A

(H) = 1

0; 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; sonst

Falls 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; sonst

Hierbei bedeutet

A

[x=d] diejenige Struktur

A

0, die ¨uberall mit

A

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

(7)

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

A

ist 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)}

(8)

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))

(9)

Modell, G ¨ ultigkeit, Erf ¨ ullbarkeit

Falls f¨ur eine Formel F und eine zu F passende Struktur

A

gilt

A

(F) = 1, so schreiben wir wieder

A

j= F.

Sprechweise: F gilt in

A

oder

A

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

(10)

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

(11)

Zusammenfassung, Kernpunkte

❚ Prädikatenlogik

❙ Syntax, Formeln

❙ Semantik, Belegung, Modell

❙ Entscheidungsprobleme

❙ Äquivalente Transformation von Formeln

(12)

Was kommt beim nächsten Mal?

❚ Logik und die systematische Entwicklung von Programmen

❚ Spezifikation und Programmverifikation

Referenzen

ÄHNLICHE DOKUMENTE

Aufgabenblatt 12. F¨ ur n = 1, 2 k¨ onnen Sie die bekannten Formeln aus der Vorlesung verwenden. Stellen Sie f¨ ur n = 3 die Begleitmatrix der Dreitermrekursion der

Da in ϕ alle Variablen nur gebunden vorkommen, muss dies f¨ur jede Variablenbelegungen

[r]

Tutorium Numerisches Rechnen und lineare

Universit¨ at T¨ ubingen T¨ ubingen, den 16.05.2012 Mathematisches

Implementieren Sie das Radau5-Verfahren (Radau IIA der Ordnung 5) mit konstanter Schrittweite in Matlab, indem Sie die Umformulierung des nichtlinearen Gleichungssystems aus Aufgabe

Diese werden so ausgew¨ ahlt, dass Sie eine m¨ oglichst hohe Punktzahl erreichen. Abgabe in der Vorlesungspause

Fachbereich Mathematik und Informatik Sommersemester 2010 Universitat