Grundlagen der Informatik II Übungsblatt: 4, WS 17/18 mit Lösungen

Ähnliche Dokumente
Übungsblatt Nr. 5. Lösungsvorschlag

Allgemeingültige Aussagen

Logik für Informatiker

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

II. Grundlagen der Programmierung

Aussagenlogik. Formale Methoden der Informatik WiSe 2010/2011 teil 7, folie 1 (von 50)

Einführung in die Informatik 2

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

Rechnerstrukturen. Michael Engel und Peter Marwedel WS 2013/14. TU Dortmund, Fakultät für Informatik

14. Die polynomiell beschränkten Komplexitätsklassen. Die Grenzen der tatsächlichen Berechenbarkeit

5. Vorlesung: Normalformen

TU5 Aussagenlogik II

Logik für Informatiker

Normalformen boolescher Funktionen

Musterlösung der Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2012/13

Konjunktive und disjunktive Normalformen

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

Verwendet man zur Darstellung nur binäre Elemente ( bis lat.: zweimal) so spricht man von binärer Digitaltechnik.

Übung 4: Aussagenlogik II

Kapitel L:II. II. Aussagenlogik

Logik für Informatiker

Kapitel 1.3. Normalformen aussagenlogischer Formeln. Mathematische Logik (WS 2010/11) Kapitel 1.3: Normalformen 1 / 1

Klausur zur Vorlesung Mathematische Logik

Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Hornformeln

1 Aussagenlogischer Kalkül

Klausur zur Vorlesung Technische Informatik 1 im WS 06/07 Donnerstag, den von Uhr Uhr, HS 5

13. Vorlesung. Logix Klausuranmeldung nicht vergessen! Übungsblatt 3 Logikschaltungen. Multiplexer Demultiplexer Addierer.

Informationsverarbeitung auf Bitebene

Logik (Teschl/Teschl 1.1 und 1.3)

Kapitel 1. Aussagenlogik

Technische Informatik I

Maike Buchin 18. Februar 2016 Stef Sijben. Probeklausur. Theoretische Informatik. Bearbeitungszeit: 3 Stunden

Arbeitsblatt Logische Verknüpfungen Schaltnetzsynthese

Systemorientierte Informatik 1

Nicht-Kanonizität von AIGs Systemtheorie 1 Formale Systeme 1 # WS 2006/2007 Armin Biere JKU Linz Revision: 1.6

Teil II. Schaltfunktionen

Die Klassen P und NP. Formale Grundlagen der Informatik 1 Kapitel 11. Die Klassen P und NP. Die Klasse P

Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14


Theoretische Informatik SS 03 Übung 11

Von-Neumann-Rechner / Rechenwerk

Beispiel Aussagenlogik nach Schöning: Logik...

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

Informatik A (Autor: Max Willert)

Digitaltechnik I WS 2006/2007. Klaus Kasper

Kapitel 1.0. Aussagenlogik: Einführung. Mathematische Logik (WS 2011/12) Kapitel 1.0: Aussagenlogik: Einführung 1/ 1

Teil 1: Digitale Logik

1. Klausur zur Vorlesung Informatik III Wintersemester 2004/2005

Computersysteme. 2. Grundlagen Digitaler Schaltungen 2.10 Minimierung Boole scher Funktionen 2.11 CMOS Komplexgatter

Aussagenlogik. Aussagen und Aussagenverknüpfungen

Grundlagen der Programmierung

N Bit binäre Zahlen (signed)

ÜBUNG ZUM GRUNDKURS LOGIK WS 2015/16 GÜNTHER EDER

Erfüllbarkeit und Allgemeingültigkeit

Dank. Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Teil VI. Komplexitätstheorie.

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

Die Klassen P und NP. Dr. Eva Richter. 29. Juni 2012

Reduktionen. Algorithmen und Datenstrukturen Kapitel 6.2 Komplexitätstheorie. Exkurs: Reduktionen allgemein. Reduktionen: Erläuterungen

Einführung in. Logische Schaltungen

Lösung 3.1 Schaltalgebra - Schaltnetze (AND, OR, Inverter)

Einführung in die Boolesche Algebra

Antwort: h = 5.70 bit Erklärung: Wahrscheinlichkeit p = 1/52, Informationsgehalt h = ld(1/p) => h = ld(52) = 5.70 bit

Resolutionsalgorithmus

Ersetzbarkeitstheorem

x x y x y Informatik II Schaltkreise Schaltkreise Schaltkreise Rainer Schrader 3. November 2008

