Kapitel II
Pr¨adikatenlogik
Grundlagen der Pr¨adikatenlogik
Ziele:
Formulierung von Aussagen ¨uber einen Datenbereich, auf dem Funktionen und Pr¨adikate definiert sind
Beweisef¨ur diese Aussagen Anwendungen:
L¨osung von Anfragen auf Datenmengen in der KI oder in Informationssystemen
Formulierung von Integrit¨atsbedingungen auf Daten:
Schleifeninvarianten eines Programms, Constraints auf XML-Dateien oder Datenbankeintr¨agen
L¨osung von Constraint-Systemen beim Testen oder Planen Logisches Programmieren
Syntax der Pr¨adikatenlogik 1879 im Artikel Begriffsschrift vonGottlob Frege (1848 — 1925).
Semantik erst 1934 durch Alfred Tarski (1901 — 1983).
Grundlagen der Pr¨adikatenlogik (Fort.)
Semantisch: Elemente eines Datenbereich,Funktionenauf diesen Elementen und Beziehungenzwischen diesen Elementen
Syntaktisch:
Termebeschreiben Elemente des Datenbereichs Konstanten bezeichnen einzelne Elemente (z.B. 7 ) Variablen stehen f¨ur Elemente (z.B. x )
Funktionssymboleerlauben es Terme zu konstruieren, die wiederum f¨ur Elemente stehen (z.B. fac(7) )
Formelnformulieren Aussagen ¨uber die Elemente: wahroderfalsch.
Pr¨adikatssymbole dr¨ucken elementare Aussagen aus (z.B.x>7 ) Logische Operatoren/Junktoren und Quantorenverkn¨upfen die elementaren Aussagen (z.B.∀x.x>7∨x <8 )
Funktions- und Pr¨adikatssymbole h¨angen von der Anwendung ab, sind also Parameter in der Definition der Syntax.
Logische Symbole sind fest.
Grundlagen der Pr¨adikatenlogik (Fort.)
Beispiel 4.1 (Beschreibung mathematischer Beziehungen)
Syntax: Konstanten 1, 2, 3, Funktionssymbole +, /, Variablen x,y,z, P¨adikat <, Junktoren →,∧, Quantoren∀,∃
Terme: 1, 1 +2
3, x+3 2
Formeln: x <3, ∀x.∀y.(x<y → ∃z.(x <z∧z <y))
Semantik: DatenbereichQ, Konstante 1 bis Pr¨adikat<mit der “¨ublichen”
Bedeutung
Grundlagen der Pr¨adikatenlogik (Fort.)
Beispiel 4.2 (Beschreibung von Beziehungen zwischen Daten)
Syntax: Variablenx, y, Funktion weiteDerReise(−), P¨adikateistHund(−), istFisch(−), <, Quantor ∀.
Formel:
∀x.∀y.(istHund(x)∧istFisch(y))→weiteDerReise(x)<weiteDerReise(y) Semantik: Datenbereich{Lassie,Nemo} ∪N∪ {⊥}.
Funktion weiteDerReise(x) liefert die Weite der Reise eines Tieres des Datenbereichs und ⊥, falls kein Tier eingegeben wird.
Pr¨adikatx <y liefertwahr, fallsx und y inN undx kleiner alsy,falsch sonst.
Syntax der Pr¨adikatenlogik erster Stufe
Definition 4.3 (Signatur)
Eine Signaturist ein Paar S = (Funk,Pr¨ad) mit
Funkeiner Menge von Funktionssymbolenf,g, . . .∈Funkund Pr¨ad einer Menge vonPr¨adikatssymbolen p,q, . . .∈Pr¨ad.
Jedes Funktions- und jedes Pr¨adikatssymbol hat eineStelligkeit k∈N. Schreibe auchf/k ∈Funkbzw. p/k ∈Pr¨ad, fallsf bzw. p Stelligkeitk hat.
0-stellige Funktionen und Pr¨adikate heißen Konstanten.
Voraussetzungen:
Funkund Pr¨ad seien entscheidbar, nicht notwendigerweise endlich.
Neben der Signatur gebe es eine abz¨ahlbare Menge V an Variablen.
Es seienV,Funk,Pr¨adpaarweise disjunkt und enthalten nicht
¬ ∧ ∨ → ↔ ∃ ∀ , = ( )
Syntax der Pr¨adikatenlogik erster Stufe (Fort.)
Definition 4.4 (Syntax der Pr¨adikatenlogik erster Stufe) Sei S = (Funk,Pr¨ad) eine Signatur.
Die Menge Term(S) allerTerme ¨uberS ist induktiv definiert als t ::=x |f(t1, . . . ,tk), wobeix ∈V und f/k ∈Funk.
Die Menge FO(S) der pr¨adikatenlogischen Formeln erster Stufe ¨uberS ist induktiv definiert als
A::= (t1=t2)|p(t1, . . . ,tk)|
(¬A)|(A1∧A2)|(A1∨A2)|(A1→A2)|(A1↔A2)| (∃x.A)|(∀x.A)
mit t1,t2, . . . ,tk ∈Term(S),p/k ∈Pr¨ad undx ∈V. Nenne (t1 =t2) und p(t1, . . . ,tk) auch atomare Formeln.
Syntax der Pr¨adikatenlogik erster Stufe (Fort.)
Zur besseren Lesbarkeit:
Außere Klammern weglassen.¨ Priorit¨aten:¬,∧,∨,→,↔,∃,∀
(∀x1, . . . ,xn.A) steht f¨ur (∀x1.(. . .(∀xn.A). . .) (∃x1, . . . ,xn.A) steht f¨ur (∃x1.(. . .(∃xn.A). . .)
F¨ur zweistellige Pr¨adikats- und Funktionssymbole wird auch Infix-Notation genutzt. Beispiel t1<t2 statt <(t1,t2).
Weitere Klammern k¨onnen weggelassen werden, wenn die Formelstruktur unmissverst¨andlich bleibt, z.B.:
∃x.∀y.y <2→y <x
Syntax der Pr¨adikatenlogik erster Stufe (Fort.)
Definition 4.5 (Freie und gebundene Variablen)
In einer Formel (Qx.A) mit Q∈ {∃,∀} ist Ader Geltungsbereichvon Qx.
Ein Vorkommen einer Variablenx ∈V in einer Formel heißt gebunden, falls es im Geltungsbereich eines Quantors Qx vorkommt.
Sonstige Vorkommen einer Variablen heißen frei.
Formeln ohne freie Vorkommen heißen abgeschlossen.
Die Menge V(A)enth¨alt die Variablenin A∈FO(S). ¨Ahnlich enthalten FV(A)und GV(A) die Variablen, diegebunden bzw.frei inA vorkommen.
Lemma 4.6
(a) Ist S entscheidbar, dann sind Term(S) und FO(S) entscheidbar.
(b) Zusammengesetzte Terme und Formeln lassen sich eindeutig zerlegen.
(c) Freie und gebundene Vorkommen lassen sich effektiv bestimmen.
Semantik der Pr¨adikatenlogik erster Stufe
Terme und Formeln sind zun¨achst einmalsyntaktische Objekte ohne Bedeutung: Was bedeutet ein Term? Was bedeutet eine Formel?
Definition 4.7 (Struktur)
Sei S = (Funk,Pr¨ad) eine Signatur. Eine Struktur der SignaturS, auch S-Struktur genannt, ist ein PaarM= (D,I) bestehend aus
einer nicht-leeren MengeD, dem Datenbereich, und
einer InterpretationI der Funktions- und Pr¨adikatssymbole aus S.
Dabei bildetI jedes f/k ∈Funkauf einek-stellige Funktion I(f) :Dk →D (schreibe auchfM stattI(f)) und jedes p/k ∈Pr¨ad auf ein k-stelliges Pr¨adikat ab:
I(p) :Dk →B (schreibe auchpM stattI(p)).
Beachte:
Strukturen sind passend zu Signaturen gew¨ahlt.
Gleichheit ist ein logisches Symbol, nicht Teil der Signatur. Es wird als Gleichheit auf dem Datenbereich interpretiert.
Definition 4.8 (Belegung)
Eine (Variablen-)Belegung in M= (D,I) ist eine Abbildung ψ:V →D . Die Modifikationψ{x/d} vonψ ist die Belegung mit
ψ{x/d}(y) :=
(d, falls y=x ψ(y), sonst.
Die Menge aller Belegungen wird mitDV bezeichnet.
Definition 4.9 (Semantik von Termen und Formeln)
Sei S eine Signatur,M= (D,I) eine S-Struktur undψ eine Belegung.
Dann ist die Semantik von Termen t ∈Term(S) und Formeln A∈FO(S) durch dieBewertung BψM:Term(S)∪FO(S)→D∪Bwie folgt definiert:
BMψ (x) = ψ(x)
BψM(f(t1, . . . ,tk)) = I(f)(BMψ (t1), . . . ,BMψ (tk)) BψM(t1=t2) = (BψM(t1) =BψM(t2) ) BMψ (p(t1, . . . ,tk)) = I(p)(BψM(t1), . . . ,BψM(tk))
BψM(¬A) = 1− BMψ (A)
BMψ (A∨B) = max(BMψ (A),BMψ (B))
. . . f¨ur die anderen aussagenlogischen Operatoren entsprechend BψM(∃x.A) = 1, gdw. es gibtd ∈D mit Bψ{x/d}M (A) = 1 BψM(∀x.A) = 1, gdw. f¨ur alled ∈D gilt Bψ{x/d}M (A) = 1
In der Definition der Semantik von Termen und Formeln ist BMψ (t) der Datenwert vont in Munter Belegungψ und BMψ (A) der Wahrheitswert von A in Munter Belegungψ.
Lemma 4.10 (Koinzidenzlemma)
Sei A∈FO(S), M= (D,I) und ψ, ϕ∈DV.
Falls ψ(x) =ϕ(x) f¨ur alle x ∈FV(A), dann gilt: BψM(A) =BMϕ (A)
Insbesondere ist die SemantikBψM(A)abgeschlossener FormelnA∈FO(S) unabh¨angig von der Belegung ψ∈DV:
entweder istA unterallen Belegungen wahr oder unterkeiner.
Definition 4.11 (Erf¨ullbarkeit, Tautologie)
SeienS eine Struktur, A∈FO(S), Σ⊆FO(S),M= (D,I) undψ∈DV. Agilt inMunterψoderMund ψerf¨ullenA, in Zeichen M, ψ|=A, falls BψM(A) = 1.
Σ gilt in Munterψoder Mund ψ erf¨ullen Σ, in Zeichen M, ψ|= Σ, falls f¨ur alleA∈Σ gilt BψM(A) = 1.
A gilt inModerMist ein Modell f¨urA, in Zeichen M |=A, falls M, ϕ|=A f¨ur alle Belegungen ϕgilt.
Σ gilt in ModerMist ein Modell f¨ur Σ, in Zeichen M |= Σ, falls M, ϕ|= Σ f¨ur alle Belegungenϕgilt.
A ist eineTautologieoder allgemeing¨ultig, in Zeichen |=A, falls f¨ur alle S-Strukturen Mgilt: M |=A.
A isterf¨ullbar, falls es eineS-Struktur Mund eine Belegungψ∈DV gibt mitM, ψ|=A.
Σ ist erf¨ullbar, falls es Mund ψ gibt mitM, ψ |= Σ.
Allgemeing¨ultigkeit und Unerf¨ullbarkeit
Lemma 4.12
Formel A∈FO(S) ist allgemeing¨ultig gdw.¬A unerf¨ullbar ist.
Logische Folgerung und ¨ Aquivalenz
Definition 4.13 (Logische Folgerung und ¨Aquivalenz) Seien A,B ∈FO(S) und Σ,Γ⊆FO(S);
A istlogische Folgerung von Σ, in Zeichen Σ|=A, wenn jede S-Struktur Mund Belegungψ, die alle Formeln in Σ erf¨ullen, auch Aerf¨ullen.
Folg(Σ) :={A∈FO(S) | Σ|=A}bezeichnet die Menge der Folgerungen aus Σ.
A undB heißen logisch ¨aquivalent, in Zeichen A|==|B, fallsA|=B und B |=Agelten.
Σ und Γ heißen logisch ¨aquivalent, in ZeichenΣ|==|Γ, falls Σ|=Af¨ur alleA∈Γ und Γ|=B f¨ur alleB ∈Σ.
Lemma 4.14 (Logische ¨Aquivalenzen)
Seien A,B ∈FO(S). Dann gilt:
¬∀x.A |==| ∃x.¬A ¬∃x.A |==| ∀x.¬A (8) (∀x.A)∧(∀x.B) |==| ∀x.(A∧B) (∃x.A)∨(∃x.B) |==| ∃x.(A∨B) (9)
∀x.∀y.A |==| ∀y.∀x.A ∃x.∃y.A |==| ∃y.∃x.A (10) Falls außerdem x ∈/ FV(B), gilt
Qx.A op B |==|Qx.(A op B)mit Q ∈ {∀,∃} und op∈ {∧,∨}. (11)
Bemerkung: ¨Aquivalenzen (8), (9) und (11) ziehenQuantoren nach außen.
Bei der Verwendung logischer ¨Aquivalenzen ist Vorsicht geboten:
(∀x.A)∨(∀x.B) 6|==| ∀x.(A∨B) (∃x.A)∧(∃x.B) 6|==| ∃x.(A∧B)
Lemma 4.15
Logische ¨Aquivalenz ist eineKongruenz: ersetzt man in einer Formel A∈FO(S) eine Teilformel B durch C mit C |==|B, dann erh¨alt man A′ mit A′|==|A.
Bemerkung 4.16
(a) Σ|=A gdw. Σ∪ {¬A}nicht erf¨ullbar.
(b) ∅ |=A gdw. |=A, also A ist allgemeing¨ultig.
(c) Σnicht erf¨ullbar gdw. Σ|=A f¨ur alle A∈FO(S).
(d) FallsΓ⊆Σund Γ|=A, dannΣ|=A.
(e) FallsΓ|==|Σ, dann istΓerf¨ullbar gdw. Σerf¨ullbar ist.
(f) FallsΓ|==|Σ, dann Folg(Γ) =Folg(Σ).
(g) A|==|B gdw. A|=B und B |=A gdw. |=A↔B gdw.
BMψ (A) =BψM(B) f¨ur alleM,ψ.
(h) Falls A|==|B, dann Σ|=A gdw.Σ|=B.
Beispiele
Beispiel 4.17 i) ∀x.A|=A
(Spezialfall von (∀x.A)→A{x/t} allgemeing¨ultig, s.u.) ii) Im Allgemeinen gilt nicht A|=∀y.Amity ∈FV(A).
Sei A≡p(y) und M= ({0,1},I) mit I(p)(a) = 1 gdw.a= 0.
W¨ahle ψ(y) = 0, dann BψM(A) = 1.
AberBψM(∀y.A) = 0 mitψ{y/1}.
iii) |=∃x.(p(x)→ ∀x.p(x))
Sei M= (D,I). Es giltBMψ (∃x.(p(x)→ ∀x.p(x))) = 1, da einer der beiden folgenden F¨alle gilt:
es gibtd ∈D mitI(p)(d) = 0 oder f¨ur alled ∈D giltI(p)(d) = 1.
iv) ∀x.(A→B)|=∀x.A→ ∀x.B
Satz 4.18 (Wichtige semantische Eigenschaften/S¨atze) Seien Γ⊆FO(S) und A,B ∈FO(S).
Deduktionstheorem Γ,A|=B gdw. Γ|=A→B
Modus-Ponens-Regel Γ|=A undΓ|=A→B, dann Γ|=B Kontrapositionsregel Γ,A|=¬B gdw. Γ,B |=¬A Generalisierungstheorem
Kommt x ∈V in keiner Formel von Γfrei vor, dann Γ|=A gdw. Γ|=∀x.A
Insbesondere: A|=∀x.A bzw.|=A→ ∀x.A,
falls x nicht frei in A vorkommt.
Beispiel 4.19 (Anwendung der S¨atze) a) |=∃x.∀y.A→ ∀y.∃x.A
gdw. ∃x.∀y.A|=∀y.∃x.A Deduktionstheorem gdw. ∃x.∀y.A|=∃x.A Generalisierungstheorem gdw. ¬∀x.¬∀y.A|=¬∀x.¬A Lemma 4.14
gdw. ∀x.¬A|=∀x.¬∀y.A Kontrapositionsregel gdw. ∀x.¬A|=¬∀y.A Generalisierungstheorem gdw. {∀x.¬A,∀y.A} nicht erf¨ullbar ist b) Variante von Kongruenz
A′ entstehe ausAdurch erlaubte (beachte Quantoren) Ersetzung einiger Vorkommen vonx durch y. Dann gilt
|=∀x.∀y.(x=y →(A↔A′))
Beispiel:∀x.∀y.(x =y →(f(x,y) =g(x)↔f(y,y) =g(x))
Substitution
Substitutionen ersetzen Variablen durch Terme.
Sie sind ein syntaktischeGegenst¨uck zum semantischen Konzept der Modifikation von Belegungen.
Definition 4.20 (Substitution)
Eine Substitution der SignaturS ist eine Abbildung θ:V →Term(S).
Im Folgenden gehen wir davon, dass nur f¨ur endlich viele x∈V gilt θ(x)6=x. Dann lassen sich Substitutionen direkt angeben als θ={x1/t1, . . . ,xn/tn}
und wir definieren:
Dom(θ) ={x1. . . ,xn} Ran(θ) ={t1, . . . ,tn}
Substitution (Fort.)
Substitutionen lassen sich auf Terme und Formeln anwenden.
Definition 4.21 (Anwendung von Substitutionen)
Die Anwendung vonθ auf t∈Term(S)liefert einen neuen Term tθ∈Term(S), der induktiv wie folgt definiert ist:
xθ:=θ(x) f(t1, . . . ,tn)θ:=f(t1θ, . . . ,tnθ).
Die Anwendung vonθ auf Formeln A∈FO(S) liefert eine neue Formel Aθ∈FO(S), die induktive wie folgt definiert ist:
(t1 =t2)θ:=t1θ=t2θ (¬A)θ:=¬(Aθ) p(t1, . . . ,tn)θ:=p(t1θ, . . . ,tnθ) (AopB)θ:=Aθ opBθ
(Qx.A)θ:=Qy.(A{x/y}θ), wobei y ∈/V(A)∪Dom(θ)∪V(Ran(θ)).
Substitution (Fort.)
Der Zusammenhang zwischen Substitutionen und der Modifikation von Belegungen ist wie folgt:
Lemma 4.22 (Substitutionslemma)
BψM(A{x/t}) =BϕM(A) mitϕ:=ψ{x/BψM(t)}.
Der Beweis wird mittels Induktion ¨uber den Aufbau von Termen und Formeln gef¨uhrt.
Korollar 4.23
i) Ist A∈FO(S) allgemeing¨ultig, dann auch A{x/t}.
ii) Die Formel (∀x.A)→A{x/t} ist allgemeing¨ultig.
Substitution (Fort.)
Ahnlich zum Substitutionslemma erh¨alt man:¨
Lemma 4.24 (Gebundene Umbenennung erh¨alt logische ¨Aquivalenz) Qx.A|==|Qy.(A{x/y}), wenn y 6∈FV(A).
Bemerkung: Gebundene Umbenennung kann die Vorkommen von gebundenen Variablen in einer Formel eindeutigmachen.
Normalformen
Erzeuge Formeln von einfacherer Gestalt, f¨ur die sich Aussagen eher zeigen und effizientere Algorithmen entwerfen lassen.
Pr¨anexnormalform: Alle Quantoren außen (PNF ist logisch ¨aquivalent).
Skolemform: Pr¨anexnormalform und außerdem nur Allquantoren (SNF ist erf¨ullbarkeits¨aquivalent).
Lemma 4.25 (Existentieller und universeller Abschluss) Betrachte A∈FO(S) mit FV(A) ={x1, . . . ,xn}. Dann gilt
A ist allgemeing¨ultig gdw. ∀x1. . .∀xn.A ist allgemeing¨ultig A ist erf¨ullbar gdw. ∃x1. . .∃xn.A ist erf¨ullbar.
Formel ∀x1. . .∀xn.A ist der universelle Abschlussvon A.
Formel ∃x1. . .∃xn.A ist der existentielle Abschlussvon A.
Normalformen (Fort.)
Eine Formel A∈FO(S) heißt bereinigt, falls
i) keine Variable frei und gebunden vorkommt und ii) jede Variable h¨ochstens einmal gebunden wird.
Durch wiederholte Anwendung gebundener Umbenennung in Lemma 4.24 kann man jede Formel bereinigen.
Lemma 4.26
Zu jeder Formel A∈FO(S)gibt es eine bereinigteFormel B∈FO(S) mit A|==|B.
Normalformen (Fort.)
N¨achster Schritt: Ziehe Quantoren nach außenunter Ausnutzung von Lemma 4.14.
Definition 4.27
Eine Formel der GestaltA≡Q1y1. . .Qnyn.B mitQ1, . . . ,Qn∈ {∀,∃} ist in Pr¨anexnormalform, wenn B quantorenfrei ist.
A∈FO(S) ist in BPF, falls Abereinigt und in Pr¨anexnormalform ist.
Satz 4.28
Zu jeder Formel A∈FO(S)gibt es eine Formel B ∈FO(S) inBPF mit A|==|B.
Hinter dem Beweis verbirgt sich ein rekursiver Algorithmus.
Es dient dem Verst¨andnis, dieses Verfahren selbst herauszuarbeiten.
Normalformen (Fort.)
Weiterer Schritt: Eliminiere Existenzquantoren.
Trick: Ersetze bei Sequenzen von Quantoren der Form f¨ur alley1. . .yn gibt es einz die Variable z durch einen “neuen” Termf(y1, . . . ,yn):
∀y1. . .∀yn∃z.A geht ¨uber nach ∀y1. . .∀yn.(A{z/f(y1, . . . ,yn)}). Dabei ist f/n ein frisches Funktionssymbol aus der Menge Sko der
Skolemsymbole. Frisch heißt, Skoist disjunkt vonS und f/n kommt nicht in A vor.
Die Einf¨uhrung von Skolemfunktionen f¨ur existenzquantifizierte Variablen wird Skolemisierung genannt.
Skolemisierung erh¨alt nur Erf¨ullbarkeits¨aquivalenz, logische ¨Aquivalenz muss aufgegeben werden.
Skolemisierung geht zur¨uck auf Thoralf Albert Skolem (1887 – 1963).
Normalformen (Fort.)
Definition 4.29 (Skolemformel)
F¨ur eine Formel A∈FO(S) in BPF lassen sich Skolemformeln
B ∈FO(S⊎Sko) (wieder in BPF) durch folgendes Verfahren konstruieren:
while Ahat Existenzquantoren do Sei A≡ ∀y1. . .∀yn∃z.B mitB in BPF
Sei f/n∈Sko ein Skolemsymbol, das nicht inB vorkommt SetzeA≡ ∀y1. . .∀yn(B{z/f(y1, . . . ,yn)})
end while
Beachte: Die Skolemisierung arbeitet von außen nach innen.
Satz 4.30 (Skolem)
F¨ur jede Formel A∈FO(S) in BPF und zugeh¨origer Skolemformel B ∈FO(S⊎Sko) gilt:
A ist erf¨ullbar gdw. B ist erf¨ullbar.
Kompaktheitssatz der Pr¨adikatenlogik erster Stufe
Satz 4.31 (Kompaktheitssatz)
Eine Formelmenge Σ⊆FO(S) ist erf¨ullbar gdw. jede endliche Teilmenge von Σerf¨ullbar ist.
Beweis ben¨otigt Ergebnisse, die wir im Abschnitt “Algorithmische Verfahren f¨ur die Pr¨adikatenlogik” erarbeiten, und wird deshalb dort pr¨asentiert.