Semantik der Prädikatenlogik

Werbung
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel:
4.3 Prädikatenlogik – Semantik
Semantik der Prädikatenlogik
zur Erinnerung: Semantik der Aussagenlogik gegeben durch
Interpretation I : V → {0, 1}; erweitert zu I : Formeln → {0, 1}
Formeln der Aussagenlogik formalisieren allgemeine Aussagen
Semantik der Aussagenlogik ordnet Formel einen Wahrheitswert
unter einer Variablenbelegung zu, z.B. I(ϕ) = 1
Formeln der Prädikatenlogik FO[=, τ ] formalisieren Aussagen über
Begebenheiten in τ -Strukturen
Semantik von FO[=, τ ] ordnet Formel Wahrheitswert in einer
Struktur unter einer Variablenbelegung zu
Schreibweise: I |= ϕ, wobei I = (A, ϑ)
131
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel:
4.3 Prädikatenlogik – Semantik
Interpretationen für Terme
Terme über τ bezeichnen Elemente einer τ -Struktur
Def.: Eine Interpretation einer FO-Formel über der Signatur τ ist
ein I = (A, ϑ), wobei A τ -Struktur mit Universum U und
ϑ : V → U ist.
[[t]]A
ϑ bezeichnet den Wert des Terms t in der Struktur A unter der
Interpretation ϑ
Wert ist definiert durch Induktion über den Termaufbau
[[x]]A
ϑ := ϑ(x)
A
A
A
[[f (t1 , . . . , tn )]]A
ϑ := f ([[t1 ]]ϑ , . . . , [[tn ]]ϑ )
132
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel:
4.3 Prädikatenlogik – Semantik
Terme interpretieren
Bsp.: τ = �+, ·, 0, 1�, t = (x · (1 + y )) + 0.
Was ist jeweils [[t]]A
ϑ , wobei
• A = (N, +, ·, 0, 1), ϑ(x) = 3, ϑ(y ) = 4?
• A = (N, +, ·, 0, 1), ϑ(x) = 4, ϑ(y ) = 3?
• A = (N, ·, +, 1, 0), ϑ(x) = 3, ϑ(y ) = 4?
• A = ({0, 1}, ∨, ∧, 0, 1), ϑ(x) = 1, ϑ(y ) = 0?
∗
• A = (2{a,b} , ∪, ·, ∅, {�}), ϑ(x) = {abbba, baba},
ϑ(y ) = {b, aa, baba}?
• A = ({a, b}∗ , ·, zip, �, �), ϑ(x) = aaaa, ϑ(y ) = bbb?
133
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel:
4.3 Prädikatenlogik – Semantik
Interpretationen für Formeln
Def.: Sei I = (A, ϑ), U Universum von A, c ∈ U. ϑ[x �→ u]
bezeichnet Update von ϑ an der Stelle x auf u.
A, ϑ |= R(t1 , . . . , tn )
.
A, ϑ |= t1 = t2
gdw.
A, ϑ |= ϕ ∧ ψ
gdw.
A, ϑ |= ϕ → ψ
gdw.
A, ϑ |= ∃x ϕ
gdw.
gdw.
A, ϑ |= ¬ϕ
gdw.
A, ϑ |= ϕ ∨ ψ
gdw.
A, ϑ |= ϕ ↔ ψ
gdw.
A, ϑ |= ∀x ϕ
gdw.
A
A
([[t1 ]]A
,
.
.
.
,
[[t
]]
)
∈
R
n
ϑ
ϑ
A
[[t1 ]]A
=
[[t
]]
2 ϑ
ϑ
A, ϑ �|= ϕ
A, ϑ |= ϕ und A, ϑ |= ψ
A, ϑ |= ϕ oder A, ϑ |= ψ
wenn A, ϑ �|= ϕ dann A, ϑ |= ψ
A, ϑ |= ϕ gdw. A, ϑ |= ψ
es gibt u ∈ U mit A, ϑ[x �→ u] |= ϕ
für alle u ∈ U gilt A, ϑ[x �→ u] |= ϕ
Ist I |= ϕ, so heißt I auch Modell von ϕ.
Ist ϕ Satz, so auch nur A |= ϕ, aber wieso?
134
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel:
4.3 Prädikatenlogik – Semantik
135
Beispiele
Bsp.: τ = �R (2) , P (1) , f (1) , g (2) , c (0) �; welche Modellbeziehungen
gelten jeweils für A = (N, ≤, {0, 2, . . .}, +1, ·, 2)?
• A, {y �→ 2} |= ∀x.R(y , x) → R(f (f (x)), g (x, c))
• A, {y �→ 1} |= ∀x.R(y , x) → R(f (f (x)), g (x, c))
.
.
.
• A |= ∀x.P(x) → ∃y .¬(y = x) ∧ ¬(f (y ) = c) ∧ ∃z.x = g (y , z)
Bsp.: τ = �E (2) , P (1) �; welche Formeln gelten hier?
P
• ∃x.P(x) ∧ ∀y E (x, y )
.
• ∃x.P(x) ∧ ∀y .y =
� x → E (x, y )
.
• ∀x ∃y .x =
� y ∧ E (y , x)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel:
4.3 Prädikatenlogik – Semantik
136
Ein Kalkül zur Modellüberprüfung
wir definieren ein System, mit dem man zu gegebenen A, ϑ und ϕ
entscheiden kann, ob A, ϑ |= ϕ gilt
ein Beweis ist wiederum ein Baum . . .
• dessen Wurzel mit A, ϑ |= ϕ beschriftet ist,
• an dessen Blättern nur Axiome stehen und
• der innen aus Beweisregeln aufgebaut ist
erstelle Beweisregeln in Abhängigkeit von Formel, z.B.
A, ϑ |= ϕ A, ϑ |= ψ
A, ϑ |= ϕ ∧ ψ
weitere Regeln: Übung
A, ϑ �|= ϕ
A, ϑ �|= ϕ ∧ ψ
A, ϑ �|= ψ
A, ϑ �|= ϕ ∧ ψ
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel:
4.3 Prädikatenlogik – Semantik
Korrektheit und Vollständigkeit
Theorem 15
Es gilt A, ϑ |= ϕ genau dann, wenn es einen Beweis im
Modellüberprüfungskalkül dafür gibt.
Beweis: Übung.
Fragen: wenn es solch einen Beweisbaum gibt, . . .
• . . . gibt es dann auch einen endlichen Beweisbaum?
• . . . gibt es dann auch einen endlich hohen Beweisbaum?
• . . . wie hoch kann dieser dann höchstens werden?
• . . . wie breit kann dieser dann höchstens werden?
137
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel:
4.3 Prädikatenlogik – Semantik
Erfüllbarkeit, Äquivalenz, etc.
Die Begriffe Erfüllbarkeit, Allgemeingültigkeit und Äquivalenz (≡),
Erfüllbarkeitsäquivalenz (≡sat ) sind wie bei der Aussagenlogik
definiert.
Beachte: Interpretation ist Paar aus Struktur und
Variablenbelegung. Also ist z.B. ∃x R(x, y ) erfüllbar trotz freier
Variablen.
Insbesondere ist ϕ erfüllbar gdw. ¬ϕ nicht allgemeingültig ist.
Bsp.: Neben den üblichen aussagenlogischen Äquivalenzen gelten
weitere, z.B.
• ∃x ϕ ≡ ¬∀x ¬ϕ
• ∃x ∃y ϕ ≡ ∃y ∃x ϕ
• ∃x ϕ ≡ ∃y ϕ[y /x]
• ∃x ϕ ∨ ∃x ψ ≡ ∃x (ϕ ∨ ψ)
• ...
138
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel:
4.3 Prädikatenlogik – Semantik
Beispiele: gerichtete Graphen
Bsp.: τ = �E (2) �, finde Modell von
�
∃x1 . . . ∃x5 .
4
5
�
�
i=1 j=i+1
. �
xi =
� xj ∧ ∃x ∀z E (z, x)
.
∧ ∀x ∀y .x = y ∨ E (x, y ) ∨ ∃z.E (x, z) ∧ E (z, y )
sind die folgenden Formeln jeweils (un)erfüllbar bzw.
allgemeingültig?
• ϕ1 := ∀x ∀y (E (x, y ) ∨ E (y , x))
• ϕ2 := ∀y .E (x, y ) ∨ ∃z.E (x, z) ∧ E (z, y )
• ϕ1 → ∃x ϕ2
• ∃x ∀y E (y , x) ∧ ∃y ∀x ¬E (y , x)
139
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel:
4.3 Prädikatenlogik – Semantik
Beispiel: Arithmetik
Bsp.: τ = �<(2) , +(2) , ·(2) , 0(0) , 1(0) �
Sind die folgenden Formeln jeweils (un)erfüllbar / allgemeingültig?
Sind sie jeweils mit N = (N, <, +, ·, 0, 1) erfüllbar?
• ∀x.1 < x → x < x · x
• x <y ∧y <z ∧z <x
• ∀x ∀y ∀z.¬(x · (y + z) < x · y + x · z)
• ∃x ∃y .(∀z.z · x < 1 ∧ y · z < 1) ∧ x < y
140
Herunterladen