Sie sind auf Seite 1von 29

Prdikatenlogik: Grundlagen

Vorversion der Folien des Kap. 9


!

Stand 15.05.2007

Im Verlauf der Vorlesungen zu diesem Kapitel werden nderungen und Ergnzungen erfolgen. Sie sollten daher sorgfltig auf Unterschiede zwischen den Vorversionen und der Endversion achten.

FGI-1, SoSe 2007, Habel / Eschenbach

Prdikatenlogik

Von der Aussagenlogik zur Prdikatenlogik

Prdikatenlogik ist eine Erweiterung der Aussagenlogik ! Syntax der Prdikatenlogik ! Semantik der Prdikatenlogik

Was unterscheidet die Prdikatenlogik von der Aussagenlogik?

Grere Ausdrucksstrke: feinere Differenzierungen Grerer Aufwand bei Berechnung semantischer Eigenschaften und Beziehungen

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [1]

Von der Aussagenlogik zur Prdikatenlogik: Motivation Aussagenlogik

Aussagen sind die kleinsten bedeutungstragenden Einheiten

Beispiele
Hamburg ist eine Stadt. Mnchen ist eine Stadt. Hamburg liegt nrdlich von Mnchen. Mnchen liegt sdlich von Hamburg.

Prdikatenlogik
bercksichtigt die interne Struktur von Aussagen und erlaubt es, zustzlich bestimmte Beziehungen zwischen Objekten zum Ausdruck zu bringen. Sprache mit grerer Ausdruckskraft. Konsequenzen (z.B. im Datenbankbereich): Systematische Beziehungen zwischen Aussagen und Fragen: Welche Stdte liegen sdlich von Hamburg und nrdlich von Mnchen? Frankfurt liegt sdlich von Hamburg und nrdlich von Mnchen.
Kap. 9 PrdikatenlogikGrundlagen [2]

FGI-1 Habel / Eschenbach

Die kleinsten Einheiten der Prdikatenlogik


!

haben verschiedene syntaktische Kategorien ! Terme reprsentieren Objekte. ! Prdikatensymbole (Relationssymbole) reprsentieren Eigenschaften und Relationen. ! Formeln reprsentieren Aussagen. Syntaktische Kategorie Konstante, Term Konstante, Term Prdikatensymbol Prdikatensymbol Prdikatensymbol Syntaktische Kategorie (atomare) Formel (atomare) Formel (atomare) Formel (atomare) Formel bersetzungsschlssel Hamburg Mnchen ist eine Stadt liegt nrdlich von liegt sdlich von Syntaktische Kategorie Name Name Prdikat

PL-Reprsentation hh m S1 N S2 PL-Reprsentation S1(hh) S1(m) N(hh, m) S2(m, hh)

bersetzung Hamburg ist eine Stadt. Mnchen ist eine Stadt. Hamburg liegt nrdlich von Mnchen. Mnchen liegt sdlich von Hamburg.

Satz Satz Satz Satz

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [3]

Terme: Eindeutige Objektbenennungen (Namen) Konstanten: atomare Terme


PL-Reprsentation hh m d syntaktische Kategorie Konstante, (atomarer) Term Konstante, (atomarer) Term Konstante, (atomarer) Term bersetzung Hamburg Mnchen Deutschland

Funktionssymbole
hs ewz abst hs(d) abst(hh, m) ewz(hh) ewz(hs(d)) einstelliges Funktionssymbol die Hauptstadt von einstelliges Funktionssymbol die Einwohnerzahl von zweistelliges Funktionssymbol der Abstand zwischen (komplexer) Term (komplexer) Term (komplexer) Term (komplexer) Term die Hauptstadt von Deutschland der Abstand zwischen Hamburg und Mnchen die Einwohnerzahl von Hamburg die Einwohnerzahl der Hauptstadt von Deutschland
Kap. 9 PrdikatenlogikGrundlagen [4]

Komplexe Terme: Funktionssymbole, kombiniert mit der richtigen Anzahl von Termen

FGI-1 Habel / Eschenbach

Prdikatensymbole (Relationssymbole)
kombiniert mit der richtigen Anzahl von Termen ergeben (atomare) Formeln. PL-Reprsentation syntaktische Kategorie bersetzung S1 einstelliges Prdikatensymbol ist eine Stadt S1(hh) (atomare) Formel Hamburg ist eine Stadt. N zweistelliges liegt nrdlich von Prdikatensymbol N(hh, m) (atomare) Formel Hamburg liegt nrdlich von Mnchen. Gr zweistelliges ist grer als Prdikatensymbol Gr(hh, m) (atomare) Formel Hamburg ist grer als Mnchen. Komplexe Terme knnen in Formeln auftreten Die Einwohnerzahl von Hamburg ist grer als die Gr(ewz(hh), ewz(m)) Einwohnerzahl von Mnchen. Die Hauptstadt von Deutschland hat mehr Einw. als HH. Gr(ewz(hs(d)), ewz(hh)) Gr(abst(hh, m), abst(m, hh)) Der Abstand zwischen Hamburg und Mnchen ist nicht grer als der Abstand zwischen Mnchen und Hamburg. Gr(abst(hh, m), abst(m, hs(d))) Der Abstand zwischen Hamburg und Mnchen ist grer als der Abstand zwischen Mnchen und der Hauptstadt von Deutschland.
FGI-1 Habel / Eschenbach Kap. 9 PrdikatenlogikGrundlagen [5]

Prdikatensymbole Relationale Datenbanksysteme


PL-Formel: Flugverb(ab8862, ham, zrh, 240507, 06:30, 07:50) bersetzung: Flug 'AB8862' fliegt am 24.0.07 von Hamburg nach Zrich; Abflug ist um 6:30, Ankunft um 7:50. Anmerkungen:

Flugverb ist ein 6-stelliges Prdikaten- / Relationensymbol ab8862, ham, zrh, 240507, 06:30, 07:50 sind Konstanten

