Übung zur Vorlesung Diskrete Strukturen I

Ähnliche Dokumente
Systeme II 3. Die Datensicherungsschicht

31 Polynomringe Motivation Definition: Polynomringe

Zahlentheorie I - Tipps & Lösungen. Aktualisiert: 15. Oktober 2016 vers Teilbarkeit

Musterlösung zur Probeklausur zur Angewandten Diskreten Mathematik

Mathematisches Institut II Universität Karlsruhe Priv.-Doz. Dr. N. Grinberg

1 Zahlentheorie. 1.1 Kongruenzen

Grundlagen der Mathematik

Bsp: Die kleinsten Carmichael-Zahlen sind 561, 1105, 1729, Es gibt unendlich viele Carmichael-Zahlen (Beweis 1994).

Algebra. (b) Der Beweis funktioniert analog zu Teil (a), nur daß wir in der Argumentation Z durch R und 2 durch c ersetzen müssen.

5 Grundlagen der Zahlentheorie

$Id: integral.tex,v /05/05 14:57:29 hk Exp hk $ ln(1 + t) 2 = ln 2 ln 3 + ln 2 = ln

Lineare Algebra I 5. Tutorium Die Restklassenringe /n

Bsp. Euklidischer Algorithmus

In diesem Kapitel bestimmen wir die multiplikative Struktur der Einheitengruppe (Z/Z) von Z/Z für eine beliebige positive Zahl Z >0.

8. Musterlösung zu Mathematik für Informatiker II, SS 2004

Vorkurs: Mathematik für Informatiker

Beweis des Satzes von Euler

Musterlösung Zahlentheorie Frühlingssemester 2015, Aufgabenblatt 1

Übung zur Vorlesung Diskrete Strukturen I

2 Polynome und rationale Funktionen

Lösungen der Aufgaben

Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai 2012

Zahlentheorie für den Landeswettbewerb für Anfängerinnen und Anfänger der Österreichischen Mathematik-Olympiade

Zyklische Codes Rechnernetze Übung SS2010

11. Primfaktorzerlegungen

3. Diskrete Mathematik

WS 2009/10. Diskrete Strukturen

ÜBUNGEN ZUR VORLESUNG ZAHLENTHEORIE, SS 2018

Lösung zur 13. Hausübung Algebraische Strukturen (keine Abgabe)

Vorkurs: Mathematik für Informatiker

2008W. Vorlesung im 2008W Institut für Algebra Johannes Kepler Universität Linz

Vorkurs: Mathematik für Informatiker

Karlsruher Institut für Technologie Institut für Algebra und Geometrie

Kongruenz modulo g definiert auf K[x] eine Äquivalenzrelation g : h g f h f ist durch g teilbar, und [f] g ist die Äquivalenzklasse von f.

7 Der kleine Satz von Fermat

Übungen zum Vorkurs Mathematik für Studienanfänger 2009 ***

WURZEL Werkstatt Mathematik Polynome Grundlagen

ggt mit Euklid Satz: Um ggt(k, l) mit dem Euklidischen Algorithmus zu berechnen, braucht man höchstens log Φ k < 3 2 log 2 k rekursive Aufrufe.

Zahlen. Vorlesung Mathematische Strukturen. Sommersemester Zahlen. Zahlen

13 Polynome und Nullstellen

2.2. ELEMENTARE TEILBARKEITSTHEORIE, INTEGRITÄTSBEREICHE 65

$Id: integral.tex,v /05/05 13:36:42 hk Exp $

Kapitel 3: Die Sätze von Euler, Fermat und Wilson. 8 Der Satz von Euler

Übungsblatt 7. Hausübungen

Kapitel 3. Kapitel 3 Gleichungen

Inhalt 2007W. Vorlesung im 2007W

Was bisher geschah...

Übungen zum Vorkurs Mathematik für Studienanfänger Ein leeres Produkt ist gleich 1, eine leere Summe 0. ***

Übungen zum Vorkurs Mathematik für Studienanfänger Ein leeres Produkt ist gleich 1, eine leere Summe 0. ***

