VI. Pr¨adikatenlogik - TU Darmstadt/Mathematik

Werbung
Logik für Informatik
Sommersemester 2003
Mathias Kegelmann
Technische Universität Darmstadt
Fachbereich Mathematik
27. Mai 2003
VI. Prädikatenlogik
A
Nachdem wir nun ausführlich die Aussagenlogik betrachtet haben, kommen wir nun zur Prädikatenlogik
erster Stufe. Dabei hat man keine atomaren Aussagenkonstanten pi mehr, sondern die elementaren Aussagen
erhält man aus Relationen wie z.B. der Gleichheit. Bevor wir das formal definieren, betrachten wir ein
Beispiel:
∃k. (2 × k = x) ∨ (2 × k = x + 1)
Informell kann man diese Aussage so verstehen, dass sie aussagt, dass x entweder gerade oder ungerade
ist. Die elementaren Aussagen sind hierbei 2 × k = x und 2 × k = x + 1, da diese entweder wahr oder
falsch sein können. Diese sind nicht atomar sondern selbst wieder aus Funktionen × und + sowie der
Relation = aufgebaut. Die Aussagen werden durch den bereits wohlbekannten Junktor ∨ verknüpft, und
schließlich enthält die Formel noch den so genannten Existenzquantor ∃. Wie diese ganzen Sprachmittel
zusammenhängen müssen wir nun formal erklären.
1
Syntax
Die Syntax der Prädikatenlogik ist in zweierlei Hinsicht komplizierter als die Aussagenlogik. Es gibt jetzt
Ausdrücke von zwei verschiedenen Arten, zum einen Terme, die für Elemente eines (Daten-)Typs stehen,
wie oben z.B. 2×k, und dann noch Formeln, d.h. logische Ausdrücke, die wahr oder falsch sein können. Die
zweite Komplikation ist, dass die Sprache in einem gewissen Sinn offen ist. Es gibt immer die bekannten
logischen Junktoren, die Quantoren ∀ und ∃ sowie die Gleichheitsrelation =. Welche Funktionssymbole
es aber gibt, um Terme aufzubauen, und welche Relationssymbole zur Verfügung stehen, um aus Termen
Formeln zu machen, hängt von der Situation ab, die wir logisch beschreiben wollen.
In der Arithmetik zum Beispiel haben wir die Funktionssymbole s (für die Nachfolgeroperation), +, ×
sowie die Konstante 0. Das einzige Relationssymbol ist die Gleichheit =.
Definition 6.1. Eine Signatur Σ = (Ω, R, α) ist gegeben durch disjunkte Mengen Ω von Operationssymbolen und R von Relationssymbolen sowie einer Stelligkeitsabbildung α : Ω ∪ R → N.
Diese Definition ist fast identisch zu der einer Signatur bei Allgemeinen Algebren (Definition A.9.1),
nur dass wir jetzt zusätzlich Relationssymbole haben. Wie bereits in der Allgemeinen Algebra fassen wir
Konstante als nullstellige Operationen auf und setzen stillschweigend voraus, dass die Zeichen “(”, “)”
und “,” weder in Ω noch in R vorkommen. Die Menge der Terme TΣ (X) über einer Variablenmenge
definieren wir genauso wie bei Algebren (Definition A.12.6):
Definition 6.2. Sei Σ eine Signatur und X eine Variablenmenge, die zu Ω∪R∪{(, ), ,} disjunkt ist. Dann
ist TΣ (X) induktiv durch folgende beiden Regeln definiert:
1. Für jede Variable x ∈ X ist das entsprechende Wort mit diesem einen Zeichen ein Term: x ∈ TΣ (X)
2. Ist f ∈ Ω ein Operationssymbol und t1 , . . . , tn ∈ TΣ (X) Terme, dann ist f(t1 , . . . ,tα(f ) ) ∈ TΣ (X)
ein Term.
Oft ist es sinnvoll, sich auf eine feste abzählbare Menge V = {x0 , x1 , x2 , . . .} von Variablen festzulegen
und dann grundsätzlich nur Terme aus TΣ (V ) zu betrachten. Die Relationssymbole tragen zum Aufbau der
Terme nichts bei, sondern sie dienen dazu, aus Termen elementare Formeln zu bilden. In der Logik nennt
man diese Relationen oft auch Prädikate.
Definition 6.3. Für Σ und X wie in der vorigen Definition erklären wir die Menge FΣ (X) der Formeln der
Prädikatenlogik erster Stufe (mit Gleichheit) über der Variablenmenge X induktiv wie folgt:
1. Ist P ∈ R ein Prädikatssymbol der Stelligkeit n = α(P ) und sind t1 ∈ TΣ (X), . . . , tn ∈ TΣ (X)
Terme, dann ist P(t1 , . . . ,tn ) ∈ FΣ (X) eine Formel.
2. Sind t1 , t2 ∈ TΣ (X) Terme, dann ist t1 = t2 ∈ FΣ (X) eine Formel.
3. ⊥ ∈ FΣ (X) ist eine Formel.
4. Für Formeln A, B ∈ FΣ (X) sind auch (A ∧ B), (A ∨ B), (A → B) ∈ FΣ (X) Formeln.
5. Ist A ∈ FΣ (X) eine Formel und x ∈ X eine Variable, dann sind ∀x. A ∈ FΣ (X) und ∃x. A ∈ FΣ (X)
auch Formeln.
Bemerkung. Die Zeichen ∀ und ∃ heißen Quantoren; dabei ist ∀ der Allquantor und ∃ der Existenzquantor. Man sagt auch, eine Formel, die mit ∀ beginnt, sei universell quantifiziert, und eine, die mit ∃ beginnt,
existenziell quantifiziert.
Wie in der Aussagenlogik lassen wir Klammern der Lesbarkeit halber gelegentlich weg, und ¬A steht
für A → ⊥ sowie A ↔ B für (A → B) ∧ (B → A). Die Quantoren binden per Konvention weniger
stark als die logischen Junktoren, und folgen mehrere aufeinander, so schreiben wir oft nur den Punkt nach
der letzten quantifizierten Variable.
Für die Formelmenge FΣ (V ) über der Standardvariablenmenge V schreiben wir abkürzend auch einfach
FΣ .
2
2.1
Semantik
Interpretation der Arithmetik in N
Jetzt wollen wir erklären, was eine Formel wie ∃k. (2 × k = x) ∨ (2 × k = x + 1) formal bedeutet. Dazu
definieren wir die Semantik induktiv zuerst für Terme und dann für Formeln. Wir machen dies zunächst
am Beispiel der Arithmetik. Die Terme interpretieren wir in N = {0, 1, 2, . . .}, wobei + und × die übliche
Interpretation haben. Die Semantik JtK eines Terms t erklären wir wie in der Allgemeinen Algebra einfach
durch Ausrechnen. Um aber z.B. Jx + 1K berechnen zu können, müssen wir zuerst wissen, was JxK sein soll.
Also starten wir mit einer Variablenbelegung ρ : X → N und erhalten dann Jx + 1Kρ = JxKρ + 1 = ρ(x) + 1
und allgemein Bedeutungen JtKρ, die von ρ abhängen. Die Gleichheit interpretieren wir wie folgt:
(
w falls Jt1 Kρ = Jt2 Kρ
Jt1 = t2 Kρ :=
f sonst
Die logischen Junktoren interpretieren wir wie in der Aussagenlogik, d.h. wir rechnen mit den Wahrheitswerten w und f. Also müssen wir nur noch die Bedeutung der Quantoren klären. Eine Aussage ∀x. . . .
bedeutet, dass “. . . ” für jeden Wert n ∈ N, den man für x einsetzt, wahr ist. Dagegen bedeutet ∃x. . . .,
dass es einen Wert n ∈ N gibt, sodass “. . . ” gilt, wenn man n für x einsetzt. Um dies formal ausdrücken zu
können, müssen wir die Belegung ρ an der Stelle x ändern. Für die Variablenbelegung, die für x den Wert
n annimmt aber überall sonst mit ρ übereinstimmt, schreiben wir ρ[x 7→ n], d.h.
(
n
falls v = x,
ρ[x 7→ n](v) :=
ρ(v) sonst.
Damit können wir nun die Semantik der Quantoren wie folgt erklären:
(
w falls für alle n ∈ N stets JAKρ[x 7→ n] = w erfüllt ist
J∀x. AKρ :=
f sonst
(
w falls es ein n ∈ N so gibt, dass JAKρ[x 7→ n] = w
J∃x. AKρ :=
f sonst
Man kann nun nachrechnen, dass man für jedes ρ
q
y
∃k. (2 × k = x) ∨ (2 × k = x + 1) ρ = w
erhält; das n ∈ N, das man hierbei für k wählen muss, ist gerade n := dx/2e.
2.2
Modelle
Formeln A ∈ FΣ (X) einer beliebigen Signatur Σ = (Ω, R, α) kann man auf ähnliche Weise überall interpretieren, wo man den Funktionssymbolen aus Ω und den Relationssymbolen aus R eine Bedeutung
gegeben hat. Dazu definieren wir den Begriff des Modells einer Signatur als Verallgemeinerung des Begriffs der Algebra einer Signatur.
Definition 6.4. Sei Σ = (Ω, R, α) eine Signatur. Ein Modell M = M, (f M )f ∈Ω , (RM )R∈R für Σ ist
gegeben durch eine nichtleere Trägermenge M , eine Ω-indizierte Familie von Funktionen
f M : M α(f ) → M
und eine R-indizierte Familie von Relationen
RM ⊆ M α(R) .
2.3
Interpretation in beliebigen Modellen
Nun können wir definieren wie man Formeln in beliebigen Modellen interpretiert. Sei dazu Σ eine Signatur, M ein Modell und ρ : X → M eine Variablenbelegung. Dann definieren wir zunächst induktiv die
Semantik von Termen J·Kρ : TΣ (X) → M
JxKρ := ρ(x), für x ∈ X
Jf(t1 , . . . ,tα(f ) )Kρ := f M Jt1 Kρ, . . . , Jtα(f ) Kρ
und dann die für Formeln J·Kρ : FΣ (X) → {w, f}, die wir aber gleich bezeichnen:
(
w falls Jt1 Kρ, . . . , Jtn Kρ ∈ RM
JR(t1 , . . . ,tα(R) )Kρ :=
f sonst
(
w falls Jt1 K = Jt2 K
Jt1 = t2 Kρ :=
f sonst
f
JAKρ ∧ JBKρ
JAKρ ∨ JBKρ
JAKρ → JBKρ
(
w falls für alle m ∈ M stets JAKρ[x 7→ m] = w erfüllt ist
J∀x. AKρ :=
f sonst
(
w falls es ein m ∈ M so gibt, dass JAKρ[x 7→ m] = w
J∃x. AKρ :=
f sonst
J⊥Kρ
JA ∧ BKρ
JA ∨ BKρ
JA → BKρ
:=
:=
:=
:=
Hierbei sind die semantischen Operationen ∧, ∨ und → wie in der Aussagenlogik durch die Wertetabellen
aus Skript 1 gegeben.
Wir sagen, dass eine Formel A in einem Modell M unter der Belegung ρ gilt, wenn JAKρ = w. Dafür
schreiben wir M, ρ A. Gilt A in M für jede Belegung ρ, so schreiben wir M A.
3
Spiele
Diese Wahrheitswerte-Semantik kann man auch als Spiel-Semantik uminterpretieren. Seien Σ und M fest
sowie eine Variablenbelegung ρ gegeben. Dann kann man zu jeder Formel A ∈ FΣ (X) ein VerifikationsWiderlegungs-Spiel wie folgt spielen: Es gibt zwei Spieler V und W , wobei V versucht, die Gültigkeit
von A (in M unter der Belegung ρ) zu verteidigen und W sie zu widerlegen. Dazu zerlegen sie nach und
nach die Formel abhängig von ihrer Struktur:
• Ist A eine elementare Aussage, also von der Form R(t1 , . . . ,tα(R) ) oder t1 = t2 , so überprüfen sie
die Gültigkeit der Formel direkt im Modell durch Ausrechnen. Ist das Ergebnis w, so gewinnt V ; ist
es f, so gewinnt W .
• Ist die Formel ⊥ so gewinnt W .
• Ist die Formel von der Form A ∧ B, so kann sich W aussuchen, ob er mit A oder mit B weiterspielen
will.
• Für Formeln der Form A ∨ B entscheidet dagegen V , ob mit A oder mit B weitergespielt wird.
• Ist die Formel von der Form ∀x. A, so wählt W einen Wert für x und man spielt mit A weiter.
• Für den Existenzquantor ∃x. A wählt V einen Wert für x und es wird wieder mit A weitergespielt.
• Für negierte Formeln ¬A spielt man mit A weiter, wobei nun die Rollen von V und W vertauscht
werden.
• Implikationen A → B behandelt man als ¬A ∨ B, d.h. V kann sich aussuchen, ob er lieber A mit
vertauschten Rollen oder einfach mit B weiterspielen möchte.
Beispiel 6.5. Wie kann der Verteidiger das zu ∀x∃y. x < y gehörende Spiel gewinnen und somit die
Gültigkeit dieser Formel in N verteidigen? Es beginnt W damit, dass er ein beliebiges x ∈ N wählt. Danach
geht es mit der Formel ∃y. x < y weiter. Nun wählt V einfach y := x + 1 und man überprüft nun x < y,
was mit dieser Wahl von y immer wahr ist.
Das Spiel ∃y∀x. x < y dagegen kann immer W gewinnen, da er für x einfach die gleiche Zahl wählen
kann, die V für y gewählt hat.
Satz 6.6. Sei Σ eine Signatur, M ein Modell für Σ, ρ : X → M eine Variablenbelegung und A ∈ FΣ (X).
Dann gilt genau dann M, ρ A, wenn V für das zu A gehörende Spiel eine Gewinnstrategie hat. Gilt A
nicht unter der Belegung ρ, dann hat W eine Gewinnstrategie.
Herunterladen