Relationale Datenbank Variablenfreie PL-Formeln zu einem Prdikatensymbol werden in Tabellen zusammengefhrt, z.B
Flight-No. Date Origin Time Depart. Destination Time Arriv.

Flight-connect.

ab8862 ab8780 ab8862


FGI-1 Habel / Eschenbach

240507 240507 250507

ham ham ham

06:30 15:15 06:30

zrh zrh zrh

07:50 16:35 07:50

Kap. 9 PrdikatenlogikGrundlagen [6]

Quantoren und Variablen

erlauben Aussagen ber Objekte ohne eindeutige Bezugnahme Es gibt eine Stadt, die nrdlich von Mnchen liegt. Keine Stadt liegt sdlich von sich selbst. Eine Stadt hat mehr Einwohner als Hamburg. Keine Stadt hat mehr Einwohner als die Hauptstadt von Deutschland. Jede Stadt liegt sdlich von jeder Stadt, die nrdlich von ihr liegt. Wenn eine Stadt nrdlich von einer zweiten Stadt liegt, dann liegt die zweite Stadt sdlich von der ersten. Wenn Hamburg eine Stadt ist und nrdlich von Mnchen liegt, dann gibt es eine Stadt, die nrdlich von Mnchen liegt.

!x (S1(x) " N(x, m)) !x (S1(x) " S2(x, x)) !x (S1(x) " Gr(ewz(x), ewz(hh))) !x (S1(x) " Gr(ewz(x), ewz(hs(d)))) #x #y ((S1(x) " (S1(y) " N(y, x))) $ S2(x, y)) #y #x ((S1(y) " (S1(x) " N(y, x))) $ S2(x, y)) (S1(hh) " N(hh, m)) $!x (S1(x) " N(x, m))

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [7]

Prdikatensymbole Datenbanksysteme (Fortsetzung)


Variablen ! spielen eine zentrale Rolle in der Formulierung von Anfragen ! Flugverb(x, ham, zrh, 240507, y, z) kann als Aufforderung verstanden werden, ein Modell der Formel zu finden, unter geeigneter Belegung von x, y, und z. ! Diese Sichtweise wird verwendet ! in der Logischen Programmierung (Prolog) " Modul SE-3 ! bei Datenbankanfragen (SQL: Structured Query Language) " Modul GDB Quantoren ! werden in Standard-Datenbankensystemen in der Regel nicht explizit verwendet ! sie sind implizit in die Verfahren der Antwortfindung integriert ! spielen in Deduktiven Datenbanken & Wissensbasierten Systemen eine Rolle, z.B. um Regularitten der Domne zu modellieren: Der bergang von Flug_1 zu Flug_2 klappt im Flughafen X, wenn die Abflugzeit mehr als 90 Minuten nach der Ankunftszeit liegt. (Formulierung in PL zur bung.)
FGI-1 Habel / Eschenbach Kap. 9 PrdikatenlogikGrundlagen [8]

Syntax der Prdikatenlogik: Das Alphabet Definition 9.1


Das Alphabet der Prdikatenlogik besteht aus

einer abzhlbaren Menge VPL, dem Inventar verfgbarer Symbole (V ! Vokabular). Diese unterteilt sich in

einer Menge von Variablen: x, y, xi mit i = 1, 2, einer Menge von Konstanten: a, b, c, ai, einer Menge von Funktionssymbolen: f, g, h, fi, einer Menge von Prdikatensymbolen (Relationssymbolen): P, Q, R, Pi, einer Menge von Aussagensymbolen: A, Ai, Junktoren: , ", %, $, & Quantoren: #, !

den logischen Symbolen

