HA-Lösung TA-Lösung Diskrete Strukturen Tutoraufgabenblatt 10. Besprechung in KW02/2019

Ähnliche Dokumente
TU9 Aussagenlogik. Daniela Andrade

Klauselmengen. Definition Sei

Logik für Informatiker

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

Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Hornformeln

Übung 4: Aussagenlogik II

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

Diskrete Strukturen Nachholklausur

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

Logik für Informatiker

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

Logik für Informatiker

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

TU5 Aussagenlogik II

WS 2013/14. Diskrete Strukturen

Diskrete Strukturen Kapitel 2: Grundlagen (Beweise)

Resolution für die Aussagenlogik

Aussagenlogik: Syntax von Aussagen

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

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

Formale Grundlagen der Informatik 1 Kapitel 15 Normalformen und Hornformeln

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

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

Künstliche Intelligenz Logische Agenten & Resolution

Aussagenlogische Widerlegungsverfahren zum Nachweis logischer Eigenschaften und Beziehungen

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

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

Logik für Informatiker

Formale Systeme, WS 2008/2009 Lösungen zum Übungsblatt 2

Logik. Logik. Vorkurs Informatik Theoretischer Teil WS 2013/ September Vorkurs Informatik - Theorie - WS2013/14

Diskrete Strukturen Wiederholungsklausur

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

Logische und funktionale Programmierung

Logische Äquivalenz. Definition Beispiel 2.23

Allgemeingültige Aussagen

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

Logik für Informatiker

Logik für Informatiker

Problem der Resolution: Kombinatorische Explosion Ziel: Einschränkung der Möglichkeiten

Diskrete Strukturen Endterm

Diskrete Strukturen Endterm

Formale Grundlagen der Informatik 1 Wiederholung zum Logik-Teil

Resolutionsalgorithmus

Logik für Informatiker

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

Deduktion in der Aussagenlogik

1. Zwischentest Formale Systeme Fakultät für Informatik WS 2009/2010

Grundlagen der Logik

Logische und funktionale Programmierung

1 Aussagenlogischer Kalkül

1 Aussagenlogik AL: Verknüpfung von Aussagen

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

Logik für Informatiker

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

Logik. Gabriele Kern-Isberner LS 1 Information Engineering. TU Dortmund Wintersemester 2014/15 WS 2014/15

Einiges zu Resolutionen anhand der Aufgaben 6 und 7

Das SAT Problem oder Erfüllbarkeitsproblem. Formale Systeme. Teilklassen. Satz von Cook. SAT Instanz: Eine aussagenlogische Formel F For 0

Einführung in die Logik, Übungsklausur 2016/07/11

5.1 Inferenz. Theorie der Informatik. Theorie der Informatik. 5.1 Inferenz. 5.2 Resolutionskalkül. 5.3 Zusammenfassung. Inferenz: Motivation

Beispiel Aussagenlogik nach Schöning: Logik...

Aufgabe 1: MC (10 Punkte) wahr 1P, falsch 0P, keine Ahnung 0.5P. Jede Struktur hat mindestens eine Substruktur

Logik. c Javier Esparza und Michael Luttenberger 2018/02/06

Vorsemesterkurs Informatik

Logik Vorlesung 5: Grundlagen Resolution

4.0 VU Theoretische Informatik und Logik Teil 2 zum SS

Ersetzbarkeitstheorem

Aussagenlogik Prädikatenlogik erster Stufe. Logik. Logik

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

Vorsemesterkurs Informatik

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

Formale Systeme, WS 2015/2016. Lösungen zu Übungsblatt 7

Vorsemesterkurs Informatik

Theoretische Informatik: Logik

wenn es regnet ist die Straße nass:

Logik für Informatiker Logic for Computer Scientists

3. Logik 3.1 Aussagenlogik

Hilbert-Kalkül (Einführung)

Aussagenlogik. (MAF2) MAF(I, t) = t und MAF(I, f ) = f. Die Semantik aussagenlogischer Formeln ist durch die Funktion

Formale Systeme. Aussagenlogik: Resolutionskalku l. Prof. Dr. Bernhard Beckert, WS 2018/2019

Formale Systeme, WS 2011/2012 Lösungen zu Übungsblatt 1

Logik für Informatiker

1.1 Motivation. Theorie der Informatik. Theorie der Informatik. 1.1 Motivation. 1.2 Syntax. 1.3 Semantik. 1.4 Formeleigenschaften. 1.