Was bisher geschah: klassische Aussagenlogik

Integrierte Schaltungen

Grundlagen der Theoretischen Informatik

Algorithmische Graphentheorie

Einführung in Algorithmen und Komplexität

Grundlagen der Theoretischen Informatik

Wie komme ich von hier zum Hauptbahnhof?

Randomisierte Algorithmen

15. Elementare Graphalgorithmen

Lösung 4.1 Stuck-at-Fehler

VU Grundlagen digitaler Systeme

Grundlagen der Informatik II

Geschichte der Logik ist eng verknüpft mit (Sprach-) Philosophie. Logik untersucht, wie aus wahren Aussagen andere wahre Aussagen folgen

Algorithmen für OBDD s. 1. Reduziere 2. Boole sche Operationen

Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012

Formale Systeme. Binary Decision Diagrams. Prof. Dr. Bernhard Beckert WS 2010/2011 KIT INSTITUT FÜR THEORETISCHE INFORMATIK

Was ist Logik? Was ist Logik? Logische Konnektoren. Aussagenlogik. Logik stellt Sprachen zur Darstellung von Wissen zur Verfügung

WS 2012/13 Klausur zur Digitaltechnik. Donnerstag,

5. Aussagenlogik und Schaltalgebra

Logische und funktionale Programmierung

9 Multiplexer und Code-Umsetzer

Technische Informatik (RO)

Lösungen zur 1. Klausur. Einführung in Berechenbarkeit, formale Sprachen und Komplexitätstheorie

, WS2012 Übungsgruppen: Mo.,

Theoretische Informatik

Technische Informatik - Eine Einführung

Sudoku ist NP-vollständig

Binary Decision Diagrams (Einführung)

Protokoll zum Praktikum des Moduls Technische Informatik an der JLU Gießen

Komplexitätstheorie Einführung und Überblick (Wiederholung)

Technische Informatik (RO)

Grundlagen der Informatik Kapitel 20. Harald Krottmaier Sven Havemann

Grundlagen der Informatik II Teil 2: Architektur von Rechensystemen

Zusammenfassung des Stoffes zur Vorlesung Formale Systeme

abgeschlossen unter,,,, R,

Transkript:

PD. Dr. Pradumn Shukla Marlon Braun Micaela Wünsche Dr. Friederike Pfeiffer-Bohnen Dr. Lukas König Institut für Angewandte Informatik und Formale Beschreibungsverfahren Grundlagen der Informatik II Übungsblatt: 4, WS 7/8 mit Lösungen Besprechung ab:. Deember 27 Forum: http://info2.aifb.kit.edu/qa Klicken Sie auf die ID AU-X-Y im Aufgaben-Header um um richtigen Thread u gelangen. Anmerkung um XWiard (http://www.wiard.de): Auf den Übungsblättern sind manchmal Links (QR-Codes) angegeben, die u dem in der Aufgabe behandelten Konept (etwa dem dort dargestellten endlichen Automaten) auf der XWiard-Website führen. Die mit Skript überschriebenen Links leiten einfach u dem jeweiligen endlichen Automaten (oder sonstigen Konept) weiter, wo Sie damit herumspielen können. Die mit MiniDüberschriebenen Links führen u einer kleinen 2-Minuten-Aufgabe, die Sie usätlich mit dem XWiard lösen können. Tipp: Sie können auch die angegebene ID (in der Form ID-234) ins Skriptfeld eingeben. Aufgabe AU-4- INTRAKTIV(a) Kompleität Bekanntermaßen ist das S AT-Problem NP-vollständig. In dieser allgemeinen Variante liegen die aussagenlogischen Formeln in beliebiger Form vor. (a) Wie hoch ist der Aufwand, wenn man die Formelstruktur in der Art einschränkt, dass die Formeln in disjunktiver Normalform vorliegen ( DNF-SAT )? i

