Vorlesung Logik Wintersemester 2015/16 Universität Duisburg-Essen. Wer sind wir? Barbara König Übungsleitung: Dennis Nolte, Dr.

Größe: px
Ab Seite anzeigen:

Download "Vorlesung Logik Wintersemester 2015/16 Universität Duisburg-Essen. Wer sind wir? Barbara König Übungsleitung: Dennis Nolte, Dr."

Transkript

1 Vorlesung Logik Wintersemester 2015/16 Universität Duisburg-Essen Barbara König Übungsleitung: Dennis Nolte, Dr. Harsh Beohar Barbara König Logik 1 Barbara König Logik 2 Wer sind wir? Das heutige Programm: Organisatorisches Vorstellung Ablauf der Vorlesung und der Übungen Prüfung & Klausur Literatur & Folien Einführung und Motivation: Logik in der Informatik Inhalt der Vorlesung Grundbegriffe der Dozentin: Prof. Barbara König Raum LF barbara koenig@uni-due.de Sprechstunde: nach Vereinbarung Web-Seite: Barbara König Logik 3 Barbara König Logik 4

2 Wer sind wir? Vorlesungstermine Übungsleitung: Dennis Nolte Raum LF Übungsleitung: Dr. Harsh Beohar Raum LF Vorlesungstermin: Mittwoch, 8:30 10:00 Uhr, im Raum LB 107 Barbara König Logik 5 Termine der Übungsgruppen/Tutorien Barbara König Logik 6 Hinweise zu den Übungen Übungsgruppen (zur Besprechung der Übungsblätter): Gruppe Tag Uhrzeit Raum 1 Mittwoch 16:00 18:00 LE Donnerstag 10:00 12:00 LC (englisch) Donnerstag 10:00 12:00 LF Donnerstag 12:00 14:00 LE Donnerstag 14:00 16:00 LE Freitag 8:00 10:00 LF Freitag 12:00 14:00 LE 120 Die Anzahl und die Termine der Gruppen können sich noch ändern! Die Übungen und Tutorien beginnen in der dritten Vorlesungswoche am Mittwoch, den 4. November. Bitte versuchen Sie, sich möglichst gleichmäßig auf die Übungen zu verteilen. Besuchen Sie die Übungen! Diesen Stoff kann man nur durch regelmäßiges Üben erlernen. Auswendiglernen hilft nicht besonders viel. Die Übungsblätter werden jeweils am Mittwoch der Vorwoche ins Netz gestellt. Das erste Übungsblatt wird am bereitgestellt. Barbara König Logik 7 Barbara König Logik 8

3 Hinweise zu den Übungen Prüfung Abgabe der gelösten Aufgaben bis Mittwoch der folgenden Woche, 16:00 Uhr. Einwurf in den Briefkasten neben dem Raum LF 259 oder Abgabe per Moodle. Bitte geben Sie auf Ihrer Lösung deutlich die Vorlesung, Ihren Namen, Ihre Matrikelnummer und Ihre Gruppennummer an. Elektronische Abgaben sind nur als PDF zulässig! Bitte benennen Sie Dateien nach folgendem Schema (um eine eindeutige Namenswahl zu gewährleisten): <vorname>-<nachname>-<matrnr>-<blattnr>.pdf Es sind keine Gruppenabgaben erlaubt, nur Einzelabgaben. Barbara König Logik 9 Klausur am Ende des Semesters. Voraussichtlicher Termin: Mittwoch, 24. Februar 2016, 8:30-10:30 Uhr Räume: LX 1203, LX 1205 Anmeldung über das Prüfungsamt Wenn Sie 50% der Übungspunkte erzielt haben, so erhalten Sie einen Bonus für die Klausur. (Für das Vorrechnen in der Übung gibt es 10 Extrapunkte.) Auswirkung: Verbesserung um eine Notenstufe; z.b. von 2,3 auf 2,0 Bonuspunkte aus dem WS 2014/15 (oder früher) gelten nicht mehr! Barbara König Logik 11 Hinweise zu den Übungen Wir verwenden Moodle, um: die Aufgabenblätter zur Verfügung zu stellen, die Hausaufgaben elektronisch (nur PDF!) abzugeben und um Diskussionsforen bereitzustellen. Moodle-2-Plattform an der Universität Duisburg-Essen: (siehe auch Link auf der Webseite) Bitte legen Sie dort einen Zugang an (falls noch nicht vorhanden) und tragen Sie sich in den Kurs Logik (WS 2015/16) (Ingenieurwissenschaften Informatik und Angewandte Kognitionswissenschaft) ein. Bitte mit Uni-Kennung anmelden! Zugangsschlüssel:... Literatur Barbara König Logik 10 Die Vorlesung basiert im Wesentlichen auf folgendem Buch: Uwe Schöning: Logik für Informatiker. Spektrum, Weitere relevante Bücher: Jon Barwise, John Etchemendy: Language, Proof, and Logic. Seven Bridges Press, Auf Deutsch: Sprache, Beweis und Logik, Band I Aussagenund. mentis, Kreuzer, Kühling: Logik für Informatiker, Pearson, Barbara König Logik 12

4 Literatur Folien Einführende/unterhaltsame Literatur: Douglas R. Hofstadter: Gödel, Escher, Bach: An Eternal Golden Braid. Basic Books, Auf Deutsch: Gödel, Escher, Bach: Ein Endloses Geflochtenes Band. dtv, Folien werden im Web bereitgestellt, regelmäßig aktualisiert, im Wesentlichen den Folien des letzten Semesters (WS 14/15) entsprechen Ein eigenes Skript gibt es neben dem Buch von Schöning nicht. Geschichte der Logik Barbara König Logik 13 Syllogismen (I) Barbara König Logik 14 Beginn in Griechenland: Aristoteles ( v.chr.) untersucht das Wesen der Argumentation und des logischen Schließens Verschiedene Werke, u.a.: Analytica priora, Analytica posteriora Seither: Weiterentwicklung der Logik, Formalisierung, Verwendung in der Mathematik und Informatik Aristoteles entwickelte den Begriff des Syllogismus: A syllogism is discourse in which, certain things being stated, something other than what is stated follows of necessity from their being so. I mean by the last phrase that they produce the consequence, and by this, that no further term is required from without in order to make the consequence necessary. Wenn alle Menschen sterblich sind und Sokrates ein Mensch ist, dann ist Sokrates sterblich. Barbara König Logik 15 Barbara König Logik 16

5 Syllogismen (II) Verschiedene Logiken Alle Dackel sind Hunde Alle Hunde sind Tiere Dann sind alle Dackel Tiere Keine Blume ist ein Tier Alle Hunde sind Tiere Dann ist keine Blume ein Hund Alle Delfine leben im Meer Alle Delfine sind Säugetiere Dann leben einige Säugetiere im Meer Alle P sind M Alle M sind S Alle P sind S Kein P ist M Alle S sind M Kein P ist S Alle M sind P Alle M sind S Einige S sind P (Barbara) (Cesare) (Darapti) Es gibt viele verschiedene Logiken: (1. Stufe) höherer Stufe Modale und temporale Logiken Intuitionistische Logik... Wir beschäftigen uns in dieser Vorlesung nur mit und 1. Stufe. Barbara König Logik 17 Barbara König Logik 18 (I) (II) George Boole (1848) Verknüpfung von Aussagen, die entweder wahr oder falsch sein können, mit einfachen Operatoren (und; oder; nicht; wenn..., dann... ) Beispiel: Aussagen: Es regnet, Die Straße ist nass Verknüpfungen: Es regnet und die Straße ist nass. Wenn es regnet, dann ist die Straße nass. Wenn die Straße nicht nass ist, dann regnet es nicht. Der Stoff im Bereich umfasst unter anderem: Syntax der : Was sind Operatoren? Was ist eine Formel? Welche Formeln sind syntaktisch korrekt? Semantik der : Was ist die Bedeutung einer Formel? Welche Formeln sind allgemeingültig, d.h. immer wahr? Welche Formeln sind unerfüllbar, d.h. immer falsch? Verfahren und Methoden, die überprüfen, ob eine Formel allgemeingültig oder unerfüllbar ist Barbara König Logik 19 Barbara König Logik 20

6 Anwendungen in der Informatik (I) Frege, Peano, Russell (Ende des 19. Jahrhunderts) Mit der kann man zusätzlich Beziehungen zwischen Objekten beschreiben existentielle Aussagen treffen: es gibt ein x, so dass... universelle Aussagen treffen: für jedes x gilt, dass... Beispiel: Für jede natürliche Zahl x gilt, dass es eine natürliche Zahl y gibt, so dass x kleiner als y ist. Modellierung und Spezifikation: Eindeutige Beschreibung von komplexen Systemen Verifikation: Beweisen, dass ein Programm das gewünschte Verhalten zeigt Schaltkreisentwurf: Schaltkreise lassen sich als logische Formeln darstellen Entwurf und Optimierung von Schaltungen Datenbanken: Formulierung von Anfragen an Datenbanken Abfragesprache SQL (Structured query language) Künstliche Intelligenz: Schlussfolgerungen automatisieren, insbesondere in Expertensystemen Barbara König Logik 21 Anwendungen in der Informatik (II) Theorembeweiser: Der Computer beweist mathematische Sätze automatischer Beweis von wichtigen Sätzen im Bereich der Booleschen Algebren Logische Programmiersprachen: Prolog Außerdem: Logik ist ein Paradebeispiel für Syntax und formale Semantik Ein Zitat von Edsger W. Dijkstra: Informatik = VLSAL (Very large scale application of logics) (In Anspielung auf VLSI = Very large scale integration, ein Begriff aus dem Chipdesign) Barbara König Logik 22 Formale Syntax und Semantik Auch wenn die Beispiele bisher mit natürlicher Sprache beschrieben wurden, werden wir in der Vorlesung meist auf natürliche Sprache verzichten. Beispiele: Natürliche Sprache Formalisierung Es regnet und die Straße ist nass. R N Wenn es regnet, dann ist die Straße nass. R N Für jede natürliche Zahl x gilt, x y(x < y) dass es eine natürliche Zahl y gibt, so dass x kleiner als y ist. Frage: Warum nicht natürliche Sprache? Barbara König Logik 23 Barbara König Logik 24

7 Probleme mit natürlicher Sprache (I) Problem: Zuordnung von Wahrheitswerten zu natürlichsprachigen Aussagen ist problematisch. Beispiele: Jede gerade Zahl größer als 4 ist die Summe zweier Primzahlen. (Goldbach sche Vermutung, unbewiesen) Dieser Satz hat zwei Vehler. Barbara König Logik 25 Probleme mit natürlicher Sprache (III) Probleme mit natürlicher Sprache (II) Problem: Natürliche Sprache ist oft schwer verständlich. Beispiel: Auszug aus der Analytica Priora von Aristoteles Die Aussage: If the middle term is related universally to one of the extremes, a particular negative syllogism must result whenever the middle term is related universally to the major whether positively or negatively, and particularly to the minor and in a manner opposite to that of the universal statement. Der Beweis: For if M belongs to no N, but to some O, it is necessary that N does not belong to some O. For since the negative statement is convertible, N will belong to no M: but M was admitted to belong to some O: therefore N will not belong to some O: for the result is reached by means of the first figure. Again if M belongs to all N, but not to some O, it is necessary that N does not belong to some O: for if N belongs to all O, and M is predicated also of all N, M must belong to all O: but we assumed that M does not belong to some O. And if M belongs to all N but not to all O, we shall conclude that N does not belong to all O: the proof is the same as the above. But if M is predicated of all O, but not of all N, there will be no syllogism. Ich sah den Mann... Barbara König Logik 26 Problem: Natürliche Sprache ist mehrdeutig. Beispiel: Ich sah den Mann auf dem Berg mit dem Fernrohr. (((Ich sah den Mann) auf dem Berg) mit dem Fernrohr) Barbara König Logik 27 Barbara König Logik 28

8 Ich sah den Mann... Ich sah den Mann... ((Ich sah (den Mann auf dem Berg)) mit dem Fernrohr) ((Ich sah den Mann) (auf dem Berg mit dem Fernrohr)) Ich sah den Mann... Barbara König Logik 29 Ich sah den Mann... Barbara König Logik 30 (Ich sah ((den Mann auf dem Berg) mit dem Fernrohr)) (Ich sah (den Mann (auf dem Berg mit dem Fernrohr))) Barbara König Logik 31 Barbara König Logik 32