Formale Systeme. Das Erfu llbarkeitsproblem. Prof. Dr. Bernhard Beckert, WS 2017/2018

Definition (Modus Ponens) Wenn A, dann B. A gilt Also, gilt B

Grundlagen der Künstlichen Intelligenz

Tableaukalkül für Aussagenlogik

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

Computational Logic Algorithmische Logik Boolesche Algebra und Resolution

De Morgan sche Regeln

Zusammenfassung der letzten LVA. Einführung in die Theoretische Informatik. Syntax der Aussagenlogik. Inhalte der Lehrveranstaltung

Semantik der Aussagenlogik (Kurzform)

Logik für Informatiker

Zusammenfassung der letzten LVA. Einführung in die Theoretische Informatik. Syntax der Aussagenlogik. Inhalte der Lehrveranstaltung

Formale Methoden II. Gerhard Jäger. SS 2005 Universität Bielefeld. Teil 3, 12. Mai Formale Methoden II p.1/23

Grundlagen der Künstlichen Intelligenz

Transkript:

Technische Universität München Winter 2018/19 Prof. J. Esparza / Dr. M. Luttenberger, C. Welzel 2019/01/11 HA-Lösung TA-Lösung Diskrete Strukturen Tutoraufgabenblatt 10 Besprechung in KW02/2019 Beachten Sie: Soweit nicht explizit angegeben, sind Ergebnisse stets zu begründen! Lesen Sie sich bitte auf der Webpage die Bestimmungen zu den Hausaufgaben genau durch. Aufgabe 10.1 Entscheiden Sie unter Verwendung der Resolutionsmethode, ob folgende Formeln allgemeingültig sind: (a) F := (( B C D) ( B D) (C D) B). (b) G := ((A C D) (A B C) (A B C) ( A D) (A D) A). Lösungsvorschlag Hier wird verlangt, dass man zeigt, dass die Formeln gültig sind. D.h. die Resolution muss auf F angewendet werden, da F gültig gdw. F unerfüllbar. Beide Formeln sind hier in DNF gegeben, so dass sich ihre Negationen durch de Morgan wie in TA4.2 beschrieben sofort in KNF überführen lassen. Original clauses: Obtain C 12 = from C 4 = {D} and C 11 = { D} via D. Obtain C 4 = {D} from C 0 = {B, D} and C 2 = { B} via B. C 0 = {B, D}, C 1 = {B, C, D}, C 2 = { B}, C 3 = { C, D} Obtain C 11 = { D} from C 8 = {B, D} and C 2 = { B} via B. Obtain C 8 = {B, D} from C 1 = {B, C, D} and C 6 = {B, C} via C. Obtain C 6 = {B, C} from C 0 = {B, D} and C 3 = { C, D} via D. Following original clauses are not needed: { C, D} {B, C, D} {B, D} { B} {D} {B, C} {B, D} { D} 1

Original clauses: C 0 = { B, A, C}, C 1 = {A, D}, C 2 = {D, A}, C 3 = {A}, C 4 = {C, A, D}, C 5 = {B, A, C} Obtain C 28 = from C 20 = {C} and C 17 = { C} via C. Obtain C 20 = {C} from C 3 = {A} and C 15 = {C, A} via A. Obtain C 17 = { C} from C 3 = {A} and C 6 = { A, C} via A. Obtain C 15 = {C, A} from C 2 = {D, A} and C 11 = {C, D} via D. Obtain C 6 = { A, C} from C 5 = {B, A, C} and C 0 = { B, A, C} via B. Obtain C 11 = {C, D} from C 1 = {A, D} and C 4 = {C, A, D} via A. Following original clauses are not needed: { B, A, C} {B, A, C} {A, D} {C, A, D} {A} {D, A} {C, D} { A, C} {C, A} { C} {C} Aufgabe 10.2 Geben Sie Klauseln C 1, C 2, C 3, C 4 und Resolventen R 1, R 2, R 3, R 4 an, so dass der folgendene Resolutionsgraph eine korrekte Resolution der leeren Klausel darstellt: C 1 C 2 C 3 C 4 R 1 R 2 R 3 R 4 Lösungsvorschlag Eine mögliche Resolution: 2

