theoretische informatik: logik - uni-kassel.de · theoretische informatik: logik, m. lange, fb16,...
Post on 06-Sep-2019
5 Views
Preview:
TRANSCRIPT
Theoretische Informatik: LogikVorlesung im Wintersemester 2010/11
Martin Lange, Bahareh Badban, Norbert Hundeshagen,Marcel Vollweiler, Kadir Aytemur, Stephan Opfer
FG Formale Methoden und Verifikation (Arbeitstitel)FB Elektrotechnik/Informatik
Universitat Kassel
8. Februar 2011
Organisatorisches
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3
Inhalt
1 Motivation und Geschichte
Woher kommt die Logik, wofur ist sie gut und wozu braucht man
sie in der Informatik?
2 Aussagenlogik
3 Pradikatenlogik erster Stufe
4 Logikprogrammierung
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 4
Termine
Vorlesung 3std., montags 9:00–9:45 (WA 0425) und 14:15–15:45(WA 0446)
4 Ubungsgruppen, jeweils 1std.
G1 Dienstag 10–11, WA -1319
G2 Dienstag 15–16, WA-Neubau -1607
G3 Mittwoch, 12–13, WA -1319
G4 Donnerstag, 10–11, WA 1114
Angebot: 1 Ubungsgruppe in Englisch
Homepage der Vorlesung:
http://cms.uni-kassel.de/unicms/index.php?id=32756
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 5
Literatur
• Vorlesungsfolien
• Skripten:• Vorlesung “Logik fur Informatiker”, LMU Munchen, SS 2008,
Prof. Hofmann
• Vorlesung “Mathematische Logik”, RWTH Aachen, SS 2008,Prof. Gradel
• Lehrbucher:• Uwe Schoning, Logik fur Informatiker, Spektrum Verlag
• Heinz-Dieter Ebbinghaus, Jorg Flum, Wolfgang Thomas,Einfuhrung in die mathematische Logik, Spektrum Verlag
• andere:• Uli Furbach, Logic for Computer Scientists, Wikibook auf
http://en.wikibooks.org/wiki/Logic for Computer Scientists
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 6
Ubungsblatter
wochentliches Ubungsblatt; Ausgabe montags nachmittags online
Bearbeitung als Hausaufgabe
• Bearbeitung in Gruppen zulassig (und empfohlen)
• Aufschreiben der Losungen einzeln!
Abgabe 1 Woche spater uber Postkasten oder in der Vorlesung
Korrektur: Feedback uber Kommentare und Notensystem (1–5)
Besprechung des Ubungsblatts und Ruckgabe der Hausaufgabenwiederum 1 Woche spater in Ubungsgruppen
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 7
Prufung
Modul wird durch Klausur am Ende des Semesters gepruft
Zulassungsvoraussetzung: 75% der Ubungsaufgaben sinnvollbearbeitet (= 1–4)
Nachholklausur im nachsten Semester
Klausur wird so gestellt, dass Erreichen der hier definiertenLernziele abgepruft wird!
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 8
Lernziele
Zielgruppe: Pflichtmodul im Bachelor-Studiengang Informatik
nach erfolgreicher Teilnahme an dieser Veranstaltung soll man
• wichtige logische Begriffe wie Beweis, Erfullbarkeit undAllgemeingultigkeit kennen und damit umgehen konnen,
• in der Lage sein, formal die Richtigkeit einer Aussage mitBezug auf die Informatik darlegen zu konnen,
• Aussagen- und Pradikatenlogik erster Stufe, etc. kennen undverstehen,
• Entscheidungsverfahren und Beweiskalkule fur solche Logikenkennen und anwenden konnen,
• Logik-Tools (z.B. Theorembeweiser) kennengelernt haben.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 9
Logik Lernen
Vorlesung dient der Prasentation des zu erlernenden Stoffs
Ubung dient zur Uberprufung der Aneigung des zu vermittelndenWissens
Aneignung des zu vermittelnden Wissens geschieht durch
• aufmerksame (mindestens passive, gerne auch aktive)Teilnahme an der Vorlesung
• aktive Teilnahme an der Ubung
• ganz wichtig: rigoroses Bearbeiten der Ubungsblatter
• erganzendes Tutorium: jeweils 1std. im Anschluss anUbungsgruppen
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 10
Richtlinien fur die Ubungsblatter
• Aneignung wichtiger Qualifikationen, die von einemInformatiker mit Hochschulabschluss erwartet werden
• intensive und dauerhafte Auseinandersetzung mit demLernstoff
• vollen Zeitraum einer Woche ausschopfen
• Bearbeitung in Gruppenarbeit (Faustregel: 3–4), Aufschreibenalleine
• Losungen immer begrunden (nicht in Romanform)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 11
Schwarzbuch
• Ubungsblatt runterladen, 30min anstarren, zu schwer, wegdamit
• nach Musterlosungen fragen
• nur passiv an Ubungsgruppen teilnehmen
• Hausaufgaben wahrend Vorlesungszeit abschreiben, dann vorKlausur 1 Woche intensiv lernen
• anhand von Losungen statt von Aufgaben lernen
• Vorlesungsfolien mit einem Skript verwechslen
Motivation und Geschichte
I Geschichte der Logik
I Logik und Informatik
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.1 Motivation und Geschichte – Geschichte der Logik 13
Aufgaben der Logik
Logik (aus Griechischem) = Lehre des vernunftigen Schließens,Kunst des Denkens (ursprunglich)
Logik ist Teilgebiet von Philosophie, Mathematik und Informatik
• Philosophie: liefert Fundament fur Argumentationen,formalisiert Wahrheitsbegriff
• Mathematik: formalisiert Beweise
• Informatik: enge Beziehungen zum Begriff der Berechenbarkeit
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.1 Motivation und Geschichte – Geschichte der Logik 14
Auspragungen
je nach Zuordnung in verschiedener Auspragung
• Logik der naturlichen Sprache
beschaftigt sich vor allem mit der Gultigkeit vonArgumentationen
• formale Logik oder auch mathematische Logik
• basiert auf kunstlicher Sprache (Formeln)• studiert Auswirkungen verschiedener Schlussregeln, etc.
• Umgangsprache
beschreibt laterales Denken oder rationales Handeln
in dieser Vorlesung: mathematische Logik
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.1 Motivation und Geschichte – Geschichte der Logik 15
Ursprunge der Logik
entstanden in der griechischen Philosophie, insbesondere durchAristoteles und Euklid
Aristoteles untersuchte Syllogismen (naturlichsprachlicheSchlussregeln), mit deren Hilfe eine Aussage aus anderen folgt
Bsp.:
• Aussage 1: “Es regnet.”
• Aussage 2: “Wenn es regnet, dann wird die Straße nass.”
Daraus folgt, dass die Straße nass ist.Die hier angewandte Schlussregel nennt man Modus Ponens.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.1 Motivation und Geschichte – Geschichte der Logik 16
Euklids Beweisbegriff
Euklid hat den Begriff des Beweises formalisiert:
Beweis fur eine Aussage A ist eine Sequenz A0, . . . ,An vonAussagen, sodass
• A = Ai fur ein i ∈ {0, . . . , n}, und
• fur alle i = 0, . . . , n gilt entweder• Ai ist Axiom (= unbewiesene Annahme), oder• Ai folgt aus A0, . . . ,Ai−1 mithilfe von Schlussregeln
liefert relativen Wahrheitsbegriff: Aussage A kann mit gewissenAxiomen und Regeln beweisbar sein, mit anderen jedoch nicht
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.1 Motivation und Geschichte – Geschichte der Logik 17
Euklids Geometrie
fur Euklid war Formalisierung des Beweisbegriffs Mittel zum Zweck
interessant fur ihn war Geometrie, die er mithilfe vongeometrischen und logischen Axiomen (Postulaten) fundiert hat
Bsp.:
• Zu gegebenem Mittelpunkt und Radius lasst sich ein Kreiszeichnen.
• Ist x gleich z und y gleich z, so ist auch x gleich y.
• . . .
Maßgabe fur die Wahl der Axiome war, die Wirklichkeitabzubilden, nicht jedoch “eine Geometrie” zu schaffen
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.1 Motivation und Geschichte – Geschichte der Logik 18
Euklids funftes Postulat
Zu einer Gerade g und einem Punkt p außerhalb von ggibt es genau eine Gerade g ′, die durch p geht und zu gparallel ist.
erscheint im Vergleich zu anderen Postulaten recht kompliziert Versuche, dieses aus anderen Postulaten herzuleiten
alle Versuche misslangen uber 2000 Jahre hinweg
erst ca. 1830 ersetzen Bolyai und Lobatschewski dies durch andereAxiome und erhielten – sehr zur Uberraschung – widerspruchsfreieGeometrien
bei Lobatschweski z.B. lassen sich mindestens zwei verschiedene,parallele Geraden durch den Punkt ziehen
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.1 Motivation und Geschichte – Geschichte der Logik 19
Logik in der Neuzeit
Kant betrachtete die Wissenschaft der Logik mit AristotelesSyllogismen als abgeschlossen
nicht jeder hielt sich jedoch an die Vorgabe, z.B. Boole und deMorgan
Boole betrachtete Logik als mathematischen Kalkul mit Werten 0und 1 (falsch und wahr) und entsprechenden Rechenregeln
sehr bedeutend war Frege, der versuchte, die gesamte Mathematikauf ein logisches Fundament zu stellen – die Mengentheorie; dazuentwickelte er Pradikatenlogik als formale Sprache undentsprechende Beweissysteme
Russell und Zermelo fanden in Freges Mengentheorie jedoch einenWiderspruch
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.1 Motivation und Geschichte – Geschichte der Logik 20
Die Russellsche Antinomie
Def.: Sei M die Menge aller Mengen, die sich selbst nichtenthalten.
Frage: Enthalt M sich selbst?
dasselbe Prinzip:
• Martin sagt “Martin lugt”. Spricht er die Wahrheit, oder lugter?
• In einem Dorf gibt es einen Barbier, der alle Dorfbewohnerrasiert, die sich nicht selbst rasieren. Rasiert er sich selbst?
Auswege fur die Mathematik:
• Typtheorie von Russell und Whitehead
• Mengenlehre von Zermelo
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.1 Motivation und Geschichte – Geschichte der Logik 21
Weitere bedeutende Logiker und ihre Arbeiten
• Gentzen: System des naturlichen Schließens undSequenzenkalkul
• Lowenheim und Skolem: Semantik der Pradikatenlogik
• Godel: Vollstandigkeit der Pradikatenlogik erster Stufe undUnvollstandigkeit der Arithmetik
• Tarski: ebenfalls Pradikatenlogik
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.2 Motivation und Geschichte – Logik und Informatik 22
Logik fur die Informatik
Entwicklungen in der Logik haben maßgeblich zur Entwicklung derInformatik beigetragen
• Boolesche Algebra und Schaltkreise
• Hilberts Programm: wollte gesamte Mathematik logischfundieren und Konsistenz bewiesen sehen; Unmoglichkeitdessen von Godel gezeigt
• Unentscheidbarkeit des Entscheidungsproblems furPradikatenlogik erster Stufe durch Turing und Church gezeigt;Entwicklung der Turing-Maschine (= abstrakter, universellerComputer)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.2 Motivation und Geschichte – Logik und Informatik 23
Logik in der Informatik
• Rechnerarchitektur: Schaltkreise und logische Formeln;Aussagenlogik
• logische Programmiersprachen wie z.B. Prolog
• Programmverifikation: operationelle Semantik einesProgramms als mathematische Struktur, erwunschteEigenschaft des Programms als logische Formel; meistspezialisierte Logiken
• Datenbanktheorie: Datenbank wiederum als mathematischeStruktur, Anfragen daran als Auswertung einer logischenFormel darin; meist Pradikatenlogik
• Wissensreprasentation: Wissen durch Formeln beschrieben,Herleitung von neuem Wissen durch logische Herleitungendarauf; meist spezialisierte Logiken
• . . .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.2 Motivation und Geschichte – Logik und Informatik 24
Informatik fur die Logik
leistungsstarke Rechner und Software haben auch zuentscheidenden Entwicklungen in der Logik beigetragen
• Theorembeweiser erlauben das Finden und Uberprufen sehrgroßer Beweise
• Beweis des 4-Farben-Satzes: erst Reduktion von unendlichvielen auf endlich viele Falle, dann Uberprufung derer miteinem Computer
• SAT-Solver: mittlerweile sehr leistungsstarke Tools zum Losendes Erfullbarkeitsproblems der Aussagenlogik, dadurch auchbesonders interessant
• . . .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 2.2 Motivation und Geschichte – Logik und Informatik 25
Facetten der Logik
zwei Arten, den Begriff der Wahrheit in einer formalen Logik zuerklaren
• Modelltheorie: Wahrheitsbegriff erklart durch Interpretationvon Formeln in Modellen
• Beweistheorie: Wahrheitsbegriff erklart durch Axiome undBeweisregeln
hier: beides
Aussagenlogik
I Syntax und Semantik
I Boolesche Algebra
I Erfullbarkeit
I SAT-Solver
I Kompaktheit
I Beweiskalkule
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 27
Einfuhrendes Beispiel
Norbert sagt “Marcel sagt die Wahrheit”.
Marcel sagt “Bahareh lugt”.
Bahareh sagt “Norbert und Marcel sagen entweder beide dieWahrheit oder lugen beide”.
Wer lugt, und wer sagt die Wahrheit?
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 28
Syntax der Aussagenlogik
Wir setzen eine Menge V = {A,B,C , . . .} von Aussagenvariablenvoraus.
Formeln der Aussagenlogik (uber V) sind induktiv definiert durch:
• Jeder Aussagenvariable A ist eine Formel.
• Die Konstanten tt und ff sind Formeln.
• Sind ϕ und ψ Formeln, so sind auch• (ϕ ∧ ψ) (“und”)• (ϕ ∨ ψ) (“oder”)• ¬ϕ (“nicht”)• (ϕ→ ψ) (“wenn-dann”)• (ϕ↔ ψ) (“genau-dann-wenn”)
Formeln.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 29
Prazedenzregeln
zur besseren Lesbarkeit lassen wir auch Klammern weg (z.B. ganzaußen)
Bindungskraft der Operatoren (auch Junktoren genannt) inabsteigender Reihenfolge:
¬,∧,∨,→,↔
soll heissen:((A ∨ (¬(B ∧ ¬C ))) ↔ (C → A))
schreiben wir auch als
A ∨ ¬(B ∧ ¬C ) ↔ C → A
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 30
Interpretationen
Def.: Sei B = {0, 1} Menge der Booleschen Werte falsch und wahr.
Def.: Eine Interpretation (Variablenbelegung) ist eine AbbildungI : V → B.
Interpretationen konnen Modelle einer Formel sein; dieseBeziehung ist induktiv definiert: I |= tt, I 6|= ff und
I |= A gdw. I(A) = 1
I |= ϕ ∧ ψ gdw. I |= ϕ und I |= ψ
I |= ϕ ∨ ψ gdw. I |= ϕ oder I |= ψ
I |= ¬ϕ gdw. I 6|= ϕ
I |= ϕ→ ψ gdw. wenn I |= ϕ dann I |= ψ
I |= ϕ↔ ψ gdw. I |= ϕ genau dann, wenn I |= ψ
Beachte Unterscheidung zwischen Formeln ff, tt (Syntax) undzugeordneten Werten 0, 1 (Semantik)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 31
Beispiele
Bsp.: I = {A 7→ 1,B 7→ 0,C 7→ 1,D 7→ 0}
• I |= (A ∨ B) ∧ (C ∨ D)
• I 6|= (¬A ∨ B) ∨ (¬C ∧ D)
• I |= A → ¬B
• I |= ¬A → B
• I 6|= A → B
• I |= ¬A → ¬B
• I |= (A ↔ B) ↔ ¬(C ↔ ¬D)
• I |= ¬(¬D → ff)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 32
Beispiel
Logik uber anonymen Aussagenvariablen fur Theorie der Wahrheitbeliebiger Aussagen
Formeln lassen sich naturlich mit konkreten Aussagen instanziieren
Bsp. (weitergef.):
• Norbert sagt “Marcel sagt die Wahrheit”.
• Marcel sagt “Bahareh lugt”.
• Bahareh sagt “Norbert und Marcel sagen entweder beide dieWahrheit oder lugen beide”.
Losung erfordert Formalisierung; drei Variablen B,M,N mitintendierter Bedeutung: Bahareh sagt die Wahrheit (B), . . .
obiger Sachverhalt wird beschrieben durch die Formel
(N ↔ M) ∧ (M ↔ ¬B) ∧ (B ↔ (M ↔ N))
jedes Modell dieser Formel beschreibt Losung des Ratsels
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 33
Alternative Definitionen der Semantik
zur Erinnerung:
• Interpretation einer Formel = Variablenbelegung I : V → B• erfullende Interpretation = Modell
alternative Reprasentationen fur gleiche Semantik
• Interpretation ist Teilmenge der Variablenmenge W ⊆ VUbung: definiere induktiv, was W |= ϕ bedeutetbeachte: Abbildung I definiert in naturlicher Weise TeilmengeWI = {A ∈ V | I(A) = 1}
• Interpretation wird induktiv fortgesetzt zu I : AL → B
I(ϕ ∧ ψ) := min{I(ϕ), I(ψ)}
Ubung: definiere die Fortsetzung fur die anderen Junktoren
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 34
Formeln und Boolesche Funktionen
eine Formel ϕ mit n vorkommenden Aussagenvariablen A1, . . . ,An
stellt eine Funktion vom Typ Bn → B dar
es gibt nur 2n viele Interpretationen, die sich in A1, . . . ,An
unterscheiden; also gibt es nur 2n viele verschiedene “Eingaben” anϕ
Funktionswert 1 besagt, dass die durch Argumente gegebeneInterpretation ein Modell ist
Funktionen mit endlichem Domain konnen durch Tabellierung allerArgumente reprasentiert werden
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 35
Wahrheitstafeln
. . . fur die Junktoren und Konstanten der Aussagenlogik
ϕ ψ ϕ ∧ ψ0 0 00 1 01 0 01 1 1
ϕ ψ ϕ ∨ ψ0 0 00 1 11 0 11 1 1
ϕ ¬ϕ0 11 0
ϕ ψ ϕ→ ψ0 0 10 1 11 0 01 1 1
ϕ ψ ϕ↔ ψ0 0 10 1 01 0 01 1 1
tt1
ff0
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 36
Wahrheitstafeln
. . . fur komplexere Formeln
A B C A ∧ B A ∧ B → ff ¬B ¬B → C (A ∧ B → ff) ∧ (¬B → C)0 0 0 0 1 1 0 00 0 1 0 1 1 1 10 1 0 0 1 0 1 10 1 1 0 1 0 1 11 0 0 0 1 1 0 01 0 1 0 1 1 1 11 1 0 1 0 0 1 01 1 1 1 0 0 1 0
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 37
Beispiel (weiterg.)
• Norbert sagt “Marcel sagt die Wahrheit”.
• Marcel sagt “Bahareh lugt”.
• Bahareh sagt “Norbert und Marcel sagen entweder beide die Wahrheit oderlugen beide”.
formalisiert als (N ↔ M) ∧ (M ↔ ¬B) ∧ (B ↔ (M ↔ N))
M N B ϕ0 0 0 00 0 1 10 1 0 00 1 1 01 0 0 01 0 1 01 1 0 01 1 1 0
einzige mogliche Losung: Norbert und Marcel lugen, Bahareh sagtdie Wahrheit
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 38
Funktionale Vollstandigkeit
Def.: eine Menge J von Junktoren heißt funktional vollstandig,wenn es fur jedes n ∈ N und jede Funktion f : Bn → B eine Formelϕf uber n Variablen gibt, die nur Junktoren aus J benutzt und freprasentiert
Theorem 1
{tt, ff,∧,∨,¬} ist funktional vollstandig
Bsp.:
A B C f (A,B,C)0 0 0 00 0 1 10 1 0 10 1 1 01 0 0 01 0 1 01 1 0 11 1 1 0
realisiert durch(¬A ∧ ¬B ∧ C ) ∨(¬A ∧ B ∧ ¬C ) ∨(A ∧ B ∧ ¬C )
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 39
Beweis von Thm. 1
Beweis: Durch Induktion uber Anzahl n der Variablen
Induktionsanfang, n = 0. Es gibt nur 2 Funktionen vom TypB0 → B, namlich die Konstanten 0 und 1. Diese werden durch ffund tt reprasentiert.
Induktionsschritt, n > 0. Sei f : Bn → B. O.B.d.A. seienA1, . . . ,An die Variablen in f . Benutze Shannon-Expansion:
f (A1, . . . ,An) =
{f (A1, . . . ,An−1, 0) , falls An = 0
f (A1, . . . ,An−1, 1) , falls An = 1
f (A1, . . . ,An−1, c) ist Funktion vom Typ Bn−1 → B. NachInduktionvoraussetzung gibt es also Formeln ϕc
f fur c ∈ {0, 1}, diediese reprasentieren. Aussagenlogik kann Shannon-Expansion leichtausdrucken: f wird reprasentiert durch
ϕf = (¬An ∧ ϕ0f ) ∨ (An ∧ ϕ1
f )
�
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 40
Funktionale Vollstandigkeit
somit mussen sich insbesondere die anderen Junktoren durchff, tt,¬,∨,∧ ausdrucken lassen
• ϕ→ ψ ist dasselbe wie ¬ϕ ∨ ψ• ϕ↔ ψ ist dasselbe wie (ϕ ∧ ψ) ∨ (¬ϕ ∧ ¬ψ)
Theorem 2
Die folgenden Mengen von Junktoren sind funktional vollstandig:
{tt,¬,∨} , {tt,¬,∧} , {ff,→} , . . .
Beweis: (Ubung)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 41
Funktionale Unvollstandigkeit
nicht jede Menge von Junktoren ist funktional vollstandig, z.B. ∅sicherlich nicht, {tt,¬} auch nicht (Ubung)
Theorem 3
{tt, ff,∧,∨} ist nicht funktional vollstandig.
Def.: Definiere partielle Ordnung auf B durch 0 < 1. Einf : Bn → B heißt monoton im i-ten Argument, wenn fur allex , y , x1, . . . , xn ∈ B gilt: wenn x ≤ y , dann
f (x1, . . . , xi−1, x , xi+1, . . . , xn) ≤ f (x1, . . . , xi−1, y , xi+1, . . . , xn)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 42
Monotone Funktionen
Bsp.: In welchen Argumenten ist
A B C f (A,B,C )
0 0 0 00 0 1 10 1 0 10 1 1 11 0 0 01 0 1 01 1 0 11 1 1 0
monoton?
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 43
Funktionale Unvollstandigkeit von {tt, ff,∨,∧}
Lemma: Sei ϕ aufgebaut aus n Variablen und den Junktorentt, ff,∨,∧. Dann ist die durch ϕ definierte Funktion fϕ : Bn → Bmonoton in allen Argumenten.
Beweis: durch Induktion uber den Aufbau von ϕ
Beweis von Thm. 3:Die Funktion f = {0 7→ 1, 1 7→ 0} ist nicht monoton im erstenArgument, kann daher nicht durch ein solches ϕ uber tt, ff,∨,∧definiert werden.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.1 Aussagenlogik – Syntax und Semantik 44
Aquivalenzen
Def.: ϕ und ψ heissen aquivalent, geschrieben ϕ ≡ ψ, gdw. furalle Interpretationen I gilt: I |= ϕ gdw. I |= ψ
Aquivalenzen konnen z.B. ausgenutzt werden, um kleinereFormeln, die dasselbe ausdrucken, zu erhalten
Bsp.: B ↔ (A → ¬B) ≡ A ↔ ¬B
Beweis z.B. durch Wahrheitstafeln
A B B ↔ (A → ¬B) A ↔ ¬B0 0 0 00 1 1 11 0 1 11 1 0 0
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.2 Aussagenlogik – Boolesche Algebra 45
Boolesche Algebra
Def.: eine Boolesche Algebra ist eine Menge M mit zweiKonstanten >,⊥ ∈ M und drei Funktionen u,t : M ×M → Mund · : M → M, so dass fur alle x , y , z ∈ M gilt:
• x u y = y u x und x t y = y t x (Kommutativitat)
• (x u y) u z = x u (y u z) und (x t y) t z = x t (y t z)(Assoziativitat)
• x u (y t z) = (x u y) t (x u z) undx t (y u z) = (x t y) u (x t z) (Distributivitat)
• x t (x u y) = x und x u (x t y) = x (Absorption)
• x t x = > und x u x = ⊥ (Komplemente)
• x t x = x und x u x = x (Idempotenz)
• x t ⊥ = x und x u > = x (Neutralitat)
• x u ⊥ = ⊥ und x t > = > (Extremalitat)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.2 Aussagenlogik – Boolesche Algebra 46
Boolesche Algebren
Lemma: (B, 1, 0,∧,∨,¬) ist eine Boolesche Algebra
Gultigkeit der Gesetze lasst sich z.B. durch Wahrheitstafelnausrechnen
andere Beispiele fur Boolesche Algebren:
• Potenzmengenverband einer endlichen Menge M:(2M ,M, ∅,∩,∪, ·)
• Singleton-Menge (wieso?)
• fur festes n ∈ N: Menge aller Booleschen Funktionen Bn → B(Ubung: definiere >,⊥,u,t, · darin)
• . . .
Lemma: Ist (M,>,⊥,u,t, ·) Boolesche Algebra, so auch(M,⊥,>,t,u, ·).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.2 Aussagenlogik – Boolesche Algebra 47
Redundanz und Herleitung
Beachte: nicht alle Gesetze fur Boolesche Algebren sind unabhangig
Z.B. folgt Neutralitat aus Absorption und Komplementen
x t ⊥ = x t (x u x) = x
In ahnlicher Weise lassen sich auch weitere Gesetze finden, die injeder Booleschen Algebra gelten mussen; diese sind aus den obigenGesetzen herleitbar, z.B. die de Morgan-Gesetze:
• x t y = x u y
• x u y = x t y
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.2 Aussagenlogik – Boolesche Algebra 48
Boolesche Algebra und Aussagenlogik
beachte: Formeln der Aussagenlogik werden in Boolescher Algebra(B, 1, 0,∧,∨,¬) interpretiert
Gesetze der Booleschen Algebra lassen sich auf Aussagenlogikubertragen
zur Erinnerung: Formeln, die dieselbe Funktion definieren, sindaquivalent
Gesetze der Booleschen Algebra – angewandt auf Formeln –resultieren also insbesondere in Aquivalenzen
daher: Klammern konnen aufgrund von Assoziativitat weggelassen,Unterformeln wegen Kommutativitat vertauscht werden,Mehrfachvorkommen wegen Idempotenz weggelassen werden, etc.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.2 Aussagenlogik – Boolesche Algebra 49
Mehrstellige Junktoren
aufgrund der Kommutativ- und Assoziativgesetze konnen wirmehrstellige Dis- und Konjunktionen einfuhren:
n∧i=1
ϕi := ϕ1 ∧ . . . ∧ ϕn
n∨i=1
ϕi := ϕ1 ∨ . . . ∨ ϕn
genauso fur endliche Indexmengen I :∧
i∈I ϕi bzw.∨
i∈I ϕi
beachte: falls n = 0, dann∧n
i=1 ϕi := tt und∨n
i=1 ϕi := ff;ebenfalls fur I = ∅
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 50
Erfullbarkeit und Allgemeingultigkeit
Def.: eine Formel ϕ heißt erfullbar, wenn es ein I gibt, so dassI |= ϕ
Def.: eine Formel ϕ heißt allgemeingultig (oder Tautologie), wennfur alle I gilt: I |= ϕ
Lemma: ϕ ist erfullbar gdw. ¬ϕ nicht allgemeingultig ist
Beweis:
“⇒” Sei ϕ erfullbar. Dann ex. I mit I |= ϕ und daher I 6|= ¬ϕ.Somit ist ¬ϕ nicht allgemeingultig.
“⇐” Genauso.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 51
Zusammenhange
Beachte: aus obigem Lemma folgt z.B. sofort, dass ϕ unerfullbarist gdw. ¬ϕ allgemeingultig ist; dies liegt daran, dass die folgendeFormel der Aussagenlogik allgemeingultig ist
(A → ¬B) → (B → ¬A)
Theorem 4
a) ϕ ∧ ψ ist allgemeingultig gdw. ϕ und ψ allgemeingultig sind
b) ϕ ∨ ψ ist erfullbar gdw. ϕ oder ψ erfullbar ist
c) ϕ ≡ ψ gdw. ϕ↔ ψ allgemeingultig
d) ϕ allgemeingultig gdw. ϕ ≡ tt
e) ϕ unerfullbar gdw. ϕ ≡ ff
Beweis: (Ubung)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 52
Beispiele
die folgenden Formeln sind erfullbar
A , ¬A , A ∧ ¬B , (A ∨ B) ∧ (¬A ∨ B) ∧ (A ∨ ¬B)
die folgenden Formeln sind unerfullbar
A ∧ ¬A , (A ∨ B) ∧ (¬A ∨ B) ∧ (A ∨ ¬B) ∧ (¬A ∨ ¬B)
die folgenden Formeln sind Tautologien
A ∨ ¬A , (A → B) → (B → C ) → (A → C ) , ¬¬A ↔ A
beachte: → ist nicht assoziativ; Konvention: rechts geklammert
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 53
Fallstricke
Vorsicht! Folgendes gilt nicht:
• ϕ ∨ ψ allgemeingultig gdw. ϕ oder ψ allgemeingultig
• ϕ ∧ ψ erfullbar gdw. ϕ und ψ erfullbar
Gegenbeispiele?
aber es gelten jeweils eine der beiden Richtungen, welche?
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 54
Anwendungen von Erfullbarkeit
Def.: Das Erfullbarkeitsproblem der Aussagenlogik (SAT) ist dasfolgende: Geg. ϕ, entscheide, ob ϕ erfullbar ist oder nicht.
• Losung des Ratsels uber das Lugen ist Erfullbarkeitstest
• Zusammenhang zu Allgemeingultigkeit bedeutet: uberErfullbarkeit lasst sich herausfinden, welche aussagenlogischenZusammenhange gelten
• allgemein: Erfullbarkeitstest ist Auffinden von Losungen
• . . .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 55
Bsp.: Sudoko via Aussagenlogik
verwende Variablen X ki ,j mit 1 ≤ i , j ≤ 9 und 0 ≤ k ≤ 3 fur binare
Kodierung der Losung
intuitive Bedeutung “das k-te Bit der Zahl im Feld (i , j) istgesetzt”
betrachte Konjunktion uber die folgenden Aussagen• “an jeder Stelle steht eine Zahl zwischen 0 und 9”∧9
i=1
∧9j=1 X 3
i ,j → (¬X 2i ,j ∧ ¬X 1
i ,j)
• “in jeder Zeile (Spalte, Block) kommt keine Zahl doppelt vor”∧9i=1
∧1≤j<j ′≤9
∨3k=0 ¬(X k
i ,j ↔ X ki ,j ′)
• Vorbelegungen, z.B. “in Feld (2, 7) steht die 5”
¬X 32,7 ∧ X 2
2,7 ∧ ¬X 12,7 ∧ X 0
2,7
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 56
Ein naiver Erfullbarkeitstest
Theorem 5
SAT ist in Zeit O(|ϕ| · 2|Vars(ϕ)|) entscheidbar. (|ϕ| = Lange vonϕ, Vars(ϕ) = Menge der Variablen in ϕ)
Beweis: Beachte:
• in Zeit O(|ϕ|) lasst sich fur gegebenes I entscheiden, obI |= ϕ gilt oder nicht (Ubung).
• es reicht aus, nur Interpretationen vom TypI : Vars(ϕ) → {0, 1} zu betrachten; davon gibt es nur2|Vars(ϕ)| viele
Aufzahlung aller relevanten Interpretationen und sukzessivesTesten
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 57
Normalformen
Def.:
• Ein Literal ist eine Variable A oder ihre Negation ¬A.
• Eine Klausel ist eine Disjunktion von Literalen,∨n
i=1 li .
• Ein Minterm ist eine Konjunktion von Literalen,∧n
i=1 li .
• Eine Formel ist in konjunktiver Normalform (KNF), falls sieeine Konjunktion von Klauseln ist,
∧ni=1
∨mij=1 li ,j .
• Eine Formel ist in disjunktiver Normalform (DNF), falls sieeine Disjunktion von Mintermen ist,
∨ni=1
∧mij=1 li ,j .
Bsp. (A ∨ ¬B) ∧ (B ∨ ¬C ∨ ¬A) ist in KNF
wir schreiben Formeln in KNF (oder DNF) wegen Assoziativitat,Kommutativitat und Idempotenz auch als Mengen von Mengenvon Literalen
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 58
Substitutionen
Def.: ϕ[ψ/A] bezeichne die simultane Ersetzung von jedemVorkommen der Variablen A in ϕ durch ψ
Theorem 6
Aussagenlogische Aquivalenz ist eine Kongruenzrelation: Wennψ ≡ θ dann ϕ[ψ/A] ≡ ϕ[θ/A].
Beweis (durch Induktion uber den Aufbau von ϕ)
Frage: macht es einen Unterschied, wenn man nicht simultanersetzt?
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 59
Existenz von Normalformen
Theorem 7
Fur jedes ϕ existiert ein ψ in KNF / DNF, so dass ϕ ≡ ψ.
Beweis: Durch schrittweises Umbauen von ϕ:
1 Elimination von →,↔ mittels
ϕ1 ↔ ϕ2 ≡ (ϕ1 → ϕ2)∧(ϕ2 → ϕ1) , ϕ1 → ϕ2 ≡ ¬ϕ1∨ϕ2
2 Anwenden der de Morgan-Gesetze und ¬¬θ ≡ θ liefertFormel, die nur aus Literalen mit ∧,∨ gebaut ist.
3 Anwenden der Distributivgesetze liefert KNF oder DNF.
Alle Schritte sind aquivalenzerhaltend laut Thm. 6.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 60
Das Erfullbarkeitsproblem fur DNF
Theorem 8
DNF-SAT (SAT fur Formeln in DNF) lasst sich in ZeitO(|ϕ| log |ϕ|) entscheiden.
Beweis:
• Ein Minterm∧n
i=1 li ist erfullbar gdw. es keine A, i , j gibt, sodass li = A und lj = ¬A fur 1 ≤ i , j ≤ n.
• Eine Disjunktion∨n
i=1 ϕi ist erfullbar gdw. es ein i gibt, sodass ϕi erfullbar ist.
Somit kann Erfullbarkeit einer DNF in einem Durchlauf (nachSortierung) durch die Formel entschieden werden.
Warum dann nicht Erfullbarkeitstest fur allgemeine Formel ϕ so:Wandle ϕ in aquivalente DNF ψ um. Teste Erfullbarkeit von ψ.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 61
Erfullbarkeitsaquivalenz
neben dem starken Aquivalenzbegriff ≡ fuhren wir noch einenschwacheren ein
Def.: ϕ und ψ sind erfullbarkeitsaquivalent, ϕ ≡sat ψ, falls gilt: ϕerfullbar gdw. ψ erfullbar
beachte: ≡sat ist Aquivalenzrelation mit nur zweiAquivalenzklassen; kanonische Vertreter sind tt, ff
Wofur kann das dann uberhaupt gut sein?
Ist man (nur) an Erfullbarkeit von ϕ interessiert, so reicht es aus,Erfullbarkeit von ψ zu testen, falls ϕ ≡sat ψ (aber evtl. nichtϕ ≡ ψ).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 62
Erfullbarkeitsaquivalente KNF
Theorem 9
Fur jedes ϕ gibt es ein ψ in KNF, so dass ϕ ≡sat ψ und|ψ| = O(|ϕ|).
Beweis: Fur jede nicht-atomare Subformel θ von ϕ fuhren wireine Variable Xθ ein. Dann wird ϕ sukzessive nach folgenderVorschrift “von unten nach oben” umgebaut.
Solange es noch eine nicht-atomare Subformel θ gibt, ersetze diesedurch Xθ und definiere eine KNF ψθ je nach Junktor in θ, z.B.
Falls θ = Y ∧ Z , dann
ψθ := (¬Xθ ∨ Y ) ∧ (¬Xθ ∨ Z ) ∧ (Xθ ∨ ¬Y ∨ ¬Z )
Definiere schlussendlich ψ := Xϕ∧∧{ψθ | θ Subformel von ϕ}
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 63
Erfullbarkeitsaquivalente KNF
Beachte: Es gilt in obiger Konstruktion nicht nur ϕ ≡sat ψ,sondern noch etwas starkeres:
• Vars(ϕ) ⊆ Vars(ψ)
• Ist I |= ψ, so auch I |= ϕ (aber nicht unbedingt umgekehrt).
Soll heißen: ψ ist nicht nur erfullbarkeitsaquivalent zu ϕ, sondernjeder erfullende Variablenbelegung fur ψ ist auch eine fur ϕ.
Beachte: Erfullbarkeitstest in O(n log n) war fur DNF, nicht KNF!Umwandlung in erfullbarkeitsaquivalente DNF ist wohl nicht mitnur polynomiellem Aufwand moglich.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 64
Beispiel
Gesucht ist Formel uber Variablen A1, . . . ,An die besagt “genaueine der Aussagen A1, . . . ,An is wahr”.
Leicht moglich:n∨
i=1(Ai ∧
∧j 6=i
¬Aj), hat aber Große O(n2)
Geht es auch mit Formel der Große O(n)? Ja, wenn man sich mehrVariablen spendiert: ϕ1 ∧ ϕ2, wobei
• ϕ1 :=n∨
i=1Ai , “Mindestens eine der A1, . . . ,An ist wahr”
• zusatzliche Variablen Bi , i = 1, . . . , n, mit intuitiverBedeutung: “eine der A1, . . . ,Ai ist wahr”
ϕ2 := (A1 ↔ B1)∧n∧
i=2
((¬Bi−1 ↔ Ai ) → Bi )∧¬(Bi−1 ∧Ai )
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik – Erfullbarkeit 65
Horn-Formeln
Def.: Eine Horn-Formel ist ein ϕ in KNF, so dass in jeder Klauselhochstens ein positives Literal vorkommt.
Beachte:
¬A1 ∨ . . . ∨ ¬An ∨ B ≡ A1 ∧ . . . ∧ An → B
¬A1 ∨ . . . ∨ ¬An ≡ A1 ∧ . . . ∧ An → ff
Theorem 10
HORN-SAT (Erfullbarkeitsproblem fur Horn-Formeln) ist in ZeitO(|ϕ|2) losbar.
Beweis: (Ubung)
Beachte: mit etwas Cleverness lasst es sich sogar in O(|ϕ|) losen
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.4 Aussagenlogik – SAT-Solver 66
SAT-Solver
Ein SAT-Solver ist eine Implementierung eines Algorithmus fur dasSAT-Problem.
Obwohl dies i.A. exponentielle (in |Vars(ϕ)|) Laufzeit braucht, gibtes mittlerweile einige SAT-Solver, die in der Praxis erstaunlich gutfunktionieren.
• Minisat http://minisat.se/
• Picosat http://fmv.jku.at/picosat/
• Berkmin http://eigold.tripod.com/BerkMin.html
• RSat http://reasoning.cs.ucla.edu/rsat/
• zChaff http://www.princeton.edu/~chaff/zchaff.html
• . . .
siehe auch SATLive-Webseite http://www.satlive.org/
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.4 Aussagenlogik – SAT-Solver 67
Das DIMACS-Format
SAT-Solver verlangen typischerweise eine Eingabe in KNF.
Standardisiertes Format: DIMACS
• Variablen sind naturliche Zahlen ≥ 1
• Literale werden durch Integer bezeichnet, z.B. A7 = 7, ¬A4 =-4
• Klausel ist Liste von Integern, 0 markiert Klauselende
• KNF ist Liste von Klauseln
• Kommentare im Header (c ...)
• spezielle Headerzeile (p cnf ...) gibt Anzahl verwendeterKlauseln und Variablen an
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.4 Aussagenlogik – SAT-Solver 68
Beispiel
Die KNF
(¬A ∨ B ∨ C ) ∧ (B ∨ ¬C ) ∧ ¬D ∧ (A ∨ D) ∧ (¬B ∨ ¬C ∨ ¬D)
kann im DIMACS-Format so reprasentiert werden:
c Beispielformel aus der Vorlesungc Autor: Martin Langep cnf 4 5-1 2 3 02 -3 0-4 01 4 0-2 -3 -4 0
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.4 Aussagenlogik – SAT-Solver 69
SAT-Solver im Einsatz
Clevere Heuristiken und jahrelanges Tuning haben dazu gefuhrt,dass moderne SAT-Solver typischerweise Instanzen derGroßenordnung
• ∼ 105 Variablen
• ∼ 106 Klauseln
losen konnen.
Vorsicht! Es gibt naturlich auch (im Vergleich dazu) sehr kleineInstanzen, an denen sie sich die Zahne ausbeissen.
typischer Einsatz von SAT-Solvern (nicht annahernd vollstandig):
• Hardware-Verifikation
• Planungsprobleme in der KI
• Constraint-Solving
• . . .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.4 Aussagenlogik – SAT-Solver 70
Ersetzung von Literalen
Def.: Sei C Klauselmenge (= Menge von Mengen von Literalen).Mit C[A 7→ 1] bezeichnen wir die Menge von Klauseln, die dadurchentsteht, dass man
1 jede Klausel, die das Literal A enthalt, aus C entfernt, und
2 das Literal ¬A aus jeder Klausel in C entfernt.
Fur C[A 7→ 0] gilt das entsprechend duale.
Bsp.: C = {{A,¬B}, {¬A,¬B}, {¬A,B}}C[A 7→ 1] = {{¬B}, {B}}C[B 7→ 0] = {{¬A}}
Lemma: Sei C Klauselmenge (als KNF aufgefasst), A Variable.C erfullbar gdw. C[A 7→ 1] oder C[A 7→ 0] erfullbar.
Beweis: (Ubung)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.4 Aussagenlogik – SAT-Solver 71
Unit-Propagation
Lemma: Sei C Klauselmenge, A Variable, so dass {A} ∈ C. Dannist C erfullbar gdw. C[A 7→ 1] erfullbar ist.
Beweis: “⇐” folgt sofort aus Lemma davor.“⇒” Sei C erfullbar. Wegen Lemma davor mussen wir lediglichzeigen, dass C[A 7→ 0] unerfullbar ist. Dies ist der Fall, denn da{A} ∈ C gilt ∅ ∈ C[A 7→ 0], und wegen KNF steht ∅ fur ff, undff ∧ ϕ ≡ ff, was unerfullbar ist. �
entsprechendes Lemma fur Fall {¬A} ∈ C
Algorithmus Unit-Propagation(C) fuhrt sukzessive dieseErsetzungsschritte durch, solange noch Singleton-Klauseln in Cvorhanden sind.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.4 Aussagenlogik – SAT-Solver 72
Der DPLL-Algorithmus
Alle modernen SAT-Solver basieren auf dem DPLL-Algorithmus(nach Davis, Putnam, Logemann, Loveland).
DPLL(C) =Unit-Propagation(C)if C = ∅ then return erfullbarif ∅ ∈ C then return unerfullbarwahle Variable A, die noch in C vorkommtif DPLL(C[A 7→ 1]) = erfullbar then return erfullbarreturn DPLL(C[A 7→ 0])
Bem.: Algorithmus DPLL terminiert immer, ist korrekt (wenn er“erfullbar” sagt, dann war die Eingabe auch erfullbar) undvollstandig (wenn die Eingabe erfullbar ist, dann sagt er auch“erfullbar”), aber wieso?
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.5 Aussagenlogik – Kompaktheit 73
Erfullbarkeit und endliche Konsistenz
Def.: Eine Menge Φ von Formeln heißt erfullbar, wenn es eineInterpretation I gibt, so dass I |= ϕ fur alle ϕ ∈ Φ gilt. Notation:I |= Φ.
Fur |Φ| <∞ ist also Menge Φ erfullbar gdw. Formel∧
Φ erfullbarist. Def. beinhaltet aber auch Fall unendlicher Mengen!
Bsp.: {Ai → Ai+1 | i ∈ N} ist erfullbar
Im folgenden nehmen wir an, dass V nur abzahlbar unendlich vieleVariablen enthalt, also o.B.d.A. V = {A0,A1, . . .}.
Def.: Eine Menge Φ von Formeln heißt endlich konsistent, wennfur alle Ψ ⊆ Φ mit |Ψ| <∞ gilt: Ψ ist erfullbar.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.5 Aussagenlogik – Kompaktheit 74
Der Kompaktheitssatz
Theorem 11
Fur alle Mengen Φ von Formeln gilt: Φ erfullbar gdw. Φ endlichkonsistent.
Anders gesagt: Ist jede endliche Teilmenge einer Menge Φerfullbar, so ist auch Φ erfullbar.
Eigentlich nur fur |Φ| = ∞ interessant. Wieso?
Notation: Ψ ⊆fin Φ gdw. Ψ ⊆ Φ und |Ψ| <∞
Beweis von “⇒”: Sei I |= Φ, also gilt I |= ϕ fur alle ϕ ∈ Φ.Damit ist dann auch I |= Ψ fur alle Ψ ⊆ Φ, insbesondere fallsΨ ⊆fin Φ. �
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.5 Aussagenlogik – Kompaktheit 75
“⇐” ist schwieriger
Beachte: Bei endlich konsistentem Φ kann jedes Ψ ⊆fin Φverschiedenes Modell haben!
Bsp. Φ = {ϕn,m | 0 ≤ n ≤ m} mit ϕn,m =m∨
i=nAi
Sei Ψ ⊆fin Φ und IΨ definiert durch
IΨ(Ak) =
{1 , falls min{n | ϕn,m ∈ Ψ} ≤ k ≤ max{m | ϕn,m ∈ Φ}0 , sonst
Beachte:
• Fur alle Ψ ⊆fin Φ gilt IΨ |= Ψ, aber IΨ 6|= Φ.
• Es gibt unendliche viele Ψ mit paarweise verschiedenen IΨ.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.5 Aussagenlogik – Kompaktheit 76
Lemma 1 fur die Kompaktheit
Lemma 1: Sei ϕ Formel, I, I ′ Interpretationen, so dassI(A) = I ′(A) fur alle A ∈ Var(ϕ). Dann gilt I |= ϕ gdw. I ′ |= ϕ.
Beweis Per Induktion uber Aufbau von ϕ.
Induktionsanfang:
• Fur ϕ = tt, ff gilt die Aussage sicherlich.
• Sei ϕ = A. Offensichtlich gilt dann A ∈ Vars(ϕ) und damitdann auch die Aussage.
Induktionsschritt:
• Sei ϕ = ¬ψ und die Aussage fur ψ bereits beweisen. Dann gilt
I |= ϕ gdw. I 6|= ψ gdw. I ′ 6|= ψ gdw. I ′ |= ϕ
• Falle ϕ = ψ1 ∧ ψ2, ψ1 ∨ ψ2 genauso. �
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.5 Aussagenlogik – Kompaktheit 77
Lemma 2 fur die Kompaktheit
Lemma 2: Ist Φ endlich konsistent, so ist Φ ∪ {A} oder Φ ∪ {¬A}endlich konsistent.
Beweis: Durch Widerspruch. Angenommen,
• Φ ist endlich konsistent, aber
• sowohl Φ ∪ {A} als auch Φ ∪ {¬A} sind nicht endlichkonsistent.
Dann ex. unerfullbare Ψ ⊆fin Φ ∪ {A} und Ψ′ ⊆fin Φ ∪ {¬A}.
Somit ist auch Θ := Ψ ∪Ψ′ unerfullbar, und damit auch Θ ∪ {A}und Θ ∪ {¬A}.
Dann muss aber bereits Θ \ {{A}, {¬A}} unerfullbar sein.
Da Θ \ {{A}, {¬A}} ⊆fin Φ, ist Φ also dann nicht endlichkonsistent.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.5 Aussagenlogik – Kompaktheit 78
Beweis des Kompaktheitssatzes
Beweis von “⇐” (“Φ endlich konsistent ⇒ Φ erfullbar”).
Seien A0,A1,A2, . . . Variablen in Φ.
Def. simultan Φ0 := Φ, Φi+1 := Φi ∪ {`i} und
`i :=
{Ai , falls Φi ∪ {Ai} endlich konsistent
¬Ai , sonst
Mit Lemma 2 und Induktion sind alle Φi endlich konsistent.Definiere I uber
I(Ai ) :=
{1 , falls `i = Ai
0 , falls `i = ¬Ai
Behauptung: I |= ϕ fur alle ϕ ∈ Φ
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.5 Aussagenlogik – Kompaktheit 79
Beweis des Kompaktheitssatzes
Sei ϕ ∈ Φ.
Wahle k := max{i | Ai ∈ Var(ϕ)}.
Da Φ = Φ0 ⊆ Φ1 ⊆ . . . gilt also ϕ ∈ Φk+1 und somit
Ψ := {ϕ, `0, . . . , `k} ⊆fin Φk+1
Wegen endlicher Konsistenz von Φk+1 ist Ψ erfullbar. Also ex. I ′,so dass I ′ |= Ψ.
Beachte: I(A) = I ′(A) fur alle A ∈ Var(ϕ) und außerdem I ′ |= ϕ.
Wegen Lemma 1 gilt dann I |= ϕ.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.5 Aussagenlogik – Kompaktheit 80
Erste Anwendung des Kompaktheitssatzes
Theorem 12 (Konigs Lemma)
Jeder endlich-verzweigende Baum, in dem Pfade beliebiger Langeexistieren, hat einen unendlichen Ast.
Beweis: Sei t Baum mit abzahlbarer Knotenmenge N und Wurzel0, so dass es Pfade beliebiger Lange gibt. Wir schreiben succ(i) furdie unmittelbaren Nachfolger von i . Betrachte
Φ := {X0} ∪ {Xi →∨
j∈succ(i)
Xj | i ∈ N}
• all Ψ ⊆fin Φ sind erfullbar wegen Pfaden beliebiger Lange
• nach Kompaktheit ist dann auch Φ erfullbar
• Modell von Φ liefert unendlichen Pfad in t
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.5 Aussagenlogik – Kompaktheit 81
Zweite Anwendung des Kompaktheitssatzes
Kacheln sind Einheitsquadrate mit gefarbten Kanten:
Sei K eine endliche Menge von Kacheln. Dies induziert zweiRelationen H und V , die besagen, ob zwei Kacheln horizontal bzw.vertikal aneinanderpassen.
Eine K -Kachelung der n × n-Ebene ist eine Funktionκ : {0, . . . , n − 1}2 → K , so dass fur alle i = 0, . . . , n − 2,j = 0, . . . , n − 1 gilt:
• (κ(i , j), κ(i + 1, j)) ∈ H “horizontal passt alles”
• (κ(j , i), κ(j , i + 1)) ∈ V “vertikal passt alles”
analog K -Kachelung der unendlichen N× N-Ebene definiert
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.5 Aussagenlogik – Kompaktheit 82
Beispiel
Bsp.: K =
K -Kachelung der 3× 3-Ebene:
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.5 Aussagenlogik – Kompaktheit 83
Anwendung des Kompaktheitssatzes
Theorem 13
Sei K endliche Menge von Kacheln. Wenn jede n × n-EbeneK-kachelbar ist, so ist auch die N× N-Ebene K-kachelbar.
Beweis: Benutze Aussagenvariablen Ati ,j , i , j ∈ N, t ∈ K mit
Bedeutung “das Feld (i , j) ist mit Kachel t belegt”
drucke K -Kachelbarkeit der n × n-Ebene aus:
ϕn :=n−1∧i=0
n−1∧j=0
(∨t∈K
Ati ,j ∧
∧t′ 6=t
¬At′i ,j)
∧n−2∧i=0
n−1∧j=0
( ∧(t,t′) 6∈H
¬(Ati ,j ∧ At′
i+1,j))∧
( ∧(t,t′) 6∈V
¬(Atj ,i ∧ At′
j ,i+1))
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.5 Aussagenlogik – Kompaktheit 84
Anwendung des Kompaktheitssatzes
Beachte:
• Erfullende Belegung fur ϕn liefert Kachelung der n × n-Ebene.
• Wenn m ≤ n, dann ist ϕn → ϕm allgemeingultig. Intuitiv:n × n-Kachelung liefert auch immer eine m ×m-Kachelung.
Sei Φ := {ϕn | n ∈ N}.
“Jede n × n-Ebene ist K -kachelbar” bedeutet: Fur alle n ∈ N istϕn erfullbar.
Sei Ψ ⊆fin Φ. Dann ist Ψ = {ϕi1 , . . . , ϕik} fur ein k ∈ N undi1 < i2 < . . . < ik . Da ϕik erfullbar ist, ist mit obiger Bemerkungauch Ψ erfullbar.
Aus dem Kompaktheitssatz folgt, dass auch Φ erfullbar ist;erfullende Belegung induziert Kachelung der N× N-Ebene mit K .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.6 Aussagenlogik – Resolution 85
Beweiskalkule
DPLL-Algorithmus in gewisser Weise semantisches Verfahren zumErkennen von Erfullbarkeit. (Konstruiert Modell fur Formel)
Im folgenden zwei syntaktische Verfahren zum Erkennen von(Un-)Erfullbarkeit / Allgemeingultigkeit.
1 Resolution (fur Unerfullbarkeit)
2 Sequenzenkalkul (fur Folgerungsbeziehung und damitinsbesondere Allgemeingultigkeit)
Beachte Zusammenhang zwischen Erfullbarkeit undAllgemeingultigkeit (und auch Folgerungsbeziehung, wie wir nochsehen werden): diese Verfahren sind somit auch in der Lage, diejeweils anderen Fragestellungen zu losen.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.6 Aussagenlogik – Resolution 86
Resolventen
Wir erweitern den Begriff der Aquivalenz. Sei C Klausel, K,K′Klauselmengen:
I |= C gdw. I |=∨`∈C
`
I |= K gdw. fur alle C ∈ K : I |= C
K ≡ K′ gdw. fur alle I : I |= K gdw. I |= K′
Def.: Sei ` Literal. ¯ :=
{¬A , falls ` = A,
A , falls ` = ¬A
Def.: Seien C1,C2 Klauseln, ` Literal, so dass ` ∈ C1, ¯∈ C2.Dann heisst
C := (C1 \ {`}) ∪ (C2 \ {¯})
Resolvente von C1 und C2.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.6 Aussagenlogik – Resolution 87
Das Resolutionslemma
Lemma: Sei K Klauselmenge, C1,C2 ∈ K, C Resolvente von C1
und C2. Dann gilt: K ≡ K ∪ {C}.
Beweis: “⇐=” Sei I |= K ∪ {C}. Da K ⊆ K ∪ {C}, gilt dannauch I |= K.
“=⇒” Sei I |= K. Es reicht aus zu zeigen, dass I |= C gilt.
Da C1,C2 ∈ K gilt also insbesondere I |= C1 und I |= C2. D.h. esgibt Literale `1 ∈ C1, `2 ∈ C2, so dass I |= `1 und I |= `2. Somitgilt `1 6= ¯
2. Da C = (C1 \ {`}) ∪ (C2 \ {¯}) fur ein ` ∈ C1 muss`1 ∈ C oder `2 ∈ C sein. Dann gilt aber I |= C .
Def. Sei K Klauselmenge, Res(K) ist Menge aller Resolventen vonKlauseln in K.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.6 Aussagenlogik – Resolution 88
Resolution
Def.: Ein Resolutionsbeweis fur (Unerfullbarkeit von) K ist einendlicher, binar verzweigender Baum, dessen Knoten mit Klauselnbeschriftet sind und fur den gilt:
• Die Wurzel ist mit ∅ beschriftet.
• An den Blattern stehen nur Klauseln aus K.
• Die Beschriftung eines inneren Knoten ist Resolvente derBeschriftungen seiner beiden Sohne.
Bsp.: K = {{A,B}, {A,¬B}, {¬A,B}, {¬A,¬B}}
A,B ¬A,B
B
A,¬B ¬A,¬B
¬B
∅
Bsp.: hat K = {{A,B}, {A,¬B}, {¬A,B}} Resolutionsbeweis?
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.6 Aussagenlogik – Resolution 89
Korrektheit der Resolution
Theorem 14
Sei K Klauselmenge. K ist unerfullbar gdw. es einenResolutionsbeweis fur K gibt.
Beweis: “⇐=” Angenommen, es existiert Resolutionsbeweis Tder Hohe h fur K. Definiere Klauselmengen wie folgt.
K0 := {C | C Blatt in T}Ki+1 := Ki ∪ Res(Ki )
Beachte:
• ∅ ∈ Kh+1, also Kh+1 unerfullbar.
• K0 ≡ . . . ≡ Kh+1 nach Resolutionenlemma, also K0
unerfullbar.
• K0 ⊆ K, also K unerfullbar.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.6 Aussagenlogik – Resolution 90
Vollstandigkeit der Resolution
“=⇒” Angenommen K ist unerfullbar. Nach demKompaktheitssatz existiert K0 ⊆fin K, welches bereits unerfullbarist. Offensichtlich gilt: Ein Resolutionsbeweis fur K0 ist auch einerfur K. Sei Var(K0) = {A1, . . . ,An}. Wir zeigen die Existenz einesResolutionsbeweises fur K0 durch Induktion uber n.
Induktionsanfang, n = 0. Dann ist Var(K0) = ∅. Es gibt nur zweiKlauselmengen uber der leeren Variablenmenge: ∅ und {∅}. Da ∅aber trivialerweise erfullbar ist, muss K0 = {∅} gelten.Offensichtlich lasst sich dafur ein Resolutionsbeweis bauen.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.6 Aussagenlogik – Resolution 91
Vollstandigkeit der Resolution
Induktionsschritt, n > 0. Die Induktionshypothese besagt, dass esfur unerfullbare Klauselmengen uber den Variablen A1, . . . ,An−1
Resolutionsbeweise gibt. Konstruiere nun
K+0 := {C \ {¬An} | C ∈ K0 und An 6∈ C}
K−0 := {C \ {An} | C ∈ K0 und ¬An 6∈ C}
Beachte: sowohl K+0 als auch K−0 sind unerfullbar (Ubung) und
enthalten hochstens die Variablen A1, . . . ,An−1.
Die Induktionshypothese liefert nun also zwei ResolutionsbeweiseT+ und T−. Durch Einfugen von ¬An in jede Klausel in T+ undAn in jede Klausel in T− entstehen Baume mit Wurzeln in K0,deren innere Knoten jeweils Resolventen ihrer Sohne sind. DurchResolution nach den Literalen ¬A und A entsteht aus diesen einResolutionsbeweis fur K0.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.6 Aussagenlogik – Resolution 92
Resolution verwenden
Unerfullbarkeit ist eine universelle Eigenschaft: alle Interpretationensind kein Modell. Resolution charakterisiert dies existentiell: stattalle Interpretationen fur eine Formel zu testen, reicht es aus, einenResolutionsbeweis anzugeben.
Aber: Resolutionsbeweise konnen exponentielle Große haben(Ubung). Im Vergleich: Zeugen fur Erfullbarkeit (Modelle) habenhochstens lineare Große.
Beweissuche im Resolutionskalkul fur Klauselmenge K:
K0 := KKn+1 := Kn ∪ Res(Kn)
Iteration bis ∅ als Resolvente auftritt oder Kn+1 = Kn fur ein n gilt.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 93
Sequenzen
Zum Abschluss des Kapitels uber Aussagenlogik behandeln wirnoch Gentzens Sequenzenkalkul.
Charakterisiert logische Folgerungsbeziehung syntaktisch.
Def.: Seien ϕ,ψ Formeln. ψ folgt aus ϕ, geschrieben ϕ |= ψ, fallsfur alle I gilt: wenn I |= ϕ dann I |= ψ.
Beachte: ϕ |= ψ gdw. ϕ→ ψ allgemeingultig
Def.: Eine Sequenz ist ein Paar Γ =⇒ ∆ vonFormel(multi)mengen. Γ heißt Antezedens, ∆ Sukzedens.Vereinfachte Schreibweise ohne Mengenklammern, etc.:ϕ1, . . . , ϕn =⇒ ψ1, . . . , ψm
Def.: Γ =⇒ ∆ ist gultig, falls∧
Γ |=∨
∆.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 94
Beispiele
Bsp.: welche der folgenden Sequenzen sind gultig?
1 A,A → B =⇒ B
2 ¬A,¬B =⇒ A,B
3 A,A → B =⇒ ∅
4 A,¬A =⇒ B
5 A → B,B → C ,A =⇒ C
6 A ∧ B → C ,A =⇒ B → C
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 95
Folgerung und Allgemeingultigkeit
Bereits oben gesehen: Folgerung kann mithilfe vonAllgemeingultigkeit ausgedruckt werden:
Γ =⇒ ∆ gultig gdw.∧
Γ →∨
∆ allgemeingultig
Umkehrung gilt ebenfalls:
Lemma: ϕ ist allgemeingultig gdw. die Sequenz ∅ =⇒ ϕ gultig ist.
Beweis: “⇒” Angenommen, ∅ =⇒ ϕ ist nicht gultig. Dannexistiert I, so dass I |=
∧∅ und I 6|=
∨{ϕ}. Beachte:
∨{ϕ} ≡ ϕ,
also ist ϕ nicht allgemeingultig.
“⇐” Angenommen, ∅ =⇒ ϕ ist gultig, d.h. fur alle I gilt: I 6|=∧∅
oder I |=∨{ϕ}. Da
∧∅ ≡ tt muss also I |= ϕ fur alle I gelten.
Somit ist ϕ allgemeingultig.
Also auch: ϕ =⇒ ∅ gultig gdw. ϕ unerfullbar.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 96
Beweise im Sequenzenkalkul
Ziel: Formalismus (“Sequenzenkalkul”), der genau die gultigenSequenzen charakterisiert
Def.: Ein Beweis im Sequenzenkalkul fur eine Sequenz Γ =⇒ ∆ istein endlicher Baum, dessen
• Wurzel mit Γ =⇒ ∆ beschriftet ist,
• Blatter mit Axiomen beschriftet sind,
• innere Knoten mit ihren Sohnen Instanzen von Beweisregelnsind.
Beweisregeln haben die Form
Γ1 =⇒ ∆1 . . . Γn =⇒ ∆n
Γ =⇒ ∆(Name)
Γi =⇒ ∆i heißen Pramissen, Γ =⇒ ∆ Konklusion
Axiom = Beweisregel ohne Pramissen
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 97
Axiome und Regeln des Sequenzenkalkuls
Axiome:
Γ, ff =⇒ ∆(ffL)
Γ =⇒ ∆, tt(ttR)
Γ, ϕ =⇒ ∆, ϕ(Ax)
Beweisregeln:
Γ, ϕ, ψ =⇒ ∆
Γ, ϕ ∧ ψ =⇒ ∆(∧L)
Γ =⇒ ∆, ϕ Γ =⇒ ∆, ψ
Γ =⇒ ∆, ϕ ∧ ψ (∧R)
Γ, ϕ =⇒ ∆ Γ, ψ =⇒ ∆
Γ, ϕ ∨ ψ =⇒ ∆(∨L)
Γ =⇒ ∆, ϕ, ψ
Γ =⇒ ∆, ϕ ∨ ψ (∨R)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 98
Beweisregeln des Sequenzenkalkuls
Γ =⇒ ∆, ϕ
Γ,¬ϕ =⇒ ∆(¬L)
Γ, ϕ =⇒ ∆
Γ =⇒ ∆,¬ϕ (¬R)
Γ =⇒ ∆, ϕ Γ, ψ =⇒ ∆
Γ, ϕ→ ψ =⇒ ∆(→L)
Γ, ϕ =⇒ ∆, ψ
Γ =⇒ ∆, ϕ→ ψ(→R)
Γ =⇒ ∆
Γ, tt =⇒ ∆(ttL)
Γ =⇒ ∆
Γ =⇒ ∆, ff(ffR)
Es fehlen noch 2 Regeln fur ↔ (Ubung)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 99
Beispiel
(Ax)ψ1, ψ2 =⇒ ϕ,ψ1
(∨R)ψ1, ψ2 =⇒ ϕ ∨ ψ1
(Ax)ψ1, ψ2 =⇒ ϕ,ψ2
(∨R)ψ1, ψ2 =⇒ ϕ ∨ ψ2
(∧R)ψ1, ψ2 =⇒ (ϕ ∨ ψ1) ∧ (ϕ ∨ ψ2)
(∧L)ψ1 ∧ ψ2 =⇒ (ϕ ∨ ψ1) ∧ (ϕ ∨ ψ2)
(Ax)ϕ =⇒ ϕ,ψ1
(∨R)ϕ =⇒ ϕ ∨ ψ1
(Ax)ϕ =⇒ ϕ,ψ2
(∨R)ϕ =⇒ ϕ ∨ ψ2
(∧R)ϕ =⇒ (ϕ ∨ ψ1) ∧ (ϕ ∨ ψ2)
(∨L)ϕ ∨ (ψ1 ∧ ψ2) =⇒ (ϕ ∨ ψ1) ∧ (ϕ ∨ ψ2)
(→R)∅ =⇒ ϕ ∨ (ψ1 ∧ ψ2) → (ϕ ∨ ψ1) ∧ (ϕ ∨ ψ2)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 100
Axiomen- und Ableitungslemma
Ziel: zeige, dass im Sequenzenkalkul genau die gultigen Sequenzenbeweisbar sind
dazu brauchen wir lediglich drei Lemmas
Lemma: (Axiomenlemma I) Jede Sequenz Γ =⇒ ∆, die ein Axiomist, ist gultig.
Beweis: Leicht zu sehen fur Axiome (ffL) und (ttR). Betrachtenoch Axiom (Ax) mit Γ, ϕ =⇒ ∆, ϕ. Sei I Interpretation. Zu zg.:Wenn I |=
∧Γ ∪ {ϕ} dann I |=
∨∆ ∪ {ϕ}.
Angenommen, I |=∧
Γ ∪ {ϕ}. Dann gilt insbesondere I |= ϕ undsomit auch I |= ϕ ∨
∨∆ bzw. I |=
∨∆ ∪ {ϕ}.
Lemma: (Ableitungslemma) Fur alle Regeln des Sequenzenkalkulsgilt: Die Konklusion ist gultig gdw. alle Pramissen gultig sind.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 101
Beweis des Ableitungslemmas
Beweis Wir zeigen dies exemplarisch fur die Regeln (∧L) und(∧R).
Fall (∧L). Dies ist trivial, da∧
Γ ∪ {ϕ ∧ ψ} ≡∧
Γ ∪ {ϕ,ψ}.
Fall (∧R). Zur Erinnerung: Konklusion K = Γ =⇒ ∆, ϕ ∧ ψ,Pramissen sind P1 = Γ =⇒ ∆, ϕ und P2 = Γ =⇒ ∆, ψ.
“⇒” Angenommen, eine der beiden Pramissen ist ungultig. Sei diesP1. Der Fall mit P2 ist analog. Dann ex. I, so dass I |=
∧Γ und
I 6|=∨
∆ ∪ {ϕ}. Daraus folgt insbesondere, dass I 6|=∨
∆ undI 6|= ϕ. Somit gilt dann aber auch I 6|= ϕ ∧ ψ. Zusammengefasst:I |=
∧Γ und I 6|=
∨∆ ∪ {ϕ ∧ ψ}. Also ist K nicht gultig.
“⇐” Angenommen, die Konklusion ist ungultig. Also gibt es I, sodass I |=
∧Γ und I 6|=
∨∆ ∪ {ϕ ∧ ψ}. Insbesondere gilt
I 6|= ϕ ∧ ψ, also I 6|= ϕ oder I 6|= ψ. Dann gilt auchI 6|=
∨∆ ∪ {ϕ} oder I 6|=
∨∆ ∪ {ψ}. Also ist entweder P1
ungultig oder P2 ungultig.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 102
Korrektheit des Sequenzenkalkuls
Theorem 15
Jede im Sequenzenkalkul beweisbare Sequenz ist gultig.
Beweis: Angenommen es ex. Beweis fur Γ =⇒ ∆. Wir zeigen perInduktion uber die Hohe h des Beweisbaums, dass Γ =⇒ ∆ gultigist.
Induktionsanfang h = 0. Dann ist Γ =⇒ ∆ ein Axiom und lautAxiomenlemma I gultig.
Induktionsschritt. Sei h > 0. Dann gibt es eine Beweisregel mitPramissen P1, . . . ,Pn, zu denen Γ =⇒ ∆ Konklusion ist. Beachte:Jedes Pi ist beweisbar im Sequenzenkalkul mit einem Beweis derHohe < h. Nach Induktionsvoraussetzung sind alle Pi somit gultig.Mit dem Ableitungslemma folgt dann, dass auch Γ =⇒ ∆ gultigsein muss. �
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 103
Vorbereitung auf die Vollstandigkeit
Lemma: (Axiomenlemma II) Angenommen Γ,∆ ⊆ V. Dann istΓ =⇒ ∆ gultig gdw. Γ ∩∆ 6= ∅.
Beweis: “⇒” Angenommen, Γ∩∆ = ∅. Wir zeigen, dass Γ =⇒ ∆ungultig ist, indem wir eine falsifizierende Interpretation angeben.
I(A) :=
{1 , falls A ∈ Γ
0 , sonst
Aufgrund der Voraussetzung gilt I(B) = 0 fur alle B ∈ ∆. Alsogilt
I |=∧
Γ und I 6|=∨
∆
und somit ist Γ =⇒ ∆ nicht gultig.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 104
Maß einer Sequenz
Ziel: Umkehrung von Thm. 15 (gultige Sequenzen sind beweisbar)
schwierig, denn “fur alle Interpretationen . . .⇒ es gibt Beweis . . . ”
Intuition: auf gultige Sequenzen lassen sich Beweisregeln sinnvollanwenden, so dass am Ende ein Beweis entstanden ist
Was heißt “am Ende”? Wir mussen irgendwie zeigen, dass dieserProzess auch terminiert.
Def.: (Maß) ||Γ −→ ∆|| :=∑ϕ∈Γ
||ϕ||+∑ϕ∈∆
||ϕ||, wobei
||tt|| = ||ff|| := 1
||A|| := 0
||¬ϕ|| := 1 + ||ϕ||||ϕ ∧ ψ|| = ||ϕ ∨ ψ|| = ||ϕ→ ψ|| = ||ϕ↔ ψ|| := 1 + ||ϕ||+ ||ψ||
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 105
Vollstandigkeit des Sequenzenkalkuls
Theorem 16
Jede gultige Sequenz ist im Sequenzenkalkul beweisbar.
Beweis: Sei Γ =⇒ ∆ gultig. Wir zeigen, dass es auch beweisbarist durch Induktion uber j = ||Γ =⇒ ∆||.
Induktionsanfang, j = 0. Dann besteht Γ ∪∆ nur aus Variablen.Nach dem Axiomenlemma II gilt Γ ∩∆ 6= ∅. Dann ist Γ =⇒ ∆Instanz von (Ax) und somit beweisbar.
Induktionsschritt, j > 0. Also existiert noch mindestens ein Junktoroder eine Konstante in Γ ∪∆. Wir unterscheiden zwei Falle.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 106
Vollstandigkeit des Sequenzenkalkuls
1 ff ∈ Γ oder tt ∈ ∆. Dann ist Γ =⇒ ∆ Instanz von (ffL) oder(ttR) und somit beweisbar.
2 Sonst. Da j > 0 muss mindestens eine Beweisregel anwendbarsein. Nach dem Ableitungslemma sind alle entstehendenPramissen gultig. Außerdem ist deren Maß jeweils echt kleinerals j . Nach Induktionshypothese sind diese beweisbar. DurchVerknupfung derer Beweisbaume erhalt man einen Beweis furΓ =⇒ ∆.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 107
Beweissuche
Der Sequenzenkalkul ermoglicht es, automatisch festzustellen, obeine gegebene Formel allgemeingultig ist. Systematisch wendetman Regeln auf die Sequenz ∅ =⇒ ϕ an, um einen Beweisbaum zukonstruieren.
Alle Pfade enden in Axiomen Beweis gefunden. Ein Pfad endetin Sequenz, die kein Axiom ist und auf die keine Regel angewandtwerden kann kein Beweis moglich.
Beachte: Die Regel selbst verlangen zwar keine Auswahl seitens desBenutzers; auf eine Sequenz konnen jedoch i.A. mehrere Regelnangewandt werden. Reihenfolge der Regelanwendungen unerheblichdafur, ob Beweis gefunden wird oder nicht.
Sie kann aber die Große des gefundenen Beweises beeinflussen.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 108
Beispiel
A =⇒ A,B,C
B =⇒ A,B,C C =⇒ A,B,C(∨L)
(B ∨ C ) =⇒ A,B,C(∨L)
A ∨ (B ∨ C ) =⇒ A,B,C(∨R)
A ∨ (B ∨ C ) =⇒ A ∨ B,C(∨R)
A ∨ (B ∨ C ) =⇒ (A ∨ B) ∨ C
A =⇒ A,B,C(∨R)
A =⇒ A ∨ B,C(∨R)
A =⇒ (A ∨ B) ∨ C
B =⇒ A,B,C(∨R)
B =⇒ A ∨ B,C(∨R)
B =⇒ (A ∨ B) ∨ C
C =⇒ A,B,C(∨R)
C =⇒ A ∨ B,C(∨R)
C =⇒ (A ∨ B) ∨ C(∨L)
B ∨ C =⇒ (A ∨ B) ∨ C(∨L)
A ∨ (B ∨ C ) =⇒ (A ∨ B) ∨ C
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 109
Herleitbarkeit
Def.: Eine Regel mit Pramissen P1, . . . ,Pn und Konklusion Kheißt herleitbar, wenn es einen Beweis fur K gibt, der P1, . . . ,Pn
als Axiome benutzt.
Bsp.: Die folgenden Regeln sind z.B. im Sequenzenkalkulherleitbar.
Γ =⇒ ∆, ϕ1 . . . Γ =⇒ ∆, ϕn
Γ =⇒ ∆, ϕ1 ∧ . . . ∧ ϕn(∧∗R)
Γ, ϕ, ψ =⇒ ∆
Γ =⇒ ∆,¬(ϕ ∧ ψ)(NANDR)
Herleitbare Regeln konnen die Beweissuche vereinfachen.Außerdem sollte folgendes offensichtlich sein.
Thm.: Sei S der Sequenzenkalkul mit zusatzlichen, herleitbarenRegeln. Dann ist eine Sequenz in S beweisbar, gdw. sie gultig ist.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 110
Zulassigkeit
Def.: Eine Regel heißt zulassig, wenn sich im Sequenzenkalkul mitdieser Regel dieselben Sequenzen beweisen lassen wie ohne dieseRegel.
Bsp.: Die folgenden Regeln sind z.B. zulassig aber nicht herleitbar!
Γ =⇒ ∆
Γ, ϕ =⇒ ∆(WeakL)
Γ =⇒ ∆
Γ =⇒ ∆, ϕ(WeakR)
Γ =⇒ ∆, ϕ Γ, ϕ =⇒ ∆
Γ =⇒ ∆(Cut)
Beachte: Regel (Cut) zusammen mit (¬L) drucktFallunterscheidung aus.
Bem.: Jede herleitbare Regel ist zulassig. Nicht jede zulassigeRegel ist herleitbar.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 111
Cut-Elimination
Betrachte Verallgemeinerung von (Cut):
Γ =⇒ ∆, ϕ Γ, ϕ =⇒ ∆
Γ =⇒ ∆(Cut)
Γ =⇒ ∆, ϕ Θ, ϕ =⇒ Ψ
Γ,Θ =⇒ ∆,Ψ(Cut∗)
Lemma: (Cut/Axiomen-Lemma) Sind die Pramissen der Regel(Cut∗) Axiome, so ist die Konklusion auch bereits ein Axiom.
Beweis: Durch Analyse aller moglichen Falle, z.B.
• Ist ff ∈ Γ, so ist auch ff ∈ Γ ∪Θ.
• Ist ff ∈ Θ ∪ {ϕ}, dann gilt: Ist ff ∈ Θ, so auch ff ∈ Γ ∪Θ.Ist ϕ = ff, dann benutzen wir die Tatsache, dass Γ =⇒ ∆, ϕauch Axiom ist. Dann kann nur noch tt ∈ ∆ oder Γ ∩∆ 6= ∅gelten. In beiden Fallen ist die Konklusion ebenfalls Axiom.
• . . .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 112
Cut-Elimination
Theorem 17
Die Regel (Cut) ist zulassig.
Beweis: Zeige starkeres Resultat: (Cut∗) ist zulassig. (Beachte:(Cut) ist Vereinfachung von (Cut∗).)
Angenommen, es gibt einen Beweis fur eine Sequenz, der (Cut∗)benutzt. Dieser lasst sich zu einem Beweis umbauen, der (Cut∗)nur an den Blattern benutzt. Dazu vertauschen wir die Anwendungvon (Cut∗) mit der Anwendung einer Regel daruber, hierexemplarisch gezeigt fur (∨R) und (∨L).
...
Γ =⇒ ∆, ϕ
...
Θ, ϕ =⇒ Ψ, ψ1, ψ2(∨R)
Θ, ϕ =⇒ Ψ, ψ1 ∨ ψ2(Cut∗)
Γ,Θ =⇒ ∆,Ψ, ψ1 ∨ ψ2
...
...
Γ =⇒ ∆, ϕ
...
Θ, ϕ =⇒ Ψ, ψ1, ψ2(Cut∗)
Γ,Θ =⇒ ∆,Ψ, ψ1, ψ2(∨R)
Γ,Θ =⇒ ∆,Ψ, ψ1 ∨ ψ2
...
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 113
Beweis der Cut-Elimination...
Γ, γ1 =⇒ ∆, ϕ
...
Γ, γ2 =⇒ ∆, ϕ(∨L)
Γ, γ1 ∨ γ2 =⇒ ∆, ϕ
...
Θ, ϕ =⇒ Ψ(Cut∗)
Γ, γ1 ∨ γ2,Θ =⇒ ∆,Ψ
...
...
Γ, γ1 =⇒ ∆, ϕ
...
Θ, ϕ =⇒ Ψ(Cut∗)
Γ, γ1,Θ =⇒ ∆,Ψ
...
Γ, γ2 =⇒ ∆, ϕ
...
Θ, ϕ =⇒ Ψ(Cut∗)
Γ, γ2,Θ =⇒ ∆,Ψ(∨L)
Γ, γ1 ∨ γ2,Θ =⇒ ∆,Ψ
...
So entsteht also ein Beweis, in dem Regel (Cut∗) nur unterAxiomen (und wiederum darunter) vorkommt. Aus demCut/Axiomen-Lemma folgt dann, dass diese auch alle weggelassenwerden konnen.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.7 Aussagenlogik – Der Sequenzen-Kalkul 114
PVS
PVS ist ein Theorembeweiser, in dem der Sequenzenkalkulimplementiert ist.
frei verhaltlich von http://pvs.csl.sri.com/
Zum manuellen Beweisen von aussagenlogischen Sequenzenreichen die Befehle
• (flatten), wendet Regeln mit einer Pramisse an, z.B.(∨R),(∧L), etc.
• (split n ), wendet Regel mit zwei Pramissen auf n-te Formelin der Sequenz an, z.B. (∨L), (∧R), etc.
Pradikatenlogik 1. Stufe
I Strukturen
I Syntax und Semantik
I Normalformen
I Sequenzenkalkul
I Fundamentale Satze
I (Un-)Entscheidbarkeit
I Ausdrucksstarke
I Resolution
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.1 Pradikatenlogik – Strukturen 145
Schwache der Aussagenlogik
Aussagenlogik hat zwar Vorteile (z.B. Entscheidbarkeit mittelsSequenzenkalkul, Resolution, DPLL, etc.), ist jedoch fur vieleAnwendungen nicht ausdrucksstark genug.
Wie z.B. formalisieren:
• “Jede Quadratzahl ist positiv” und “25 ist Quadratzahl”, also“25 ist positiv”. Ist offensichtlich richtig, hat aber StrukturA ∧ B → C . Abstraktion in reine Aussagen verdeckt hier denGrund fur die Wahrheit.
• “Partielle Ordnung (M,≤) ist total”.∧
x ,y∈M
Ax ,y ∨ Ay ,x
funktioniert nur fur endliche Mengen M. Außerdemwunschenswert: eine Formel, die dies fur alle partiellenOrdnungen besagt.
Interpretation, die lediglich Aussagenvariablen Wahrheitswertezuordnen, reichen dann nicht aus.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.1 Pradikatenlogik – Strukturen 146
Signaturen
Def.: Signatur τ ist Menge/Liste von Relationssysmbolen R undFunktionssymbolen f , jeweils mit Stelligkeit st(R), st(f ) ≥ 0.Null-stellige Funktionssymbole heißen Konstanten, null-st.Relationssymbole Propositionen.
Bsp.:
• τ<ar = (<,+, ·, 0, 1) ist Signatur der geordneten Arithmetik mit< 2-st. Relationssymbol, +, ∗ 2-st. Funktionssysmbole, 0, 1Konstanten.
• τar = (+, ·, 0, 1) wie oben ist Signatur der Arithmetik.
• τGr = (E ) ist Signatur der Graphen.
• τVR = (+, 0, (·k)k∈K ) ist Signatur der Vektorraume uberKorper K .
• . . .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.1 Pradikatenlogik – Strukturen 147
τ -Strukturen
Def. Sei τ = (R1, . . . ,Rn, f1, . . . , fm). Eine τ -Struktur ist einA = (A,RA
1 , . . . ,RAn , f
A1 , . . . , f Am ), wobei
• A nicht-leere Menge, genannt Universum von A
• RAi ⊆ A× . . .× A︸ ︷︷ ︸
st(Ri )
fur i ∈ {1, . . . , n}
• f Ai : A× . . .× A︸ ︷︷ ︸st(fi )
→ A fur i ∈ {1, . . . ,m}
Beachte Unterscheidung zwischen Relationssymbol R undkonkreter Relation RA in A.
Bsp.:
• (N,+, ·, 0, 1, <) ist τ<ar -Struktur.
• ({•}, f , g , c , d ,R) mit f (•, •) = g(•, •) = • = c = d undR(•, •) oder R = ∅ ist jeweils ebenfalls τ<ar -Struktur.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.1 Pradikatenlogik – Strukturen 148
Beispiele
• τLTS = ((a−→)a∈Act ,P1, . . . ,Pn), wobei Act endliche Menge
von Aktionennamen,a−→ jeweils 2-st., Pi einstellige
Relationen (Pradikate)
τLTS -Struktur ist beschriftetes Transitionssystem; modelliertoperationale Semantik eines Programms:
a−→ istUbergangsrelation zwischen Zustanden (z.B. “Eintritt inMethode f”), Pi beschreibt, was in einzelnen Zustanden gilt(z.B. “Programmvariable x hat Wert im erlaubten Bereich”).
• relationale Datenbank mit Tabellen T1, . . . ,Tn als τ -Strukturmit entsprechendem τ
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Pradikatenlogik – Syntax und Semantik 149
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 istauch 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
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Pradikatenlogik – Syntax und Semantik 150
Formeln
Def.: Formeln der Pradikatenlogik 1. Stufe mit Gleichheit (FO)sind induktiv aufgebaut:
• Sind t1, t2 Terme, so ist t1.= t2 Formel.
• Sind t1, . . . , tn Terme, so ist R(t1, . . . , tn) Formel, fallsst(R) = n.
• Sind ϕ,ψ Formeln, so auch ¬ϕ, ϕ ∨ ψ, ϕ ∧ ψ, ϕ→ ψ,
• Ist ϕ Formel und x Variable, so sind auch ∃x ϕ und ∀x ϕFormeln.
verwende ϕ↔ ψ als Abkurzung fur (ϕ→ ψ) ∧ (ψ → ϕ)
Bem.: “erststufig” bedeutet: Quantifizierung nur uber Elementedes Universums, nicht jedoch uber Teilmengen, Funktionen,Relationen, etc.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Pradikatenlogik – Syntax und Semantik 151
Prazedenzen
Prazedenzregeln, um Mehrdeutigkeiten zu vermeiden:
1 ¬2 ∧3 ∨4 →5 ∃, ∀
Klammern, um Prazedenzen zu umgehen, z.B. (ϕ ∨ ψ) ∧ χ
Punktnotation fur “offende Klammer hier, schließende so weitrechts wie moglich”, z.B.
∃x .∀y .R(f (x , y)) → ∀z .z .= f (x , y)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Pradikatenlogik – Syntax und Semantik 152
Freie Variablen
Def.: frei(ϕ) bezeichnet die in ϕ frei, d.h. nicht durch einenQuantor ∃ oder ∀ gebundenen, vorkommenden Variablen.
Bsp.: frei((∀y R(x , f (c , y))) ∨ ∃x .¬(y
.= f (d , x))
)= {x , y}!
Ubung: Definiere frei(ϕ) induktiv uber den Term- undFormelaufbau.
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 auszudrucken, dassfrei(ϕ) ⊆ {x1, . . . , xn}.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Pradikatenlogik – Syntax und Semantik 153
Substitutionen
Def.: ϕ[t/x ] bezeichnet simultanes Ersetzen aller freienVorkommen der Variable x in ϕ durch den Term t, wobeiquantifizierte Variablen, die auch in t vorkommen, in ϕ eindeutigumbenannt werden.
Bsp.:(∀y .(∃x .R(x , z))∧Q(x , y)
)[f (y)/x ] = ∀v .(∃x .R(x , z))∧Q(f (y), v)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Pradikatenlogik – Syntax und Semantik 154
Interpretationen fur Terme
Aussagenlogik: Interpretation = Belegung der Aussagenvariablen.Hier offensichtlich nicht ausreichend, um einer Formel einenWahrheitswert zuzuordnen.
Def.: Eine Interpretation einer FO-Formel uber der Signatur τ istein I = (A, ϑ), wobei A τ -Struktur mit Universum A undϑ : V → A ist. Dies induziert gleich auch eine Interpretation allerTerme.
[[x ]]Aϑ := ϑ(x)
[[f (t1, . . . , tn)]]Aϑ := f A([[t1]]
Aϑ , . . . , [[tn]]
Aϑ )
Bsp.:
• A = (N,+, ·, 0, 1), ϑ(x) = 3, ϑ(y) = 4. Dann ist[[(x ∗ (1 + y)) + 0]]Aϑ = 15.
• B = ({0, 1},∨,∧, 0, 1). ϑ(x) = 1, ϑ(y) = 0. Dann ist[[(x ∗ (1 + y)) + 0]]Bϑ = 1.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Pradikatenlogik – Syntax und Semantik 155
. . . und fur Formeln
Def.: Sei I = (A, ϑ), A Universum von A, c ∈ A. Mit ϑ[x 7→ c]bezeichnen wir den ublichen Update von ϑ an der Stelle x auf c .
I ist Modell von ϕ, wenn I |= ϕ gilt, wobei
A, ϑ |= t1.= t2 gdw. [[t1]]
Aϑ = [[t2]]
Aϑ
A, ϑ |= R(t1, . . . , tn) gdw. ([[t1]]Aϑ , . . . , [[tn]]
Aϑ ) ∈ RA
A, ϑ |= ¬ϕ gdw. A, ϑ 6|= ϕ
A, ϑ |= ϕ ∧ ψ gdw. A, ϑ |= ϕ und A, ϑ |= ψ
A, ϑ |= ϕ ∨ ψ gdw. A, ϑ |= ϕ oder A, ϑ |= ψ
A, ϑ |= ϕ→ ψ gdw. wenn A, ϑ 6|= ϕ dann A, ϑ |= ψ
A, ϑ |= ∃x ϕ gdw. es gibt c ∈ A mit A, ϑ[x 7→ c] |= ϕ
A, ϑ |= ∀x ϕ gdw. fur alle c ∈ A gilt A, ϑ[x 7→ c] |= ϕ
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Pradikatenlogik – Syntax und Semantik 156
Erfullbarkeit, Aquivalenz, etc.
Die Begriffe Erfullbarkeit, Allgemeingultigkeit und Aquivalenz (≡),Erfullbarkeitsaquivalenz (≡sat) sind wie bei der Aussagenlogikdefiniert.
Beachte: Interpretation ist Paar aus Struktur undVariablenbelegung. Also ist z.B. ∃x R(x , y) erfullbar trotz freierVariablen.
Insbesondere ist ϕ erfullbar gdw. ¬ϕ nicht allgemeingultig ist.
Bsp.: Neben den ublichen aussagenlogischen Aquivalenzen geltenweitere, z.B.
• ∃x ϕ ≡ ¬∀x ¬ϕ• ∃x ∃y ϕ ≡ ∃y ∃x ϕ• ∃x ϕ ≡ ∃y ϕ[y/x ]
• (∃x ϕ) ∨ ∃x ψ ≡ ∃x (ϕ ∨ ψ)
• . . .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Pradikatenlogik – Syntax und Semantik 157
Die Theorie einer Strukturklasse
Wir untersuchen kurz Beziehungen zwischen Klassen vonStrukturen und Klassen von Formeln.
Def.: Sei K eine Klasse von τ -Strukturen. Ihre (FO-)Theorie istTh(K) := {ϕ | ϕ ist FO-Satz und A |= ϕ fur alle A ∈ K}.
Bsp.: Sei KGruppe die Klasse aller Gruppen. Dann ist
∀x .(∃y .x ◦ y.= 1) → y
.= i(x) ∈ Th(KG )
denn inverse Elemente in Gruppen sind eindeutig.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Pradikatenlogik – Syntax und Semantik 158
Definierbarkeit
Def.: Sei Φ eine Menge von Satzen uber einer Signatur τ . IhreModellklasse ist Mod(Φ) := {A | A ist τ -Struktur und A |= ϕ furalle ϕ ∈ Φ}.
Bsp.: τ = (◦, i , 1),
Φ = {∀x .∀y .∀z .(x◦y)◦z .= x◦(y◦z), ∀x .x◦i(x)
.= 1, ∀x .x◦1 .
= x}
Was ist Mod(Φ)?
Bsp.: τ = (R)
Φ = {∀x .∀y .R(x , y) ↔ R(y , x), ∀x .¬R(x , x)}
Was ist Mod(Φ)?
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Pradikatenlogik – Syntax und Semantik 159
Definierbarkeit von Relationen
Def.: Eine n-stellige Relation R heißt definierbar in derStrukturklasse K, wenn es eine Formel ϕ(x1, . . . , xn) gibt, so dassfur alle A ∈ K mit Universum A und alle a1, . . . , an ∈ A gilt:
(a1, . . . , an) ∈ RA gdw. A, [x1 7→ a1, . . . , xn 7→ an] |= ϕ
Bsp.: Sei K = {(R,+, ·, 0, 1)} mit ublicher Bedeutung. Dann istdie ubliche totale Ordnung < darin definierbar.
ϕ<(x , y) := ∃z .¬(z.= 0) ∧ y
.= x + z · z
Bsp.: τ = (ChildOf ,SiblingOf ,Male,Female). Dann ist z.B. die2-stellige Relation des Onkel-Seins definierbar.
UncleOf (x , y) = ∃z .ChildOf (y , z) ∧ Sibling(x , z) ∧Male(x)
Bem.: Relation des Verwandt-Seins ist nicht definierbar. Aber wiezeigt man das?
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.2 Pradikatenlogik – Syntax und Semantik 160
Die Sonderrolle der Gleichheit
Beachte: Gleichheit (=) ist zweistellige Relation auf Universum.Warum wird diese dann gesondert behandelt, d.h. kommt nicht inden Signaturen aber in Formeln (als
.=) vor?
Antwort: Dann konnte die Relation “.=” irgendwie interpretiert
werden.
Bsp.: ∃x ∃y ∃z .x .= y ∧ y
.= z ∧ ¬(x
.= z) ware dann erfullbar.
Dies widerspricht jedoch der Intuition von Gleichheit, die jamodelliert werden soll.
Es reicht selbst nicht, wenn man verlangt, dass.= immer reflexiv,
transitiv und symmetrisch sein soll, da es auch grobereAquivalenzrelationen als die Gleichheit gibt.
Gleichheit ist auch nicht definierbar.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.3 Pradikatenlogik – Normalformen 161
Normalformen
Wie bei der Aussagenlogik lassen sich Formeln wieder in dazuaquivalente umwandeln, die eine bestimmte Form haben.
Achtung: verschiedene Aquivalenzbegriffe moglich, z.B. starkeAquivalenz ≡ oder Erfullbarkeitsaquivalenz ≡sat
Normalformen vereinfachen haufig Beweise
hier:
• positive Normalform
• Pranex-Normalform
• Skolem-Normalform
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.3 Pradikatenlogik – Normalformen 162
Positive Normalform
Def.: Eine Formel ϕ ist in positiver Normalform, wenn dasNegationssymbol in ihr nur unmittelbar vor atomaren Formeln derForm t1
.= t2 oder R(t1, . . . , tn) vorkommt. Als Operatoren sind
nur ∧, ∨, ∃, ∀ erlaubt.
Theorem 18
Fur jedes ϕ ∈ FO existiert ψ in positiver Normalform, so dassϕ ≡ ψ und |ψ| = O(|ϕ|).
Beweis: Ubung.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.3 Pradikatenlogik – Normalformen 163
Pranex-Normalform
Def.: ϕ ist in Pranex-Normalform, falls
ϕ = Q1x1 Q2x2 . . .Qnxn χ
wobei Q1, . . . ,Qn ∈ {∃,∀} und χ quantorenfrei.
Theorem 19
Fur jedes ϕ ∈ FO gibt es ψ in Pranex-Normalform, so dass ψ ≡ ϕund |ψ| = O(|ϕ|).
Beweis: O.B.d.A. sei ϕ in positiver Normalform. Konstruktionvon ψ per Induktion uber den Aufbau von ϕ. Klar, falls ϕ atomaroder von der Form ∃x ϕ′ oder ∀x ϕ′.
Sei ϕ = ϕ1 ∨ ϕ2. Nach Hypothese gibt es ψ1, ψ2 inPranex-Normalform, mit ϕi ≡ ψi .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.3 Pradikatenlogik – Normalformen 164
Umwandlung in Pranex-Normalform
Seien
ψ1 = Q1x1 . . .Qnxn ψ′1 ψ2 = Q ′
1y1 . . .Q′mym ψ
′2
Durch evtl. Umbenennen von gebundenen Variablen undEliminieren von Quantoren uber unbenutzten Variablen kann manerreichen, dass
• xi ∈ frei(ψ′1) \ frei(ψ′2) fur alle i = 1, . . . , n,
• yi ∈ frei(ψ′2) \ frei(ψ′1) fur alle i = 1, . . . ,m.
Durch sukzessives Anwenden der Aquivalenzen
(Qx ϕ) ∨ ψ ≡ Qx (ϕ ∨ ψ) falls x 6∈ frei(ψ)
sieht man, dass z.B.
ψ1 ∨ ψ2 ≡ Q1x1 . . .Qnxn Q ′1y1 . . .Q
′mym.ψ
′1 ∨ ψ′2
Der Fall ϕ = ψ1 ∧ ψ2 ist analog.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.3 Pradikatenlogik – Normalformen 165
Skolem-Normalform
Die obigen Normalformen beziehen sich auf echte Aquivalenz, dieSkolem-Normalform jedoch “nur” auf Erfullbarkeitsaquivalenz.
Def.: ϕ ist in Skolem-Normalform, falls
ϕ = ∀x1 . . .∀xn ψ
wobei ψ quantorenfrei ist.
Theorem 20
Zu jedem τ -Satz ϕ existiert eine τ ′-Formel ψ inSkolem-Normalform mit τ ′ ⊇ τ , so dass ϕ ≡sat ψ und|ψ| = O(|ϕ|).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.3 Pradikatenlogik – Normalformen 166
Konstruktion der Skolem-Normalform
Beweis: O.B.d.A. sei ϕ in Pranex-Normalform. Falls kein ∃ imQuantorenprafix vorkommt, dann ist ϕ bereits inSkolem-Normalform. Betrachte das außerste ∃. Sei also
ϕ = ∀x1 . . .∀xi−1 ∃xi ψ
Achtung: ψ ist nicht unbedingt quantoren-frei!
Sei f ein Funktionssymbol, welches nicht in τ vorkommt. Definieredieses als (i − 1)-stellig und
ϕ′ := ∀x1 . . .∀xi−1 ψ[f (x1, . . . , xi−1)/xi ]
Behauptung: ϕ erfullbar gdw. ϕ′ erfullbar (Ubung).
Dies wird solange iteriert, bis alle Existenzquantoren eliminiertsind.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.3 Pradikatenlogik – Normalformen 167
Redukte und die Skolem-Normalform
Def.: Seien τ, τ ′ Signaturen mit τ ⊆ τ ′. Seien A τ -Struktur und Bτ ′-Struktur. Dann ist A τ -Redukt von B, falls ihre Universen gleichsind und die Interpretation aller Funktions- und Relationssymboleaus τ in A mit denen in B ubereinstimmt.
Bsp.: (N,+, 0) ist (+, 0)-Redukt von (N,+, ·, 0, 1).
leicht zu sehen:
Theorem 21
Sei ψ Skolem-Normalform von einer τ -Formel ϕ. Jedes τ -Redukteines Modells von ψ ist Modell von ϕ.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 168
Der Sequenzenkalkul
Wie bei der Aussagenlogik lernen wir eine Charakterisierung derlogischen Schlussfolgerung kennen: den Sequenzenkalkul fur diePradikatenlogik.
Sequenzen sind wiederum von der Form Γ =⇒ ∆, wobei Γ alsKonjunktion und ∆ als Disjunktion angesehen wird.
Eine Sequenz ist wiederum gultig, falls (∧
Γ) →∨
∆allgemeingultig ist.
Der Sequenzenkalkul fur FO ist eine Erweiterung desSequenzenkalkuls fur die Aussagenlogik. D.h. alle Axiome undRegeln dessen bleiben bestehen.
Die Frage ist insbesondere, wie mit Quantoren, Variablen und derGleichheit umzugehen ist.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 169
Kontraktion
Kontraktion bedeutet das Vervielfaltigen von Formeln imAntezedens oder Sukzedens, wenn man von der Konklusion zurPramisse ubergeht.
Γ, ϕ, ϕ =⇒ ∆
Γ, ϕ =⇒ ∆(KontrL)
Γ =⇒ ∆, ϕ, ϕ
Γ =⇒ ∆, ϕ(KontrR)
Behauptung: Beide Regeln sind korrekt (Pramisse gultig ⇒Konklusion gultig) und invertierbar (Konklusion gultig ⇒ Pramissegultig).
in Beweisen haufig notwendig, Voraussetzungen mehrfach zubenutzen, z.B. in ∀x .P(x) ∧ Q(x) =⇒ ∃x .∃y .P(x) ∧ Q(y)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 170
Regeln und Axiome fur Gleichheit
Γ, t.= t =⇒ ∆
Γ =⇒ ∆(=L)
Γ =⇒ ∆, t.= t
(Refl)
Γ, ϕ[t/x ] =⇒ ∆
Γ, s + t, ϕ[s/x ] =⇒ ∆(SubstL)
Γ =⇒ ∆, ϕ[t/x ]
Γ, s + t =⇒ ∆, ϕ[s/x ](SubstR)
wobei s + t Abkurzung fur s.= t oder t
.= s ist.
Achtung: auch Ersetzen von Subtermen moglich, z.B. inf (c)
.= g(d),R(g(f (c)), f (d)) =⇒ . . .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 171
Regeln fur die Quantoren
Wie beweist man intuitiv eine existentielle Aussage ∃x .ϕ? Mangibt explizit einen Zeugen (Instanziierung) von x an und beweist ϕfur diesen.
Wie beweist man intuitiv eine universelle Aussage ∀x .ϕ? Man sagt,dass x beliebig instanziiert ist und beweist ϕ dafur, ohneirgendwelche weiteren Annahmen daruber zu machen.
Im Sequenzenkalkul in Sukzedentien:
• existentiell quantifizierte Variablen durch Terme ersetzen
• universell quantifizierte Variablen durch neueKonstantensymbole ersetzen
Vorgehen in Antezedentien dann dual wegen ¬∃x .ϕ ≡ ∀x .¬ϕ.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 172
Die Regeln fur Quantoren
Γ =⇒ ∆, ϕ[t/x ]
Γ =⇒ ∆,∃x .ϕ (∃R)Γ, ϕ[t/x ] =⇒ ∆
Γ,∀x .ϕ =⇒ ∆(∀L)
Γ =⇒ ∆, ϕ[c/x ]
Γ =⇒ ∆,∀x .ϕ (∀R)Γ, ϕ[c/x ] =⇒ ∆
Γ,∃x .ϕ =⇒ ∆(∃L)
wobei c jeweils nirgendwo sonst im Beweis vorkommt und tGrundterm ist!
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 173
Beispiele
Sind die folgenden Sequenzen beweisbar? Wie sehen die Beweise /Beweisversuche aus?
1 ∅ =⇒ ∀x .∀y .∀z .x .= y ∧ y
.= z → x
.= z
2 P(f (c)),∀x .f (x).= x =⇒ P(f (f (c)))
3 ∀x .P(x) → P(f (x)) =⇒ ∀x .P(x) → P(f (f (x)))
4 ΦGruppe =⇒ ∀x .i(x) ◦ x.= 1
5 ΦGruppe =⇒ ∀x .∀y .x ◦ y.= y ◦ x
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 174
PVS
PVS implementiert auch den Sequenzenkalkul fur FO
zur Erinnerung: Befehle (flatten) und (split n) ausreichend,um Regeln des Sequenzenkalkuls fur Aussagenlogik anzuwenden
weitere Regeln:
• (copy n) dupliziert Formel n (Kontraktionsregeln)
• (skolem n x) wendet (∀R) oder (∃L) auf Formel n an; c istneue Konstante
• (inst n t) wendet (∀L) oder (∃R) an mit Instanziierung vonFormel n durch Term t
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 175
Korrektheit und Vollstandigkeit
Ziel ist es wieder zu zeigen, dass der Sequenzenkalkul korrekt (jedebeweisbare Sequenz ist gultig) und vollstandig (jede gultigeSequenz ist beweisbar) ist.
Ublicherweise ist Korrektheit einfacher zu zeigen, insbesondere hier.
Def.: Eine Regel heißt
• korrekt, wenn aus der Gultigkeit aller Pramissen die Gultigkeitder Konklusion folgt,
• invertierbar, wenn aus der Gultigkeit der Konklusion dieGultigkeit aller Pramissen folgt. Bei den Regeln (∃R) und (∀L)ist dies so zu verstehen, dass es einen Term t gibt, der diePramisse gultig macht.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 176
Korrektheit der Regeln
Lemma 1: Alle Axiome sind gultig.
Beweis: Bei (Refl) trivial, bei allen anderen bereits gezeigt.
Lemma 2: Alle Beweisregeln sind korrekt.
Beweis: Exemplarisch fur (∃R) und (∀R).
Fall (∃R): Sei Γ =⇒ ∆,∃x .ϕ nicht gultig. Dann gibt esInterpretation I, so dass I |= γ fur jedes γ ∈ Γ und I 6|= ψ furjedes ψ ∈ ∆ ∪ {∃x .ϕ}. Sei I = (A, ϑ) und A = (A, τ).Insbesondere gibt es kein a ∈ A, so dass A, ϑ[x 7→ a] |= ϕ.Beachte: Fur jeden Term t ist [[t]]Aϑ ∈ A. Also gibt es auch keinenTerm t, so dass A, ϑ[x 7→ [[t]]Aϑ ] |= ϕ. Somit widerlegt I dieGultigkeit der Pramisse Γ =⇒ ∆, ϕ[t/x ] fur jeden Term t.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 177
Korrektheit der Regeln
Fall (∀R): Angenommen die Konklusion Γ =⇒ ∆,∀x .ϕ istungultig. Dann gibt es Interpretation I = (A, ϑ) mit A = (A, τ),so dass I |= γ fur alle γ ∈ Γ und I 6|= ψ fur alle ψ ∈ ∆ ∪ {∀x .ϕ}.Insbesondere gibt es dann ein a ∈ A, so dass A, ϑ[x 7→ a] 6|= ϕ. Seinun c ein neues Konstantensymbol und
• τ ′ = (τ, c),
• A′ wie A, jedoch mit cA′= a,
• I ′ = (A′, ϑ).
Dann widerlegt I ′ die Gultigkeit der Pramisse Γ =⇒ ∆, ϕ[c/x ].
Beachte: Der letzte Schritt ware i.A. nicht richtig, falls c in Γ, ∆oder ϕ vorkame.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 178
Korrektheit des Sequenzenkalkuls
Theorem 22
Ist Γ =⇒ ∆ beweisbar im Sequenzenkalkul, dann ist Γ =⇒ ∆gultig.
Beweis: Per Induktion uber die Hohe h eines Beweises furΓ =⇒ ∆.
Induktionsanfang, h = 0. Dann ist Γ =⇒ ∆ Instanz eines Axiomsund nach Lemma 1 somit gultig.
Induktionsschritt, h > 0. Dann wird auf die Wurzel eineBeweisregel angewandt, die Pramissen P1 und evtl. noch P2 hat.Diese sind offensichtlich beweisbar mit Beweisen der Hohehochstens h − 1. Nach der Induktionshypothese sind diese danngultig. Nach Lemma 2 ist auch die Konklusion gultig.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 179
Abzahlbarkeit von Termen
Def.: Eine Menge M heißt hochstens abzahlbar unendlich, wenn eseine surjektive Funktion N → M gibt.
Intuitiv: M lasst sich als Liste m0,m1,m2, . . . schreiben, so dassalle Elemente von M irgendwann in dieser Liste vorkommen.
Lemma: (Termabzahlung) Sei τ Signatur mit hochstens abzahlbarunendlich vielen Funktionssymbolen. Die Menge aller Terme uber τist ebenfalls hochstens abzahlbar unendlich.
Def.: Grundterm = Term ohne Variablen
Notation: u[t/s] entsteht aus u durch Ersetzen aller Subterme smit t.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 180
Vollstandigkeit des Sequenzenkalkuls
Zuerst ersetzen wir die Regeln (∃R), (∀L) und (SubstL) durch
Γ =⇒ ∆,∃x .ϕ, ϕ[t/x ]
Γ =⇒ ∆,∃x .ϕ (∃′R)Γ,∀x .ϕ, ϕ[t/x ] =⇒ ∆
Γ,∀x .ϕ =⇒ ∆(∀′L)
Γ, s + t, ϕ[s/x ], ϕ[t/x ] =⇒ ∆
Γ, s + t, ϕ[s/x ] =⇒ ∆(Subst′L)
Diese sind herleitbar wegen (KontrR) und (KontrL). Also ist derKalkul mit diesen Regeln weiterhin korrekt. Außerdem gilt: Wenner mit diesen Regeln vollstandig ist, dann auch mit denherkommlichen.
Vorteil: Jetzt lasst sich aus ungultiger Sequenz generisch einBeweisversuch konstruieren, aus dem eine widerlegendeInterpretation gebaut werden kann.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 181
Sequenzen von Satzen
Lemma: Seien Γ,∆ Formelmengen mit x 6∈ frei(ϕ) fur alleϕ ∈ Γ ∪∆.
a) Γ =⇒ ∆, ψ ist gultig gdw. Γ =⇒ ∆,∀x .ψ gultig ist.
b) Γ, ψ =⇒ ∆ ist gultig gdw. Γ,∃x .ψ =⇒ ∆ gultig ist.
Beweis: Nur (a), Teil (b) analog. Die Aussage gilt offensichtlich,falls x 6∈ frei(ψ). Angenommen, Γ =⇒ ∆,∀x .ψ ist ungultig undx ∈ frei(ψ). Dann ex. I = (A, ϑ) mit A = (A, τ) und I |=
∧Γ
und I 6|=∨
∆ ∪ {∀x .ψ}. Insbesondere gibt es ein a ∈ A, so dassA, ϑ[x 7→ a] 6|= ψ. Sei I ′ := (A, ϑ[x 7→ a]). Dann widerlegt I ′ dieGultigkeit von Γ =⇒ ∆, ψ.
Die Ruckrichtung wird genauso bewiesen.
Aufgrund u.a. dieses Lemmas konnen wir uns imVollstandigkeitsbeweis auf Sequenzen beschranken, die nur ausSatzen in positiver Normalform bestehen.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 182
Generischer Beweisversuch
Sei Γ =⇒ ∆ eine Sequenz. O.B.d.A. konnen wir annehmen:
• alle Formeln in Γ ∪∆ sind in positiver Normalform
• Γ und Delta bestehen nur aus Satzen (wegen vorigem Lemma)
• ∀x .x .= x ∈ Γ (da dies eine Tautologie ist)
Wir brauchen abzahlbar unendlichen Vorrat K = (c1, c2, . . .) anKonstantensymbolen, die nicht in τ vorkommen.
Bem.:
1 Es reicht, dass diese nicht in Γ ∪∆ vorkommen.
2 Wenn in ∆ keine universellen und in Γ keine existentiellenQuantoren vorkommen, dann wird dieser Vorrat uberhauptnicht gebraucht.
Im Folgenden: Grundterm = variablen-freier Terme uber denKonstantensymbolen in τ und den in K
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 183
Generischer Beweisversuch
Konstruieren nun Beweisversuch wie folgt.
Schreibe alle Unterformeln von Γ ∪∆ in eineFIFO-Prioritats-Queue Q. Merke zu jeder Unterformel ∃x .ψ oder∀x .ψ eine unendliche Liste aller Grundterme. Beginnend mitΓ =⇒ ∆ macht man nun folgendes.
1 Wende (Subst′L) an, solange dies noch zu neuen Formeln imAntezedens fuhrt.
2 Sei ϕ die Formel mit der hochsten Prioritat in Γ ∪∆, auf dienoch eine Regel angewandt werden kann.
1 Dupliziere diese Formel mittels (KontrL) oder (KontrR).2 Wende entsprechende Regel auf eine Kopie davon an. Istϕ = ∃x .ψ ∈ ∆ oder ϕ = ∀x .ψ ∈ Γ, dann wahle als Term denersten aus der entsprechenden Liste. Streiche diesen. Istϕ = ∃x .ψ ∈ Γ oder ϕ = ∀x .ψ ∈ ∆ dann setze nachsteKonstante aus K ein.
3 Schiebe ϕ an das Ende der Prioritats-Queue.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 184
Pfade im Beweisversuch
Lemma: (Beweisversuch) Sei Γ =⇒ ∆ Sequenz, fur die nachobiger Anleitung ein Beweisversuch konstruiert wurde. SeiS0,S1, . . . ein maximaler Pfad darin (endlich oder unendlich), sodass Si = Γi =⇒ ∆i . Dann gilt fur alle i , k: Falls . . .
a) ∃x .ϕ ∈ ∆i / ∀x .ϕ ∈ Γi , so ex. fur jedes t ein j mit ϕ[t/x ] ∈ ∆j / Γj ,b) ϕ ∨ ψ ∈ ∆i / ϕ ∧ ψ ∈ Γi , so ex. j mit ϕ,ψ ∈ ∆j / Γj ,c) ϕ∧ψ ∈ ∆i / ϕ∨ψ ∈ Γi , so ex. j mit ϕ ∈ ∆j / Γj oder ψ ∈ ∆j / Γj ,d) ∀x .ϕ ∈ ∆i / ∃x .ϕ ∈ Γi , so ex. j und c mit ϕ[c/x ] ∈ ∆j / Γj ,e) s
.= t ∈ Γi , so ex. j mit s
.= s, t
.= s ∈ Γj ,
f) s.= t ∈ Γi , t
.= u ∈ Γk , so ex. j mit s
.= u ∈ Γj ,
g) s.= t ∈ Γi und ϕ[s/x ] ∈ Γk , so ex. j mit ϕ[t/x ] ∈ Γj ,
h) s.= t ∈ Γi und u Grundterm, so ex. j mit u
.= u[t/s] ∈ Γj ,
i) i ≤ k, so Γi ⊆ Γk und ∆i ⊆ ∆k ,j) Γi und ∆i enthalten nur Satze.
Beweis: Ubung.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 185
Herbrand-Modelle
Sei Π = S0,S1, . . . Pfad in obigem Beweisversuch fur ungultigesΓ =⇒ ∆. Konstruiere Herbrand-Modell HΠ = (G , τ) wie folgt.O.B.d.A. enthalte τ mindestens ein Konstantensymbol.
• τ besteht aus allen Relations- und Funktionssymbolen, die inΠ vorkommen.
• G = {t | t Grundterm uber τ}
generische Interpretation der Funktions- und Relationssymbole:
• f HΠ(t1, . . . , tn) = f (t1, . . . , tn),
(Insbesondere cHΠ
= c fur Konstantensymbole c und
allgemein [[t]]HΠ
= t fur Grundterme t).
• (t1, . . . , tn) ∈ RHΠgdw. es ein Si = Γi =⇒ ∆i gibt, so dass
R(t1, . . . , tn) ∈ Γi .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 186
Faktor-Strukturen modulo einer Kongruenz
Wdh.:
• Kongruenz bzgl. Menge von Operationen = Aquivalenz +Vertraglichkeit mit diesen Operationen
• Ist ∼ Aquivalenzrelation, so bezeichnet [x ]∼ dieAquivalenzklasse von x , d.h. [x ]∼ := {y | x ∼ y}.
Def.: Sei A = (A, τ) Struktur und ∼ Kongruenzrelation auf Abzgl. den Operationen in τ . Definiere den Faktor von A bzgl. ∼ alsA/∼ = (A∼, τ), wobei
• A∼ = {[x ]∼ | x ∈ A}
• f A/∼([x1]∼, . . . , [xn]∼) = [f A(t1, . . . , tn)]∼
• ([x1]∼, . . . , [xn]∼) ∈ RA/∼ gdw. (x1, . . . , xn) ∈ RA
Faktorstruktur ist wohldefiniert: Definition der Funktionen undRelationen unabhangig von Vertretern der Aquivalenzklasse [x ]∼.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 187
Das Termmodell
Def.: Sei Π = S0,S1, . . . Pfad im Beweisversuch fur ungultigesΓ =⇒ ∆. Fur Grundterme s und t definiere
s ∼ t gdw. es gibt i mit s.= t ∈ Γi
Lemma: Die Relation ∼ ist Kongruenzrelation auf demHerbrand-Modell HΠ.
Beweis: Reflexivitat, Symmetrie und Transitivitat folgen aus demBeweisversuchs-Lemma (e) und (f). Vertraglichkeit mit denFunktions- und Relationssymbolen folgt aus (g) und (h).
Im folgenden benutzen wir das Termmodell als Faktor desHerbrand-Modells modulo obiger Kongruenzrelation: HΠ/∼.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 188
Eigenschaften des Termmodells
Lemma: (Antezedentien) Sei Π = S0,S1, . . . Pfad ausBeweisversuch nach obiger Konstruktion und HΠ/∼ dazugehorigesTermmodell. Seien Si = Γi =⇒ ∆i und Γ =
⋃i∈N Γi . Dann gilt
HΠ/∼ |= ϕ fur alle ϕ ∈ Γ.
Beachte: Nach Beweisversuchs-Lemma (i) wird keineVariablenbelegung gebraucht.
Beweis: Durch Induktion uber den Formelaufbau.
Fall ϕ = (t1.= t2): Da ϕ ∈ Γ gilt t1 ∼ t2 und daher [t1]∼ = [t2]∼
und somit HΠ/∼ |= t1.= t2.
Fall ϕ = R(t1, . . . , tn): Da ϕ ∈ Γ gilt ([t1]∼, . . . , [tn]∼) ∈ RHΠ/∼
und somit HΠ/∼ |= R(t1, . . . , tn).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 189
Eigenschaften des Termmodells
Fall ϕ = ψ1 ∧ ψ2. Da ϕ ∈ Γ gilt nach dem Beweisversuchslemma(b) auch ψ1, ψ2 ∈ Γ. Zweimalige Anwendung der Hypothese liefertHΠ/∼ |= ψ1 und HΠ/∼ |= ψ2, somit auch HΠ/∼ |= ϕ.
Fall ϕ = ψ1 ∨ ψ2 ahnlich mit Beweisversuchslemma (c).
Fall ϕ = ∀x .ψ. Das Beweisversuchslemma (a) liefert ψ[t/x ] ∈ Γ furjeden Grundterm t. Nach der Hypothese gilt HΠ/∼ |= ϕ[t/x ] furjedes solche t. Also gilt auch HΠ/∼ |= ∀x .ψ, da es fur jedes t ∈ Goffensichtich ein t ′ gibt, so dass [t ′]∼ = [t]∼.
Fall ϕ = ∃x .ψ. Nach Beweisversuchslemma (d) gibt es c mitψ[c/x ] ∈ Γ. Nach der Hyothese gilt HΠ/∼ |= ψ[c/x ]. Da cGrundterm ist, ist [c]∼ ∈ G∼. Also gilt auch HΠ/∼ |= ∃x .ψ.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 190
Eigenschaften des Termmodells
Lemma: (Sukzedentien) Sei Π = S0,S1, . . . Pfad ausBeweisversuch nach obiger Konstruktion und HΠ/∼ dazugehorigesTermmodell. Seien Si = Γi =⇒ ∆i und Γ =
⋃i∈N Γi , ∆ =
⋃i∈N ∆i .
Falls kein Si Axiom ist, dann gilt HΠ/∼ 6|= ϕ fur alle ϕ ∈ ∆.
Beweis: Durch Induktion uber den Formelaufbau.
Fall ϕ = (s.= t). Angenommen, es gelte HΠ/∼ |= s
.= t. Dann
ware [s]∼ = [t]∼, bzw. s ∼ t. Dies ist aber nur der Fall, wenn esn ∈ N und Terme s0, . . . , sn gibt, so dass s0 = s, sn = t und(si−1
.= si ) ∈ Γ fur i = 1, . . . , n. Nach dem Beweisversuchslemma
(f) ware dann auch (s.= t) ∈ Γ. Das widerspricht aber der
Tatsache, dass Π kein Axiom enthalt.
Fall ϕ = R(t1, . . . , tn). Ahnlich wie im vorherigen Fall.
Falle ϕ = ψ1 ∨ ψ2, ϕ = ψ1 ∧ ψ2, ϕ = ∃x .ψ und ϕ = ∀x .ψ: Wie dieentsprechenden Falle im Antezedentien-Lemma mitBeweisversuchslemma (a)–(d).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.4 Pradikatenlogik – Der Sequenzenkalkul 191
Vollstandigkeit des Sequenzenkalkuls
Theorem 23
Ist Γ =⇒ ∆ gultig, so ist Γ =⇒ ∆ beweisbar.
Beweis: Angenommen, Γ =⇒ ∆ ist nicht beweisbar. Dann liefertder obige Beweisversuch einen endlichen oder unendlichen Pfad Πvon Sequenzen, der kein Axiom enthalt. Daraus lasst sich dasTermmodell HΠ/∼ als Faktor des Herbrand-Modells modulo derdurch
.= induzierten Kongruenzrelation generieren.
Nach dem Antezedentien-Lemma erfullt dies alle Formeln inAntezedentien des Pfades, also insbesondere HΠ/∼ |=
∧Γ.
Nach dem Sukzedentien-Lemma erfullt dies keine Formel in einemSukzedens des Pfades, also insbesondere HΠ/∼ 6|=
∨∆.
Damit ist dann Γ =⇒ ∆ aber nicht gultig.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 192
Der Satz von Lowenheim-Skolem
Theorem 24
Jede erfullbare FO-Formel hat ein Modell, welches hochstensabzahlbar unendlich groß ist.
Beweis: Sei ϕ erfullbar, also ¬ϕ nicht allgemeingultig. NachThm. 22 ist ϕ =⇒ ∅ nicht beweisbar. Nach Thm. 23 das voneinem unendlichen Pfad im generischen Beweisversuch induzierteTermmodell ein Modell von ϕ. Dies hat aber hochstens abzahlbarunendlich viele Elemente.
Bem.: Der Beweis gilt sogar fur hochstens abzahlbar unendlicheFormelmengen Φ (und sogar fur uberabzahlbare Signaturen).
Kor.: Es gibt keine hochstens abzahlbar unendliche FormelmengeΦ, so dass Mod(Φ) = {(R, τ)} fur beliebiges τ .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 193
Von FO zur Aussagenlogik (und zuruck)
Def.: FO∀ = Menge aller FO-Satze der Form ∀x1 . . .∀xn.ϕ, wobeiϕ quantorenfrei.
Def.: Sei Φ FO∀-Menge. O.B.d.A. enthalte zugrundeliegendes τmindestens ein Konstantensymbol. Definiere aussagenlogischeFormelmenge
AL(Φ) := {al(ϕ[t1/x1, . . . , tn/xn]
)| ∀x .ϕ ∈ Φ, t1, . . . , tn Grundterm,
ϕ quantorenfrei }wobei
al(ϕ ∧ ψ) := al(ϕ) ∧ al(ψ) al(s.= t) := Xs
.=t
al(ϕ ∨ ψ) := al(ϕ) ∨ al(ψ) al(R(t1, . . . , tn)) := XR(t1,...,tn)
al(¬(ϕ ∧ ψ)) := al(¬ϕ) ∨ al(¬ψ) al(¬(s.= t)) := ¬Xs
.=t
al(¬(ϕ ∨ ψ)) := al(¬ϕ) ∧ al(¬ψ) al(¬R(t1, . . . , tn)) := ¬XR(t1,...,tn)
al(ϕ→ ψ) := al(ϕ) → al(ψ) al(¬¬ϕ) := al(ϕ)
al(¬(ϕ→ ψ)) := ¬(al(ϕ) → al(ψ))
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 194
Beispiel
Bsp.: Φ = {R(c), c.= f (c),∀x
(R(x) → ¬R(f (x))
)}
AL(Φ) = {XR(c),Xc.=f (c),XR(c) → ¬XR(f (c)),
XR(f (c)) → ¬XR(f (f (c))),XR(f (f (c))) → ¬XR(f (f (f (c)))), . . .}
Beachte: hier ist Φ nicht erfullbar, AL(Φ) jedoch!
Ziel ist Satz von Herbrand: Ubertragung der Erfullbarkeit derAussagenlogik auf FO.
Problem in diesem Beispiel: AL(Φ) “vergisst” die Beziehungc = f (c) in jedem erfullenden (FO-)Modell.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 195
Abschluss
Def.: Sei AL(Φ) aussagenlogische Formelmenge wie oben. Imfolgenden identifizieren wir der Einfachheit halber eine atomareFormel ψ mit der entsprechenden aussagenlogischen Variablen Xψ.
Eine Menge AL∗(Φ) heißt Abschluss (oder auchHerbrand-Expansion) von AL(Φ), wenn gilt:
• AL(Φ) ⊆ AL∗(Φ).
• Fur jeden Grundterm t ist t.= t ∈ AL∗(Φ).
• Ist ψ[t/x ] ∈ AL∗(Φ) und t.= t ′ ∈ AL∗(Φ), so ist auch
ψ[t ′/x ] ∈ AL∗(Φ)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 196
Satz von Herbrand
Theorem 25
Eine Menge Φ von FO∀-Satzen ist erfullbar gdw. die MengeAL∗(Φ) aussagenlogischer Formeln erfullbar ist.
Beweis: “⇒” Angenommen, Φ ist erfullbar. Also ex. A mitA |= ϕ fur alle ϕ ∈ Φ. Definiere nun Interpretation I derVariablen:
I(s.= t) = 1 gdw. [[s]]A = [[t]]A
I(R(t1, . . . , tn)) = 1 gdw. ([[t1]]A, . . . , [[tn]]
A) ∈ RA
Induktion uber Formelaufbau liefert I |= ϕ fur alle ϕ ∈ AL∗(Φ).
Die Ruckrichtung erfordert ein kleines bisschen Vorarbeit.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 197
Herbrand-Strukturen
Um aus einem aussagenlogischen Modell ein pradikatenlogisches zubauen benutzen wir wieder Herbrand-Modelle modulo der von
.=
induzierten Kongruenz.
Def.: Sei Φ Menge von FO∀-Satzen und AL∗(Φ) wie oben. DieHerbrand-Struktur (bzgl. der Funktionssymbole) von Φ istH(Φ) = (G , τ) mit G Menge der Grundterme uber τ und
f H(Φ)(t1, . . . , tn) = f (t1, . . . , tn)
fur alle Funktionssysmbole f .
Lemma: Sei AL∗(Φ) wie oben Abschluss von AL(Φ) und t1 ∼ t2gdw. t1
.= t2 ∈ AL∗(Φ). Dann ist ∼ Kongruenzrelation auf der
Menge der Grundterme bzgl. aller Funktions- undRelationssysmbole in AL∗(Φ).
Beweis: Ubung.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 198
Beweis des Satzes von Herbrand
(⇐) Angenommen, AL∗(Φ) ist erfullbar. Dies habe Modell I.Definiere eine Erweiterung HI(Φ) der Faktor-Herbrand-StrukturH(Φ)/∼ wie folgt.
• Universum und Interpretation der Funktionssymbole ist wie inH(Φ)/∼.
• Fur alle Relationssymbole R gilt
([t1]∼, . . . , [tn]∼) ∈ RHI(Φ) gdw. I |= R(t1, . . . , tn)
Beachte: Nach obigem Lemma ist ∼ Kongruenzrelation.
Sei nun ∀x .ϕ ∈ Φ, also al(ϕ[t/x ]) ∈ AL(Φ) ⊆ AL∗(Φ) fur jedesTupel t von Grundtermen. Durch Induktion uber den Formelaufbauzeigt man nun, dass HI(Φ) |= al(ϕ[t/x ]) gilt. Da die Elemente desUniversums von HI Aquivalenzklassen von Grundtermen sind, giltsomit dann auch HI |= ∀x .ϕ.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 199
Skolemisierung von Formelmengen
Lemma: Sei Ψ Formelmenge. Es gibt Skolem-Normalform sk(ψ)von ψ fur jedes ψ ∈ Ψ, so dass Ψ erfullbar ist, gdw.sk(Ψ) := {sk(ψ) | ψ ∈ Ψ} erfullbar ist.
Beweis: Ubung.
Beachte: Es gibt auch erfullbare Mengen, die man durch sukzessive(nicht-clevere) Skolemisierung ihrer Elemente in unerfullbareMengen uberfuhren kann.
Mithilfe des Satzes von Herbrand lasst sich z.B. derKompaktheitssatz der Aussagenlogik auf FO ubertragen.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 200
Kompaktheit der Pradikatenlogik
Theorem 26
Menge Φ von FO-Formeln ist erfullbar gdw. jede endlicheTeilmenge von Φ erfullbar ist.
Beweis: “⇒” Trivial. “⇐” O.B.d.A. sei Φ unerfullbare Mengevon FO∀-Satzen. Nach Thm. 25 ist AL∗(Φ) unerfullbar. NachKompaktheit der Aussagenlogik gibt es unerfullbaresΓ ⊆fin AL∗(Φ). Betrachte
Ψ := {∀x .ϕ ∈ Φ | es gibt Grundterme t mit al(ϕ[t/x ]) ∈ Γ}
Offensichtlich ist Ψ ⊆fin Φ. Sei
Γ′ := {ϕ[t ′/x ] | es gibt ϕ[t/x ] ∈ Γ, t ′ beliebig }
Da Γ′ ⊇ Γ, ist Γ′ auch unerfullbar. Nach Thm. 25 ist Ψunerfullbar.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 201
Aufsteigender Lowenheim-Skolem-Satz
Theorem 27
Sei ϕ Satz, der in einem unendlichen Modell erfullt ist. Dann gibtes zu jeder Menge M eine Struktur AM mit einem Universum M ′,so dass AM |= ϕ und |M ′| ≥ |M|.
Beweis: Sei M gegeben und sei {cm | m ∈ M} Menge vonpaarweise verschiedenen Konstantensymblen, die nicht in ϕauftreten. Betrachte die Formelmenge
Φ := {ϕ} ∪ {¬(cn.= cm) | n,m ∈ M,m 6= n}
Beachte: Thm. 27 ist bewiesen, wenn gezeigt werden kann, dass Φerfullbar ist. Wegen Kompaktheit reicht es aus zu zeigen, dass jedeendliche Teilmenge erfullbar ist. Jede Teilmenge, die ϕ nichtenthalt, ist offensichtlich erfullbar.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 202
Beweis des aufst. Lowenheim-Skolem-Satzes
Es reicht aus, sich auf solche Teilmengen ΦN zu beschranken, dieϕ enthalten und fur die es ein N ⊆fin M gibt, so dass
ΦN := {ϕ} ∪ {¬(cn.= cm) | n,m ∈ N,m 6= n}
Nach Voraussetzung hat ϕ ein unendliches Modell A. Wahle nunin diesem |N| paarweise verschiedene Elemente bm fur jedesm ∈ N. Da |N| <∞ ist dies moglich.
Sei AN nun definiert wie A, wobei zusatzlich die Konstante cm
durch das Element bm interpretiert wird. Offensichtlich ist AN
Modell von ΦN . Also ist jedes solche ΦN erfullbar und mit derKompaktheit dann auch Φ. Sei nun B ein Modell von Φ. Beachte:B muss alle cm, m ∈ M verschieden interpretieren. Also hat dasUniversum mindestens die Kardinalitat von M.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 203
Bijektivitat und Isomorphie
Def.: Eine Abb. f : A → B ist bijektiv, wenn sie folgendes ist:
• surjektiv: fur jedes b ∈ B ein a ∈ A gibt mit b = f (a),
• injektiv: fur alle a 6= a′ ∈ A gilt f (a) 6= f (a′),
Def. A = (A, τ) und B = (B, τ) sind isomorph, A ' B, wenn eseine bijektive Abbildung ι : A → B gibt, so dass fur allea1, . . . , an ∈ A und f ,R ∈ τ :• (a1, . . . , an) ∈ RA gdw. (ι(a1), . . . , ι(an)) ∈ RB,
• ι(f A(a1, . . . , an)) = f B(ι(a1), . . . , ι(an)).
intuitiv: isomorphe Strukturen sehen genau gleich aus,unterscheiden sich nur in den Namen der Elemente
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 204
Elementare Aquivalenz
Def.: Zwei Strukturen A, B sind elementar aquivalent, A ≡ B,wenn fur alle FO-Satze ϕ gilt:
A |= ϕ gdw. B |= ϕ
sprich: diese konnen nicht in FO voneinander unterschiedenwerden, Th({A}) = Th({B}).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 205
Isomorphie und elementare Aquivalenz
Theorem 28
Wenn A ' B, dann A ≡ B.
Beweis: Ubung.
Umkehrung gilt i.A. nicht. Das Gegenbeispiel braucht jedochunendliche Strukturen. Im Endlichen gilt die Umkehrung sogar.
Theorem 29
Seien A,B endlich. Wenn A ≡ B, dann A ' B.
Beweis: Ubung.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 206
Potenzmengen und surjektive Abbildungen
Def.: Die Potenzmenge einer Menge M ist die Menge2M := {N | N ⊆ M}.
Lemma: Fur eine beliebige Menge A gibt es keine surjektiveAbbildung vom Typ A → 2A.
Beweis: Angenommen f : A → 2A ist surjektiv. Betrachte dieMenge B ⊆ A, definiert durch a ∈ B gdw. a 6∈ f (a). Es gibt keina ∈ A, so dass f (a) = B; denn sonst ware a ∈ f (a) gdw. a ∈ Bgdw. a 6∈ f (a).
Kor.: Seien A = (A, τ) und B = (B, τ) Strukturen, so dass Bmindestens so groß ist wie 2A. Dann ist A 6' B.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 207
Nicht-Isomorphie und elementare Aquivalenz
Theorem 30
Fur jedes A uber einem unendlichen Universum gibt es B, so dassA 6' B, aber A ≡ B.
Beweis: Sei A = (A, τ) unendlich und Φ := Th({A}).Offensichtlich ist Φ erfullbar in einem unendlichen Modell. Sei nunB := 2A. Nach dem aufsteigenden Satz von Lowenheim-Skolemhat Φ auch ein Modell B mit Universum mindestens so groß wie2A. Nach obigem Korollar gilt A 6' B.
Noch zu zeigen: A ≡ B. Angenommen, dies ist nicht der Fall.Dann gibt es FO-Satz ϕ, so dass o.B.d.A. A |= ϕ und B 6|= ϕ gilt.(Im umgekehrten Fall kann man auch ¬ϕ als trennenden FO-Satzhernehmen.) Dann ist aber ϕ ∈ Th({A}) und somit ϕ ∈ Φ unddamit dann auch B |= ϕ.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.5 Pradikatenlogik – Fundamentale Satze 208
Modellerweiterungssatz ohne Gleichheit
Wenn Gleichheit nicht in den Formeln vorkommt, dann gilt sogareine starkere Variante des aufsteigenden Satzes vonLowenheim-Skolem.
Theorem 31
Sei ϕ Satz ohne Gleichheit und A Modell von ϕ mit Universum A.Fur jedes B ⊇ A gibt es eine Struktur B mit Universum B, so dassB |= ϕ.
Beweis: Ubung.
Daraus folgt z.B., dass Gleichheit nicht definierbar ist.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.6 Pradikatenlogik – (Un-)Entscheidbarkeit 209
Entscheidbarkeit mittels Sequenzenkalkul?
Zur Erinnerung: Das Erfullbarkeitsproblem fur die Aussagenlogik(und damit auch das Allgemeingultigkeitsproblem) ist inexponentieller Zeit entscheidbar. (Naıve Aufzahlung allerInterpretationen, DPLL, Resolution, Sequenzenkalkul, etc.)
Es gibt auch Sequenzenkalkul fur FO. Ist damit auch dasErfullbarkeitsproblem fur FO entscheidbar? Nein, aber wieso?
Bei Aussagenlogik anzuwendende Regel fast kanonisch gegeben,und Pramissen immer kleiner als Konklusionen. Beweisversuchmuss irgendwann terminieren.
Nicht so bei FO: Wahl der Terme in (∃R) und (∀L) vollkommenbeliebig! Systematische und terminierende Exploration nichtmoglich. Auch kein Abstieg in Große der Sequenzen gegeben.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.6 Pradikatenlogik – (Un-)Entscheidbarkeit 210
Unentscheidbarkeit der Pradikatenlogik
Sequenzenkalkul liefert also keinen Algorithmus, der zu jederEingabeformel in FO in endlicher Zeit terminiert und ausgibt, obdiese erfullbar ist oder nicht. Theoretisch konnte es aber “bessere”bzw. andere Verfahren geben, die dies leisten. Dem ist aberbeweisbar nicht so.
Theorem 32 (ohne Beweis)
Es gibt keinen Algorithmus fur das Erfullbarkeitsproblem derPradikatenlogik.
Beachte: Naturlich kann es solche Algorithmen in Spezialfallengeben, z.B. fur
• Fragmente von FO
• bestimmte Strukturklassen
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.6 Pradikatenlogik – (Un-)Entscheidbarkeit 211
Ein entscheidbares Fragment von FO
Theorem 33
Sei τ eine Signatur, in der Funktionssymbole mit Stelligkeit ≥ 1nicht vorkommen. Es gibt einen terminierenden Algorithmus, derzu vorgelegter Formel ϕ uber τ entscheidet, ob diese erfullbar istoder nicht.
Beweis: Ubung. (Hinweis: Satz von Herbrand)
Im folgenden wollen wir noch eine Eigenschaft kennenlernen, mitderen Hilfe sich das Erfullbarkeitsproblem fur ein noch weitereingeschranktes Fragment ebenfalls zeigen lasst.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.6 Pradikatenlogik – (Un-)Entscheidbarkeit 212
Endliche Modelleigenschaft
Def.: Eine Logik L hat die endliche Modelleigenschaft (FMP), fallses fur jeder erfullbare Satz ϕ ∈ L ein Modell A = (A, τ) hat, sodass |A| <∞.
Bsp.: Betrachte zunachst FO nur uber total geordnetenStrukturen:
ϕ := ¬∃x .∀y .x .= y ∨ y < x
besagt, dass es kein großtes Element gibt, welches es in endlichen,total geordneten Strukturen aber immer gibt. Dennoch ist ϕerfullbar.
FO uber allgemeinen Strukturen hat auch nicht die FMP, aberwieso?
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.6 Pradikatenlogik – (Un-)Entscheidbarkeit 213
Kleine Modelleigenschaft
Verscharfung der FMP:
Def.: Sei f : N → N. Eine Logik L hat die kleine Modelleigenschaftbzgl. f (f -SMP), falls jeder erfullbare Satz ϕ ∈ L eine endlichesModell A = (A, τ) hat, so dass |A| ≤ f (|ϕ|) hat.
Def.: Sei FO∃∀Rel Menge aller Formeln der Form
∃x1 . . .∃xn.∀y1 . . .∀ym.ϕ, wobei ϕ quantoren-frei und relational,d.h. ohne Funktionssymbole.
Theorem 34
FO∃∀Rel hat die f -SMP, wobei f (n) = dn−1
2 e
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.6 Pradikatenlogik – (Un-)Entscheidbarkeit 214
Substrukturen
Def.: Seien A,B τ -Strukturen mit Universen A, bzw. B. Dann istB Substruktur von A, falls gilt:
• B ⊆ A,
• fur alle Relationssymbole R ∈ τ :
RB = RA ∩ B × . . .× B︸ ︷︷ ︸st(R)
• fur alle Funktionssymbole f ∈ τ :
f B(a1, . . . , ak) = f A(a1, . . . , ak) ∈ B falls a1, . . . , ak ∈ B
Bsp.: ({0, 2, 4, . . .},+) ist Substruktur von (N,+),({1, 3, 5, . . .},+) jedoch nicht.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.6 Pradikatenlogik – (Un-)Entscheidbarkeit 215
Substrukturen und universelle Formeln
Def.: Eine Formel ist universell, wenn sie in positiver Normalformist und keine existentiellen Quantoren in ihr vorkommen.
Lemma 1: Sei ϕ universell, B = (B, τ) Substruktur von A, ϑVariablenbelegung mit ϑ(x) ∈ B fur alle x ∈ frei(ϕ). Dann gilt
wenn A, ϑ |= ϕ dann B, ϑ |= ϕ
Beweis: Durch Induktion uber den Aufbau von Termen undFormeln. (Ubung)
Lemma 2: Sei A = (A, τ) relationale Struktur und B ⊆ A. Es gibteine (eindeutige) Substruktur B von A, deren Universum B ist.
Beweis: Ubung.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.6 Pradikatenlogik – (Un-)Entscheidbarkeit 216
Beweis der kleinen Modelleigenschaft fur FO∃∀Rel
Beweis von Thm. 34: Sei ϕ = ∃x1 . . .∃xn.ϕ′ erfullbarer Satz
mit ϕ′ = ∀y1 . . .∀ym.ψ. Dann ex. A = (A, τ), so dass A |= ϕ. Alsogibt es a1, . . . , an ∈ A, so dass
A, ϑ |= ϕ′
wobei ϑ(xi ) = ai fur i = 1, . . . , n.
Sei B := {a1, . . . , an}. Da ϕ relational ist, gibt es nach Lemma 2Substruktur B von A mit Universum B. Da ϕ′ universell ist, giltnach Lemma 1: B, ϑ |= ϕ′ gdw. A, ϑ |= ϕ′. Da alle a1 auch in Bvorhanden sind, gilt somit auch B |= ϕ.
O.B.d.A. gibt es hochstens dn−12 e ex. Quantoren in Formel der
Lange n.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.6 Pradikatenlogik – (Un-)Entscheidbarkeit 217
Model Checking
Das Auswerteproblem (oder auch Model-Checking-Problem) furFO ist das folgende: Gegeben FO-Formel ϕ und Interpretation I,entscheide, ob I |= ϕ gilt oder nicht.
Beachte Unterschied zu Erfullbarkeit!
Wir betrachten das Model-Checking-Problem nur fur endlicheStrukturen. Fur unendliche ergeben sich Fragen und Hindernissebzgl. endlicher Reprasentationen.
Theorem 35
Das Model-Checking-Problem fur FO lasst sich in Zeit O(mn)entscheiden, wobei n = Große der Formel, m = Große der Struktur.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.6 Pradikatenlogik – (Un-)Entscheidbarkeit 218
Ein Algorithmus fur das Model-Checking-Problem
Beweis: Sei I = (A, ϑ) und A = (A, τ). Folgender rekursiveAlgorithmus lost das Model-Checking-Problem.
MC(A,ϑ,ϕ) =case ϕ of
R(t1, . . . , tn): return ([[t1]]Aϑ , . . . , [[tn]]
Aϑ ) ∈ RA
t1.= t2: return [[t1]]
Aϑ = [[t2]]
Aϑ
ψ1 ∨ ψ2: return MC(A,ϑ,ψ1) ∨ MC(A,ϑ,ψ2)∃x .ψ: for each a ∈ A
if MC(A,ϑ[x 7→ a],ψ) = tt then return ttreturn ff
. . .
Laufzeitabschatzung ergibt sich daraus, dass im schlimmsten Fallin jeder Unterformel das gesamte Universum durchsucht werdenmuss.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.6 Pradikatenlogik – (Un-)Entscheidbarkeit 219
SMP und Entscheidbarkeit
Theorem 36
Sei L Logik uber endlicher Signatur mit f -SMP bzgl. einerFunktion f . Dann ist das Erfullbarkeitsproblem fur L entscheidbar.
Beweis: Folgender Algorithmus lost das Erfullbarkeitsproblem.
SAT(ϕ) =eliminiere freie Variablen in ϕ durch außere, existentielle Quantifizierungfor each τ -Struktur A mit |A| ≤ f (|ϕ|)if MC(A,[],ϕ) = tt then return tt
return ff
Korrektheit ergibt sich daraus, dass jedes ϕ, welches kein Modellder Große ≤ f (|ϕ|) hat, unerfullbar sein muss.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 220
Ausdrucksstarke
Eindruck von Ausdrucksstarke von FO uber elementare Aquivalenzund Definierbarkeit
Unmoglichkeitsresultate mittels Lowenheim-Skolem z.B. jedoch nurim Unendlichen
Wie zeigt man, dass im Endlichen etwas in FO nicht moglich ist?Genauer: Nicht-Definierbarkeit einer Relation.
Beachte: universelle Aussage (“fur alle Formeln gilt, dass dieseetwas bestimmtes nicht definieren”); i.A. schwerer zu beweisen alsexistentielle
Vereinfachung in diesem Abschnitt: nur noch relationaleStrukturen (ohne Konstanten) Beachte: Funktionen konnen durchRelationen modelliert und in FO definiert werden, z.B.
∀x .∀y .((∃z .R+(x , y , z)
)∧
(∀z .∀z ′.R+(x , y , z)∧R+(x , y , z ′) → z
.= z ′
))
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 221
Partielle Isomorphismen
Def.: Seien A = (A, τ) und B = (B, τ) Strukturen. Ein partiellerIsomorphismus ist eine partielle, injektive Abbildung κ : A → B, sodass fur alle R und a1, . . . , an ∈ dom(κ):
(a1, . . . , an) ∈ RA gdw. (κ(a1), . . . , κ(an)) ∈ RB
Bsp.: Was sind partielle Isomorphismen zwischen den folgendenStrukturen?
0 1 2 3
a b
d c
Hat part. Iso. endlichen Domain dom(κ) = {a1, . . . , an}, dannschreiben wir ihn auch als Liste (a1, κ(a1)), . . . , (an, κ(an)).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 222
Ehrenfeucht-Fraısse-Spiele fur FO
Def.: Seien A = (A, τ), B = (B, τ) relationale Strukturen, mitA ∩ B = ∅, k ∈ N. Das EF-Spiel GA,Bk (einfach: Gk) wird zwischenSpielern S (Spoiler) und D (Duplicator) folgendermaßen gespielt.
Partie π besteht aus k Runden. In der i-ten Runde
• wahlt S ein ai ∈ A, und danach wahlt D ein bi ∈ B, oder es
• wahlt S ein bi ∈ B, und danach wahlt D ein ai ∈ A.
D gewinnt π, falls (a1, b1), . . . , (ak , bk) partieller Isomorphismuszwischen A und B ist. Ansonsten gewinnt S die Partie π.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 223
Beispiele
Bsp.: Wer gewinnt welche Partien auf den folgenden Strukturen?
10 1 2 3
a b
d c
2 jeweils (N, <), (Z, <), (Q, <), (R, <)
3 totale Ordnungen mit n, bzw. n + 1 Elementen
4 balancierter und unbalancierter Baum
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 224
Konfigurationen
Gewinnen einer Partie in GA,Bk sagt nicht viel uber Zusammenhangzwischen A und B aus
Problem: Spieler konnen auch schlechte Wahl treffen; so dass siegewonnen hatten, wenn sie anders gewahlt hatten.
“gewinnen konnen” durch Existenz von Strategien ausdrucken
Def.: Eine S-Konfiguration ist eine Liste(a1, b1), . . . , (an, bn) ∈ (A× B)n fur ein n ≥ 0. EineD-Konfiguration ist ein Element aus (A× B)n × (A ∪ B) fur einn ≥ 0. (Beschreiben Situation, in der jeweiliger Spieler zieht.)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 225
Strategien
Def.: Eine Strategie fur Spieler X ist eine Funktion σ, die einergegebenen X -Konfiguration ein Element aus A ∪ B zuordnet.
Sei σ Strategie fur Spieler X . Partie (a1, b1), . . . , (ak , bk) istσ-konform, falls
• X = S und fur alle i = 1, . . . , k − 1:
σ((a1, b1), . . . , (ai , bi )
)= ai+1 bzw.
σ((a1, b1), . . . , (ai , bi )
)= bi+1
• X = D und fur alle i = 1, . . . , k − 1:
σ((a1, b1), . . . , (ai , bi ), ai+1
)= bi+1 bzw.
σ((a1, b1), . . . , (ai , bi ), bi+1
)= ai+1
Konformitat intuitiv: wahle, wie die Strategie(funktion) es vorgibt
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 226
Spiele gewinnen
Def.: Spieler X gewinnt das Spiel GA,Bk , wenn es eine Strategie σfur Spieler X gibt, so dass X jede σ-konforme Partie gewinnt.
bedeutet intutiv: immer gewinnen konnen, egal wie Gegner spielt
Theorem 37 (Determiniertheit)
Fur alle Strukturen A,B und k ∈ N gilt: S gewinnt GA,Bk gdw. D
gewinnt GA,Bk nicht.
Beweis: Ubung.
Bem.: “⇒” fast trivial, “⇐” keineswegs, wieso?
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 227
Monotonitat in der Rundenzahl
Lemma: Seien A, B relationale Strukturen, k ∈ N.
a) D gewinnt GA,B0
b) Falls S das Spiel GA,Bk gewinnt, so auch GA,Bk+1.
c) Falls D das Spiel GA,Bk+1 gewinnt, so auch GA,Bk .
Beweis: (a) ∅ ist immer partieller Isomorphismus.(b) Betrachte Strategie, die in Runde k + 1 den k-ten Zugwiederholt.(c) Ubung.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 228
Ziel: Ausdrucksstarke
Ziel: zeige, dass gewisse Klassen K von Strukturen nichtFO-definierbar sind, d.h. es gibt keinen FO-Satz ϕ, so dassMod(ϕ) = K.
Erster Ansatz: Finde A,B, so dass A ∈ K, B 6∈ K, aber A ≡ B.
Nach Satzen 28 und 29 uber Isomorphie und elementareAquivalenz kann dies aber nur sein, wenn entweder
• K nicht unter Isomorphie abgeschlossen ist, oder
• A und B beide unendlich sind.
schließt viele interessante aus, z.B. Klasse aller endlichen,zusammenhangenden Graphen
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 229
Quantorentiefe
Def.: Die Quantorentiefe einer Formel ϕ ist
qt(s.= t) = qt(R(t1, . . . , tn)) = 0
qt(¬ϕ) = qt(ϕ)
qt(ϕ ∧ ψ) = qt(ϕ ∨ ψ) = max{qt(ϕ), qt(ψ)}qt(∃x .ϕ) = qt(∀x .ϕ) = 1 + qt(ϕ)
Def.: Seien A,B relational. A ≡k B gdw. fur alle FO-Satze ϕ mitqt(ϕ) ≤ k gilt:
A |= ϕ gdw. B |= ϕ
A, B nicht durch Satz mit Quantorentiefe hochstens kunterscheidbar
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 230
Generalisierte Spiele
Def.: Seien A = (A, τ),B = (B, τ) relational Strukturen, k ∈ N,n ≤ k und a = (a1, . . . , an) ∈ An, b = (b1, . . . , bn) ∈ Bn. Schreibe(a, b) fur (a1, b1), . . . , (an, bn).
Generalisiertes Spiel GA,Bk−n(a, b) gespielt wie GA,Bk , angefangen inRunde (n + 1) mit Annahme, dass in Runden 1, . . . , n bereits(a1, b1), . . . , (an, bn) gewahlt wurden.
ermoglicht Beweise per Induktion uber Rundenzahl
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 231
Satz von Ehrenfeucht und Fraısse
Theorem 38
Fur alle Strukturen A,B und alle k ∈ N gilt:
D gewinnt GA,Bk gdw. A ≡k B
Lasst sich nicht durch Induktion uber k zeigen, wieso? Betrachtefolgende, starkere Aussage.
Theorem 39
Fur alle A = (A, τ), B = (B, τ) und alle k ∈ N, n ≤ k, a ∈ An,b ∈ Bn und x = (x1, . . . , xn) gilt:
D gewinnt GA,Bk−n(a, b) gdw. fur alle ϕ(x) mit qt(ϕ) ≤ k − n :
A, a |= ϕ(x) gdw. B, b |= ϕ(x)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 232
Beweis des Satzes von Ehrenfeucht-Fraısse
“⇒” Angenommen, es gibt ϕ(x) mit qt(ϕ) ≤ k − n, so dassA, a |= ϕ(x) < B, b |= ϕ(x). Konstruiere Gewinnstrategie fur S inGk−n(a, b) per Induktion uber k − n.
k − n = 0: Dann ist ϕ(x) boolesche Kombination aus atomarenFormeln der Form xi
.= xj oder R(xi1 , . . . , xim). Nach Voraussetzung
ist (o.B.d.A.) A, a |= ϕ(x) und B, b 6|= ϕ(x). Man vergewissert sich(z.B. durch Induktion uber den Aufbau von ϕ), dass (a, b) keinpart. Iso. zwischen A und B ist. Somit gewinnt S G0(a, b).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 233
Beweis des Satzes von Ehrenfeucht-Fraısse
k − n > 0: Nach Voraussetzung gilt A, a |= ϕ(x) < B, b |= ϕ(x).Betrachte hier nur den Fall ϕ = ∃xn+1.ψ(x1, . . . , xn+1) undA, a |= ϕ und B, b 6|= ϕ. (Andere Falle analog oder daraufreduzierbar.) D.h. es gibt a ∈ A, so dass
• A, (a, a) |= ψ(x1, . . . , xn+1) und
• fur alle b ∈ B gilt: B, (b, b) 6|= ψ(x1, . . . , xn+1).
Gewinnstrategie fur S: wahle zuerst in A das Element a. Daraufantwortet D mit einem b ∈ B. Nach der Induktionshypothesegewinnt S das Spiel Gk−(n+1)((a, a), (b, b)), also somit auch
Gk−n(a, b).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 234
Isomorphietypen
Die Umkehrung verlangt wieder etwas Vorarbeit.
Def.: Sei A = (A, τ), k ∈ N, n ≤ k, x = (x1, . . . , xn). Definiere furjedes a = (a1, . . . , an) ∈ An eine Formel ϕA,ak−n wie folgt.
ϕA,a0 (x) :=(∧ai=aj
xi.= xj
)∧
(∧ai 6=aj
¬(xi.= xj)
)∧
∧R∈τ
( ∧(ai1
,...,aim )∈RA
R(xi1 , . . . , xim) ∧∧
(ai1,...,aim ) 6∈RA
¬R(xi1 , . . . , xim))
ϕA,ak−n(x) :=∧a∈A
∃xn+1.ϕA,(a,a)k−n−1 ∧ ∀xn+1.
∨a∈A
ϕA,(a,a)k−n−1
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 235
Wohldefiniertheit der Isomorphietypen
Zunachst erscheinen Dis- und Konjuntionen in ϕA,am fur m > 0unendlich. Sind aber nur endlich.
Lemma: Sei A = (A, τ) und x gegeben. Fur alle n,m ≥ 0 ist dieMenge
{ ϕA,am (x) | a ∈ An}
endlich.
Beweis: Ubung.
Hinweis: Beachte, dass a selbst in ϕA,am nicht vorkommt und dass xfest ist.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 236
Isomorphietypen und EF-Spiele
Lemma: Sei k ∈ N, n ≤ k, A = (A, τ), a ∈ An, B = (B, τ),b ∈ Bn. Dann gilt:
D gewinnt GA,Bk−n(a, b) gdw. B, b |= ϕA,ak−n
Beweis: Per Induktion uber k − n. Sei k − n = 0. Dann istB, b |= ϕA,a0 gdw.
• fur alle 1 ≤ i , j ≤ n: bi = bj gdw. ai = aj , und
• fur alle 1 ≤ i1, . . . , im ≤ n: (bi1 , . . . , bim) ∈ RB gdw.(ai1 , . . . , aim) ∈ RA.
Dies ist der Fall gdw. (a, b) part. Iso. zwischen A und B ist, bzw.gdw. D das Spiel GA,B0 (a, b) gewinnt.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 237
Isomorphietypen und EF-Spiele
Sei k − n > 0. Angenommen B, b |= ϕA,ak−n. Dann existiert
• fur jedes a ∈ A ein b ∈ B und
• fur jedes b ∈ B ein a ∈ A
so dass B, (b, b) |= ϕA,(a,a)k−n−1. Eroffnet S nun mit a ∈ A, so kann D
mit entsprechendem b ∈ B und umgekehrt antworten. NachHypothese gewinnt D das Restspiel GA,Bk−n−1((a, a), (b, b)) und
somit auch GA,Bk−n(a, b).
Die Umkehrung gilt genauso.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 238
Beweis des Satzes von Ehrenfeucht-Fraısse
noch zu zeigen: wenn A, a und B, b nicht durch Formel derQuantorentiefe ≤ k − n zu unterscheiden, dann gewinnt DGA,Bk−n(a, b).
Beweis: Angenommen, D gewinnt GA,Bk−n(a, b) nicht. Nach obigem
Lemma gilt dann B, b 6|= ϕA,ak−n. Man vergewissert sich leicht, dassaußerdem folgendes gilt:
• qt(ϕA,ak−n) = k − n (einfach nachrechnen)
• A, a |= ϕA,ak−n (folgt z.B. aus obigem Lemma und derTatsache, dass D per Copy-Cat-Strategie immer das SpielGA,Ak−n (a, a) gewinnen kann)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 239
Nicht-Definierbarkeit von Strukturklassen
wie benutzt man das um Nicht-Definierbarkeit einer Klasse zuzeigen?
Theorem 40
Sei K so, dass es fur jedes k ∈ N Strukturen Ak ,Bk gibt mitAk ∈ K, Bk 6∈ K und D gewinnt GA,Bk . Dann gibt es keinenFO-Satz ϕ mit Mod(ϕ) = K.
Beweis: Angenommen, es gibt ϕ mit Mod(ϕ) = K. Dieses hatteeine feste Quantorentiefe qt(ϕ) = k. Da Ak ∈ K gilt somitAk |= ϕ. Nach Voraussetzung gewinnt D das Spiel GA,Bk , und nachdem Satz von Ehrenfeucht-Fraısse gilt somit Ak ≡k Bk und damitdann auch Bk |= ϕ. Somit ware aber Bk ∈ K = Mod(ϕ), was derVoraussetzung Bk 6∈ K widerspricht.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 240
Zusammenhangende Graphen
Ziel: Die Klasse aller zusammenhangender, ungerichteter Graphenist nicht FO-definierbar.
Da ungerichtete Graphen FO-definierbar sind, brauchen wir uns nurnoch auf den Zusammenhang zu konzentrieren. Kcon :={G = (V ,E ) | G ist zusammenhangender Graph }
Def.: Fur k ∈ N definiere:
• Ak = Zykel der Lange 2k
• Bk = zwei disjunkte Kopien von Ak
offensichtlich: Ak ∈ Kcon, Bk 6∈ Kcon fur alle k ∈ N
Def.: δ(x , y) = Distanz von x zu y (Lange des kurzesten Weges,evtl. ∞)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 241
Zusammenhangende Graphen
Lemma: Fur alle k ∈ N gewinnt D das Spiel GAk ,Bkk .
Beweis: Gewinnstrategie fur D: Seien in i-ter Runde bereitsa1, . . . , ai−1 und b1, . . . , bi−1 gewahlt. Wahle nun (eines von) ai
und bi so, dass fur alle 1 ≤ j , h ≤ i gilt:
• δ(aj , ah) = δ(bj , bh) oder
• δ(aj , ah), δ(bj , bh) ≥ 2k−i+1
In Runde 1 problemlos moglich. Angenommen, bis in die i-teRunde war dies moglich. Dann wahlt S ein Element in der(i + 1)-ten Runde. Sei dies ein ai ∈ Ak . (Anderer Fall ahnlich.) Seiaj dasjenige Element in Ak , welches bereits ausgewahlt wurde undgeringste Distanz zu ai hat.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 242
Zusammenhangende Graphen
Fall δ(ai , aj) ≥ 2k−i . Nach Voraussetzung ist der Abstand zweierbereits ausgewahlter b, b′ ∈ Bk entweder mindestens 2k−(i−1)+1
oder gleich dem Abstand der entsprechenden Elemente in Ak . Solasst sich leicht ein bi finden, welches zu allen bereits gewahlteneinen Abstand von mindestens 2k−(i−1)+1/2 = 2k−i+1 hat.
Fall δ(ai , aj) < 2k−i . Dann muss sich auch ein bi finden lassen, sodass δ(bi , bj) = δ(ai , aj) und außerdem δ(bi , bh) = δ(ai , ah) oderδ(bi , bh), δ(ai , ah) ≥ 2k−i+1 fur alle h < i .
Nach k Zugen gilt also fur alle 1 ≤ i , j ≤ k: δ(ai , aj) = δ(bi , bj)oder δ(ai , aj), δ(bi , bj) ≥ 2. Daraus folgt
• ai = aj gdw. bi = bj und
• (ai , aj) ∈ EAk gdw. (bi , bj) ∈ EBk
was bedeutet, dass (a, b) part. Iso. ist.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 243
Undefinierbarkeitsresultate
Kor.: Es gibt keinen FO-Satz ϕ mit Mod(ϕ) = Kcon.
Kor.: Es gibt keine FO-Formel ϕ(x , y) uber der Signatur τ = (E ),welche Erreichbarkeit in Graphen definiert, also
G , v ,w |= ϕ(x , y) gdw. w ist von v aus erreichbar in G
Beweis: Dann ware Mod(∀x .∀y .ϕ(x , y)) = Kcon.
Kor.: Sei R zweistellige Relation. Ihre reflexiv-transitive, bzw.transitive Hulle R∗ bzw. R+ ist nicht FO-definierbar.
Beweis: Angenommen, es gabe ϕR∗(x , y) mit A, a, b |= ϕR∗(x , y)gdw. (a, b) ∈ (RA)∗. Dann wurde ϕE∗ Erreichbarkeit in Graphendefinieren.Nicht-Definierbarkeit fur transitive Hulle folgt ausϕR∗(x , y) ≡ (x
.= y) ∨ ϕR+(x , y).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 244
Weitere Undefinierbarkeitsresultate
Mithilfe des Satzes von Ehrenfeucht-Fraısse lassen sich vieleKlassen als nicht FO-definierbar identifizieren, z.B.
• alle Strukturen gerader Kardinalitat
• alle Strukturen einer Große n mit n ≡ 0 mod k fur festes k
• alle endlichen Strukturen
• alle balancierten Baume (Baume sind FO-definierbar!)
• korrekte XML-Dokumente
• korrekt verzeigerte Strukturen in einem Java-Heap (z.B.Listen)
• . . .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 245
XML-Dokumente modellieren
Sei T eine endliche Menge von Tag-Namen. Wir modellierenXML-Dokumente als Strukturen uber der relationalen Signatur
τXML = {<} ∪ {Opent ,Closet | t ∈ T}
wobei < 2-stellig und die anderen Relationen 1-st. sind
abstrahiere von konkreten Inhalten; nur Struktur einesXML-Dokuments interessant
XML-Dokument ist somit endliche Liste von offnenden undschließenden Tags
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 246
Beispiel
Das XML-Dokument<library>
<books>
<book>
<id> 17 </id>
<title> Everything to Know About Bears </title>
<author> Michael Scott </author>
<year> 2009 </year>
</book>
</books>
<users>
<user>
<name> Dwight Schrute </name>
<possesses> 17 </possesses>
</user>
</users>
</library>
abstrahieren wir zu der 22-elementigen τXML Struktur,• deren Elemente eine lineare Ordnung bzgl. < bilden• deren 1. Element nur das Pradikat Openlibrary erfullt,• deren 2. Element nur das Pradikat Openbooks erfullt,• . . .• deren 5. Element nur das Pradikat Close id erfullt,• . . .
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 247
XML-Dokumente
Def.: Die Klasse KXML aller gultig-(modelliert-)enXML-Dokumente ist die kleinste Klasse K, bestehend ausendlichen, linear geordneten τXML-Strukturen, fur die gilt:
• Ist t Tag-Name, n ≥ 0 und d1, . . . , dn ∈ K, so istOpent d1 . . . dn Closet ∈ K.
Beachte: KXML induktiv definiert. Induktionsanfang (n = 0) und-schritt (n > 0) in einem abgehandelt.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.7 Pradikatenlogik – Ausdrucksstarke 248
FO-Undefinierbarkeit von KXML
Thm.: Die Klasse KXML ist nicht FO-definierbar.
Beweis: Sei t ein fest gewahlter Tag-Name. Fur jedes k ∈ Ndefiniere Strukturen Ak ,Bk wie folgt:
• Ak = Opent . . . Opent︸ ︷︷ ︸2k mal
Closet . . . Closet︸ ︷︷ ︸2k mal
• Bk = Opent . . . Opent︸ ︷︷ ︸2k mal
Closet . . . Closet︸ ︷︷ ︸2k+1 mal
Fur alle k ∈ N gilt:
• Ak ∈ KXML
• Bk 6∈ KXML
• D gewinnt GAk ,Bkk
Nach Thm. 40 ist KXML somit nicht FO-definierbar.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 249
Beispiel
Bsp.: Betrachte Schlussweise in:
1 Wenn es regnet, dann wird die Straße nass. R → N
2 Es regnet. R
3 Also wird die Straße nass. N
(3) folgt aus (1) und (2), siehe z.B. Resolutionsregel
was ist mit folgender Schlußweise:
1 Alle Griechen sind Philosophen. ∀x .G (x) → P(x)
2 Sokrates ist eine Grieche. G (s)
3 Also ist Sokrates ein Philosoph. P(s)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 250
Resolution
zur Erinnerung: aussagenlogische Resolution Verfahren furUnerfullbarkeit
wegen Satz von Herbrand klar: Resolution auch fur FO moglich
hier zunachst Resolutionskalkul fur FO ohne Gleichheitssymbol.=
Formeln immer gegeben als Klausel-Mengen Φ = {ϕ1, . . .} inSkolem-Normalform
ϕi = ∀x1 . . .∀xn
m∨j=1
`j
wobei `j Literale uber atomaren Formeln R(t1, . . . , tn); nurVariablen x1, . . . , xn
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 251
Beispiel
Notation: universelle Quantifizierung nur noch implizit
Bsp.: {∀x .P(x) → ∃y .R(x , y),∃v .∀z .P(v) ∧ ¬R(v , z)}
in Skolem-Normalform:
{∀x .P(x) → R(x , f (x)),∀z .P(c) ∧ ¬R(c , z)}
dann in Klauselform mit impliziter univ. Quantifizierung:
{¬P(x) ∨ R(x , f (x)),P(c),¬R(c , z)}
ist intuitiv unerfullbar: 1. und 2. Klausel sorgen dafur, dassR(c , f (c)) gilt, dies widerspricht aber der 3. Klausel wegenimpliziter, univ. Quantifizierung uber z
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 252
Grundresolution
hier zunachst vereinfachter Fall der Grundresolution: variablen-freieKlauseln
Def.: Resolutionsbeweis fur Klauselmenge Φ ist endlicher Baum:
• Wurzel mit leerer Klausel ∅ beschriftet
• Blatter mit Klauseln ϕ ∈ Φ beschriftet
• Sohne nach Resolutionsregel konstruiert:
C ,R(t1, . . . , tn) C ′,¬R(t1, . . . , tn)
C ,C ′
beachte: dasselbe wie Resolution fur Aussagenlogik
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 253
Grundresolution ist korrekt und vollstandig
Theorem 41
Sei Φ variablen-freie Klauselmenge. Dann ist ϕ unerfullbar gdw. eseinen Grundresolutionsbeweis fur Φ gibt.
Beweis: Folgt sofort aus Satz von Herbrand. Beachte: Φ = AL(Φ)in diesem Fall. �
Ziel: Einschrankung auf Variablenfreiheit aufheben
Lemma: Sei T Menge aller Grundterme uber zugrundeliegenderSignatur. ∀x1 . . . xn.ϕ ist unerfullbar gdw.⋃
(t1,...,tn)∈T n
ϕ[t1/x1, . . . , tn/xn]
unerfullbar ist.
Beweis: Nach Satz von Lowenheim-Skolem hat jede erfullbareFormel ein Herbrand-Modell.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 254
Resolution fur FO
Resolutionsbeweis definiert wie oben, jedoch angewendet aufallgemeine Klauselmengen mit Variablen x1, . . . , xn
zusatzliche Instanziierungsregel
C
C [t1/x1, . . . , tn/xn]
Theorem 42
Φ unerfullbar gdw. es Grundresolutionsbeweis mitInstanziierungsregel fur ϕ gibt.
Beweis: “⇒” Obiges Lemma ubertragt Unerfullbarkeit aufGrundklauselmenge, also erst entsprechende Instanziierungendurchfuhren, dann Resolventen bilden.“⇐” Wie oben, zusatzlich mit folgendem Prinzip. Ist Φ ∧ ϕ[t/x ]unerfullbar, so ist auch Φ ∧ ∀x .ϕ unerfullbar.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 255
Beispiel
Bsp:(∀x .∀y .P(x) ∨ P(y)
)∧
(¬P(c) ∨ ¬P(d)
)ist unerfullbar
1 in Klauselform: {P(x),P(y)}, {¬P(c),¬P(d)}2 Expansion mittels Herbrand-Universum in aussagenlogische
Klauselmenge liefert
{P(c)}, {P(c),P(d)}, {P(d)}, {¬P(c),¬P(d)}
3 Herleitung der leeren Klausel per Resolution ist leicht
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 256
Pragmatische Aspekte
Verfahren per Reduktion auf Grundresolution in Praxis ungeeignet;verlangt, die Terme im Vorhinein ohne Ruckgriff auf denResolutionsbeweis zu erraten
besseres Verfahren wunschenswert, welches Instanziierungen erstdann vornimmt, wenn sie wirklich gebraucht werden
wie soll man dann Literale mit Variablen behandeln?
Bsp. sollte man zwei Klauseln mit folgenden Literalen resolvierenkonnen?
• R(f (x), c), ¬R(f (f (c)), y)
• R(f (x), c), ¬R(f (f (c)), x)
• R(x , y), ¬R(y , y)
• P(g(f (x), a)), ¬P(g(z , f (y)))
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 257
Substitutionen
Def.: Substitution ist Abbildung σ von Variablen auf Terme
Bsp.: σ = [x 7→ g(c , f (d)), y 7→ f (x), z 7→ z ]
Konvention: Variablen, die nicht explizit in [. . .] aufgelistet werden,werden auf sich selbst abgebildet
Def.: Substition σ kann in naturlicher Weise erweitert werden auf
• Terme: σ(f (t1, . . . , tn)) := f (σ(t1), . . . , σ(tn))
• Pradikate: σ(R(t1, . . . , tn)) := R(σ(t1), . . . , σ(tn))
• Literale: σ(¬`) := ¬σ(`)
• Klauseln: σ(Φ) := {σ(ϕ) | ϕ ∈ Φ}
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 258
Syntaktische Unifikation
syntaktische Unifikation = finde Substitution fur Variablen, diezwei (oder mehrere) Pradikate gleich macht
Def.: Substitution σ heißt Unifikator von `1, . . . , `n, falls
σ(`1) = σ(`2) = . . . = σ(`n)
Bsp.: Gibt es Unifikatoren fur folgende Pradikate? Welche?1 P(x) und P(c)2 P(x) und Q(x)3 R(f (x), c) und R(z , f (y))4 R(f (x), c) und R(f (f (c)), y)5 R(f (x), c) und R(f (f (c)), x)6 R(x , y) und R(y , y)7 P(x) und P(f (x))8 P(x) und P(f (y))
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 259
Allgemeinste Unifikatoren
Def.: Seien σ, ρ zwei Substitutionen. Dann heißt σ allgemeiner alsρ, geschrieben σ . ρ, falls es eine Substitution ζ gibt, so dass furalle Pradikate ` gilt:
ρ(`) = ζ(σ(`))
Bsp.:
• [x 7→ f (y), y 7→ c] . [x 7→ f (f (y)), y 7→ c]
• [x 7→ f (y), y 7→ c] und [x 7→ f (f (y)), y 7→ z ] sindunvergleichlich bzgl. .
• [x 7→ y ] . [y 7→ x ] und umgekehrt!
Def. σ heißt allgemeinster Unifikator (MGU) von `1, . . . , `n, fallsσ . ρ fur jeden Unifikator ρ von `1, . . . , `n
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 260
Allgemeinste Unifikatoren
ein paar Fakten uber Unifikation
• Unifikatoren mussen nicht immer existieren: P(f (x)),P(g(y))
• gibt es Unifikator, so gibt es auch MGU
• MGUs mussen nicht eindeutig sein: P(x),P(y) hat MGUs[x 7→ y ], [y 7→ x ]
• MGUs lassen sich berechnen
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 261
Faktoren
Def.: Sei C = `1, . . . , `n,C′ Klausel, σ MGU von `1, . . . , `n. Dann
heißt σ(`1),C′ Faktor von C
Resolution muss auf Faktoren ausgefuhrt werden:
Bsp: {P(x),P(y)}, {¬P(c),¬P(d)} unerfullbar, aber leere Klauselnicht herleitbar durch Resolution auf einzelnen Literalen
im folgenden Faktorisierung gleich in Resolutionsschritt eingebaut
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 262
Pradikatenlogische Resolution
Def.: Seien C und D Klauseln. Dann heißt E Resolvente von Cund D, falls
1 es C ′, D ′ gibt, die aus C und D ′ durch evtl. Umbenennen vonVariablen entstehen und keine Variablen gemeinsam haben, sodass
2 C ′ = α1, . . . , αn,C′′ und D ′ = ¬β1, . . . ,¬βm,D
′′,
3 es MGU σ von α1, . . . , αn, β1, . . . , βm gibt und
4 E = σ(C ′′ ∪ D ′′)
Def.: Resolutionsbeweis fur Klauselmenge Φ mit dieserResolutionsregel wie ublich definiert
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 263
Beispiel
Bsp.: Betrachte C = {C1,C2,C3} mit
C1 = {¬P(y , c),¬P(y , x),¬P(x , y)}C2 = {P(y , f (y)),P(y , c)}C3 = {P(f (y), y),P(y , a)}
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 264
Notwendigkeiten
Notwendigkeit zu Faktorisieren bereits gezeigt
Variablenumbenennung ebenfalls essentiell:{P(c , y)}, {Q(x , d)}, {¬P(x , c),¬Q(d , y)} ist
• unerfullbar,
• ohne Variablenumbenennung nicht zu ∅ zu resolvieren
MGUs ebenfalls essentiell: {¬Q(y)}, {Q(x),P(x)}, {Q(x),¬P(x)}fuhrt z.B. mit Unifikatoren [y 7→ c , x 7→ c] einerseits und[y 7→ d , x 7→ d ] andererseits nicht zum Ziel
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 265
Korrektheit und Vollstandigkeit
Theorem 43
Sei C Klauselmenge. Es gibt Resolutionsbeweis fur C gdw. Cunerfullbar ist.
Beweisskizze: “⇒” Wie bisher: Zeige, dass erfullbare Mengeunter Hinzunahme von Resolventen erfullbar bleibt.“⇐” Sei C unerfullbar. Nach Thm. 42 gibt esGrundresolutionsbeweis mit Instanziierungen zu Grundtermen.Dieser lasst sich in einen Resolutionsbeweis umbauen, welcher dieInstanziierungen mittels MGUs teilweise und nur an benotigterStelle macht.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 266
Beschrankung auf zwei Terme
noch zu tun: Berechnung von MGUs
Lemma: Seien t1, . . . , tn, n > 1 Terme ohne Funktionssymbol f .Jeder Unifikator fur t1, . . . , tn ist auch ein Unifikator furf (t2, . . . , tn), f (t1, . . . , t1) und umgekehrt.
Beweis: Ubung.
Soll heißen: bei der Berechnung von MGUs konnen wir uns auf denFall zweier Terme t, t ′ beschranken. Beachte: Fur Unifikation keinUnterschied zwischen Funktions- und Pradikatsymbolen.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 267
Berechnung von MGUs
Algorithmus arbeitet auf Menge von Paaren von TermenM = {(t1, t ′1), . . . , (tn, t ′n)}
Aufruf mit zu unifizierendem Paar (t, t ′)
iteriere, solange noch eine der folgenden Regeln die Menge Mandert
• entferne Paare der Form (t, t) aus M
• ersetze jedes (t, x) in M durch (x , t), falls x Variable, t nichtVariable
• gibt es (t, t ′) ∈ M mit t = f (s1, . . . , sm), t ′ = f (u1, . . . , um),so ersetze M durch (M \ {(t, t ′)}) ∪ {(s1, u1), . . . , (sm, um)}
• ist M = {(x , t), (t1, t ′1), . . . , (tn, t ′n)}, so dass x nicht in tvorkommt, so ersetze M durch{(x , t), (σ(t1), σ(t ′1)), . . . , (σ(tm), σ(t ′m))}, wobei σ = [x 7→ t]
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 4.8 Pradikatenlogik – Resolution 268
Berechnung von MGUs
Termination nicht trivial; aber Regeln nicht beliebig langeanwendbarzwei Falle bei Termination:
1 M = {(x1, t1), . . . , (xn, tn)}, wobei x1, . . . , xn paarweiseverschieden und kommen nicht in t1, . . . , tn vor [x1 7→ t1, . . . , xn 7→ tn] ist MGU
2 keine Regel anwendbar, aber M nicht von obiger Form Eingabe nicht unifizierbar
Theorem 44 (ohne Beweis)
Obiger Algorithmus terminiert immer und berechnet einen MGUfur die Eingabeterme.
Logikprogrammierung
I Berechnung durch Resolution
I Die Programmiersprache Prolog
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.1 Logikprogrammierung – Berechnung durch Resolution 366
Resolution als Berechnungsmodell
bisher Resolution nur als Verfahren zum Beweis der Unerfullbarkeiteiner Klauselmenge
Resolution kann mehr: Erzeugung neuer Terme durch MGUs inIteration der Resolution ist auch eine Berechnung
Verallgemeinerung:
• gegeben Eingabe-Klauselmenge C, Ziel-Klausel ϕ
• berechne Substitution σ, so dass σ(ϕ) aus C per Resolutionherleitbar ist
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.1 Logikprogrammierung – Berechnung durch Resolution 367
Beispiel
Bsp. Konstante 0, einst. Funktion s zur symbolischenReprasentation naturlicher Zahlen
Axiomatisierung der Addition:
∀x .Add(x , 0, x)
∀x .∀y .∀z .Add(x , y , z) → Add(x , s(y), s(z))
Axiomatisierung der Multiplikation:
∀x .Mult(x , 0, 0)
∀x .∀y .∀z .Mult(x , y , z) ∧ Add(y , z , u) → Mult(x , s(y), u)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.1 Logikprogrammierung – Berechnung durch Resolution 368
Beispiel
Was ist 3 + 2? Fur welchen Term t ist Add(s(s(s(0))), s(s(0)), t)Konsequenz aus obiger Klauselmenge?
Beachte: Φ |= ϕ gdw. Φ ∧ ¬ϕ unerfullbar
benutze also Resolutionsverfahren fur
{Add(x , 0, x)}, {¬Add(x , y , z),Add(x , s(y), s(z))}, {¬Add(s3(0), s2(0), u)}
fuhre am Ende aufgesammelte Substitutionen aus, um u korrektzu instanziieren
Was ist 3 ∗ 2? Ubung.
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.1 Logikprogrammierung – Berechnung durch Resolution 369
Beispiel
symbolische Differenzierung modellieren; Signatur(+, ∗, 1, 0, x , y , . . .) (Achtung, x etc. ist Konstante in Signatur,aber Variable in modelliertem Szenario!)
{D(x , x , 1)}{D(y , x , 0) | y 6= x}{D(f , x , f ′) ∧ D(g , x , g ′) → D(+(f , g), x ,+(f ′, g ′))}{D(f , x , f ′) ∧ D(g , x , g ′) → D(∗(f , g), x ,+(∗(f , g ′), ∗(f ′, g)))}
Ubungen:
• berechne die Ableitung von x2 · (y + x) nach x
• erweitere dies um naturliche Zahlen und Operatoren pow(f , n)fur Polynome
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.1 Logikprogrammierung – Berechnung durch Resolution 370
Resolutionsstrategien
Ziel: Berechnungsmechanismus in Resolution in einerProgrammiersprache ausnutzen
pragmatisches Problem: obiger Resolutionskalkul nicht sehrzielgerichtet; Resolutions-Baumstruktur vollkommen beliebig
effiziente Auswertung in Interpreter erfordert klarere Regeln
leicht zu machen, z.B. “wahle immer kleinste passende Klausel”etc.
wirft Frage auf: gilt Korrektheit (Φ unerfullbar gdw.Resolutionsbeweis existiert) auch unter Einschrankung aufbestimmte Resolutionsstrategien?
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.1 Logikprogrammierung – Berechnung durch Resolution 371
SLD-Resolution
Def.: SLD-Resolutionsbeweis fur Φ ist Liste C1, . . . ,Cn, so dass
• C1 ∈ Φ
• fur alle i = 2, . . . , n existiert C ∈ Φ, so dass Ci Resolvent vonCi−1 und C
beachte: Liste = degenerierter Baum
Bsp.: (man stelle sich geeignete FO-Literale vor)
Φ = {{A,B}, {¬A,B,¬C}, {¬B,¬C}, {C}}
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.1 Logikprogrammierung – Berechnung durch Resolution 372
SLD-Resolution und Horn-Klauseln
zur Erinnerung: Horn-Klausel ist P(t) ∨ ¬Q1(s1) ∨ . . . ∨ ¬Qn(sn)mit n ≥ 0
Theorem 45 (ohne Beweis)
Sei Φ Menge von Horn-Klauseln. Φ ist unerfullbar gdw. esSLD-Resolutionsbeweis fur Φ gibt.
SLD-Resolution ist nicht vollstandig fur allgemeine Klauselmengen
Bsp.: man versuche, einen SLD-Resolutionsbeweis fur
Φ := {{A,B}, {¬A,B}, {A,¬B}, {¬A,¬B}}
zu konstruieren
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.2 Logikprogrammierung – Prolog 373
Programmiersprache Prolog
Prolog-Programm ist Liste von Fakten (einelementige Hornklausel)und Regeln (mehrelementige Hornklauseln)
• Variablen beginnen mit Großbuchstaben oder Unterstrich
• Funktionen und Pradikate beginnen mit Kleinbuchstaben
Bsp.:
p(X,c,X).p(X,f(Y),f(Z)) :- p(X,Y,Z).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.2 Logikprogrammierung – Prolog 374
Syntax
Klauselform gemacht fur Konjunktionen im Antezedent:
isWitch(X) :- female(X), burnable(X), sameWeight(X,duck).
Disjunktionen im Antezedent modellierbar:A ∨ B → C ≡ (A → C ) ∧ (B → C )
isParent(X,Y) :- isFather(X,Y).isParent(X,Y) :- isMother(X,Y).
oder
isParent(X,Y) :- isFather(X,Y); isMother(X,Y).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.2 Logikprogrammierung – Prolog 375
Anfragen
Anfrage an ein Programm (besser: den Interpreter) stoßtBerechnung an
Anfrage = Liste von Pradikaten (Ziele, Goals)
Bsp.:
vert(point(X,Y1),point(X,Y2)).hori(point(X1,Y),point(X2,Y)).
Anfrage P1 = point(3,4), P2 = point(2,5), vert(P1,Z),
horiz(P2,Z).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.2 Logikprogrammierung – Prolog 376
Semantik
wie wird eine Anfrage unter einem Prolog-Programm ausgewertet?
intuitiv:
• arbeite der Reihe nach alle Ziele der Anfrage ab
• zu jedem Ziel suche passende linke Seite (Unifikation!) einerRegel oder eines Fakts
• ersetze Ziel durch rechte Seite dieser Regel
• wende berechnete Substitution auf samtliche Restziele an
formal: SLD-Resolution mit jeweils erster passender Klausel
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.2 Logikprogrammierung – Prolog 377
SLD-Resolution in Prolog
Abweichungen von einfacher SLD-Resolution:
• Prolog berechnet mehr als eine Antwort
isAdvisor(euler,lagrange).isAdvisor(lagrange,fourier).isAdvisor(lagrange,poisson).isAdvisor(poisson,dirichlet)....isDescendant(X,Y) :- isAdvisor(Y,X); isAdvisor(Y,Z), isDescendant(X,Z).
• Termination und Antworten abhangig von Klauselreihenfolge
term1(X). term2(X) :- term2(f(X)).term1(X) :- term1(f(X)). term2(X).
• Termination und Antworten abhangig von Literalreihenfolge(ahnlich)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.2 Logikprogrammierung – Prolog 378
Gleichheit
beachte: Resolution lasst sich wie Sequenzenkalkul auf FO mitGleichheit erweitern
Prolog kennt auch Gleichheitspradikat =
Behandlung von Gleichheit bei SLD-Resolution besonders einfach
• bisher unbenutzte Klauseln werden so belassen
• bisherige Berechnung steckt ganz in Substitutionen aktuellerKlausel
Gleichheit wie definiertes Pradikat, welches Gleichheit auf Termenrealisiert
Bsp.: Was bewirken folgende Anfragen? s = s, s = t, X = X,X = Y?
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.2 Logikprogrammierung – Prolog 379
Unifikation in Prolog
Prolog benutzt anderen Mechanismus als kennengelerntesyntaktische Unifikation
zur Erinnerung: x und f (x) nicht unifizierbar
Grund: x kommt selbst in f (x) vor
Unifikation ist Kern des Berechnungsmechanismus in Prolog
• wird standig ausgefuhrt
• muss deswegen moglichst schnell gehen
• aus Effizienzgrunden Verzicht auf Test auf Auftreten
Bsp.: Anfrage X = f(X)
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.2 Logikprogrammierung – Prolog 380
Arithmetik
Additionsbeispiel leicht in Prolog zu implemetieren:
add(X,null,X).add(X,s(Y),s(Z)) :- add(X,Y,Z).
Verwendung von abstrakten Termen jedoch unhandlich
Prolog kennt auch arithmetische Operatoren +,-,* etc., Ausdruck3+2*4 ist aber nur Term!
was ist Antwort auf Anfrage 2+2 = 3+1?
Addition also z.B. folgendermaßen; funktioniert das?
add1(X,0,X).add1(X,Y,Z) :- add1(X,Y-1,Z-1).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.2 Logikprogrammierung – Prolog 381
Arithmetik
funktionierende Losung:
add2(X,0,Z) :- Z is X.add2(X,Y,Z) :- V is Y-1, W is X+1, add2(W,V,Z).
beachte: Pradikat is ist Gleichheit auf arithmetischen Termen,nachdem rechte Seite ausgewertet wurde! Variablen darin musseninstanziiert sein
was sollte bei folgenden Anfragen herauskommen?
• X is 3+1.
• 3+1 is X.
• X is X.
• 2+2 is 3+1.
beachte: add kann auch subtrahieren, add2 aber nicht
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.2 Logikprogrammierung – Prolog 382
Listen
brauchbare Programmiersprache muss Datenstrukturen zurVerfugung stellen
einfachstes Beispiel: Listen
sind prinzipiell uber Terme modellierbar; Benutzung jedocheinfacher bei eingebautem Datentyp
• Listennotation: [0,2,4,[1,3],X,[3,Y]]
• leere Liste is []
• Separation in Kopfteil und Restliste: [X | Z], [X,Y | Z],etc.
Bsp.: extrahiere Listenelement an bestimmter Position
atPosition(X,[X| ],P) :- 0 is P.atPosition(X,[ |T],P) :- atPosition(X,T,P-1).
Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.2 Logikprogrammierung – Prolog 383
Beispiel
zum Abschluss großeres Beispiel
bekanntes Ratsel:
• Bauer muss Hund, Katze, Maus mit Boot uber Fluss bringen
• jeweils hochstens 1 Tier pro Fahrt ubersetzen
• niemals Hund und Katze oder Katze und Maus alleine lassen
Prolog kann dazu alle Losungen berechnen
zeigt Vorteil logischer (allgemeiner: deklarativer) Programmierung:Programmierer formuliert Anforderungen an Losung, Interpreterberechnet Losung
top related