Logik erster Stufe (Prädikatenlogik)

Werbung
Logik erster Stufe
(Prädikatenlogik)
Logik erster Stufe
1 / 66
Prädikatenlogik: Quantoren und Prädikate
Mit Hilfe der Aussagenlogik haben wir
Wissen modelliert und Schlüsse aus diesem Wissen gezogen.
Auch mit der Logik erster Stufe möchten wir Wissen modellieren und „verstehen“.
+ Im Gegensatz zur Aussagenlogik stehen wesentlich umfangreichere
Ausdrucksmöglichkeiten zur Verfügung. Wir möchten sagen, dass
I
I
„die Zahl x die Zahl z teilt.“
x teilt z genau dann, wenn es eine Zahl y gibt mit x · y = z.
Der Existenz-Quantor „wenn es eine Zahl y gibt“ wird benutzt wie auch das
Prädikat (oder die Relation) „x · y = z“.
„ein Land in Europa in 2014 Fußball-Weltmeister wurde.“
Es gibt ein Land in Europa, das in 2014 Fußball-Weltmeister
wurde
Auch hier wird der Existenz-Quantor benötigt wie auch die Prädikate
„Land in Europa“ und „Fußball-Weltmeister in 2014“.
- Allerdings erkaufen wir uns die größere Ausdruckskraft in vielen Fällen mit
einer algorithmisch deutlich schwierigeren Handhabung.
Logik erster Stufe
2 / 66
Prädikatenlogik: Ein erster Überblick
Genau wie die Aussagenlogik besitzt die Prädikatenlogik:
(a) eine Syntax, die festlegt, welche Zeichenketten Formeln der Prädikatenlogik
sind und
(b) eine Semantik, die festlegt, welche „Bedeutung“ einzelne Formeln haben.
Während sich die Aussagenlogik lediglich mit „wahren“ und „falschen“ Aussagen
und deren Kombination beschäftigt, „redet“ die Prädikatenlogik über
unterschiedlichste Strukturen wie zum Beispiel
I
I
die natürlichen Zahlen (mit Addition und Multiplikation) oder über
Länder (mit den Prädikaten „in Europa“ und „Fußball-Weltmeister in 2014“).
und erlaubt die Formulierung komplexer Aussagen über deren Eigenschaften.
Über welche Strukturen sollen die Formeln der Prädikatenlogik „reden“?
Logik erster Stufe
3 / 66
Strukturen
Strukturen
4 / 66
An welche Strukturen ist denn gedacht?
Zum Beispiel an
Graphen G = (V , E ),
Bäume B = (V , E ),
die natürlichen Zahlen mit Addition und Multiplikation, (N, +, ×),
die reellen Zahlen mit Addition, Multiplikation und den Konstanten 0 und 1,
(R, +, ×, 0, 1) oder
Datenbanken.
Signaturen legen den „Typ“ (bzw. das „Format“) der jeweiligen Struktur fest.
Strukturen
5 / 66
Signaturen
Eine Signatur (bzw. eine Symbolmenge; engl: signature) ist eine Menge σ von
Relationssymbolen, Funktionssymbolen und/oder Konstantensymbolen.
Jedes Relationssymbol Ṙ ∈ σ und jedes Funktionssymbol f˙ ∈ σ hat eine
Stelligkeit (bzw. Arität, engl. arity)
ar(Ṙ) ∈ N>0
bzw.
ar(f˙ ) ∈ N>0 .
Der griechische Buchstabe σ (in Worten: sigma) bezeichnet eine Signatur.
Symbole aus σ werden mit einem Punkt, wie in Ṙ bzw. f˙ gekennzeichnet.
Für Relationssymbole verwenden wir meist Großbuchstaben wie
Ṙ, Ṗ, Ė , Ṙ1 , Ṙ2 , . . . , für Funktionssymbole Kleinbuchstaben wie f˙ , ġ, ḣ, . . .
und für Konstantensymbole Kleinbuchstaben wie ċ, ḋ, . . . .
Gelegentlich verwenden wir auch
6̇
(2-stelliges Relationssymbol),
˙
+̇, ×
0̇, 1̇
Strukturen
(2-stellige Funktionssymbole),
(Konstantensymbole).
6 / 66
Strukturen
Eine Struktur über der Signatur σ (kurz: σ-Struktur) ist ein Paar
A = (A, α),
mit einer nicht-leeren Menge A, dem so genannten Universum
(bzw. Träger, engl.: universe, domain) von A, und
einer auf σ definierten Abbildung α, die
I
I
I
jedem Relationssymbol Ṙ ∈ σ
eine Relation α(Ṙ) ⊆ Aar(Ṙ) der Stelligkeit ar(Ṙ) zuordnet,
˙
jedem Funktionssymbol f˙ ∈ σ eine Funktion α(f˙ ) : Aar(f ) → A zuordnet und
jedem Konstantensymbol ċ ∈ σ ein Element α(ċ) ∈ A zuordnet.
Die Funktion α interpretiert die Relations-, Funktions- und Konstantensymbole
der Signatur σ:
α weist jedem Relations-, Funktions- oder Konstantensymbol eine tatsächliche Relation, Funktion oder Konstante über dem Universum A zu.
Strukturen
7 / 66
Strukturen: Notation
Strukturen bezeichnen wir meistens mit Fraktur-Buchstaben A, B, G, . . . ;
das Universum der Strukturen durch die entsprechenden lateinischen
Großbuchstaben, also A, B, G, . . . .
Ist A = (A, α) eine σ-Struktur, so schreiben wir für jedes Symbol Ṡ ∈ σ oft
Ṡ A an Stelle von α(Ṡ).
Falls σ = {Ṙ1 , . . . , Ṙk , f˙1 , . . . , f˙l , ċ1 , . . . , ċm } ist, schreiben wir auch
A
A = (A, Ṙ1A , . . . , ṘkA , f˙1A , . . . , f˙l A , ċ1A , . . . , ċm
).
Strukturen
8 / 66
Arithmetische Strukturen
Wir definieren die Signatur
˙ 0̇, 1̇},
σAr := { +̇, ×,
˙ 2-stellige Funktionssymbole und 0̇ sowie 1̇ Konstantensymbole sind.
wobei +̇, ×
Wir betrachten die σAr -Struktur
N
N
˙ , 0̇N , 1̇N ),
N := (N, +̇ , ×
wobei +̇
N
˙ N die natürliche Addition bzw. Multiplikation auf N sind
und ×
und 0̇N := 0, 1̇N := 1 gilt.
Entsprechend können wir σAr -Strukturen Z, Q, R mit Universum Z, Q und R
definieren.
Strukturen
9 / 66
Graphen und Bäume als Strukturen
Wir definieren die Signatur
σGraph := {Ė },
wobei Ė ein 2-stelliges Relationssymbol ist.
Jeder gerichtete Graph bzw. gerichtete Baum (V , E ) lässt sich als σGraph -Struktur
A = (A, Ė A )
mit Universum A := V und Relation Ė A := E auffassen.
Entsprechend können wir σGraph -Strukturen auch
für ungerichtete Graphen und ungerichtete Bäume definieren.
Strukturen
10 / 66
Die Formeln der Prädikatenlogik
Sei σ eine Signatur.
Die Formeln der Prädikatenlogik sollen über σ-Strukturen reden.
Aber wie sollten wir die Formeln denn definieren?
Wir „erfinden“ Variablen vi mit der Absicht, dass vi ein Element des
Universums ist.
Aus den Variablen sowie den Funktions- und Konstantensymbolen bauen wir
Terme durch „Ineinandersetzung“.
Relationssymbole aus σ (in die Terme eingesetzt werden dürfen) und
„gleichgesetzte“ Terme werden mit den logischen Junktoren ¬, ∧, ∨, →, ↔
verknüpft.
Wir dürfen All- und Existenz-Quantoren einsetzen, um die Variablen der
Formel zu binden.
Machen wir uns also an die Definition der Syntax.
Strukturen
11 / 66
Die Syntax der Prädikatenlogik
Syntax
12 / 66
σ-Terme
Sei σ eine Signatur.
(a) Eine Variable hat die Form vi für i ∈ N.
Die Menge aller Variablen bezeichnen wir mit Var, d.h.Var = {vi | i ∈ N }.
(b) Das Alphabet Aσ-Terme besteht aus allen Elementen in Var, allen Konstantenund Funktionssymbolen in σ, den Klammern (, ) und dem Komma ,.
(c) Die Menge Tσ ⊆ A∗σ-Terme der σ-Terme wird rekursiv rekursiv definiert:
Basisregeln:
I
I
Für jedes Konstantensymbol ċ ∈ σ ist ċ ∈ Tσ .
Für jede Variable x ∈ Var ist x ∈ Tσ .
Rekursive Regeln:
I
Für jedes Funktionssymbol f˙ ∈ σ und für r := ar(f˙ ) gilt:
Sind t1 ∈ Tσ , . . . , tr ∈ Tσ , so ist auch f˙ (t1 , . . . , tr ) ∈ Tσ .
Syntax
Terme
13 / 66
σ-Terme: Beispiele
Sei σ = {f˙ , ċ} die Signatur, die aus einem 2-stelligen Funktionssymbol f˙ und
einem Konstantensymbol ċ besteht.
Folgende Worte sind σ-Terme:
ċ,
v4 ,
f˙ (ċ, ċ),
f˙ (ċ, v0 ),
f˙ ċ, f˙ (ċ, v0 ) .
Die nächsten Worte sind keine σ-Terme:
0,
Syntax
f˙ (0, ċ),
f˙ (v0 , ċ, v1 ),
Terme
f A (2, 3).
14 / 66
Das Formelalphabet Aσ
Sei σ eine Signatur. Das Alphabet Aσ der Prädikatenlogik (über σ) besteht aus:
allen Symbolen in Aσ-Terme
allen Relationssymbolen in σ
den Quantoren ∃ (Existenzquantor) und ∀ (Allquantor)
dem Gleichheitssymbol =
˙
den Junktoren ¬, ∧, ∨, →, ↔.
D.h.
Aσ = Aσ-Terme ∪ σ ∪ {∃, ∀} ∪ { =}
˙ ∪ {¬, ∧, ∨, →, ↔, (, )} ∪ {, }.
Syntax
Terme
15 / 66
Die Syntax der Prädikatenlogik: Atomare Formeln
Sei σ eine Signatur.
Die Menge
FO[σ]
(FO –first-order logic– ist englisch für Logik erster Stufe)
aller Formeln der Prädikatenlogik über σ wird rekursiv wie folgt definiert:
Basisregeln:
Für alle σ-Terme t1 und t2 in Tσ gilt:
t1 =t
˙ 2 ∈ FO[σ].
Für jedes Relationssymbol Ṙ ∈ σ, für r := ar(Ṙ) und für alle σ-Terme
t1 , . . . , tr in Tσ gilt:
Ṙ(t1 , . . . , tr ) ∈ FO[σ].
Die FO[σ]-Formeln t1 =t
˙ 2 oder Ṙ(t1 , . . . , tr ) heißen atomare σ-Formeln.
Syntax
Atomare Formeln
16 / 66
Die Syntax der Prädikatenlogik: Komplexe Formeln
Rekursive Regeln:
Ist φ ∈ FO[σ], so ist auch ¬φ ∈ FO[σ].
Ist φ ∈ FO[σ] und ψ ∈ FO[σ], so ist auch
I
I
I
I
(φ ∧ ψ) ∈ FO[σ]
(φ ∨ ψ) ∈ FO[σ]
(φ → ψ) ∈ FO[σ]
(φ ↔ ψ) ∈ FO[σ].
Ist φ ∈ FO[σ] und ist x ∈ Var, so ist auch
I
I
∃x φ ∈ FO[σ]
∀x φ ∈ FO[σ].
Syntax
Komplexe Formeln
17 / 66
Formeln der Prädikatenlogik: Beispiele
Sei σ = {f˙ , ċ} die Signatur, die aus einem 2-stelligen Funktionssymbol f˙ und
einem Konstantensymbol ċ besteht.
Folgende Worte aus A∗σ sind FO[σ]-Formeln:
I
I
I
f˙ (v0 , v1 ) =
˙ ċ (eine atomare σ-Formel)
∀v2 f˙ (v2 , ċ) =v
˙ 2
¬∃v3 f˙ (v3 , v3 ) =v
˙ 3 ∧ ¬v3 =
˙ ċ
Folgende Worte sind keine FO[σ]-Formeln:
I
f˙ (v0 , v1 ) =
˙ ċ
I
I
∀v2 f˙ (v2 , ċ) =v
˙ 2
∃ċ f˙ (v0 , ċ) =v
˙ 0
Syntax
Komplexe Formeln
18 / 66
Um die Lesbarkeit von Formeln zu verbessern:
Statt mit v0 , v1 , v2 , . . . bezeichnen wir Variablen oft auch mit
x , y , z, . . . oder mit Varianten wie x 0 , y1 , y2 , . . . .
Für gewisse 2-stellige Relationssymbole wie z.B. 6̇ ∈ σOrd verwenden wir die
Infix- statt Präfixschreibweise und setzen Klammern auf natürliche Weise:
Beispiel:
An Stelle der (formal korrekten) atomaren Formel 6̇(x , y ) schreiben wir x 6̇y .
Wir üben, bevor wir die Semantik der Prädikatenlogik formal einführen.
Syntax
Komplexe Formeln
19 / 66
Formeln, die über gerichtete Graphen reden
Sei σGraph = {Ė } mit dem zweistelligen Relationssymbol Ė .
(a) Die FO[σGraph ]-Formel
φ
:=
∀x ∀y Ė (x , y ) → Ė (y , x )
besagt: „Für alle Knoten x , y gilt: Falls es eine Kante von x nach y gibt, so
gibt es auch eine Kante von y nach x .“ Ein Graph A = (A, Ė A ) „sollte“ φ
genau dann erfüllen, wenn dessen Kantenrelation symmetrisch ist.
(b) Die Formel
φ(x , y ) := ∃z1 ∃z2 Ė (x , z1 ) ∧ Ė (z1 , z2 ) ∧ Ė (z2 , y ) .
drückt aus, dass es einen Weg der Länge 3 von Knoten x zu Knoten y gibt.
(c) Was besagt die folgende FO[σGraph ]-Formel?
∀x ∀y ∃z1 ∃z2 Ė (x , z1 ) ∧ Ė (z1 , z2 ) ∧ Ė (z2 , y )
Es gibt zwischen je 2 Knoten einen Weg der Länge 3.
Syntax
Komplexe Formeln
20 / 66
Formeln, die über die natürlichen Zahlen reden
˙ 0̇, 1̇} die arithmetische Signatur.
Sei σAr := { +̇, ×,
(a) Die FO[σAr ]-Formel
φ := ∀x ∀y x +̇y = y +̇x
besagt, dass die Addition kommutativ ist.
(b) Die Formel
˙ ) ×z
˙ = x ×(y
˙ ×z)
˙
ψ := ∀x ∀y (x ×y
besagt, dass die Multiplikation assoziativ ist.
N
˙ N , 0̇N , 1̇N ) der natürlichen Zahlen
(c) Um die Struktur N := (N, +̇ , ×
zu beschreiben, wird in den Peano-Axiomen die vollständige Induktion
für jede FO[σAr ]-Formel α(x ) mit einer FO[σAr ]-Formel βα gefordert:
βα := α(0) ∧ ∀x α(x ) → α(x + 1)
Syntax
Komplexe Formeln
→ ∀x α(x ).
21 / 66
Formeln, die über Verwandschaftsbeziehungen reden (1/2)
Um Verwandtschaftsbeziehungen zu modellieren, erfinden wir die Signatur σ mit
den folgenden Symbolen:
˙
˙
1-stellige Funktionssymbole Vater,
Mutter
˙
(Gewünschte Bedeutung: x =
˙ Mutter(y
) besagt „x ist die Muttter von y “.)
˙
˙
2-stellige Relationssymbole Geschwister,
Vorfahr
˙
, y ) besagt, dass x und y
(Gewünschte Bedeutung: Geschwister(x
˙
, y ) besagt, dass x ein Vorfahr von y ist.)
Geschwister sind; Vorfahr(x
Wissen über Verwandtschaftsbeziehungen lässt sich durch Formeln der
Prädikatenlogik repräsentieren, beispielsweise:
(a) „Personen mit gleichem Vater und gleicher Mutter sind Geschwister“:
˙
˙
˙
˙
˙
∀x ∀y Vater(x
, y) .
)=
˙ Vater(y
) ∧ Mutter(x
)=
˙ Mutter(y
) → Geschwister(x
˙
(b) „Die Relation Vorfahr
ist transitiv“:
˙
˙
˙
∀x ∀y ∀z Vorfahr(x
, y ) ∧ Vorfahr(y
, z) → Vorfahr(x
, z) .
Syntax
Komplexe Formeln
22 / 66
Formeln, die über Verwandschaftsbeziehungen reden (2/2)
(c) „Eltern sind die einzigen unmittelbaren Vorfahren“:
˙
˙
∀x ∀y x =
˙ Vater(y
) ∨ x=
˙ Mutter(y
)
˙
˙
˙
↔ Vorfahr(x , y ) ∧ ¬∃z Vorfahr(x , z) ∧ Vorfahr(z, y )
.
(d) Die folgende Formel φ(x , y ) besagt, dass x Tante oder Onkel von y ist:
˙
˙
˙
, z) ∧ z =
˙ Vater(y
) ∨ z=
˙ Mutter(y
) .
φ(x , y ) := ∃z Geschwister(x
(e) Die folgende Formel ψ(x ) besagt, dass x Vater von genau 2 Kindern ist:
˙
˙
ψ(x ) := ∃y1 ∃y2
x=
˙ Vater(y
˙ Vater(y
˙ 2
1) ∧ x =
2 ) ∧ ¬y1 =y
˙
∧ ∀z x =
˙ Vater(z) → (z =y
˙ 1 ∨ z =y
˙ 2) .
Syntax
Komplexe Formeln
23 / 66
Semantik
Semantik der Prädikatenlogik
24 / 66
Eine Semantik für Terme
Sei σ eine Signatur und sei A = (A, α) eine σ-Struktur.
Wie sollen wir eine Variable x interpretieren?
In der Aussagenlogik haben wir eine Variable
mit dem Wahrheitswert 0 oder 1 belegt.
Jetzt sollten wir die Variable x
mit einem beliebigem Element des Universums A belegen!
Semantik der Prädikatenlogik
Eine Semantik für Terme
25 / 66
Belegungen und Interpretationen
(a) Eine Belegung in einer σ-Struktur A = (A, α) ist eine partielle Funktion β
von Var nach A, d.h. β ordnet jeder Variablen x , auf der es definiert ist, ein
Element β(x ) aus dem Universum A von A zu.
(b) β ist eine Belegung für einen σ-Term t (bzw. passend zu t), wenn α für alle
in t vorkommenden Variablen definiert ist.
(c) Eine σ-Interpretation ist ein Paar
I = (A, β),
bestehend aus einer σ-Struktur A und einer Belegung β in A.
(d) Eine σ-Interpretation I = (A, β) ist eine Interpretation für einen σ-Term t
(bzw. passend zu t), wenn β passend zu t ist.
Semantik der Prädikatenlogik
Eine Semantik für Terme
26 / 66
Die Semantik von Termen
(1/2)
Sei σ eine Signatur und t ein σ-Term.
Wir möchten dem Term t eine Bedeutung in der Struktur A zuweisen und
benutzen dazu eine zu t passende Interpretation I = (A, β).
1. Interpretiere die in t vorkommenden Variablen x durch die Belegung β,
ersetze also die Variable durch den Wert β(x ).
2. Belege die in t vorkommenden Konstantensymbole
gemäß ihrer Interpretation in A und
3. evaluiere t dann nach und nach
gemäß den in A gegebenen Interpretationen der Funktionssymbole.
Und was ist damit genau gemeint?
Semantik der Prädikatenlogik
Eine Semantik für Terme
27 / 66
Die Semantik von Termen
(2/2)
Sei σ eine Signatur.
Wir definieren eine Funktion J·K· rekursiv über den Aufbau von Tσ , die jedem
σ-Term t ∈ Tσ und jeder zu t passenden σ-Interpretation I = (A, β) einen Wert
JtKI ∈ A
zuordnet.
Die Basisregeln:
Für alle x ∈ Var ist Jx KI := β(x ).
Für alle Konstantensymbole ċ ∈ σ ist JċKI := ċ A .
Die rekursiven Regeln:
Für alle Funktionssymbole f˙ ∈ σ, für r := ar(f˙ ) und für alle σ-Terme
t1 , . . . , tr ∈ Tσ gilt:
Jf˙ (t1 , . . . , tr )KI := f˙ A (Jt1 KI , . . . , Jtr KI ).
Semantik der Prädikatenlogik
Eine Semantik für Terme
28 / 66
Die Semantik von Termen: Ein Beispiel
Sei σ = {f˙ , ċ} eine Signatur und sei A = (A, f˙ A , ċ A ) eine Struktur mit
A := N
N
f˙ A := +̇
(die Addition auf N)
ċ A := 0̇N (die natürliche Zahl 0)
Sei β eine Belegung mit β(v1 ) = 1 und β(v2 ) = 7. Für den Term
t := f˙ v2 , f˙ (v1 , ċ)
und I := (A, β) gilt:
JtKI
=
Jf˙ v2 , f˙ (v1 , ċ) KI
=
f˙ A β(v2 ), f˙ A β(v1 ), ċ A
f˙ A 7, f˙ A 1, 0
7 + 1 + 0 = 8.
=
=
Semantik der Prädikatenlogik
Eine Semantik für Terme
29 / 66
Notation: Freie und gebundene Variablen
(a) Eine Formel ψ ist Teilformel einer Formel φ, wenn ψ ein Teil-Wort in φ ist.
Beispiel: ψ := f˙ (v0 , v1 ) =
˙ ċ ist Teilformel der Formel ∃v0 f˙ (v0 , v1 ) =
˙ ċ.
(b) Jedes Vorkommen einer Variablen x in einer Teilformel von φ der Form ∃x ψ oder
∀x ψ heißt ein gebundenes Vorkommen von x . Jedes andere Vorkommen von x
heißt freies Vorkommen von x . Beispiel:
φ := f˙ (v0 , ċ) =v
˙ 3 ∧ ∃v0 f˙ (v0 , v1 ) =
˙ ċ
freies Vorkommen
von v0 in φ
freies Vorkommen
von v3 in φ
gebundene Vorkommen freies Vorkommen
von v0 in φ
von v1 in φ
(c) Die Menge frei(φ) aller freien Variablen einer FO[σ]-Formel φ besteht aus allen
Variablen, die mindestens einmal frei in φ vorkommen. Beispiele:
I frei f˙ (v , ċ) =v
˙ 3 = {v0 , v3 }
0
I frei ∃v0 f˙ (v0 , v1 ) =
˙ ċ = {v1 }
I frei f˙ (v , ċ) =v
˙ 3 ∧ ∃v0 f˙ (v0 , v1 ) =
˙ ċ = {v0 , v3 , v1 }
0
(d) Eine FO[σ]-Formel φ heißt Satz (genauer: FO[σ]-Satz), falls sie keine freien
Variablen besitzt, d.h. falls frei(φ) = ∅.
Semantik der Prädikatenlogik
Die Definition
30 / 66
Passende Belegungen und Interpretationen
(a) Eine Belegung β ist eine Belegung für eine FO[σ]-Formel φ
(bzw. passend zu φ), wenn β für jede freie Variable von φ definiert ist.
(b) Eine σ-Interpretation I = (A, β) ist eine
Interpretation für eine FO[σ]-Formel φ (bzw. passend zu φ),
wenn β passend zu φ ist.
Semantik der Prädikatenlogik
Die Definition
31 / 66
Notation: Zusätzliche Setzung von Variablen
(a) Ist β eine Belegung in einer σ-Struktur A, ist x ∈ Var und ist a ∈ A, so ist
die Belegung
β xa
identisch mit β bis mgl. auf die Setzung von x mit a, d.h.
β xa (x ) = a und β xa (y ) = β(y ) f.a. y (y 6= x ), für die β definiert ist.
(b) Ist I = (A, β) eine σ-Interpretation, ist x ∈ Var und ist a ∈ A, so ist
I xa := (A, β xa )
die σ-Interpretation, die sich nur in der Behandlung der Variablen x von I
unterscheidet: In I xa wird x mit a belegt.
Semantik der Prädikatenlogik
Die Definition
32 / 66
Die Definition der Semantik
Semantik der Prädikatenlogik
Die Definition
33 / 66
Eine rekursive Definition der Semantik: Rekursionsanfang
Sei σ eine Signatur.
Wir definieren eine Funktion J·K· , die jeder FO[σ]-Formel φ und jeder zu φ
passenden Interpretationen I = (A, β) einen Wahrheitswert
JφKI ∈ {0, 1}
zuordnet.
Rekursionsanfang:
Für alle σ-Terme t1 und t2 in Tσ gilt:
(
1, falls Jt1 KI = Jt2 KI ,
I
Jt1 =t
˙ 2 K :=
0, sonst.
Für jedes Relationssymbol Ṙ ∈ σ, für r := ar(Ṙ) und für alle σ-Terme
t1 , . . . , tr in Tσ gilt:
(
1, falls (Jt1 KI , . . . , Jtr KI ) ∈ Ṙ A ,
I
JṘ(t1 , . . . , tr )K :=
0, sonst.
Semantik der Prädikatenlogik
Die Definition
34 / 66
Der Rekursionsschritt für die Semantik: Die Junktoren
I
:=
J(φ ∧ ψ)KI
:=
J(φ ∨ ψ)KI
:=
J(φ → ψ)KI
:=
J(φ ↔ ψ)KI
:=
J¬φK
Semantik der Prädikatenlogik
(
1,
0,
(
1,
0,
(
0,
1,
(
1,
0,
(
1,
0,
falls JφKI = 0,
sonst.
falls JφKI = 1 und JψKI = 1,
sonst.
falls JφKI = 0 und JψKI = 0,
sonst.
falls JφKI = 0 oder JψKI = 1,
sonst.
falls JφKI = JψKI ,
sonst.
Die Definition
35 / 66
Der Rekursionsschritt für die Semantik: Die Quantoren
Ist φ ∈ FO[σ] und ist x ∈ Var, so ist
J∃x φK
I
J∀x φK
I
1, falls es (mindestens) ein a ∈ A gibt, so dass JφKI x = 1,
0, sonst.
(
1, falls für alle a ∈ A gilt: JφKI x = 1
0, sonst.
:=
:=
a
(
Semantik der Prädikatenlogik
a
Die Definition
36 / 66
Definition der Semantik: Ein Beispiel
(1/2)
Sei σGraph = {Ė } die Signatur, die aus einem 2-stelligen Relationssymbol Ė
besteht. Betrachte die FO[σGraph ]-Formel
φ := ∀x ∀y Ė (x , y ) → Ė (y , x ) .
Für jede zu φ passende σGraph -Interpretation I = (A, β) gilt:
JφKI = 1 ⇐⇒
⇐⇒
⇐⇒
⇐⇒
⇐⇒
Semantik der Prädikatenlogik
a
für alle a ∈ A gilt: J∀y Ė (x , y ) → Ė (y , x ) KI x = 1
für alle a ∈ A und alle b ∈ A gilt:
Ia b
J Ė (x , y ) → Ė (y , x ) K x y = 1
für alle a ∈ A und alle b ∈ A gilt:
falls JĖ (x , y )K
ab
Ix y
= 1, so auch JĖ (y , x )K
ab
Ix y
=1
für alle a ∈ A und alle b ∈ A gilt:
falls (a, b) ∈ Ė A , so auch (b, a) ∈ Ė A
die Relation Ė A ist symmetrisch.
Die Definition
37 / 66
Definition der Semantik: Ein Beispiel
(2/2)
Sei A die σGraph -Struktur, die den gerichteten Graphen
2
1
3
repräsentiert, d.h. A = (A, Ė A ) mit A = {1, 2, 3} und Ė A = {(1, 2), (2, 1), (2, 3)}.
Unser Graph A besitzt die Kante (2, 3), nicht aber die Kante (3, 2).
Also ist unser Graph nicht symmetrisch und
JφKI = 0
folgt für jede Interpretation I := (A, β) mit einer beliebigen Belegung β.
Semantik der Prädikatenlogik
Die Definition
38 / 66
Wann wird eine Formel von einer Interpretation erfüllt?
Sei σ eine Signatur und sei φ eine FO[σ]-Formel.
(a) Sei I = (A, β) eine zu φ passende σ-Interpretation.
I
I
Wir sagen „I erfüllt φ“ (bzw. „I ist ein Modell von φ“, kurz: I |= φ),
falls JφKI = 1.
Wir sagen „I erfüllt φ“ nicht (bzw. „I ist kein Modell von φ“, kurz: I 6|= φ),
falls JφKI = 0.
(b) Sei φ ein Satz, also eine Formel ohne freie Variablen.
I
I
Dann wird φ von einer Interpretation I = (A, β) genau dann erfüllt, wenn φ
von I = (A, βleer ) für die leere Belegung erfüllt wird.
Also hängt die Erfüllung von φ nur von der Struktur A und nicht von der
Belegung β ab: An Stelle von „I |= φ“ schreiben wir dann kurz „A |= φ“ und
sagen „die σ-Struktur A erfüllt den Satz φ.“
Semantik der Prädikatenlogik
Die Definition
39 / 66
Die Prädikatenlogik und SQL
Semantik der Prädikatenlogik
Die Definition
40 / 66
Relationale Datenbanken
Relationale Datenbanken bestehen aus Tabellen,
die sich als Relationen auffassen lassen.
Datenbanken entsprechen also Strukturen über einer passenden Signatur.
Der „Kern“ der in der Praxis gebräuchlichsten Datenbankanfragesprache
SQL,
basiert auf der Prädikatenlogik.
I
I
Viele SQL-Anfragen entsprechen FO[σ]-Formeln.
In Datenbankterminologie bezeichnet man die entsprechende Prädikatenlogik
oft auch als „relationalen Kalkül“ (engl.: „relational calculus“).
Zur Illustration betrachten wir eine Kino-Datenbank.
Semantik der Prädikatenlogik
Die Definition
41 / 66
Eine Kino-Datenbank
Unsere kleine Datenbank besteht aus:
einer Tabelle Orte, die Informationen über Kinos
(Kino, Adresse, Telefonnummer) enthält,
einer Tabelle Filme mit Informationen über die Filme
(Titel, Regie, Schauspieler) und
eine Tabelle Programm mit Informationen zum aktuellen Kinoprogramm
(Kino, Titel, Zeit).
Semantik der Prädikatenlogik
Die Definition
42 / 66
Die Tabelle „Orte“
Kino
Babylon
Casablanca
Cinestar Cubix Alexanderplatz
Die Kurbel
Filmpalast Berlin
International
Kino in der Kulturbrauerei
Moviemento
Semantik der Prädikatenlogik
Adresse
Dresdner Str. 2
Friedenstr. 12
Rathausstr. 1
Giesebrechtstr. 4
Kurfürstendamm 225
Karl-Marx-Allee 33
Schönhauser Allee 36
Kottbusser Damm 22
Die Definition
Telefon
61609693
6775752
2576110
88915998
8838551
24756011
44354422
6924785
43 / 66
Die Tabelle „Filme“
Titel
Capote
Capote
Das Leben der Anderen
Das Leben der Anderen
Der ewige Gärtner
Der ewige Gärtner
Good Night and Good Luck
Good Night and Good Luck
Knallhart
Knallhart
Raumpatrouille Orion – Rücksturz ins
Raumpatrouille Orion – Rücksturz ins
Raumpatrouille Orion – Rücksturz ins
Raumpatrouille Orion – Rücksturz ins
Raumpatrouille Orion – Rücksturz ins
Raumpatrouille Orion – Rücksturz ins
Requiem
Sommer vorm Balkon
Sommer vorm Balkon
Sommer vorm Balkon
Syriana
Syriana
V wie Vendetta
Walk the Line
Walk the Line
Semantik der Prädikatenlogik
Kino
Kino
Kino
Kino
Kino
Kino
Regie
Bennet Miller
Bennet Miller
F. Henkel von Donnersmarck
F. Henkel von Donnersmarck
Fernando Meirelles
Fernando Meirelles
George Clooney
George Clooney
Detlev Buck
Detlev Buck
Michael Braun
Theo Mezger
Michael Braun
Theo Mezger
Michael Braun
Theo Mezger
Hans-Christian Schmid
Andreas Dresen
Andreas Dresen
Andreas Dresen
Stephen Gaghan
Stephen Gaghan
James McTeigue
James Mangold
James Mangold
Die Definition
Schauspieler
Philip Seymour Hoffman
Catherine Keener
Martina Gedeck
Ulrich Tukur
Ralph Fiennes
Rachel Weisz
David Strathairn
Patricia Clarkson
Jenny Elvers
Jan Henrik Stahlberg
Dietmar Schönherr
Dietmar Schönherr
Eva Pflug
Eva Pflug
Wolfgang Völz
Wolfgang Völz
Sandra Hüller
Nadja Uhl
Inka Friedrich
Andreas Schmidt
George Clooney
Matt Damon
Natalie Portman
Joaquin Phoenix
Reese Witherspoon
44 / 66
Die Tabelle „Programme“
Kino
Babylon
Babylon
Kino in der Kulturbrauerei
Kino in der Kulturbrauerei
International
International
International
Filmpalast Berlin
Filmpalast Berlin
Filmpalast Berlin
Kino in der Kulturbrauerei
Kino in der Kulturbrauerei
Kino in der Kulturbrauerei
Babylon
Kino in der Kulturbrauerei
Filmmuseum Potsdam
Semantik der Prädikatenlogik
Titel
Capote
Capote
Capote
Capote
Das Leben der Anderen
Das Leben der Anderen
Das Leben der Anderen
Good Night and Good Luck
Good Night and Good Luck
Good Night and Good Luck
Good Night and Good Luck
Good Night and Good Luck
Good Night and Good Luck
Sommer vorm Balkon
Sommer vorm Balkon
Raumpatrouille Orion – Rücksturz ins Kino
Die Definition
Zeit
17:00
19:30
17:30
20:15
14:30
17:30
20:30
15:30
17:45
20:00
18:00
20:00
22:45
21:45
21:45
22:00
45 / 66
Die Kino-Signatur σKino
Die Signatur σKino besteht aus:
˙
einem 3-stelligen Relationssymbol Orte,
˙
einem 3-stelligen Relationssymbol Filme,
˙
einem 3-stelligen Relationssymbol Programm
und Konstantensymbolen ċ für jedes Wort c über dem ASCII-Alphabet.
Damit werden alle potentiellen Einträge c der Datenbank ermöglicht wie etwa
˙
˙
˙
˙ Anderen, . . . usw., aber
Babylon,
Casablanca,
. . . , Capote,
Das Leben der
auch z.B. Stephen ˙Spielberg oder Lola ˙rennt.
Semantik der Prädikatenlogik
Die Definition
46 / 66
Die Kino-Struktur AKino
Die σKino -Struktur AKino hat als Universum die Menge
AKino := ASCII∗
aller Worte über dem ASCII-Alphabet sowie die 3-stelligen Relationen
˙ AKino := {
Orte
(Babylon, Dresdner Str. 2, 61609693),
(Casablanca, Friedenstr. 12, 6775752) , . . . ,
(Moviemento, Kottbusser Damm 22, 6924785)},
AKino
˙
Filme
:= {
(Capote, Bennet Miller, Philip Seymour Hoffman),
(Capote, Bennet Miller, Catherine Keener) , . . . ,
(Walk the Line, James Mangold, Reese Witherspoon)},
AKino
˙
Programm
:= {
(Babylon, Capote, 17:00),
(Babylon, Capote, 19:30),
(Kino in der Kulturbrauerei, Capote, 17:30) , . . . }
Wie sind die Konstantensymbole zu interpretieren?
Semantik der Prädikatenlogik
Die Definition
47 / 66
Die Kino-Struktur AKino : Die Konstantensymbole
Die Struktur AKino interpretiert das Konstantensymbol ċ durch
ċ AKino := c.
Zum Beispiel:
AKino
˙
Babylon
˙ AKino
Capote
AKino
George ˙Clooney
AKino
17 :˙ 00
˙
61609693
Semantik der Prädikatenlogik
AKino
= Babylon,
= Capote,
= George Clooney
= 17:00
= 61609693.
Die Definition
48 / 66
Die Variablen
Um die Lesbarkeit zu verbessern, verwenden wir die Variablennamen
xK für Kino,
xA für Adresse,
xTel für Telefonnummer,
xT , zT für Titel,
xR für Regisseur,
xS für Schauspieler und
xZ für Zeit.
Semantik der Prädikatenlogik
Die Definition
49 / 66
Anfragen an die Kinodatenbank
(1/4)
„Gib die Titel aller Filme aus, die um 17:30 Uhr laufen.“
(a) Eine Formulierung in der Datenbankanfragesprache SQL:
SELECT
FROM
WHERE
Titel
Programm
Zeit = 17:30
Eine Formulierung durch eine Formel der Prädikatenlogik:
˙
˙
φFilme um 17:30 Uhr (xT ) := ∃xK Programm(x
K , xT , 17:30).
Semantik der Prädikatenlogik
Die Definition
50 / 66
Anfragen an die Kinodatenbank
(2/4)
„Gib die Titel aller Filme aus, in denen
George Clooney mitspielt oder Regie führt.“
(b) Diesmal suchen wir eine Formel
φFilme mit George Clooney (xT ),
die genau dann in der Struktur AKino wahr ist, wenn T der Titel eines Films
ist, in dem George Clooney mitspielt oder Regie führt:
φFilme mit George Clooney (xT ) :=
Semantik der Prädikatenlogik
˙
˙
∃xR Filme(x
T , xR , George Clooney) ∨
˙
˙
∃xS Filme(x
T , George Clooney, xS ) .
Die Definition
51 / 66
Anfragen an die Kinodatenbank
(3/4)
„Gib Name und Adresse aller Kinos aus, in denen ein Film läuft, in dem
George Clooney mitspielt oder Regie führt.”
(c) Eine Formulierung in SQL:
SELECT
FROM
WHERE
Orte.Kino, Orte.Adresse
Orte, Filme, Programm
Orte.Kino = Programm.Kino AND
Filme.Titel = Programm.Titel AND
(Filme.Schauspieler = George Clooney OR
Filme.Regie = George Clooney)
Eine Formulierung in der Prädikatenlogik: φKinos mit George Clooney (xK , xA ) :=
˙
∃xTel Orte(x
K , xA , xTel ) ∧
∃xT ∃xZ
Semantik der Prädikatenlogik
˙
Programm(x
K , xT , xZ ) ∧
˙
˙
∃xR Filme(x
T , xR , George Clooney) ∨
˙
˙
∃xS Filme(x
,
George
Clooney,
x
)
T
S
Die Definition
52 / 66
Anfragen an die Kinodatenbank
(4/4)
„Gib die Titel aller Filme aus, in denen nur Schauspieler mitspielen, die
schon mal mit Stephen Spielberg zusammengearbeitet haben.“
(d) lässt sich in der Prädikatenlogik wie folgt formulieren:
φFilme mit Spielberg-Schauspielern (xT ) :=
˙
∃xR ∃xS Filme(x
T , xR , xS ) ∧
˙
˙
˙
∀yS Filme(x
T , xR , yS ) → ∃zT Filme(zT , Stephen Spielberg, yS )
Semantik der Prädikatenlogik
Die Definition
53 / 66
Was kann in der Prädikatenlogik
nicht ausgedrückt werden?
Semantik der Prädikatenlogik
Die Definition
54 / 66
Prädikatenlogik: Grenzen
(1/2)
Die Signatur σGraph := {Ė } besteht aus einem 2-stelligen Relationssymbol Ė .
(a) Es gibt keinen FO[σGraph ]-Satz φ, so dass für jeden gerichteten Graphen
A = (A, Ė A ) gilt:
A erfüllt φ ⇐⇒ A ist azyklisch.
(b) Es gibt keinen FO[σGraph ]-Satz φ0 , so dass für jeden gerichteten Graphen
A = (A, Ė A ) gilt:
A erfüllt φ0 ⇐⇒ A ist stark zusammenhängend.
(c) Es gibt keine FO[σGraph ]-Formel ψ mit freien Variablen x und y , so dass für
jeden gerichteten Graphen A = (A, Ė A ) und jede zu ψ passende Belegung β
in A gilt:
(A, β) erfüllt ψ ⇐⇒ es gibt in A einen Weg von Knoten β(x ) zu Knoten β(y ).
Semantik der Prädikatenlogik
Die Definition
55 / 66
Prädikatenlogik: Grenzen
(2/2)
Was bedeuten diese Aussagen?
In der Prädikatenlogik lassen sich die Eigenschaften
- „azyklisch zu sein“, bzw.
- „stark zusammenhängend zu sein“, bzw.
- „durch einen Weg verbunden zu sein“
nicht formalisieren.
Einen Beweis dieser Aussage können Sie in der Vorlesung
„Logik in der Informatik“
kennenlernen.
Semantik der Prädikatenlogik
Die Definition
56 / 66
Semantische Folgerung
Semantik der Prädikatenlogik
Die Definition
57 / 66
Semantische Folgerung
Sei σ eine Signatur. Φ ist eine Menge von FO[σ]-Formeln und ψ ist eine
FO[σ]-Formel. Wir sagen,
ψ folgt aus Φ, (kurz: Φ |= ψ),
falls für jede, zu allen Formeln in Φ und ψ passende Interpretation I gilt:
Falls f.a. φ ∈ Φ
I |= φ , so auch
| {z }
d.h. JφKI = 1
Semantik der Prädikatenlogik
Die Definition
I |= ψ.
| {z }
d.h. JψKI = 1
58 / 66
Die Addition in den natürlichen Zahlen
(1/2)
Wir definieren die Signatur
+
˙ 0̇, 1̇},
σAr
:= { +̇, <,
˙ ein 2-stelliges Relationssymbol und 0̇
wobei +̇ ein 2-stelliges Funktionssymbol, <
und 1̇ Konstantensymbole sind.
+
In FO[σAr
]-Formeln können wir Aussagen über die Addition in den natürlichen
+
Zahlen machen. Wir betrachten deshalb die σAr
-Struktur
N
N
˙ , 0̇N , 1̇N ),
N+ := (N, +̇ , <
N
˙ N die natürliche Addition bzw. die Kleiner-Relation auf N
wobei +̇ und <
sind
und 0̇N := 0, 1̇N := 1 gilt.
Gibt es ein Axiomensystem, aus dem sich genau
+
+
die Sätze aus FO[σAr
] folgern lassen, die in der σAr
-Struktur N+ wahr sind?
Semantik der Prädikatenlogik
Die Definition
59 / 66
Die Addition in den natürlichen Zahlen
(2/2)
Das Axiomensystem ΦP der Presburger-Arithmetik:
(P1) x + 1 6= 0,
(P2) x + 1 = y + 1 → x = y ,
(P3) x + 0 = x ,
(P4) x + (y + 1) = (x + y ) + 1,
(P5) ¬(x < 0),
(P6) (x < y + 1) ↔ x < y ∨ x = y ,
(P7) x < y ∨ x = y ∨ y < x ,
Weiterhin wird das Induktionsaxiom
φ(0) ∧ ∀x (φ(x ) → φ(S(x ))) → φ
+
für jede FO[σAr
] Formel φ(x ) gefordert.
+
Für alle FO[σAr
]-Sätze φ gilt
N+ |= φ ⇔ ΦP |= φ.
Semantik der Prädikatenlogik
Die Definition
60 / 66
Addition und Multiplikation in den natürlichen Zahlen
(a) Die Presburger-Arithmetik axiomatisiert also die Eigenschaften der Addition
natürlicher Zahlen.
(b) Können wir ein solches Axiomensystem auch finden, wenn wir neben der
Addition auch die Multiplikation als Funktionssymbol zulassen?
1. Die erste Antwort ist klar,
wenn wir alle wahren Aussagen auch als Axiome verwenden.
2. Aber Axiomensysteme sollte man „einfach beschreiben“ können!
Der Gödelsche Unvollständigkeitssatz besagt,
dass es kein einfach beschreibbares Axiomensystem gibt. :-((
Komplexe Realitäten wie die σAr -Struktur N lassen sich nicht beschreiben und
lassen sich insbesondere nicht im Rechner modellieren!
Semantik der Prädikatenlogik
Die Definition
61 / 66
Die Zermelo-Fraenkel Mengenlehre
Semantik der Prädikatenlogik
Die Definition
62 / 66
ZF: Extensionalität und die Nullmenge
Die Formeln der Mengenlehre benutzen die Signatur
·
σ := {∈}
·
mit dem 2-stelligen Relationssymbol ∈.
Die Zermelo-Fraenkel Mengenlehre besteht aus der Menge ZF aller Axiome:
1. Das Extensionalitätsaxiom: Zwei Mengen A, B sind genau gleich, wenn sie
dieselben Elemente besitzen:
·
·
·
A = B ↔ ∀x x ∈ A ↔ x ∈ B .
2. Das Nullmengenaxiom fordert, dass die leere Menge eine Menge ist:
·
∃A∀x ¬x ∈ A
Als Folgerung des Extensionalitätsaxioms und des Nullmengenaxioms gibt es
genau eine leere Menge, die wir natürlich mit ∅ bezeichnen.
Semantik der Prädikatenlogik
Die Definition
63 / 66
ZF: Das Paarmengenaxiom . . .
3. Das Paarmengenaxiom fordert, dass für alle Mengen A, B auch {A, B} eine
Menge ist:
·
·
·
∀A∀B∃C ∀x x ∈ C ↔ x = A ∨ x = B .
4. Das Vereinigungsaxiom
besagt, dass mit jeder Menge A von Mengen auch
S
die Vereinigung a∈A a aller Elemente von A eine Menge ist:
·
·
·
∀A∃B∀x x ∈ B ↔ ∃y y ∈ A ∧ x ∈ y .
Paarmengenaxiom und Vereinigungsaxiom zusammen garantieren, dass auch
die Vereinigung A1 ∪ A2 von zwei Mengen A1 , A2 eine MengeSist. Dazu bilden
wir zuerst die Paarmenge {A1 , A2 } und beachten A1 ∪ A2 = a∈{A1 ,A2 } a.
5. Das Potenzmengenaxiom fordert, dass die Menge aller Teilmengen einer
Menge A eine Menge ist:
·
·
·
∀A∃B∀x x ∈ B ↔ ∀y (y ∈ x → y ∈ A) .
ZF besteht aus diesen und weiteren Axiomen.
Semantik der Prädikatenlogik
Die Definition
64 / 66
ZF: Relationen
Wir definieren Relationen in ZF:
Der Einfachheit halber seien die Mengen M1 , . . . , Mk disjunkt.
Die Menge R ist genau dann eine Relation auf den Mengen M1 , . . . , Mk ,
wenn die FO[σ]-Formel
·
·
·
·
ψ(R) := ∀x x ∈ R → ∃m1 · · · ∃mr m1 ∈ M1 ∧· · ·∧mk ∈ Mk ∧x = {m1 , . . . , mr }
erfüllt ist.
Auch Funktionen lassen sich definieren: ZF ist mächtig!
Semantik der Prädikatenlogik
Die Definition
65 / 66
Auswahlaxiom und Kontinuumshypothese
Die beiden folgenden Aussagen können in der Zermelo-Fraenkel Mengenlehre ZF
formalisiert werden, sind aber nicht Folgerungen von ZF.
(a) Das Auswahlaxiom:
Für alle Mengen A, deren Elemente paarweise disjunkte Mengen sind, gibt es
eine Menge B, die genau ein Element aus jedem Element von A enthält.
(b) Die Kontinuumshypothese:
Jede überabzählbare Teilmenge der reellen Zahlen ist gleichmächtig mit der
Menge der reellen Zahlen.
Semantik der Prädikatenlogik
Die Definition
66 / 66
Herunterladen