ETH Zürich Institut für Theoretische Informatik Prof. Dr. Emo Welzl Dr. Uli Wagner HS 2009 Lösungsvorschlag zu den Vorbereitungsaufgaben Diskrete Mathematik (D-ITET) Aufgabe 1 (a) i) Offenbar ist die Aussage für n = 1 richtig. Weiter berechnen wir n+1 X i = (n + 1) + i=1 n X Ind. i = (n + 1) + i=1 n(n + 1) (n + 1)(n + 2) = , 2 2 womit bewiesen ist, dass die Aussage für (n + 1) stimmt, falls sie für n richtig ist. Also haben wir die Gültigkeit der Formel für n = 1, 2, 3, . . . gezeigt. ii) Wiederum ist die Gültigkeit der Aussage für n = 1 trivialerweise richtig. Weiterhin gilt n+1 X i2 = (n + 1)2 + i=1 n X i=1 Ind. i2 = (n + 1)2 + n(n + 1)(2n + 1) (n + 1)(n + 2)(2(n + 1) + 1) = , 6 6 womit bewiesen ist, dass die Aussage für (n + 1) stimmt, falls sie für n richtig ist. Damit folgt die Gültigkeit der Formel für alle natürlichen Zahlen n. (b) Offenbar gilt die explizite Darstellung für n = 0 und n = 1 (es ist wichtig, die Gültigkeit hier für die ersten beiden Werte für n zu überprüfen, da unser Induktionsschritt über zwei Werte von n zurückreicht). Die Lösungen der Gleichung x2√= x + 1, oder äquivalent dazu, √ −1 −2 x + x = 1, sind durch x+ = (1 + 5)/2 und x− = (1 − 5)/2 gegeben. Es gilt also 1 n−1 Ind. 1 Fn = Fn−1 + Fn−2 = √ (xn−1 + xn−2 + xn−2 + + ) − √ (x− − ) 5 5 1 1 n −1 −2 −2 = √ xn+ (x−1 + + x+ ) − √ x− (x− + x− ) | {z } | {z } 5 5 =1 =1 1 1 = √ xn+ − √ xn− . 5 5 (c) Der Induktionsanfang im gegebenen “Beweis” ist korrekt, ebenso der Induktionsschritt für alle n > 2. Nur für n = 2 schlägt der Induktionsschritt fehl, denn wenn jedes der beiden Pferde einmal von der Herde weggeschickt wird, um die Induktionsvoraussetzung anzuwenden, so ist die für den Schluss notwendige Menge der Pferde, die nie weggeschickt wurden und ihre Farbe nicht verändert haben, leer. Aufgabe 2 (a) Wir wählen zunächst sieben Kinder aus, die einen gelben Ballon bekommen, für die restlichen n− Kinder haben wir jeweils 3 Möglichkeiten der Farbauswahl. Insgesamt gibt es also 7 n−7 n · 3 Möglichkeiten. 7 1 (b) Es bezeichne M die Menge aller möglichen Verteilungen (ohne Einschränkungen), und R̄, Ḡ und B̄ die Mengen der Verteilungen ohne rote, ohne grüne bzw. ohne blaue Ballons. Unter Ausnutzung des Prinzips von Exklusion und Inklusion gilt für die Kardinalität der Menge X der Verteilungen mit mindestens einem roten, einem grünen und einem blauen Ballon |X| = |M | − |R̄ ∪ Ḡ ∪ B̄| = |M | − (|R̄| + |Ḡ| + |B̄| − |R̄ ∩ Ḡ| − |R̄ ∩ B̄| − |Ḡ ∩ B̄| + |R̄ ∩ Ḡ ∩ B̄|) = 4n − 3 · 3n + 3 · 2n − 1. Die “Lösung” n(n − 1)(n − 2) · 4n−3 ist falsch, denn sie zählt Verteilungen mehrfach. Z.B. für n = 4 wird die Verteilung (r, g, b, b) zweimal gezählt: Entweder ist ein roter, grüner und blauer Ballon für die ersten drei Kinder fest vorgegeben, und das vierte Kind erhält irgendeinen Ballon, z.B. einen blauen. Oder für das erste, zweite und vierte Kind ist ein roter, grüner bzw. blauer Ballon fest vorgegeben, und das dritte Kind erhält einen Ballon beliebiger Farbe, z.B. einen blauen. Aufgabe 3 (a) Nein, der Graph bestehend aus zwei disjunkten Kopien von K3 ist ein mögliches Gegenbeispiel. (b) Nein, die Nachbarschaft der Knoten 1,2 und 5 umfasst lediglich die Knoten a und c. Damit besitzt der Graph nach dem Satz von Hall kein perfektes Matching. 1 OOO 2 ? oo • ?OOO oo • ?ggggogo 5 OOO o?o?o ?o?oogOgOgOgg ?o?oo OoOo ? ogogg??? oOoOoO ??? ooogoggOOgOgOog?o?g?ogog o?o OOOO?? o ogogggg ooo OO oooo ? O a c • • • (c) Ja, indem man die Anzahl Komponenten in den beiden Graphen unterschiedlich wählt, ist ein Beispiel leicht zu finden. Untenstehende Abbildung zeigt zwei Graphen G1 und G2 mit jeweils 120 Knoten und 240 Kanten (beide Graphen sind 4-regulär). G1 hat 7 · 20 + 1 = 141 Gebiete, während G2 nur 2 · 60 + 2 = 122 Gebiete besitzt. Die Differenz ist gleich der Differenz in der Anzahl der Komponenten. Wären die Graphen als zusammenhängend vorausgesetzt, so folgt aus der eulerschen Polyederformel, dass die Anzahl Gebiete notwendigerweise gleich ist. G1 = 20× ··· G2 (d) Nein, angenommen es gäbe einen solchen Graphen G, dann könnten wir daraus einen Graphen G′ konstruieren, indem in jedem der zwei fünfeckigen Gebiete noch jeweils zwei Kanten hinzugefügt werden. G′ wäre also planar und hätte 30 Knoten und 81 + 4 = 85 Kanten, im Widerspruch zu der für planare Graphen gültigen Beziehung |E(G′ )| ≤ 3|V (G′ )| − 6. (e) Nein, 2 · 2 + 2 · 2 = 8 ist ein mögliches Gegenbeispiel. (f) Nein, nach dem Satz von Euler-Fermat gilt 277460 = 1 (mod 461) (461 ist eine Primzahl und ϕ(461) = 460). (g) Ja, denn 29 ist eine Primzahl, und nach Satz 3.44 aus der Vorlesung ist hZn , +n , ·n i genau dann ein Körper, wenn n eine Primzahl ist. 2 Aufgabe 4 Die untenstehende Tabelle zeigt die Lösung für die gegebenen Graphen. Dabei wird wie in der Aufgabenstellung stets m, n > 0 vorausgesetzt, um allzu künstliche Sonderfälle auszuschliessen. Graph Kn Km,n Qn Mm,n eulersch n ungerade m und n gerade n gerade (m, n) ∈ {(1, 1), (2, 2)} Tm,n m = 2 =⇒ n = 2 oder n = 2 =⇒ m = 2 hamiltonsch n 6= 2 m=n>1 n≥2 (m oder n gerade) oder (m, n) = (1, 1) (m, n) 6∈ {(1, 2), (2, 1)} perfektes Matching n gerade m=n immer m oder n gerade m oder n gerade Ein paar allgemeine Hinweise zum Ausfüllen der Tabelle: • Ist ein Graph hamiltonsch und hat eine gerade Anzahl von Knoten, so besitzt er auch ein perfektes Matching (man nimmt einfach jede zweite Kante aus dem Hamiltonkreis). • Hat ein Graph eine ungerade Anzahl Knoten, so besitzt er kein perfektes Matching. Dass Qn für n ≥ 2 hamiltonsch ist, beweist man per Induktion über n. Der Induktionsanfang ist leicht zu überprüfen: Q2 = C4 ist offenbar hamiltonsch. Qn+1 besteht aus zwei Kopien C und C ′ von Qn , zusammen mit einem perfekten Matching, das einander entsprechende Knoten in C und C ′ verbindet. Fixieren wir eine feste Kopie eines Hamiltonkreises in Qn sowohl in C als auch in C ′ (ein Hamiltonkreis existiert in Qn nach Induktionsvoraussetzung), so erhalten wir einen Hamiltonkreis in Qn+1 , indem wir in den beiden Kreisen zwei Kanten (u, v) und (u′ , v ′ ) durch die Kanten (u, u′ ) und (v, v ′ ) ersetzen (u′ und v ′ bezeichnen die den Knoten u, v ∈ V (C) entsprechenden Knoten in V (C ′ )). Aufgabe 5 (a) Die Anzahl Knoten von Gn ist 2n n (wählt man die n Positionen für die Nullen aus, so sind die übrigen n Positionen für die Einsen festgelegt und umgekehrt). (b) Der Grad jedes Knotens ist offenbar n2 (man kommt zu einem benachbarten Knoten, indem genau eine der n Nullen zu einer Eins, und eine der n Einsen zu einer Null invertiert wird). Nach Satz 2.26 aus der Vorlesung ist ein Graph eulersch, genau dann, wenn er zusammenhängend ist und alle Knotengrade gerade sind. Nun ist n2 gerade, genau dann, wenn n gerade ist. Um zu zeigen, dass Gn genau für alle geraden n ≥ 2 eulersch ist, genügt es zu zeigen, dass Gn für alle n ≥ 1 zusammenhängend ist. Wir beweisen dies, indem wir zeigen, dass je zwei Knoten u und v in Gn durch einen Pfad miteinander verbunden sind. Man sieht leicht ein, dass es genauso viele Stellen gibt, an denen in u eine 0 und in v eine 1 steht, wie Stellen, an denen in u eine 1 und in v eine 0 steht (insbesondere ist die Anzahl Fehlstellen immer gerade). Es bezeichne d(u, v) die Anzahl der Fehlstellen zwischen u und v. Indem wir in u zwei Fehlstellen zwischen u und v invertieren, gelangen wir zu einem Nachbarn u′ von u, für den d(u′ , v) = d(u, v) − 2 gilt. Wiederholen wir dieses Vorgehen, so gelangen wir schliesslich zu einem Knoten mit 0 Fehlstellen, also zu v selbst. Damit ist gezeigt, dass je zwei Knoten u und v durch einen Pfad in Gn miteinander verbunden sind. Aufgabe 6 (a) Der Petersengraph enthält eine Unterteilung des K3,3 (siehe untenstehendes Bild links), aber keine Unterteilung des K5 (dazu müsste er wenigstens fünf Knoten vom Grad vier besitzen). Weiterhin besitzt der Petersengraph den Graphen K3,3 und den K5 als Minoren (den K5 erhält man, indem die im Bild rechts gestrichelten Kanten kontrahiert werden). 3 (b) Eine Richtung des Satzes von Wagner ist offenbar einfach zu beweisen: Wenn ein Graph planar ist, so besitzt er weder einen K3,3 noch einen K5 als Minoren, denn die Minoroperationen erhalten die Planarität (aus einem planaren Graphen wird durch das Löschen und Kontrahieren von Kanten niemals ein nichtplanarer Graph wie der K3,3 oder der K5 ). Für die andere Beweisrichtung brauchen wir das folgende Lemma: Falls ein Graph G eine Unterteilung eines Graphen H enthält, so ist H ein Minor von G. Beweis: Angenommen, G enthält eine Unterteilung H ′ eines Graphen H. Man kann jetzt zunächst alle Kanten aus E(G)\ E(H ′ ) löschen, und anschliessend die “langen” Pfade zu einzelnen Kanten zu kontrahieren, um den gesuchten Minor zu erhalten. Damit ist jetzt auch die andere Beweisrichtung einfach: Angenommen, ein Graph ist nicht planar. Nach dem Satz von Kuratowski besitzt er dann eine Unterteilung des K3,3 oder des K5 als Teilgraphen. Nach obigem Lemma besitzt er dann K3,3 oder K5 als Minoren. Aufgabe 7 (a) Da an jedem Knoten (ausser s und t) die Summe der hereinfliessenden Ströme gleich der Summe der herausfliessenden Ströme ist, berechnet man leicht f (s, g) = 4, f (b, d) = 1, f (b, t) = 1, f (c, d) = 2 und f (g, e) = 3. (b) Die vorzeichenbehaftete Summe der aus s herausfliessenden Ströme liefert val(f ) = 7. (c) Der s-t-Schnitt (S, T ) mit S = {s, g, e} und T = V \ S hat eine Kapazität von cap(S, T ) = 3 + 1 + 1 + 1 + 1 = 7. Da der Wert jedes Flusses kleiner gleich der Kapazität jedes s-t-Schnitts sein muss (Lemma 2.65 aus der Vorlesung), ist der gefundene Fluss bereits maximal. Aufgabe 8 (a) Nach dem Satz von Lagrange teilt die Ordnung jedes Elements die Ordnung der Gruppe. Gibt es also ein Element der Ordnung 6 und ein Element der Ordnung 9, so enthält die Gruppe wenigstens kgV(6, 9) = 18 Elemente. (b) Eine 5-elementige Untergruppe von hZ35 , +35 i ist durch h{0, 7, 14, 21, 28}, +35i gegeben. (c) Es bezeichne n1 die Ordnung von u ◦ v und n2 die Ordnung von v ◦ u. Unter Beachtung der Rechenregeln für Gruppen erhalten wir u ◦ v = u ◦ e ◦ v = u ◦ (v ◦ u)n2 ◦ v = (u ◦ v)n2 ◦ (u ◦ v), also (u ◦ v)n2 = e. Daraus folgt n1 ≤ n2 (die Ordnung von u ◦ v könnte kleiner sein als n2 , aber sicher nicht grösser). Führen wir dasselbe Argument mit vertauschten Rollen, so erhalten wir n1 ≥ n2 , woraus schliesslich n1 = n2 und damit die Behauptung folgt. Aufgabe 9 Um die Anzahl der Elemente in |Z∗n | zu zählen, gehen wir wie folgt vor. Wir streichen alle Elemente aus der n-elementigen Liste 1, 2, . . . , n, die nicht teilerfremd zu n sind. Welche sind dies? Für jeden Primfaktor pi (i = 1, 2, . . . , k) sind zunächst die Zahlen pi , 2pi , 3pi , . . . , n/pi · pi zu streichen, dies sind n/pi verschiedene Zahlen (man beachte, dass damit auch alle Potenzen von pi 4 gestrichen wurden, und damit mehrfach vorkommende Primfaktoren in n nicht gesondert berücksichtigt werden müssen). Damit wurden gewisse Zahlen doppelt gestrichen, und zwar Vielfache von je zwei Primfaktoren. Also fügen wir für je zwei verschiedene Primfaktoren pi und pj die Zahlen pi pj , 2pi pj , 3pi pj , . . . , n/(pi pj )·pi pj wieder hinzu, dies sind n/(pi pj ) verschiedene Zahlen. Vielfache von drei verschiedenen Primfaktoren wurden jetzt dreimal gestrichen und dreimal wieder hinzugefügt, sind also wieder zu streichen. Wenden wir dieses Prinzip (Inklusions-Exklusions-Prinzip) ausschöpfend an, so erhalten wir: X n X X n n ϕ(n) = |Z∗n | = n − + − + ··· pi pi1 pi2 pi1 pi2 pi3 1≤i1 ≤k 1≤i1 <i2 ≤k 1≤i1 <i2 <i3 ≤k X n ··· ± pi1 pi2 · · · pik 1≤i1 <i2 <···<ik ≤k k X =n 1+ (−1)j j=1 =n X 1≤i1 <i2 <···<ij ≤k 1 pi1 pi2 · · · pij k Y i=1 1 1− . pi Aufgabe 10 Es gilt ϕ(n) = 16 · 22, und ℓ = 17 erfüllt die Bedingung kℓ = 1 (mod ϕ(n)). Die Nachricht kann demnach entschlüsselt werden, indem 717 (mod 391) berechnet wird. Wir erhalten 717 = (((72 )2 )2 )2 · 7 = ((492 )2 )2 · 7 = (552 )2 · 7 = 2882 · 7 = 52 · 7 = 364 (mod 391). Aufgabe 11 (a) Dies folgt leicht aus den Gesetzen der Modulo-Rechnung: (m1 ·m2 )k (mod n) = (mk1 (mod n))· (mk2 (mod n)) (mod n). (b) Zu einem k mit ggT(k, ϕ(n)) = 1 lässt sich mittels des erweiterten euklidischen Algorithmus eine Lösung (ℓ, t) der Gleichung kℓ+tϕ(n) = 1 berechnen, es gilt dann also kℓ = 1 (mod ϕ(n)) (ist die gefundene Lösung ℓ negativ, so findet man durch Addition von Vielfachen von ϕ(n) leicht die Lösung im Intervall [0, ϕ(n)−1]). Der öffentliche Schlüssel k muss teilerfremd zu ϕ(n) gewählt werden, damit die diophantische Gleichung kℓ + tϕ(n) = 1 überhaupt eine Lösung besitzt (und der Empfänger also wieder entschlüsseln kann). (c) Ist einem Angreifer ϕ(n) bekannt, so kann er ebenfalls eine Lösung (ℓ, t) der Gleichung kℓ + tϕ(n) = 1 bestimmen und damit jeden Schlüsseltext entschlüsseln. Die Kenntnis der Primzahlen p und q ist dazu nicht notwendig. (d) Wir arbeiten im Exponenten im Restklassenring Zϕ(n) . (e) Bei der Wahl der Primzahlen p und q sind verschiedene Dinge zu beachten, um einem Angreifer das Faktorisieren von n = pq zu erschweren. Einerseits sollte keine der beiden Primzahlen zu klein sein, sonst würde das Ausprobieren kleiner Primteiler schnell zum Erfolg führen. Andererseits sollten die Zahlen p und q nicht in derselben Grössenordnung√liegen, ansonsten faktorisiert ein Angreifer leicht, indem er Primteiler in der Umgebung von n ausprobiert. In dem gegebenen Zahlenbeispiel gilt 777 923 = 881 · 883. 5