Formale Methoden 2 Gaetano Geck Lehrstuhl I – Logik in der Informatik WS 2014/2015 1 Aussagenlogik 2 Prädikatenlogik Einleitung Syntax Semantik Eigenschaften Logik / Prädikatenlogik Einleitung: Problem der Aussagenlogik Warum weitere Logiken? Aussagenlogik: Aussagen postulieren Eigenschaften bestimmter Entitäten. Nachteil: Eigenschaften und Entitäten sind syntaktisch nicht getrennt. Keine kombinierte Repräsentation von Zusammenhängen zwischen Eigenschaften über Entitätengrenzen hinweg. Beispiel 2.1 (Familienbande) Variablen: Marge Homer VBart : Homer ist Barts Vater, MBart : Marge ist Todds Mutter, Homer,Marge EBart : Homer und Marge sind Barts Eltern; Analog für Lisa, Maggie, . . . Es gilt also ϕVater ϕMutter = = Homer Homer Homer VBart ∧ VLisa ∧ VMaggie , Marge Marge Marge MBart ∧ MLisa ∧ MMaggie . Inhaltlich klar: Wenn Homer Vater von x und Marge Mutter von x ist, dann sind Homer und Marge Eltern von x, für jedes Kind x. Problem: Separate Repräsentation für jede Entität (jedes Individuum): ϕEltern FM2 (WS 2014/15, Geck) = ∧ ∧ Marge Homer,Marge Homer (VBart ∧ MBart )→EBart Marge Homer,Marge Homer (VLisa ∧ MLisa )→ELisa Marge Homer,Marge Homer (VMaggie ∧ MMaggie )→EMaggie . 137 Logik / Prädikatenlogik Einleitung: Ansatz der Prädikatenlogik Idee: Syntaktische Trennung von Entitäten und Eigenschaften. Entitäten: • Variablen x, y, z (unbestimmt) • Konstanten a, b, c (bestimmt) Eigenschaften: • Relationen/Prädikate P, Q, R (mit positiver Stelligkeit) • Funktionen f , g, h (mit positiver Stelligkeit) Beispiel 2.2 (Familienbande) Konstante aH für Individuum Homer (analog für Marge) Konstante cB für Individuum Bart (analog Lisa, Maggie) zweistellige Relation V für Vaterschaft zweistellige Relation M für Mutterschaft dreistellige Relation E für Elternschaft ψVater ψMutter = = V(aH , cB ) ∧ V(aH , cL ) ∧ V(aH , cM ), M(aM , cB ) ∧ M(aM , cL ) ∧ M(aM , cM ). Inhaltlich klar: Wenn Homer Vater von x und Marge Mutter von x ist, dann sind Homer und Marge Eltern von x, für jedes Kind x. Lösung: h i ψEltern = ∀x V(aH , x) ∧ M(aM , x) → E(aH , aM , x) FM2 (WS 2014/15, Geck) 138 Logik / Prädikatenlogik Syntax: Signaturen Unterschiede zur Aussagenlogik: Prädikatenlogische (Individuen-)Variablen, keine Aussagen(variablen): Menge PV mit Variablen x, y, z (auch mit Indizes, x1 , x2 , x3 , . . . ) Weitere Operatoren: Existenzquantor ∃ und Allquantor ∀ Relations-, Funktions- und Konstantensymbole Definition 2.3 Die Signatur σ(ϕ) einer Formel ϕ ist die Menge der in ihr auftretenden Relations-, Funktions- und Konstantensymbole. Jedem Relations- und jedem Funktionssymbol ist eine eindeutige Stelligkeit zugeordnet. Annahme: die jeweiligen Symbolmengen sind disjunkt. Konvention: Kleinbuchstaben • vom Alphabetsanfang: Konstantensymbole (a, b, c, . . . ), • aus der Alphabetsmitte: Funktionssymbole: (f , g, h, . . . ), • vom Alphabetsende: Variablen: (v, w, x, y, z); Großbuchstaben sind Relationssymbole Beispiel 2.4 h i Die Signatur σ ∀x V(aH , x) ∧ M(aM , x) → E(aH , aM , x) die jeweils zweistelligen Relationssymbole V, M , = {V, M, E, aH , aM } enthält das dreistellige Relationssymbol E und die Konstanten aH , aM . FM2 (WS 2014/15, Geck) 139 Logik / Prädikatenlogik Syntax: Terme Beobachtung: Variablen und Konstanten können mit Funktionssymbolen zu komplexen Konstrukten (Termen) kombiniert werden, wobei jeder Term ein Individuum repräsentiert. Beispiel: x, f (y, c), f f (c, a), g g g(y) Dabei muss die Stelligkeit der Symbole beachtet werden. Beispiel oben: Alle Vorkommen von f haben zwei Argumente, alle Vorkommen von g haben ein Argument. Definition 2.5 Die Menge PT(σ) der Terme über einer Signatur σ ist definiert als die kleinste Menge, die folgenden Eigenschaften genügt: für jede Variable x ∈ PV gilt x ∈ PT(σ) für jedes Konstantensymbol c ∈ σ gilt c ∈ PT(σ) für jedes k-stellige Funktionssymbol f ∈ σ und für alle Terme t1 , . . . , tk ∈ PT(σ) gilt f (t1 , . . . , tk ) ∈ PT(σ). Aufgabe Gegeben ist die Signatur σ = {a, b, c, f , g} mit Konstanten a, b, c, einem einstelligen Funktionssymbol f und einem zweistelligen Funktionssymbol g. Geben Sie (Gegen-)Beispiele für Terme aus PT(σ) an. FM2 (WS 2014/15, Geck) 140 Logik / Prädikatenlogik Syntax: Formeln Definition 2.6 (Syntax aussagenlogischer Formeln) Die Menge PL(σ) prädikatenlogischer Formeln über der Signatur σ ist die kleinste Menge, für die gilt für jedes k-stellige Relationssymbol R und Terme t1 , . . . , tk ∈ PT(σ) ist R(t1 , . . . , tk ) ∈ PL(σ) (Atom (zum Prädikat R)) für alle ϕ ∈ PL(σ) ist ¬ϕ ∈ PL(σ) (Negation von ϕ) für alle ϕ, ψ ∈ PL(σ) ist (ϕ ∧ ψ) ∈ PL(σ) (Konjunktion von ϕ und ψ) für alle ϕ, ψ ∈ PL(σ) ist (ϕ ∨ ψ) ∈ PL(σ) (Disjunktion von ϕ und ψ) für alle ϕ ∈ PL(σ) mit Variable x sind ∃x ϕ ∈ PL(σ) und ∀x ϕ ∈ PL(σ) Beispiele 2.7 Gegeben ist die Signatur σ = {E, S, W, a, b} mit Konstanten a, b, zweistelligem Relationssymbol E und einstelligen Relationssymbolen S, W . Formeln: E(x, y) (E(x, y) ∧ ¬S(y)) ∀y E(a, y)→S(y) ∀x ∀y E(x, y) ∧ W(x) →S(y) FM2 (WS 2014/15, Geck) 141 Logik / Prädikatenlogik Syntax: Variablen Beobachtung: Dieselbe Variable kann in einer Formel mehrfach vorkommen. Dies ist durchaus gewünscht, etwa in ∀x ∃y E(x, y) ∧ W(x) . Merkwürdig: ϕ1 = ∀x ∃y E(x, y) ∧ ∃x E(y, x) . ϕ2 = ∃y E(x, y) ∧ ∃x E(y, x) . • • • • Dieselbe Variable in verschiedenen Wirkungsbereichen, kann verschiedene Individuen bezeichnen! Nachteil: Schwierig zu verstehen Konvention: Variablen in verschiedenen Wirkungsbereichen haben verschiedene Namen. ψ1 = ∀x ∃y E(x, y) ∧ ∃z E(y, z) . ψ2 = ∃y E(x, y) ∧ ∃z E(y, z) . Definition 2.8 (unter obiger Konvention) Sei ϕ ∈ PL(σ) eine Formel. Eine Variable x heißt gebunden in ϕ, wenn sie in einer ψ vorkommt und ∃x ψ oder ∀x ψ eine Teilformel von ϕ ist. Eine Variable, die nicht gebunden ist, heißt frei. Eine Formel mit freien Variablen heißt offen, eine Formel ohne freie Variablen hingegen geschlossen. Beispiel 2.9 ψ1 besitzt keine freien Variablen, ist also geschlossen; ψ2 besitzt die freie Variable; x ohne Konvention: ϕ2 besitzt x als freie und als gebundene Variable FM2 (WS 2014/15, Geck) 142 Logik / Prädikatenlogik Semantik: Beispiel Beispiel 2.10 1 2 3 4 Eigenschaft: Der Knoten a ist weiß und jeder hweiße Knoten hat nur schwarze direkte Nachfolger. i Formel: W(a) ∧ ∀x W(x)→ ∀y E(x, y) → S(y) Ziel: Formel auswerten. Nötig: Festlegung der Individuenmenge und der Bedeutung von Symbolen sowie der freien Variablen. Auswertung für obigen Graphen: Wir wollen eine Eigenschaft über den Knoten des Graphen formulieren, deshalb setzen wir {1, 2, 3, 4} als Menge der Individuen voraus. Knoten â = 4 Weiße Knoten Ŵ = {1, 4} Schwarze Knoten Ŝ = {2, 3} Kantenrelation Ê = {(1, 2), (1, 3), (3, 4), (4, 2)} FM2 (WS 2014/15, Geck) 143 Logik / Prädikatenlogik Semantik: Strukturen Die Auswertung einer Formel nennt man Interpretation, sie geschieht unter Aussagenlogik: einer Variablenbelegung α : AV*{0, 1}. Prädikatenlogik: einer Struktur, die • die Menge der Individuen sowie • die Bedeutung der Relations-, Funktions- und Konstantensymbole festlegt, sowie einer Belegung β : PV*U der freien Variablen. Definition 2.11 (Struktur, Belegung) Eine Struktur zu einer Signatur σ = {R1 , . . . , Rk } ∪ {f1 , . . . , f` } ∪ {c1 , . . . , cm } ist ein Tupel S = (U, R̂1 , . . . , R̂k , f̂1 , . . . , f̂` , ĉ1 , . . . , ĉm ) mit einem nichtleeren Universum U (auch Grundmenge) Relationen R̂1 , . . . , R̂k (wobei R̂i ⊆ U r , wenn das Relationssymbol Ri die Stelligkeit r hat) Funktionen f̂1 , . . . , f̂` (wobei f̂j : U r → U , wenn das Funktionssymbol fj die Stelligkeit r hat) Konstanten ĉ1 , . . . , ĉm ∈ U . Eine Belegung über einer Struktur S mit Universum U ist eine partielle Abbildung β : PV*U . Sie heißt passend zu einer Formel ϕ ∈ PL(σ), wenn sie für jede freie Variable x in ϕ definiert ist, x ∈ D(β). FM2 (WS 2014/15, Geck) 144 Logik / Prädikatenlogik Semantik: Auswertung Definition 2.12 Sei I = (S, β) eine Interpretation für ϕ ∈ PL(σ), wobei S = (U, R̂1 , . . . , R̂k , f̂1 , . . . , f̂` , ĉ1 , . . . , ĉm ) eine Struktur zur Signatur σ und β eine über S definierte passende Belegung für ϕ ist. Der Wert [[t]]I eines Terms t von ϕ ist induktiv definiert: [[x]]I = β(x) für jede Variable x ∈ PV [[ci ]]I = cˆi für jede Konstantensymbole ci in S [[fi (t1 , . . . , tp )]]I = f̂i ([[t1 ]]I , . . . , [[tp ]]I ) für Funktionssymbole fi in S Aufgabe Werten Sie die Formel W(a) unter der in Beispiel 2.10 angegebenen Interpretation aus. FM2 (WS 2014/15, Geck) 145 Logik / Prädikatenlogik Semantik: Auswertung (Fortsetzung) Definition 2.13 Sei I = (S, β) eine Interpretation für ϕ ∈ PL(σ), wobei S = (U, R̂1 , . . . , R̂k , f̂1 , . . . , f̂` , ĉ1 , . . . , ĉm ) eine Struktur zur Signatur σ und β eine über S definierte passende Belegung für ϕ ist. Der Wahrheitswert [[ϕ]]I ist induktiv definiert: [[Ri (t1 , . . . , tp )]]I = 1, wenn ([[t1 ]]I , . . . , [[tp ]]I ) ∈ R̂i [[Ri (t1 , . . . , tp )]]I = 0, wenn ([[t1 ]]I , . . . , [[tp ]]I ) < R̂i Boole’sche Konnektoren: ( 0 1 ( • [[(ϕ ∧ ψ)]]I = ( • [[(ϕ ∨ ψ)]]I = • [[¬ϕ]]I = falls [[ϕ]]I = 1 falls [[ϕ]]I = 0 0 falls [[ϕ]]I 1 falls [[ϕ]]I 1 falls [[ϕ]]I 0 falls [[ϕ]]I = 0 oder [[ψ]]I = 0 = 1 = [[ψ]]I . = 1 oder [[ψ]]I = 1 = 0 = [[ψ]]I . Quantoren: • [[∃xϕ]]I = 1 genau dann, wenn ein u ∈ U existiert, sodass [[ϕ]](S,β[x7→u]) = 1 gilt. • [[∀xϕ]]I = 1 genau dann, wenn für alle u ∈ U auch [[ϕ]](S,β[x7→u]) = 1 gilt. Bemerkung: β[x 7→ u] bezeichnet die Erweiterung der Abbildung β mit D(β0 ) = D(β) ∪ {x}, β0 (x) = u und β0 (y) = β(y) für alle anderen Variablen y ∈ D(β). FM2 (WS 2014/15, Geck) 146 Logik / Prädikatenlogik Eigenschaften: Erfüllbarkeit Analog zur Aussagenlogik sind die folgenden Begriffe definiert. Definition 2.14 Eine (passende) Interpretation I heißt erfüllend für oder Modell von ϕ, wenn [[ϕ]]I = 1 gilt. Eine Formel ϕ heißt erfüllbar, wenn es eine zu ihr passende erfüllende Interpretation gibt, und unerfüllbar andererseits. Eine Formel ϕ heißt allgemeingültig oder Tautologie, wenn jede zu ihr passende Interpretation erfüllend ist. Beispiel 2.15 ϕ = ∃x A(x) ∨ ¬∃x A(x) ist allgemeingültig ψ = ∃x A(x) ∧ ¬∃x A(x) ist unerfüllbar χ = ∃x A(x) ∧ ∃x ¬A(x) ist erfüllbar, aber nicht allgemeingültig. Aufgabe Geben Sie eine für χ eine erfüllende Interpretation und eine nicht erfüllende Interpretation an. FM2 (WS 2014/15, Geck) 147 Logik / Prädikatenlogik Eigenschaften: Äquivalenz, Folgerung Ebenfalls analog zur Aussagenlogik . . . Definition 2.16 Formeln ϕ und ψ heißen äquivalent, ϕ ≡ ψ, wenn für jede Interpretation I , die zu ϕ passt und die zu ψ passt, die Gleichung [[ϕ]]I = [[ψ]]I erfüllt ist. Eine Formelmenge Φ = {ϕ1 , . . . , ϕn } impliziert eine Formel ψ, Φ |= ψ, wenn jede Interpretation, die zu ϕ1 , . . . , ϕn , ψ passt und für ϕ1 , . . . , ϕn erfüllend ist, auch für ψ erfüllend ist. Beispiel 2.17 ∀x S(x) ∧ J(x) ≡ ∀x S(x) ∧ ∀x J(x) ∀x M(x) ∨ W(x) . ∀x M(x) ∨ ∀x W(x) Aufgabe Beweisen Sie ∀x M(x) ∨ W(x) . ∀x M(x) ∨ ∀x W(x) . FM2 (WS 2014/15, Geck) 148 Logik / Prädikatenlogik Eigenschaften: Äquivalenz Es gelten in der Prädikatenlogik auch die Äquivalenzgesetze der Aussagenlogik (Sätze 1.18 und 1.19). Außerdem: Satz 2.18 Seien ϕ, ψ prädikatenlogische Formeln. Dann gilt Dualität: • ¬∀x ϕ ≡ ∃x ¬ϕ • ¬∃x ϕ ≡ ∀x ¬ϕ „Quantoren-Distributivität“: • ∀x (ϕ ∧ ψ) ≡ (∀x ϕ) ∧ (∀x ψ) • ∃x (ϕ ∨ ψ) ≡ (∃x ϕ) ∨ (∃x ψ) „Quantoren-Kommutativität“: • ∀x∀y ϕ ≡ ∀y∀x ϕ • ∃x∃y ϕ ≡ ∃y∃x ϕ Aufgabe Beweisen Sie ∀x∃y E(x, y) . ∃y∀x E(x, y). FM2 (WS 2014/15, Geck) 149