Ältere Aufgaben (bis 1998)

Grundlagen der Arithmetik und Zahlentheorie

Kapitel III Ringe und Körper

Folien der 15. Vorlesungswoche

Kapitel 2. Kapitel 2 Natürliche und ganze Zahlen

4. ggt und kgv. Chr.Nelius: Zahlentheorie (SS 2007) 9

Quadrate und Wurzelziehen modulo p

Algebra I. p min{ordp(a),ordp(b)}, p max{ordp(a),ordp(b)}. f = 10X 15, g = 15X 6. p ordp(x), x = v. p ord p(x)+ord p(y) xy = uv.

Hast du auch wirklich versucht, die Aufgaben einmal selbständig zu lösen? Wenn nicht, tue es, bevor du dir die Lösungen anschaust!

Partialbruchzerlegung

Ganzzahlige Division mit Rest

6. Lösungsblatt

Übungen zu Zahlentheorie, SS 2017

Diskrete Mathematik Kongruenzen

Probestudium Übungsblatt 1 -

KAPITEL 13. Polynome. 1. Primfaktorzerlegung in den ganzen Zahlen. ,, p r

Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2015/16

Dies ist der normale Euklidische Algorithmus in K[x]. Der erweiterte Euklidische Algorithmus bestimmt außerdem rekursiv u k, v k K[x] mit

Prof. Dr. H. Brenner Osnabrück SS Zahlentheorie. Vorlesung 3. Der euklidische Algorithmus

n ϕ n

1.2 Eigenschaften der ganzen Zahlen

A N A L Y S I S I F Ü R T P H, U E ( ) 1. Übungstest (FR, ) (mit Lösung )

Chr.Nelius: Zahlentheorie (WS 2006/07) ggt und kgv

Fibonacci-Zahlen und goldener Schnitt

1 Vorbereitung: Potenzen 2. 2 Einstieg und typische Probleme 3

Vorkurs: Mathematik für Informatiker

Brüche, Polynome, Terme

Einführung in die Algebra

Definition 131 Sei R ein (kommutativer) Ring. Ein Polynom über R in der Variablen x ist eine Funktion p der Form

Mathematik macht Freu(n)de im Wintersemester 2018/19

Vorkurs: Mathematik für Informatiker

Diskrete Mathematik. Christina Kohl Georg Moser Oleksandra Panasiuk Christian Sternagel Vincent van Oostrom