Zur rinnerung: in Boolescher Ausdruck hat die konjunktive (disjunktive) Normalform, wenn er aus Klauseln k,..., k n besteht, die alle mit UND (ODR) verknüpft sind. ine Klausel k i ist dabei eine ODR- (UND-) Verknüpfung von Literalen l i,..., l im (für m, i, i,..., i m, n N). in Literal kann eine Boolesche Variable oder ihre Negierung sein. Der Aufwand ist linear, da nur ein einiger wahrer Konjunktionsterm impliiert, dass die gane Formel wahr ist. Also kann man einfach alle Konjunktionsterme der Reihe nach überprüfen. Dabei ist jede einelne Überprüfung einfach, da die Literale alle mit UND verknüpft sind, also ein einiges falsches Literal impliiert, dass die gane Klausel falsch ist. ntsprechend ist bei der KNF-Variante die Frage, ob es eine nicht-erfüllende Belegung gibt, einfach. (b) Wenn die DNF-Variante leichter ist, warum ist die allgemeine Variante nicht genauso leicht, da es ja u jeder Formel eine äquivalente in DNF gibt? Die Umwandlung in DNF kann eponentiellen Aufwand haben. Aufgabe 2 HU-4- Für uhause NP-Vollständigkeit In der Vorlesung wurde das Problem CLIQU vorgestellt. s beeichnet die folgende Fragestellung: Sei G = (V, ) ein ungerichteter Graph mit der Knotenmenge V und der Kantenmenge ; sei k eine natürliche Zahl; gibt es in G mindestens k Knoten, die paarweise durch eine Kante verbunden sind, also eine Clique bilden? Zum Beispiel bilden im abgebildeten Graphen die Knoten a, b, c und d die größte Clique mit k = 4. Formal ist CLIQU die Menge aller Graphen mit ugehöriger Zahl k, sodass der jeweilige Graph eine Clique der Größe k besitt: CLIQU = {(G, k) V V mit V = k : v, v 2 V : (v, v 2 ) } Die formale Fragestellung ist, ob ein gegebenes Tupel aus Graph G und Zahl k in der Menge CLIQU enthalten ist oder nicht. ii

a) s sei bereits bekannt, dass S AT pol CLIQU gilt. Zeigen Sie: CLIQU ist NPvollständig. Zu eigen bleibt: CLIQU NP. ine nichtdeterministische Turingmaschine kann eine Knoten-Teilmenge V V mit V = k raten und in Polnomialeit verifiieren, ob die Knoten eine Clique bilden. b) Das Problem INDS T ( Independent set ) ist definiert als die Frage, ob es in einem Graphen eine Anahl von Knoten gibt, die paarweise nicht durch Kanten verbunden sind, also: INDS T = {(G, k) V V mit V = k : v, v 2 V : (v, v 2 ) }. Zeigen Sie unter Ausnutung des Resultats aus a), dass INDS T ebenfalls NP-vollständig ist. () INDS T NP: ine nichtdeterministische Turingmaschine kann eine Knoten- Teilmenge V V mit V = k raten und in Polnomialeit verifiieren, dass die Knoten alle nicht miteinander verbunden sind. (2) CLIQU pol INDS T: Sei (G, k) eine ingabe für CLIQU. Die Funktion f : Graph N Graph N : f (G, k) = (G, k) mit G = (V, ) und v, v 2 V : (v, v 2 ) (v, v 2 ) ist polnomialeitberechenbar. ( f ereugt also den kanteninversen Graphen.) s gilt offensichtlich: (G, k) CLIQU (G, k) INDS T Damit ist geeigt, dass INDS T NP-schwer ist, da wir das NP-vollständige Problem CLIQU auf INDS T polnomialeit-reduieren konnten. (ine Rückführung der Ausgabe von INDS T auf die Ausgabe von CLIQU ist hier nicht notwendig, da als Lösung nur wahr oder f alsch herauskommen kann.) iii

Aufgabe 3 INTRAKTIV(a) AU-4-2 Binar Decision Diagram (BDD) a) reugen Sie ein BDD u der durch den Baum gegebenen Funktion f : B 3 B. / Skript ID-885 b) Lesen Sie aus dem berechneten BDD einen Booleschen Ausdruck in disjunktiver Normalform (DNF) ab. iv

f (,, ) = + + Aufgabe 4 HU-4-4 Für uhause BDD Gegeben sei die Funktion f : B 3 B mit,, B : f (,, ) = ( ) ( + ) (wobei das eklusive OR (XOR) ist, d. h. a b = a b + ab ). Tragen Sie die Werte der Funktion in die angegebene Wahrheitstabelle ein und ereugen Sie das ugehörige BDD mit Variablenreihenfolge. ( ) ( + ) f (,, ) v

/ / / / / / Skript ID-99 Aufgabe 5 HU-4-2 CMOS Gegeben sei die Boolesche Funktion f un: B 3 B mit: f (A, B, C) = ( A B) C Zeichnen Sie in das vorgegebene Feld eine CMOS-Schaltung für f un. Hinweis: Versuchen Sie, die Funktion direkt in CMOS abubilden, ohne elementare Bausteine wie NOT, NAND oder NOR u verwenden. vi

