theoretische informatik: logik - uni-kassel.de · theoretische informatik: logik, m. lange, fb16,...

258
Theoretische Informatik: Logik Vorlesung im Wintersemester 2010/11 Martin Lange, Bahareh Badban, Norbert Hundeshagen, Marcel Vollweiler, Kadir Aytem¨ ur, Stephan Opfer FG Formale Methoden und Verifikation (Arbeitstitel) FB Elektrotechnik/Informatik Universit¨ at Kassel 8. Februar 2011

Upload: others

Post on 06-Sep-2019

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 2: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

Organisatorisches

Page 3: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 4: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 5: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 6: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 7: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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!

Page 8: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 9: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 10: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 11: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 12: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

Motivation und Geschichte

I Geschichte der Logik

I Logik und Informatik

Page 13: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 14: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 15: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 16: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 17: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 18: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 19: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 20: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 21: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 22: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 23: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

• . . .

Page 24: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

• . . .

Page 25: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 26: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

Aussagenlogik

I Syntax und Semantik

I Boolesche Algebra

I Erfullbarkeit

I SAT-Solver

I Kompaktheit

I Beweiskalkule

Page 27: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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?

Page 28: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 29: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 30: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 31: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 32: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 33: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 34: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 35: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 36: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 37: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 38: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 )

Page 39: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 )

Page 40: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 41: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 42: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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?

Page 43: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 44: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 45: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 46: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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, ·).

Page 47: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 48: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 49: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 = ∅

Page 50: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 51: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 52: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 53: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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?

Page 54: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

• . . .

Page 55: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 56: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 57: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 58: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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?

Page 59: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 60: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 ψ.

Page 61: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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ϕ ≡ ψ).

Page 62: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 ϕ}

Page 63: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 64: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 )

Page 65: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 66: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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/

Page 67: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 68: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 69: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

• . . .

Page 70: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 71: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 72: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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?

Page 73: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 74: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 Φ. �

Page 75: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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Ψ.

Page 76: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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. �

Page 77: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 78: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 ϕ ∈ Φ

Page 79: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 |= ϕ.

Page 80: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 81: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 82: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.5 Aussagenlogik – Kompaktheit 82

Beispiel

Bsp.: K =

K -Kachelung der 3× 3-Ebene:

Page 83: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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))

Page 84: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 .

Page 85: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 86: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 87: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 88: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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?

Page 89: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 90: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 91: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 92: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 93: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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∧

Γ |=∨

∆.

Page 94: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 95: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 96: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 97: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 98: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 99: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 100: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 101: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 102: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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. �

Page 103: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 104: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 + ||ϕ||+ ||ψ||

Page 105: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 106: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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Γ =⇒ ∆.

Page 107: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 108: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 109: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 110: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 111: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

• . . .

Page 112: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

...

Page 113: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 114: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 115: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

Pradikatenlogik 1. Stufe

I Strukturen

I Syntax und Semantik

I Normalformen

I Sequenzenkalkul

I Fundamentale Satze

I (Un-)Entscheidbarkeit

I Ausdrucksstarke

I Resolution

Page 116: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 117: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 .

• . . .

Page 118: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 119: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 τ

Page 120: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 121: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 122: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 123: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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}.

Page 124: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 125: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 126: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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, ϑ |= 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] |= ϕ

Page 127: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 (ϕ ∨ ψ)

• . . .

Page 128: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 129: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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(Φ)?

Page 130: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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?

Page 131: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 132: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 133: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 134: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 .

Page 135: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 136: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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(|ϕ|).

Page 137: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 138: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 ϕ.

Page 139: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 140: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 141: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)) =⇒ . . .

Page 142: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 .¬ϕ.

Page 143: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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!

Page 144: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 145: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 146: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 147: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 148: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 149: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 150: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 151: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 152: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 153: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 154: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 155: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 156: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 .

Page 157: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 ]∼.

Page 158: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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Π/∼.

Page 159: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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).

Page 160: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 .ψ.

Page 161: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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).

Page 162: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 163: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 τ .

Page 164: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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(ψ))

Page 165: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 166: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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∗(Φ)

Page 167: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 168: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 169: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 .ϕ.

Page 170: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 171: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 172: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 173: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 174: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 175: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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}).

Page 176: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 177: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 178: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 |= ϕ.

Page 179: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 180: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 181: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 182: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 183: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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?

Page 184: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 185: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 186: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 187: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 188: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 189: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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]]

ψ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.

Page 190: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 191: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 ′

))

Page 192: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)).

Page 193: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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 π.

Page 194: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 195: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.)

Page 196: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 197: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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?

Page 198: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 199: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 200: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 201: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 202: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 203: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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).

Page 204: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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).

Page 205: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 206: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 207: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 208: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 209: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 210: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 211: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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. ∞)

Page 212: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 213: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 214: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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).

Page 215: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

• . . .

Page 216: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 217: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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,• . . .

Page 218: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 219: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 220: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 221: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 222: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 223: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 224: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 225: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 226: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 227: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)))

Page 228: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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: σ(Φ) := {σ(ϕ) | ϕ ∈ Φ}

Page 229: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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))

Page 230: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 231: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 232: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 233: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 234: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)}

Page 235: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 236: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 237: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 238: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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]

Page 239: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 240: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

Logikprogrammierung

I Berechnung durch Resolution

I Die Programmiersprache Prolog

Page 241: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 242: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 243: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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.

Page 244: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 245: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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?

Page 246: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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}}

Page 247: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 248: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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).

Page 249: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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).

Page 250: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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).

Page 251: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 252: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 253: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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?

Page 254: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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)

Page 255: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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).

Page 256: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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

Page 257: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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).

Page 258: Theoretische Informatik: Logik - uni-kassel.de · Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 1.0 Organisatorisches 3 Inhalt 1 Motivation und Geschichte Woher kommt

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