Prof. Dr. Bernhard Steffen Dipl.Inf. Malte Isberner – Dr. Oliver Rüthing – Dipl.Inf. Melanie Schmidt – Dr. Hubert Wagner Übungen zur Vorlesung Mathematik für Informatiker 1 Wintersemester 2013/14 Übungsblatt 4 Für die Abgabe der Bearbeitungen stehen den Übungsgruppen zu „Mathematik für Informatiker I“ Briefkästen im Raum E06 der Otto-Hahn-Straße 20 zur Verfügung. Die den einzelnen Übungsgruppen zugeteilten Briefkästen sind durch die Gruppennummer gekennzeichnet. Sie sind ferner mit dem Namen der Veranstaltung sowie Zeit und Ort der Übung kenntlich gemacht. Bitte werfen Sie Ihre Bearbeitungen in den Ihrer Übungsgruppe zugeteilten Briefkasten bis zur unten aufgeführten Abgabefrist ein! Schreiben Sie unbedingt immer Ihren vollständigen Namen, Ihre Matrikelnummer und Ihre Gruppennummer auf Ihre Abgaben! Abgabefrist: 15.11.2013, 14:00 Uhr Aufgabe 4.1 Induktives Definieren (Präsenzaufgabe) Geben Sie eine induktive Definition für die Anzahl der Partitionen einer n-elementigen Menge mit genau 1 ≤ k ≤ n Partitionsklassen an (vergleiche auch Abschnitt 3.3.1 im Buch). Erklären Sie Ihre Definition (ohne formalen Beweis). Lösung: Eine Partition einer Menge M ist eine Aufteilung in nichtleere und disjunkte Teilmengen, deren Vereinigung wieder M ist. Eine Partition ist also insbesondere eine Menge von Teilmengen. Die Teilmengen heißen auch Partitionsklassen. Wir bezeichnen mit π(n, k) die Anzahl der möglichen Partitionen einer n-elementigen Menge M . Zuerst schauen wir uns die Randfälle an. Für k = 1 und k = n gibt es nur jeweils eine Möglichkeit: Für k = 1 ist die einzige mögliche Partition {M }, d.h. die eine Teilmenge ist die Grundmenge selbst. F+r k = n müssen wir n nichtleere und diskunkte Teilmengen angeben, d.h. für jedes Element in M definieren wir eine Partitionsklasse, die genau dieses Element enthält. Es ist also π(n, 1) = 1 und π(n, n) = 1. Für die Fälle mit 1 < k < n definieren wir die Anzahl der möglichen Partitionen jetzt induktiv. Dazu wählen wir ein beliebiges Element m ∈ M aus. Die Menge M \{m} hat dann n − 1 Elemente. Wir überlegen uns, wie die Partitionen von M und die Partitionen von M \{m} zusammenhängen. • In einer Partition von M , in der {m} eine Partitionsklasse ist, bilden die anderen Partitionsklassen zusammen eine Partition von M \{m} mit k − 1 Partitionsklassen. Also ist die Anzahl der Partitionen von M mit {m} als eigene Partitionsklasse gleich der Anzahl der Partitionen von M \{m} in k − 1 Partitionsklassen, d.h. gleich π(n − 1, k − 1). Prof. Dr. Bernhard Steffen • Wenn m keine eigene Partitionsklasse besitzt, sondern Teil einer Partitionsklasse mit auch anderen Elementen ist, dann erhält man eine Partition von M \{m}, indem man m löscht. Andersherum erhält man aus einer Partition von M \{m} eine Partition von M , indem man m in eine der k Partitionsklassen hinzufügt. Also gibt es für jede Partition von M \{m} in k Partitionsklassen genau k Partitionen von M in k Partitionsklassen, d.h. die Anzahl der Partitionen von M in k Partitionsklassen ist gerade k · π(n − 1, k). Fassen wir diese Überlegungen zusammen, so kommen wir zu folgender induktiver Definition: 1 wenn k = 1 oder k = n π(n, k) =df π(n − 1, k − 1) + k · π(n − 1, k) sonst. Aufgabe 4.2 Backus-Naur-Form (BNF) (2+2 Punkte) In Beispiel 5.9 in den Folien (Beispiel 4.9 im Buch) wird eine BNF für Dezimalzahlen angegeben. 1. Wir betrachten arithmetische Terme AT über der Variablenmenge V = {X, Y, Z}, die durch folgende BNF gegeben sind: hATi ::= hDezimalzahli | hV i | (−hATi) | (hATi + hATi) | (hATi ∗ hATi) hVi ::= X | Y | Z Geben Sie eine Ableitungsfolge an, die aus hATi den arithmetischen Term (((− X +5) ∗ (X + Y)) ∗ (−(−3))) ableitet. 2. Die BNF für Dezimalzahlen erlaubt das Ableiten von Zahlen mit führenden Nullen (z.B. 0000123). Wandeln Sie die BNF für Dezimalzahl so ab, dass weiterhin alle Dezimalzahlen erzeugt werden können, führende Nullen jedoch ausgeschlossen sind. Lösung: 1. hATi ⇒ (hATi ∗ hATi) ⇒ (hATi ∗ (−hATi)) ⇒ (hATi ∗ (−(−hATi))) ⇒ (hATi ∗ (−(−hDezimalzahli))) ⇒ (hATi ∗ (−(−hZifferi))) ⇒ (hATi ∗ (−(−3))) ⇒ ((hATi ∗ hATi) ∗ (−(−3))) ⇒ (((hATi + hATi) ∗ (hATi + hATi)) ∗ (−(−3))) ⇒ (((−hATi + hDezimalzahli) ∗ (X + Y i)) ∗ (−(−3))) ⇒ (((−X + hZifferi) ∗ (X + Y i)) ∗ (−(−3))) ⇒ (((−X + h5i) ∗ (X + Y i)) ∗ (−(−3))) 2. Die im Buch angegebene BNF für Dezimalzahlen lautet: hDezimalzahli ::= hZifferi|hDezimalzahlihZifferi hZifferi ::= 0| . . . |9 Um die führenden Nullen zu verhindern, führen wir ein zusätzliches Nichtterminalzeichen ein und verlangen, dass Dezimalzahl entweder in eine einzelne Ziffer abgeleitet wird oder in eine Zahl, die mit einer Ziffer ungleich 0 beginnt. hDezimalzahli ::= 0 | 1 | . . . | 9 | 1hRestzahli | 2hRestzahli | . . . | 9hRestzahli hRestzahli ::= hZifferi|hRestzahlihZifferi hZifferi ::= 0| . . . |9 Aufgabe 4.3 Partielle Ordnung, Quasiordnung (2+2+2 Punkte) Welche der folgenden Relationen R über der Menge A ist eine partielle Ordnung, welche eine Quasiordnung? Begründen Sie Ihre Antwort. 1. A = {a, b, c} und R = {(a, a), (b, a), (b, b), (b, c), (c, c)}. 2. A = R und R = {(x, y) ∈ A × A | |x| ≤ |y|}. 3. A = Z und R = {(x, y) ∈ A × A | x teilt y, d.h. ∃k ∈ Z. y = x · k}. Lösung: 1. R ist eine partielle Ordnung und damit auch eine Quasiordnung. • R ist reflexiv, da (a, a), (b, b) und (c, c) in R enthalten sind. • R ist antisymmetrisch, da (a, b) und (c, b) nicht Teil von R sind. • R ist transitiv: nur (b, a) mit (a, a) und (b, b) mit (b, c) sowie (b, c) mit (c, c) erfüllen die Bedingung für Transitivität. In allen drei Fällen ist das entsprechende Tupel auch in R ( (b, a), (b, c) sowie (b, c) ). 2. R ist eine Quasiordnung, aber keine partielle Ordnung. • R ist reflexiv, da |x| = |x| und damit insbesondere |x| ≤ |x| für alle x ∈ R, also (x, x) ∈ R. • R ist transitiv, da für alle x, y, z ∈ R aus (x, y) ∈ R und (y, z) ∈ R erstmal |x| ≤ |y| und |y| ≤ |z| und damit auch |x| ≤ |y| ≤ |z| und somit (x, z) ∈ R folgt. • R ist nicht antisymmetrisch. Betrachte z.B. die Elemente x = −1 und y = 1. Es gilt dann (x, y) ∈ R und (y, x) ∈ R. Wäre R antisymmetrisch, so müsste x = y gelten, was nicht der Fall ist. 3. R ist eine Quasiordnung, aber keine partielle Ordnung. • R ist reflexiv, da für jedes z ∈ Z gilt dass z = z · 1 ist und somit (z, z) ∈ R. • R ist transitiv: Seien a, b, c ∈ Z und gelte (a, b) ∈ R und (b, c) ∈ R. Dann gibt es k1 ∈ Z und k2 ∈ Z mit b = a · k1 und c = b · k2 . Daraus folgt c = b · k2 = a · k1 · k2 und damit (a, c) ∈ R. 3 • R ist nicht antisymmetrisch: Es gilt (−1, 1) ∈ R, da −1 = 1(˙ − 1) und (1, −1) ∈ R da 1 = −1 · (−1), aber 1 6= −1. Aufgabe 4.4 Noethersche Induktion (Präsenzaufgabe) Die Teilbarkeitsrelation | ⊆ N × N ist definiert durch a | b ⇔df (∃k ∈ N. b = a · k). 1. Zeigen Sie, dass die Teilbarkeitsrelation eine Noethersche Ordnung ist. 2. Benutzen Sie die Tatsache, dass die Teilbarkeitsrelation eine Noethersche Ordnung ist, um die folgende Aussage zu beweisen: Für alle natürlichen Zahlen n ∈ N\{0, 1} gilt, dass n entweder eine Primzahl ist oder sich als Produkt von Primzahlen schreiben lässt, d.h. ! k Y ∀n ∈ N\{0, 1}. (n ∈ P rim) ∨ ∃k ∈ N\{0, 1}. ∃p1 , . . . , pk ∈ P rim. n = pi . i=1 Erinnerung: Die Menge der Primzahlen ist definiert durch P rim =df {p ∈ N | p 6= 1 ∧ {t | t ∈ N ∧ t | p} = {1, p}}, d.h. eine Zahl n ≥ 2 ist prim, wenn sie nur von 1 und sich selbst geteilt wird. Lösung: 1. Wir haben im 3. Teil von Aufgabe 3.3 bereits gezeigt, dass die Teilbarkeitsrelation eine Quasiordnung ist (genauer gesagt haben wir dies für die Teilbarkeitsrelation über Z gezeigt, aber der Beweis für die natürlichen Zahlen ist analog). Wir zeigen, dass die Teilbarkeitsrelation auch Noethersch ist. Dazu müssen wir zeigen, dass jede nichtleere Teilmenge bezüglich | ein minimales Element besitzt. Seit dazu A ⊆ N eine beliebige Teilmenge der natürlichen Zahlen außer der leeren Menge. Ein bzgl | minimales Element in A ist ein Element, das keinen Teiler in A besitzt. Wir bemerken, dass die 0 eine Sonderstellung hat, da sie von jeder Zahl in N geteilt wird. Die Null kann daher nur minimales Element sein, wenn sie die einzige Zahl in der Menge ist, d.h. wenn A = {0} ist. In diesem Fall ist die Null automatisch minimal, da es kein anderes Element gibt, das kleiner sein könnte. Wenn A weitere Elemente enthält, ist das (bezüglich normalem Zahlenvergleich) kleinste Element in A, das größer als 0 ist, ein minimales Element, weil es keinen Teiler in A haben kann. Diese Aussage beweisen wir jetzt noch. Sei dazu n die kleinste Zahl in A, die größer als 0 ist. Wir nehmen an, es gäbe ein Element m in A, das n teilt, d.h. m | n und damit existiert ein k ∈ N, so dass n = m · k. Da n > 0 ist, können weder m noch k Null sein. Andererseits ist m kleiner als n, und daher gibt es eine Zahl z ∈ N, so dass m = n + z gilt. Setzen wir die beiden Gleichungen zusammen, erhalten wir: n = m · k = (n + z) · k = n · k + z · k Wir bemerken, dass n = n · k + z · k äquivalent zu n · (k − 1) + z · k = 0 ist. Da n > 0 und k > 0 ist und z ≥ 0, kann dies nur sein, wenn k = 1 und z = 0 gilt. Damit ist aber n = m. Also wird n nur von sich selbst geteilt, und daher ist n ein minimales Element. 2. Für n ∈ N\{0, 1} sei die Aussage A(n) folgendermaßen definiert: A(n) =df n ∈ P rim ∨ ∃k ∈ N\{0, 1}.∃p1 , . . . , pk ∈ P rim. n = k Y ! pi i=1 Wir zeigen mit Noetherscher Induktion, dass diese Aussage für alle N\{0, 1} gilt. 4 . n = 2. Für n = 2 gilt die Aussage, da n eine Primzahl ist. n > 2. Sei n eine Zahl mit n > 2. Dann gibt es zwei Möglichkeiten. Wenn n eine Primzahl ist, so gilt A(n) und wir sind fertig. Ist n keine Primzahl, so existiert eine Zahl m ∈ N, die weder 1 noch n ist und n teilt. Es existieren also m, k ∈ N mit n = m · k, und m und k können nicht 0 sein, da n nicht 0 ist. Wir bemerken, dass auch k ein Teiler von n ist, da auch n = k · m gilt. Damit können wir die Induktionsvoraussetzung auf m und k anwenden, da m und k bezüglich Teilbarkeit kleinere Zahlen sind, die auch in N\{0, 1} liegen. Aufgrund der Induktionsvoraussetzung wissen wir, dass m das Produkt von Primzahlen ist, d.h. es Q 1 pi . Ebenso gibt existiert ein k1 ∈ N\{0, 1} und Primzahlen p1 , . . . , pk1 mit m = ki=1 Q 2 qi . Wir setzen diese es ein k2 ∈ N\{0, 1} und Primzahlen q1 , . . . , qk2 mit k = ki=1 Qk2 Qk 1 Terme ein und stellen fest, dass n = i=1 pi · i=1 qi gilt. Damit ist n ein Produkt von Primzahlen und A(n) gilt. 5