den Hilfssymbolen Klammern und Komma: ), (, , Jedem Funktions- und jedem Prdikatensymbol ist eindeutig eine Stelligkeit k > 0 zugewiesen.
Kap. 9 PrdikatenlogikGrundlagen [9]

FGI-1 Habel / Eschenbach

Zum Selbststudium

Konstanten entsprechen Funktionssymbolen der Stelligkeit 0. Aussagensymbole entsprechen Prdikatensymbolen der Stelligkeit 0. Es ist nicht ntig, Aussagensymbole in der Prdikatenlogik zu verwenden. Wird dasselbe Symbol / Wort mit unterschiedlicher syntaktischen Kategorie (Stelligkeit) verwendet, dann verhlt sich die Logik blind gegenber der oberflchlichen bereinstimmung und behandelt die unterschiedlichen Verwendungen unabhngig voneinander.

Bezeichnungskonventionen

Als verfgbare Symbole werden oft auch Zeichenketten (Wrter) verwendet, insbesondere, wenn eine Assoziation mit einer bestimmten Bedeutung beabsichtigt ist. Wir verwenden bestimmte Buchstaben als (Meta-)Variablen/Platzhalter, deren Wert folgendes sein kann PL-Variablen u, v, w, x, y, z Kleinbuchstaben (Ende des Alphabets) Konstanten a, b, c Kleinbuchstaben (Anfang des Alphabets) Funktionssymbole f, g, h Kleinbuchstaben (Bereich f h) Prdikatensymbole P, Q, R Grobuchstaben (Bereich P S) Formeln F, G, H Grobuchstaben (Bereich F H) Terme t, r, s Kleinbuchstaben (Bereich r t)
FGI-1 Habel / Eschenbach Kap. 9 PrdikatenlogikGrundlagen [10]

Syntax der Prdikatenlogik: Terme von L PL Definition 9.2 (Terme der Prdikatenlogik)
Gegeben sei ein Inventar verfgbarer Symbole VPL. Die Menge der prdikatenlogischen Terme ist wie folgt definiert: T-1 Jede Variable ist ein Term. T-2 Jede Konstante ist ein Term. T-3 Falls f ein Funktionssymbol der Stelligkeit k ist, und falls t1, , tk Terme sind, so ist f(t1, , tk) ein Term. T-4 Es gibt keine anderen Terme, als die, die durch endliche Anwendung der Schritte T1 bis T-3 erzeugt werden.

Der Term t ist Teilterm des Terms t', wenn t beim Aufbau von t' (Schritt T-3) verwendet wurde. Beispiel: ewz(hs(d)) ! Einwohnerzahl der Hauptstadt von Deutschland

Bemerkung zu Def. 9.2

Entsprechend der Definition lassen sich induktive Beweise ber die Struktur der Terme fhren Funktionen rekursiv ber die Struktur der Terme definieren.
Kap. 9 PrdikatenlogikGrundlagen [11]

FGI-1 Habel / Eschenbach

Zum Selbststudium: Prinzip der strukturellen Induktion fr Terme der Prdikatenlogik


Um zu beweisen, dass eine Behauptung B(t) fr jeden Term t der Prdikatenlogik gilt, gengt es, folgende Schritte durchzufhren: Induktionsanfang: Man zeigt, dass B(a) fr jede Konstante a gilt, und dass B(x) fr jede Variable x gilt. Induktionsannahme: Man nimmt an, dass f ein beliebiges Funktionssymbol ist, benennt die Stelligkeit von f als k und nimmt an, dass t1, , tk Terme sind, die alle die Behauptung erfllen, also, dass B(t1), , B(tk) gelten. Induktionsschritt: Man zeigt, dass dann auch B(f(t1, , tk)) gilt.

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [12]

Syntax der Prdikatenlogik: Formeln von L PL Definition 9.3 (Formeln der Prdikatenlogik)
Gegeben sei ein Inventar verfgbarer Symbole VPL. Die Menge der prdikatenlogischen Formeln (LPL) ist wie folgt definiert: F-1 Jedes Aussagensymbol ist eine (atomare) Formel. F-2 Falls P ein Prdikatensymbol der Stelligkeit k ist, und falls t1, ,tk prdikatenlogische Terme sind, so ist P(t1, ,tk) eine (atomare) Formel. F-3 Falls F und G Formeln sind, so sind auch folgende Zeichenketten (komplexe) Formeln: F, (F " G), (F % G), (F $ G), (F & G) F-4 Ist x eine Variable und F eine Formel, so sind !x F und #x F (komplexe) Formeln. F-5 Es gibt keine anderen Formeln, als die, die durch endliche Anwendung der Schritte F-1 bis F-4 erzeugt werden.

Die Formel F ist Teilformel der Formel H, wenn F beim Aufbau von H (Schritt F-3, F4) verwendet wurde. Der Term t ist Teilterm der Formel H, wenn t beim Aufbau von H (Schritt F-2) verwendet wurde oder Teilterm eines Terms ist, fr den dies gilt. Bezglich der Formeln !x F und #x F bezeichnen wir x als die Quantorenvariable.
Kap. 9 PrdikatenlogikGrundlagen [13]

FGI-1 Habel / Eschenbach

Zum Selbststudium: Prinzip der strukturellen Induktion fr prdikatenlogische Formeln Bemerkung zu Def. 9.3

Entsprechend der Definition lassen sich

induktive Beweise ber die Struktur der prdikatenlogischen Formeln fhren Funktionen rekursiv ber die Struktur der prdikatenlogischen Formeln definieren.

Um zu beweisen, dass eine Behauptung B(F) fr jede Formel F ' LPL gilt, gengt es, folgende Schritte durchzufhren: Induktionsanfang: Man zeigt, dass B(F) fr jede atomare Formel F gilt, also fr die Aussagensymbole und fr alle Formeln der Form P(t1, ,tk), wobei P ein k-stelliges Prdikatensymbol ist und t1, ,tk Terme sind. Induktionsannahme: Man nimmt an, dass F und G Formeln sind, fr die B(F) und B(G) gelten, und dass x eine Variable ist. Induktionsschritt: Man zeigt, dass dann auch B(F), B((F " G)), B((F % G)), B((F $ G)), B((F & G)), B(!x F) und B(#x F) gelten.
FGI-1 Habel / Eschenbach Kap. 9 PrdikatenlogikGrundlagen [14]

Prdikatenlogische Strukturbume
!x ((S1(x) " Gr(ewz(x), ewz(hh)))" N(x, y)) Quantoren bilden innere Knoten mit einem Nachfolger. Diese Knoten sind auch mit der zugehrigen Quantorenvariable gekennzeichnet. Prdikatensymbole und Funktionssymbole bilden innere Knoten. Die Zahl der Nachfolger dieser Knoten ist die Stelligkeit des Symbols. Konstanten, Variablen und Aussagensymbole bilden Bltter. Runde Knoten: logische Symbole Eckige Knoten: verfgbare Symbole

x S1 x ewz x Gr ewz hh x N y

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [15]

Zum Selbststudium
Darber hinaus:

Hufig ist es ntzlich, zweistellige Funktionssymbole oder Prdikatensymbole zwischen die zugehrigen Terme zu schreiben. In der Mathematik ist dies z.B. die Standardkonvention fr Operationssymbole fr Addition, Multiplikation etc. und Relationen wie Gleichheit, grer, kleiner etc. Um diese Notation, die sog. Infixschreibweise, zuzulassen, mu die Syntaxdefinition der Logik-Sprache geeignet gendert werden.

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [16]

bersetzungen Deutsch ( PL (1) Prdikate und Argument-Reihenfolge


Hamburg hh ist eine Stadt S1 hh Mnchen m N(hh, m) nrdlich von N hh, m die Mnchen m S1(hh) " N(hh, m) S1(hh)

Hamburg liegt nrdlich von hh N hh, m Hamburg hh ist eine Stadt S1 hh ist eine Stadt, S1 hh

Hamburg hh

nrdlich von Mnchen liegt N m hh, m S1(hh) " N(hh, m)

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [17]

bersetzungen Deutsch ( PL (2) Existenzquantor


Eine ! x Keine ! x Keine ! x Stadt S1 x Stadt S1 x Stadt S1 x liegt nrdlich von Mnchen N m x, m liegt nrdlich von Mnchen N m x, m liegt nrdlich von sich selbst N x, x !x (S1(x) " N(x, m))

!x (S1(x) " N(x, m))

!x (S1(x) " N(x, x))

Allquantor
Jede # x Jede # x Stadt S1 x Stadt S1 x ist gro G x liegt nrdlich von N x, m #x (S1(x) $ G(x)) Mnchen m #x (S1(x) $ N(x, m))
Kap. 9 PrdikatenlogikGrundlagen [18]

FGI-1 Habel / Eschenbach

bersetzungen Deutsch ( PL (3) Beispiel


Jeder # x Mensch M1 x hat eine ! y Mutter M2 y, x #x (M1(x) $ !y M2(y,x))

Aber:
Jeder / jede hat eine Mutter werden nicht bersetzt in: denn: bzw. Alle haben eine Mutter #x !y M2(y,x)

das Deutsche stellt sortale Bedingungen daran, welche Arten von Entitten in der Beziehung _ ist Mutter von _ stehen knnen, damit der entsprechende Satz sinnvoll ist.

die Standard-Prdikatenlogik stellt keine entsprechenden Bedingungen an die Variablen Sortale Bedingungen mssen in der Standard-Prdikatenlogik explizit durch einstellige Prdikatensymbole formuliert werden. z.B.: Jeder / jede ( M1(x) Sortenlogik ! Prdikatenlogik mit sortiertenVariablen [wird in FGI-3 (Masterstudium) behandelt]
FGI-1 Habel / Eschenbach Kap. 9 PrdikatenlogikGrundlagen [19]

Zum Selbststudium: Sortenlogik


Sorten

ermglichen es, Kategorien der Domne zu bercksichtigen und hierbei auch unterschiedliche Rollen, die Entitten der Domne spielen, einzubeziehen, z.B. in Flugverb(ab8862, ham, zrh, 240507, 06:30, 07:50)

treten vier Sorten auf: 'flightnumber', 'airport', 'date', 'time' die Argumente der Sorte

'airport' tritt in zwei Rollen auf: 'origin' und 'destination' 'time' tritt in zwei Rollen auf: 'departure' und 'arrival'

Entsprechend differenzierte Analysen sind Grundlage fr die Strukturierung einer Domne in Relationalen Datenbanken " Modul GDB die Darstellung von Regularitten in Wissensbasierten Systemen ( & Deduktiven Datenbanken) " Modul GWV

ermglichen es, gewisse Schritte des automatischen Beweisens effizienter zu realisieren. [wird nicht regelmssig in FGI-3 (Masterstudium) behandelt]
Kap. 9 PrdikatenlogikGrundlagen [20]

FGI-1 Habel / Eschenbach

Funktions- und Prdikatensymbole Welche bersetzung


ist (die) Hauptstadt von ( Hs zweistelliges Prdikatensymbol ? Hauptstadt von ( hs einstelliges Funktionssymbol Bedingung: Mit einem Funktionssymbol gebildete Terme benennen eindeutig ein Objekt.

Beispiele
Die Hauptstadt von Frankreich liegt an der Seine. Paris ist die Hauptstadt von p = hs(fr) Hs(p, fr) Frankreich. Statt einstelliger Funktionssymbole knnen auch zweistellige Prdikatensymbole verwendet werden, aber: dies fhrt zu anderen prdikatenlogischen Darstellungen. Bei Verwendung von Funktionssymbolen ist ein zustzliches logisches Symbol = (Identitt) ntzlich. # Prdikatenlogik mit Identitt (nicht Gegenstand dieser Vorlesung, wird in FGI-3 behandelt.)
FGI-1 Habel / Eschenbach

Darstellung mit einstelligem Funktionssymbol Liegt_an(hs(fr), s)

Darstellung mit zweistelligem Prdikatensymbol !x (Liegt_an(x, s) " Hs(x, fr))

Kap. 9 PrdikatenlogikGrundlagen [21]

Funktions- und Prdikatensymbole (2)


Funktionale Schreibweise p = hs(fr) Fordert fr jede Konstante a die Eindeutigkeit des Funktionswertes hs(a). Relationale Schreibweise Hs(p, fr) Ermglicht die Existenz mehrerer Objekte b1 und b2, die zu einer Konstante a in der "HauptstadtRelation" Hs stehen knnen: Hs(b1, a) und Hs(b1, a).

Paris ist die Haupt stadt von Frankreich.

Jede n-stellige Funktion kann auch als (n+1)-stellige Relation dargestellt werden.

Dabei geht die explizite Funktionale Abhngigkeit verloren. In Relationalen Datenbanken spielt "Funktionale Abhngigkeit" eine wichtige Rolle. " Kap. 7. Logischer DB-Entwurf im Modul GDB

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [22]

Freie Variablen einer Formel Definition 9.4 (freie Variablen von Termen und Formeln)
Wir definieren eine Abbildung FV von Termen und Formeln auf Mengen von Variablen rekursiv wie folgt: FV(a) = { } FV(x) = { x } FV(f(t1, , tk)) = FV(t1) ) ) FV(tk) fr jede Konstante a fr jede Variable x fr jedes k-stellige Funktionssymbol f und alle Terme t1, , tk FV(A) = { } fr jedes Aussagensymbol A FV(P(t1, , tk)) = FV(t1) ) ) FV(tk) fr jedes k-stellige Prdikatensymbol P und alle Terme t1, , tk FV(F) = FV(F) fr jede Formel F FV((F " G)) = FV((F % G)) = fr beliebige Formeln F und G FV((F $ G)) = FV((F & G)) = FV(F) ) FV(G) FV(!x F) = FV(#x F) = FV(F) \ { x } fr jede Formel F und jede Variable x Fr jede Formel F nennen wir die Elemente von FV(F) die in F frei vorkommenden Variablen.
FGI-1 Habel / Eschenbach Kap. 9 PrdikatenlogikGrundlagen [23]

Gebundenes und freies Vorkommen von Variablen Definition 9.5 (Skopus / Gebundene / freie Variable)

Zur Erinnerung: Wenn F eine Formel und x eine Variable ist, dann sind auch !x F und #x F Formeln (s. Def. 9.3.4). Bezglich der Formeln !x F und #x F bezeichnen wir F auch als den Skopus des Quantors und x als die Quantorenvariable. Eine Variable x, die im Skopus eines Quantors (!x bzw. #x) mit der Quantorenvariable x frei vorkommt, ist durch den Quantor in dieser Position gebunden. Eine Variable x, die als Teilterm in einer Formel F enthalten aber in dieser Position durch keinen Quantor gebunden ist, ist in dieser Position frei in F. Eine Formel ohne freies Vorkommen von Variablen heit geschlossen. Geschlossene Formeln werden auch als prdikatenlogische Aussagen bezeichnet.

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [24]

Beispiel: !x P(x, f(x, y)) % !y #z Q(y, g(x, z))

x P x x f y y x y z Q g z

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [25]

Beispiel: !x (P(x, f(x, y)) % !y #z Q(y, g(x, z)))


x P x x f y y z Q y x
FGI-1 Habel / Eschenbach

g z
Kap. 9 PrdikatenlogikGrundlagen [26]

Semantik: Aussagenlogik Prdikatenlogik Auswertung von Formeln in der Aussagenlogik (L AL)

Formeln werden auf Wahrheitswerte abgebildet. Aussagensymbole sind die frei interpretierbaren Bestandteile (verfgbare Symbole). Aussagensymbolen werden durch Belegungen ausgewertet. Die Auswertung komplexer Formeln bestimmt sich aus einer Belegung und festen Regeln fr die Auswertung der Junktoren.

Auswertung von Ausdrcken in der Prdikatenlogik (L PL)

Terme werden auf (beliebige) Objekte einer Grundmenge abgebildet. Zustzliche frei interpretierbare Bestandteile (verfgbare Symbole): (freie) Variablen, Konstanten, Funktionssymbole und Prdikatensymbole Sie werden durch Interpretationen bezglich einer Grundmenge (Domne, Universum) ausgewertet. Zustzliche Regeln fr die Auswertung von komplexen Termen, atomaren Formeln und fr komplexe Formeln mit Quantoren Quantoren beeinflussen die Auswertung der von ihnen gebundenen Variablen.
Kap. 9 PrdikatenlogikGrundlagen [27]

FGI-1 Habel / Eschenbach

Semantik: Aussagenlogik Prdikatenlogik (Forts.)

Die verfgbaren Symbole der prdikatenlogischen Ausdrcke werden mit Hilfe der Grundmenge (Domne, Universum) interpretiert:

freie Variablen und Konstanten durch Objekte der Grundmenge Funktionssymbole durch Funktionen ber der Grundmenge Prdikatensymbole durch Mengen ber der Grundmenge Aussagensymbole durch Wahrheitswerte. Komplexe Ausdrcke (Terme, Formeln) werden hierauf aufbauend ausgewertet.

Auch in der Semantik der Prdikatenlogik spielen Wahrheitswerte eine zentrale Rolle. Wahrheitswerte atomarer Formeln ergeben sich durch die Interpretation ber der Grundmenge (Domne).

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [28]

Semantik der Prdikatenlogik: Strukturen Definition 9.6 (Struktur)


Eine Struktur ist ein Paar A = (U, I), wobei

U (Universum, Grundmenge, Domne) eine beliebige, nicht leere Menge ist und I (Interpretation, Auswertung, valuation) eine Abbildung ist .

Der Definitionsbereich von I ist VPL (Vokabular der Prdikatenlogik). I bildet

Variablen und Konstanten auf Elemente der Grundmenge U, k-stellige Funktionssymbolen auf k-stellige Funktionen ber U, k-stellige Prdikatensymbole auf Mengen von k-Tupeln ber U und Aussagensymbole auf Wahrheitswerte ab.

Wenn mehrere Strukturen A und B bzw. A1 und A2, gleichzeitig betrachtet werden sollen, schreiben wir auch A = (UA, IA) und B = (UB, IB) ; bzw. A1 = (U1, I1) und A2= (U2, I2), um die Universen und Interpretationen auseinanderzuhalten.

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [29]

Beispiel (1): Interpretationen fr L PL


Konstanten: a, b, c Prdikatensymbol: grer (2-stellig)

Die Domne U = {

} H={( , ), ( , ), ( , )}

Relationen ber der Domne U:

B={(

), (

, ), (

)}

V={(

), (

), (

)}

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [30]

Beispiel (1): Interpretationen fr L PL (Forts. 1)


A1 = (U, I1) I1(a) = A2 = (U, I2) I2(a) = : : A4 = (U, I4) I4(a) = I2(b) = I2(c) = I2(grer) = H I1(b) = I1(c) = I1(grer) = H

I4(b) =

I4(c) =

I4(grer) = V

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [31]

Beispiel (1): Interpretationen fr L PL (Forts. 2)


Konstanten: a, b, c Prdikatensymbol: grer (2-stellig) Funktionssymbol: nachfolger (1-stellig) Die Domne U = { Funktionen ber der Domne U: , , }

( (

)= )=

( (

)= )=

( )=

( )=

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [32]

Tabellarische Darstellung verschiedener Interpretationen ber einer Domne


a A1 A2 : A4 A5 V H b c grer H H nachfolger

Entsprechend zu Wahrheitstafeln. Aber: Es gibt unendlich viele Interpretationen, die Tafel kann also nicht vollstndig werden.

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [33]

Semantik der Prdikatenlogik: Komplexe Terme und Formeln Definition 9.7 (Auswertung komplexer Terme und atomarer Formeln)
Sei F eine Formel und A = (U, I) eine Struktur. I wird rekursiv zu einer Auswertung fortgesetzt, fr die wir dann einfach A schreiben.

Rekursive Definition von A fr Terme:

T*-1 Fr jede Variable x ist: A(x) = I(x). T*-2 Fr jede Konstante a ist: A(a) = I(a). T*-3 Fr jede Liste von k Termen t1, , tk und jedes k-stellige Funktionssymbol ist: A(f(t1, , tk)) = I(f)(A(t1), , A(tk))

I(f) ist eine k-stellige Funktion ber U. Diese Funktion wird auf die Liste von Objekten angewendet, die bei der Auswertung der Terme entsteht.

Rekursive Definition von A fr atomare Formeln:

F*-1 Fr jedes Aussagensymbol A ist: A(A) = I(A) F*-2 Fr jede Liste von k Termen t1, , tk und jedes k-stellige Prdikatensymbol P ist: +1, falls (A(t ), , A(t )) ' I(P) 1 k A(P(t1, , tk)) = ,0, sonst + *
FGI-1 Habel / Eschenbach Kap. 9 PrdikatenlogikGrundlagen [34]

Zum Selbststudium: Alternative Schreibweise


U. Schning (vgl. Abschnitt 2.1) verwendet eine Abkrzende Schreibweise: PA statt I(P), fA statt I(f), xA statt I(x)

Damit ergibt sich dann z.B.:


T*-3 Fr jede Liste von k Termen t1, , tk und jedes k-stellige Funktionssymbol ist: A(f(t1, , tk)) = fA(A(t1), , A(tk)) F*-2 Fr jede Liste von k Termen t1, , tk und jedes k-stellige Prdikatensymbol P ist: 1, falls (A(t1), , A(tk)) ' PA A(P(t1, , tk)) = 0, sonst

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [35]

Beispiel (2): Auswertung fr L PL


Konstanten: a, b, c Prdikatensymbol: grer (2-stellig) Die Domne U = { , , }

A1 = (U, I1) I1(a) = A1(grer(a, c)) = ? (I1(a), I1(c)) = ( , ) . H={( , I1(b) =

I1(c) =

I1(grer) = H

), (

), ( ,

)}

also: A1(grer(a, c)) = 0

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [36]

Beispiel (2): Auswertung fr L PL (Forts. 1)


Konstanten: a, b, c Prdikatensymbol: grer (2-stellig) Die Domne U = { , , }

A1 = (U, I1) I1(a) = A1(grer(b, a)) = ? (I1(b), I1(a)) = ( , ) ' I1(b) =

I1(c) =

I1(grer) = H

H={( ,

), (

), ( ,

)}

also: A1(grer(b, a)) = 1

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [37]

Beispiel (2): Auswertung fr L PL (Forts. 2)


Konstanten: a, b, c Prdikatensymbol: grer (2-stellig) Funktionssymbol: nachfolger (1-stellig) Die Domne U = { , , }

A1 = (U, I1) I1(a) = I1(b) = I1(c) =

I1(grer) = H

I1(nachfolger) =

A1(grer(nachfolger(a), nachfolger(c))) = ? (A1(nachfolger(a)), A1(nachfolger(c))) =(I1(nachfolger)(I1(a)) , I1(nachfolger)(I1(c))) =( ( ), ( )) = ( , ) ' H={( , also: A1(grer(nachfolger(a), nachfolger(c) )) = 1 ), ( , ), ( , )}

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [38]

Zum Selbstausfllen
a b c grer nachfo grer grer nachlger (a, c) (b, a) folger (a) H H V H 0 1 nachfolger (c) grer( nachfolger(a), nachfolger(c) ) 1

A1 A2 A4 A5

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [39]

Semantik der Prdikatenlogik: Auswertung komplexer Formeln Definition 9.8 (Auswertung komplexer Formeln ohne Quantoren)
Fortsetzung der rekursiven Definition der Auswertung von Formeln (genauso wie in der Aussagenlogik): F*-3 Fr alle Formeln F, G, und alle Strukturen A, ist +1, falls A(F) = 0 A(F) = ,0, sonst + * A((F " G)) A((F % G)) A((F $ G)) A((F & G))
FGI-1 Habel / Eschenbach
+1, falls A(F) = 1 und A(G) = 1 = ,0, sonst + * +1, falls A(F) = 1 oder A(G) = 1 = ,0, sonst + * +1, falls A(F) = 0 oder A(G) = 1 = ,0, sonst + * +1, falls A(F) = A(G) = ,0, sonst + *

Kap. 9 PrdikatenlogikGrundlagen [40]

Semantik der Prdikatenlogik: x-Varianten Definition 9.9 (x-Varianten von Strukturen)


Sei A = (U, I) eine Struktur, d ' U, und x eine Variable. A[x/d] = (U, I[x/d]) ist diejenige Struktur, die x als d interpretiert und ansonsten komplett mit A bereinstimmt. Es gilt also fr alle verfgbaren Symbole /: -d, falls / = x A[x/d](/) = I[x/d](/) = ,I(/), sonst *

Weicht eine Struktur, wie die hier gebildete, hchstens bezglich der Interpretation einer Variable x von der Struktur A ab, dann heit sie x-Variante zu A.

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [41]

Beispiel (3): x-Varianten


Variable: x Domne U = a A { b , , c } x Bei endlichen Domnen lassen sich alle Varianten in einer Tabelle auflisten. Variiert werden nur Variablen. grer H H
]

nachfolger

A[x/ A[x/ A[x/

H
] ]

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [42]

Semantik der Prdikatenlogik: Formeln mit Quantoren Definition 9.10 (Auswertung komplexer Formeln mit Quantoren):
F*-4 Fr jede Variable x, jede Formel F und jede Struktur A ist A(#x F) =
+1, , + *0,

falls fr alle d ' U gilt: A[x/d](F) = 1 sonst

+1, falls es ein d ' U gibt mit: A [x/d](F) = 1 A(!x F) = ,0, sonst + *

Auf den Skopus des Quantors werden alle Varianten der Auswertung angewendet. Bei der Auswertung einer quantifizierten Formel ist der ursprngliche Wert der Quantorenvariable unerheblich. Die Werteberechnung kann nicht nur von unten nach oben erfolgen. Dieses schliet die Auswertung der prdikatenlogischen Formeln ab.

Beobachtung zu Definitionen 9.7, 9.8 und 9.10


Stimmen zwei Strukturen bzgl. des Universums und bzgl. der Interpretationen aller verfgbaren Symbole und freien Variablen der Formel berein, dann liefern sie auch fr die Formel denselben Wert.
FGI-1 Habel / Eschenbach Kap. 9 PrdikatenlogikGrundlagen [43]

Beispiel (4): Auswertung von Formeln mit Quantoren

Konstanten: a, b, c A1 = (U, I1) I1(a) = F = !x grer(x, b)

Variable: x

Domne U = {

I1(b) =

I1(c) =

I1(grer) = H

d1 = A[x/d1] (grer(x, b)) = 1 wg. (I1[x/d1](x), I1[x/d1](b)) =( , )'H

d2 = A[x/d2] (grer(x, b)) = 0 (I1[x/d2](x), I1[x/d2](b)) =( , ).H

d3 = A[x/d3] (grer(x, b)) = 0 (I1[x/d3](x), I1[x/d3](b)) =( , ).H

A1(!x grer(x, b)) = 1


FGI-1 Habel / Eschenbach

denn es gibt ein d ' U mit: A[x/d](grer(x, b)) = 1


Kap. 9 PrdikatenlogikGrundlagen [44]

Beispiel (4): Auswertung von Formeln mit Quantoren (Forts. 1)

Konstanten: a, b, c A1 = (U, I1) I1(a) = F = #x grer(x, b) d1 = A[x/d1] (grer(x, b)) = 1


wg. !

Variable: x

Domne U = {

I1(b) =

I1(c) =

I1(grer) = H

d2 = A[x/d2] (grer(x, b)) = 0 ( , ).H

d3 = A[x/d3] (grer(x, b)) = 0 ( , ).H

( ,

)'H

A1(#x grer(x, b)) = 0

denn es gilt nicht fr alle d ' U: A[x/d](grer(x, b)) = 1

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [45]

Beispiel (4): Tabellenform


Variable: x Domne U = b c { x , , }

#x gr grer !x grer !x grer #x er (x, b) grer grer (x, c) grer (x, c) grer (x, b) (x, b) (x, c) (x, c) H H 0 1 0 1 0 0 0 0 0 1 1 1 1

A[x/ A[x/ A[x/

H
] ]

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [46]

Beispiel (4): Tabellenform (Forts. 1)


Variable: x Domne U = b c { x , , } Beachte: Fr alle Strukturen A, Variablen x , Formeln F und d, e ' U gilt: A[x/d][x/e] = A[x/e] (s. Def. 9.9, 9.10) A[x/d](#x F) = A(#x F) und A[x/d](!x F) = A(!x F)

#x gr grer !x grer !x grer #x er (x, b) grer grer (x, c) grer (x, c) grer (x, b) (x, b) (x, c) (x, c) H H 1 0 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

A[x/ A[x/ A[x/

H
] ]

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [47]

Modell, Gltigkeit, Unerfllbarkeit Definition 9.11 (ganz analog zur Aussagenlogik)


Eine Struktur A heit genau dann Modell fr F, wenn gilt: A(F) = 1
!

A macht F wahr

F gilt in A

A!F

Eine Struktur A ist ein Modell fr eine Formelmenge M GDW. A ein Modell fr jede Formel F ' M ist. Eine Formel F (eine Formelmenge M) heit erfllbar, falls ein Modell A fr F (bzw. M) existiert, anderenfalls heit F (bzw. M) unerfllbar. Eine Formel F (eine Formelmenge M) heit falsifizierbar, falls eine Struktur A kein Modell fr F (bzw. M) ist. Eine Formel F (eine Formelmenge M) heit gltig, falls jede Struktur A ein Modell fr F (bzw. M) ist. ! F ist logisch wahr !!F
!

Die Definition der Gltigkeit beruht auf allen Strukturen mit beliebigen Domnen und Interpretationen.
Kap. 9 PrdikatenlogikGrundlagen [48]

FGI-1 Habel / Eschenbach

quivalenz, Folgerung Definition 9.12 (ganz analog zur Aussagenlogik)


Zwei Formeln G und F sind (logisch) quivalent, falls fr jede Struktur A gilt: A(F) = A(G). Eine Formel G folgt (logisch) aus einer Formel F (einer Formelmenge M) falls fr jede Struktur A gilt: Wenn A ein Modell fr F (bzw. M) ist, dann ist A auch ein Modell fr G.
!

F ! G bzw. M ! G

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [49]

Gltigkeit in der Prdikatenlogik (1) Beispiele

#x P(x) % #x P(x) ! ist das Resultat der Substitution mit sub(A) = #x P(x), angewendet auf die aussagenlogische Tautologie (A % A).

Satz 9.13
Wenn in einer aussagenlogischen Tautologie prdikatenlogische Formeln (uniform) substituiert werden, ergibt dies eine gltige Formel der Prdikatenlogik. ohne Beweis, aber vgl. Satz 6.2

#x (P(x) % P(x)) ! ist nicht das Resultat eine Substitution einer aussagenlogischen Tautologie. ! ist aber eine gltige Formel der Prdikatenlogik. (ist noch zu zeigen!!!!) #x P(x) $ !y P(y) ! ist eine gltige Formel der Prdikatenlogik. (ist noch zu zeigen!!!!)
Kap. 9 PrdikatenlogikGrundlagen [50]

FGI-1 Habel / Eschenbach

Gltigkeit in der Prdikatenlogik (2)

Gltigkeit von #x (P(x) % P(x))


Beweis Vorbemerkung: Nach Def.9.8 gilt fr alle Strukturen A': +1, falls A'(P(x)) = 1 oder A'(P(x)) = 0 A'(P(x) % P(x)) = ,0, sonst + * Also: A'(P(x) % P(x)) = 1, (maW: P(x) % P(x) ist eine Tautologie). Es sei A = (U, I) eine beliebige Struktur. Die x-Varianten von A liefern (entsprechend der Vorbemerkung) fr diese Formel alle den Wahrheitswert 1. Entsprechend Def. 9.10 ist dann A(#x (P(x) % P(x))) = 1. Da die Wahl von A nicht eingeschrnkt war, ist also #x (P(x) % P(x)) gltig.

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [51]

Semantik der Prdikatenlogik Das Problem der systematischen Bercksichtigung aller Strukturen

Auswertung (einer Formel) in der Aussagenlogik

LAL enthlt nur Formeln mit endlicher Lnge, d.h. jede Formel enthlt nur eine endliche Anzahl von atomaren Formeln. Die Bewertung erfolgt ber der Menge der Wahrheitswerte {0, 1} Es gibt nur endlich viele zu unterscheidende Belegungen Ai fr eine Formel F ' LAL.

Auswertung (einer Formel) in der Prdikatenlogik

Da es fr eine Formel F ' LPL unendlich viele Strukturen A gibt, ist eine systematische, erschpfende Berechnung aller Auswertungen der Formel F grundstzlich nicht mglich. Es werden andere Techniken bentigt, um semantische Eigenschaften zu prfen.

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [52]

Erfllbarkeit, Folgerung: Einige wichtige Theoreme


Die folgenden Stze gelten entsprechend zur Aussagenlogik: Satz 9.14: Eine Formel F ist genau dann gltig, wenn F unerfllbar ist. Satz 9.15: F ! G genau dann, wenn F " G unerfllbar ist.

Durch Satz 9.14 wird die Gltigkeit von Formeln auf die Unerfllbarkeit von Formeln zurckgefhrt. Durch Satz 9.15 wird Folgerbarkeit auf Unerfllbarkeit zurckgefhrt. Entsprechend der Aussagenlogik werden mechanische Verfahren zur Prfung der Unerfllbarkeit untersucht. # Deduktions- und Widerlegungsverfahren.

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [53]

Prdikatenlogik ( Aussagenlogik: Semantische Perspektive Reduktion der Prdikatenlogik auf die Aussagenlogik:

Wenn kein Prdikatensymbol (mit Stelligkeit > 0) in einer prdikatenlogischen Sprache vorhanden ist, so sind alle atomaren Formeln Aussagensymbole. ! Terme, Variablen und Funktionssymbole, aber insbesondere auch Quantoren sind in einer derartigen prdikatenlogischen Sprache berflssig. ! Die prdikatenlogische Semantik wird zur aussagenlogischen Semantik reduziert. Wenn in einer prdikatenlogischen Sprache weder Variablen noch Quantoren auftreten, ist ebenfalls eine Reduktion auf die Aussagenlogik mglich. ! Die atomaren Formeln einer derartigen prdikatenlogischen Sprache knnen als atomare Formeln einer aussagenlogischen Sprache angesehen werden. ! Auch in diesem Fall wird die prdikatenlogische Semantik zur aussagenlogischen Semantik reduziert. ! ABER: Die zustzliche Ausdrucksstrke der Prdikatenlogik geht dabei verloren!

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [54]

Prdikatenlogik 2. Stufe Prdikatenlogik 1. Stufe

Im bisher vorgestellten Typ der Prdikatenlogik (Prdikatenlogik 1. Stufe) gibt es: ! eine Art von Variablen, nmlich Individuenvariablen, die Terme sind, ! eine Art von Quantoren, nmlich solche, die Individuenvariablen binden. Semantik fr Formeln mit Quantoren (x-Varianten)

Jenseits der Prdikatenlogik 1. Stufe

Erweiterung zu Quantifizierungen ber Funktionen, Eigenschaften und Relationen ! zustzliche Arten von Variablen: Funktions-, Eigenschafts- und Relationsvariablen, denen eine eindeutige Stelligkeit zugewiesen ist. ! die Quantoren, binden Variablen aller Typen. Erweiterung der Semantik fr Formeln mit Quantoren ist notwendig. Vergrerung der Ausdrucksstrke:

Peanos Axiomatisierung der Natrlichen Zahlen #P ((P(1) " #n (P(n) $ P(n+1))) $ #n P(n)) [Induktionsaxiom]
FGI-1 Habel / Eschenbach Kap. 9 PrdikatenlogikGrundlagen [55]

Gltigkeit in der Prdikatenlogik (3)

Gltigkeit von #x P(x) $ !y P(y)


Beweis Es sei A = (U, I) eine beliebige Struktur. Wenn A(#x P(x) $ !y P(y)) = 0 ist, dann ist A(#x P(x)) = 1 und A(!y P(y)) = 0. A(!y P(y)) = 0 kann nur gelten, wenn fr jedes d ' U die y-Variante A[y/d] von A folgendes liefert: A[y/d](P(y)) = 0, also A[y/d](y) = d . A[y/d](P) = A(P). Dafr mu A(P) = 0 sein. A(#x P(x)) = 1 kann nur gelten, wenn fr jedes e ' U die x-Variante A[x/e] von A folgendes liefert: A[x/e](P(x)) = 1, also A[x/e](x) = e ' A[x/e](P) = A(P). Dafr mu A(P) = U sein. Nach Definition 9.6 ist aber das Universum einer Struktur nicht leer. Also mu fr alle Strukturen A(#x P(x) $ !y P(y)) = 1 gelten.

FGI-1 Habel / Eschenbach

Kap. 9 PrdikatenlogikGrundlagen [56]