V DD A B fun(a,b,c) C GND Aufgabe 6 AU-4-3 INTRAKTIV(a) Schaltnete ntwickeln Sie einen Vollsubtrahierer. Dieser hat 3 ingänge, bestehend aus dem Bit a, dem Bit b, welches von a abgeogen wird, und dem Übertrag ü aus eventuell uvor durchgeführten Subtraktionen. Die wei Ausgänge sollen das rgebnis der Subtraktion und den Übertrag darstellen. Verwenden Sie für Ihren Vollsubtrahierer nur die Bausteine OR, AND, NOT, NAND, NOR und XOR. vii

Wertetabelle: a b ü rgebnis Übertrag Ü Wie aus der Wertetabelle ersichtlich ist, kann das rgebnis wie folgt dargestellt werden: Der Übertrag Ü lässt sich wie folgt darstellen: (a, b, ü) = a b ü Ü(a, b, ü) = a b ü + a b ü + a bü + abü = a (b ü + b ü ) + b ü = a (b ü) + b ü Daraus ergibt sich die folgende Schaltung: a Ü b ü 2k+ 2k+ Skript ID-886 (Die Schaltkreise sind im XWiard augenblicklich noch im Beta-Stadium; das heißt, man kann sie nur anschauen, aber nicht simulieren o. ä. Wir arbeiten dereit an weiteren Funktionen. Zur Simulation von Schaltkreisen können Sie Logisim oder Logiflash verwenden.) viii

Aufgabe 7 HU-4-3 Für uhause Schaltnete Gegeben sei die Funktion g : B 3 B 3 : (a, b, c) (a b, a c, b c) (wobei das eklusive OR (XOR) ist, d. h. a b = a b + ab ). (a) Stellen Sie diese Funktion als Schaltnet mit drei ingängen und drei Ausgängen dar. s stehen Ihnen hierfür nur Gatter vom Tp AND, OR und NOT ur Verfügung. a b ab a b c b c bc a b + ab b c + bc a c + ac a c ac (b) s ist möglich, diese Schaltung unter Verwendung von beliebig vielen AND und OR, aber nur 2 NOT Gattern u realisieren. Wie sieht diese Schaltung aus? i

a bc 3. 3.2 4 5 6. 6.2 3.3 6.3 2 7. 7.2 7.3 7.4 7.5 7.6 8. 8.2 8.3 a b a c b c

: a b c 2 : (a b c) = a + b + c 3. : (a + b + c ) a b = a b c 3.2 : (a + b + c ) a c = a b c 3.3 : (a + b + c ) b c = a b c 4 : a b c + a b c + a b c + a b c 5 : (a b c + a b c + a b c + a b c ) = a b c + a b c + a b c + a b c 6. : a + b c 6.2 : b + a c 6.3 : c + a b 7. : a (b + a c ) = a b 7.2 : b (a + b c ) = a b 7.3 : a (c + a b ) = a c 7.4 : c (a + b c ) = a c 7.5 : b (c + a b ) = b c 7.6 : c (b + a c ) = b c 8. : (a b ) + (a b) = a b 8.2 : (a c ) + (a c) = a c 8.3 : (b c ) + (b c) = b c i

Aufgabe 8 AU-4-4 (a) Welche Sprache L(A) erkennt der rechts abgebildete endliche Automat A = ({, }, {s, s, s, s, s }, δ, s, {s })? L(A) = {w w {, } } (b) rgänen Sie das unten abgebildete Schaltwerk so, dass eine am Ausgang e 3 genau dann anliegt, wenn die bisher über erfolgte ingabe w lement der Sprache L(A) ist. Hinweise: Das Schaltwerk erhält pro Takt T über ein Zeichen von w. Pro Takt erhöht sich also die Länge w um. Assoiieren Sie jeden Zustand von A mit Zuständen der drei Flipflops (FF), sodass der Zustand s abc (a, b, c {, }) kodiert ist durch Seten von FF auf c, FF auf b und FF 2 auf a. Schaltwerke s s s s s Skript ID-964 ii

T q q > HA r 2 s e 3 q q q q HA HA > s r q q q q q q HA HA > s r q q Skript ID-923 (Die Schaltkreise sind im XWiard augenblicklich noch im Beta-Stadium; dieser recht umfangreiche Schaltkreis sieht noch iemlich unübersichtlich aus. Wir arbeiten an Verbesserungen.) Fröhliche Weihnachten! Skript ID-9994 iii