9 Ich sah den Mann... Inhalt der Vorlesung (((Ich sah den Mann) auf dem Berg) mit dem Fernrohr) ((Ich sah (den Mann auf dem Berg)) mit dem Fernrohr) ((Ich sah den Mann) (auf dem Berg mit dem Fernrohr)) (Ich sah ((den Mann auf dem Berg) mit dem Fernrohr)) (Ich sah (den Mann (auf dem Berg mit dem Fernrohr))) 5 mögliche Interpretationen! : Grundbegriffe, Normalformen und Äquivalenz : Grundbegriffe, Normalformen und Äquivalenz Herbrand-Theorie Grundlagen der Logikprogrammierung Barbara König Logik 33 Barbara König Logik 34 Logik-Tools Mengen, Relationen und Funktionen : SAT-Solver: Überprüfen der Erfüllbarkeit von aussagenlogischen Formeln limboole ( : Anschauliche Lehrsoftware für die Tarski s World Theorembeweiser für die 1. Stufe (basierend auf ) otter ( Menge: Menge X von Elementen, wird beschrieben als Aufzählung X = {A 1, A 2, A 3, A 7 } oder als Menge von Elementen mit einer bestimmten Eigenschaft X = {A i 1 i 3 oder i = 7}. Barbara König Logik 35 Barbara König Logik 36

10 Mengen, Relationen und Funktionen Mengen, Relationen und Funktionen Bemerkungen: Die Elemente einer Menge sind ungeordnet, d.h., ihre Ordnung spielt keine Rolle. Beispielsweise gilt: {1, 2, 3} = {1, 3, 2} = {2, 1, 3} = {2, 3, 1} = {3, 1, 2} = {3, 2, 1} Ein Element kann nicht mehrfach in einer Menge auftreten. Es ist entweder in der Menge, oder es ist nicht in der Menge. Beispielsweise gilt: Element einer Menge: Wir schreiben x X, falls ein Element x in der Menge X enthalten ist. Teilmengenbeziehung: Für zwei Mengen X, Y schreiben wir X Y, falls jedes Element von X auch in Y enthalten ist. Die Relation heißt auch Inklusion. Leere Menge: Mit oder {} bezeichnet man die leere Menge. Sie enthält keine Elemente und ist Teilmenge jeder anderen Menge. {1, 2, 3} {1, 2, 3, 4} = {1, 2, 3, 4, 4} Barbara König Logik 37 Barbara König Logik 38 Mengen, Relationen und Funktionen Mengen, Relationen und Funktionen Kreuzprodukt (kartesisches Produkt) Seien X, Y zwei Mengen. Die Menge X Y ist die Menge aller Paare (x, y), wobei die erste Komponente des Paars aus X, die zweite aus Y kommt. X Y = {(x, y) x X, y Y } Beispiel: {1, 2} {3, 4, 5} = {(1, 3), (1, 4), (1, 5), (2, 3), (2, 4), (2, 5)} Relation zwischen der Menge X und der Menge Y Eine Teilmenge R X Y des Kreuzprodukts von X und Y heißt Relation zwischen X und Y. Beispiel: X = {1, 2, 3} Y = {a, b, c, d} R = {(1, a), (1, b), (2, b), (3, d)} X Y Barbara König Logik 39 Barbara König Logik 40

11 Mengen, Relationen und Funktionen Mengen, Relationen und Funktionen Notation von Funktionen Funktion von der Menge X in die Menge Y Eine Relation f X Y heißt Funktion, wenn folgendes gilt: für jedes Element x X gibt es genau ein Element y Y mit (x, y) f. Anschaulich: jedem Element der Menge X wird genau ein Element der Menge Y zugeordnet. f : X Y x f (x) Die Funktion f bildet ein Element x X auf ein Element f (x) Y ab. Dabei ist X der Definitionsbereich und Y der Wertebereich von f. Beispiel: f : {A 1, A 2, A 3, A 7 } {0, 1} A 1 0, A 2 1, A 3 0, A 7 1 alternativ: f (A 1 ) = 0, f (A 2 ) = 1, f (A 3 ) = 0, f (A 7 ) = 1 Barbara König Logik 41 Barbara König Logik 42 Syntax der Formel als Syntaxbaum Eine atomare Formel hat die Form A i (wobei i = 1, 2, 3,...). Definition (Formel) Formeln werden durch folgenden induktiven Prozess definiert: 1 Alle atomaren Formeln sind Formeln 2 Für alle Formeln F und G sind (F G) und (F G) Formeln. 3 Für jede Formel F ist F eine Formel. Jede Formel kann auch durch einen Syntaxbaum dargestellt werden. Beispiel: F = (( A 4 A 1 ) A 3 ) Sprechweise: (F G): F und G, Konjunktion von F und G (F G): F oder G, Disjunktion von F und G F : nicht F, Negation von F A 4 A 3 A 1 Barbara König Logik 43 Barbara König Logik 44

12 Teilformel Semantik der (I) Die Teilformeln einer Formel F entsprechen dann den Teilbäumen. A 4 A4 A3 A1 A 1 A4 A3 A1 A 3 A4 A1 A3 Die Elemente der Menge {0, 1} heißen Wahrheitswerte. Eine Belegung ist eine Funktion A: D {0, 1}, wobei D eine Teilmenge der atomaren Formeln ist. A 4 A4 A3 A1 ( A 4 A 1 ) A1 A4 A3 Wir erweitern A zu einer Funktion Â: E {0, 1}, wobei E D die Menge aller Formeln ist, die nur aus den atomaren Formeln in D aufgebaut sind. (( A 4 A 1 ) A 3 ) A3 A1 (( A 4 A 1 ) A 3 ) A1 A3 A4 A4 Barbara König Logik 45 Barbara König Logik 46 Semantik der (II) Verknüpfungstafeln (I) Â(A) = A(A) falls A D eine atomare Formel ist { 1 falls Â(F ) = 1 und Â(G) = 1 Â((F G)) = 0 sonst { 1 falls Â(F ) = 1 oder Â(G) = 1 Â((F G)) = 0 sonst { 1 falls Â(F ) = 0 Â(( F )) = 0 sonst Wir schreiben A statt Â. Berechnung von  mit Hilfe von Verknüpfungstafeln, auch Wahrheitstafeln genannt. Beobachtung: Der Wert Â(F ) hängt nur davon ab, wie A auf den den in F vorkommenden atomaren Formeln definiert ist. Tafeln für die Operatoren,, : A B A B A B A B A A Barbara König Logik 47 Barbara König Logik 48

13 Abkürzungen Verknüpfungstafeln (II) A, B, C oder P, Q, R oder... statt A 1, A 2, A 3... (F 1 F 2 ) statt ( F 1 F 2 ) (F 1 F 2 ) statt ((F 1 F 2 ) ( F 1 F 2 )) n ( F i ) statt (... ((F 1 F 2 ) F 3 )... F n ) ( i=1 n F i ) statt (... ((F 1 F 2 ) F 3 )... F n ) i=1 Tafeln für die Operatoren, : A B A B Name: Implikation, Folgerung Interpretation: Wenn A gilt, dann muss auch B gelten. A B A B Name: Äquivalenz, Biimplikation Interpretation: A gilt genau dann, wenn B gilt. Barbara König Logik 49 Barbara König Logik 50 Präzedenzen Präzedenz der Operatoren: Die Formel wird also wie folgt gelesen: bindet am schwächsten bindet am stärksten A B C D E (A ((B C) (D E))) Formalisierung natürlicher Sprache (I) Ein Gerät besteht aus einem Bauteil A, einem Bauteil B und einem roten Licht. Folgendes ist bekannt: Bauteil A oder Bauteil B (oder beide) sind kaputt. Wenn Bauteil A kaputt ist, dann ist auch Bauteil B kaputt. Wenn Bauteil B kaputt ist und das rote Licht leuchtet, dann ist Bauteil A nicht kaputt. Das rote Licht leuchtet. Formalisieren Sie diese Situation als aussagenlogische Formel und stellen Sie die Wahrheitstafel zu dieser Formel auf. Verwenden Sie dazu folgende atomare Formeln: RL (rotes Licht leuchtet), AK (Bauteil A kaputt), BK (Bauteil B kaputt) Dennoch: Zusätzliche Klammern schaden im allgemeinen nicht Barbara König Logik 51 Barbara König Logik 52

14 Formalisierung natürlicher Sprache (II) Gesamte Wahrheitstafel: (((AK BK) (AK BK)) RL AK BK ((BK RL) AK)) RL Modelle Sei F eine Formel und A eine Belegung. Falls A für alle in F vorkommenden atomaren Formeln definiert ist, so heißt A zu F passend. Sei A passend zu F : Falls A(F ) = 1 so schreiben wir A = F und sagen F gilt unter A oder A ist ein Modell für F Falls A(F ) = 0 so schreiben wir A = F und sagen F gilt nicht unter A oder A ist kein Modell für F Barbara König Logik 53 Barbara König Logik 54 Gültigkeit und Erfüllbarkeit Aufgabe Definition (Erfüllbarkeit) Eine Formel F heißt erfüllbar, falls F mindestens ein Modell besitzt, andernfalls heißt F unerfüllbar. Eine (endliche oder unendliche!) Menge von Formeln M heißt erfüllbar, falls es eine Belegung gibt, die für jede Formel in M ein Modell ist. (In diesem Fall sagt man auch, die Belegung ist ein Modell für die Menge M.) Definition (Gültigkeit) Eine Formel F heißt gültig (oder allgemeingültig oder Tautologie) falls jede zu F passende Belegung ein Modell für F ist. Wir schreiben = F, falls F gültig ist, und = F sonst. A A B A A A A A A A B A (B A) A (A B) A A Gültig Erfüllbar Unerfüllbar Barbara König Logik 55 Barbara König Logik 56

15 Aufgabe Spiegelungsprinzip Gelten die folgenden Aussagen? Wenn F gültig, dann F erfüllbar Wenn F erfüllbar, dann F unerfüllbar Wenn F gültig, dann F unerfüllbar Wenn F unerfüllbar, dann F gültig J/N Gegenb. gültige Formeln G erfüllbare, aber nicht gültige Formeln F F unerfüllbare Formeln G Barbara König Logik 57 Barbara König Logik 58 Ein Gültigkeitstest Folgerung Wie kann man überprüfen, ob eine Formel F gültig (erfüllbar, unerfüllbar) ist? Eine Möglichkeit: Wahrheitstafel aufstellen Angenommen, die Formel F enthält n verschiedene atomare Formeln. Wie groß ist die Wahrheitstafel? Anzahl Zeilen in der Wahrheitstafel: 2 n Geht es auch effizienter? Diese Frage wird im Laufe der Vorlesung beantwortet. Definition (Folgerung) Eine Formel G heißt eine Folgerung der Formeln F 1,..., F k falls für jede Belegung A, die sowohl zu F 1,..., F k als auch zu G passend ist, gilt: Wenn A Modell von {F 1,..., F k } ist, dann ist A auch Modell von G. Wir schreiben F 1,..., F k = G, falls G eine Folgerung von F 1,..., F k ist. Barbara König Logik 59 Barbara König Logik 60

16 Folgerung: Beispiel Aufgabe (AK BK), (AK BK), ((BK RL) AK), RL = RL AK BK Wenn Bauteil A oder Bauteil B kaputt ist und daraus, dass Bauteil A kaputt ist, immer folgt, dass Bauteil B kaputt ist und dann kann man die Folgerung ziehen: das rote Licht leuchtet, Bauteil A ist nicht kaputt und Bauteil B ist kaputt. M F Gilt M = F? A (A B) A (A B) A, B (A B) A, B (A B) (A B) A (A B) A A, (A B) B Barbara König Logik 61 Barbara König Logik 62 Folgerung, Gültigkeit und Unerfüllbarkeit Äquivalenz Zeigen Sie, dass folgende Aussagen äquivalent sind: 1 F 1,..., F k = G, d.h., G ist eine Folgerung von F 1,..., F k. 2 (( k i=1 F i) G) ist gültig. 3 (( k i=1 F i) G) ist unerfüllbar. (Semantische) Äquivalenz Zwei Formeln F und G heißen (semantisch) äquivalent, falls für alle Belegungen A, die sowohl für F als auch für G passend sind, gilt A(F ) = A(G). Hierfür schreiben wir F G. Barbara König Logik 63 Barbara König Logik 64

17 Aufgabe Die Hauptprobleme Gelten die folgenden Äquivalenzen? (A (A B)) A (A B) ( A B) (A (B C)) ((A B) C) (A (B C)) ((A B) (A C)) Modellprüfung Sei F eine Formel und sei A eine passende Belegung. Gilt A(F ) = 1? Erfüllbarkeit Sei F eine Formel. Ist F erfüllbar? Gültigkeit Sei F eine Formel. Ist F gültig? Folgerung Seien F und G Formeln. Gilt F = G? Äquivalenz Seien F und G Formeln. Gilt F G? Barbara König Logik 65 Barbara König Logik 66 Reduktion von Problemen (I) Reduktion von Problemen (II) Welche Probleme lassen sich auf welche reduzieren? Gültigkeit (Nicht)Erfüllbarkeit: F gültig gdw. F nicht erfüllbar F erfüllbar gdw. F nicht gültig Gültigkeit = Folgerung: F gültig gdw. T = F (T ist beliebige gültige Formel) Folgerung = Gültigkeit: F = G gdw. F G gültig Unerfüllbarkeit = Folgerung: F unerfüllbar gdw. F = U (U ist beliebige unerfüllbare Formel) Folgerung = Unerfüllbarkeit: F = G gdw. F G unerfüllbar Barbara König Logik 67 Barbara König Logik 68

18 Reduktion von Problemen (III) Eigenschaften der Äquivalenz Wir betrachten nun wieder die Äquivalenz auf Formeln. Sie hat folgende Eigenschaften: Gültigkeit = Äquivalenz: F gültig gdw. F T (T ist beliebige gültige Formel) Äquivalenz = Gültigkeit: F G gdw. F G gültig Bemerkung: Eine gültige Formel bezeichnet man manchmal auch mit 1, eine unerfüllbare Formel mit 0. Barbara König Logik 69 reflexiv: Es gilt F F für jede Formel F (jede Formel ist zu sich selbst äquivalent) symmetrisch: Falls F G gilt, so gilt auch G F transitiv: Falls F G und G H gilt, so gilt auch F H abgeschlossen unter Operatoren: Falls F 1 F 2 und G 1 G 2 gilt, so gilt auch (F 1 G 1 ) (F 2 G 2 ), (F 1 G 1 ) (F 2 G 2 ) und F 1 F 2. Reflexive, symmetrische, transitive Relation Äquivalenzrelation Äquivalenzrelation + Abgeschlossenheit unter Operatoren Kongruenzrelation Barbara König Logik 70 Ersetzbarkeitstheorem Äquivalenzen (I) Die Abgeschlossenheit unter Operatoren lässt sich auch folgendermaßen formulieren: Satz (Ersetzbarkeitstheorem) Seien F und G äquivalente Formeln (F G). Sei H eine Formel mit (mindestens) einem Vorkommen der Teilformel F. Dann ist H äquivalent zu H (d.h. H H ), wobei H aus H hervorgeht, indem (irgend) ein Vorkommen von F in H durch G ersetzt wird. Satz Es gelten die folgenden Äquivalenzen: (F F ) F (F F ) F (Idempotenz) (F G) (G F ) (F G) (G F ) (Kommutativität) ((F G) H) (F (G H)) ((F G) H) (F (G H)) (Assoziativität) (F (F G)) F (F (F G)) F (Absorption) Barbara König Logik 71 Barbara König Logik 72

19 Äquivalenzen (II) Äquivalenzen (F (G H)) ((F G) (F H)) (F (G H)) ((F G) (F H)) (Distributivität) F F (Doppelnegation) (F G) ( F G) (de Morgansche (F G) ( F G) Regeln) (F G) F, falls F gültig (Tautologie- (F G) G, falls F gültig regeln) (F G) G, falls F unerfüllbar (Unerfüllbarkeits- (F G) F, falls F unerfüllbar regeln) Die Tautologie- und Unerfüllbarkeitsregeln können auch folgendermaßen geschrieben werden: (1 G) 1 (1 G) G (Tautologieregeln) (0 G) G (0 G) 0 (Unerfüllbarkeitsregeln) Daraus folgt unter anderem, dass 1 (= gültige Formel) das neutrale Element der Konjunktion und 0 (= unerfüllbare Formel) das neutrale Element der Disjunktion ist. Barbara König Logik 73 Barbara König Logik 74 Gültigkeits- und Erfüllbarkeitstests mit limboole limboole limboole ist ein Tool, mit dem Gültigkeits- und Erfüllbarkeitstests für aussagenlogische Formeln durchgeführt werden können. Dieses Tool basiert auf einer Kombination des Davis-Putnam-Verfahrens zusammen mit Boolean Constraint Propagation. (Genau dieses Verfahren wird in der Vorlesung nicht vorgestellt, jedoch andere mögliche Verfahren.) Anders als andere Werkzeuge konvertiert limboole selbst die Eingabe in (konjunktive) Normalform. Es gibt noch zahlreiche andere Tools dieser Art, die normalerweise als SAT-Solver bezeichnet werden. Einige davon sind inzwischen auch effizienter als limboole. Barbara König Logik 75 Gültigkeits- und Erfüllbarkeitstests mit limboole Eingabeformat für limboole limboole <-> -> &! limboole kann für eine Formel F sowohl überprüfen, ob sie gültig (valid) oder nicht gültig (invalid) ist als auch ob sie erfüllbar (satisfiable) oder unerfüllbar (unsatisfiable) ist. Bei einer nicht-gültigen Formel F wird eine Belegung A mit A(F ) = 0 ausgegeben, bei einer erfüllbaren Formel eine Belegung A mit A(F ) = 1. Barbara König Logik 76

20 Anwendung: Diagnose Anwendung: Vergleich von Schaltkreisen Um zu zeigen, dass F {}}{ (AK BK), (AK BK), ((BK RL) AK), RL = RL AK BK }{{} G gilt, überprüfen wir, ob F G gültig ist. Diese Formel sieht in limboole-syntax folgendermaßen aus: Aufgabe: Gegeben sind zwei Schaltkreise. Überprüfen Sie, ob diese Schaltkreise äquivalent sind, in dem Sinne, dass sie bei gleicher Eingabe die gleichen Ausgaben liefern. Diese Überprüfung soll mit Hilfe von limboole durchgeführt werden und nutzt die Tatsache, dass F G gdw. F G gültig ist. ((AK BK) & (AK -> BK) & ((BK & RL) ->!AK) & RL) -> (!AK & BK & RL) Barbara König Logik 77 Barbara König Logik 78 Anwendung: Vergleich von Schaltkreisen Anwendung: Vergleich von Schaltkreisen Schaltkreis 1: Schaltkreis 2: X 1 Y 1 Nor X 1 Y 1 X 2 X 2 Y 2 Nor Y 2 Barbara König Logik 79 Barbara König Logik 80

21 Anwendung: Vergleich von Schaltkreisen Anwendung: Vergleich von Schaltkreisen Formel S 1 für Schaltkreis 1 (in limboole-syntax) (((X1 & Y1)!(X1 Y1)) & ((X2 & Y2)!(X2 Y2)) Formel S 2 für Schaltkreis 1 (in limboole-syntax) (X1 & Y2 & X2 & Y1) (X2 & Y2 &!X1 &!Y1) (X1 & Y1 &!X2 & Y2) (!X2 &!X1 &!Y1 & Y2) Mit Hilfe von limboole lässt sich feststellen, dass die Formel S 1 S 2 nicht gültig ist, das heißt die Schaltkreise sind nicht äquivalent. Zusatzaufgabe: wie kann man mit Hilfe von limboole überprüfen, auf welchen Eingaben sich die beiden Schaltkreise unterscheiden? Barbara König Logik 81 Barbara König Logik 82 Normalformen (I) Normalformen (II) Definition (Normalformen) Ein Literal ist eine atomare Formel oder die Negation einer atomaren Formel. (Im ersten Fall sprechen wir von einem positiven, im zweiten Fall von einem negativen Literal). Eine Formel F ist in konjunktiver Normalform (KNF), falls sie eine Konjunktion von Disjunktionen von Literalen ist: F = ( n i=1 ( m i j=1 L i,j )), Eine Formel F ist in disjunktiver Normalform (DNF), falls sie eine Disjunktion von Konjunktionen von Literalen ist: F = ( n i=1 ( m i j=1 L i,j )), wobei L i,j {A 1, A 2, } { A 1, A 2, } wobei L i,j {A 1, A 2, } { A 1, A 2, } Barbara König Logik 83 Barbara König Logik 84

22 Umformungsmethode (in KNF) Gegeben: eine Formel F. 1 Ersetze in F jedes Vorkommen einer Teilformel der Bauart G durch G (G H) durch ( G H) (G H) durch ( G H) bis keine derartige Teilformel mehr vorkommt. 2 Ersetze jedes Vorkommen einer Teilformel der Bauart (F (G H)) durch ((F G) (F H)) ((F G) H) durch ((F H) (G H)) bis keine derartige Teilformel mehr vorkommt. Barbara König Logik 85 Umformungsmethode (in KNF) Aufwand der Umformungsmethode Bei der Umwandlung einer Formel in KNF kann die Formel exponentiell größer werden. Beispiel: F = (A 1 B 1 ) (A 2 B 2 ) (A n B n ) (bestehend aus n Konjunktionen). Bei Umwandlung in KNF ergeben sich durch das Distributivgesetz 2 n Disjunktionen, da jede Kombination von Literalen (eines aus jeder Konjunktion) eine neue Disjunktion ergibt. F (A 1 A 2 A n ) (B 1 A 2 A n ) (A 1 B 2 A n )... Barbara König Logik 86 Mengendarstellung in KNF Ablesen von DNF und KNF aus Wahrheitstafel Klausel: Menge von Literalen (Disjunktion). {A, B} stellt (A B) dar. Formel in KNF: Menge von Klauseln (Konjunktion). {{A, B}, { A, B}} stellt ((A B) ( A B)) dar. Die leere Klausel ist äquivalent zu einer unerfüllbaren Formel (0). Die leere Formel ist äquivalent zu einer gültigen Formel (1). A B C F DNF: Aus jeder Zeile mit Wahrheitswert 1 wird eine Konjunktion, aus einer 0 in der Spalte A wird A, aus einer 1 wird A ( A B C) (A B C) (A B C) KNF: Aus jeder Zeile mit Wahrheitswert 0 wird eine Disjunktion, aus einer 0 in der Spalte A wird A, aus einer 1 wird A (A B C) (A B C) (A B C) ( A B C) ( A B C) Barbara König Logik 87 Barbara König Logik 88

23 Erfüllbarkeits-/Gültigkeitstests für DNF/KNF Für Formeln in DNF gibt es einen einfachen Erfüllbarkeitstest. Erfüllbarkeitstest für Formeln in DNF Eine Formel in disjunktiver Normalform ist erfüllbar, genau dann wenn sie eine Konjunktion (L 1 L n ) enthält, in der jedes Literal entweder nur positiv oder nur negativ vorkommt. Das heißt, es gibt keine atomare Formel A, die sowohl als A als auch als A in dieser Konjunktion vorkommt. Beispiele: (A B C) ( A B) (B B) ist erfüllbar, beispielsweise mit der Belegung A(A) = 1, A(B) = 1, A(C) = 0. (A B A) ( A B A B C) (B B) ist nicht erfüllbar (= unerfüllbar). Barbara König Logik 89 Erfüllbarkeits-/Gültigkeitstests für DNF/KNF Für Formeln in KNF gibt es einen einfachen Gültigkeitstest. Gültigkeitstest für Formeln in KNF Eine Formel in konjunktiver Normalform ist gültig, genau dann wenn es in jeder vorkommenden Disjunktion (L 1 L n ) ein Literal gibt, das sowohl positiv als auch negativ vorkommt. Das heißt, es gibt in jeder Disjunktion eine atomare Formel A, die sowohl als A als auch als A vorkommt. Beispiele: (A B C) ( A B) (B B) ist nicht gültig, beispielsweise erhält man 0 bei Auswertung unter der Belegung A(A) = 0, A(B) = 0, A(C) = 1. (A B A) ( A B A B C) (B B) ist gültig. Barbara König Logik 90 Erfüllbarkeits-/Gültigkeitstests für DNF/KNF Erfüllbarkeits-/Gültigkeitstests für DNF/KNF Aufwand der Tests: Diese einfachen Erfüllbarkeits- bzw. Gültigkeitstests können durchgeführt werden, indem man einmal die Formel durchläuft. Das heißt, man benötigt nur lineare Zeit. Trotzdem erhält man dadurch keinen einfachen Erfüllbarkeitstest für Formeln in KNF und keinen einfachen Gültigkeitstest für Formeln in DNF. Dazu müsste man eine Formel in KNF erst in DNF umwandeln (oder umgekehrt), was exponentielle Zeit in Anspruch nehmen kann. Das Problem, die Erfüllbarkeit einer beliebigen Formel (oder einer Formel in KNF) zu bestimmen ist auch als SAT-Problem (Satisfiability-Problem) bekannt. SAT ist NP-vollständig ( Berechenbarkeit und Komplexität ), was bedeutet, dass es (zur Zeit) keinen bekannten Polynomzeit-Algorithmus für dieses Problem gibt. Ob ein solcher Polynomzeit-Algorithmus existiert, ist ein offenes Problem. Es gibt jedoch einige Verfahren, die zumindest in vielen Fällen sehr effizient sind (z.b. limboole und das im folgenden besprochene sverfahren). Barbara König Logik 91 Barbara König Logik 92

24 Vollständigkeit von Operatormengen Vollständigkeit von Operatormengen Definition (Boolesche Funktionen) Eine Funktion der Form b : {0, 1} n {0, 1} heißt (n-stellige) Boolesche Funktion. Eine Formel F mit atomaren Formeln aus der Menge {A 1,..., A n } beschreibt eine n-stellige Boolesche Funktion b F wie folgt: wobei A x1,...,x n b F (x 1,..., x n ) = A x1,...,x n (F ), die Belegung ist, die A i mit x i {0, 1} belegt. Daher gibt es genau 2 2n n-stellige Boolesche Funktionen bzw. Wahrheitstafeln mit n atomaren Formeln. Aufgabe: Stellen Sie alle 16 Wahrheitstafeln mit zwei atomaren Formeln auf, d.h., bestimmen Sie alle zweistelligen Booleschen Funktionen. Versuchen Sie, jeder Wahrheitstafel den Operator oder die Formel zuzuordnen, die sie beschreibt. Die n-stelligen Booleschen Funktionen entsprechen genau den Wahrheitstafeln mit n Spalten für atomare Formeln und einer Ergebnisspalte. Barbara König Logik 93 Barbara König Logik 94 Vollständigkeit von Operatormengen Definition (Vollständigkeit) Eine Menge von Operatoren heißt vollständig, wenn man damit für jede Boolesche Funktion eine entsprechende Formel erstellen kann, die diese Funktion beschreibt. Die Operatormenge {,, } ist vollständig. Begründung: wie vorher beschrieben kann jede beliebige Wahrheitstafel in KNF bzw. DNF umgewandelt werden. Die Operatormenge {, } ist vollständig. Begründung: A B ( A B). Die Operatormenge {, } ist vollständig. Die Operatormenge {, } ist vollständig. Begründung: A B A B. Barbara König Logik 95 Vollständigkeit von Operatormengen Die Operatormenge {Nand} ist vollständig, wobei der Operator Nand wie folgt definiert ist: A Nand B = (A B). Begründung: A Nand A = (A A) A und (A Nand B) Nand (A Nand B) A B. Die Operatormenge {Nor} ist vollständig, wobei der Operator Nor wie folgt definiert ist: A Nor B = (A B). Barbara König Logik 96

25 Vollständigkeit von Operatormengen Endlichkeitssatz Die Operatormenge {, } ist nicht vollständig. Begründung: Die Formel A kann nicht dargestellt werden. Falls eine Formel nur aus Operatoren der Form und besteht und der Wahrheitswert 1 eingesetzt wird, so erhält man wieder 1. Das ist aber bei A nicht der Fall. Die Operatormenge { } ist nicht vollständig. Begründung: analog zu {, } Man erhält jedoch Vollständigkeit, wenn man auch die Konstante 0 ( falsch ) zulässt. Dann gilt A 0 A und kann wie oben beschrieben mit Hilfe von und dargestellt werden. Die Operatormenge {, } ist nicht vollständig (ohne Begründung). Definition (Erfüllbarkeit einer Menge) Wiederholung Eine (möglicherweise unendliche) Menge M von aussagenlogischen Formeln heißt erfüllbar genau dann, wenn es eine Belegung A gibt, die für alle Formeln in M passend ist und für die gilt A(F ) = 1 für alle F M. Endlichkeitssatz (compactness theorem) Eine Menge M von Formeln ist erfüllbar genau dann, wenn jede der endlichen Teilmengen von M erfüllbar ist. Barbara König Logik 97 Barbara König Logik 98 Endlichkeitssatz Beweis (Skizze): 1. Schritt: Zerlegung von M in Mengen M 1, M 2, M 3,..., wobei M i genau die Formeln von M enthält, die aus den atomaren Formeln A 1,..., A i bestehen. Es gilt: M 1 M 2 M 3... M = i=1 M i Problem: Jede Menge M i kann unendlich viele Formeln enthalten. (Beispielsweise könnte M 1 die Formeln A 1, A 1, A 1, A 1,... enthalten.) Da es jedoch höchstens 2 2i verschiedene i-stellige Boolesche Funktionen geben kann, kann man diese in endlich viele Äquivalenzklassen zusammenfassen. Endlichkeitssatz 2. Schritt: Wir zeigen nun, dass M erfüllbar ist, wenn jede endliche Teilmenge von M (insbesondere jede Menge M i ) erfüllbar ist. Sei A i ein Modell für M i. Wir konstruieren ein Modell A von M wie folgt: 1 Setze I := {1, 2, 3,... } 2 Stufe n > 0 (Wahrheitswert für A n wird festgelegt) Falls es unendlich viele Indizes i I gibt mit A i (A n ) = 1, dann setze A(A n ) = 1 und entferne aus I alle Indizes j, für die A j (A n ) = 0 gilt. Sonst: setze A(A n ) = 0 und entferne aus I alle Indizes j, für die A j (A n ) = 1 gilt. 3. Schritt: Zeige, dass A tatsächlich ein Modell für M ist. Barbara König Logik 99 Barbara König Logik 100

26 Endlichkeitssatz (Motivation) Bemerkungen zum Endlichkeitssatz: Der Beweis ist nicht-konstruktiv, er zeigt nur, dass es ein Modell A gibt, nicht wie man es erhält. Aussagen der Form es gibt unendlich viele i I mit... können nicht in eine (mechanische) Konstruktion umgewandelt werden. Korollar: Wenn M eine unerfüllbare Menge ist, dann ist bereits eine endliche Teilmenge von M unerfüllbar. Die Bedeutung des Endlichkeitssatzes liegt vor allem in seinen Anwendungsmöglichkeiten im Bereich der (siehe 2. Kapitel der Vorlesung). Wir benötigen Algorithmen für Erfüllbarkeitstests, die zumindest in vielen Fällen gutartiges Verhalten zeigen. Dennoch ist im schlimmsten Fall (worst case) immer eine exponentielle Laufzeit zu erwarten. Wir betrachten nun als Erfüllbarkeitstest und untersuchen dann einige Fallstudien mit schlechtem bzw. gutem Laufzeitverhalten. Barbara König Logik 101 Barbara König Logik 102 (Idee) Wir betrachten im folgenden nur Formeln in KNF. Es gilt (für Formeln F, G und eine atomare Formel A): (Idee) Es gilt: (F A) (G A) = (F G) Aus der Herleitung der leeren Disjunktion bzw. leeren Klausel (= unerfüllbare Formel 0) folgt Unerfüllbarkeit. (Korrektheit) (Siehe auch der Zusammenhang zwischen Folgerung und Unerfüllbarkeit: F unerfüllbar gdw. F = 0.) Zwei Fragen: Kann man aus einer unerfüllbaren Formel immer die leere Klausel herleiten? (Vollständigkeit) Gibt es eine Möglichkeit, die Herleitung kompakter aufzuschreiben? Barbara König Logik 103 Daraus folgt: F = G F F G (F A) (G A) (F A) (G A) (F G) Das kann so interpretiert werden, dass man zu den bisher existierenden Klauseln (F A), (G A) die Klausel (F G) hinzufügt, ohne die Aussage der Formel zu verändern. Dies macht man so lange, bis man die leere Klausel erhält, oder sich sicher sein kann, dass die leere Klausel nicht auftaucht. Barbara König Logik 104

27 Mengendarstellung der KNF Vorteile der Mengendarstellung Klausel: Menge von Literalen (Disjunktion). {A, B} stellt (A B) dar. Formel: Menge von Klauseln (Konjunktion). {{A, B}, { A, B}} stellt ((A B) ( A B)) dar. Die leere Klausel (= leere Disjunktion) ist äquivalent zu einer unerfüllbaren Formel. Diese wird auch mit bezeichnet. Die leere Formel (= leere Konjunktion) ist äquivalent zu einer gültigen Formel. Man erhält automatisch: Kommutativität: (A B) (B A), beide dargestellt durch {A, B} Assoziativität: ((A B) C) (A (B C)), beide dargestellt durch {A, B, C} Idempotenz: (A A) A, beide dargestellt durch {A} Barbara König Logik 105 Barbara König Logik 106 Resolvent (I) Resolvent (II) Definition (Resolvent) Seien K 1, K 2 und R Klauseln. Dann heißt R Resolvent von K 1 und K 2, falls es ein Literal L gibt mit L K 1 und L K 2 und R die Form hat: R = (K 1 {L}) (K 2 {L}). Hierbei ist L definiert als { Ai falls L = A L = i, A i falls L = A i Wir stellen diesen Sachverhalt durch folgendes Diagramm dar (Sprechweise: R wird aus K 1, K 2 nach L resolviert). K 1 K 2 R Ferner: falls K 1 = {L} und K 2 = {L}, so entsteht die leere Menge als Resolvent. Diese wird mit dem speziellen Symbol bezeichnet, das eine unerfüllbare Formel darstellt. Barbara König Logik 107 Barbara König Logik 108

28 s-lemma Definition von Res(F ) s-lemma Sei F eine Formel in KNF, dargestellt als Klauselmenge. Ferner sei R ein Resolvent zweier Klauseln K 1 und K 2 in F. Dann sind F und F {R} äquivalent. Beweis: Folgt direkt aus (F 1 A) (F }{{} 2 A) }{{} K 1 (F 1 A) }{{} K 2 K 1 (F 2 A) }{{} (F 1 F 2 ) }{{} K 2 R Definition Sei F eine Klauselmenge. Dann ist Res(F ) definiert als Res(F ) = F {R R ist Resolvent zweier Klauseln in F }. Außerdem setzen wir: Res 0 (F ) = F Res n+1 (F ) = Res(Res n (F )) für n 0 und schließlich sei Res (F ) = Res n (F ). n 0 Barbara König Logik 109 Barbara König Logik 110 Anzahl der Resolventen Anzahl der Resolventen Angenommen, die Formel F enthält n atomare Formeln. Dann gilt welche Abschätzung für Res (F )? A Res (F ) 2 n B Res (F ) 4 n C Res (F ) kann beliebig groß werden Dabei bezeichnet Res (F ) die Anzahl der Elemente in Res (F ). Es gilt Res (F ) 4 n 4 n ist eine obere Schranke für die Menge aller Klauseln (jede atomare Formel kann auf vier verschieden Arten in einer Klausel vorkommen: gar nicht, nur positiv, nur negativ, positiv und negativ). Was passiert, wenn alle Klauseln maximal zweielementig sind? Durch die von zweielementigen Klauseln können nur wieder maximal zweielementige Klauseln entstehen. (Das ist bei drei- und mehrelementigen Klauseln anders.) Da es bei n verschiedenen atomaren Formeln nur ( ) 2n 2 = 2n(2n 1) 2 viele zweielementige und 2n viele einelementige Klauseln gibt, werden nach spätestens dieser polynomialen Anzahl von Schritten keine neuen Klauseln mehr abgeleitet. Barbara König Logik 111 Barbara König Logik 112

29 ssatz Induktionsprinzip Wir zeigen nun die Korrektheit und Vollständigkeit der : ssatz (der ) Eine Klauselmenge F ist unerfüllbar genau dann, wenn Res (F ). Diese Aussage beinhaltet zwei Teile: Wenn Res (F ), dann ist F unerfüllbar. (Korrektheit, folgt unmittelbar aus dem slemma) Wenn F unerfüllbar ist, dann Res (F ). (Vollständigkeit, muss noch per Induktion bewiesen werden) Um die Aussage Für jedes n {0, 1, 2, 3,...} gilt P(n). zu zeigen, gehen wir im allgemeinen folgendermaßen vor: Wir zeigen, dass P(0) gilt. (Induktionsanfang) Wir zeigen, dass für jedes n gilt: Wenn P(n) gilt, dann gilt auch P(n + 1). (Induktionsschritt) Dann kann man schließen, dass P(n) für jedes beliebige n gilt. Barbara König Logik 113 Barbara König Logik 114 Beweisidee (I) Beweisidee (I) Vollständigkeitsbeweis: Induktion über die Anzahl der atomaren Formeln. Hier: Induktionsschritt mit n + 1 = 4 Vollständigkeitsbeweis: Induktion über die Anzahl der atomaren Formeln. Hier: Induktionsschritt mit n + 1 = 4 F = {{A 1 }, { A 2, A 4 }, { A 1, A 2, A 4 }, {A 3, A 4 }, { A 1, A 3, A 4 }} F = {{A 1 }, { A 2, A 4 }, { A 1, A 2, A 4 }, {A 3, A 4 }, { A 1, A 3, A 4 }} F 0 = {{A 1 }, { A 2 }, { A 1, A 2 }} A 4 wird mit 0 belegt Barbara König Logik 115 Barbara König Logik 115

30 Beweisidee (I) Beweisidee (II) Vollständigkeitsbeweis: Induktion über die Anzahl der atomaren Formeln. Hier: Induktionsschritt mit n + 1 = 4 F = {{A 1 }, { A 2, A 4 }, { A 1, A 2, A 4 }, {A 3, A 4 }, { A 1, A 3, A 4 }} F 0 F 1 { A 2 } { A 1, A 2 } {A 1 } {A 3 } { A 1, A 3 } { A 1 } { A 1 } F 0 = {{A 1 }, { A 2 }, { A 1, A 2 }} F 1 = {{A 1 }, {A 3 }, { A 1, A 3 }} A 4 wird mit 0 belegt A 4 wird mit 1 belegt Barbara König Logik 115 Barbara König Logik 116 Beweisidee (II) Beweisidee (II) F 0 F 1 { A 2, A 4 } { A 1, A 2, A 4 } {A 1 } {A 3, A 4 } { A 1, A 3, A 4 } F 0 F 1 { A 2, A 4 } { A 1, A 2, A 4 } {A 1 } {A 3, A 4 } { A 1, A 3, A 4 } { A 1, A 4 } { A 1, A 4 } { A 1, A 4 } { A 1, A 4 } {A 4 } { A 4 } {A 4 } { A 4 } Barbara König Logik 116 Barbara König Logik 116

31 Deduktion Definition (Deduktion) Eine Deduktion (oder Herleitung oder Beweis) der leeren Klausel aus einer Klauselmenge F ist eine Folge von K 1, K 2,..., K m von Klauseln mit folgenden Eigenschaften: K m ist die leere Klausel und für jedes i = 1,..., m gilt, dass K i entweder Element von F ist oder aus gewissen Klauseln K a,k b mit a, b < i resolviert werden kann. Eine Klauselmenge ist unerfüllbar genau dann, wenn eine Deduktion der leeren Klausel existiert. Es ist also nicht notwendig, ganz Res (F ) zu berechnen, sondern es können geeignete Such-Heuristiken verwendet werden. skalkül Mit dem Begriff Kalkül bezeichnet man eine Menge von syntaktischen Umformungsregeln, mit denen man semantische Eigenschaften herleiten kann. Syntaktische Umformungsregeln:, Stopp bei Erreichen der leeren Klausel Semantische Eigenschaft: Unerfüllbarkeit Wünschenswerte Eigenschaften eines Kalküls: Korrektheit: Wenn die leere Klausel aus F abgeleitet werden kann, dann ist F unerfüllbar. Vollständigkeit: Wenn F unerfüllbar ist, dann ist die leere Klausel aus F ableitbar. Barbara König Logik 117 Barbara König Logik 118 Beispiel mit otter Beispiel mit otter Wir wollen zeigen, dass ((AK BK) (AK BK) (BK RL AK) RL) ( AK BK) gültig ist. Das ist genau dann der Fall, wenn (AK BK) ( AK BK) ( BK RL AK) RL (AK BK) unerfüllbar ist. (Wegen: F G gültig gdw. F G unerfüllbar.) Wir verwenden otter einen Theorembeweiser basierend auf. otter Mit Hilfe von otter kann man sbeweise durchführen. otter ist eigentlich für die gedacht, für die ist im allgemeinen ein aussagenlogischer SAT-Solver (wie limboole) angebracht. otter ist inzwischen zu prover9 weiterentwickelt worden, wir verwenden in der Vorlesung jedoch trotzdem otter, weil man in der Ausgabe sehr schön die sbeweise nachvollziehen kann. Barbara König Logik 119 Barbara König Logik 120

32 Beispiel mit otter Eingabesyntax (Beispielformel) set(prolog_style_variables). set(binary_res). clear(unit_deletion). clear(factor). list(sos). ak bk. % (ak bk) in limboole-syntax -ak bk. % (!ak bk) -bk -rl -ak. % (!bk!rl!ak) rl. % rl ak -bk. % (ak!bk) end_of_list. Die Optionen zu Beginn stellen sicher, dass die in der Vorlesung eingeführte Art der verwendet wird. Barbara König Logik 121 Beispiel mit otter Textuelle Ausgabe von otter PROOF [] ak bk. 2 [] -ak bk. 3 [] -bk -rl -ak. 4 [] rl. 5 [] ak -bk. 6 [binary,2.1,1.1] bk. 7 [binary,5.2,6.1] ak. 8 [binary,3.1,6.1] -rl -ak. 11 [binary,8.1,4.1] -ak. 12 [binary,11.1,7.1] $F end of proof Barbara König Logik 122 Beispiel mit otter Ausgabe von otter visuell mit GraphViz aufbereitet Beispiel: Pigeonhole-Prinzip Wir betrachten nun eine Formel, bei der viele Erfüllbarkeitstester (SAT-Solver) ein schlechtes Verhalten zeigen. Pigeonhole-Prinzip/Dirichletsches Schubfachprinzip Wenn N + 1 Tauben in N Schlägen sitzen, dann gibt es in mindestens einem Schlag zwei (oder mehr) Tauben. Wir verwenden zur Formalisierung folgende atomare Formeln: T i,j mit i {1,..., N + 1}, j {1,..., N}. A(T i,j ) = 1 bedeutet dabei, dass die i-te Taube im j-ten Schlag sitzt. Barbara König Logik 123 Barbara König Logik 124

33 Beispiel: Pigeonhole-Prinzip Beispiel: Pigeonhole-Prinzip Wir formalisieren zunächst: N + 1 Tauben sitzen in N Schlägen. Jede Taube sitzt in mindestens einem Schlag: F 1 = i {1,...,N+1} j {1,...,N} T i,j Keine Taube sitzt in zwei Schlägen: F 2 = ( T i,j1 T i,j2 ) i {1,...,N+1} j 1,j 2 {1,...,N}, j 1 j 2 In einem Schlag sitzen (mindestens) zwei Tauben: G = (T i1,j T i2,j) i 1,i 2 {1,...,N+1}, i 1 i 2 j {1,...,N} Der gesamte aussagenlogische Ausdruck lautet: F 1 F 2 G. Er ist gültig genau dann, wenn F 1 F 2 G unerfüllbar ist. Dabei ist F 1 F 2 G schon beinahe in konjunktiver Normalform. Mit Hilfe eines Programms kann man Formeln für jedes N erzeugen und mit Hilfe von limboole überprüfen. Für diese Art von Formeln zeigt limboole ein relativ schlechtes Laufzeitverhalten, bereits ab N = 12 dauert der Test sehr lange. Barbara König Logik 125 Barbara König Logik 126 Anwendung: Sudoku Beispiel: ein Sudoku-Solver, basierend auf Erfüllbarkeitstests Anwendung: Sudoku Beispiel: ein Sudoku-Solver, basierend auf Erfüllbarkeitstests Sudoku-Regeln Ein Sudoku-Feld ist ein Schachbrett mit 9 Zeilen und 9 Spalten. Es ist außerdem unterteilt in 9 Regionen, bestehend aus 3 3 Feldern. Sudoku-Regeln Zu Beginn sind einige dieser Felder mit Zahlen aus der Menge {1,..., 9} gefüllt Barbara König Logik 127 Barbara König Logik 127

34 Anwendung: Sudoku Anwendung: Sudoku Beispiel: ein Sudoku-Solver, basierend auf Erfüllbarkeitstests Sudoku-Regeln Die Aufgabe besteht nun darin, das Feld vollständig auszufüllen, so dass in jeder Zeile, in jeder Spalte und in jeder Region jede Zahl zwischen 1 und 9 genau einmal vorkommt Wir verwenden folgende atomare Formeln, um ein Sudoku zu beschreiben: S i,j,k mit i, j, k {1,..., 9}. A(S i,j,k ) = 1 bedeutet dabei, dass sich auf Feld (i, j) die Zahl k befindet. Mit Hilfe dieser = 729 atomaren Formeln lassen sich nun die Sudoku-Spielregeln mit Hilfe der formalisieren Barbara König Logik 127 Barbara König Logik 128 Anwendung: Sudoku Auf jedem Feld befindet sich eine Zahl: i,j {1,...,9} k {1,...,9} S i,j,k Auf keinem Feld befinden sich zwei Zahlen: ( S i,j,k1 S i,j,k2 ) i,j {1,...,9} k 1,k 2 {1,...,9}, k 1 k 2 In keiner Zeile, Spalte, Region kommt eine Zahl doppelt vor: für Zeile 1 lautet die Formel wie folgt ( S 1,j1,k S 1,j2,k) j 1,j 2 {1,...,9}, j 1 j 2 k {1,...,9} (Für die restlichen Zeilen und für die Spalten und Regionen ergeben sich analoge Formeln). Barbara König Logik 129 Anwendung: Sudoku Für die Erzeugung dieser Formel als limboole-formel bietet es sich an, ein Programm zu schreiben, das die (sehr große) Formel in eine Datei schreibt. Die Datei besteht aus ca Zeichen. Anschließend muss nur noch die Situation in einem bestimmten Sudoku-Rätsel dargestellt werden, wie z.b. für das obige Beispiel: S115 & S123 & S157 & S216 & S241 & S259 & S265 & S329 & S338 & S386 & S418 & S456 & S493 & S514 & S548 & S563 & S591 & S617 & S652 & S696 & S726 & S772 & S788 & S844 & S851 & S869 & S895 & S958 & S987 & S999 Die entstehende Formel ist erfüllbar und limboole gibt (trotz der Größe der Formel) ohne erkennbare Zeitverzögerung die Lösung aus. Barbara König Logik 130

35 Motivation: Wir beschäftigen uns nun im folgenden mit der, die gegenüber der folgendes erlaubt: Man kann über ein beliebiges Universum (= Grundmenge) und dessen Elemente Aussagen machen. Man kann quantifizieren: für alle x gilt... ; es gibt ein x, so dass... Es gibt mehrstellige Prädikatsymbole (interpretiert als Relationen) und mehrstellige Funktionssymbole (interpretiert als Funktionen). Der Aufbau dieses Kapitels ist ähnlich wie bei der : wir beginnen mit Grundbegriffen (Syntax, Semantik, Gültigkeit, Erfüllbarkeit), Äquivalenz und Normalformen, und beschäftigen uns dann mit der. Barbara König Logik 131 Syntax der : Variablen, Terme Syntax der : Variablen, Terme Definition (Syntax der ) Eine Variable hat die Form x i mit i = 1, 2, Ein Prädikatensymbol hat die Form Pi k und ein Funktionssymbol hat die Form fi k mit i = 1, 2, 3... und k = 0, 1, Hierbei heißt i jeweils der Unterscheidungsindex und k die Stelligkeit (oder Stellenzahl). Wir definieren nun die Terme durch einen induktiven Prozess: 1 Jede Variable ist ein Term. 2 Falls f ein Funktionssymbol mit der Stelligkeit k ist, und falls t 1,..., t k Terme sind, so ist auch f (t 1,..., t k ) ein Term. Barbara König Logik 132 Syntax der : Variablen, Terme Bemerkungen zur Syntax der : Es sind auch Funktionssymbole der Stelligkeit 0 eingeschlossen, und in diesem Fall fallen die Klammern weg, d.h., statt c() schreiben wir nur c. Nullstellige Funktionssymbole heißen auch Konstanten(-symbole). Genauso gibt es nullstellige Prädikatsymbole der Form P() bzw. einfach nur P. Weitere Bemerkungen: Für Variablen schreiben wir auch x, y, z, u, v, w,... Für Prädikatsymbole schreiben wir auch P, Q, R, S,... (die Stelligkeit ergibt sich dann aus dem Kontext). Für Funktionssymbole schreiben wir auch f, g, h,... (die Stelligkeit ergibt sich dann ebenfalls aus dem Kontext). Für Konstanten(-symbole) schreiben wir auch a, b, c, d,... Barbara König Logik 133 Barbara König Logik 134

36 Syntax der : Formeln Syntax der : Formeln Nun können wir (wiederum induktiv) definieren, was Formeln (der ) sind. 1 Falls P ein Prädikatsymbol der Stelligkeit k ist, und falls t 1,..., t k Terme sind, dann ist P(t 1,..., t k ) eine Formel. 2 Für jede Formel F ist auch F eine Formel. 3 Für alle Formeln F und G sind auch (F G) und (F G) Formeln. 4 Falls x eine Variable ist und F eine Formel, so sind auch xf und xf Formeln. Das Symbol wird Existenzquantor und Allquantor genannt. Bemerkungen: Atomare Formeln nennen wir genau diejenigen, die die Form P(t 1,..., t n ) haben (gemäß (1)). Falls F eine Formel ist und F als Teil einer Formel G auftritt, so heißt F Teilformel von G. Quantoren binden stärker als alle anderen Operatoren, d.h., Formeln werden folgendermaßen geklammert: xp(x) Q(y) entspricht ( xp(x)) Q(y) P(x) yq(y) R(z) entspricht P(x) ( yq(y)) R(z) Barbara König Logik 135 Freie und gebundene Variablen Definition (Freie und gebundene Variable) Alle Vorkommen von Variablen in einer Formel werden in freie und gebundene Vorkommen unterteilt. Dabei heißt ein Vorkommen der Variablen x in der Formel F gebunden, falls F eine Formel der Form xg oder xg enthält und x in G vorkommt. Andernfalls heißt dieses Vorkommen von x frei. Eine Formel ohne Vorkommen einer freien Variablen heißt geschlossen oder eine Aussage. Barbara König Logik 137 Barbara König Logik 136 Freie und gebundene Variablen Beispiele für freie und gebundene Variable: xp(x): in dieser Formel kommt x gebunden vor. xq(x, y): in dieser Formel kommt x gebunden und y frei vor. ( xp(x)) R(x): in dieser Formel hat x sowohl ein gebundenes als auch ein freies Vorkommen. x(( xp(x)) R(x)): in dieser Formel ist das erste Vorkommen von x unter dem inneren und das zweite Vorkommen unter dem äußeren Quantor gebunden. Definition (Matrix) Die Matrix einer Formel F ist diejenige Formel, die man aus F erhält, indem jedes Vorkommen von bzw., samt der dahinterstehenden Variablen gestrichen wird. Symbolisch bezeichnen wir die Matrix der Formel F mit F. Barbara König Logik 138

37 Aufgabe zur Aufgabe zur NF: Keine Formel F: Formel, aber nicht Aussage A: Aussage P(x) xp(a) x y(q(x, y) R(x, y)) xq(x, x) xq(x, y) xp(x) xq(x, x) P(x) P(x) x NF F A NF: Keine Formel F: Formel, aber nicht Aussage A: Aussage x yq(x, y) R(x, y) z(q(z, x) R(y, z)) y(r(x, y) Q(x, z)) x( P(x) P(a)) P(x) xp(x) x y((p(y) Q(x, y)) P(x)) NF F A Barbara König Logik 139 Semantik der : Strukturen Definition (Struktur) Eine Struktur ist ein Paar A = (U A, I A ), wobei U A eine beliebige aber nicht-leere Menge ist, die die Grundmenge von A (oder der Grundbereich, der Individuenbereich, das Universum) genannt wird. Ferner ist I A eine Abbildung, die jedem k-stelligen Prädikatensymbol P (im Definitionsbereich von I A ) eine k-stellige Relation über U A zuordnet, jedem k-stelligen Funktionssymbol f (im Definitionsbereich von I A ) eine k-stellige Funktion auf U A zuordnet, jeder Variablen x (im Definitionsbereich von I A ) ein Element der Grundmenge U A zuordnet. Barbara König Logik 141 Barbara König Logik 140 Semantik der : Strukturen Bemerkungen zu Strukturen: Eine Struktur ist das analoge Konzept zu Belegungen in der. Die den Funktionssymbolen zugeordneten Funktionen können folgendermaßen dargestellt werden: sei f ein n-stelliges Funktionssymbol, dann schreiben wir f A = I A (f ) mit f A : UA n U A (a 1,..., a n ) f A (a 1,..., a n ), beispielsweise die einstellige Nachfolgerfunktion auf den natürlichen Zahlen (U A = N 0 = {0, 1, 2, 3, 4,... }): f A : N 0 N 0 n n + 1 Barbara König Logik 142

38 Semantik der : Strukturen Die den Prädikatsymbolen zugeordneten Relationen können folgendermaßen dargestellt werden: sei P ein n-stelliges Prädikatsymbol, dann schreiben wir P A = I A (P) mit P A UA n = U A U }{{ A } n-mal P A = {(a 1,..., a n ) a 1,..., a n U A und... } beispielsweise die zweistellige -Relation auf den natürlichen Zahlen: P A N 0 N 0 P A = {(n, m) n, m N 0 und n m} Barbara König Logik 143 Semantik der : Strukturen Definition (Wert eines Terms) Sei F eine Formel und A eine zu F passende Struktur. Für jeden Term t, den man aus den Bestandteilen von F bilden kann (also aus den freien Variablen und Funktionssymbolen), definieren wir nun den Wert von t in der Struktur A, den wir mit A(t) bezeichnen. Es gilt A(t) U A. Die Definition ist wieder induktiv. 1 Falls t eine Variable ist (also t = x), so ist A(t) = x A. 2 Falls t die Form t = f (t 1,..., t k ) hat, wobei t 1,..., t k Terme und f ein k-stelliges Funktionssymbol ist, so ist A(t) = f A (A(t 1 ),..., A(t k )). Fall (2) schließt auch die Möglichkeit ein, dass f nullstellig ist, d.h., t = a für eine Konstante a. In diesem Fall gilt A(t) = a A. Barbara König Logik 145 Semantik der : Strukturen Definition (Passende Struktur) Sei F eine Formel und A = (U A, I A ) eine Struktur. A heißt zu F passend, falls I A für alle in F vorkommenden Prädikatsymbole, Funktionssymbole und freien Variablen definiert ist. Der Definitionsbereich der Abbildung I A ist also eine Teilmenge von {Pi k, fi k, x i i = 1, 2, 3,... und k = 0, 1, 2,...} (in der alle Prädikatsymbole, Funktionssymbole und freien Variablen von F enthalten sind) und der Wertebereich (bzw. Bildbereich) von I A ist eine Teilmenge aller Relationen und Funktionen auf U A, sowie der Elemente von U A. Wir schreiben abkürzend statt I A (P) einfach P A, statt I A (f ) einfach f A und statt I A (x) einfach x A. Barbara König Logik 144 Semantik der : Strukturen Auf analoge Weise definieren wir (induktiv) den (Wahrheits-)Wert einer Formel F unter der Struktur A, wobei wir ebenfalls die Bezeichnung A(F ) verwenden. Es gilt A(F ) {0, 1}. Definition (Wahrheitswert einer Formel) Falls F die Form F = P(t 1,..., t k ) hat mit den Termen t 1,..., t k und k-stelligem Prädikatsymbol P, so ist { 1, falls (A(t1 ),..., A(t A(F ) = k )) P A 0, sonst Falls F die Form F = G hat, so ist { 1, falls A(G) = 0 A(F ) = 0, sonst Barbara König Logik 146

39 Semantik der : Strukturen Semantik der : Strukturen Falls F die Form F = xg hat, so ist Falls F die Form F = (G H) hat, so ist { 1, falls A(G) = 1 und A(H) = 1 A(F ) = 0, sonst Falls F die Form F = (G H) hat, so ist { 1, falls A(G) = 1 oder A(H) = 1 A(F ) = 0, sonst { 1, falls für alle d UA gilt: A A(F ) = [x/d] (G) = 1 0, sonst Falls F die Form F = xg hat, so ist { 1, falls es ein d UA gibt mit: A A(F ) = [x/d] (G) = 1 0, sonst Für d U A steht A [x/d] für diejenige Struktur A, die überall mit A identisch ist, bis auf die Definition von x A. Wir definieren x A = d, unabhängig davon, ob I A auf x definiert ist oder nicht. Barbara König Logik 147 Modell, Gültigkeit, Erfüllbarkeit Barbara König Logik 148 Aufgabe zu Erfüllbarkeit und Gültigkeit Definition (Modell) Falls für eine Formel F und eine zu F passende Struktur A gilt A(F ) = 1, so schreiben wir wieder A = F. Sprechweise: F gilt in A oder A ist Modell für F. Gültigkeit, Erfüllbarkeit, Unerfüllbarkeit Falls jede zu F passende Struktur ein Modell für F ist, so schreiben wir = F, andernfalls = F. Sprechweise: F ist (allgemein-)gültig. Falls es mindestens ein Modell für die Formel F gibt, so heißt F erfüllbar, andernfalls unerfüllbar. Folgende Formeln sind erfüllbar, aber nicht gültig. Finden Sie jeweils eine Struktur, die ein Modell für die Formel ist, und eine Struktur, die kein Modell für die Formel ist. 1 F = xp(x) 2 G = x yq(x, f (y)) Barbara König Logik 149 Barbara König Logik 150

40 Aufgabe zu Erfüllbarkeit und Gültigkeit Modell A für F = xp(x): Universum U A = N 0 P A = N 0 (das ist die einzige mögliche Interpretation von P, die zu einem Modell führt) Struktur, die kein Modell für F = xp(x) ist: Universum U B = N 0 P B = {n n N 0, n gerade} Barbara König Logik 151 Aufgabe zu Erfüllbarkeit und Gültigkeit G: Gültig E: Erfüllbar U: Unerfüllbar xp(a) x( P(x) P(a)) P(a) xp(x) xp(x) xp(x) xp(x) yp(y) xp(x) xp(f (x)) G E U Aufgabe zu Erfüllbarkeit und Gültigkeit Modell A für G = x yq(x, f (y)) Universum U A = N 0 Q A = {(n, m) n, m N 0, n < m} f A : N 0 N 0 mit f A (n) = n + 1 Struktur, die kein Modell für G = x yq(x, f (y)) ist: Universum U B = N 0 Q B = {(n, m) n, m N 0, n < m} f B : N 0 N 0 mit f B (n) = 1 Bemerkung: diese Strukturen sind natürlich keineswegs die einzigen Beispiele für Modelle bzw. Nicht-Modelle von F, G. Barbara König Logik 152 mit Gleichheit Bei mit Gleichheit sind Formeln genauso aufgebaut, wie bei herkömmlicher, mit dem Unterschied, dass es ein spezielles Prädikat = gibt, das in Infix-Notation verwendet wird. Das heißt, zur Definition der Syntax wird folgender Satz hinzugefügt: Falls t 1, t 2 Terme sind, dann ist (t 1 = t 2 ) eine Formel. Außerdem steht (t 1 t 2 ) für (t 1 = t 2 ). Und die Definition des Wahrheitswert einer Formel wird folgendermaßen ergänzt: Falls F die Form F = (t 1 = t 2 ) hat mit den Termen t 1, t 2, so ist { 1, falls A(t1 ) = A(t A(F ) = 2 ) 0, sonst Barbara König Logik 153 Barbara König Logik 154

41 Aufgabe zu Erfüllbarkeit und Gültigkeit Tarski s World G: Gültig E: Erfüllbar U: Unerfüllbar x y z(x y y z x z) x y(x = y f (x) = f (y)) x y(f (x) = f (y) x = y) x y z(f (x) = y f (x) = z y z) G E U Tarski s World Tarski s World ist eine Lehrsoftware für, entworfen von Jon Barwise und John Etchemendy. Dabei werden die Formeln auf einem Schachbrett evaluiert, auf dem sich Tetraeder, Würfel und Dodekaeder in drei Größen (small, medium, large) befinden können. Gegenüber der allgemeinen gibt es sowohl Einschränkungen an die Syntax von Formeln als auch an die zulässigen Strukturen. Ob eine Formel für eine bestimmte Welt gilt (oder nicht), kann in einem Spiel gegen den Rechner intuitiv veranschaulicht werden. Barbara König Logik 155 Barbara König Logik 156 Tarski s World Screenshot Tarski s World Einschränkungen an die Syntax zulässige Konstanten und Prädikatsymbole: Barbara König Logik 157 Zulässige Konstanten: a, b, c, d, e, f Zulässige Prädikatsymbole (Auswahl): Einstellig: Tet, Cube, Dodec, Small, Medium, Large Zweistellig: Smaller, Larger, BackOf, FrontOf, LeftOf, RightOf Dreistellig: Between Neben den Konstanten kommen in den Formeln bei Tarski s World keine weiteren Funktionssymbole vor. Variablen, aussagenlogische Operatoren und Quantoren können beliebig benutzt werden. Außerdem ist das Prädikat Gleichheit (=) erlaubt. Barbara König Logik 158

42 Tarski s World Tarski s World Einschränkungen an die Semantik zulässige Strukturen: Universen bestehen immer aus Mengen von Körpern auf dem Schachbrett. Die Interpretation der Prädikatsymbole ist durch die Größe und Art der Körper und durch ihre Positionierung auf dem Schachbrett festgelegt. Beispielsweise gilt: Tet(a) bedeutet, dass a ein Tetraeder ist. Smaller(a, b) bedeutet, dass a kleiner als b ist. LeftOf (c, d) sagt aus, dass sich c links von d befindet. Between(a, b, c) sagt aus, dass sich a zwischen b und c befindet. Daraus folgt: Nicht jede Formel, die in jeder Tarski s World gilt, ist eine im prädikatenlogischen Sinne gültige Formel. Beispiel: x(small(x) Medium(x) Large(x)) Barbara König Logik 159 Folgerung und Äquivalenz Barbara König Logik 160 Aufgabe zu Folgerung und Äquivalenz Definition (Folgerung) Eine Formel G heißt eine Folgerung der Formeln F 1,..., F k falls für jede Struktur, die sowohl zu F 1,..., F k als auch zu G passend ist, gilt: 1 F 1 = xp(x) xq(x) 2 F 2 = x(p(x) Q(x)) Wenn A Modell von {F 1,..., F k } ist, dann ist A auch Modell von G. Wir schreiben F 1,..., F k = G, falls G eine Folgerung von F 1,..., F k ist. Definition (Äquivalenz) 3 F 3 = xp(x) yq(y) F 1 = F 2 F 2 = F 3 F 3 = F 1 J N Zwei Formeln F, G heißen (semantisch) äquivalent, falls für alle Strukturen A, die sowohl für F als auch für G passend sind, gilt A(F ) = A(G). Hierfür schreiben wir F G. Barbara König Logik 161 Barbara König Logik 162

43 Aufgabe zu Folgerung und Äquivalenz Aufgabe zu Folgerung und Äquivalenz 1 F 1 = y xp(x, y) J N 2 F 2 = x yp(x, y) F 1 = F 2 F 2 = F 1 J N x yf y xf x yf x yf x yf y xf x yf y xf xf xg x(f G) xf xg x(f G) xf xg x(f G) xf xg x(f G) Barbara König Logik 163 Barbara König Logik 164 Äquivalenzen Satz (Äquivalenz von prädikatenlogischen Formeln) Seien F und G beliebige Formeln. Dann gilt: 1 xf x F xf x F 2 Falls x in G nicht frei vorkommt, gilt: xf G x(f G) xf G x(f G) xf G x(f G) xf G x(f G) 3 xf xg x(f G) xf xg x(f G) 4 x yf y xf x yf y xf Barbara König Logik 165 Äquivalenzen Bemerkung: alle Äquivalenzgesetze der behalten weiterhin ihre Gültigkeit. Beispiel: (nach demorgan) x (P(x) P(x)) x( P(x) P(x)) Barbara König Logik 166

44 Substitution Substitution Definition (Substitution) Sei F eine Formel, x eine Variable und t ein Term. Dann bezeichnet F [x/t] diejenige Formel, die man aus F erhält, wenn man jedes freie Vorkommen der Variablen x in F durch t ersetzt. Durch [x/t] wird eine Substitution beschrieben. Dabei geht man davon aus, dass durch die Substitution keine Variable in t gebunden wird. Beispiele für Substitutionen: ( P(x) Q(f (x)) R(y) ) [x/g(y)] = P(g(y)) Q(f (g(y))) R(y) ( xp(x) Q(x) ) [x/g(y)] = xp(x) Q(g(y)) Unterscheidung zwischen F [x/t] und A [x/d] : Bei F [x/t] wird eine syntaktische Ersetzung innerhalb der Formel F vorgenommen. Bei A [x/d] wird eine Struktur verändert, d.h., diese Ersetzung bezieht sich auf die Semantik. Der Zusammenhang zwischen beiden Notationen ist wie folgt: Überführungslemma Für jede Formel F, jede Variable x und jeden Term t, der keine in F gebundene Variable enthält, gilt: A(F [x/t]) = A [x/a(t)] (F ). Bereinigte Formeln Barbara König Logik 167 Definition (Bereinigte Formel) Eine Formel heißt bereinigt, sofern es keine Variable gibt, die in der Formel sowohl gebunden als auch frei vorkommt, und sofern hinter allen vorkommenden Quantoren verschiedene Variablen stehen. Lemma (Gebundene Umbenennung) Sei y eine Variable, die in F nicht vorkommt. Dann gilt: xf y(f [x/y]) xf y(f [x/y]) Lemma Zu jeder Formel F gibt es eine äquivalente Formel in bereinigter Form. Barbara König Logik 169 Pränexform Definition (Pränexform) Barbara König Logik 168 Eine Formel heißt pränex oder in Pränexform, falls sie folgende Bauart hat Q 1 y 1 Q 2 y 2... Q n y n F, wobei Q i {, }, n 0, und die y i (paarweise verschiedene) Variablen sind. Es kommt ferner kein Quantor in F vor. Satz Für jede Formel gibt es eine äquivalente (und bereinigte) Formel in Pränexform. Barbara König Logik 170

45 Pränexform Pränexform Verfahren zur Bestimmung der Pränexform: Gegeben: eine prädikatenlogische Formel F. 1 Erstelle durch gebundene Umbenennung eine bereinigte Formel, die zu F äquivalent ist. 2 Schieben alle Negationen mit Hilfe der Gesetze xf x F und xf x F hinter die Quantoren. 3 Ziehe alle Quantoren nach vorne unter Verwendung folgender Gesetze (Annahme: x kommt nicht frei in G vor): Beispiel: Formen Sie die folgende Formel in Pränexform um. F = ( x y P(x, g(y, f (x))) Q(z)) x R(x, y) ( xf G) x(f G) ( xf G) x(f G) ( xf G) x(f G) ( xf G) x(f G) (Für diese Umformung ist es unbedingt notwendig, dass F zuvor bereinigt wurde.) Barbara König Logik 171 Barbara König Logik 172 Skolemform Wir definieren nun noch die Skolemform, in der keine Existenzquantoren mehr enthalten sind. Definition (Skolemform) Eine Formel ist in Skolemform, falls sie folgende Bauart hat y 1 y 2... y n F, wobei n 0, und die y i (paarweise verschiedene) Variablen sind. Es kommt ferner kein Quantor in F vor. Barbara König Logik 173 Skolemform Für jede Formel F in bereinigter Pränexform (BPF) definieren wir ihre Skolemform(-el) als das Resultat der Anwendung des folgenden Algorithmus auf F : while F enthält einen Existenzquantor do begin F habe die Form F = y 1 y 2... y n z G für eine Formel G in BPF und n 0 (der Allquantorblock kann auch leer sein); Sei f ein neues bisher in F nicht vorkommendes n-stelliges Funktionssymbol; F := y 1 y 2... y n G[z/f (y 1, y 2,..., y n )]; (der Existenzquantor in F wird entfernt und jedes Vorkommen von z in G durch f (y 1, y 2,..., y n ) ersetzt) end Barbara König Logik 174

46 Skolemform Skolemform Satz Für jede Formel F in bereinigter Pränexform gilt: F ist erfüllbar genau dann, wenn die Skolemform von F erfüllbar ist. Bemerkung: die Umformung in die Skolemform erhält nur die Erfüllbarkeit von Formeln, nicht jedoch deren Gültigkeit! Man sagt daher, dass die Formel F und ihre Skolemform erfüllbarkeitsäquivalent sind. Sie sind im allgemeinen jedoch nicht äquivalent. Beispiel 1: Formen Sie folgende Formel in Skolemform um. F = x y z u vp(x, y, z, u, v) Skolemform Barbara König Logik 175 Beispiel 2: Gegeben sei die Formel F = x y P(x, y) Bestimmen Sie zunächst die Skolemform F von F. Geben Sie ein Modell von F an und erweitern Sie es zu einem Modell von F. Klauselform Definition (Klauselform) Barbara König Logik 176 Eine Aussage heißt in Klauselform, falls sie die Bauart hat y 1 y 2... y n F, wobei F keine Quantoren enthält und in KNF (konjunktiver Normalform) ist. Eine Aussage in Klauselform kann als Menge von Klauseln dargestellt werden. Beispiel: x y((p(x, y) Q(x)) R(y)) ist in Klauselform und wird dargestellt als: {{P(x, y), Q(x)}, {R(y)}} Barbara König Logik 177 Barbara König Logik 178

47 Klauselform Klauselform Verfahren zur Bestimmung der Klauselform: Gegeben: eine prädikatenlogische Formel F (mit eventuellen Vorkommen von freien Variablen). 1 Bereinige F durch systematisches Umbenennen der gebundenen Variablen. Es entsteht eine zu F äquivalente Formel F 1. 2 Seien y 1, y 2,..., y n die in F bzw. F 1 vorkommenden freien Variablen. Ersetze F 1 durch F 2 = y 1 y 2... y n F 1. Dann ist F 2 erfüllbarkeitsäquivalent zu F 1 und F und enthält keine freien Variablen mehr. 3 Stelle eine zu F 2 äquivalente (und damit zu F erfüllbarkeitsäquivalente) Aussage F 3 in Pränexform her. 4 Eliminiere die vorkommenden Existenzquantoren durch Übergang zur Skolemform von F 3. Diese sei F 4 und ist dann erfüllbarkeitsäquivalent zu F 3 und damit auch zu F. 5 Forme die Matrix von F 4 um in KNF, wodurch man die Klauselform erhält (und schreibe diese Formel F 5 dann als Klauselmenge auf). Klauselform Barbara König Logik 179 Klauselform Barbara König Logik 180 Welche dieser Formel sind bereinigt, in Pränexform, in Skolemform, in Klauselform? x(tet(x) Cube(x) Dodec(x)) x y(cube(y) BackOf(x, y)) x( FrontOf(x, x) BackOf(x, x)) xcube(x) x Cube(x) x(cube(x) Small(x)) y( Cube(y) Small(y)) (Cube(a) xsmall(x)) Small(a) x(larger(a, x) Larger(x, b)) Larger(a, b) B P S K Beispiel: Formen Sie die folgenden Formeln in Klauselform um: F 1 = xp(x) xp(f (x)) F 2 = ( x y P(x, g(y, f (x))) z Q(z)) x R(x, x) Barbara König Logik 181 Barbara König Logik 182

48 Herbrand-Universum Herbrand-Universum Motivation: Um die Erfüllbarkeit/Unerfüllbarkeit einer prädikatenlogischen Formel zu testen, müsste man ungeheuer viele Strukturen durchprobieren. Wir zeigen im folgenden, dass es reicht nur ganz bestimmte Strukturen, sogenannte Herbrand-Strukturen benannt nach dem Logiker Jacques Herbrand zu testen. Diese können immer noch ein unendlich großes Universum haben und unendlich viele sein, sind aber dennoch wesentlich überschaubarer. Darauf aufbauend kann dann ein automatisches Verfahren entwickelt werden, das mit Hilfe von die Unerfüllbarkeit einer prädikatenlogischen Formel überprüft. Definition (Herbrand-Universum) Das Herbrand-Universum D(F ) einer geschlossenen Formel F in Skolemform ist die Menge aller variablenfreie Terme, die aus den Bestandteilen von F gebildet werden können. Falls in F keine Konstante vorkommt, wählen wir zunächst eine beliebige Konstante, zum Beispiel a, und bilden dann die variablenfreien Terme. D(F ) wird wie folgt induktiv definiert: 1 Alle in F vorkommenden Konstanten sind in D(F ). Falls F keine Konstante enthält, so ist a in D(F ). 2 Für jedes in F vorkommende n-stellige Funktionssymbol f und Terme t 1,..., t n in D(F ) ist der Term f (t 1,..., t n ) in D(F ). Herbrand-Universum Barbara König Logik 183 Herbrand-Strukturen Barbara König Logik 184 Beispiel: Bestimmen Sie die Herbrand-Universen zu folgenden Formeln F 1 = x P(f (x), g(a)) F 2 = x y Q(h(x, y)) F 3 = x P(x) Definition (Herbrand-Struktur) Sei F eine Aussage in Skolemform. Dann heißt jede zu F passende Struktur A = (U A, I A ) eine Herbrand-Struktur für F, falls folgendes gilt: 1 U A = D(F ), 2 für jedes in F vorkommende n-stellige Funktionssymbol f und t 1, t 2,..., t n D(F ) ist f A (t 1, t 2,..., t n ) = f (t 1, t 2,..., t n ). Idee: Jeder variablenfreie Term t wird durch sich selbst interpretiert, d.h., A(t) = t. (Vermischung von Syntax und Semantik.) Barbara König Logik 185 Barbara König Logik 186

49 Herbrand-Strukturen Für eine Herbrand-Struktur A vereinfacht sich das Überführungslemma: Lemma (Überführungslemma für Herbrand-Strukturen) Sei A eine Herbrand-Struktur. Dann gilt für jede Formel F, jede Variable x und jeden variablenfreien Term t: A(F [x/t]) = A [x/t] (F ). Der fundamentale Satz der Satz Sei F eine Aussage in Skolemform. F ist genau dann erfüllbar, wenn F ein Herbrand-Modell besitzt. Idee: Man muss zeigen, dass eine erfüllbare Aussage F in Skolemform ein Herbrand-Modell besitzt. Da F erfüllbar ist, hat F ein (beliebiges) Modell A. Um ein Herbrand-Modell B für F zu erhalten, werden die Prädikatsymbole wie folgt interpretiert: für ein n-stelliges Prädikatsymbol P und t 1,..., t n D(F ) gilt (t 1,..., t n ) P B genau dann, wenn (A(t 1 ),..., A(t n )) P A. (Wenn eine Konstante a D(F ) nicht in F vorkommt, dann wählt man eine beliebige Interpretation a A.) Barbara König Logik 187 Barbara König Logik 188 Der fundamentale Satz der Herbrand-Expansion Beispiel zum vorherigen Satz: Gegeben sei die Formel Aufgaben: F = x P(x, f (x)) Bestimmen Sie ein beliebiges Modell A von F. Anschließend definieren Sie ein Herbrand-Modell B von F, dessen Relation P B analog zu P A definiert ist. (So wie im Beweis zum vorherigen Satz beschrieben.) Definition (Herbrand-Expansion) Sei F = y 1 y 2... y n F eine Aussage in Skolemform. Dann ist E(F ), die Herbrand-Expansion von F, definiert als E(F ) = {F [y 1 /t 1 ][y 2 /t 2 ]... [y n /t n ] t 1, t 2,..., t n D(F )} Die Formeln in E(F ) entstehen also, indem die Terme in D(F ), dem Herbrand-Universum von F, in jeder möglichen Weise für die Variablen in F substituiert werden. Bemerkung: Da das Herbrand-Universum D(F ) abzählbar ist, ist auch die Menge E(F ) abzählbar. Barbara König Logik 189 Barbara König Logik 190

50 Herbrand-Expansion Wiederholung: Abzählbarkeit Definition (Abzählbarkeit) Eine Menge M heißt abzählbar, wenn es eine surjektive Abbildung f : N 0 M gibt. Das heißt es gibt eine (nicht notwendigerweise konstruktive) Aufzählung f (0), f (1), f (2),... aller Elemente von M, in der jedes Element von M mindestens einmal vorkommt. Bemerkungen: Beispiele für abzählbare Mengen sind N 0, Q (die Menge der rationalen Zahlen bzw. Brüche) und die Menge aller Terme, die aus einer endlichen Menge von Funktionssymbolen gebildet werden. (Daher: ein Herbrand-Universum D(F ) ist immer abzählbar.) Die Menge R der reellen Zahlen ist nicht abzählbar. Herbrand-Expansion Barbara König Logik 191 Idee: Behandle die Formeln in der Herbrand-Expansion wie aussagenlogische Formeln. D.h., betrachte jedes auftauchende Prädikat P(t 1,..., t n ) wie eine atomare Formel A. Beispiel: Sei beispielsweise E(F ) = {F 1, F 2,... }. F 1 = (P(f (a), f (b)) Q(g(a, b)) P(a, b) ) P(f (a), f (b)). }{{}}{{}}{{}}{{} A B C A Dies entspricht (A B C) A. Eine Formel in der Herbrand-Expansion ist erfüllbar, genau dann, wenn sie im aussagenlogischen Sinne erfüllbar ist. Barbara König Logik 193 Herbrand-Expansion Beispiel: Bestimme die Herbrand-Expansion der Formel x y z P(x, f (y), g(z, x)). Barbara König Logik 192 Satz von Gödel-Herbrand-Skolem Satz (Gödel-Herbrand-Skolem) Für jede Aussage F in Skolemform gilt: F ist erfüllbar genau dann, wenn die Formelmenge E(F ) (im aussagenlogischen Sinn) erfüllbar ist. Beweis: Es genügt zu zeigen, dass F ein Herbrand-Modell besitzt genau dann, wenn E(F ) erfüllbar ist. Die Formel F habe die Form y 1 y 2... y n F. Mit Hilfe des Überführungslemmas kann man zeigen: Barbara König Logik 194

51 Satz von Gödel-Herbrand-Skolem Satz von Herbrand A ist ein Herbrand-Modell für F gdw. für alle t 1, t 2,..., t n D(F ) gilt: A [y1 /t 1 ][y 2 /t 2 ]...[y n /t n ](F ) = 1 gdw. für alle t 1, t 2,..., t n D(F ) gilt: Satz (Herbrand) Eine Aussage F in Skolemform ist unerfüllbar genau dann, wenn es eine endliche Teilmenge von E(F ) gibt, die (im aussagenlogischen Sinn) unerfüllbar ist. A(F [y 1 /t 1 ][y 2 /t 2 ]... [y n /t n ]) = 1 gdw. für alle G E(F ) gilt A(G) = 1 gdw. A ist ein Modell für E(F ) Beweis: Ummittelbare Folge des Satzes von Gödel-Herbrand-Skolem und des Endlichkeitssatzes. Endlichkeitssatz Barbara König Logik 195 Algorithmus von Gilmore Barbara König Logik 196 Algorithmus von Gilmore Sei F eine prädikatenlogische Aussage in Skolemform und sei {F 1, F 2, F 3,... } eine Aufzählung von E(F ). Algorithmus von Gilmore Eingabe: F n := 0; repeat n := n + 1; until (F 1 F 2... F n ) ist unerfüllbar; Gib unerfüllbar aus und stoppe. Bemerkungen zum Algorithmus von Gilmore: Man wählt eine beliebige unendliche Aufzählung F 1, F 2, F 3,... aller Formeln in E(F ). Dabei muss nur darauf geachtet werden, dass jede Formel irgendwann in dieser Aufzählung vorkommt. Das ist möglich, da E(F ) abzählbar ist. Es dürfen Formeln mehrfach vorkommen. Das ist insbesondere immer dann so, wenn E(F ) endlich ist. Wenn alle Formeln in einer endlichen Menge E(F ) abgearbeitet sind, dann kann der Algorithmus auch stoppen und erfüllbar ausgeben. Barbara König Logik 197 Barbara König Logik 198

52 Algorithmus von Gilmore Algorithmus von Gilmore Aus dem Satz von Herbrand folgt: Beispiel: Zeigen Sie mit Hilfe des Algorithmus von Gilmore, dass folgende Formeln F = x y ( P(f (f (x))) P(f (y))) G = x (P(f (x)) P(x)) unerfüllbar sind. Falls die Formel F unerfüllbar ist, so stoppt der Algorithmus von Gilmore nach endlicher Zeit und gibt unerfüllbar aus. Falls der Algorithmus von Gilmore unerfüllbar ausgibt, so ist F tatsächlich unerfüllbar. Wenn F jedoch erfüllbar ist, so gibt es keine Garantie dafür, dass der Algorithmus jemals terminiert. Es kann auch gezeigt werden, dass es tatsächlich keinen Algorithmus gibt, der das Unerfüllbarkeitsproblem der löst und immer mit der korrekten Antwort (unerfüllbar bzw. erfüllbar) terminiert. Barbara König Logik 199 Algorithmus von Gilmore Semi-Entscheidbarkeit (informell) Sei M X eine Menge (auch Sprache oder Problem genannt). Die Menge M heißt semi-entscheidbar, wenn es einen Algorithmus A gibt, der ein Element x X als Eingabe nimmt und genau dann, wenn x M gilt, terminiert und x ist in M enthalten zurückgibt. Der Algorithmus A muss jedoch nicht terminieren, wenn x M gilt. Falls A auch in diesem Fall terminiert und x ist nicht in M enthalten zurückgibt, so heißt M entscheidbar. Bemerkung: die Begriffe Entscheidbarkeit und Semi-Entscheidbarkeit werden detailliert in der Vorlesung Berechenbarkeit und Komplexität besprochen. Barbara König Logik 201 Barbara König Logik 200 Semi-Entscheidbarkeitssätze Satz (Semi-Entscheidbarkeit) Folgende Probleme sind semi-entscheidbar, jedoch nicht entscheidbar: (a) Das Unerfüllbarkeitsproblem für prädikatenlogische Formeln. (b) Das Gültigkeitsproblem für prädikatenlogische Formeln. (c) Das Folgerungsproblem für prädikatenlogische Formeln. (d) Das Äquivalenzproblem für prädikatenlogische Formeln. Barbara König Logik 202

53 Semi-Entscheidbarkeitssätze in der Beweis: (a) Das Problem ist nicht entscheidbar (ohne Beweis). Der Algorithmus von Gilmore kann es jedoch semi-entscheiden. (b) F gültig gdw. F unerfüllbar. (c) F = G gdw. F G gültig. (d) F G gdw. F G gültig. Der Algorithmus von Gilmore funktioniert zwar, ist in der Praxis aber unbrauchbar, weil er zuviele Formeln erzeugt und nicht zielgerichtet arbeitet. Daher ist unser Programm der nächsten Stunden: Wie sieht in der aus? Barbara König Logik 203 Wiederholung: in der sschritt: {L 1,..., L n, A} {L 1,..., L m, A} Barbara König Logik 204 Anpassung des Algorithmus von Gilmore Algorithmus von Gilmore: Sei F eine prädikatenlogische Aussage in Skolemform und sei {F 1, F 2, F 3,..., } eine Aufzählung von E(F ). Mini-Beispiel: {L 1,..., L n, L 1,..., L m} { A, B} {A} { B} {B} Eine Klauselmenge ist unerfüllbar genau dann, wenn die leere Klausel abgeleitet werden kann. Barbara König Logik 205 Eingabe: F n := 0; repeat n := n + 1; until (F 1 F 2... F n ) ist unerfüllbar; (dies kann mit Mitteln der, beispielsweise Wahrheitstafeln, getestet werden) Gib unerfüllbar aus und stoppe. Mittel der wir verwenden für den Unerfüllbarkeitstest Barbara König Logik 206

54 Definition von Res(M) (Wiederholung) Definition Sei M eine Klauselmenge. Dann ist Res(M) definiert als Res(M) = M {R R ist Resolvent zweier Klauseln in M}. Außerdem setzen wir: und schließlich sei Res 0 (M) = M Grundresolutionssatz Res n+1 (M) = Res(Res n (M)) für n 0 Res (M) = n 0 Res n (M). Barbara König Logik 207 Grundresolutionsalgorithmus Sei F 1, F 2,... weiterhin die Aufzählung der Herbrand-Expansion. Grundresolutionsalgorithmus Eingabe: eine Aussage F in Klauselform i := 0; M := ; repeat i := i + 1; M := M F i ; M := Res (M) until M Gib unerfüllbar aus und stoppe. Warum der Name Grundresolution? Im Gegensatz zu späteren Verfahren werden Terme ohne Variable (= Grundterme) substituiert, um die Formeln der Herbrand-Expansion zu erhalten. Barbara König Logik 208 Grundresolutionsalgorithmus Aus dem Grundresolutionsalgorithmus ergibt sich folgender Satz: Grundresolutionssatz Eine Aussage in Klauselform F = y 1... y k F mit der Matrix F in KNF ist unerfüllbar genau dann, wenn es eine Folge von Klauseln K 1,..., K n gibt mit der Eigenschaft: K n ist die leere Klausel Für i = 1,..., n gilt: entweder ist K i eine Grundinstanz einer Klausel K F, d.h. K i = K[y 1 /t 1 ]... [y k /t k ] mit t i D(F ) oder K i ist (aussagenlogischer) Resolvent zweier Grundinstanzen K a, K b mit a < i und b < i Beispiel: Zeigen Sie mit Hilfe von Grundresolution, dass folgende Formel in Klauselform unerfüllbar ist. {{P(f (x)), Q(x)}, { P(f (g(y)))}, { Q(g(f (a)))}} Weglassen von Klauseln und sschritten, die nicht zur Herleitung der leeren Klausel beitragen. Barbara König Logik 209 Barbara König Logik 210

55 Motivation: Prädikatenlogische Bei der Grundresolution kann man unnötigerweise in Sackgassen laufen. Beispiel: Motivation: Prädikatenlogische Idee: Variablen nur noch so weit wie nötig durch Terme ersetzen. Statt Grundtermen Terme mit Variablen verwenden. {P(f (x)), Q(x)} { P(f (g(y)))} { Q(g(f (a)))} {P(f (x)), Q(x)} { P(f (g(y)))} { Q(g(f (a)))} [x/g(a)] [y/a] {Q(g(a))} [x/g(y)] [] {Q(g(y))} []? [y/f (a)] Besser wäre gewesen, die Variable x durch g(f (a)) anstatt durch g(a) zu ersetzen. Aber woher kann man das vorher wissen? Barbara König Logik 211 Wiederholung: Substitutionen Barbara König Logik 212 Unifikator/Allgemeinster Unifikator Eine Substitution sub ist eine Abbildung von Variablen auf Terme. F sub: Anwendung der Substitution sub auf die Formel F t sub: Anwendung der Substitution sub auf den Term t Eine Substitution kann auch als Folge von Ersetzungen beschrieben werden: [x/f (z)] [y/g(a, z)] [z/h(w)] entspricht folgender entflochtener Substitution: [x/f (h(w)), y/g(a, h(w)), z/h(w)]. Ersetzungen werden von links nach rechts durchgeführt! Verknüpfung von Substitutionen: sub 1 sub 2 (zuerst wird sub 1 angewandt, anschließend sub 2 ). Barbara König Logik 213 Definition (Unifikation) Gegeben sei eine Menge L = {L 1,..., L k } von Literalen. Eine Substitution sub heißt Unifikator von L, falls L 1 sub = L 2 sub = = L k sub Das ist gleichbedeutend mit Lsub = 1, wobei Lsub = {L 1 sub,..., L k sub}. Ein Unifikator sub von L heißt allgemeinster Unifikator von L, falls für jeden Unifikator sub von L gilt, dass es eine Substitution s gibt mit sub = sub s. Barbara König Logik 214

56 Unifikator/Allgemeinster Unifikator Unifikator/Allgemeinster Unifikator Beispiele: Bestimmen Sie die allgemeinsten Unifikatoren folgender Mengen (falls sie existieren): {P(x), P(f (y))} {P(x), Q(y)} {Q(x, f (x)), Q(y, g(y))} {P(x), P(f (x))} {Q(x, f (y)), Q(g(z), f (x))} {Q(x, f (y)), Q(g(y), f (x))} {Q(x, f (y)), Q(f (y), z), Q(z, f (x))} Bemerkungen: Eine Menge von Literalen kann mehrere allgemeinste Unifikatoren haben. Beispielsweise sind sowohl [y/f (x)] als auch [x/z][y/f (z)] allgemeinste Unifikatoren von {P(f (x)), P(y)}. Alle allgemeinsten Unifikatoren kann man jedoch durch einfache Variablenumbenennung ineinander umformen. Eine Menge L von (mehr als zwei) Literalen kann unter Umständen nicht unifizierbar sein, auch wenn alle Paare von Literalen unifizierbar sind. Beispiel: {Q(x, f (y)), Q(f (y), z), Q(z, f (x))} Unifikationsalgorithmus Unifikationsalgorithmus Barbara König Logik 215 Eingabe: eine Literalmenge L sub := []; (leere Substitution) while Lsub > 1 do Suche die erste Position, an der sich zwei Literale L 1, L 2 aus Lsub unterscheiden if keines der beiden Zeichen ist eine Variable then stoppe mit nicht unifizierbar else Sei x die Variable und t der Term im anderen Literal (möglicherweise auch eine Variable) if x kommt in t vor then stoppe mit nicht unifizierbar else sub := sub [x/t] Ausgabe: sub Barbara König Logik 217 Unifikationsalgorithmus Barbara König Logik 216 Beispiel: Wende den Unifikationsalgorithmus auf folgende Literalmenge an L = { P(f (z, g(a, y)), h(z)), P(f (f (u, v), w), h(f (a, b)))} Bemerkung: hier sind a, b Konstanten und y, z, u, v, w Variablen Barbara König Logik 218

57 Korrektheit des Unifikationsalgorithmus Prädikatenlogische Satz (Korrektheit des Unifikationsalgorithmus) Der Unifikationsalgorithmus terminiert immer und gibt bei Eingabe einer nicht-unifizierbaren Literalmenge nicht unifizierbar aus. Wenn eine Menge L von Literalen unifizierbar ist, dann findet der Unifikationsalgorithmus immer den allgemeinsten Unifikator von L. Das bedeutet unter anderem auch, dass jede unifizierbare Menge von Literalen einen allgemeinsten Unifikator hat (Unifikationssatz von Robinson). Definition (Prädikatenlogischer Resolvent) Eine Klausel R heißt prädikatenlogischer Resolvent zweier Klauseln K 1, K 2, wenn folgendes gilt: Es gibt Substitutionen s 1, s 2, die Variablenumbenennungen sind, so dass K 1 s 1 und K 2 s 2 keine gemeinsamen Variablen enthalten. Es gibt Literale L 1,..., L m aus K 1 s 1 und Literale L 1,..., L n aus K 2 s 2, so dass L = {L 1,..., L n, L 1,..., L n} unifizierbar ist. Sei sub der allgemeinste Unifikator von L. (L bezeichnet das negierte Literal L.) Es gilt R = ((K 1 s 1 {L 1,..., L m }) (K 2 s 2 {L 1,..., L n}))sub. Barbara König Logik 219 Prädikatenlogische Schreibweise: Zu resolvierende Literale unterstreichen und Substitutionen angeben Beispiel: {P(x), P(f (y)), Q(x, y)} s 1 = [] sub = [x/f (g(z)), y/g(z)] s 2 =[x/z] {Q(f (g(z)), g(z))} Hinweis: Es gibt noch zwei weitere Möglichkeiten, einen prädikatenlogischen sschritt mit diesen Klauseln auszuführen. { P(f (g(x)))} Barbara König Logik 221 Aufgabe Barbara König Logik 220 Sind diese Klauseln resolvierbar? Wieviele mögliche Resolventen gibt es? K 1 K 2 Möglichkeiten {P(x), Q(x, y)} {Q(g(x)), R(f (x))} {P(x), P(f (x))} { P(f (x))} { Q(f (x))} { P(y), Q(y, z)} Barbara König Logik 222

58 Prädikatenlogische Korrektheit und Vollständigkeit Beispiel: Leiten Sie aus folgender Klauselmenge die leere Klausel her (diesmal mit prädikatenlogischer anstatt Grundresolution). {{P(f (x)), Q(x)}, { P(f (g(y)))}, { Q(g(f (a)))}} Zwei Fragen: Wenn man mit prädikatenlogischer aus einer Formel F die leere Klausel ableiten kann, ist F dann unerfüllbar? (Korrektheit) Kann man für eine unerfüllbare Formel F immer durch prädikatenlogische die leere Klausel herleiten? (Vollständigkeit) Obiges ist zwar bereits für die Grundresolution bekannt, aber noch nicht für die prädikatenlogische. Barbara König Logik 223 Barbara König Logik 224 Lifting-Lemma Beispiel zum Lifting-Lemma Lifting-Lemma Seien K 1, K 2 zwei prädikatenlogische Klauseln und seien K 1, K 2 zwei Grundinstanzen hiervon, die aussagenlogisch resolvierbar sind und den Resolventen R ergeben. Dann gibt es einen prädikatenlogischen Resolventen R von K 1, K 2, so dass R eine Grundinstanz von R ist. K 1 K 1 R R : : Substitution K 2 K 2 {P(f (x)), Q(x)} [x/g(a)] {P(f (g(a))), Q(g(a))} {Q(g(y))} [y/a] {Q(g(a))} { P(f (g(y)))} [y/a] { P(f (g(a)))} Barbara König Logik 225 Barbara König Logik 226

59 ssatz ssatz der Sei F eine Aussage in Skolemform mit einer Matrix F in KNF. Dann gilt: F ist unerfüllbar genau dann, wenn Res (F ). (Dabei bezeichnet Res die Bildung aller möglichen prädikatenlogischen Resolventen.) Für den Beweis des ssatzes benötigen wir noch den Begriff des Allabschlusses... ssatz Für eine Formel H mit freien Variablen x 1,..., x n bezeichnen wir mit H = x 1 x 2... x n H ihren Allabschluss. Sei F eine Aussage in Skolemform und sei F deren Matrix in KNF, so gilt: F F Beispiel: F = P(x, y) Q(y, x) K F K F x y(p(x, y) Q(y, x)) x yp(x, y) x y( Q(y, x)) ssatz Barbara König Logik 227 Barbara König Logik 228 Verfeinerung der (Ausblick) Beweisskizze (ssatz): Korrektheit: Falls R ein Resolvent von Klauseln K 1, K 2 ist, dann kann man zeigen, dass K 1 K 2 = R. Die weitere Argumentation ist analog zur : die leere Klausel (eine unerfüllbare Formel) folgt aus F, damit ist F selbst unerfüllbar. Vollständigkeit: Wenn F unerfüllbar ist, dann gibt es einen Grundresolutionsbeweis, bei dem die leere Klausel abgeleitet wird. Mit Hilfe des Lifting-Lemmas kann dieser Beweis als prädikatenlogischer sbeweis nachgebaut werden, wobei ebenfalls die leere Klausel entsteht. Probleme bei der prädikatenlogischen : Zu viele Wahlmöglichkeiten Immer noch zu viele Sackgassen Kombinatorische Explosion des Suchraums Lösungsansätze: Strategien und Heuristiken: Verbieten bestimmter sschritte, Suchraum wird dadurch eingeschränkt Vorsicht: Die Vollständigkeit darf dadurch nicht verloren gehen! Barbara König Logik 229 Barbara König Logik 230

60 Beispiele Beispiele Ist die Klauselmenge {{P(f (x))}, { P(f (x)), Q(f (x), x)}, { Q(f (a), f (f (a)))}, { P(x), Q(x, f (x))}} unerfüllbar? Wir betrachten folgende Klauselmenge (Beispiel aus dem Buch von Schöning): F = {{ P(x), Q(x), R(x, f (x))}, { P(x), Q(x), S(f (x))}, {T (a)}, {P(a)}, { R(a, x), T (x)}, { T (x), Q(x)}, { T (x), S(x)}} und zeigen ihre Unerfüllbarkeit mit Hilfe des stheorembeweisers otter (siehe auch die Vorstellung von otter im Kapitel ). Beispiele Barbara König Logik 231 Beispiele Barbara König Logik 232 Wir betrachten folgende prädikatenlogische Formel: F = x(p(x) P(f (x))) Ist diese Formel gültig, erfüllbar oder unerfüllbar? Was passiert, wenn sie als Eingabe für einen stheorembeweiser (wie beispielsweise otter) verwendet wird? Diese Formel ist erfüllbar: otter leitet immer neue Klauseln ab und terminiert nicht. Das Affe-Banane-Problem (Teil 1) (A1) Ein Tier, das Arme hat und nahe bei einem Ding ist, kann das Ding erreichen. (A2) Ein Tier auf einem hohen Gegenstand, der unter den Bananen steht, ist nahe bei den Bananen. (A3) Wenn ein Tier in einem Raum einen Gegenstand zu einem Ding schiebt, die beide im Raum sind, dann ist das Ding nahe am Boden oder der Gegenstand ist unter dem Ding. (A4) Wenn ein Tier einen Gegenstand ersteigt, ist es auf dem Gegenstand. (A5) Der Affe ist ein Tier, das Arme hat. Barbara König Logik 233 Barbara König Logik 234

61 Beispiele Beispiele Das Affe-Banane-Problem (Teil 2) (A6) Der Stuhl ist ein hoher Gegenstand. (A7) Die Bananen sind ein Ding. (A8) Der Affe, die Bananen und der Stuhl sind im Raum. (A9) Der Affe kann den Stuhl unter die Bananen schieben. (A10) Die Bananen sind nicht nahe am Boden. (A11) Der Affe kann den Stuhl ersteigen. (S?) Kann der Affe die Bananen erreichen? Schema für die Lösung solcher Probleme: Seien A 1,..., A n die Axiome oder Voraussetzungen und S die Schlussfolgerung. Um zu zeigen, dass A 1 A n S gültig ist, zeigen wir, dass A 1 A n S unerfüllbar ist. Anwendungen Barbara König Logik 235 Barbara König Logik 236 Motivation: Logik-Programmierung Anwendungen der prädikatenlogischen Theorembeweiser: Beweis von Sätzen aus der Mathematik Verifikation: Beweis der Korrektheit von Programmen Schlussfolgerung in Expertensystemen Planungssysteme Logik-Programmierung (PROLOG) siehe nächstes Kapitel Bemerkung: Neben gibt es noch weitere Methoden, die Unerfüllbarkeit prädikatenlogischer Formeln zu zeigen, beispielsweise mit Hilfe von Tableau-Beweisen. Wir betrachten sogenannte Hornklauseln, bei denen höchstens ein Literal positiv ist (analog zu den aussagenlogischen Hornformeln). Das führt zu einfacheren sbeweisen, die im wesentlichen die Form von Ketten haben. Die dabei entstehenden Substitutionen kann man aufsammeln und als Lösung präsentieren. Auf dieser Idee basieren Logik-Programmiersprachen, wie beispielsweise PROLOG. Barbara König Logik 237 Barbara König Logik 238

62 Motivation: Logik-Programmierung Beispiel: wir betrachten folgende Formalisierung der Addition F = x A(x, null, x) x y z (A(x, y, z) A(x, s(y), s(z))) Dabei ist A ein dreistelliges Prädikatsymbol mit der Bedeutung: A(x, y, z) genau dann, wenn x + y = z. Außerdem ist s eine einstellige Funktion, die die Nachfolgerfunktion (successor function) darstellen soll. Eine natürliche Zahl n soll so dargestellt werden: s n (null) = s(s(... (s( null))... )) }{{} n mal Des weiteren soll die Konstante null die 0 repräsentieren. Barbara König Logik 239 Motivation: Logik-Programmierung Motivation: Logik-Programmierung Wir wollen nun überprüfen, ob die Formel G = u A(s(s(s(null))), s(s(null)), u) aus dieser Formel ableitbar ist. D.h., gibt es ein u für das gilt = u? Wir negieren und skolemisieren die Formel F G und erhalten folgende Klauselmenge: {{A(x, null, x)}, { A(x, y, z), A(x, s(y), s(z))}, { A(s(s(s(null))), s(s(null)), u)}} Dabei heißt die aus G entstandene Klausel Zielklausel. Barbara König Logik 240 Motivation: Logik-Programmierung Bemerkungen: Bei der dieser Klauseln reicht es aus, immer mit mindestens einer Klausel zu resolvieren, die nur aus negativen Literalen besteht. Wir beginnen die also mit der Zielklausel. Dabei entstehen als Resolventen wiederum nur Klauseln, die nur aus negativen Literalen bestehen. { A(s(s(s(null))), s(s(null)), u)} { A(x, y, z), A(x, s(y), s(z))} sub 1 = [u/s(z), x/s(s(s(null))), y/s(null)] { A(s(s(s(null))), s(null), z)} { A(x, y, z ), A(x, s(y), s(z ))} sub 2 = [z/s(z ), x/s(s(s(null))), y/null] { A(s(s(s(null))), null, z )} {A(x, null, x)} sub 3 = [z /s(s(s(null))), x/s(s(s(null)))] Barbara König Logik 241 Barbara König Logik 242

63 Motivation: Logik-Programmierung Hornklauseln Wir sammeln alle Substitutionen auf, wenden sie auf u an und erhalten: u sub 1 sub 2 sub 3 = s(z) sub 2 sub 3 = s(s(z )) sub 3 = s(s(s(s(s(null))))) Das heißt, die leere Klausel kann abgeleitet werden, wenn man u durch s 5 (null) ersetzt. Das ist aber genau das Ergebnis der Addition Diesen Prozess nennt man auch Antwortgenerierung. Definition (Hornklauselprogramm, Teil 1) Ein Hornklauselprogramm oder Logikprogramm ist eine Klauselmenge, in der jede Klausel höchstens ein positives Literal enthält. Die Klauseln werden folgendermaßen klassifiziert: Tatsachenklauseln: Klauseln der Form {P} mit einem positiven Literal P. PROLOG-Schreibweise: P. Prozedurklauseln: Klauseln der Form {P, Q 1,..., Q k }, die Folgerungen darstellen. PROLOG-Schreibweise: P : Q 1,..., Q k (: steht für ) Hornklauseln Barbara König Logik 243 SLD- Barbara König Logik 244 Folgende Form der funktioniert speziell für Hornklauseln: Definition (Hornklauselprogramm, Teil 2) Tatsachen- und Prozedurklauseln nennt man auch Programmklauseln. Sie stellen das eigentliche Logikprogramm dar. Logikprogramme werden aufgerufen durch sogenannte Zielklauseln: Zielklausel: eine Klausel der Form { Q 1,..., Q k }, entspricht dem negierten Berechnungsziel PROLOG-Schreibweise:? Q 1,..., Q k Definition (SLD-) Eine SLD-sherleitung der leeren Klausel hat die rechts abgebildete Form, wobei G die Zielklausel ist, G 1, G 2,... nur aus negativen Literalen bestehen und K 1,..., K n Programmklauseln sind. G K 1 G 1 K 2 G 2. K n Barbara König Logik 245 Die Abkürzung SLD steht für linear resolution with selection function for definite clauses Barbara König Logik 246

64 SLD- Deklarative Programmiersprache PROLOG Satz (Vollständigkeit der SLD-) Sei F mit Zielklausel G ein unerfüllbares Hornklauselprogramm. Dann gibt es für F eine SLD-sherleitung der leeren Klausel. Die Idee der Ermittlung eines Rechenergebnisses führt zur Definition einer Programmiersprache basierend auf Hornklauselprogrammen: PROLOG (entwickelt Anfang der siebziger Jahre). Dabei beschreiben die Programmklauseln das eigentlich Programm und die Zielklausel die zu bearbeitenden Anfrage. PROLOG ist, genau wie funktionale Programmiersprachen, eine deklarative Programmiersprache. Das heißt, es wird nicht so sehr beschrieben, wie etwas berechnet wird, sondern was berechnet werden soll. Barbara König Logik 247 Deklarative Programmiersprache PROLOG Imperativ Zustandsorientiert: Zustand eines Programms besteht aus Programmzähler und Belegung der Variablen (+ Heap) Programm besteht aus Befehlen, die diesen Zustand transformieren. Sprachen: FORTRAN, ALGOL, Pascal, Ada, C, Java Deklarativ Beschreibung einer Lösung durch Bedingungen, ohne genau zu spezifizieren, wie diese Lösung berechnet werden soll. Sprachen: Logik-Programmiersprachen: PROLOG; funktionale Sprachen: ML, OCaml, Haskell, Scheme, Lisp Barbara König Logik 248 Deklarative Programmiersprache PROLOG Beispiel: Hausbau Hausbau (imperativ): Hebe zunächst den Keller aus. Baue dann eine Süd-, Ost-, West- und Nordwand. Setze anschließend ein Dach auf die Wände. Hausbau (deklarativ): Ein Haus besteht aus einem Keller, der von vier Wänden umgeben ist, auf denen sich das Dach befindet. Barbara König Logik 249 Barbara König Logik 250

Vorlesung Logik Wintersemester 2012/13 Universität Duisburg-Essen

Vorlesung Logik Wintersemester 2012/13 Universität Duisburg-Essen Vorlesung Logik Wintersemester 2012/13 Universität Duisburg-Essen Barbara König Übungsleitung: Christoph Blume & Dr. Sander Bruggink Barbara König Logik 1 (Motivation) Wir benötigen Algorithmen für Erfüllbarkeitstests,

Mehr

Resolution (Motivation) Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Resolution (Idee) Resolution (Idee)

Resolution (Motivation) Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Resolution (Idee) Resolution (Idee) (Motivation) Vorlesung Logik Sommersemester 0 Universität Duisburg-Essen Barbara König Übungsleitung: Christoph Blume Wir benötigen Algorithmen für Erfüllbarkeitstests, die zumindest in vielen Fällen gutartiges

Mehr

Syntax der Aussagenlogik. Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Formel als Syntaxbaum. Teilformel A 3 A 1 A 4

Syntax der Aussagenlogik. Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Formel als Syntaxbaum. Teilformel A 3 A 1 A 4 Syntax der Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen Barbara König Übungsleitung: Christoph Blume Eine atomare Formel hat die Form A i (wobei i = 1, 2, 3,...). Definition (Formel)

Mehr

Vorlesung Logik Wintersemester 2017/18 Universität Duisburg-Essen

Vorlesung Logik Wintersemester 2017/18 Universität Duisburg-Essen Vorlesung Logik Wintersemester 2017/18 Universität Duisburg-Essen Barbara König Übungsleitung: Dennis Nolte, Harsh Beohar Barbara König Logik 1 Mengen, Relationen und Funktionen Menge: Menge X von Elementen,

Mehr

Vorlesung Logik Wintersemester 2017/18 Universität Duisburg-Essen

Vorlesung Logik Wintersemester 2017/18 Universität Duisburg-Essen Vorlesung Logik Wintersemester 2017/18 Universität Duisburg-Essen Barbara König Übungsleitung: Dennis Nolte, Harsh Beohar Barbara König Logik 1 Geschichte der Logik Beginn in Griechenland: Aristoteles

Mehr

Geschichte der Logik. Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Syllogismen (I) Syllogismen (II)

Geschichte der Logik. Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Syllogismen (I) Syllogismen (II) Geschichte der Logik Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen Barbara König Übungsleitung: Christoph Blume Beginn in Griechenland: Aristoteles (384 322 v.chr.) untersucht das Wesen

Mehr

Vorlesung Logik Wintersemester 2015/16 Universität Duisburg-Essen

Vorlesung Logik Wintersemester 2015/16 Universität Duisburg-Essen Vorlesung Logik Wintersemester 2015/16 Universität Duisburg-Essen Barbara König Übungsleitung: Dennis Nolte, Dr. Harsh Beohar Barbara König Logik 1 Barbara König Logik 2 Das heutige Programm: Organisatorisches

Mehr

Vorlesung Logik Wintersemester 2016/17 Universität Duisburg-Essen

Vorlesung Logik Wintersemester 2016/17 Universität Duisburg-Essen Vorlesung Logik Wintersemester 2016/17 Universität Duisburg-Essen Barbara König Übungsleitung: Dennis Nolte, Harsh Beohar Barbara König Logik 1 Das heutige Programm: Organisatorisches Vorstellung Ablauf

Mehr

Aufgabe. Gelten die folgenden Äquivalenzen?. 2/??

Aufgabe. Gelten die folgenden Äquivalenzen?. 2/?? Äquivalenz Zwei Formeln F und G heißen (semantisch) äquivalent, falls für alle Belegungen A, die sowohl für F als auch für G passend sind, gilt A(F ) = A(G). Hierfür schreiben wir F G.. 1/?? Aufgabe Gelten

Mehr

Vorlesung Logik Wintersemester 2017/18 Universität Duisburg-Essen. Wer sind wir? Wer sind wir? Das heutige Programm:

Vorlesung Logik Wintersemester 2017/18 Universität Duisburg-Essen. Wer sind wir? Wer sind wir? Das heutige Programm: Vorlesung Logik Wintersemester 2017/18 Universität Duisburg-Essen Barbara König Übungsleitung: Dennis Nolte, Harsh Beohar Das heutige Programm: Organisatorisches Vorstellung Ablauf der Vorlesung und der

Mehr

Vorlesung Logik Wintersemester 2016/17 Universität Duisburg-Essen. Wer sind wir? Wer sind wir? Das heutige Programm:

Vorlesung Logik Wintersemester 2016/17 Universität Duisburg-Essen. Wer sind wir? Wer sind wir? Das heutige Programm: Vorlesung Logik Wintersemester 2016/17 Universität Duisburg-Essen Barbara König Übungsleitung: Dennis Nolte, Harsh Beohar Das heutige Programm: Organisatorisches Vorstellung Ablauf der Vorlesung und der

Mehr

Vorlesung Logik Wintersemester 2018/19 Universität Duisburg-Essen. Wer sind wir? Wer sind wir? Das heutige Programm:

Vorlesung Logik Wintersemester 2018/19 Universität Duisburg-Essen. Wer sind wir? Wer sind wir? Das heutige Programm: Vorlesung Logik Wintersemester 2018/19 Universität Duisburg-Essen Barbara König Übungsleitung: Dennis Nolte, Richard Eggert Das heutige Programm: Organisatorisches Vorstellung Ablauf der Vorlesung und

Mehr

Vorlesung Logik Wintersemester 2017/18 Universität Duisburg-Essen

Vorlesung Logik Wintersemester 2017/18 Universität Duisburg-Essen Vorlesung Logik Wintersemester 2017/18 Universität Duisburg-Essen Barbara König Übungsleitung: Dennis Nolte, Harsh Beohar Barbara König Logik 1 Das heutige Programm: Organisatorisches Vorstellung Ablauf

Mehr

Vorlesung Logik Wintersemester 2018/19 Universität Duisburg-Essen

Vorlesung Logik Wintersemester 2018/19 Universität Duisburg-Essen Vorlesung Logik Wintersemester 2018/19 Universität Duisburg-Essen Barbara König Übungsleitung: Dennis Nolte, Richard Eggert Barbara König Logik 1 Das heutige Programm: Organisatorisches Vorstellung Ablauf

Mehr

Vorlesung Logik Wintersemester 2014/15 Universität Duisburg-Essen

Vorlesung Logik Wintersemester 2014/15 Universität Duisburg-Essen Vorlesung Logik Wintersemester 2014/15 Universität Duisburg-Essen Barbara König Übungsleitung: Dr. Sander Bruggink, Dennis Nolte Barbara König Logik 1 Barbara König Logik 2 Das heutige Programm: Organisatorisches

Mehr

/26

/26 7 8 3 3 7 2 8 2 8. /2 Sudoku 2 2 3 3 7 7 8 8 8 Füllen Sie die leeren Felder so aus, dass in jeder Zeile, in jeder Spalte und in jedem 3x3 Kästchen alle Zahlen von bis stehen.. 2/2 Warum? 7 8 3 3 7 2 8

Mehr

Sudoku. Warum 6? Warum 6?

Sudoku. Warum 6? Warum 6? . / Sudoku Füllen Sie die leeren Felder so aus, dass in jeder Zeile, in jeder Spalte und in jedem x Kästchen alle Zahlen von bis stehen.. / Warum?. / Warum?. / Geschichte der Logik Syllogismen (I) Beginn

Mehr

Vorlesung Logik Sommersemester 2011 Universität Duisburg-Essen. Wer sind wir? Barbara König Übungsleitung: Christoph Blume. Das heutige Programm:

Vorlesung Logik Sommersemester 2011 Universität Duisburg-Essen. Wer sind wir? Barbara König Übungsleitung: Christoph Blume. Das heutige Programm: Vorlesung Logik Sommersemester 2011 Universität Duisburg-Essen Barbara König Übungsleitung: Christoph Blume Barbara König Logik 1 Barbara König Logik 2 Wer sind wir? Das heutige Programm: Organisatorisches

Mehr

Resolution (Idee) Aus der Herleitung der leeren Disjunktion (= leere Klausel) folgt Unerfüllbarkeit.

Resolution (Idee) Aus der Herleitung der leeren Disjunktion (= leere Klausel) folgt Unerfüllbarkeit. Resolution (Idee) (F A) (F A) (F A) (F A) (F F ) Aus der Herleitung der leeren Disjunktion (= leere Klausel) folgt Unerfüllbarkeit. Zwei Fragen: Kann man aus einer unerfüllbaren Formel immer die leere

Mehr

Vorlesung Automaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2015

Vorlesung Automaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2015 Vorlesung Automaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2015 Prof. Barbara König Übungsleitung: Jan Stückrath Barbara König Automaten und Formale Sprachen 1 Das heutige Programm:

Mehr

Formalisierung von Sudoku Formalisieren Sie das Sudoku-Problem:

Formalisierung von Sudoku Formalisieren Sie das Sudoku-Problem: Formalisierung von Sudoku Formalisieren Sie das Sudoku-Problem: 4 4 4 4 4 1 1 1 1 2 2 3 3 5 5 5 5 5 5 6 6 6 7 7 8 8 9 9 9 9 9 8 6 Verwenden Sie dazu eine atomare Formel A[n, x, y] für jedes Tripel (n,

Mehr

Syntax der Prädikatenlogik: Variablen, Terme. Formeln. Freie und gebundene Variablen, Aussagen. Aufgabe

Syntax der Prädikatenlogik: Variablen, Terme. Formeln. Freie und gebundene Variablen, Aussagen. Aufgabe Syntax der Prädikatenlogik: Variablen, Terme Formeln Eine Variable hat die Form x i mit i = 1, 2, 3.... Ein Prädikatensymbol hat die Form Pi k und ein Funktionssymbol hat die Form fi k mit i = 1, 2, 3...

Mehr

Syntax. 1 Jedes A AS AL ist eine (atomare) Formel. 2 Ist F eine Formel, so ist auch F eine Formel. 3 Sind F und G Formeln, so sind auch

Syntax. 1 Jedes A AS AL ist eine (atomare) Formel. 2 Ist F eine Formel, so ist auch F eine Formel. 3 Sind F und G Formeln, so sind auch Formale der Informatik 1 Kapitel 15 Folgerbarkeit, Äquivalenzen und Normalformen Frank Heitmann heitmann@informatik.uni-hamburg.de 8. Juni 2015 Syntax Definition (Syntax der Aussagenlogik) Mit AS AL sei

Mehr

Theoretische Informatik: Logik

Theoretische Informatik: Logik Theoretische Informatik: Logik Vorlesung mit Übungen im WS 2006/2007 Vorlesung: Montag Montag 9-10 Uhr, Raum 1603 WAneu 14-16 Uhr, Raum 1603 WAneu Beginn: Montag, den 23.10.2006, 9 15 Uhr. Übungen in 3

Mehr

Logik. Markus Lohrey. Wintersemester 2012/2013. Universität Leipzig. Markus Lohrey (Universität Leipzig) Logik Wintersem.

Logik. Markus Lohrey. Wintersemester 2012/2013. Universität Leipzig. Markus Lohrey (Universität Leipzig) Logik Wintersem. Logik Markus Lohrey Universität Leipzig Wintersemester 2012/2013 Markus Lohrey (Universität Leipzig) Logik Wintersem. 2012/2013 1 / 214 Organisatorisches zur Vorlesung Informationen finden Sie unter z.

Mehr

1 Aussagenlogik. 1.1 Aussagen. 15 ist eine Primzahl. 3 < 8 x < 15 (hängt von x ab, keine Aussage) Aussage = Behauptung Beispiele: Es regnet.

1 Aussagenlogik. 1.1 Aussagen. 15 ist eine Primzahl. 3 < 8 x < 15 (hängt von x ab, keine Aussage) Aussage = Behauptung Beispiele: Es regnet. Grundlagen der Mathematik für Informatiker 1 1 Aussagenlogik 1.1 Aussagen Aussage = Behauptung Beispiele: Es regnet. Die Straße ist naß. 15 ist eine Primzahl. 3 < 8 x < 15 (hängt von x ab, keine Aussage)

Mehr

Vorlesung Berechenbarkeit und Komplexität Wintersemester 2016/17. Wer sind wir? Willkommen zu

Vorlesung Berechenbarkeit und Komplexität Wintersemester 2016/17. Wer sind wir? Willkommen zu Vorlesung Berechenbarkeit und Komplexität Wintersemester 2016/17 Prof. Barbara König Übungsleitung: Sebastian Küpper Willkommen zu Berechenbarkeit und Komplexität (Bachelor Angewandte Informatik, Duisburg

Mehr

Grundlagen der Programmierung (Vorlesung 7)

Grundlagen der Programmierung (Vorlesung 7) Grundlagen der Programmierung (Vorlesung 7) Ralf Möller, FH-Wedel Vorige Vorlesung Boole'sche Logik, Resolution Inhalt dieser Vorlesung Prädikatenlogik erster Stufe Lernziele Syntax, Semantik Entscheidungsprobleme

Mehr

Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Hornformeln

Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Hornformeln Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Frank Heitmann heitmann@informatik.uni-hamburg.de 9. Juni 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/36 Ersetzbarkeitstheorem

Mehr

Theorie der Informatik. Theorie der Informatik. 2.1 Äquivalenzen. 2.2 Vereinfachte Schreibweise. 2.3 Normalformen. 2.

Theorie der Informatik. Theorie der Informatik. 2.1 Äquivalenzen. 2.2 Vereinfachte Schreibweise. 2.3 Normalformen. 2. Theorie der Informatik 24. Februar 2014 2. Aussagenlogik II Theorie der Informatik 2. Aussagenlogik II 2.1 Äquivalenzen Malte Helmert Gabriele Röger 2.2 Vereinfachte Schreibweise Universität Basel 24.

Mehr

Resolutionsalgorithmus

Resolutionsalgorithmus 112 Resolutionskalkül Mit dem Begriff Kalkül bezeichnet man eine Menge von syntaktischen Umformungsregeln, mit denen man semantische Eigenschaften der Eingabeformel herleiten kann. Für den Resolutionskalkül:

Mehr

Erfüllbarkeitstests. Im folgenden: Ein sehr effizienter Erfüllbarkeitstest für eine spezielle Klasse von Formeln in KNF, sogenannte Hornformeln (vgl.

Erfüllbarkeitstests. Im folgenden: Ein sehr effizienter Erfüllbarkeitstest für eine spezielle Klasse von Formeln in KNF, sogenannte Hornformeln (vgl. Erfüllbarkeitstests Im folgenden: Ein sehr effizienter Erfüllbarkeitstest für eine spezielle Klasse von Formeln in KNF, sogenannte Hornformeln (vgl. Grundlagen und diskrete Strukturen ) Ein für Formeln

Mehr

Vorlesung Automaten und Formale Sprachen Sommersemester 2018

Vorlesung Automaten und Formale Sprachen Sommersemester 2018 Vorlesung Automaten und Formale Sprachen Sommersemester 2018 Prof. Barbara König Übungsleitung: Christina Mika-Michalski Barbara König Automaten und Formale Sprachen 1 Das heutige Programm: Organisatorisches

Mehr

Logik. Markus Lohrey. Sommersemester Universität Siegen. Markus Lohrey (Universität Siegen) Logik Sommersem / 299

Logik. Markus Lohrey. Sommersemester Universität Siegen. Markus Lohrey (Universität Siegen) Logik Sommersem / 299 Logik Markus Lohrey Universität Siegen Sommersemester 2014 Markus Lohrey (Universität Siegen) Logik Sommersem. 2014 1 / 299 Organisatorisches zur Vorlesung Informationen finden Sie unter z. B. http://www.eti.uni-siegen.de/ti/lehre/ss14/logik/

Mehr

Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: Komplexitätstheorie und effiziente Algorithmen. Wintersemester 2013/14

Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: Komplexitätstheorie und effiziente Algorithmen. Wintersemester 2013/14 Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: und effiziente Algorithmen Wintersemester 2013/14 Prof. Barbara König Übungsleitung: Henning Kerstan & Sebastian Küpper Barbara

Mehr

Computational Logic Algorithmische Logik Boolesche Algebra und Resolution

Computational Logic Algorithmische Logik Boolesche Algebra und Resolution Computational Logic Algorithmische Logik Boolesche Algebra und Resolution Ralf Moeller Hamburg Univ. of Technology Boole'sche Algebra Äquivalenzen als "Transformationsgesetze" Ersetzbarkeitstheorem Zentrale

Mehr

1 Aussagenlogik. 1.1 Aussagen. 15 ist eine Primzahl. 3 < 8 x < 15 (hängt von x ab, keine Aussage) Aussage = Behauptung Beispiele: Es regnet.

1 Aussagenlogik. 1.1 Aussagen. 15 ist eine Primzahl. 3 < 8 x < 15 (hängt von x ab, keine Aussage) Aussage = Behauptung Beispiele: Es regnet. Grundlagen der Mathematik für Informatiker 1 1 Aussagenlogik 1.1 Aussagen Aussage = Behauptung Beispiele: Es regnet. Die Straße ist naß. 15 ist eine Primzahl. 3 < 8 x < 15 (hängt von x ab, keine Aussage)

Mehr

Zusammenfassung Syntax: Formale Grundlagen der Informatik 1 Kapitel 15 Normalformen und Hornformeln. Zusammenfassung

Zusammenfassung Syntax: Formale Grundlagen der Informatik 1 Kapitel 15 Normalformen und Hornformeln. Zusammenfassung Formale der Informatik 1 Kapitel 15 und Frank Heitmann heitmann@informatik.uni-hamburg.de 30. Mai 2016 Zusammenfassung Syntax Zusammenfassung Syntax: Motivation Definition der Syntax: Alphabet, Junktor

Mehr

Formale Grundlagen der Informatik 1 Kapitel 15 Normalformen und Hornformeln

Formale Grundlagen der Informatik 1 Kapitel 15 Normalformen und Hornformeln Formale Grundlagen der Informatik 1 Kapitel 15 Normalformen und Frank Heitmann heitmann@informatik.uni-hamburg.de 30. Mai 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/42 Zusammenfassung Syntax

Mehr

Jeder Aussage p kann ein Wahrheitswert W(p) {0, 1} zugeordnet werden. Beispiele: W(Es regnet.) =? (je nach Lage der Dinge) W(Die Straße ist naß.) =?

Jeder Aussage p kann ein Wahrheitswert W(p) {0, 1} zugeordnet werden. Beispiele: W(Es regnet.) =? (je nach Lage der Dinge) W(Die Straße ist naß.) =? Grundlagen der Mathematik für Informatiker 1 Grundlagen der Mathematik für Informatiker 2 1 Aussagenlogik 1.1 Aussagen Aussage = Behauptung Beispiele: Es regnet. Die Straße ist naß. 15 ist eine Primzahl.

Mehr

Resolutionskalkül. wird t als eine Menge K t von Klauseln geschrieben, welche die einzelnen Maxterme repräsentieren:

Resolutionskalkül. wird t als eine Menge K t von Klauseln geschrieben, welche die einzelnen Maxterme repräsentieren: Resolutionskalkül Ein Kalkül ist eine Kollektion von syntaktischen Umformungsregeln, die unter gegebenen Voraussetzungen aus bereits vorhandenen Formeln neue Formeln erzeugen. Der Resolutionskalkül besteht

Mehr

Formale Methoden 2. Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2015/2016

Formale Methoden 2. Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2015/2016 Formale Methoden 2 Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2015/2016 Teil 2: Logik 1 Prädikatenlogik (Einleitung) 2 Aussagenlogik Motivation Grundlagen Eigenschaften Eigenschaften Normalformen

Mehr

Logische Äquivalenz. Definition Beispiel 2.23

Logische Äquivalenz. Definition Beispiel 2.23 Logische Äquivalenz Definition 2.22 Zwei aussagenlogische Formeln α, β A heißen logisch äquivalent, falls für jede Belegung I von α und β gilt: Schreibweise: α β. Beispiel 2.23 Aus Folgerung 2.6 ergibt

Mehr

Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: Komplexitätstheorie und effiziente Algorithmen. Wintersemester 2011/12

Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: Komplexitätstheorie und effiziente Algorithmen. Wintersemester 2011/12 Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: und effiziente Algorithmen Wintersemester 2011/12 Prof. Barbara König Übungsleitung: Jan Stückrath Barbara König BeKo/TI 1 Willkommen

Mehr

Logik Vorlesung 5: Grundlagen Resolution

Logik Vorlesung 5: Grundlagen Resolution Logik Vorlesung 5: Grundlagen Resolution Andreas Maletti 21. November 2014 Überblick Inhalt 1 Motivation und mathematische Grundlagen 2 Aussagenlogik Syntax und Semantik Äquivalenz und Normalformen Weitere

Mehr

Ersetzbarkeitstheorem

Ersetzbarkeitstheorem Ersetzbarkeitstheorem Die Abgeschlossenheit läßt sich auch folgendermaßen formulieren: Ersetzbarkeitstheorem Seien F und G Formeln mit F G. SeienH und H Formeln, so daß H aus H hervorgeht, indem ein Vorkommen

Mehr

Wozu formale Logik? Programmiersprachen Logik im Fingerhut. Formeln. Logik im Fingerhut (24. Januar 2005) Belegung und Interpretation

Wozu formale Logik? Programmiersprachen Logik im Fingerhut. Formeln. Logik im Fingerhut (24. Januar 2005) Belegung und Interpretation Wozu formale Logik? Logik im Fingerhut Studiengang Informatik Universität Bremen präzise Beschreibung von Aussagen über die Welt bzw. über verschiedene Welten Ziehen und Überprüfen von Schlussfolgerungen

Mehr

Grundlagen der Logik

Grundlagen der Logik Grundlagen der Logik Denken Menschen logisch? Selektionsaufgabe nach Watson (1966): Gegeben sind vier Karten von denen jede auf der einen Seite mit einem Buchstaben, auf der anderen Seite mit einer Zahl

Mehr

Logik für Informatiker

Logik für Informatiker Logik für Informatiker 2. Aussagenlogik Teil 3 06.05.2012 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Syntax (Formeln) Semantik Wertebelegungen/Valuationen/Modelle

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 16. Resolution. Motivation. Beispiel

Motivation. Formale Grundlagen der Informatik 1 Kapitel 16. Resolution. Motivation. Beispiel rundlagen und Motivation Formale rundlagen der Informatik 1 Kapitel 16 Frank Heitmann heitmann@informatik.uni-hamburg.de 31. Mai 2016 Motivation Wir benötigen einen (Un-)Erfüllbarkeitstest für aussagenlogische

Mehr

Logik für Informatiker

Logik für Informatiker Logik für Informatiker 2. Aussagenlogik Teil 4 7.05.2012 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Syntax der Aussagenlogik: Definition der Menge

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 14 Aussagenlogik Syntax & Semantik. Motivation. Motivation

Motivation. Formale Grundlagen der Informatik 1 Kapitel 14 Aussagenlogik Syntax & Semantik. Motivation. Motivation Formale Grundlagen der Informatik 1 Kapitel 14 Aussagenlogik & Frank Heitmann heitmann@informatik.uni-hamburg.de Mit der Aussagenlogik lassen sich einfache Verknüpfungen zwischen (atomaren) Gebilden ausdrücken

Mehr

Aussagenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Modellierung und Beweise. Aussagenlogik H. Kleine Büning 1/25

Aussagenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Modellierung und Beweise. Aussagenlogik H. Kleine Büning 1/25 Aussagenlogik Übersicht: 1 Teil 1: Syntax und Semantik 2 Teil 2: Modellierung und Beweise Aussagenlogik H. Kleine Büning 1/25 Einführendes Beispiel Falls Lisa Peter trifft, dann trifft Lisa auch Gregor.

Mehr

Logik Vorlesung 4: Horn-Logik und Kompaktheit

Logik Vorlesung 4: Horn-Logik und Kompaktheit Logik Vorlesung 4: Horn-Logik und Kompaktheit Andreas Maletti 14. November 2014 Überblick Inhalt 1 Motivation und mathematische Grundlagen 2 Aussagenlogik Syntax und Semantik Äquivalenz und Normalformen

Mehr

Übung 15. Zeige, dass man jede Formel äquivalent in eine neue Formel umwandeln kann, die nur die Operatoren und! verwendet.

Übung 15. Zeige, dass man jede Formel äquivalent in eine neue Formel umwandeln kann, die nur die Operatoren und! verwendet. Logik und Diskrete Strukturen (Sommer 28) Übung 5 Zeige, dass man jede Formel äquivalent in eine neue Formel umwandeln kann, die nur die Operatoren und! verwendet. Zum Beweis muss man nur prüfen, dass

Mehr

Aussagenlogik. Formale Methoden der Informatik WiSe 2012/2013 teil 6, folie 1

Aussagenlogik. Formale Methoden der Informatik WiSe 2012/2013 teil 6, folie 1 Aussagenlogik Formale Methoden der Informatik WiSe 22/23 teil 6, folie Teil VI: Aussagenlogik. Einführung 2. Boolesche Funktionen 3. Boolesche Schaltungen Franz-Josef Radermacher & Uwe Schöning, Fakultät

Mehr

Einführung in die Logik (Vorkurs)

Einführung in die Logik (Vorkurs) Einführung in die Logik (Vorkurs) Jürgen Koslowski 2014-04-07 Ein Beispiel Familie A will im kommenden Jahr eine Waschmaschine, ein Auto und ein Moped anschaffen. Aber falls Herr A seinen üblichen Bonus

Mehr

Logik für Informatiker Logic for computer scientists

Logik für Informatiker Logic for computer scientists Logik für Informatiker Logic for computer scientists Till Mossakowski Wintersemester 2014/15 Till Mossakowski Logik 1/ 24 Die Booleschen Junktoren Till Mossakowski Logik 2/ 24 Die Negation Wahrheitstafel

Mehr

Logik Vorlesung 3: Äquivalenz und Normalformen

Logik Vorlesung 3: Äquivalenz und Normalformen Logik Vorlesung 3: Äquivalenz und Normalformen Andreas Maletti 7. November 2014 Überblick Inhalt 1 Motivation und mathematische Grundlagen 2 Aussagenlogik Syntax und Semantik Äquivalenz und Normalformen

Mehr

Vorlesung Modellierung Modellierungsmethoden der Informatik. Wintersemester 2011/12. Lernplattform Moodle. Wer sind wir?

Vorlesung Modellierung Modellierungsmethoden der Informatik. Wintersemester 2011/12. Lernplattform Moodle. Wer sind wir? Vorlesung Modellierung Modellierungsmethoden der Informatik Wintersemester 2011/12 Prof. Barbara König Übungsleitung: Dr. Sander Bruggink Das heutige Programm Organisatorisches Vorstellung Ablauf der Vorlesung

Mehr

Vorlesung Modellierung Modellierungsmethoden der Informatik. Wintersemester 2011/12

Vorlesung Modellierung Modellierungsmethoden der Informatik. Wintersemester 2011/12 Vorlesung Modellierung Modellierungsmethoden der Informatik Wintersemester 2011/12 Prof. Barbara König Übungsleitung: Dr. Sander Bruggink Barbara König Modellierung 1 Das heutige Programm Organisatorisches

Mehr

Formale Grundlagen der Informatik 1 Wiederholung zum Logik-Teil

Formale Grundlagen der Informatik 1 Wiederholung zum Logik-Teil Formale Grundlagen der Informatik 1 zum Logik-Teil Frank Heitmann heitmann@informatik.uni-hamburg.de 20. Juni 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/32 Überblick Im hatten wir Aussagenlogik

Mehr

1 Aussagenlogik AL: Verknüpfung von Aussagen

1 Aussagenlogik AL: Verknüpfung von Aussagen 1 Aussagenlogik AL: Verknüpfung von Aussagen Syntax atomare Formeln A,B,C sind AL-Formeln F und G AL-Formeln (F G),(F G) und F AL-Formeln müssen in endlich vielen Schritten gebildet werden können echtes

Mehr

Beispiel Aussagenlogik nach Schöning: Logik...

Beispiel Aussagenlogik nach Schöning: Logik... Beispiel Aussagenlogik nach Schöning: Logik... Worin besteht das Geheimnis Ihres langen Lebens? wurde ein 100-jähriger gefragt. Ich halte mich streng an die Diätregeln: Wenn ich kein Bier zu einer Mahlzeit

Mehr

Syntax der Aussagenlogik

Syntax der Aussagenlogik Einführende Beispiele bitte im Buch nachlesen: Uwe Schöning: Logik für Informatiker. 5. Auflage, Spektrum Akad. Verlag, 2. Definition: Syntax der Aussagenlogik ) Atomare Formeln (A i, i =, 2, 3,...)sindFormeln.

Mehr

Formale Grundlagen der Informatik 1 Kapitel 13 Aussagenlogik Syntax & Semantik

Formale Grundlagen der Informatik 1 Kapitel 13 Aussagenlogik Syntax & Semantik Formale Grundlagen der Informatik 1 Kapitel 13 Aussagenlogik & Frank Heitmann heitmann@informatik.uni-hamburg.de 23. Mai 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/42 Literaturhinweis Literaturhinweis

Mehr

Logik Vorlesung 8: Modelle und Äquivalenz

Logik Vorlesung 8: Modelle und Äquivalenz Logik Vorlesung 8: Modelle und Äquivalenz Andreas Maletti 12. Dezember 2014 Überblick Inhalt 1 Motivation und mathematische Grundlagen 2 Aussagenlogik Syntax und Semantik Äquivalenz und Normalformen Weitere

Mehr

Was ist Logik? Was ist Logik? Aussagenlogik. Wahrheitstabellen. Geschichte der Logik eng verknüpft mit Philosophie

Was ist Logik? Was ist Logik? Aussagenlogik. Wahrheitstabellen. Geschichte der Logik eng verknüpft mit Philosophie Was ist Logik? Geschichte der Logik eng verknüpft mit Philosophie Begriff Logik wird im Alltag vielseitig verwendet Logik untersucht, wie man aus Aussagen andere Aussagen ableiten kann Beschränkung auf

Mehr

Frank Heitmann 2/42. 1 Etwas aus der realen Welt in der Logik abstrakt ausdrücken. 2 In der Logik Schlüsse ziehen.

Frank Heitmann 2/42. 1 Etwas aus der realen Welt in der Logik abstrakt ausdrücken. 2 In der Logik Schlüsse ziehen. Literaturhinweis Formale Grundlagen der Informatik 1 Kapitel 13 Aussagenlogik & Frank Heitmann heitmann@informatik.uni-hamburg.de 23. Mai 2016 Literaturhinweis Der Logikteil (die nächsten fünf Wochen)

Mehr

Modellierungsmethoden der Informatik Kapitel 2: Logikkalküle

Modellierungsmethoden der Informatik Kapitel 2: Logikkalküle smethoden der Informatik Kapitel 2: Logikkalküle Prädikatenlogik 1. Stufe Norbert Fuhr Gudrun Fischer 29.11.2005 Organisatorisches Organisatorisches Klausur Termin: 20.2.2006, 13-15 Uhr, Audimax Anmeldung

Mehr

Aufgabe 13 (Markierungsalgorithmus). Gegeben ist die Formel F = (A D C) (E A) ( ( B D) E) A B (B D)

Aufgabe 13 (Markierungsalgorithmus). Gegeben ist die Formel F = (A D C) (E A) ( ( B D) E) A B (B D) INTA - Lösungshinweise zum Übungsblatt 4, Version 1.0α. Wenn sie Fehler finden oder Ihnen etwas auch nach dem Gespräch mit ihren Kommilitonen noch unklar ist, dann schicken sie mir bitte eine Email! Aufgabe

Mehr

Vorsemesterkurs Informatik

Vorsemesterkurs Informatik Vorsemesterkurs Informatik Ronja Düffel WS2018/19 01. Oktober 2018 Theoretische Informatik Wieso, weshalb, warum??!? 1 Modellieren und Formalisieren von Problemen und Lösungen 2 Verifikation (Beweis der

Mehr

Logik für Informatiker

Logik für Informatiker Logik für Informatiker 2. Aussagenlogik Teil 2 28.04.2015 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Organisatorisches Termine Donnerstags: 30.04.2015 nicht

Mehr

Deduktion in der Aussagenlogik

Deduktion in der Aussagenlogik Deduktion in der Aussagenlogik Menge von Ausdrücken der Aussagenlogik beschreibt einen bestimmten Sachverhalt, eine "Theorie" des Anwendungsbereiches. Was folgt logisch aus dieser Theorie? Deduktion: aus

Mehr

Informatik A. Prof. Dr. Norbert Fuhr auf Basis des Skripts von Prof. Dr. Wolfram Luther und der Folien von Peter Fankhauser

Informatik A. Prof. Dr. Norbert Fuhr auf Basis des Skripts von Prof. Dr. Wolfram Luther und der Folien von Peter Fankhauser Informatik A Prof. Dr. Norbert Fuhr fuhr@uni-duisburg.de auf Basis des Skripts von Prof. Dr. Wolfram Luther und der Folien von Peter Fankhauser 1 Teil I Logik 2 Geschichte R. Descartes (17. Jhdt): klassische

Mehr

Vorsemesterkurs Informatik

Vorsemesterkurs Informatik Vorsemesterkurs Informatik Vorsemesterkurs Informatik Mario Holldack WS2015/16 30. September 2015 Vorsemesterkurs Informatik 1 Einleitung 2 Aussagenlogik 3 Mengen Vorsemesterkurs Informatik > Einleitung

Mehr

Logik für Informatiker

Logik für Informatiker Logik für Informatiker 2. Aussagenlogik Teil 6 14.05.2012 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Syntax der Aussagenlogik: Definition der Menge

Mehr

Logik für Informatiker

Logik für Informatiker Logik für Informatiker 2. Aussagenlogik Teil 5 14.05.2012 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Normalformen Atome, Literale, Klauseln Konjunktive

Mehr

Aussagenlogik: Syntax von Aussagen

Aussagenlogik: Syntax von Aussagen Aussagenlogik: Syntax von Aussagen A ::= X (A A) (A A) ( A) (A A) (A A) 0 1 Prioritätsreihenfolge :,,,,. A B: Konjunktion (Verundung). A B: Disjunktion (Veroderung). A B: Implikation. A B: Äquivalenz.

Mehr

Modellierungsmethoden der Informatik Kapitel 2: Logikkalküle

Modellierungsmethoden der Informatik Kapitel 2: Logikkalküle smethoden der Informatik Kapitel 2: Logikkalküle Prädikatenlogik 1. Stufe Norbert Fuhr Gudrun Fischer 29.11.2005 Organisatorisches Organisatorisches Klausur Termin: 20.2.2006, 13-15 Uhr, Audimax Anmeldung

Mehr

Deduktion in der Aussagenlogik. Semantische Folgerungsbeziehung. Zusammenhang zwischen semantischer und syntaktischer Folgerung

Deduktion in der Aussagenlogik. Semantische Folgerungsbeziehung. Zusammenhang zwischen semantischer und syntaktischer Folgerung Deduktion in der Aussagenlogik Menge von Ausdrücken der Aussagenlogik beschreibt einen bestimmten Sachverhalt, eine "Theorie" des Anwendungsbereiches Was folgt logisch aus dieser Theorie? Deduktion: aus

Mehr

1.1 Grundbegriffe. Logik und Diskrete Strukturen (Sommer 2018) Prof. Dr. Ulrich Hertrampf

1.1 Grundbegriffe. Logik und Diskrete Strukturen (Sommer 2018) Prof. Dr. Ulrich Hertrampf . Grundbegriffe Beispiele: Paris und Mäuse / Otto und der Arzt /... Definition: Syntax der Aussagenlogik ) Atomare Formeln (A i, i =, 2, 3,...)sindFormeln. 2) Falls F und G Formeln, dann auch (F ^ G) und

Mehr

Logic in a Nutshell. Christian Liguda

Logic in a Nutshell. Christian Liguda Logic in a Nutshell Christian Liguda Quelle: Kastens, Uwe und Büning, Hans K., Modellierung: Grundlagen und formale Methoden, 2009, Carl Hanser Verlag Übersicht Logik - Allgemein Aussagenlogik Modellierung

Mehr

b= NaN

b= NaN 42 Beispiel: IEEE single precision: 0 10000000 00000000000000000000000 b= + 2 128 127 1.0 2 = 2 0 10000001 10100000000000000000000 b= + 2 129 127 1.101 2 = 6.5 1 10000001 10100000000000000000000 b= 2 129

Mehr

3. Grundlegende Begriffe von Logiken - Aussagenlogik

3. Grundlegende Begriffe von Logiken - Aussagenlogik 3. Grundlegende Begriffe von Logiken - Aussagenlogik Wichtige Konzepte und Begriffe in Logiken: Syntax (Signatur, Term, Formel,... ): Festlegung, welche syntaktischen Gebilde als Formeln (Aussagen, Sätze,

Mehr

Formale Grundlagen der Informatik 1 Kapitel 19. Syntax & Semantik

Formale Grundlagen der Informatik 1 Kapitel 19. Syntax & Semantik Formale Grundlagen der Informatik 1 Kapitel 19 & Frank Heitmann heitmann@informatik.uni-hamburg.de 23. Juni 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/25 Motivation Die ist eine Erweiterung

Mehr

Kapitel 1.3. Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln

Kapitel 1.3. Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln Kapitel 1.3 Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln Mathematische Logik (WS 2011/12) Kapitel 1.3: Normalformen 1/ 29 Übersicht

Mehr

FORMALE SYSTEME. 23. Vorlesung: Logisches Schließen. TU Dresden, 16. Januar Markus Krötzsch Lehrstuhl Wissensbasierte Systeme

FORMALE SYSTEME. 23. Vorlesung: Logisches Schließen. TU Dresden, 16. Januar Markus Krötzsch Lehrstuhl Wissensbasierte Systeme FORMALE SYSTEME 23. Vorlesung: Logisches Schließen Markus Krötzsch Lehrstuhl Wissensbasierte Systeme TU Dresden, 16. Januar 2017 Rückblick Markus Krötzsch, 16. Januar 2017 Formale Systeme Folie 2 von 31

Mehr

Diskrete Strukturen. Sebastian Thomas RWTH Aachen https://www2.math.rwth-aachen.de/ds17/ Mathematische Logik

Diskrete Strukturen. Sebastian Thomas RWTH Aachen https://www2.math.rwth-aachen.de/ds17/ Mathematische Logik Diskrete Strukturen Sebastian Thomas RWTH Aachen https://www2.math.rwth-aachen.de/ds17/ Mathematische Logik Aussagen Begriff Aussage: Ausdruck, welcher entweder wahr oder falsch ist e Die RWTH Aachen hat

Mehr

Allgemeingültige Aussagen

Allgemeingültige Aussagen Allgemeingültige Aussagen Definition 19 Eine (aussagenlogische) Formel p heißt allgemeingültig (oder auch eine Tautologie), falls p unter jeder Belegung wahr ist. Eine (aussagenlogische) Formel p heißt

Mehr

Fakultät für Informatik Universität Magdeburg Jürgen Dassow. Vorbemerkungen

Fakultät für Informatik Universität Magdeburg Jürgen Dassow. Vorbemerkungen Vorbemerkungen if (x > y) z = x; else z = y; Wenn es blaue Tiger regnet, dann fressen alle Kirschbäume schwarze Tomaten. q(1) = 1, q(i) = q(i 1) + 2i 1 für i 2 Welchen Wert hat q(6)? 24 ist durch 2 teilbar.

Mehr

Die Prädikatenlogik erster Stufe: Syntax und Semantik

Die Prädikatenlogik erster Stufe: Syntax und Semantik Die Prädikatenlogik erster Stufe: Syntax und Semantik 1 Mathematische Strukturen und deren Typen Definition 1.1 Eine Struktur A ist ein 4-Tupel A = (A; (R A i i I); (f A j j J); (c A k k K)) wobei I, J,

Mehr

23. Vorlesung: Logisches Schließen Markus Kr otzsch Professur f ur Wissensbasierte Systeme Normalformen

23. Vorlesung: Logisches Schließen Markus Kr otzsch Professur f ur Wissensbasierte Systeme Normalformen Logik: Glossar FORMALE SYSTEME 23. Vorlesung: Logisches Schließen Markus Krötzsch Professur für Wissensbasierte Systeme TU Dresden, 15. Januar 2018 Atom kleinste mögliche Formel p P Teilformel Unterausdruck,

Mehr

Kapitel 1. Aussagenlogik

Kapitel 1. Aussagenlogik Kapitel 1 Aussagenlogik Einführung Mathematische Logik (WS 2012/13) Kapitel 1: Aussagenlogik 1/17 Übersicht Teil I: Syntax und Semantik der Aussagenlogik (1.0) Junktoren und Wahrheitsfunktionen (1.1) Syntax

Mehr