3 Primzahlen. j,... stets Primzahlen. 3.1 Satz. Jedes a > 1 ist als Produkt von Primzahlen darstellbar (Primfaktorzerlegung. n=1

Bemerkungen. Gilt m [l] n, so schreibt man auch m l mod n oder m = l mod n und spricht. m kongruent l modulo n.

3 Die g adische Darstellung natürlicher Zahlen

Gleichungen und Ungleichungen

Gleichungen und Ungleichungen

Gleichungen und Ungleichungen

2 Teilbarkeit in Z. (a) Aus a b folgt a b und a b und a b und a b. (b) Aus a b und b c folgt a c.

Zentralübung zur Vorlesung Diskrete Strukturen

Polynome und rationale Funktionen

10. Teilbarkeit in Ringen

Fehlererkennende und fehlerkorrigierende Codes

3. Vorlesung. Arithmetische Theorien.

Übungen zum Vorkurs Mathematik für Studienanfänger Ein leeres Produkt ist gleich 1, eine leere Summe 0. ***

Interim. Kapitel Einige formale Definitionen

Danach arithmetische Fragestellungen wie vollkommene Zahlen und Dreieckszahlen der Griechen.

Beweis des Satzes von Euler

Übung zur Vorlesung Berechenbarkeit und Komplexität

Transkript:

Technische Universität München WS 2002/03 Institut für Informatik Aufgabenblatt 8 Prof. Dr. J. Csirik 2. Dezember 2002 Brandt & Stein Übung zur Vorlesung Diskrete Strukturen I Abgabetermin: Tutorübungen am 12. und 13. Dezember Aufgabe 45 Primzahlen (T) Beweisen Sie folgende Aussagen. Für alle n N mit n 2 gilt: (a) n Primzahl n ( a 1 ) a Z \{0} (Kleiner Satz von Fermat) (b) n Primzahl n ((n 1)! + 1) (Satz von Wilson) Aufgabe 45 (Lösungsvorschlag) Primzahlen (a) In modulo-schreibweise kann man die Behauptung folgendermaßen schreiben: n Primzahl a 1 (mod n) a Z \{0} Wir definieren zunächst die Vielfachen von a mit m = i a für i = 1, 2,..., n 1 und beweisen, dass m m (mod n) i, j N mit 0 < i < j < n gilt. Für zwei beliebige Indices i und j mit j > i gilt: (j i) a 0 (mod n), da sowohl j i als auch a teilerfremd zu n sind. Daraus folgt, dass j a i a (mod n), also m m (mod n) für beliebige 0 < i < j < n. Das bedeutet, dass alle m (mod n) paarweise verschieden sind und somit alle Werte 1, 2,..., n 1 vorkommen müssen. Für das Produkt aller m (mod n) gilt also: m (n 1)! (mod n) Nach Definition der m gilt m = 1a 2a (n 1)a = a (n 1)!. Also muss natürlich auch a (n 1)! bei Division durch n den Rest (n 1)! ergeben. a (n 1)! (n 1)! (mod n) Nach Lemma 3.7 darf man in einer solchen Gleichung kürzen, wenn der Faktor (n 1)! und n teilfremd sind. Offensichtlich gilt ggt(n, (n 1)!) = 1 für Primzahlen n und es folgt a 1 (mod n).

Wir betrachten einen beliebigen Teiler g < n von n = g h. Da a 1 (mod n) für alle a Z \{0} gilt, muss auch g 1 (mod n) bzw. g 1 0 (mod n) gelten. Anders ausgedrückt muss es ein k N geben, so dass gilt: g 1 = k n = k g h g ( g k h ) = 1 Dieses Produkt kann nur 1 sein, wenn beide Faktoren 1 sind. Es folgt also g = 1 (und k = 0, h = n). Der Teiler g von n muss also 1 sein, woraus folgt, dass n eine Primzahl ist. (b) Die Behauptung lautet: n Primzahl (n 1)! 1 (mod n) Nach Satz 3.15 gibt es zu jedem a Z ein eindeutig bestimmtes a Z mit a a 1 (mod p). Wenn es ein a gäbe für das a = a gilt, würde a 1 (mod p) gelten. Daraus folgt a 1 = (a + 1)(a 1) 0 (mod p), was für a = 2, 3,..., p 2 nicht gelten kann, da p sonst (a + 1) oder (a 1) teilen müsste. Es gibt also Paare zwei verschiedener Werte a und a aus {2, 3,..., p 2}, die multipliziert immer 1 (modulo p) ergeben. Es folgt (p 2)! 1 1 = 1 (mod p), woraus wiederum die Behauptung folgt, denn p 1 1 (mod p). (Bemerkung: Für den Spezialfall p = 3 gibt es 0 Paare, die multipliziert 1 ergeben, aber (p 2)! 1 (mod p) gilt dennoch.) Sei n = ab eine zusammengesetzte Zahl größer als 4. Wenn a b, dann teilen sowohl a als auch b die linke Seite (n 1)!, da sie garantiert irgendwann als Faktoren auftauchen. Es gilt also (n 1)! 0 (mod n). Wenn a = b, dann ist n = a. Da 2 < a < 2a < a gilt, kommt a garantiert zweimal als Faktor vor und somit gilt ebenfalls (n 1)! 0 (mod n). Für den Spezialfall n = 4 gilt (n 1)! = 6 2 (mod n). Insgesamt folgt, dass wenn (n 1)! 1 (mod n) gilt, die Zahl n nicht zusammengesetzt sein kann, also prim sein muss. Aufgabe 46 Zaubertrick (H) Beweisen Sie, dass folgender Zaubertrick funktioniert: Schreiben Sie Ihr Geburtsdatum im Format TTMMJJJJ (Tag, Monat, Jahr) auf und subtrahieren Sie davon eine beliebige Permutation Ihres Geburtsdatums. Durch iteriertes Bilden der Quersumme, bis die Zahl einstellig wird, erhält man dann immer entweder 0 oder 9. Hinweis: Beweisen Sie dazu q(n) n (mod 9), wobei n N und q(n) die Quersumme von n bezeichnet. Aufgabe 46 (Lösungsvorschlag) Zaubertrick Wir zeigen zunächst, dass im Dezimalsystem q(n) n (mod 9) gilt. Die Quersumme q ist auf einer Zahl n mit Ziffernfolge z... z folgendermaßen definiert: { z falls m = 1 q(z... z ) = q(z... z ) + z falls m > 1 2

Durch Induktion über m zeigen wir nun, dass gilt: q(z... z ) z... z (mod 9). Für m = 1 ist dies offensichtlich richtig, da q(z ) = z. Nun zum Induktionsschritt: z... z = 10 z... z + z z... z + z = q(z... z ) + z = q(z... z ) (mod 9). Wir definieren das iterierte Bilden der Quersumme wie folgt: { n falls n einstellig ist q (n) = q (q(n)) sonst. Man kann sich überlegen, dass q(n) < n, falls n mehrstellig ist, so dass das iterierte Bilden der Quersumme immer terminiert. Durch Induktion über die Anzahl der Quersummenbildungen zeigen wir nun, dass q (n) n (mod 9). Falls q nur einmal angewandt wird, dann ist n einstellig, und es folgt sofort q (n) = q(n) n (mod 9). Andernfalls gilt q (n) = q (q(n)) und da q auf der rechten Seite eine Anwendung weniger von q beinhaltet, können wir folgern: q (q(n)) q(n) n (mod n). Sein nun g das Geburtsdatum und g eine Permutation des Geburtsdatums. Offensichtlich muss gelten q(g) = q(g ). Außerdem gilt g g q(g) q(g ) = 0 (mod 9). Nach dem oben gezeigten gilt: q (g g ) g g 0 (mod 9). Da aber q (g g ) einstellig ist, kann es nur den Wert 0 oder 9 annehmen. Die Zahl 9 kommt übrigens dadurch zustande, dass wir im Zehnersystem rechnen. Wenn man wie die Mayas in einem System mit der Basis 20 arbeitet, so ergibt sich durch iterierte Quersummenbildung die der 19 entsprechende Ziffer oder die 0. Aufgabe 47 Binomische Formel (mod p) (H) Beweisen Sie, dass folgende Aussage für alle Primzahlen p gilt (a, b Z ): (a + b) a + b (mod p) Aufgabe 47 (Lösungsvorschlag) Binomische Formel (mod p) Nach der binomischen Formel gilt: (a + b) = ( ) p a b k Für k {1, 2,..., n 1} sind alle Summanden durch p teilbar, da der Binomialkoeffizient es ist. Es bleibt ( ) ( ) ( ) p a b p a b p + a b = b + a (mod p) k 0 p 3

Aufgabe 48 ggt und kgv (H) Beweisen Sie, dass folgende Aussage für alle Zahlen a, b N gilt: a b = ggt(a, b) kgv(a, b) Aufgabe 48 (Lösungsvorschlag) ggt und kgv Die Eindeutigkeit der Primfaktorzerlegung führt hier zum Beweis. Nehmen wir zunächst an, dass a = p und b = p mit i j. Dann ist ggt(a, b) = p und kgv(a, b) = p und somit a b = p p = ggt(a, b) kgv(a, b). Für beliebige Zahlen a und b folgt, dass jede Primzahl in a b und ggt(a, b) kgv(a, b) in der gleichen Potenz vorkommt. Aufgabe 49 Farbenspiel (H) Hugo Hacker hat ein neues Computerspiel geschrieben. Der Spieler bewegt 16 rote, 18 gelbe und 20 blaue Spielfiguren in einem Labyrinth. Treffen zwei verschiedenfarbige Spielfiguren aufeinander, nehmen sie beide die dritte Farbe an. Der Spieler hat gewonnen, wenn alle Spielfiguren die gleiche Farbe haben. Anna Algorithma meint, dass dieses Spiel nie gewonnen werden kann. Hat sie Recht? Aufgabe 49 (Lösungsvorschlag) Farbenspiel Seien r = 16, g = 18, b = 20 die Anzahl der roten, gelben und blauen Spielfiguren. Dann gilt für die Differenzen: b g 2 (mod 3) b r 1 (mod 3) g r 2 (mod 3) Treffen nun zwei verschiedenfarbige Spielfiguren aufeinander, so ändert dies an der Gültigkeit obiger Gleichung nichts. Beispiel: Eine rote und eine gelbe Spielfigur treffen sich, dadurch verändern sich die Zahlen wie folgt: r = r 1, g = g 1, b = b + 2. und damit: b g = b g + 3, b r = b r + 3, g r = g r (b g ) mod 3 = (b g + 3) mod 3 = (b g) mod 3 (b r ) mod 3 = (b r + 3) mod 3 = (b r) mod 3 (g r ) mod 3 = (g r) mod 3 Gleiches gilt auch für alle anderen möglichen Zusammentreffen. Damit können nie zwei Farben gleichzeitig Anzahl 0 erreichen. 4

Aufgabe 50 Partialbruchzerlegung (T/H) Bestimmen Sie die Partialbruchzerlegungen der gegebenen Brüche. (T) 2x 2x 4x + 2 (H) x + x 1 x x 2x Aufgabe 50 (Lösungsvorschlag) Partialbruchzerlegung Lösung durch Koeffizientenvergleich: 2x 2x 4x + 2 = x (x 1) = a x 1 + b (x 1) x a(x 1) = (x 1) (x 1) + b (x 1) = ax a + b 1 x + 0 = ax + (b a) (x 1) Damit läßt sich ablesen: a = 1, b a = 0 b = 1, und somit: 2x 2x 4x + 2 = 1 x 1 + 1 (x 1). x + x 1 x x 2x = x + x 1 x(x + 1)(x 2) = a x + Lösung durch Koeffizientenvergleich: x + x 1 x(x + 1)(x 2) b x + 1 + c x 2 = a(x + 1)(x 2) x(x + 1)(x 2) + bx(x 2) x(x + 1)(x 2) + cx(x + 1) x(x + 1)(x 2) = = ax ax 2a + bx 2bx + cx + cx x(x + 1)(x 2) = (a + b + c)x + ( a 2b + c)x 2a x(x + 1)(x 2) 1 x + 1 x 1 = (a + b + c)x + ( a 2b + c)x 2a Und hier läßt sich ablesen: a =, 1 = + b + c, 1 = 2b + c. Ausrechnen liefert: b =, c =, und somit: x + x 1 x x 2x = x x + 1 + x 2. Aufgabe 51 Chinesischer Restsatz (H) Bestimmen sie alle Lösungen von t 1 (mod 5) t 2 (mod 6) mit t {1, 2,..., 100}. 5

Aufgabe 51 (Lösungsvorschlag) Chinesischer Restsatz Seien a = 1, b = 2, m = 5, n = 6. Es gilt ggt(m, n) = 1. Nach dem erweiterten euklidschen Algorithmus gibt es x, y mit mx + ny = 1 = ggt(m, n). Anwendung des Algorithmus liefert x = 1, y = 1. Analog des Beweises zum chinesischen Restsatz (Satz 3.16) setzen wir: t (bmx + any) (mod mn) (2 5 ( 1) + 1 6 1) (mod 30) 26 (mod 30) Damit besitzt obiges Gleichungssystem die Lösungen t = 26, t = 56, t = 86. Aufgabe 52 Cyclic Redundancy Check (CRC) (Z/H) Beim CRC wird eine Nachricht (a,..., a ) von n Bits zusammen mit einer r-bit- Checksumme (p,..., p ) übertragen. Sowohl die Nachricht als auch die Checksumme werden als Polynome a(x) = a x bzw. p(x) = p x im Z [x] aufgefaßt. Die Checksumme wird aus der Nachricht mit Hilfe eines fest vorgegebenen Generatorpolynoms g(x) Z [x] mit grad(g) = r wie folgt berechnet: p(x) ist der Divisionsrest bei Division von a(x)x durch g(x), es gilt also: a(x)x = g(x) t(x) + p(x) a(x)x + p(x) = g(x) t(x), denn wir rechnen in Z! Bei Empfang der Nachricht wird überprüft, ob a(x)x + p(x) durch g(x) teilbar ist. Falls nicht, so ist auf jeden Fall ein Fehler aufgetreten. (a) (Z) Zeigen Sie, dass 1-Bit-Fehler, d.h., ein Bit a ist durch 1 a ersetzt worden, immer erkannt werden, wenn das Generatorpolynom g(x) x ist. (b) (Z) Welche Bedingungen muss man an das Generatorpolynom g(x) stellen, damit alle 2-Bit-Fehler erkannt werden? (c) (Z) Zeigen Sie, dass k-bit-fehler mit k ungerade erkannt werden, falls das Generatorpolynom g(x) die Form (x + 1)q(x) mit q(x) Z [x] hat. (d) (H) Wir nehmen an, dass n = 6, r = 3 und g(x) = x + x + x + 1. Sie erhalten als Nachricht a(x) = x + x + x mit der Checksumme p(x) = x. Überprüfen Sie, ob die Checksumme zur Nachricht passt! Welche Fehler könnten aufgetreten sein (1-Bit, 2-Bit, ungerade Anzahl von Bits)? Aufgabe 52 (Lösungsvorschlag) Cyclic Redundancy Check (CRC) (a) Wir nehmen an, die Nachricht hat einen 1-Bit-Fehler und das ursprüngliche Polynom a ist zu a verändert worden. Dann gilt a (x) = a(x) + x mit m < n. Wir berechnen den Divisionsrest bei der Division von a (x)x +p(x) durch g(x). Es ergibt sich: a (x)x + p(x) = a(x)x + x + p(x) x modulo g(x) Wir führen einen indirekten Beweis und nehmen an, der Fehler würde nicht erkannt. Dann müßte x durch g(x) teilbar sein, d.h., jeder Teiler von g(x) teilt auch x. Da die Zerlegung von Polynomen in irreduzible Faktoren genauso wie die Primfaktorzerlegung eindeutig ist, ergibt sich, dass jeder Teiler von g(x) die Form x hat. Demnach gilt da g den Grad r hat g(x) = x. 6

(b) Ein 2-Bit Fehler hat die Form x + x mit k < m < n, d.h., für das fehlerhafte Polynom a (x) gilt a (x) = a(x) + x + x. Es ergibt sich a (x)x + p(x) = a(x)x + x + x + p(x) x (x + 1) modulo g(x) Es gilt also, zu verhindern, dass Polynome der Form x (x + 1) durch g(x) teilbar sind. Angenommen g(x) teilt x (x + 1). Dann zerfällt g(x) in zwei Faktoren, d.h. g(x) = g (x) g (x), so dass g (x) das Polynom x teilt (damit gilt nach Teilaufgabe (a) g (x) = x für ein geeignetes l) und g (x) das Polynom x + 1 teilt. Falls man folgende Anforderungen an g stellt, so kann man leicht sehen, dass g nicht in Faktoren g, g, wie oben beschrieben, zerfallen kann: g(x) ist nicht durch x teilbar (daraus folgt g (x) = 1 und g g(x) ist kein Teiler von x + 1 für i < n. Das Generatorpolynom x x + 1 für i < 32768. (x) = g(x)). + x + 1 teilt beispielsweise kein Polynom der Form (c) Wir beweisen zunächst durch Induktion über den Grad von s(x), dass ein Polynom der Form (x + 1)s(x) Z [x] eine gerade Anzahl von Koeffizienten ungleich 0 hat. Das bedeutet, dass ein Polynom mit einer ungeraden Anzahl von Koeffizienten ungleich 0 nicht durch (x + 1) teilbar ist. Falls s(x) Grad 0 hat, dann ist s(x) eine Konstante und damit hat (x + 1)s(x) gerade viele Koeffizienten ungleich 0. Falls s(x) den Grad n + 1 hat, so gilt s(x) = x + s (x), wobei grad(s ) < n + 1. Damit ergibt sich (x + 1)s(x) = x + x + (x + 1)s (x), wobei (x + 1)s (x) nach Induktionsvoraussetzung gerade viele Koeffizienten ungleich 0 hat. Wir bezeichnen die Anzahl dieser Koeffizienten mit m. Falls (x + 1)s (x) einen Term x enthält, so hat (x + 1)s(x) m viele Koeffizienten (weil x + x = 0) ungleich 0, andernfalls hat (x + 1)s(x) m + 2 viele Koeffizienten. In jedem Fall ist die Anzahl der Koeffizienten ungleich 0 gerade. Wir nehmen nun an, dass sich eine ungerade Anzahl von Fehlerbits ergeben hat. Es gilt also a (x) = a(x) + u(x), wobei u(x) eine ungerade Anzahl von Koeffizienten ungleich 0 hat. Es gilt: a (x)x + p(x) = a(x)x + u(x)x + p(x) u(x)x modulo g(x), wobei in u(x)x auch wieder ungerade viele Koeffizienten ungleich 0 sind. Dann kann aber u(x)x nicht durch g(x) teilbar sein. Das heißt also, dass ungerade Anzahlen von Fehlerbits immer erkannt werden, gerade Anzahlen werden evtl. nicht erkannt. Ein in der Praxis eingesetztes Verfahren wie CRC-16 benutzt als Generatorpolynom x +x +x +1 und erkennt damit alle 1-Bit-Fehler, alle 2-Bit-Fehler (bis zu einer gewissen Blockgröße), alle k-bit-fehler mit ungeradem k und 1- bis 16-Bit Bursts (also mehrere falsch übertragene Bits in Folge). Außerdem werden auch fast alle 17- und 18-Bit-Bursts erkannt. Die notwendigen Operationen zur Fehlererkennung lassen sich mit shift und XOR-Befehlen effizient in Hardware realisieren. 7

(d) Bei der Division von (x + x + x)x + x = x + x + x + x durch das Generatorpolynom ergibt sich der Divisionsrest 0, die Checksumme passt also prinzipiell zur Nachricht. Es könnte allerdings noch der Fall sein, dass bestimmte Fehler nicht abgefangen werden. Nach Teilaufgabe (a) können wir mit dem Generatorpolynom 1-Bit Fehler erkennen, da g(x) nicht die Form x hat. Demnach kann die Nachricht keinen 1-Bit Fehler enthalten. Damit alle 2-Bit Fehler erkannt werden können, ist es erforderlich, dass kein Polynom der Form x +1 mit k 5 durch g(x) teilbar ist. Für k = 1, 2, 3 ist dies der Fall. Bei Division von x + 1 durch g(x) ergibt sich jedoch Rest 0. Das Polynom x + 1 ist allerdings nicht durch g(x) teilbar. Demnach könnte also x + 1 oder (x + 1)x zur Nachricht addiert worden sein, ohne dabei die Checksumme zu verändern. Es könnte also ein 2-Bit Fehler aufgetreten sein, bei dem die beiden fehlerhaften Bits den Abstand 4 haben. Das Generatorpolynom g(x) ist durch x + 1 teilbar. Demnach werden nach Teilaufgabe (c) alle k-bit Fehler mit ungeradem k erkannt. 8