{A, B} {B, C} {C} { A, B, C} {B} { A, B} {A} { A} Aufgabe 10.3 Eine nicht leere Klausel C heißt positiv, falls C ausschließlich positive Literale enthält. Sei K eine Klauselmenge, die weder die leere Klausel noch positive Klauseln enthält. Zeigen Sie, dass die leere Klausel nicht aus K resolviert werden kann. Lösungsvorschlag Sei K eine beliebige solche Klauselmenge. Da K nur nicht leere Klauseln enthält, jede solche Klausel aber nicht positiv ist, muss jede Klausel aus K also mindestens ein negatives Literal enthalten. Sei β daher die minimale Belegung zu K, die jede atomare Formel aus K auf false setzt. Dann ist β eine erfüllende Belegung von K, da sich in jeder Klausel mindestens ein negatives Literal unter β zu wahr auswertet. M.a.W. wendet man den DPLL (ohne PLR und OLR) auf K an, dann wird spätestens der letzte Ast im Fallunterscheidungsbaum zur leeren Klauselmenge führen. Damit K erfüllbar. Da die Resolution korrekt ist, kann die leere Klausel somit nicht aus K resolviert werden. Aufgabe 10.4 Ein klassiches (sehr einfaches) Beispiel aus der Künstlichen Intelligenz lautet: Ein (Roboter-)Affe soll eine Banane aus einem Regal nehmen. Der Affe hat nur einen Stuhl zur Verfügung, um die Banane zu erreichen. Zu Beginn gilt: Der Affe hat die Banane nicht, der Affe steht nicht auf dem Stuhl, der Stuhl steht irgendwo. Mögliche Aktionen des Affens: A1: Wenn der Affe nicht auf dem Stuhl steht, kann er auf den Stuhl steigen. A2: Wenn der Affe auf dem Stuhl steht, kann er vom Stuhl steigen. A3: Wenn der Affe nicht auf dem Stuhl steht, kann er den Stuhl unter der Banane positionieren. A4: Wenn sowohl der Stuhl unter der Banane steht, als auch der Affe auf dem Stuhl steht, dann kann der Affe die Banane nehmen. Ziel: Der (Roboter)Affe soll selbständig mittels dieser Aktionen einen Weg finden, wie er die Banane nehmen kann. Wir betrachten hierfür eine (nicht effiziente) Modellierung mittels Aussagenlogik. Es werden ausschließlich die aussagenlogischen Variablen Z a,s,b (mit a, s, b {0, 1}) verwendet, um die möglichen Zustände zu beschreiben: a gibt an, ob der Affe auf dem Stuhl ist (a = 1) oder nicht (a = 0) s gibt an, ob der Stuhl unter der Banane ist (s = 1) oder nicht (s = 0) b gibt an, ob der Affe die Banne hat (b = 1) oder nicht (b = 0) Damit lässt sich Aktion A1 wie folgt mittels einer Formel in KNF formalisieren: (Z 0,s,b Z 1,s,b ) ( Z 0,s,b Z 1,s,b ) =: F 1 3

