Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und Semantik Terme Ab sofort wird Signatur τ als festgelegt angenommen. Sei V = {x, y , . . .} Vorrat an Variablen. Def.: Terme sind induktiv definiert: • Jede Variable ist ein Term. • Sind t1 , . . . , tn Terme und f ein n-st. Funktionssymbol, so ist auch f (t1 , . . . , tn ) Term. Beachte: Mit n = 0 sind auch Konstanten Terme. Bsp.: +(∗(x, +(1, y )), 0) benutze auch Infix-Notation (x ∗ (1 + y )) + 0 107 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und Semantik Formeln Def.: Formeln der Prädikatenlogik 1. Stufe ohne Gleichheit (FO) sind induktiv aufgebaut: • Sind t1 , . . . , tn Terme, so ist R(t1 , . . . , tn ) Formel, falls st(R) = n. • Sind ϕ, ψ Formeln, so auch ¬ϕ, ϕ ∨ ψ, ϕ ∧ ψ, ϕ → ψ, • Ist ϕ Formel und x Variable, so sind auch ∃x ϕ und ∀x ϕ Formeln. verwende ϕ ↔ ψ als Abkürzung für (ϕ → ψ) ∧ (ψ → ϕ) Bem.: “erststufig” bedeutet: Quantifizierung nur über Elemente des Universums, nicht jedoch über Teilmengen, Funktionen, Relationen, etc. 108 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und Semantik Präzedenzen Präzedenzregeln, um Mehrdeutigkeiten zu vermeiden; in absteigender Reihenfolge: ¬, ∃, ∀, ∧, ∨, → Bsp.: wie ist also ∃x ∀y R(f (x, y )) → ∀z z ≤ f (x, y ) zu verstehen? Klammern, um Präzedenzen zu umgehen, z.B. (ϕ ∨ ψ) ∧ χ Infix-Notation für Relationssymbole für intuitivere Syntax, z.B. z ≤ f (x, 2) statt ≤ (z, f (x, 2)) Punktnotation für “öffnende Klammer hier, schließende so weit rechts wie möglich”, z.B. ∃x.∀y .R(f (x, y )) → ∀z.z ≤ f (x, y ) 109 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und Semantik Interpretationen für Terme Aussagenlogik: Interpretation = Belegung der Aussagenvariablen. Hier offensichtlich nicht ausreichend, um einer Formel einen Wahrheitswert zuzuordnen. Def.: Eine Interpretation einer FO-Formel über der Signatur τ ist ein I = (A, ϑ), wobei A τ -Struktur mit Universum A und ϑ : V → A ist. Dies induziert gleich auch eine Interpretation aller Terme. [[x]]A ϑ := ϑ(x) A A A [[f (t1 , . . . , tn )]]A ϑ := f ([[t1 ]]ϑ , . . . , [[tn ]]ϑ ) 110 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und Semantik Terme interpretieren Bsp.: t := (x · (1 + y )) + 0 über Signatur τ = (+, ·, 0, 1). 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? 111 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und Semantik Interpretationen für Formeln Def.: Sei I = (A, ϑ), A Universum von A, c ∈ A. ϑ[x �→ c] bezeichne Update von ϑ an der Stelle x auf c. I ist Modell von ϕ, wenn I |= ϕ gilt, wobei A, ϑ |= R(t1 , . . . , tn ) gdw. A, ϑ |= ϕ ∧ ψ gdw. A, ϑ |= ϕ → ψ gdw. A, ϑ |= ∀x ϕ gdw. A, ϑ |= ¬ϕ gdw. A, ϑ |= ϕ ∨ ψ gdw. A, ϑ |= ∃x ϕ gdw. A A ([[t1 ]]A , . . . , [[t ]] ) ∈ R n ϑ ϑ A, ϑ �|= ϕ A, ϑ |= ϕ und A, ϑ |= ψ A, ϑ |= ϕ oder A, ϑ |= ψ wenn A, ϑ �|= ϕ dann A, ϑ |= ψ es gibt c ∈ A mit A, ϑ[x �→ c] |= ϕ für alle c ∈ A gilt A, ϑ[x �→ c] |= ϕ 112 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und Semantik Freie Variablen Def.: frei(ϕ) bezeichnet die in ϕ frei, d.h. nicht durch einen Quantor ∃ oder ∀ gebundenen, vorkommenden Variablen. Bsp.: frei(ϕ) = {x, y }, wobei ϕ = (∀y R(x, f (c, y ))) ∨ ∃x.¬R(y , f (d, x)) Def.: Ist frei(ϕ) = ∅, so heißt ϕ auch Satz. Bsp.: (∃x ∀y R(x, y )) → ∀y ∃x R(x, y ) ist Satz Wir schreiben auch ϕ(x1 , . . . , xn ) um auszudrücken, dass frei(ϕ) ⊆ {x1 , . . . , xn }. 113 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und Semantik Freie und gebundene Variablen betrachte • Struktur A = ({0, 1}, P A ) mit P A = {1} • Variablenbelegung ϑ = [x �→ 0, y �→ 1] gilt jeweils A, ϑ |= . . . • P(x) ∧ ∃x.¬P(x)? • P(x) ∧ ∃y .¬P(y )? • P(y ) ∧ ∃x.¬P(x)? • P(y ) ∧ ∃y .¬P(y )? Fazit: freie Variablen dürfen nicht einfach umbenannt werden, gebundene schon 114 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und Semantik Substitutionen Def.: ϕ[t/x] bezeichnet simultanes Ersetzen aller freien Vorkommen der Variable x in ϕ durch den Term t, wobei quantifizierte Variablen, die auch in t vorkommen, in ϕ eindeutig umbenannt werden. Bsp.: was ist jeweils • P(f (x))[g (x, f (x))/x]? � � ∃x P(f (x)) [g (x, f (x))/x]? � � • ∀y .(∃x R(x, z)) ∧ Q(x, y ) [f (y )/x] • 115 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und 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 (ϕ ∨ ψ) • ... 116 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und Semantik Beispiel: gerichtete Graphen zur Erinnerung: 2-stellige Relationssymbole sind Kantenrelationen in gerichteten Graphen; hier jetzt τ = (E ), E 2-stellig 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 ) • ∃x ∀y E (y , x) ∧ ∃y ∀x ¬E (y , x) • ϕ1 → ∃x ϕ2 117 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und Semantik Beispiel: Signatur der Arithmetik sei τ = (<, +, ·, 0, 1) wie zuvor definiert Sind die folgenden Formeln jeweils (un)erfüllbar / allgemeingültig? Sind sie jeweils mit N = (N, <N , +N , ·N , 0N , 1N ) 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 118 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und Semantik Theorie und Modellklasse Strukturklassen vs. Formel(menge)n Def.: sei K Klasse von τ -Strukturen, Φ Menge von Sätzen über Signatur τ • (Theorie) Th(K) := {ϕ | ϕ ist FO-Satz über τ und A |= ϕ für alle A ∈ K} • (Modellklasse) Mod(Φ) := {A | A ist τ -Struktur und A |= ϕ für alle ϕ ∈ Φ}. Th(K) ist logische Repräsentation von K wie verhalten sich jeweils zueinander • Th(Mod(Φ)) und Φ? • Mod(Th(K)) und K? 119 Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Prädikatenlogik ohne Gleichheit – Syntax und Semantik Beispiele was ist jeweils Mod(Φi ), wobei • Φ1 := {∀x ∀y .(E (x, y ) ↔ E (y , x)) ∧ ¬E (x, x)} ungerichtete Graphen • Φ2 := {∀x ∀y .E (x, y ) ∨ E (y , x)} Turniergraphen • Φ3 := {∀x E (x, x), ∀x ∀y ∀z.E (x, y ) ∧ E (y , z) → E (x, z)} Prä-Ordnungen • Φ4 := Φ2 ∪ Φ3 totale Prä-Ordnungen was ist Th({N, Z, Q, R}), jeweils mit üblicher Interpretation über Signatur (≤, +, ·, 0, 1)? 120