Logische Strukturen

Werbung
Kapitel 2 Prädikatenlogik
Logische Strukturen
7. Vorlesung
• Was ist das?
• Logik und Strukturen
• Natürliches Schließen
Martin Dietzfelbinger
• Normalformen
18. Mai 2010
• Herbrand-Theorie
• Prädikatenlogische Resolution
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
1
Pr(x): x ist Professor.
2.1 Beispiele
Konkrete Situation
WM(x): x ist wissenschaftliche(r) Mitarbeiter(in).
Grundmenge: Die Studierenden und die Lehrenden in Veranstaltungen zur Theoretischen Informatik im Sommersemester
2010.
Relation:
Teilmengen: Studierende, wissenschaftliche Mitarbeiterinnen,
Professoren.
f (x): Studierender/Mitarbeiter/Professor aus dem genannten
Kreis, mit dem x am besten über Informatik diskutieren kann.
S(x): x ist Studierender.
J(x, y): x ist jünger als y.
Funktion:
LS(x): x ist in der Veranstaltung Logische Strukturen“ an”
wesend.
AuD(x): x ist in der Veranstaltung Algorithmen und Daten”
strukturen“ anwesend.
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
2
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
3
Aussagen, die man in der Aussagenlogik nicht formulieren
kann (können stimmen oder nicht):
Aus der Analysis: Konvergenz
Für alle x gilt: ¬(S(x) ∧ WM(x)).
Dort werden Grundbereiche N und R betrachtet, wobei man
N ⊆ R annimmt.
Für alle x gilt: (S(x) → ¬Pr(x)).
Eine Funktion f : N → R nennt man eine (unendliche) Folge.
Für alle x und y gilt: (S(x) ∧ Pr(y) → J(x, y)).
(f (0), f (1), f (2), . . .)
Es gibt ein x mit: (LS(x) ∧ AuD(x)).
Diese Folge heißt konvergent,
Es gibt ein x mit: ((¬LS(x) ∨ ¬AuD(x)) ∧ ¬WM(x)).
falls
Für alle x gilt: (S(x) → J(x, f (x))).
∃a ∈ R ∀ε > 0 ∃m ∈ N ∀n ≥ m : |f (n) − a| ≤ ε.
Abkürzung: ∀ (für alle), ∃ (es gibt).
Aussagenlogik genügt nicht, um solche Sachverhalte auszudrücken.
Klar: Nächstes Jahr kann man mit der gleichen Notation eine
andere Situation beschreiben.
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
4
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
5
Für N: (einstelliges) Relationszeichen N:
• Grundbereich: R.
N(x) soll heißen: x ∈ N.
• Teilmenge davon: N.
• ≤: zweistellige Relation auf R.
Für ≤: (zweistelliges) Relationszeichen LE:
• 0: ein festes Element von R, Konstante“.
”
• Funktion f , beliebig.
LE(x, y) soll heißen: x ≤ y.
• Absolutbetrag: Funktion R → R.
¬ LE(x, y) steht dann für x > y“.
”
• Allquantor ∀, Existenzquantor ∃.
• Logische Zeichen (hier noch versteckt, s.u.).
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
6
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
7
Die Null wird durch ein Zeichen 0 benannt.
Für | · |: (einstelliges) Funktionszeichen abs und zweistelliges
Funktionszeichen sub:
abs(x) soll heißen: |x|;
sub(x, y) soll heißen: x − y;
Dann:
Wir wollen in der Lage sein, über Sachverhalte in Strukturen
(reelle Zahlen, Gruppen, Präordnungen, . . . ) zu sprechen.
Dabei soll es Relationen“ geben dürfen, durch die Enthalten”
sein in einer Teilmenge oder Beziehungen zwischen Objekten
ausgedrückt werden können.
Beispiel: N(x), LE(x, y), S(x), J(x, y).
Einstellige Relationen: Teilmengen. Oft benutzt, um spezielle
Sorten auszusondern.
∃a ∀ε (¬ LE(ε, 0) → ∃ m
(N(m) ∧ ∀n (N(n) ∧ LE(m, n) → LE(abs(sub(f (n), a)), ε))))
Nullstellige Relationen? (Später.)
Weiter Funktionen“, durch die Objekte (oder Tupel von
”
Objekten) auf andere Objekte abgebildet werden.
Beispiel: f , abs, sub.
Nullstellige Funktionen (ohne Argument): Konstante. Beispiel:
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
8
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
9
Beispiel: Gruppen
0.
Zu einer Gruppe gehört
• eine Grundmenge G,
• ein neutrales Element e ∈ G,
• und eine Operation ◦ : G × G → G,
so dass eine Reihe von Gesetzen ( Axiome“) erfüllt sind:
”
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
10
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
11
Prä-Halbordnungen
Assoziativgesetz: ∀x∀y∀z : (x ◦ y) ◦ z = x ◦ (y ◦ z).
Eine Menge M zusammen mit einer zweistelligen Relation R
über M
(Formal: . . . ◦ (◦(x, y), z) = ◦(x, ◦(y, z)).)
heißt eine Prä-Halbordnung, wenn für alle x, y, z ∈ M gilt:
Neutrales Element: ∀x : x ◦ e = e ◦ x = x.
wenn x R y ∧ y R z gilt, dann auch x R z.
Inverses Element: ∀x∃y : x ◦ y = y ◦ x = e.
Axiome“, Grundaussagen, von denen man ausgeht.
”
Wenn eine Struktur (G, ◦, e) die Axiome erfüllt“, nennen wir
”
sie eine Gruppe“.
”
Beispiel: In (R, ·, 1) gilt nicht ∀x∃y : x ◦ y = y ◦ x = e.
Also ist dies keine Gruppe.
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
12
Beispiele für Modelle“:
”
FG Komplexitätstheorie und Effiziente Algorithmen
• Nach welchen
meln/Aussagen?
• (N, ≤), (Q, ≤), (R, ≤).
• (C, ), wobei x y gilt wenn |x| ≤ |y|.
• (Z, |), wobei x | y gilt, wenn es ein z ∈ Z mit xz = y gibt
( Teilbarkeitsrelation“).
”
Die Formel“ ∀x∀y∀z(x R y ∧ y R z → x R z) ist in all diesen
”
Modellen sinnvoll“, und gilt“ dort.
”
”
Ebenso sinnvoll ist die Formel ∀x∀y(x R y ∨ y R x). Sie gilt“
”
in den ersten vier Strukturen, nicht aber in (Z, |).
Regeln
bildet
LS – 18.05.2010
man
korrekte
13
For-
• Was ist ein Modell“, was ist eine Struktur“?
”
”
• Wann hat eine Aussage in einem Modell/einer Struktur eine
Bedeutung (ist dort sinnvoll“)?
”
• Wann gilt“ eine Aussage in einem Modell/einer Struktur?
”
• Gibt es Formeln, die in allen Modellen/Strukturen gelten?
• Kann man solche Formeln algorithmisch identifizieren? Gibt
es einen Beweiskalkül?
• ...
Prädikatenlogik“.
”
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
14
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
15
2.2 Syntax der Prädikatenlogik
Formeln der Prädikatenlogik sind aus folgenden Bausteinen
aufgebaut:
(a) (Individuen-)Variable (sprechen von Objekten): x1, x2, x3, . . ..
Wir schreiben oft x, y, z, u, . . . für Variable.
Jedes Funktionssymbol hat eine Stelligkeit, das ist die
Anzahl der Argumente, meist implizit mitgeteilt
( f6(x, y, z)“: dreistellig).
”
Wir schreiben oft f, g, h, . . . für Funktionssymbole.
LS – 18.05.2010
(c) Prädikat- oder Relationssymbole: P1, P2, P3, . . ..
Jedem Pi ist eine Stelligkeit zugeordnet:
P1(x, z), P4(x2) usw.
Wir schreiben oft P, Q, R, . . . für Relationssymbole.
(b) Funktionssymbole f1, f2, f3, . . .
FG Komplexitätstheorie und Effiziente Algorithmen
Es gibt auch nullstellige Funktionssymbole:
c [statt c()], Konstante“.
”
16
Nullstellige Prädikatsymbole: P = P (), keine Argumente.
(Spielen Rolle von Aussagevariablen).
(d) Quantoren ∀, ∃, logische Verknüpfungssymbole ∧, ∨, ¬, →,
Klammern.
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
17
Terme werden induktiv definiert.
Beispiel Gruppen: f [= ◦] zweistellig; e nullstellig.
Idee: Geschachtelte Funktionszeichen, Variablen.
Terme: f (x, y), f (f (x, y), z), f (x, f (y, z)), f (e, f (y, e)), . . . .
Beispiele: f (x, y), c (nullstellig), f (g(x, x, x), h(y, f (z, c))),
...
Hat mit Gruppen noch wenig zu tun: Bedeutungslose Texte.
Formal:
(i) Jede Variable x1, x2, . . . ist ein Term.
(ii) Wenn fi ein k-stelliges Funktionszeichen ist und t1, . . . , tk
Terme sind, dann ist auch fi(t1, . . . , tk ) ein Term.
Wenn fi nullstellig ist, schreibe fi anstelle von fi().
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
18
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
19
Definition der Primformeln ( atomic formulas“):
”
Wenn t1, . . . , tk Terme sind und Pi ein k-stelliges Relationszeichen ist, dann ist Pi(t1, . . . , tk ) eine Primformel.
Beispiel für Primformel: f einstellig, c nullstellig, R zweistellig.
Induktive Definition der (prädikatenlogischen) Formeln:
(i) Jede Primformel ist eine Formel.
(ii) Wenn F Formel ist, dann auch ¬F .
R(f (x1, x2), f (f (x3, x1), c)).
(iii) Wenn F und G Formeln sind, dann sind auch (F ∧ G),
(F ∨ G), (F → G) Formeln.
Wenn R ein nullstelliges Relationszeichen ist, dann ist R
(anstelle von R()) eine Primformel.
(iv) Wenn F Formel ist und x Variable ist, dann sind auch ∃x F
und ∀x F Formeln.
Bemerkung: Wir lassen F ↔ G hier weg, es gilt als Abkürzung für
(F → G) ∧ (G → F ).
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
20
Beispiele: (Für x, y, . . . kann man beliebige echte“ Variable
”
einsetzen.)
Prähalbordnung: ∀x ∀y (R(x, y) → ∃z(R(x, z) ∧ R(z, y))).
Gruppen: Kleines Problem: In Formeln gibt es kein Gleichheitszeichen.
Ausweg: Benutze Relationssymbol EQ, zweistellig, für Gleichheit.
∀x ∃y (EQ(f (x, y), e) ∧ EQ(f (y, x), e)).
FG Komplexitätstheorie und Effiziente Algorithmen
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
21
Nützliche Formalitäten:
Präzedenzen: ¬, ∀x, ∃x binden am stärksten.
Typisch also: ∀x (. . . )“ und ¬ ∀x ¬(. . . )“,
”
”
es sei denn, der Quantor bezieht sich nur auf eine Primformel.
∧ und ∨ binden stärker als →.
Beispiel: ¬∀x R(x, y) ∧ ∃z R(x, z) → P (x) entspricht
((¬(∀x R(x, y)) ∧ ∃z R(x, z)) → P (x, y, z))
Problem: x steht im Wirkungsbereich verschiedener Quantoren, und einmal gar nicht im Wirkungsbereich eines Quantors.
Verwirrend!
LS – 18.05.2010
22
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
23
Definition
Eine Teilformel einer Formel F ist eine Formel, die beim
induktiven Aufbau von F vorkommt.
Formal: (i) Eine Primformel F hat nur F als Teilformel.
(ii) Eine Formel F = ∀x G, F = ∃x G oder F = ¬G hat F
und die Teilformeln von G als Teilformeln.
(iii) Eine Formel F = (G ∧ H), F = (G ∨ H) oder
F = (G → H) hat F und die Teilformeln von G und H als
Teilformeln.
Definition
Eine Kopie einer Variablen x in F ist frei (man sagt: das
Vorkommen von x ist frei), wenn dieses x in F an einer Stelle
steht, die nicht zu einer Teilformel ∀x G oder ∃x G gehört.
Beispiel: (¬ ∀x (R(x, y) ∧ ∃z R(x, z) ) → P (x, y, z).
Die beiden ersten Vorkommen von x sind nicht frei
(rosa Teilformel) , das dritte ist frei.
Das erste Vorkommen von z ist nicht frei (grüne Teilformel) ,
das zweite ist frei. – Alle Vorkommen von y sind frei.
FV(F ) ist die Menge aller Variablen, die in F frei vorkommen.
Wenn FV(F ) = ∅, heißt F geschlossen.
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
24
FG Komplexitätstheorie und Effiziente Algorithmen
LS – 18.05.2010
25
Herunterladen