Formale Methoden der Informatik WS 2010/2011 Lehrstuhl für Datenbanken und Künstliche Intelligenz Prof. Dr. Dr. F. J. Radermacher • H. Ünver • T. Rehfeld • J. Dollinger 3. Aufgabenblatt Besprechung in den Tutorien vom 17.11.2010 (ab Übungstermin) bis 24.11.2010 (bis Übungstermin) 10. Aufgabe (8 Punkte) Verständnisfragen: Graphen: a) Woraus besteht ein Graph? Aus Knoten und Kanten, die Bezeichnungen haben können. b) Was ist ein gerichteter Graph? Ein Graph, bei dem die Kanten Richtungen haben. c) Was ist eine Schlinge? Eine Kante, die einen Knoten mit sich selbst verbindet. d) Was ist ein schlichter Graph? Ein Graph, welcher weder Schlingen noch Mehrfachkanten enthält. e) Wann sind die Graphen G1 = (V1 , E1 ) und G2 = (V2 , E2 ) isomorph? Wenn es eine Abbildung f : V1 → V2 gibt: ∀(x, y) ∈ E1 ⇒ (f (x), f (y)) ∈ E2 f) Was bedeutet bijektiv“? ” Wenn eine Funktion in beide Richtungen eindeutig ist. g) Was ist eine Menge? Eine gedankliche Zusammenfassung von Dingen, bei der es nicht auf die Reihenfolge ankommt und bei der jedes Element nur einmal vertreten ist. (schreibweise mit geschweiften Klammern) h) Was ist ein Tupel? Eine gedankliche Zusammenfassung von Dingen unter Beachtung der Reihenfolge und jedes der Elemente kann auch mehrfach vertreten sein. (schreibweise mit runden Klammern) Typisch ist, dass man sich von vorne herein festlegt, wieviele Elemente das Tuppel haben soll. 11. Aufgabe (5 Punkte): Multiplikationen Führen Sie die folgenden Multiplikationen im jeweiligen Basis-System durch: a) 1210 · 3410 1210 · 3410 8 6 4 1210 · 3410 68 + 34 10 40810 + 3 10 40810 (kürzer) Multipliziere beide Zahlen ziffernweise und schreibe die Zwischenergebnisse jeder Einzelmultiplikation entsprechend eingerückt untereinander. Summiere schließlich alle Zwischenergebnisse zu einem Gesamtergebnis. b) 2304 · 1324 2304 · 1324 0 0 0 12 21 3 10 12 + 2 2304 · 1324 0 1122 + 330 1 10 00 1102204 (kürzer) Das gleiche Verfahren wird bei anderen Zahlensystemen angewendet. Beide Zahlen werden ziffernweise durchgegangen. Jede Kombination der Ziffern wird ihrem Wert nach im fremden System multipliziert. Der einzige Unterschied besteht darin, dass die Ergebnisse jeder Einzelmultiplikation auch wieder im fremden System aufgeschrieben werden. Auch diese Summation findet wieder vollständig im Fremdsystem statt. 12 00 0 1102204 c) 213 · 1023 213 · 1023 2 0 1 11 0 + 2 213 · 1023 102 + 211 0 00 22123 (kürzer) 00 0 22123 Je kleiner die Basis eines Zahlensystems, desto kleiner ist dessen Multiplikationstabelle. Daher ist die Multiplikation in Zahlensystemen kleinerer Basen einfacher, da hier weniger Fälle zu unterscheiden sind. Dies geht auf Kosten der Zahlenlänge. Da die Multiplikation von der Länge der Eingangszahlen abhängt, müssen mehr Einzelmultiplikationen durchgeführt werden. d) 10112 · 11012 10112 · 11012 1 0 1 1 1 0 1 1 0 0 0 0 1 0 1 + 1 11 11 0 00 100011112 10112 · 11012 1101 1101 0 + 1101 1 11 10 00 100011112 (kürzer) Multiplikationen im 2er-System sind am einfachsten. Die Multiplikationstabelle ist trivial: Sie besteht nur aus vier möglichen Kombinationen und hat als Ergebniswerte nur die Ziffern 0 und 1. Als Konsequenz braucht man die eine Zahl nur immer wiederholt bündig beginnend unter die Spalten der anderen Zahl schreiben, in denen eine 1 steht. Die Spalten, in denen eine 0 steht multiplizieren die Zahl zu 0 und lassen sie wegfallen. Nur die Spalten mit den 1en behalten ihren Anteil. Und eine Multiplikation mit der 1 ist trivial. Die abessinische Bauernregel auf dem letzten Übungsblatt lässt sich letztendlich auf dieses Prinzip zurückführen. (ohne Beweis) e) 1A12 · 9812 1A12 · 9812 68 76 8 + 9 1 10 1A12 · 9812 808 + 98 Die einzige neue Schwierigkeit, die sich bei einer Multiplikation im 12er-System ergibt (neben der Tatsache, dass es nun mehr Kombinationsmöglichkeiten bei der Multiplikation zweier einfacher Ziffern als im 10er-System gibt), ist, dass nun ungewohnte Ziffern (≥ 1010 , z.B. 1010 = A12 ) auftreten können. 11 0 158812 (kürzer) 158812 Auch hier werden alle einzelnen Rechenschritte im 12er-System ausgeführt. 12. Aufgabe (3 Punkte) Isomorphie: Gegeben seien die folgenden Graphen: i) ........... ......... ... .. .....II..... ....I......... .... ............. ....... . . .... .............. ............ . .....IV.... .....V .... ........ ........ ......... .....III.... ........ ......... .....VI.... ........ ........... ... .... ....... .....1 .... ..... ... . . .. . . ....... ....... ii) .......... iii) ........... ......... ..... ..... ..... ..... ..... 3 ... .... a .... .... 2 ... . b.. ....4 .......... . .. ........ ... ......... ......... .... .... .... .... .. ... . . . . . . . . .... . ... .... ................. ......... ....... ............. ......... ........ . . ......... ..... 6 ......... ..... 5 .... .... e .... ..... d .... ..... c ..... ..... f .... ......... ........ ........ ........ ......... ......... ... .. ... .. . . .... . . . ...... .............................. iv) ....... ..... ....... ...A ....... ........... .... ... .. ..... ......... ...... ..... .....D.... . ...C . ......... ..... ......... .....B .... ......... ... ... .... ...... ....... ......... ... ... F .. ........ ....... vi) ....... v) ........... ..... ..... ..... ..... .... a ... ....b .A.. ......... ...... .......... ... .... ... . . . . ... .... ... ...... ........ ......... ........... ... ... ... .... B ... ..... C ..... ..... E .... ... ... c ... ......... ........ ................ ................ . . ... . . . . . . . . .... .. ... .......... . . . . . . .... .. .... .......... .......... ............ ................. ............. . . ......... .......... .... F .... ..... D .... ..... E .... ..... d ..... .... f ..... .... e .... .......... ........ ......... ........ ........ ....... ... . .. ... . . .... .. ...... .... .............................. Welche der hier gezeigten Graphen sind isomorph? Begründen Sie Ihre Antwort. Vorgehensweise: a) Überprüfen auf gleiche Anzahl Knoten ⇒ Alle Graphen besitzen die gleiche Anzahl Knoten. b) Überprüfen auf gleiche Gradsequenz ⇒ (ii) + (iv) + (v) stimmen überein. c) Betrachte die benachbarten Knoten Versuche die Graphen gleich aufzubauen. (a) Knoten mit eindeutigem Grad finden, (b) dessen Kanten hinzufügen (dabei Grade der Nachbarn vergleichen) (Abbruch, wenn Unterschiede festgestellt werden → gescheitert), (c) Prozedur mit den Knoten der Nachbarn wiederholen (Abbruch, wenn keine weiteren Knoten mehr vorhanden → erfolgreich). ⇒ (iv) + (v) sind gleich. Überführungsfunktion: (iv) C B F A D E → → → → → → d (v) a e f c b 13. Aufgabe (3 Punkte): Gegeben seien die folgenden Graphen in Mengen- und Tuppelschreibweise: a) G1 V1 E1 = (V1 , E1 ) = {A, B, C, D, E, F }, = {{A, D}, {B, D}, {B, F }, {C, D}, {C, E}, {E, F }} b) G2 V2 E2 = (V2 , E2 ) = {A, B, C, D, E, F }, = {(A, F ), (B, E), (B, F ), (C, B), (C, D), (D, F ), (E, A), (E, E), (E, F ), (F, E)} c) G3 V3 E3 = (V3 , E3 ) = {A, B, C, D, E, F, G, H, I, J, K}, = {{A, E}, {B, F }, {C, G}, {D, E}, {E, F }, {E, I}, {F, G}, {F, J}, {G, H}, {G, K}} Zeichnen Sie die Graphen. a) b) B A F D C E c) D E A A E I B F B F J C D C G K H 14. Aufgabe (5 Punkte) zum Knobeln: Eine Abwandlung des Umfüllproblems: Gegeben sind ein 5-Liter- und ein 3-Liter-Gefäß. Ihre Aufgabe ist es, eine Wassermenge von 4 Litern abzumessen ohne zu schätzen. Geben Sie, nach Möglichkeit, alle Lösungswege an. Hinweis: • Es steht eine unbegrenzte Wasserquelle zur Verfügung. • Es kann in einem Schritt immer nur eine Operation“ durchgeführt werden. ” Ziel Ziel (1,3) (4,0) (1,0) (4,3) (0,1) (5,2) (0,2) (5,1) Start (3,3) (2,0) (0,0) (3,0) (2,3) (0,3) (5,0) (5,3) Start