(a) Formalisieren Sie entsprechend die restlichen Aktionen A2, A3, A4 und den Anfangszustand als Formeln F 2, F 3, F 4, F init in KNF. Sei F = F init F 1 F 2 F 3 F 4 im Weiteren. (b) Zeigen Sie: F ist erfüllbar. (c) Zeigen Sie: Wendet man das Resolutionsverfahren auf F an, so erhält man schließlich Z 1,1,1 als Resolventen. Geben Sie eine möglichst kurze Folge von Resolutionsschritten an, um Z 1,1,1 zu resolvieren. (Überlegen Sie sich, wie Sie die Banane mittels des Stuhls aus dem Regal nehmen würden. Wie spiegelt sich Ihr Vorgehen in den Resolventen wieder?) (d) Zeigen Sie: F = Z 1,1,1. Lösungsvorschlag Anfangssituation: Affe steht nicht auf dem Stuhl, Stuhl steht irgendwo, Affe hat die Banane nicht: F init = (Z 0,0,0 Z 0,1,0 ) Mögliche Aktionen des Affens: A1: Wenn der Affe nicht auf dem Stuhl steht, kann er auf den Stuhl steigen. F 1 = (Z 0,s,b Z 1,s,b ) ( Z 0,s,b Z 1,s,b ) A2: Wenn der Affe auf dem Stuhl steht, kann er vom Stuhl steigen. F 2 = (Z 1,s,b Z 0,s,b ) ( Z 1,s,b Z 0,s,b ) A3: Wenn der Affe nicht auf dem Stuhl steht, kann er den Stuhl unter der Banane positionieren. F 3 = (Z 0,s,b Z 0,1,b ) ( Z 0,s,b Z 0,1,b ) A4: Wenn sowohl der Stuhl unter der Banane steht, als auch der Affe auf dem Stuhl steht, dann kann der Affe die Banane nehmen. F 4 = (Z 1,1,b Z 1,1,1 ) ( Z 1,1,b Z 1,1,1 ) b {0,1} b {0,1} Konjunktion aller Teilformeln beschreibt alle Situationen, die der Affe erreichen kann (Wissensbasis des Affens): F = (Z 0,0,0 Z 0,1,0 ) (Start) (Z 0,s,b Z 1,s,b ) (auf Stuhl steigen) (Z 1,s,b Z 0,s,b ) (von Stuhl steigen) (Z 0,s,b Z 0,1,b ) (Stuhl unter Banane schieben) b {0,1} (Z 1,1,b Z 1,1,1 ) (Banane nehmen) F überführt man sofort in KNF, indem man einfach die Äquivalenz (F G) ( F G) verwendet. Somit erhält man auch direkt die Klauselmengendarstellung. (b) Man kann einfach alle Variablen mit 1 belegen. Damit ist in jeder Implikation die Konklusion erfüllt und damit die Implikation selbst, auch F init ist offensichtlich erfüllt. Somit ist auch die Konjunktion aller Formeln erfüllt. (c) Offensichtlicher Plan (a) Stuhl unter Banane schieben (falls nicht schon dort) (b) auf Stuhl steigen (c) Banane nehmen entspricht den logischen Schlüssen: (a) (Z 0,0,0 Z 0,1,0 ), (Z 0,0,0 Z 0,1,0 ) = Z 0,1,0 (b) Z 0,1,0, (Z 0,1,0 Z 1,1,0 ) = Z 1,1,0 4

(c) Z 1,1,0, (Z 1,1,0 Z 1,1,1 ) = Z 1,1,1 Als Resolventen: (a) {Z 0,1,0, Z 0,0,0 }, { Z 0,0,0, Z 0,1,0 } = {Z 0,1,0 } (b) {Z 0,1,0 }, { Z 0,1,0, Z 1,1,0 } = {Z 1,1,0 )} (c) {Z 1,1,0 }, { Z 1,1,0, Z 1,1,1 } = {Z 1,1,1 } Da man {Z 1,1,1 } aus den ursprünglichen Klauseln resolvieren kann, erhält man durch Hinzufügen von { Z 1,1,1 } eine unerfüllbar Formel, da man dann die leere Klausel resolvieren kann. (d) F = Z 1,1,1 folgt nun sofort, da allgemein gilt: Da: F = G gdw. F G ist unerfüllbar F = G gdw. = (F G) gdw. (F G) true gdw. (F G) false gdw. (F G) false gdw. (F G) unerfüllbar. (Nachlesen in den Folien!) Anmerkung: Der Punkt hier ist, dass man mittels der Resolution zeigen kann, dass Z 1,1,1 eine logische Folge aus den Annahmen über die Eigenschaften und Fähigkeiten des Affen ist (das, was man programmiert hat), d.h. wann immer die Annahmen erfüllt sind, gilt bereits die Aussage, dass der Affe die Banane erreichen kann. Tatsächlich ist eine Resolution der leeren Klausel dann nicht nur ein Beweis, dass der Affe stets die Banane erreichen kann, die Resolution beschreibt auch noch einen Plan, mittels welchem der Affe an die Banane kommt. Lässt man z.b. die Annahme über den Anfangszustand weg, dann kann der Affe die Banane zumindest unter der Belegung nicht erreichen, unter welcher er gar keinen Zustand erreichen kann. Formal: Z 1,1,1 ist keine logische Folge aus F 1 F 2 F 3 F 4, da z.b. die Belegung β(z a,s,b ) = 0 (für alle a, s, b {0, 1}) eine erfüllende Belegung für F 1... F 4 ist (alle Implikationen sind trivial erfüllt, da die Prämissen nicht erfüllt sind), aber nach Definition gilt β(z 1,1,1 ) = 0. Andererseits ist die Belegung β (Z a,s,b ) = 1 offensichtlich auch eine erfüllende Belegung von F 1... F 4 und zusätzlich Z 1,1,1 aber hier weiß man ja bereits nach Wahl von β, dass der Affe die Banane erreichen kann. 5