Algebraische und zahlentheoretische Grundlagen fur die Informatik: Gruppen, Ringe, Körper, Primzahltests, Verschlüsselung 9783658040758, 3658040750, 9783658040741

Informatikerinnen und Informatiker aller Fachrichtungen müssen die grundlegenden Konzepte, Methoden und Verfahren, die d

658 103 4MB

German Pages [230] Year 2014

Report DMCA / Copyright

DOWNLOAD FILE

Polecaj historie

Algebraische und zahlentheoretische Grundlagen fur die Informatik: Gruppen, Ringe, Körper, Primzahltests, Verschlüsselung
 9783658040758, 3658040750, 9783658040741

Citation preview

Kurt-Ulrich Witt

Algebraische und zahlentheoretische Grundlagen für die Informatik Gruppen, Ringe, Körper, Primzahltests, Verschlüsselung

Algebraische und zahlentheoretische Grundlagen für die Informatik

Kurt-Ulrich Witt

Algebraische und zahlentheoretische Grundlagen für die Informatik Gruppen, Ringe, Körper, Primzahltests, Verschlüsselung

Kurt-Ulrich Witt Fachbereich Informatik Hochschule Bonn-Rhein-Sieg Sankt Augustin, Deutschland

ISBN 978-3-658-04074-1 DOI 10.1007/978-3-658-04075-8

ISBN 978-3-658-04075-8 (eBook)

Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar.

Springer Vieweg © Springer Fachmedien Wiesbaden 2014 Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Jede Verwertung, die nicht ausdrücklich vom Urheberrechtsgesetz zugelassen ist, bedarf der vorherigen Zustimmung des Verlags. Das gilt insbesondere für Vervielfältigungen, Bearbeitungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung und Verarbeitung in elektronischen Systemen. Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften. Gedruckt auf säurefreiem und chlorfrei gebleichtem Papier. Springer Vieweg ist eine Marke von Springer DE. Springer DE ist Teil der Fachverlagsgruppe Springer Science+Business Media www.springer-vieweg.de

Vorwort

v

Vorwort Dieses Buch stellt mathematische Grundlagen sowie Anwendungen von Rechenstrukturen vor. Es beginnt im Kapitel 1 mit der Rechenstruktur der ganzen Zahlen, die uns aus der Schule und dem t¨aglichen Leben bekannt ist. Anhand dieser Struktur werden viele Begriffe und Eigenschaften betrachtet, die in sp¨ateren Kapiteln verallgemeinert und abstrakt untersucht werden. Dabei haben endliche Strukturen, die in der Praxis allerdings sehr groß sein k¨onnen, eine besondere Bedeutung. Ausgangspunkt daf¨ur ist das Einteilen der ganzen Zahlen in endlich viele Restklassen. Dementsprechend besch¨aftigen wir uns zun¨achst mit der Teilbarkeit von Zahlen, mit Primzahlen, mit dem gr¨oßten gemeinsamen Teiler sowie mit dem kleinsten gemeinsamen Vielfachen von Zahlen. Wir untersuchen schrittweise wesentliche Eigenschaften dieser Begriffe. Diese Eigenschaften spielen im Verlaufe des Buches an vielen Stellen eine bedeutende Rolle bei der Untersuchung und Anwendung algebraischer Strukturen. In den Kapiteln 2 und 3 werden abstrakte Rechenstrukturen wie Gruppen, Ringe, Integrit¨atsbereiche und K¨orper betrachtet. Insbesondere wird das Rechnen mit endlichen Strukturen auf ein mathematisch solides Fundament gestellt. Außerdem lernen wir mit den Polynomen eine weitere Rechenstruktur kennen, die zum einen Bedeutung f¨ur Anwendungen, wie z.B f¨ur die fehlertolerante Codierung von Daten hat und die zum anderen im Kapitel 4 Ausgangspunkt f¨ur die Betrachtung endlicher K¨orper und deren Erweiterungen ist. Sie helfen dabei, alle endlichen K¨orper zu identifizieren und zu charakterisieren. In den Kapiteln 5, 6 und 7 werden praxisrelevante Probleme betrachtet, die mithilfe der in den vorangehenden Kapiteln erarbeiteten Konzepte und Methoden gel¨ost werden k¨onnen. Wir lernen ein Verfahren zur L¨osung von linearen Kongruenzgleichungssystemen kennen, was uns zum einen bei der modularen Addition und Multiplikation hilft und mit dem wir zum anderen die Fehlerwahrscheinlichkeit des probabilistischen Miller-Rabin-Primzahltests bestimmen k¨onnen. In Kapitel 7 stellen wir mehr oder weniger beispielhaft in der Praxis verwendete Verschl¨usselungsverfahren vor. Diese ben¨otigen sehr große Primzahlen. Da deterministische Primzahltests bei derzeitigen Stand des Wissens zu viel Zeit ben¨otigen, um sie in der Praxis einzusetzen, spielen effiziente probabilistische Tests eine große Rolle. Wir stellen die Grundidee des Miller-Rabin-Tests vor und untersuchen, wie bereits erw¨ahnt, seine Fehlerwahrscheinlichkeit. Das Buch richtet sich an Bachelor-Studierende in Informatik-Studieng¨angen aller Art sowie an Bachelor-Studierende der Mathematik im Haupt- oder Nebenfach. Das Studium dieses Buches vermittelt nicht nur Wissen zu den oben genannten Gebieten, sondern die Auseinandersetzung mit seinen Inhalten schult die F¨ahigkeiten, abstrakt und logisch zu denken, Zusammenh¨ange zu erkennen, sich klar und pr¨azise auszudr¨ucken, neue Probleme anzugehen und zu wissen, wann ein Problem noch nicht vollst¨andig gel¨ost ist. Es liefert ein zeitinvariantes methodisches R¨ustzeug f¨ur die Beschreibung und die L¨osung von Problemen.

vi

Vorwort

Das Buch ist als Begleitlekt¨ure zu entsprechenden Lehrveranstaltungen an Hochschulen aller Art und insbesondere zum Selbststudium geeignet. Jedes Kapitel beginnt mit einer seinen Inhalt motivierenden Einleitung und der Auflistung von Lernzielen, die durch das Studium des Kapitels erreicht werden sollen. Die meisten Beweise sind vergleichsweise ausf¨uhrlich und mit Querverweisen versehen, die die Zusammenh¨ange aufzeigen. Eingestreut sind u¨ ber sechzig Aufgaben, de¨ ren Bearbeitung zur Festigung des Wissens und zum Uben der dargestellten Methoden und Verfahren dienen. Zu fast allen Aufgaben sind am Ende des Buches oder im Text Musterl¨osungen aufgef¨uhrt. Die Aufgaben und L¨osungen sind als integraler Bestandteil des Buches konzipiert. Wichtige Begriffe sind als Marginalien aufgef¨uhrt; der Platz zwischen den Marginalien bietet Raum f¨ur eigene Notizen. Das Schreiben und das Publizieren eines solchen Buches ist nicht m¨oglich ohne die Hilfe und ohne die Unterst¨utzung von vielen Personen, von denen ich an dieser Stelle allerdings nur einige nennen kann: Als Erstes erw¨ahne ich die Autoren der Publikationen, die ich im Literaturverzeichnis aufgef¨uhrt habe. Alle dort aufgef¨uhrten Werke habe ich f¨ur den einen oder anderen Aspekt verwendet. Ich kann sie allesamt f¨ur weitere erg¨anzende Studien empfehlen. Zu Dank verpflichtet bin ich auch vielen Studierenden, deren kritische Anmerkungen in meinen Lehrveranstaltungen zu Themen dieses Buches ich beim Schreiben ber¨ucksichtigt habe. Trotz dieser Hilfen wird das Buch Fehler und Unzul¨anglichkeiten enthalten. Diese verantworte ich allein – f¨ur Hinweise zu deren Beseitigung bin ich dankbar. Die Publikation eines Buches ist nicht m¨oglich ohne einen Verlag, der es herausgibt. Ich danke dem Springer-Verlag f¨ur die Bereitschaft der Publikation und insbesondere Frau Schmickler-Hirzebruch f¨ur ihre Ermunterung zur und ihre Unterst¨utzung bei der Publikation des Buches. Bedburg, im Juni 2014 K.-U. Witt

Inhaltsverzeichnis

vii

Inhaltsverzeichnis 1

2

3

Die Menge der ganzen Zahlen 1.1 Die Rechenstruktur Z . . . . . . . . . . . . . . . . . . . . . . . 1.2 Teilbarkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.1 Division mit Rest . . . . . . . . . . . . . . . . . . . . . 1.2.2 Division ohne Rest . . . . . . . . . . . . . . . . . . . . 1.2.3 Restklassen . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Gr¨oßter gemeinsamer Teiler . . . . . . . . . . . . . . . . . . . 1.3.1 Definitionen und elementare Eigenschaften . . . . . . . 1.3.2 Das Lemma von B´ezout . . . . . . . . . . . . . . . . . 1.3.3 Algorithmen zur Berechnung des gr¨oßten gemeinsamen Teilers . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4 Primzahlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.5 Kleinstes gemeinsames Vielfaches . . . . . . . . . . . . . . . .

1 1 3 3 5 9 12 12 14

Gruppen 2.1 Grundlegende Eigenschaften von Rechenstrukturen 2.2 Definitionen und Beispiele . . . . . . . . . . . . . 2.3 Elementordnungen . . . . . . . . . . . . . . . . . 2.4 Untergruppen . . . . . . . . . . . . . . . . . . . . 2.4.1 Elementare Eigenschaften . . . . . . . . . 2.4.2 Zyklische Gruppen . . . . . . . . . . . . . 2.5 Faktorisierung von Gruppen . . . . . . . . . . . . 2.5.1 Nebenklassen . . . . . . . . . . . . . . . . 2.5.2 Faktorgruppen . . . . . . . . . . . . . . . 2.5.3 Satz von Lagrange . . . . . . . . . . . . . 2.6 Gruppenhomomorphismen . . . . . . . . . . . . . 2.6.1 Beispiele und Definitionen . . . . . . . . . 2.6.2 Kerne von Homomorphismen . . . . . . . 2.6.3 Der Homomorphiesatz f¨ur Gruppen . . . .

16 21 27

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

31 33 35 41 44 44 46 48 49 50 52 55 55 61 64

Ringe, Integrit¨atsbereiche und K¨orper 3.1 Ringe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Integrit¨atsbereiche . . . . . . . . . . . . . . . . . . . . . . . 3.3 K¨orper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4 Unterringe, Unterk¨orper, Ring- und K¨orperhomomorphismen 3.5 K¨orpererweiterungen . . . . . . . . . . . . . . . . . . . . . 3.6 Restklassengruppen und die S¨atze von Euler und Fermat . . 3.7 Polynomringe . . . . . . . . . . . . . . . . . . . . . . . . . 3.8 Irreduzible und prime Elemente . . . . . . . . . . . . . . . 3.9 Teilbarkeit von Polynomen . . . . . . . . . . . . . . . . . . 3.9.1 Gr¨oßter gemeinsamer Teiler von Polynomen . . . . 3.9.2 Polynomringe und Irreduzibilit¨at . . . . . . . . . . . 3.9.3 Nullstellen . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

69 69 72 75 78 79 83 86 88 91 91 95 99

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

viii

Inhaltsverzeichnis

4

5

6

Erweiterungen endlicher K¨orper 4.1 Beispiele . . . . . . . . . . . . . . . . . . . 4.2 Grundlegende Definitionen und Eigenschaften 4.3 Minimalpolynome . . . . . . . . . . . . . . . 4.4 Einheitengruppen endlicher K¨orper . . . . . . 4.5 Charakteristik von K¨orpern . . . . . . . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

105 105 109 111 112 113

Modulare Arithmetik 5.1 Chinesischer Restsatz . . . . . . . . . . . 5.2 Modulare Addition und Multiplikation . . 5.3 Effizientes Potenzieren . . . . . . . . . . 5.4 Primitivwurzeln und diskrete Logarithmen

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

119 119 124 126 129

Primzahltests 6.1 Das Sieb des Eratosthenes 6.2 Wilson-Test . . . . . . . . 6.3 Lucas-Test . . . . . . . . . 6.4 Fermat-Test . . . . . . . . 6.5 Carmichael-Zahlen . . . . 6.6 Miller-Rabin-Test . . . . . 6.7 Der AKS-Test . . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

137 137 139 140 141 147 151 159

¨ Asymmetrische Verschlusselung 7.1 Einwegfunktionen . . . . . . . . . . . . 7.2 Das RSA-Verfahren . . . . . . . . . . . 7.3 Der Diffie-Hellman-Schl¨usselaustausch 7.4 Das ElGamal-Verfahren . . . . . . . . . 7.5 Signaturen . . . . . . . . . . . . . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

165 166 168 175 176 177

A Anhang A.1 Zahlenmengen . . . . . . . . . . . . . . . . . . . . A.2 Alphabete, W¨orter, Sprachen . . . . . . . . . . . . A.3 Relationen und Funktionen . . . . . . . . . . . . . A.4 Spezielle Funktionen sowie Summen und Produkte A.5 Vektorr¨aume . . . . . . . . . . . . . . . . . . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

181 181 181 182 183 185

7

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

L¨osungen zu den Aufgaben

187

Literatur

215

Stichwortverzeichnis

217

Die Menge der ganzen Zahlen

1

1

Die Menge der ganzen Zahlen

Dieses Lehrbuch besch¨aftigt sich mit Rechenstrukturen. Eine Rechenstruktur, die wir von der Schule her und aus dem t¨aglichen Leben kennen, ist die Menge der ganzen Zahlen. Diese Zahlen sowie das Rechnen mit ihnen ben¨otigen wir im Verlaufe der Besch¨aftigung mit weiteren Rechenstrukturen als Hilfsmittel, um deren Eigenschaften zu beschreiben. So schreibt man bekanntermaßen 5a an3 stelle von a + a + a + a + a und rechnet 5a + 3a = 8a, und man schreibt b f¨ur 3 10 3+10 13 = b ; des Weiteren werden wir das Konzept b · b · b und rechnet b · b = b des gr¨oßten gemeinsamen Teilers von zwei Zahlen und dessen Eigenschaften ben¨otigen, um Eigenschaften von abstrakten Rechenstrukturen, wie z.B. Gruppen zu beschreiben und zu untersuchen. Deshalb beginnen wir dieses Lehrbuch mit der Rechenstrukur (Z, +, ·) der ganzen Zahlen mit Addition und Multiplikation. Dabei begegnen uns auch eine Reihe von Begriffen und Methoden, die wir sp¨ater verallgemeinern und in abstrakterem Sinn betrachten werden. Insofern dient die Betrachtung der ganzen Zahlen auch einer Einf¨uhrung in das algebraische Denken, was in sp¨ateren Kapiteln weitergehend geschult wird. Nach dem Durcharbeiten dieses Kapitels sollten Sie •

die Rechengesetze der Rechenstruktur der ganzen Zahlen kennen,



die Begriffe Teilbarkeit mit und ohne Rest und deren Eigenschaften kennen und erkl¨aren k¨onnen,



Restklassen und das Rechnen mit Restklassen verstehen,



den Begriff des gr¨oßten gemeinsamen Teilers von zwei ganzen Zahlen kennen,



Algorithmen zur Berechnung des gr¨oßten gemeinsamen Teilers anwenden k¨onnen,



den Fundamentalsatz der Zahlentheorie beweisen und eine ganze Zahl faktorisieren k¨onnen,



den Begriff des kleinsten gemeinsamen Vielfachen und dessen Zusammenhang zum Begriff des gr¨oßten gemeinsamen Teilers kennen.

1.1

Lernziele

Die Rechenstruktur Z

Die Menge Z = {. . . , −2, −1, 0, 1, 2, . . .} stellt eine Rechenstruktur zur Verf¨ugung, in der unbeschr¨ankt addiert und multipliziert werden kann. Diese beiden zweistelligen Operationen sind assoziativ, d.h. es gilt (a + b) + c = a + (b + c) bzw. (a · b) · c = a · (b · c) f¨ur alle ganzen Zahlen a, b, c ∈ Z. Die Reihenfolge des

K.-U. Witt, Algebraische und zahlentheoretische Grundlagen für die Informatik, DOI 10.1007/978-3-658-04075-8_1, © Springer Fachmedien Wiesbaden 2014

Assoziativit¨at

2

Teilbarkeit

Ausrechnens einer mehrfachen Summe bzw. eines mehrfachen Produkts spielt also keine Rolle; die Klammern k¨onnen also auch weggelassen werden. Kommutativit¨at

Addition und Multiplikation ganzer Zahlen sind kommutative Verkn¨upfungen, d.h. es gilt a + b = b + a bzw. a · b = b · a f¨ur a, b ∈ Z, d.h. die Operanden k¨onnen vertauscht werden.

Distributivit¨at

Die Distributivit¨at gibt eine M¨oglichkeit f¨ur das Ausrechnen von Ausr¨ucken an, in denen addiert und multipliziert wird: F¨ur a, b, c ∈ Z gilt a · (b + c) = a · b + a · c und (a + b) · c = a · c + b · c. Wir vereinbaren, dass die Multiplikation st¨arker bindet“ als die Addition, d.h. ” es ist a + (b · c) = a + b · c und im Allgemeinen ist a + b · c = (a + b) · c. Aufgrund dieser Vereinbarung k¨onnen Klammern eingespart werden. So schreiben wir z.B. in aller Regel a · b + c · d anstelle von (a · b) + (c · d). Das Multiplikationssymbol wird oft weggelassen. So schreibt man beispielsweise ab anstelle von a · b und a(b + c) anstelle von a · (b + c).

Additives Einselement

Die Zahl 0 ist das neutrale Element der Addition, auch additives Einselement genannt, denn es gilt f¨ur alle a ∈ Z: a+0=0+a=a

Multiplikatives Einselement

(1.1)

Die Zahl 1 ist das neutrale Element der Multiplikation, auch multiplikatives Einselement genannt, denn es gilt f¨ur alle a ∈ Z: a·1=1·a=a

(1.2)

Die beiden Einselemente sind eindeutig, d.h. es gibt genau ein additives und genau ein multiplikatives Einselement, n¨amlich 0 und 1 mit den Eigenschaften (1.1) bzw. (1.2). Diese Eindeutigkeit werden wir in Kapitel 2 noch allgemein f¨ur bestimmte Rechenstrukturen, zu denen auch die ganzen Zahlen geh¨oren, nachweisen. Inverses

Jedes Element a ∈ Z besitzt bez¨uglich der Addition ein Inverses, n¨amlich −a ∈ Z, denn es gilt a + −a = 0. Anstelle von a + −b schreibt man in der Regel a − b f¨ur alle a, b ∈ Z. Bez¨uglich der Multiplikation besitzen nur die Elemente 1 und −1 ein Inverses, n¨amlich sich selbst, denn es gilt 1 · 1 = 1 bzw. −1 · −1 = 1. Zu allen anderen Elementen a ∈ Z − {1, −1} existiert kein multiplikatives Inverses, denn es gibt kein b ∈ Z mit a · b = 1.

¨ Kurzungsregel

Trotz der fehlenden Inversen gilt beim Rechnen mit den ganzen Zahlen die K¨urzungsregel: F¨ur a, b, c ∈ Z mit c = 0 gilt: Ist a · c = b · c, dann folgt a = b. Aus a · c = b · c folgt n¨amlich (a − b) · c = 0. Da c = 0 ist, folgt, dass a − b = 0 und damit dass a = b sein muss.

Die Menge der ganzen Zahlen

1.2

3

Teilbarkeit

Trotz des Fehlens der multiplikativen Inversen sollen in Z Gleichungen der Art ax = b −1

gel¨ost werden k¨onnen. Wenn a nicht invertierbar ist, kann nicht einfach x = a b gerechnet werden. Wenn a aber ein Teiler von b ist, d.h. wenn es ein Element q gibt mit b = aq, dann l¨asst sich wegen der G¨ultigkeit der K¨urzungsregel die Gleichung l¨osen. Aus ax = b = aq folgt n¨amlich x = q. Wenn a also ein Teiler von b ist, dann besitzt die obige Gleichung eine L¨osung. So ist die Gleichung 2x = 3 in Z nicht l¨osbar, denn 2 ist kein Teiler von 3; hingegen ist die Gleichung 7x = 35 l¨osbar, denn, da 7 ein Teiler von 35 ist, l¨asst sich die Gleichung umschreiben zu 7x = 7 · 5, woraus mit der K¨urzungsregel x = 5 folgt. Es lohnt also, sich mit der Teilbarkeit von ganzen Zahlen und deren Eigenschaften zu besch¨aftigen.

1.2.1

Division mit Rest

Bez¨uglich der Division von ganzen Zahlen gilt folgende fundamentale Eigenschaft: Jede ganze Zahl a ∈ Z, der Dividend, kann durch eine nat¨urliche Zahl b ∈ N, den Divisor, geteilt werden; das Ergebnis ist ein Quotient q ∈ Z sowie ein kleinster Rest r ∈ N0 , der gr¨oßer gleich 0 und echt kleiner b ist. So gilt z.B.: Division von Dividend 39 durch Divisor 7 ergibt den Quotient 5 und den Rest 4, d.h. es gilt 39 = 7 · 5 + 4 Die Division von −39 durch 7 ergibt den Quotient −6 und den Rest 3: −39 = 7 · −6 + 3 Zu beachten ist, dass der (kleinste) Rest immer gr¨oßer gleich 0 und echt kleiner dem Divisor sein muss.



¨ Ubungsaufgaben

1.1 Rechnen Sie selber ein paar Aufgaben mit positiven und negativen Divi¨ denden! Uberpr¨ ufen Sie an Ihren Beispielen, dass Folgendes gilt: Ist a=b·q+r

(1.3)

f¨ur a, b ∈ N und q, r ∈ N0 mit 0 < r < b, dann ist −a = b · −(q + 1) + b − r und 0 < b − r < b.

(1.4)

Dividend Divisor Quotient Rest

4

Teilbarkeit

Nun ja: Wir setzen f¨ur a in (1.4) die rechte Seite von (1.3) ein und erhalten −a = −(b · q + r) = −b · q − r = −b · q − b + b − r = −b · (q + 1) + b − r und, da 0 < r < b ist, ist zudem 0 < b − r < b. Wenn wir also unter den gemachten Voraussetzungen −a durch b teilen, dann ist der Quotient −(q + 1) und der Rest ist b − r – der Rest muss ja positiv sein. Der folgende Satz stellt eine allgemein g¨ultige Behauptung u¨ ber die Division mit Rest auf, die dann im folgenden Beweis verifiziert wird. Division mit Rest

Satz 1.1 Sei a ∈ Z und b ∈ N, dann gibt es eindeutig zwei Zahlen q ∈ Z und r ∈ N0 mit 0 ≤ r < b und a = bq + r. Beweis F¨ur a ∈ Z und b ∈ N sei a = max {q ∈ Z | qb ≤ a < (q + 1)b} b     Es ist z.B. 43 = 1 sowie − 43 = −2. Wir zeigen nun, dass genau die Zahlen a und r = a − bq q= b

(1.5)

die Bedingungen des Satzes erf¨ullen. Einerseits erf¨ullen q und r die Gleichung a = bq + r, denn es gilt mit (1.5): a a +a−b· =a bq + r = b · b b Andererseits sei a = bq + r, d.h. r = a − bq sowie 0 ≤ r <  Daraus folgt  b. 0 ≤ a − bq < b und hieraus qb ≤ a < (q + 1)b und damit q = ab . Damit haben wir die Existenz zweier Zahlen q und r gezeigt, die die beiden Bedingungen des Satzes erf¨ullen. Nun zeigen wir die Eindeutigkeit, d.h. diese beiden Zahlen sind die einzigen Zahlen, die den Satz erf¨ullen. Dazu nehmen wir an, es gebe q1 , q2 , r1 , r2 mit r1 = r2 , so dass a = q1 b + r1 , 0 ≤ r1 < b a = q2 b + r2 , 0 ≤ r2 < b

(1.6) (1.7)

ist. Da laut Annahme r1 = r2 ist, muss entweder r1 < r2 oder r1 > r2 sein. Wir nehmen an, dass r1 < r2 ist (die Betrachtung des anderen Falls erfolgt analog). Dann gilt wegen (1.6) und (1.7): 0 < r2 − r1 < b

(1.8)

Durch Subtraktion der Gleichungen (1.6) und (1.7) erhalten wir die Gleichung 0 = (q1 − q2 )b + r1 − r2 und daraus (q1 − q2 )b = r2 − r1 und daraus mit (1.8)

Die Menge der ganzen Zahlen

5

0 < (q1 − q2 )b < b und hieraus, da b ∈ N ist, mithilfe der K¨urzungsregel 0 < q1 − q2 < 1. Diese Ungleichung kann aber nicht wahr sein, denn die Differenz q1 − q2 zweier ganzer Zahlen q1 und q2 kann nicht eine (nicht ganze) Zahl sein, die echt zwischen 0 und 1 liegt. Die Annahme r1 = r2 muss somit falsch sein, d.h. es gilt r1 = r2 . Aus (1.6) und (1.7) folgt dann unmittelbar, dass auch q1 = q2 gelten muss. Damit ist auch die Eindeutigkeit gezeigt. 2 Die folgende Aussage ist eine Folgerung aus dem obigen Satz, die wir schon in ¨ Ubung 1.1 bewiesen haben. Korollar 1.1 Ist a = b · q + r f¨ur a, b ∈ N und q, r ∈ N0 mit 0 < r < b, dann ist −a = b · −(q + 1) + b − r und 0 < b − r < b. 2 Viele Programmiersprachen stellen f¨ur die Berechnung des Quotienten und des Restes f¨ur zwei Zahlen a ∈ Z und b ∈ N Operatoren zur Verf¨ugung; diese werden oft div und mod genannt und wie folgt angewendet: q=div(a,b) oder q=a div b bzw. r=mod(a,b) oder r=a mod b.

1.2.2

Division ohne Rest

Definition 1.1 Eine ganze Zahl a ist teilbar durch eine ganze Zahl b = 0 genau dann, wenn eine ganze Zahl q existiert, so dass a = b · q gilt; b heißt Teiler von a. Wir verwenden daf¨ur die Schreibweise b|a. Ist b kein Teiler von a, dann schreiben wir b |a. Wir legen fest, dass Null ein Teiler von sich selber ist: 0|0. 2

Teiler

Im folgenden Korollar werden einige elementare Eigenschaften der Teilerrelation aufgelistet. Korollar 1.2

Es seien a, b, c, d ∈ Z, dann gelten folgende Aussagen:

a) 0|a genau dann, wenn a = 0: Das additive Einselement ist nur ein Teiler von sich selbst. b) a|0: Das additive Einselement wird von jedem Element geteilt. c) 1|a und a|a: Jedes Element wird vom multiplikativen Einselement und von sich selbst geteilt. 1 und a sind die trivialen Teiler von a. d) Gilt a|b und b|c, dann auch a|c: Die Teilbarkeitsrelation ist transitiv. e) Gilt a|b und c|d, dann auch ac|bd. f) Gilt ca|cb f¨ur c = 0, dann auch a|b. g) Gilt a|b und a|c, dann auch a|xb + yc f¨ur alle x, y ∈ Z: Teilt a die Elemente b und c, dann auch jede Linearkombination von b und c. h) Gilt a|b und a|b + c, dann gilt auch a|c. i) Gilt a = bc + d und b|a, dann gilt b|d. j) Gilt a|b und b|a, dann ist a = b oder a = −b. k) Gilt bc|a, dann gilt b|a und c|a.

Triviale Teiler

6

Teilbarkeit

Beweis a) folgt unmittelbar aus der Definition. b) F¨ur a = 0 haben wir die Eigenschaft in der Definition explizit festgelegt. F¨ur a = 0 existiert q = 0 mit 0 = a · q. c) Es gilt a = 1 · a bzw. a = a · 1. d) Es gibt p, q ∈ Z mit b = ap bzw. c = bq, woraus c = apq folgt. Somit gibt es r = pq ∈ Z mit c = ra, also gilt a|c. e) Es gibt p, q ∈ Z mit b = ap bzw. d = cq. Es folgt bd = ac · pq, woraus ac|bd folgt. f) Es gibt q ∈ Z mit cb = ca · q. Daraus folgt mit der K¨urzungsregel b = aq und daraus a|b. g) Es gibt qb , qc ∈ Z mit b = aqb bzw. c = aqc . Es folgt, dass x · b = x · aqb und y · c = y · aqc f¨ur alle x, y ∈ Z gilt. Daraus folgt xb + yc = a(xqb + yqc ). Da xqb + yqc ∈ Z ist, folgt a|xb + yc. h) Es gibt p, q ∈ Z mit b = ap bzw. b + c = aq. Daraus folgt ap + c = aq und daraus c = a(q − p) und daraus die Behauptung. i) Es gibt q ∈ Z mit a = bq. Damit folgt bq = bc + d und damit b · (q − c) = d, woraus b|d folgt. j) Es gibt p, q ∈ Z mit b = qa bzw. a = pb. Es folgt a = pqa und daraus mit der K¨urzungsregel pq = 1, d.h. p und q sind invers zueinander. Aus Kapitel 1.1 wissen wir, dass in Z nur die Elemente 1 und −1 invertierbar und dass sie selbstinvers sind. Damit folgt p = q und p = 1 oder p = −1, womit die Behauptung gezeigt ist. k) Es gibt q ∈ Z mit a = bc · q. Es folgt, dass a = b · cq und dass a = c · bq und damit b|a und c|a gilt. 2 Teilermenge Echter Teiler

Definition 1.2 F¨ur a ∈ Z sei T (a) = {x ∈ Z | x|a} die Menge der Teiler von a, und T+ (a) = {x ∈ T (a) | x ≥ 0} die Menge der positiven Teiler von a. Mit ∗ T (a) = T+ (a) − {1, a} bezeichnen wir die Menge der echten Teiler von a. 2 Aus dem Korollar 1.2 k¨onnen folgende Aussagen unmittelbar abgeleitet werden. Korollar 1.3

Sei a ∈ Z, dann gilt

a) 0 ∈ T (0), aber 0 ∈ / T (a) f¨ur alle a = 0, b) T (0) = Z, T+ (1) = {1},

  c) 1, a ∈ T (a), 1, a ∈ T+ (a), T+ (a) ≥ 2 f¨ur a ∈ N mit a ≥ 2.

Primzahl

Definition 1.3 a) p ∈ N heißt Primzahl genau dann, wenn p genau zwei positive Teiler hat. Wir wollen mit P die Menge der Primzahlen bezeichnen.

Zusammengesetzte Zahlen

b) Nat¨urliche Zahlen, die keine Primzahlen sind, heißen zusammengesetzt.

Primteiler

P

c) T (a) = {p ∈ P | p|a} ist die Menge der Primteiler von a. Aus der Definition und den vorherigen Korollaren folgt unmittelbar

2

Die Menge der ganzen Zahlen

7

Korollar 1.4 F¨ur p ∈ P gilt:   a) T+ (p) = {1, p} und damit T+ (p) = 2, b) 1 ∈ / P, P

c) T (p) = {p}

2

In sp¨ateren Kapiteln besch¨aftigen wir uns mit einigen wichtigen Eigenschaften von Primzahlen und mit Primzahltests. Dabei spielt die Folge 4 −1 , n ∈ N0 3 n

an =

(1.9)

eine wichtige Rolle. Lemma 1.1

F¨ur q ∈ R, q = 1 gilt  n

q

i

q =

i=0

−1 q−1

n+1

Beweis Wir setzen  n

Sn(q) =

q

i

i=0

Dann gilt  n+1

Sn(q) + q

n+1

=

 n+1

i

0

q =q +

i=0

 n

i

q =1+

i=1

i=0

 n

q

i+1

=1+q·

q

i

i=0

= 1 + q · Sn(q) woraus q

n+1

− 1 = (q − 1) · Sn(q) und daraus Sn(q) =

q

−1 q−1

n+1

2

folgt, und die Behauptung ist gezeigt. F¨ur ganze Zahlen b ∈ Z gilt  n

i

b ∈Z

i=0

Hieraus folgt mit Lemma 1.1 unmittelbar

8

Teilbarkeit

Korollar 1.5 F¨ur b ∈ Z, b = 1, gilt f¨ur alle n ∈ N0 : a)

b −1 ∈Z b−1 n

b) b − 1|b − 1 und n

 n−1

n

b − 1 = (b − 1) ·

b

i

i=0

c)

2n

b −1 b −1 b +1 · ∈Z = b−1 b+1 b2 − 1 n

n

2

Wir kommen nun auf die Folge (1.9) zur¨uck: an kann unterschiedlich dargestellt werden 2n

4 −1 2 −1 (2 − 1)(2 + 1) 4 −1 = = 2 = 3 4−1 2 −1 3 n

an =

n

n

n

(1.10)

Wenn wir in Korollar 1.5 c) b = 2 setzen, erhalten wir unmittelbar Korollar 1.6 F¨ur alle n ∈ N0 gilt an ∈ N0 .

2

Wir betrachten nun die beiden Faktoren in (1.10) noch etwas genauer. Korollar 1.7 (1) F¨ur n ∈ G+ ist 3|2 − 1 und (2) f¨ur n ∈ U+ ist 3|2 + 1. n

n

2k

Beweis (1) Sei n ∈ G+ , also n = 2k, k ∈ N0 . Dann ist 2 −1 = 2 −1 = 4 −1 und aus Korollar 1.5 b) folgt, wenn wir b = 4 setzen, sofort die Behauptung. n

k

(2) Sei n ∈ U+ , also n = 2k + 1, k ∈ N0 . Dann ist n

2k+1

2 −1=2

2k

k

k

+ 1 = 2 · 2 + 1 = 2 · (2 − 1) + 3 = 2(4 − 1) + 3

Wegen Korollar 1.5 b) gilt 3|4 − 1, außerdem ist 3|3, daraus folgt mit Korollar k 1.2 g) 3|2(4 − 1) + 3 und damit die Behauptung. 2 k

Die Folge an hat eine wichtige Eigenschaft, die wir, wie schon erw¨ahnt, sp¨ater im Zusammenhang mit Primzahltests verwenden werden: Ihre Elemente sind keine Primzahlen. / P. Satz 1.2 Sei n ∈ N, n ≥ 3, dann ist an ∈ Beweis Aus Korollar 1.6 wissen wir, dass (2 − 1)(2 + 1) ∈ N0 3 gilt. Des Weiteren gilt f¨ur n ≥ 3 n

n

an =

2 +1 2 −1 > >1 3 3 Insgesamt folgt, dass an f¨ur n ≥ 3 eine zusammengesetzte Zahl, also nicht prim ist, was zu zeigen war. 2 n

n

Die Menge der ganzen Zahlen

1.2.3

9

Restklassen

Wir betrachten nun f¨ur m ∈ N die Relation ≡m ⊆ Z × Z definiert durch a ≡m b genau dann, wenn m|a − b Korollar 1.8

(1.11)

¨ a) Die Relation ≡m ist eine Aquivalenzrelation.

b) Es gilt a ≡m b genau dann, wenn a und b bei Division durch m denselben Rest haben. ¨ ¨ c) Diese Aquivalenzrelation hat den Index m. Die m Aquivalenzklassen sind gegeben durch [ r ]≡ = {r + mx | x ∈ Z}, 0 ≤ r ≤ m − 1 m

(1.12)

Beweis a) Wir m¨ussen zeigen, dass die Relation ≡m reflexiv, symmetrisch und transitiv ist. F¨ur alle a ∈ Z gilt m|a − a, also gilt a ≡m a f¨ur alle a ∈ Z, damit ist ≡m reflexiv. Sei a ≡m b, dann gilt m|a − b, woraus m|(−1) · (a − b), also m|b − a folgt, und damit ist b ≡m a, und damit ist ≡m symmetrisch. Sei a ≡m b und b ≡m c, also m|a − b und m|b − c, mit Korrollar 1.2 g) folgt m|(a − b) + (b − c), also m|a − c, damit ist a ≡m c, ≡m ist also transitiv. b) ⇒“: Gem¨aß Satz 1.1 gibt es qa , qb , ra , rb mit a = m · qa + ra bzw. mit ” b = m · qb + rb und 0 ≤ ra , rb < m. Wir nehmen an, dass ra = rb ist, und betrachten den Fall rb < ra (der Fall ra < rb folgt analog). Wir erhalten a − b = m · (qa − qb ) + (ra − rb ) mit 0 < ra − rb < m. Nach Voraussetzung ist m|a − b, gem¨aß Korollar 1.2 i) muss dann auch m|ra − rb sein, was ein Widerspruch zu 0 < ra − rb < m bedeutet. Damit ist unsere Annahme ra = rb falsch, und die Behauptung ist gezeigt. ⇐“: Gem¨aß Satz 1.1 gibt es qa , qb , r mit a = m · qa + r bzw. mit b = m · qb + r ” und 0 ≤ r < m. Daraus folgt a − b = m · (qa − qb ), damit m|a − b und damit a ≡m b. c) folgt unmittelbar aus b) und der Tatsache, dass bei Division durch m die Reste 0, 1, 2, . . . , m − 1 entstehen. 2 Definition 1.4

a) F¨ur m ∈ N und r ∈ N0 mit 0 ≤ r ≤ m − 1 heißt

Restklasse modulo m

r + mZ = {r + mx | x ∈ Z} Restklasse modulo m mit Repr¨asentant r. b) F¨ur a, b ∈ r + mZ schreiben wir im Folgenden a = b (m).

2

Aus Korollar 1.8 a) folgt unmittelbar Korollar 1.9

Es sei a, b ∈ Z, m ∈ N und r ∈ N0 mit 0 ≤ r ≤ m − 1, dann gilt

a) [ r ]≡ = r + mZ, m

b) a = b (m) gilt genau dann, wenn a ≡m b gilt.

2

Repr¨asentant einer Restklasse

10

Teilbarkeit

In Gleichungsketten, in denen modulo m gerechnet wird, f¨uhren wir den Modul m nur einmal am Ende auf. Es gilt also z.B. 3 · 7 = 6 · 6 = 6 = 5 + 11 = 1 (5) Bei diesem Beispiel f¨allt auf, dass das Ergebnis unabh¨angig davon ist, ob zuerst die Operanden verkn¨upft werden und dann der Rest des Ergebnisses bei Division durch m genommen wird oder ob zuerst die Reste der Operanden bei Division durch m berechnet und dann diese miteinander verkn¨upft werden. So gilt im obigen Beispiel einerseits 3 · 7 = 21 = 1 (5) und andererseits 3 · 7 = 3 · 2 = 6 = 1 (5) genau so wie einerseits 6 · 6 = 36 = 1 (5) und andererseits 6 · 6 = 1 · 1 = 1 (5) als auch einerseits 5 + 11 = 11 = 1 (5) und andererseits 5 + 11 = 0 + 1 = 1 (5). Der folgende Satz besagt, dass diese Eigenschaft allgemein f¨ur das Rechnen mit Resten gilt. Satz 1.3 Sei m ∈ N sowie a, b, c, d ∈ Z mit a = b (m) und c = d (m). Es gilt (1) −a = −b (m), (2) a + c = b + d (m), (3) a − c = b − d (m), (4) a · e = b · e (m) f¨ur alle e ∈ Z sowie (5) a · c = b · d (m). Beweis (1) Aus a = b (m) folgt, m|a − b. Daraus folgt m|(−1) · (a − b), und daraus m|(−a) − (−b), und damit gilt −a = −b (m). (2) Es gilt m|a − b sowie m|c − d. Es folgt: m|(a − b) + (c − d) und damit m|(a + c) − (b + d), woraus die Behauptung a + c = b + d (m) folgt. (3) folgt unmittelbar aus (1) und (2). (4) Aus m|a−b folgt m|(a−b)·e und damit m|a·e−b·e, woraus die Behauptung a · e = b · e (m) folgt. (5) Wegen (4) gilt a · c = b · c (m) sowie b · c = b · d (m), woraus wegen der Ttransitivit¨at die Behauptung a · c = b · d (m) folgt. 2 Der Satz besagt, dass die modulo-Addition und -Multiplikation unabh¨angig vom Repr¨asentanten ist, den man aus den Restklassen w¨ahlt. Die modulo-Relation ist also vertr¨aglich mit der Addition und der Multiplikation; die modulo-Relation Kongruenzrelation wird deswegen auch Kongruenzrelation genannt. Bemerkung 1.1 Eine zu Satz 1.3 (4) analoge Aussage gilt im Allgemeinen bei der Division nicht. So gilt z.B. 3 · 2 = 5 · 2 (4), aber es gilt nicht 3 = 5 (4). Auf diese Problematik gehen wir in Korollar 1.13 ein. 2

Die Menge der ganzen Zahlen



11

¨ Ubungsaufgaben

1.2 (1) Zeigen Sie: Ist k, m ∈ N, a, b ∈ Z, a = b (m) und k|m, dann gilt a = b (k). (2) Zeigen Sie: Ist m ∈ U+ , 2 = 2 (m), dann gilt auch 2 = 2 (2m). m

m

(3) Zeigen sie, dass f¨ur alle a, b ∈ Z und p ∈ P p

p

p

(a + b) = a + b (p) gilt! (4) Sei p ∈ P, p ≥ 3,  ∈ N,  ≥ 2, und a ∈ Z. Zeigen Sie, dass dann p−2

(1 + ap)

= 1 + ap

−1



(p )

gilt! (5) Sei  ∈ N,  ≥ 3, und a ∈ Z. Zeigen Sie, dass dann 2−3

(1 + 4a)

−1



= 1 + 2 a (2 )

gilt! (6) Sei a, b ∈ Z mit a = b. Zeigen Sie: a − b|a − b f¨ur alle n ∈ N0 ! n

n

2

¨ Aus Satz 1.3 ergibt sich die M¨oglichkeit, auf den Aquivalenzklassen modulo m eine Addition ⊕mZ und eine Multiplikation ⊗mZ wie folgt einzuf¨uhren [ a ]m ⊕mZ [ b ]m = [ a + b ]m [ a ]m ⊗mZ [ b ]m = [ a · b ]m oder mit der a¨ quivalenten Notation gem¨aß Korollar 1.8 c) und Definition 1.4 a): (a + mZ) ⊕mZ (b + mZ) = (a + b) + mZ (a + mZ) ⊗mZ (b + mZ) = (a · b) + mZ Wenn wir mit Z/mZ = {mZ, 1 + mZ, . . . , (m + 1) + mZ} ¨ die Menge der Aquivalenzklassen modulo m bezeichnen, dann bekommen wir mit obigen Definitionen f¨ur jedes m ∈ N, m ≥ 2, eine neue Rechenstruktur (Z/mZ, ⊕mZ , ⊗mZ ) Diese Rechenstrukturen haben in der Informatik, insbesondere auch in Anwendungen, eine immense Bedeutung. Wir untersuchen solche Strukturen in Kapitel 2, insbesondere in Abschnitt 2.5, aus abstrakter Sicht und betrachten dann die Strukturen (Z/mZ, ⊕mZ , ⊗mZ ) in konkreten Beispielen.

12

Gr¨oßter gemeinsamer Teiler

1.3

Gr¨oßter gemeinsamer Teiler

Der gr¨oßte gemeinsame Teiler von zwei ganzen Zahlen ist in vielen Bereichen der Zahlentheorie und der Algebra von elementarer Bedeutung. Einige seiner Anwendungen werden wir in sp¨ateren Kapiteln noch kennen lernen.

1.3.1

Gr¨oßter gemeinsamer Teiler

Definitionen und elementare Eigenschaften

Definition 1.5 a) Es sei a, b ∈ Z mit a = 0 oder b = 0, dann heißt die Zahl t ∈ N gr¨oßter gemeinsamer Teiler von a und b genau dann, wenn (1) t ein gemeinsamer Teiler von a und b ist, d.h. es gilt t|a und t|b, (2) alle weiteren gemeinsamen Teiler t von a und b auch t teilen, d.h. es gilt: ist t |a und t |b, dann ist auch t |t. F¨ur den gr¨oßten gemeinsamen Teiler t von a und b verwenden wir die Schreibweise t = (a, b). F¨ur den Fall a = 0 und b = 0 setzen wir (0, 0) = 0.

Teilerfremdheit Relative Primalit¨at

b) Gilt (a, b) = 1, dann heißen a und b teilerfremd oder auch relativ prim zueinander. 2 Korollar 1.10 Der gr¨oßte gemeinsame Teiler zweier ganzer Zahlen ist eindeutig bestimmt.



¨ Ubungsaufgaben

1.3 Beweisen Sie Korollar 1.10!

2

Korollar 1.11 Es sei a ∈ Z, b, c ∈ N mit (a, b) = 1 und c|b, dann ist (a, c) = 1. Beweis Wir nehmen an, es sei (a, c) = t > 1. Es folgt t|a sowie t|c, d.h. es gibt p, q ∈ Z mit a = t · p bzw. c = t · q. Des Weiteren gibt es wegen der Voraussetzung c|b ein r ∈ Z mit b = c·r. Durch Einsetzen erhalten wir b = t·q·r. Das heißt neben t|a gilt auch t|b, d.h. t ist gemeinsamer Teiler von a und b also folgt (a, b) ≥ t > 1, was ein Widerspruch zur Voraussetzung (a, b) = 1 ist. Die Annahme (a, c) > 1 ist also falsch, womit die Behauptung (a, c) = 1 gelten muss. 2 Das folgende Korollar enth¨alt Eigenschaften des gr¨oßten gemeinsamen Teilers von zwei ganzen Zahlen, auf denen die Korrektheit des Euklidischen Algorithmus beruht, den wir im folgenden Abschnitt kennen lernen.

Die Menge der ganzen Zahlen

13

Korollar 1.12 Es gilt a) f¨ur a, b ∈ Z: (a, b) = (b, a), b) f¨ur a, b, q ∈ Z: (a, b) = (a, aq + b), c) f¨ur a, q ∈ Z, b ∈ N und r ∈ N0 mit a = bq + r ist (a, b) = (b, r) = (b, a − bq). Beweis a) Offensichtlich ist die Operation gr¨oßter gemeinsamer Teiler“ kom” mutativ. b) Wir zeigen: t|a und t|b gilt genau dann, t|a und t|aq +b gilt, d.h. a und b haben dieselben gemeinsamen Teiler wie a und aq + b. Daraus folgt die Behauptung. Sei also t ein Teiler von a und b, dann folgt unmittelbar mit Korollar 1.2 g), dass t neben a auch aq + b teilt. Teilt umgekehrt t sowohl a und damit aq als auch aq + b, dann muss wegen Korollar 1.2 h) t auch b teilen. c) Es gilt: (a, b) = (b, a) = (b, bq + r) = (b, r) = (b, a − bq)

(1.13) (1.14) (1.15) (1.16)

Dabei gilt (1.13) wegen a), (1.14) wegen der Voraussetzung a = bq + r, (1.15) wegen b) (ersetze a durch b und b durch r), (1.16) wegen der Voraussetzung a = bq + r, die zu r = a − bq umgefomrt werden kann. 2  a b Satz 1.4 Es sei a, b ∈ Z mit a = 0 und b = 0, dann gilt (a,b) , (a,b) = 1. Beweis F¨ur (a, b) = 1 gilt die Behauptung offensichtlich. Wir betrachten also nur den Fall (a, b) > 1.  a b a b Wir nehmen an, dass (a,b) = t > 1 gilt. Dann ist t | (a,b) , (a,b) und t | (a,b) , d.h. a b es gibt qa sowie qb mit (a,b) = qa · t bzw. (a,b) = qb · t. Es gilt also a = qa · t · (a, b) und b = qb · t · (a, b); t · (a, b) ist also gemeinsamer Teiler von a und b. Da t > 1 ist, gilt t · (a, b) > (a, b). Es folgt, dass t · (a, b) ein gr¨oßerer gemeinsamer Teiler von a und b ist als (a, b), ein Widerspruch dazu, dass (a, b) gr¨oßter gemeinsamer Teiler von a und b ist. Also ist unsere Annahme t > 1 falsch, und die Behauptung ist bewiesen. 2



¨ Ubungsaufgaben

¨ 1.4 Uberlegen Sie, dass die Aussage von Satz 1.4 auch f¨ur die Voraussetzung a = 0 oder b = 0 gilt! 1.5 Zeigen Sie: Ist k, m ∈ N, a ∈ Z, (a, m) = 1, k|m, dann ist (a, k) = 1. 2

14

Gr¨oßter gemeinsamer Teiler

Wir greifen Bemerkung 1.1 auf und geben nun die zus¨atzliche Bedingung an, die gelten muss, damit auch die Division wie die anderen arithmetischen Operationen (sieh Satz 1.3) in der modulo-Arithmetik durchgef¨uhrt werden kann. Korollar 1.13 Sei m ∈ N, a, b, d ∈ Z mit a = b (m), d|a, d|b und (d, m) = 1, dann gilt a b = (m) d d Beweis Wegen d|a und d|b gibt es qa bzw. qb mit a = d · qa sowie b = d · qb

(1.17)

a − b = (qa − qb ) · d

(1.18)

woraus

folgt. Aus a = b (m) folgt m|a − b, woraus mit Gleichung (1.18) m|(qa − qb ) · d folgt. Da (d, m) = 1 gilt, folgt, dass m|qa − qb sein muss. Hieraus folgt mit den beiden Gleichungen (1.17), dass  a b m  − d d ist, und daraus die Behauptung a b = (m) d d 2

1.3.2 Linearkombination

Das Lemma von B´ ezout

Definition 1.6 Es seien α1 , α2 , . . . , αk ∈ Z, k ≥ 1, dann ist α1 Z + α2 Z + . . . + αk Z = {α1 x1 + α2 x2 + . . . + αk xk | xi ∈ Z, 1 ≤ i ≤ k} die Menge der (ganzzahligen) Linearkombinationen von α1 , α2 , . . . , αk .



2

¨ Ubungsaufgaben

1.6 a) Zeigen Sie, dass αi ∈ α1 Z + α2 Z + . . . + αk Z, 1 ≤ i ≤ k ist! b) Bestimmen Sie Elemente der Mengen 6Z + 9Z, 3Z + 4Z, 5Z + 8Z! 2

Die Menge der ganzen Zahlen

15

Haben Sie eine Vermutung dar¨uber, welche Elemente in der Menge aZ + bZ f¨ur ¨ a, b ∈ Z sind? In der Ubung 1.6 b) gilt f¨ur alle drei Beispiele aZ + bZ = (a, b)Z. Dass dies allgemein gilt besagt der folgende Satz. Satz 1.5

Es sei a, b ∈ Z, dann gilt aZ + bZ = (a, b)Z.

Beweis Da 0Z = {0} ist, gilt f¨ur a = b = 0 die Behauptung offensichtlich. Also sei a = 0 oder b = 0. Wir setzen I = aZ + bZ und g = min {x ∈ I | x > 0} und zeigen (1) I = gZ und (2) g = (a, b), woraus unmittelbar die Behauptung aZ + bZ = (a, b)Z folgt. Zu (1): Wir zeigen I = gZ, indem wir zun¨achst (1.1) I ⊆ gZ und dann (1.2) gZ ⊆ I zeigen. Zu (1.1): Wir w¨ahlen ein c ∈ I, c = 0, und zeigen, dass ein q existiert mit c = gq, womit c ∈ gZ und damit I ⊆ gZ gilt. Zu c und g gibt es gem¨aß Satz 1.1 Zahlen q und r mit c = gq + r und 0 ≤ r < g, d.h. mit r = c − gq und 0 ≤ r < g

(1.19)

Da c ∈ I = aZ + bZ ist, gibt es ca , cb ∈ Z mit c = aca + bcb , und da g ∈ I = aZ + bZ ist, gibt es ga , gb ∈ Z mit g = aga + bgb . Hieraus folgt mit (1.19) r = c − gq = aca + bcb − (aga + bgb )q = a(ca − ga q) + b(cb − gb q) ∈ aZ + bZ =I Es folgt r ∈ I und wegen (1.19), dass r ≥ 0 w¨are und kleiner als die kleinste Zahl g > 0 in I. Also muss r = 0 sein, und damit folgt aus (1.19) c = gq. Zu (1.2): Es sei c ∈ gZ. Dann existiert ein z ∈ Z mit c = gz. Da g ∈ I = aZ + bZ, gibt es x, y ∈ Z mit g = ax + by. Insgesamt folgt c = gz = (ax + by)z = a · xz + b · yz ∈ aZ + bZ = I Zu (2): Es gilt a, b ∈ I und I = gZ, d.h. es gibt xa ∈ Z mit a = gxa und es gibt xb ∈ Z mit b = gxb . Also ist g gemeinsamer Teiler von a und von b. Da g ∈ I = aZ+bZ ist, gibt es x, y mit g = ax+by. Sei d ein weiterer gemeinsamer Teiler von a und b, dann teilt d auch ax + by und damit g. Also ist g nicht nur gemeinsamer, sondern auch gr¨oßter Teiler von a und b, es gilt also g = (a, b). 2 Satz 1.6 Zu a, b, c ∈ Z ist die Gleichung ax + by = c genau dann l¨osbar, wenn (a, b)|c ist. Beweis ⇒“: Seien x und y Zahlen mit ax + by = c, dann ist c ∈ aZ + bZ und ” damit ist mit dem Satz 1.5: c ∈ (a, b)Z. Es gibt also ein q ∈ Z mit c = (a, b) · q, woraus folgt, dass (a, b)|c ist.

16

Gr¨oßter gemeinsamer Teiler

⇐“: Sei (a, b)|c, dann gibt es q ∈ Z mit c = (a, b) · q, d.h. es ist c ∈ (a, b)Z. Mit ” Satz 1.5 gilt dann c ∈ aZ + bZ, d.h. es gibt Zahlen x, y ∈ Z, so dass c = ax + by gilt. 2 Lemma von B´ezout

Da (a, b) ein Teiler von sich selbst ist, folgt aus diesem Satz unmittelbar das Lemma von B´ezout,1 welches wir als n¨achstes Korollar formulieren. Korollar 1.14 Es sei a, b ∈ Z. a) Dann gibt es Zahlen x, y ∈ Z mit ax + by = (a, b). b) Gilt (a, b) = 1, dann gibt es Zahlen x, y ∈ Z mit ax + by = 1.

2

Algorithmen zur Berechnung von (a, b) sowie von x und y, so dass ax + by = (a, b) gilt, die bei der Berechnung von Inversen in Restklassenringen sowie bei der Bestimmung Schl¨usseln in kryptografischen Verfahren von Bedeutung sind, woruf wir in sp¨ateren Kapiteln noch eingehen, erfolgen mit dem Euklidischen Algorithmus, der im folgenden Abschnitt vorgestellt wird. Bemerkung 1.2 Wir haben den gr¨oßten gemeinsamen Teiler nur f¨ur zwei ganze Zahlen betrachtet. Selbstverst¨andlich kann man diesen Begriff auf k ≥ 2 Zahlen ai ∈ Z, 1 ≤ i ≤ k, erweitern: t ∈ N0 ist gr¨oßter gemeinsamer Teiler der Zahlen ai genau dann, wenn t|ai , d.h. t ein gemeinsamer Teiler aller ai ist, und f¨ur jeden weiteren gemeinsamen Teiler t der ai gilt: t |t. Die Schreibweise ist analog: t = (a1 , . . . , ak ). Die in diesem Abschnitt betrachteten Eigenschaften k¨onnen entsprechend verallgemeinert werden, wie z.B. das Lemma von B´ezout: Zu ai ∈ Z, 1 ≤ i ≤ k, existieren xi ∈ Z mit a1 x1 + . . . + ak xk = (a1 , . . . , ak ). Wir haben nur den Fall k = 2 betrachtet, weil nur dieser im weiteren Verlauf der Betrachtungen von Bedeutung ist. 2

1.3.3

Algorithmen zur Berechnung des gr¨ oßten gemeinsamen Teilers

Der in Abbildung 1 dargestellte, auf Euklid2 zur¨uck gehende Algorithmus berechnet zu zwei nat¨urlichen Zahlen a, b ∈ N den gr¨oßten gemeinsamen Teiler (a, b). Dabei nehmen wir an, dass a > b ist. Im anderen Fall vertauschen wir beide Zahlen, und f¨ur a = b ist nichts zu berechnen, denn es gilt (a, a) = a. 1

2

´ Benannt nach Etienne B´ezout (1730 - 1783), einem franz¨osischem Mathematiker, der sich unter anderem mit algebraischen Kurven besch¨aftigte und eine Reihe mathematischer Lehrb¨ucher verfasste. Der griechische Mathematiker Euklid lebte wohl im 3. Jahrhundert vor Christus in Alexandria. In seinen Elementen stellte er die Erkenntnisse der damaligen griechischen Mathematik in einheitlicher, systematischer Weise zusammen. Sein methodisches Vorgehen und seine strenge, auf logischen Prinzipien beruhende Beweisf¨uhrung war beispielhaft und grundlegend f¨ur die Mathematik bis in die Neuzeit.

Die Menge der ganzen Zahlen

17

algorithm EUKLID1(a, b ∈ N) dividend, divisor, rest : N0 dividend := a divisor := b rest := mod(dividend, divisor) while rest > 0 do dividend := divisor divisor := rest rest := mod(dividend, divisor) endwhile return divisor endalgorithm EUKLID1 Abb. 1: Euklidischer Algorithmus - Variante 1 ( klassisch“) ”

Dem Verfahren liegt das folgende Schema zugrunde, dabei wird r0 = a und r1 = b gesetzt: r0 = r1 q1 + r2 , r1 = r2 q2 + r3 , r2 = r3 q3 + r4 , ... rn−2 = rn−1 qn−1 + rn , rn−1 = rn qn + rn+1 ,

0 ≤ r2 < r1 0 ≤ r3 < r2 0 ≤ r4 < r3 ... 0 ≤ rn < rn−1 rn+1 = 0

(1.20)

Abbildung 2 zeigt die Anwendung dieses Verfahrens auf die Berechnung von (42, 27).

Berechnung dividend 42 = 27 · 1 + 15 42 27 = 15 · 1 + 12 27 15 = 12 · 1 + 3 15 12 = 3 · 4 + 0 12

divisor rest 27 15 15 12 12 3 3 0

Abb. 2: Berechnung von (42, 27) mit dem Euklidischen Algorithmus

18

Gr¨oßter gemeinsamer Teiler

Allgemein gilt: rk−1 = rk qk + rk+1

(1.21)

mit qk ≥ 1 f¨ur 1 ≤ k ≤ n − 1 und qn ≥ 2 sowie 0 ≤ rk+1 < rk f¨ur 1 ≤ k ≤ n und (a, b) = rn und rn+1 = 0. Wir wollen die Korrektheit des Verfahrens plausibel machen: (1) Terminierung: Da die Reste in jedem Schritt echt kleiner werden, aber gr¨oßer gleich Null bleiben, terminiert das Verfahren immer, und es bricht immer mit einer Division mit Rest 0, d.h. ohne Rest, ab. (2) Korrektheit: Die Korrektheit des Schemas (1.20) basiert auf Korollar 1.12 b, c). Daraus und aus der Festsetzung (1.21) folgt n¨amlich, dass f¨ur die Reste gilt: (rk , rk+1 ) = (rk , rk qk + rk+1 ) = (rk , rk−1 ), 1 ≤ k ≤ n Das heißt insbesondere, dass auch (a, b) = (r0 , r1 ) = (rn , rn+1 ) = (rn , 0) = rn 2

gilt, womit die Korrektheit gezeigt ist.

Gem¨aß dem Lemma von B´ezout (Korollar 1.14) gibt es zu a und b Zahlen x und y mit (a, b) = ax + by. Zu gegebenen a und b wollen wir jetzt ein Verfahren u¨ berlegen, womit die entsprechenden x und y berechnet werden k¨onnen. Dazu betrachten wir zun¨achst das obige Beispiel mit a = 42 und b = 27 (siehe Abbidung 2): Aus 42 = 27 · 1 + 15 folgt 15 = 42 · 1 + 27 · (−1)

(1.22)

Aus 27 = 15 · 1 + 12 folgt 12 = 27 · 1 + 15 · (−1) und hieraus mit (1.22) 12 = 27 · 1 + (42 · 1 + 27 · (−1)) · (−1) = 42 · (−1) + 27 · 2

(1.23)

Aus 15 = 12 · 1 + 3 folgt 3 = 15 · 1 + 12 · (−1) und hieraus mit (1.22) und (1.23) 3 = (42 · 1 + 27 · (−1)) · 1 + (42 · (−1) + 27 · 2) · (−1) = 42 · 2 + 27 · (−3) Wir haben also mithilfe des Euklidischen Algorithmus f¨ur a = 42 und b = 12 die Zahlen x = 2 und y = −3 berechnet mit (a, b) = ax + by: 3 = 42 · 2 + 27 · (−3). Der folgende Satz gibt an, wie allgemein zu a und b Zahlen x und y berechnet werden k¨onnen, so dass (a, b) = ax + by ist. Satz 1.7

F¨ur die Reste rk im Euklidischen Algorithmus gilt k

k+1

rk = a(−1) xk + b(−1)

yk , 1 ≤ k ≤ n + 1

Die Menge der ganzen Zahlen

19

Dabei ist x0 = 1, x1 = 0, y0 = 0, y1 = 1 sowie xk+1 = xk qk + xk−1 , yk+1 = yk qk + yk−1 , 1 ≤ k ≤ n Beweis Wir f¨uhren den Beweis durch vollst¨andige Induktion u¨ ber k: F¨ur k = 0 ist 0

0+1

r0 = a und a(−1) x0 + b(−1)

y0 = ax0 − by0 = a · 1 − b · 0 = a

und f¨ur k = 1 ist 1

1+1

r1 = b und a(−1) x1 + b(−1)

y1 = −ax1 + by1 = −a · 0 + b · 1 = b

Sei nun k ≥ 2 und die Behauptung gelte f¨ur alle k  < k. Es gilt rk = rk−2 − rk−1 qk−1 k−2

= a(−1)

k−1

xk−2 + b(−1)

k−1

yk−2 − (a(−1)

k

k

xk−1 + b(−1) yk−1 )qk−1 k+1

= a(xk−1 qk−1 + xk−2 )(−1) + b(yk−1 qk−1 + yk−2 )(−1) k

k+1

= a(−1) xk + b(−1)

yk

2 n

n+1

Korollar 1.15 Es gilt rn = a(−1) xn + b(−1) n

yn und damit n+1

(a, b) = ax + by mit x = (−1) xn und y = (−1)



yn

¨ Ubungsaufgaben

1.7 (1) Berechnen Sie mit dem Euklidischen Algorithmus (1024, 1001)! (2) Berechnen Sie mit der Erweiterung des Euklidischen Algorithmus Faktoren x und y, so dass 1024x + 1001y = (a, b) ist! 2

Zum Abschluss diesen Abschnitts wollen wir noch weitere Varianten f¨ur die Berechnung des gr¨oßten gemeinsamen Teilers betrachten. Die rekursive Variante in Abbildung 3 basiert auf der folgenden rekursiven Definition, deren Korrektheit aus Korrolar 1.12 c) folgt: Es ist ( , ) : N0 × N0 → N0

20

Gr¨oßter gemeinsamer Teiler

mit

⎧ ⎪ b, a=0 ⎪ ⎪ ⎪ ⎪ ⎪ a, b=0 ⎨ (a, b) = a, a=b ⎪ ⎪ ⎪ (b, a − b), a > b ⎪ ⎪ ⎪ ⎩ (b, a), a b then return EUKLID2(b, a − b) else return EUKLID2(b, a) endif endalgorithm EUKLID2 Abb. 3: Euklidischer Algorithmus - Variante 2 ( rekursiv“) ”

Das in Abbildung 4 dargestellte Verfahren ist ebenfalls korrekt (siehe Korrollar 1.12 c):  a, b=0 (a, b) = (b, r) mit r = mod (a, b), sonst F¨ur obiges Beispiel (siehe Abbildung 2) gilt mit dieser Definition von ( , ): (42, 27) = (27, 15) = (15, 12) = (12, 3) = (3, 0) = 3

(1.24)

Eine rekursive Variante des erweiterten Euklidischen Algorithmus zeigt Abbildung 5. Einen weiteren Algorithmus zur Berechnung des gr¨oßten gemeinsamen Teilers lernen wir am Ende des Kapitels kennen, siehe Abbildung 6 auf Seite 29.

Die Menge der ganzen Zahlen

algorithm EUKLID3(a, b ∈ N) if b = 0 then return a else return EUKLID3(b,mod(a, b)) endif endalgorithm EUKLID3 Abb. 4: Euklidischer Algorithmus - Variante 3 ( rekursiv“) ”

algorithm ERWEUKLID(a, b ∈ N) if b = 0 then return (a, 1, 0) else (t, x, y) := ERWEUKLID(b,  b))  mod(a, return (t, y, x−floor ab · y endif endalgorithm ERWEUKLID Abb. 5: Erweiterter Euklidischer Algorithmus



¨ Ubungsaufgaben

1.8 Berechnen Sie weitere Beispiele mit dem Algorithmus in Abbildung 5! 2

1.4

Primzahlen

In Definition 1.3 haben wir die Zahlen a ∈ N, a ≥ 2, ausgezeichnet, die genau zwei Teiler besitzen, n¨amlich die trivialen Teiler 1 und a. Mit dieser Menge P der Primzahlen besch¨aftigen wir uns in diesem Kapitel detaillierter. Primzahlen k¨onnen als die Bausteine“ der ganzen Zahlen betrachtet werden. Sie spielen ” in fast allen Bereichen der Mathematik eine elementare Rolle, ebenso in vielen Bereichen der Informatik, insbesondere in Anwendungen, wie z.B. in der Kryptografie. Das werden wir in sp¨ateren Kapiteln auch noch feststellen.

21

22

Primzahlen

Wir beginnen mit einem Satz, der uns sp¨ater noch n¨utzlich sein wird. Satz 1.8

a) Es sei a, b ∈ Z und t|ab. Ist (t, a) = 1, dann gilt t|b.

b) Es sei a, b ∈ N0 und p ∈ P mit p|ab, dann ist p|a oder p|b. Beweis a) Aus (t, a) = 1 folgt mit Korollar 1.14 b), dass es x, y ∈ Z gibt mit tx + ay = (t, a) = 1. Durch Multiplikation mit b erhalten wir txb + ayb = b

(1.25)

t teilt offensichtlich txb, und nach Voraussetzung teilt t auch ab und damit ayb. t teilt also beide Summanden in der Gleichung (1.25) und damit auch die Summe b. Damit gilt die Behauptung. b) Wir nehmen an, dass p |a und p |b gilt. Dann gibt es gem¨aß Satz 1.1 ganze Zahlen qa und ra bzw. qb und rb mit a = p · qa + ra , 0 < ra < p b = p · qb + rb , 0 < rb < p

(1.26) (1.27)

Aus (1.26) und (1.27) folgt (p, ra ) = 1 bzw. (p, rb ) = 1. Wir multiplizieren die beiden Gleichungen und erhalten a · b = p · (pqa qb + qa rb + qb ra ) + ra rb

(1.28)

Nach Voraussetzung ist p ein Teiler von ab. Damit folgt aus (1.28) mithilfe von Korollar 1.2 h), dass p|ra rb sein muss. Da (p, ra ) = 1 und (p, rb ) = 1 ist, folgt mit a), dass p|ra und p|rb . Dies bedeutet aber einen Widerspruch zu (1.26) bzw. zu (1.27). p kann also kein Teiler von ra rb sein, woraus wegen (1.28) folgt, dass p auch kein Teiler von ab sein kann, was aber ein Widerspruch zur Voraussetzung des Satzes ist. Unsere Annahme p |a und p |b ist also falsch, womit die Behauptung bewiesen ist. 2 Korollar 1.16 Es sei a, b, c ∈ Z sowie (a, c) = 1 und (b, c) = 1. Dann gilt auch (ab, c) = 1. Beweis Wir nehmen an, dass (ab, c) = t > 1 ist. Es gilt t|ab und t|c. Wir nehmen an, dass t|a ist, dann folgt (a, c) ≥ t > 1, ein Widerspruch zur Voraussetzung (a, c) = 1. Entsprechend f¨uhrt die Annahme t|b zum Widerspruch (b, c) ≥ t > 1 zur Voraussetzung (b, c) = 1. Ebenfalls f¨uhrt die Annahme, dass (t, a) = s > 1 ist, da dann s|a und damit s|c (weil s|t und t|c) zum Widerspruch (a, c) ≥ s > 1, d.h. es ist (t, a) = 1. Analog zeigt man, dass (t, b) = 1 gelten muss. Aus unserer Annahme t|ab und der gezeigten Tatsache, dass (t, a) = 1 ist, m¨usste gem¨aß obigem Satz 1.8 a) t|b sein, das widerspricht aber der gezeigten Tatsache (t, b) = 1. Somit muss unsere Annahme (ab, c) = t > 1 falsch sein, d.h. es ist (ab, c) = 1, was zu zeigen war. 2 Satz 1.9 F¨ur jede nat¨urliche Zahl a ∈ N mit a ≥ 2 gilt: a besitzt mindestens einen Primteiler, und der kleinste nicht triviale Teiler von a ist ein Primteiler.

Die Menge der ganzen Zahlen

23

Beweis Wir zeigen: Der kleinste Teiler p ≥ 2 von a ist immer eine Primzahl. Dazu nehmen wir an, dass der kleinste Teiler p ≥ 2 von a keine Primzahl ist. Dann besitzt p einen nicht trivialen Teiler b. Es gilt: b|p und p|a und damit b|a. b ist also Teiler von a und kleiner als p, was ein Widerspruch zu der Annahme ist, dass p kleinster Teiler von a ist, womit unsere Annahme widerlegt und unsere Behauptung bewiesen ist. 2 Satz 1.10 P enth¨alt unendlich viele Elemente. Beweis Wir nehmen an, dass es nur endlich viele Primzahlen p1 , p2 , . . . , pn , n ≥ 1, gibt. Wir bilden nun die Zahl p = p1 · p 2 · . . . · pn + 1 Es folgt sofort, dass keine der Zahlen p1 , p2 , . . . , pn ein Teiler von p ist. Der kleinste Teiler von p ungleich 1 muss aber (siehe Satz 1.9) eine Primzahl sein. Es gibt also außer den Primzahlen p1 , p2 , . . . , pn noch mindestens eine weitere. Dies ist ein Widerspruch gegen unsere Annahme. 2 Mithilfe von Satz 1.8 k¨onnen wir die folgende Folgerung ziehen. Korollar 1.17 Sei p, q1 , . . . , qk ∈ P und ist p|q1 · q2 · . . . · qk , dann existiert ein qj , 1 ≤ j ≤ k, mit p = qj . Beweis Wir beweisen die Behauptung mit vollst¨andiger Induktion u¨ ber k: Induktionsanfang: F¨ur k = 1 gilt die Behauptung offensichtlich. Induktionsschritt: Sei nun k > 1 und p Teiler von (q1 · . . . · qk−1 ) · qk . Ist p = qk , dann ist nichts weiter zu zeigen. Ist p = qk , dann gilt, da p und qk verschiedene Primzahlen sind, (p, qk ) = 1. Mit Satz 1.8 a) folgt dann, dass p|q1 · . . . · qk−1 sein muss. Aus der Induktionsannahme folgt, dass ein j, 1 ≤ j ≤ k − 1, existiert mit 2 p = qj Eine Auskunft u¨ ber die Verteilung“ der Primzahlen in N gibt der Primzahlsatz. ” Dieser besagt, dass die Anzahl der Primzahlen, die kleiner gleich einer Zahl x x sind, etwa ln x betr¨agt. Die Funktion ln x, der nat¨urliche Logarithmus (Logan rithmus zur Basis e = limn→∞ (1 + n1 ) = 2, 71 . . ., der Eulerschen Zahl) von x, ist eine sehr schwach wachsende Funktion. Wir k¨onnen den Satz hier nicht beweisen, da er mathematische Voraussetzungen ben¨otigt, die weit u¨ ber das hinausgehen, was in diesem Buch behandelt wird. Satz 1.11

Die Funktion π : N → N sei definiert durch π(x) = |{p ∈ P | p ≤ x}|

π(x) ist also die Anzahl der Primzahlen ≤ x. Dann gilt: lim

x→∞

π(x) x ln x

= 1, d.h. π(x) ≈

x ln x

Primzahlsatz

24

Primzahlen

Man kann zeigen, dass f¨ur x ≥ 59     x 1 x 3 · 1+ < π(x) < · 1+ ln x 2 ln x ln x 2 ln x und f¨ur x ≥ 100 1≤

π(x)

(1.29)

≤ 1.23

x ln x

2

gilt. Folgende Tabelle vermittelt einen Eindruck dieser Verteilung: 102

x x ln x

π(x)

22 25

104

108

1016

1018

1 086 5 428 681 271 434 051 189 532 24 127 471 216 847 323 1 229 5 761 455 279 238 341 033 925 24 739 954 287 740 860

Mit der linken Ungleichung von (1.29) kann man z.B. absch¨atzen, wie viele k 6 Primzahlen kleiner 2 es gibt: F¨ur k ≥ 6 ist 2 > 59 und damit gilt   k  k 2 1 π 2 > · 1+ k · ln 2 2k · ln 2 Hiermit erhalten wir z.B. f¨ur k = 128:3  128 40 > 4.5 · 10 π 2



¨ Ubungsaufgaben

1.9 (1) Wie viele Primzahlen gibt es, die mit k Bits dargestellt werden k¨onnen? (2) Wie groß ist ungef¨ahr die Wahrscheinlichkeit, dass eine zuf¨allig erzeugte Folge von k Bits eine Primzahl ist? 2

Es gibt also sehr viele Primzahlen von großer Stelligkeit. Andererseits gibt es beliebig große Intervalle, in denen es keine Primzahlen gibt; der Abstand zwischen zwei benachbarten Primzahlen kann beliebig groß werden. Dazu betrachten wir zun¨achst die Zahl 5! = 1 · 2 · 3 · 4 · 5 = 120. Diese Zahl ist offensichtlich durch die Zahlen 2, 3, 4 und 5 teilbar. Daraus folgt unmittelbar 2 | 5! + 2 3 | 5! + 3 4 | 5! + 4 5 | 5! + 5 3

Dabei verwenden wir die Approximation 2

10

3

≈ 10 .

Die Menge der ganzen Zahlen

Wir haben also 4 hinter einander folgende Zahlen gefunden, die keine Primzahlen sind. Entsprechend kann man u¨ berlegen, dass auf 10! + 1 weitere 9 zusammengesetzte Zahlen aufeinander folgen. Allgemein gilt, dass auf die Zahl n! + 1 weitere n − 1 zusammengesetzte Zahlen aufeinander folgen (m¨oglicherweise befinden sich davor und dahinter jeweils noch weitere aufeinander folgende zusammengesetzte Zahlen). Es ergibt sich der folgende Satz u¨ ber Primzahll¨ucken.

25

¨ Primzahllucke

Satz 1.12 Es sei n ∈ N und L(n) = {(n + 1)! + 2, (n + 1)! + 3, . . . , (n + 1)! + (n + 1)} dann gilt L ∩ P = ∅. Es gibt also beliebig lange Folgen nat¨urlicher Zahlen, die keine Primzahl enthalten, denn zu jedem n ∈ N enth¨alt L(n) keine Primzahl, und es ist |L(n)| = n. 2 Eine grundlegende Eigenschaft nat¨urlicher Zahlen beschreibt der folgende Fundamentalsatz der Zahlentheorie. Satz 1.13 Jede nat¨urliche Zahl a ∈ N, a ≥ 2, l¨asst sich als Produkt von Primzahlen darstellen: a = q1 · q2 · . . . · qr . Diese Darstellung, die auch Faktorisierung von a genannt wird, ist bis auf die Reihenfolge der Primfaktoren qi ∈ P, 1 ≤ i ≤ r, eindeutig. Beweis Wir beweisen die Existenz der Faktorisierung einer Zahl in Primfaktoren durch vollst¨andige Induktion u¨ ber a: Induktionsanfang: F¨ur a = 2 gilt die Behauptung offensichtlich. Induktionsschritt: Ist a > 2, dann besitzt a gem¨aß Satz 1.9 einen Primteiler, wir w¨ahlen den kleinsten und dieser sei p. Es sei a = p · a . Da a < a ist, trifft auf a die Induktionsvoraussetzung zu, d.h. es gibt eine bis auf die Reihenfolge eindeutige Primfaktorenzerlegung von a , etwa a = p1 · . . . · pk . Insgesamt haben wir eine bis auf die Reihenfolge eindeutige Primfaktorenzerlegung von a erreicht: a = p · a = p · p1 · . . . · pk Wir zeigen nun die Eindeutigkeit der Faktorisierung einer Zahl in Primfaktoren. Dazu nehmen wir an, dass es mindestens eine nat¨urliche Zahl mit zwei unterschiedlichen Faktorisierungen gibt; n sei die kleinste von diesen. Wir u¨ berlegen Folgendes: (1) n kann keine Primzahl sein, denn Primzahlen besitzen genau eine Faktorisierung, die nur sie selbst als einzigen Faktor enth¨alt; n ist also eine zusammengesetzte Zahl. (2) Die unterschiedlichen Faktorisierungen von n enthalten keinen gemeinsamen Primfaktor p, sonst h¨atte die Zahl n = np unterschiedliche Faktorisierungen, und n w¨are echt kleiner als n, was ein Widerspruch dazu ist, dass n die kleinste Zahl mit unterschiedlichen Faktorisierungen ist. (3) Sei also n = p · a und n = q · b mit p, q ∈ P und p = q, woraus a = b folgt. Aus p|n folgt p|q · b. Da (p, q) = 1 ist, folgt mit Satz 1.8 a), dass p|b gilt. Damit

Fundamentalsatz der Zahlentheorie Faktorisierung

26

Primzahlen

w¨are p ein gemeinsamer Faktor in den beiden Zerlegungen p · a und q · b von n, ¨ was ein Widerspruch zur Uberlegung (2) ist. Aus (1) - (3) folgt, dass die Faktorisierung einer Zahl – bis auf die Reihenfolge der Faktoren – eindeutig ist. 2 Fasst man die in dieser Darstellung m¨oglicherweise vorkommenden gleichen Primfaktoren zu Potenzen zusammen und ordnet die Primfaktoren der Gr¨oße nach, so erh¨alt man die eindeutige Darstellung α

α

α

a = p 1 1 p 2 2 . . . pk k =

k 

α

pi i

i=1

Kanonische Faktorisierung Qudratfreie Faktorisierung

mit den Primfaktoren p1 < p2 < . . . < pk und Exponenten αi ∈ N, 1 ≤ i ≤ k. Diese Darstellung heißt auch die kanonische Primfaktorzerlegung von a. Gilt αi = 1 f¨ur alle i, 1 ≤ i ≤ k, dann heißt die Primfaktorzerlegung quadratfrei. Wir k¨onnen in die Faktorisierung einer Zahl a ∈ N, a ≥ 2, auch die Primfaktoren aufnehmen, die eigentlich nicht in ihrer Faktorisierung vorkommen, wir m¨ussen diese Faktoren nur mit dem Exponenten 0 versehen. Dazu definieren wir f¨ur a ∈ N, a ≥ 2, die Funktionen πa : P → N0 definiert durch: πa (p) = Anzahl der Vorkommen der Primzahl p in der Primfaktorzerlegung von a. Wenn also a = α α α p1 1 p2 2 . . . pk k die kanonische Primfaktorzerlegung von a ist, dann gilt πa (pi ) = αi , 1 ≤ i ≤ k, und πa (p) = 0 f¨ur p ∈ P − {p1 , . . . , pk }. Die kanonische Primfaktorzerlegung von a kann dann in der Form πa (p1 )

a = p1

πa (p2 )

p2

πa (pk )

. . . pk

=

k 

πa (pi )

pi

i=1

oder in der Form a=



p

πa (p)

p∈P, p|a

geschrieben werden. F¨ur p ∈ P mit p |a ist πa (p) = 0 und damit p weshalb auch  πa (p) a= p

πa (p)

0

= p = 1,

p∈P

geschrieben werden kann.



¨ Ubungsaufgaben

1.10 (1) Geben Sie die kanonische Faktorisierung von a = 846 937 155 064 an! (2) Bestimmen Sie πa(p) f¨ur alle p ∈ P!

2

Die Menge der ganzen Zahlen

27

Es ist

3

2

5

2

a = 2 · 7 · 11 · 13 · 23

Daraus ergibt sich: πa(2) = 3, πa(7) = πa(23) = 2, πa(11) = 1, πa(13) = 5 und πa(p) = 0 f¨ur p ∈ P − {2, 7, 11, 13, 23}. Aus der kanonischen Primfaktorzerlegung einer nat¨urlichen Zahl l¨asst sich die Menge ihrer Teiler bestimmen: α

α

α

Satz 1.14 Sei a = p1 1 p2 2 . . . pk k die kanonische Primfaktorzerlegung von a, dann ist die Menge der positiven Teiler von a gegeben durch die Menge   β β β T+(a) = b | b = p1 1 p2 2 . . . pkk , 0 ≤ βi ≤ αi , 1 ≤ i ≤ k Die Menge der Teiler von a ergibt sich also, indem man alle m¨oglichen Produkte mit den Primfaktoren von a bildet, wobei jeder Primfaktor pi h¨ochstens αi -mal vorkommen darf. 2

1.5

Kleinstes gemeinsames Vielfaches

Definition 1.7 Seien a, b, c ∈ Z. Gilt a|c und b|c, dann ist c ein gemeinsames Vielfaches von a und b. Das kleinste gemeinsame Vielfache [a, b] von a und b ist die kleinste Zahl c ∈ N0 mit a|c und b|c. 2 Korollar 1.18 Es sei a, b ∈ Z und c ∈ N0 . a) Es gilt [ a, b ] ≥ max {a, b}. b) Gilt a|c und b|c, dann gilt [a, b]|c. c) [ a, b ] ist eindeutig bestimmt. Beweis a) gilt offensichtlich. b) Gem¨aß Satz 1.1 gibt es ganze Zahlen q und r mit c = [a, b] · q + r und 0 ≤ r < [a, b], d.h. es gilt c − r = [a, b] · q 0 ≤ r < [a, b]

(1.30) (1.31)

Wir nehmen an, dass r ≥ 1 ist. Nach Voraussetzung gilt a|c, und es gilt a|[a, b], dann folgt mit (1.30) a|r. Analog gilt nach Voraussetzung b|c, und es gilt b|[a, b], dann folgt mit (1.30) b|r. r ist also ein gemeinsames Vielfaches von a und b. Es gilt also r ≥ [ a, b ], was einen Widerspruch zu (1.31) bedeutet. Unsere Annahme r ≥ 1 ist also falsch; es muss also r = 0 sein. Aus (1.30) folgt damit die Behauptung. c) folgt unmitelbar aus b).

2

Kleinstes gemeinsames Vielfaches

28

Kleinstes gemeinsames Vielfaches

Mithilfe der kanonischen Primfaktorzerlegung von zwei Zahlen lassen sich auch deren gr¨oßter gemeinsamer Teiler sowie deren kleinstes gemeinsames Vielfaches berechnen. Satz 1.15 F¨ur alle a, b ∈ N, a, b ≥ 2, gilt:  min{πa (p),πb (p)} (a, b) = p p∈P

[a, b] =



p

max{πa (p),πb (p)}

p∈P



¨ Ubungsaufgaben

¨ 1.11 Uberlegen Sie die Korrektheit der Aussagen in Satz 1.15!

2

¨ Aus der zweiten Gleichung des Satzes folgt im Ubrigen, dass das kleinste gemeinsame Vielfache von zwei Zahlen immer existiert; seine Eindeutigkeit haben wir bereits in Korollar 1.18 c) festgestellt. Mithilfe von Satz 1.15 k¨onnen weitere Eigenschaften des gr¨oßten gemeinsamen Teilers von zwei Zahlen abgeleitet werden. Korollar 1.19 Sei a, b ∈ N, a, b ≥ 2 sowie q ∈ N. Dann gilt:  a) Ist q|a und q|b, dann ist (a, b) = q · aq , qb .  b) Ist q|a und q | b, dann ist (a, b) = aq , b .  c) Ist q | a, q | b sowie q|a − b, dann ist (a, b) = a−b ,b . q Beweis a) und b) folgen unmittelbar aus Satz 1.15. c) Gem¨aß Korollar 1.12 c) gilt (a, b) = (a − b, b). Hieraus folgt mithilfe der Voraussetzung q|a − b unter Verwendung der Aussage b) die Behauptung. 2 Das in Abbildung 6 dargestellte Verfahren zur Berechnung des gr¨oßten gemeinsamen Teilers basiert auf Korrollar 1.19: ⎧ a, b=0 ⎪ ⎪ ⎪ ⎪ ⎪ (b, a), a 1 ist, dann ist der Homomorphismus ϕ nicht injektiv und damit kein Isomorphismus. c) Falls der Homomorphismus ϕ injektiv ist, dann gilt Kern(ϕ) = {e1 }. d) Ist |Kern(ϕ)| = 1, d.h. Kern(ϕ) = {e1 }, dann ist ϕ injektiv. e) ϕ ist injektiv genau dann, wenn |Kern(ϕ)| = 1, d.h. Kern(ϕ) = {e1 } ist. Beweis a) Folgt unmittelbar aus Korollar 2.9 a). b) Da |Kern(ϕ)| > 1 ist, gibt es neben e1 ∈ Kern(ϕ) ein davon verschiedenes x ∈ Kern(ϕ) mit ϕ(e1 ) = e2 und ϕ(x) = e2 . Damit ist ϕ(e2 ) = ϕ(x) f¨ur e1 = x, also ist ϕ nicht injektiv. c) Folgt unmittelbar durch Umkehrung von b) unter Beachtung von a). d) Wir nehmen an, ϕ sei nicht injektiv. Dann existieren x, y ∈ G1 mit x = y und −1 −1 ϕ(x) = ϕ(y). Daraus folgt ϕ(x)∗2 (ϕ(y)) = e2 und daraus ϕ(x)∗2 ϕ(y ) = e2 −1 −1 und daraus ϕ(x ∗1 y ) = e2 . Hieraus folgt nun x ∗1 y ∈ Kern(ϕ). Da x = y −1 ist, ist x ∗1 y = e1 . Das bedeutet, dass Kern(ϕ) außer e1 noch das Element −1 x ∗1 y enth¨alt, was einen Widerspruch zur Voraussetzung darstellt. e) folgt unmittelbar aus c) und d).

2

Der Kern bildet eine Untergruppe, sogar einen Normalteiler von G1 . Satz 2.9 Der Kern eines Homomorphismus ϕ zwischen zwei Gruppen G1 und G2 bildet einen Normalteiler in G1 . Beweis Wir zeigen zun¨achst mithilfe von Satz 2.5 a), dass Kern(ϕ) eine Untergruppe von G1 bildet. Sei also a, b ∈ Kern(ϕ), d.h. es ist ϕ(a) = e2 und −1 −1 ϕ(b) = e2 . Dann gilt ϕ(a ∗1 b) = ϕ(a) ∗2 ϕ(b) = e2 ∗2 e2 = e2 . Es folgt, dass −1 a ∗1 b ∈ Kern(ϕ) ist. Jetzt zeigen wir noch, dass Kern(ϕ) normal in G1 ist, d.h., dass a ∗1 Kern(ϕ) = Kern(ϕ) ∗1 a f¨ur alle a ∈ G1 ist. Sei x ∈ a ∗1 Kern(ϕ), d.h. es gibt ein k ∈ Kern(ϕ) mit x = a ∗1 k. Wir m¨ussen zeigen, dass x ∈ Kern(ϕ) ∗1 a ist. Dazu setzen wir −1 x = a ∗1 k ∗1 a ∗1 a = k ∗1 a

Gruppen

63

−1

mit k = a ∗1 k ∗1 a . Es gilt k ∈ Kern(ϕ), denn es ist: −1

ϕ(k) = ϕ(a ∗1 k ∗1 a ) −1

= ϕ(a) ∗2 ϕ(k) ∗2 ϕ(a ) −1

= ϕ(a) ∗2 e2 ∗2 ϕ(a ) −1

= ϕ(a) ∗2 ϕ(a) = e2

Damit folgt also x ∈ Kern(ϕ) ∗1 a und damit a ∗1 Kern(ϕ) ⊆ Kern(ϕ) ∗1 a. Die Umkehrung kann analog gezeigt werden. 2



¨ Ubungsaufgaben 2

2

2.31 Die Abbildung ϕ : Z → Z (zur Definiton von Z siehe Beispiel 2.2) sei definiert durch ϕ(a, b) = b − a 2

a) Zeigen Sie: ϕ ist ein Homomorphismus von (Z , +) nach (Z, +). b) Bestimmen Sie Kern(ϕ)! c) Ist ϕ ein Isomorphismus? Beweisen Sie Ihre Antwort! 2

d) Kern(ϕ) ist ein Normalteiler von (Z , +). Geben Sie die Nebenklasse von Kern(ϕ) an, von der (3, 7) ein Repr¨asentant ist! Geben Sie die Neben2 2 klasse von Kern(ϕ) an, von der (a, b) ∈ Z ein Repr¨asentant ist.

Aus den S¨atzen 2.7 und 2.9 folgt unmittelbar Korollar 2.13 Sei ϕ ein Homomorphismus zwischen den Gruppen G und G  , dann ist G/Kern(ϕ) eine Gruppe, die Faktorgruppe von G nach dem Kern von ϕ. 2 −1

Mit Defintion 2.8 und Satz 2.9 wissen wir, dass das Urbild ϕ (e2 ) von e2 unter dem Homomorphismus ϕ der Kern von ϕ ist und dass dieser ein Normalteiler, also insbesondere eine Nebenklasse ist. Da durch a ∗1 Kern(ϕ) f¨ur a ∈ G1 alle Nebenklassen von Kern(ϕ) bestimmt sind, besagt der folgende Satz, dass die Nebenklassen von Kern(ϕ) gerade alle Urbilder von ϕ sind. Satz 2.10 Sei ϕ ein Homomorphismus der Gruppe G1 nach der Gruppe G2 so−1 wie ϕ(a) = c. Dann gilt ϕ (c) = a ∗1 Kern(ϕ).

64

Gruppenhomomorphismen

Beweis Es gilt −1

b ∈ ϕ (c) genau dann, wenn ϕ(b) = c genau dann, wenn ϕ(b) = ϕ(a) −1

genau dann, wenn ϕ(a)

−1

genau dann, wenn ϕ(a

∗2 ϕ(b) = e2

∗1 b) = e2

−1

genau dann, wenn a ∗1 b ∈ Kern(ϕ) genau dann, wenn b ∈ a ∗1 Kern(ϕ) −1

2 Damit haben wir gezeigt, dass ϕ (c) = a ∗1 Kern(ϕ) ist. ¨ Aus Ubung 2.28 wissen wir, dass die Bildmenge eines Homomorphismus eine Gruppe bildet. Die n¨achste Folgerung zeigt Zusammeh¨ange zwischen dem Kern und der Bildgruppe eines Gruppenhomomorphismus auf. Korollar 2.14 Sei ϕ : G → G ein Homomorphismus von der Gruppe G in die Gruppe G  mit |Bild (ϕ)| < ∞. a) Dann gilt [G : Kern(ϕ)] = |Bild (ϕ)|

(2.24)

|G| = |Kern(ϕ)| · |Bild (ϕ)|

(2.25)

b) sowie

Beweis a) Aus Satz 2.10 folgt unmittelbar, dass die Anzahl der Nebenklassen von Kern(ϕ), d.h. der Index von Kern(ϕ) in G, gleich der Anzahl der Bilder von ϕ ist. b) Unmittelbar aus dem Satz von Lagrange (Satz 2.8), insbesondere in der Form von Gleichung (2.19), folgt f¨ur die Untergruppe Kern(ϕ): |G| = [G : Kern(ϕ)] · |Kern(ϕ)| Hieraus folgt mit Gleichung (2.24) aus a) unmittelbar die Behauptung (2.25). 2

2.6.3

Der Homomorphiesatz f¨ ur Gruppen

Satz 2.10 und die daraus folgende Gleichung (2.24) lassen vermuten, dass die Faktorgruppe G/Kern(ϕ) isomorph zur Bildgruppe Bild(ϕ) eines Homomorphismus ϕ ist. Diese Vermutung wird durch den folgenden Satz, den Homomorphiesatz f¨ur Gruppen, best¨atigt. Satz 2.11 Sei ϕ : G → G ein Homomorphismus von der Gruppe G in die Gruppe G  . Dann ist die Abbildung φ : G/Kern(ϕ) → Bild (ϕ)

Gruppen

65

definiert durch φ(a ∗ Kern(ϕ)) = ϕ(a)

(2.26)

ein Isomorphismus zwischen den Gruppen G/Kern(ϕ) und Bild (ϕ), es gilt also G/Kern(ϕ) ∼ = Bild (ϕ). Beweis Die Abbildung φ ist offensichtlich total und surjektiv. Zum Nachweis der Injektivit¨at sei φ(a ∗ Kern(ϕ)) = φ(b ∗ Kern(ϕ)) f¨ur a, b ∈ G. Wegen Gleichung (2.26) gilt dann ϕ(a) = ϕ(b). Es folgt (siehe Beweis von Satz 2.10) a ∈ b ∗ Kern(ϕ) und damit (siehe Korollar 2.5 b) a ∗ Kern(ϕ) = b ∗ Kern(ϕ), womit die Injektivit¨at von φ gezeigt ist. Des Weiteren gilt φ((a ∗ Kern(ϕ)) ∗Kern(ϕ) (b ∗ Kern(ϕ))) = φ((a ∗ b) ∗ Kern(ϕ)) = ϕ(a ∗ b) = ϕ(a) ∗ ϕ(b) = φ(a ∗ Kern(ϕ)) ∗ φ(b ∗ Kern(ϕ))

wegen (2.15) und Definition 2.6 wegen (2.26) da ϕ Homomorphismus wegen (2.26)

womit die Homomorphieeigenschaft (Definition 2.7) von φ gezeigt ist.

2

Aus dem Satz 2.11 folgt unmittelbar Korollar 2.15 Sei ϕ : G → G ein surjektiver Homomorphismus von der Gruppe G in die Gruppe G  . Dann ist die Abbildung φ : G/Kern(ϕ) → G  definiert durch φ(a ∗ Kern(ϕ)) = ϕ(a) ein Isomorphismus zwischen den Gruppen G/Kern(ϕ) und G  , es gilt also 2 G/Kern(ϕ) ∼ = G . ¨ Beispiel 2.8 a) In der L¨osung zu Ubung 2.31 d) haben wir den Kern des Ho2 momorphismus ϕ : Z → Z definiert durch ϕ(a, b) = b − a und seine Nebenklassen (a, b) + Kern(ϕ) betrachtet. Da ϕ surjektiv ist, gilt gem¨aß Korollar 2.15: 2 Z /Kern(ϕ) ∼ = Z. Die Gleichheit (E.24) (a, b) + Kern(ϕ) = {(x, y) | y − x = ϕ(a, b)} dr¨uckt quasi diesen Isomorphismus f¨ur unser Beispiel aus: 2

φ : Z /Kern(ϕ) → Z definiert durch φ((a, b) + Kern(ϕ)) = ϕ(a, b)

66

Gruppenhomomorphismen

b) Wir haben verschiedentlich in Zm , m ∈ N, gerechnet. Wir betrachten nun allgemein die additive Struktur (Zm , +m ) mit der Tr¨agermenge Zm = {0m , 1m , . . . , (m − 1)m }. Die Verkn¨upfung +m ist definiert durch  a+b≤m−1 (a + b)m , (2.27) am +m bm = (a + b − m)m , a + b ≥ m Es gilt also z.B. 28 +8 58 = (2 + 5)8 = 78 und 38 +8 78 = (3 + 7 − 8)8 = 28 . Die Struktur Zm ist offensichtlich abgeschlossen und kommutativ, und sie ist assoziativ (etwas umst¨andlich nachzurechnen, aber machbar). Das Einselement ist 0m , denn es gilt am +m 0m = (a + 0)m = am . Das Inverse (−a)m zu am ist (m − a)m , denn es gilt am +m (−a)m = am +m (m − a)m = (a + (m − a) − m)m = 0m

da a + (m − a) = m ≥ m ist

Zm ist also eine additive abelsche Gruppe. Am Ende von Abschnitt 1.2.1 haben wir die Operation mod kennengelernt: r = mod (a, b) ist f¨ur a ∈ Z und b ∈ N der kleinste Rest gr¨oßer gleich 0, der bei der Division von a durch b bleibt (sieh Satz 1.1). Mithilfe dieser Operation setzen wir nun f¨ur a ∈ Z und m ∈ N: am = mod (a, m); offensichtlich ist (am )m = am

(2.28)

(a + b)m = am +m bm

(2.29)

Es gilt Dazu rechnen wir: Es gibt qa , qb ∈ Z mit a = mqa + am , 0 ≤ am ≤ m − 1 b = mqb + bm , 0 ≤ bm ≤ m − 1 Damit ist am + bm ≤ 2m − 2, also am + bm − m ≤ m − 2 < m − 1. Es folgt (mithilfe von (2.27) im dritten bzw. (2.28) im vierten Schritt) a + b = m(qa + qb ) + am + bm  =  =  =

am + bm ≤ m − 1 m(qa + qb ) + (am + bm ), m(qa + qb + 1) + (am + bm − m), am + bm ≥ m m(qa + qb ) + ((am )m +m (bm )m ), m(qa + qb + 1) + ((am )m +m (bm )m ), m(qa + qb ) + (am +m bm ), m(qa + qb + 1) + (am +m bm ),

am + bm ≤ m − 1 am + bm ≥ m

am + bm ≤ m − 1 am + bm ≥ m

Gruppen

67

womit (2.29) gezeigt ist. Wir definieren nun ϕm : Z → Zm durch ϕm (a) = am Dann ist ϕm ein Homomorphismus von Z nach Zm , denn es ist mithilfe von (2.29) ϕm (a + b) = (a + b)m = am +m bm = ϕm (a) +m ϕm (b) ϕm ist offensichtlich surjektiv. Wir bestimmen nun den Kern von ϕm (siehe Beispiel 2.6): Kern(ϕm ) = {a ∈ Z | ϕm (a) = 0m } = {a ∈ Z | am = 0m } = {ma | a ∈ Z} = mZ Wir wissen, dass mZ ein Normalteiler in Z ist. Insgesamt folgt mit Korollar 2.15: Z/mZ ∼ = Zm . Deswegen werden wir im Folgenden nicht mehr zwischen Z/mZ und Zm unterscheiden und Zm als Bezeichnung f¨ur diese Rechenstruktur w¨ahlen. Wir nennen (Zm , +m ) die additive Restklassengruppe modulo m. Wenn aus dem Zusammenhang klar ist, dass wir in Zm rechnen, lassen wir beim Verkn¨upfungs2 symbol das m weg und schreiben einfach nur + anstelle +m .



¨ Ubungsaufgaben

2.32 Sei G = (M, ∗) eine endliche zyklische Gruppe und b ∈ G ein Generator f¨ur G. Des Weiteren sei (Z, +) die additive Gruppe der ganzen Zahlen. a) Zeigen Sie, dass die Abbildung ϕb : Z → G definiert durch ϕb (k) = b ein Homomorphismus ist!

k

b) Bestimmen Sie Kern(ϕb )! c) Wie viele Elemente besitzt Z/Kern(ϕb )?

2

Additive Restklassengruppe modulo m

Ringe, Integrit¨atsbereiche und K¨orper

3

69

Ringe, Integrit¨atsbereiche und K¨orper

Gruppen sind Rechenstrukturen mit einer Operation. Deshalb haben wir bei un¨ seren Beispielen und Ubungen mit Zahlenstrukturen immer zwischen additiven und multiplikativen Strukturen unterschieden, was wir im t¨aglichen Leben eigentlich nicht tun. Da geh¨oren sowohl Addition und Multiplikation nat¨urli” cherweise“ zum Rechnen mit Zahlen. So wollen wir jetzt Strukturen mit zwei Operationen abstrakt einf¨uhren, und wir werden dann sehen, dass die bekannten Zahlenmengen, wie ganze Zahlen und rationale Zahlen mit Addition und Multiplikation, Beispiele daf¨ur sind. Nach dem Durcharbeiten dieses Kapitels sollten Sie •

die Definitionen f¨ur Ringe, Integrit¨atsbereiche und K¨orper kennen und Beispiele f¨ur solche Rechenstrukturen angeben k¨onnen,



Nullteiler und Einheiten von Ringen bestimmen k¨onnen,



erl¨autern k¨onnen, dass endliche Integrit¨atsbereiche K¨orper sind,



Ring- und K¨orperhomomorphismen erkl¨aren k¨onnen,



eine K¨orpererweiterung durchf¨uhren k¨onnen,



die Eulersche ϕ-Funktion und ihre elementaren Eigenschaften kennen,



die S¨atze von Euler und Fermat erkl¨aren und anwenden k¨onnen,



grundlegende Eigenschaften von Polynomringen kennen,



Polynome in irreduzible Faktoren zerlegen k¨onnen.

3.1

Lernziele

Ringe

Wir beginnen mit so genannten Ringen, das sind einsortige algebraische Strukturen mit zwei Operationen, die bez¨uglich einer Operation eine abelsche Gruppe und bez¨uglich der anderen Operation eine Halbgruppe bilden. Definition 3.1

a) Eine algebraische Struktur R = (M, ∗1 , ∗2 ) heißt Ring, falls

Ring

(1) (M, ∗1 ) eine abelsche Gruppe bildet, (2) (M, ∗2 ) eine Halbgruppe bildet und (3) f¨ur alle a, b, c ∈ M die folgenden Distributivgesetze f¨ur ∗1 und ∗2 gelten: a ∗2 (b ∗1 c) = (a ∗2 b) ∗1 (a ∗2 c) (b ∗1 c) ∗2 a = (b ∗2 a) ∗1 (c ∗2 a)

K.-U. Witt, Algebraische und zahlentheoretische Grundlagen für die Informatik, DOI 10.1007/978-3-658-04075-8_3, © Springer Fachmedien Wiesbaden 2014

Distributivgesetz

70

Ringe

b) Ist die Operation ∗2 ebenfalls kommutativ, dann heißt R ein kommutativer Ring. Ring mit Einselement

c) Existiert bez¨uglich ∗2 ebenfalls ein Einselement, dann heißt R ein Ring mit Einselement. 2 Beispiel 3.1 a) Die Rechenstruktur (Z, +, ·) der ganzen mit Addition und Multiplikation bildet einen kommutativen Ring mit Einselement.

Restklassenring modulo m

Addition Multiplikation

Additives, multiplikatives Einselement

b) In Beispiel 2.8 b) haben wir die zur Faktorgruppe Z/mZ isomorphe additive ¨ Restklassengruppe (Zm , +m ) eingef¨uhrt. In Beispielen und Ubungen hatten wir vorher schon modulo m multipliziert. F¨uhren wir analog zur Additon modulo m die Multiplikation ·m modulo m ein, dann bildet (Zm , ·m ) ein kommutatives Monoid. Die Struktur (Zm , +m , ·m ) bildet, da sie auch die Distributivgesetze erf¨ullt, genau wie Z einen kommutativen Ring mit Einselement. Wir nennen diesen Ring Restklassenring modulo m u¨ ber Z. 2 Der Ring (Z, +, ·) der ganzen Zahlen, den wir im Folgenden schlicht mit dem Symbol Z f¨ur die Menge der ganzen Zahlen bezeichnen wollen, und die Restklassenringe modulo m, die wir im Folgenden mit Zm notieren wollen, sind quasi Prototypen“ f¨ur Ringe, insbesondere f¨ur kommutative Ringe mit Einselement. ” Deshalb nennt man im Allgemeinen bei einem Ring R die Operation ∗1 die additive Operation oder Addition und die Operation ∗2 die multiplikative Operation oder Multiplikation von R. Aus diesem Grund werden wir im Folgenden in der Regel diese Operationen auch allgemein mit + anstelle ∗1 bzw. mit · anstelle ∗2 notieren. Gleichermaßen notieren wir das – immer existierende – additive Einselement e1 auch allgemein mit 0, dem additiven Einselement von Z und Zm , und in einem Ring mit Einselement notieren wir das multiplikative Einselement e2 allgemein mit 1, dem multiplikativen Einselement von Z und Zm . Wir vereinbaren, dass die Multiplikation st¨arker bindet (h¨ohere Priorit¨at hat) als die Addition. Es soll also gelten a + b · c = a + (b · c) Mithilfe dieser Priorit¨atsfestlegung k¨onnen Klammern weggelassen werden. So k¨onnen die Distributivgesetze ohne Klammern formuliert werden: a · (b + c) = a · b + a · c (b + c) · a = b · a + c · a Korollar 3.1 Sei R ein Ring, dann gilt a · 0 = 0 f¨ur alle a ∈ R. Beweis Es gilt a · 0 = a · (0 + 0) = a · 0 + a · 0 Hieraus folgt durch Subtraktion von a · 0 auf beiden Seiten (Anwendung der K¨urzungsregel in der additiven Gruppe von R) die Behauptung 0 = a · 0. 2

Ringe, Integrit¨atsbereiche und K¨orper



71

¨ Ubungsaufgaben

3.1 F¨ur a, b ∈ Z sei a ⊕ b = a + b + 1 sowie a ⊗ b = a + b + ab. Zeigen Sie, dass (Z, ⊕, ⊗) ein kommutativer Ring mit Einselement ist! Geben Sie beide Einselemente an sowie die additiven Inversen! 2

Ein Ring bildet bez¨uglich der Addition eine Gruppe, d.h. alle Ringelemente sind additiv invertierbar. Bez¨uglich der Multiplikation m¨ussen nicht alle Elemente invertierbar sein. So besitzen z.B. die Elemente 2, 4 und 6 im Ring Z8 keine multiplikativen Inversen, w¨ahrend die Elemente 1, 3, 5 und 7 invertierbar sind. In Z5 und Z7 hingegen besitzen alle Elemente (außer der 0) Inverse bez¨uglich der Multiplikation. Elemente, die multiplikativ invertierbar sind, nennen wir invertierbar.

Invertierbare Elemente

Definition 3.2 Sei R ein Ring und a ∈ R invertierbar, dann heißt a eine Ein∗ heit von R. Mit R bezeichnen wir die Menge aller Einheiten von R. 2

Einheit



¨ Ubungsaufgaben ∗

3.2 (1) Geben Sie Zm f¨ur 2 ≤ m ≤ 8 an! ∗

(2) Zeigen Sie, dass f¨ur alle m ∈ N, m ≥ 2, gilt: 1, m − 1 ∈ Zm ! ∗

(3) Stellen Sie die Verkn¨upfungstafeln f¨ur (Zm , ·) f¨ur 2 ≤ m ≤ 8 auf. Welche Art von Rechenstruktur bilden diese? 2

¨ Ubung 3.2 (3) besagt, dass die Einheiten von Zm f¨ur 2 ≤ m ≤ 8 Gruppen bilden. Der foglende Satz besagt, dass das generell gilt: Die Einheiten eines Ringes mit Einselement bilden immer eine Gruppe. ∗

Satz 3.1 Sei R ein Ring mit Einselement, dann bildet R eine (multiplikative) Gruppe, die so genannte Einheitengruppe von R. ∗

Beweis Das multiplikative Einselement ist selbstinvers, also ist 1 ∈ R , und ∗ −1 ∗ offensichtlich folgt aus a ∈ R auch a ∈ R , denn, wenn a invertierbar ist, −1 ∗ ist auch a invertierbar. Um die Abgeschlossenheit von R bez¨uglich der Mul∗ ∗ tiplikation zu beweisen, m¨ussen wir zeigen, dass f¨ur a, b ∈ R auch a · b ∈ R −1 gilt, d.h. wir m¨ussen zeigen, dass a · b ein Inverses (a · b) besitzt. Seien also ∗ −1 −1 a, b ∈ R , d.h. a und b sind invertierbar, besitzen also Inverse a bzw. b . F¨ur −1 −1 −1 Inverse gilt laut Satz 2.1 e) die Rechenregel b · a = (a · b) . Existieren also −1 −1 −1 die Inversen a und b von a bzw. von b, dann existiert auch das Inverse (a·b) ∗ von a · b, d.h. a · b ist invertierbar und damit ist a · b ∈ R . 2

Einheitengruppe

72

Integrit¨atsbereiche



Korollar 3.2 Sei R ein Ring mit Einselement und |R|≥ 2, dann gilt 0 ∈ /R : das additive Einselement ist nicht invertierbar. −1

Beweis Wir nehmen an, dass 0 , das Inverse von 0, existiert. Sei a ∈ R mit a = 0, dann gilt mit Korollar 3.1  −1  −1 ·0=0 a=a·1=a· 0 ·0 = a·0 was ein Widerspruch zur Annahme a = 0 darstellt.

3.2

2

Integrit¨atsbereiche

Falls wir daran interessiert sind, ob Zm auch bez¨uglich der Multiplikation eine Gruppe bildet, m¨ussen wir von vorne herein die 0, allgemein das additive ¨ Einselement, ausschließen. Wenn wir die Verkn¨upfungstafeln von Ubung 3.2 (3) betrachten, stellen wir fest, dass in Zm f¨ur m ∈ {2, 3, 5, 7} alle Elemente (außer der 0 nat¨urlich) invertierbar sind, w¨ahrend das f¨ur m ∈ {4, 6, 8} nicht der Fall ist.



¨ Ubungsaufgaben

3.3 Stellen Sie die Multiplikationtafeln f¨ur Z4 , Z6 und Z8 auf, d.h. ber¨ucksichtigen Sie jetzt auch Elemente, die keine Einheiten sind, lassen Sie nur die 0 weg! Was stellen Sie fest? 2

Nun, man stellt ein Ph¨anomen fest, welches wir vom Rechnen mit ganzen, rationalen und reellen Zahlen nicht kennen: Es gibt in diesen Strukturen von 0 verschiedene Elemente, deren Produkt gleich 0 ist. So gilt z.B 2 · 2 = 0 in Z4 und 2 · 3 = 0 in Z6 . Diese Beobachtung f¨uhrt zu folgender Definition. Nullteiler Nullteilerfreier Ring

Definition 3.3 a) Sei R ein Ring sowie a ∈ R mit a = 0. Existiert ein b ∈ R mit b = 0, so dass a · b = 0 gilt, dann heißt a Nullteiler in R. Enth¨alt ein Ring keine Nullteiler, dann nennen wir ihn nullteilerfrei.

Integrit¨atsbereich

b) Ein nullteilerfreier kommutativer Ring mit Einselement heißt Integrit¨atsbereich. Integrit¨atsbereiche bezeichnen wir im Allgemeinen mit I. 2 Korollar 3.3 (Z, +, ·), der kommutative Ring mit Einselement der ganzen Zahlen, enth¨alt keine Nullteiler.

Ringe, Integrit¨atsbereiche und K¨orper

73

Beweis Wir nehmen an, das Z Nullteiler besitzt, d.h. es g¨abe a, b ∈ Z mit a = 0 und b = 0 und ab = 0. Dann w¨are a = a + 0 = a + ab = a · (1 + b) = a was einen Widerspruch bedeutet. Somit ist die Annahme falsch und die Behauptung bewiesen. 2 Z bildet also einen Integrit¨atsbereich. Z gilt als Prototyp f¨ur Integrit¨atsbereiche.6 So gelten die Teilbarkeitsregeln f¨ur ganze Zahlen, die in Korollar 1.2 aufgelistet sind, allgemein f¨ur alle Integrit¨atsbereiche. Beispiel 3.2 Durch Blick in die zugeh¨origen Multiplikationstafeln stellen wir fest, dass Z2 , Z3 , Z5 und Z7 Integrit¨atsbereiche sind, w¨ahrend Z4 , Z6 und Z8 hingegen Nullteiler besitzen (Z4 : 2, da 2 · 2 = 0; Z6 : 2, 3, 4, da z.B. 2 · 3 = 0 und 3 · 4 = 0; Z8 : 2, 4, 6, da z.B. 2 · 4 = 0 und 4 · 6 = 0), diese Ringe bilden somit keine Integrit¨atsbereiche. 2 Wenn wir in der Menge Z der ganzen Zahlen eine Gleichung wie 2x = 6 = 2 · 3 vorliegen haben, haben wir, ohne groß nachzudenken, beide Seiten durch 2 dividiert (durch 2 gek¨urzt) und die L¨osung x = 3 erhalten, obwohl 3 in Z nicht ∗ invertierbar ist (es ist Z = {1, −1}). Man tut so, als w¨are man in der Menge der ∗ rationalen Zahlen, in der 3 invertierbar ist (es ist Q = Q − {0}). Es ist aber gar ∗ nicht notwendig, die eigentlich in Z gestellte Aufgabe 2x = 6 in Q zu l¨osen. Denn der folgende Satz besagt, dass in Integrit¨atsbereichen die K¨urzungsregel gilt, obwohl Elemente keine Inversen besitzen m¨ussen. Satz 3.2 Sei I ein Integrit¨atsbereich und a, b, c ∈ I mit c = 0 und ac = bc. Dann folgt a = b. Beweis Aus ac = bc folgt ac − bc = 0, also (a − b)c = 0. Hieraus folgt, da I nullteilerfrei und c = 0 ist, dass a − b = 0, also a = b sein muss. 2 ¨ Wenn wir die bisher in Beispielen und Ubungen betrachteten Ringe Zm , 2 ≤ m ≤ 8, genauer untersuchen, stellen wir fest, dass ihre Elemente außer der 0 entweder Nullteiler oder Einheiten sind. Der folgende Satz besagt, dass dies in allen endlichen Ringen so ist. Satz 3.3 Sei Sei R ein endlicher Ring mit Einselement und a ∈ R mit a = 0, dann gilt: a) ist a invertierbar, dann ist a kein Nullteiler; b) ist a ein Nullteiler, dann ist a nicht invertierbar; c) Ist a kein Nullteiler, dann ist a invertierbar; d) ist a nicht invertierbar, dann ist a Nullteiler; e) a ist entweder Nullteiler oder invertierbar. 6

Eine u¨ bliche Bezeichnung von Typen f¨ur die Realisierung von ganzen Zahlen in Programmiersprachen ist integer oder int.

¨ Kurzungsregel

74

K¨orper

Beweis a) Sei a invertierbar. Wir nehmen an, dass a auch Nullteiler ist. Dann existiert ein b ∈ R mit b = 0 und ab = 0. Damit gilt 0=a

−1

−1

·0=a

· (a · b) =



−1

a

·a ·b=1·b=b

was einen Widerspruch zur Voraussetzung b = 0 darstellt. Wenn a invertierbar ist, kann a also kein Nullteiler sein. b) folgt unmittelbar aus a); a) und b) sind zueinander negierte Schlussfolgerungen. c) Sei a kein Nullteiler. Dann gilt a · b = 0 f¨ur alle b ∈ R mit b = 0. Wir betrachten nun zwei F¨alle: (1) a · b = a · c f¨ur alle b, c ∈ R mit b = c, sowie (2) es gibt b, c ∈ R mit b = c und a · b = a · c. Zu (1): Wenn a · b = a · c f¨ur b = c ist, sind alle Produkte a · d, d ∈ R, verschieden, d.h. es gibt genau |R| verschiedene Produkte. Wegen der Abgeschlossenheit liegen diese Produkte alle in R. Es folgt, dass genau ein solches Produkt gleich 1 sein muss, d.h. es gibt ein d ∈ R mit a · d = 1; a ist also invertierbar. Zu (2): Es folgt a·(b−c) = 0 und b−c = 0, womit a ein Nullteiler ist, was einen Widerspruch zur Voraussetzung bedeutet; dieser Fall kann also nicht eintreten. Es tritt also nur Fall (1) auf, der die Behauptung beweist. d) folgt unmittelbar aus c); c) und d) sind ebenfalls zueinander negierte Schlussfolgerungen. 2

e) folgt unmittelbar aus a) - d).



¨ Ubungsaufgaben

3.4 Sei Z9 der Restklassenring modulo 9 u¨ ber Z. (1) Geben Sie alle Nullteiler von Z9 an! ∗

(2) Geben Sie die Menge Z9 aller invertierbaren Elemente (Einheiten) von Z9 an! ∗

(3) Geben Sie die Verkn¨upfungstafel von Z9 an! ∗

(4) Berechnen Sie 2 : a f¨ur alle a ∈ Z9 , d.h. teilen Sie 2 durch alle Ele∗ 2 mente von Z9 und geben Sie die Ergebnisse an!

Ringe, Integrit¨atsbereiche und K¨orper

3.3

75

K¨orper

Ein K¨orper ist eine algebraische Struktur mit zwei Operationen, die bez¨uglich beider Operationen eine abelsche Gruppe bildet, d.h. ein K¨orper ist ein Ring, der auch mit der Multiplikation eine abelsche Gruppe bildet. In einem K¨orper mit mindestens zwei Elementen sind also alle Elemente – außer der 0, dem additiven Einselement, – invertierbar. Eine algebraische Struktur K = (M ∗1 , ∗2 ) heißt K¨orper, falls

Definition 3.4

(1) (M, ∗1 ) eine abelsche Gruppe mit Einselement e1 bildet, (2) (M − {e1 }, ∗2 ) eine abelsche Gruppe mit Einselement e2 bildet, und (3) f¨ur alle a, b, c ∈ M das folgende Distributivgesetz f¨ur ∗1 und ∗2 gilt: a ∗2 (b ∗1 c) = a ∗2 b ∗1 a ∗2 c Wegen der Kommutativit¨at beider Operationen folgt sofort auch die G¨ultigkeit der Rechtsdistributivit¨at. 2 Der folgende Satz listet Regeln auf, die f¨ur das Rechnen in K¨orpern gelten und die wir aus den uns bekannten Rechenstrukturen Q und R schon kennen. Satz 3.4

Es sei K ein K¨orper und a, b, c, d ∈ K, dann gilt:

a) a · 0 = 0 b) Ist ab = 0, dann ist a = 0 oder b = 0. c) ab + (−a)b = 0 d) (−a)b = −(ab) e) (−a)(−b) = ab −1

−1

−1

f) a · b = (a · b) −1

−1

−1

−1

g) (a · b ) · (c · d ) = (a · b) · (b · d ) −1

−1

−1

h) a · b + c · d = (a · d + b · c) · (b · d) i) a · b = (ab) , n ∈ Z n

n

n

j) a · a = a m

n

m+n

, m, n ∈ Z

, m, n ∈ Z !n n k n−k n l) (a + b) = i=0 k a · b , n ∈ N0 m n

k) (a ) = a

m·n

2

m) (a + b)(a − b) = a − b

2

n) Die Gleichung a + x = b ist eindeutig l¨osbar. o) Die Gleichung ax + b = c mit a = 0 ist eindeutig l¨osbar. p) Die Aussagen a), c) - e), i) - n) gelten auch in Ringen.

K¨orper

76

K¨orper

Beweis a) folgt schon aus Korollar 3.1, denn diese Eigenschaft gilt bereits f¨ur Ringe. −1

b) Sei a = 0 und ab = 0, dann ist b = (a wobei die letzte Gleichheit aus a) folgt.

−1

· a) · b = a

−1

· (a · b) = a

· 0 = 0,

c) Es gilt: ab + (−a)b = (a + (−a)) · b =0·b =0

wegen Distributivgesetz wegen a)

d) Folgt sofort aus c). e) Es gilt: (−a)(−b) = −(a · (−b)) = −((−b) · a) = −(−(ba)) = ba = ab

wegen c) wegen Kommutativit¨at der Multiplikation wegen d)

−1

−1

−1

f) Wegen Satz 2.1 e) gilt (a · b) = b · a , woraus mit der vorhandenen Kommutativit¨at die Behauptung folgt. g) gilt wegen der Kommutativit¨at. h) Wir rechnen −1

−1

−1

−1

−1

−1

−1

a · b + c · d = a · b · d · d + b · b · c · d = (a · d + b · c) · (b · d) i) Folgt sofort wegen der Kommutativit¨at der Multiplikation. j) und k) folgen sofort aus der Definition der Potenzschreibweise.

¨ l) folgt mithilfe kombinatorischer Uberlegungen und wegen des Distributivgesetzes. m) Mit dem Distributivgesetz wird ausgerechnet: 2

2

2

(a + b)(a − b) = a(a − b) + b(a − b) = a − ab + ab − b = a − b

2

n) Durch Addition von −a auf beiden Seiten ergibt sich die L¨osung zu: x = b + (−a). Sei x eine weitere L¨osung, dann ist: a + x = a + x , woraus sofort x = x folgt. o) Durch Addition von −b auf beiden Seiten ergibt sich ax = c − b. Da a = 0, −1 k¨onnen wir beide Seiten mit a multiplizieren. Insgesamt ergibt sich die L¨osung −1  x = (c − b) · a . Sei x eine weitere L¨osung, dann ist: ax + b = ax + b, woraus sofort x = x folgt.

Ringe, Integrit¨atsbereiche und K¨orper

77

p) In den Beweisen dieser Aussagen werden nur Ringaxiome und bereits f¨ur Ringe gezeigte Aussagen verwendet. 2 Aus der Eigenschaft a) folgt unmittelbar a · 0 = b · 0 f¨ur alle a, b ∈ K. W¨urde die 0, dass additive Einselement, ein multiplikatives Inverses besitzen, dann w¨urde a = b f¨ur alle a, b ∈ K gelten, d.h. insbesondere auch 0 = 1. Jeder K¨orper K w¨urde dann nur ein einziges Element enthalten, was offensichtlich unsinnig w¨are. Deshalb wird in der Definiton von K¨orpern gefordert, dass das additive Einselement kein multiplikatives Inverses besitzt. (Q; +, ·) und (R; +, ·) sind Beispiele f¨ur K¨orper. Wir wollen diese K¨orper im Folgenden mit Q bzw. mit R bezeichnen. In beiden K¨orpern ist das Einselement bez¨uglich der Addition + die Zahl 0 und das Einselement bez¨uglich der Multiplikation · die Zahl 1. Q und R sind (wie die ganzen Zahlen f¨ur Ringe) Prototypen f¨ur K¨orper. Deshalb werden wir im Folgenden auch bei K¨orpern allgemein die Operationen mit + anstelle mit ∗1 bzw. mit · anstelle mit ∗2 notieren und diese Addition bzw. Multiplikation nennen. Weiterhin bezeichnen wir das Einselement bez¨uglichlich der Addition auch allgemein mit 0 (e1 = 0) sowie das Einselement bez¨uglichlich der Multiplikation auch allgemein mit 1 (e2 = 1). Wir nennen diese neutralen Elemente auch das additive Einselement bzw. das multiplikative Einselement. Des Weiteren schreiben wir das Inverse zu einem −1 K¨orperelement a bez¨uglich + nicht als a sondern als −a, w¨ahrend wir das In−1 verse von a bez¨uglich · weiterhin a oder a1 , a = 0, schreiben. Bei Verwendung der Bruchschreibweise schreiben wir ab anstelle von a · 1b . Korollar 3.4



a) Sei K ein K¨orper, dann ist K = K − {0}.

b) K¨orper sind nullteilerfrei. c) Jeder K¨orper ist ein Integrit¨atsbereich. Beweis a) folgt unmittelbar aus Korollar 3.2 und Definition 3.4. b) folgt unmittelbar aus Satz 3.3. c) folgt unmittelbar aus b) und den Definitionen 3.3 und 3.4.

2

F¨ur endliche Integrit¨atsbereiche gilt auch die Umkehrung von Aussage c). Satz 3.5

Sei I ein endlicher Integrit¨atsbereich. Dann ist I ein K¨orper.

Beweis Wir f¨uhren den Beweis analog zum Beweis von Satz 3.3 c) Teil (1). Es sei I = { a1 , . . . , an } ein Integrit¨atsbereich. Wir m¨ussen zeigen, dass jedes Element ai = 0 ein Inverses besitzt. Es sei a1 = 0. Dann gilt a1 ai = a1 aj f¨ur i = j. Denn, w¨are a1 ai = a1 aj f¨ur ein i = j, dann erg¨abe sich mit der K¨urzungsregel ai = aj , ein Widerspruch. Es gibt also insgesamt n verschiedene Produkte a1 ai , 1 ≤ i ≤ n. Da I abgeschlossen ist und n Elemente hat, kommt jedes Element von I als genau ein solches Produkt vor, also auch das multiplikative Einselement 1. Es gibt also ein Element ak in I mit a1 ak = 1, d.h. a1 besitzt das Inverse ¨ k¨onnen nun f¨ur alle anderen Elemente von I (außer f¨ur ak . Diese Uberlegungen 0) angestellt werden, womit die Behauptung folgt. 2

78

Unterringe, Unterk¨orper, Ring- und K¨orperhomomorphismen

In sp¨ateren Kapiteln besch¨aftigen wir uns noch intensiver mit endlichen Ringen sowie mit endlichen Integrit¨atsbereichen, die, wie wir oben gezeigt haben, ja endliche K¨orper sind. Bei den bisher betrachteten kommutativen Ringen mit Einselement Zm , 2 ≤ m ≤ 8, k¨onnen wir feststellen, dass Z2 , Z3 , Z5 und Z7 K¨orper, Z4 , Z6 und Z8 keine K¨orper sind. Es stellt sich grunds¨atzlich die Frage, f¨ur welche m ∈ N, m ≥ 2, Zm ein K¨orper ist – haben Sie eine Vermutung? Hierauf gehen wir sp¨ater noch ein.

3.4

Unterringe, Unterk¨orper, Ring- und K¨orperhomomorphismen

Definition 3.5 Sei R ein Ring sowie K ein K¨orper. Unterring

a) U ⊆ R heißt Unterring von R, falls U selbst einen Ring bildet.

Teilk¨orper

b) U ⊆ K heißt Unterk¨orper oder Teilk¨orper von K, falls U selbst einen K¨orper bildet. 2 Beispiel 3.3

a) F¨ur jedes m ∈ N ist mZ ein Unterring von Z.

b) Q ist ein echter Unterk¨orper von R.

2

¨ Die Ubertragung des Homo- und des Isomorphiebegriffes auf Ringe und K¨orper ist offensichtlich: Die Strukturerhaltungseigenschaft muss f¨ur beide Verkn¨upfungen gefordert werden: Definition 3.6 Es seien R1 = (R1 , +1 , ·1 ) und R2 = (R2 , +2 , ·2 ) zwei Ringe. Eine totale Abbildung ϕ : R1 → R2 , f¨ur die ϕ(a +1 b) = ϕ(a) +2 ϕ(b) und ϕ(a ·1 b) = ϕ(a) ·2 ϕ(b) Ringhomomorphismus Ringisomorphismus

f¨ur alle a, b ∈ R1 gilt, heißt Ringhomomorphismus von R1 nach R2 . Ist ϕ außerdem bijektiv, dann heißt ϕ Ringisomorphismus zwischen R1 und R2 , und R1 und R2 heißen isomorph zueinander. Sind die Ringe R1 und R2 isomorph so schreiben wir wie bei Gruppen: R1 ∼ = R2 . Die Definitionen gelten analog f¨ur K¨orper.

2

Korollar 3.5 Seien K1 und K2 zwei K¨orper und ϕ : K1 → K2 ein Homomorphismus, dann ist ϕ injektiv. Beweis Da ϕ ein Homomorphismus bez¨uglich der Multiplikation ist, muss (siehe Korollar 2.9) ϕ(1K1) = 1K2 gelten. Wir nehmen an, dass ϕ nicht injektiv ist. Dann gilt f¨ur den Kern von ϕ bez¨uglich der Addition (siehe Korollar 2.12):

Ringe, Integrit¨atsbereiche und K¨orper

79

|Kern(ϕ)| > 1. Sei also a ∈ Kern(ϕ) mit a = 0K1. F¨ur a gilt also ϕ(a) = 0K2. Damit k¨onnen wir rechnen −1

−1

−1

1K2 = ϕ(1K1) = ϕ(a ·1 a ) = ϕ(a) ·2 ϕ(a ) = 0K2 ·2 ϕ(a ) = 0K2 was den offensichtlichen Widerspruch 1K2 = 0K2 beweisen w¨urde.

2

Im Unterschied zu Gruppenhomomorphismen sind K¨orperhomomorphismen also immer injektiv.

3.5

K¨orpererweiterungen

Fragen wir im K¨orper Q der rationalen Zahlen nach einer L¨osung der Gleichung 2 x = 2, stellen wir fest, dass dort keine L¨osung existiert. Es stellt sich die Frage nach der Erweiterung von Q um Elemente, so dass die Gleichung in dem erweiterten K¨orper l¨osbar ist. Definition 3.7 Sei K ein K¨orper und α ∈ / K. Bildet K(α) = { a + b · α | a, b ∈ K } ebenfalls einen K¨orper, dann heißt K(α) Erweiterungsk¨orper von K oder der um α adjungierte K¨orper. 2 √ Beispiel 3.4 Q( 2) ist ein Erweiterungsk¨orper von Q. Die neutralen Elemente von√ Q bleiben erhalten, denn 0 und 1 sind auch neutrale Elemente in R, also auch f¨ur 2. √ √ √ ∈ Q. Deshalb kommen zu Q nur die Produkte b√ 2 Weiterhin gilt: 2 · 2 = 2 √ und damit die Summen a+b 2 f¨ur a, b ∈ Q hinzu. Die Tr¨agermenge von Q( 2) √ ist also: { a + b 2 | a, b ∈ Q }. √ Es l¨asst sich leicht nachrechnen, dass Q( 2) abgeschlossen gegen¨uber Addition und Multiplikation ist: √ √ √ √ (3.1) (a + b 2) + (c + d 2) = (a + c) + (b + d) 2 ∈ Q( 2) sowie √ √ √ √ (a + b 2) · (c + d 2) = (ac + 2bd) + (ad + bc) 2 ∈ Q( 2)

(3.2)

Wir m¨ussen noch zeigen, dass zu jedem Element aus dieser Menge sowohl das additive als auch das multiplikative Inverse ebenfalls Elemente der Menge sind. √ Dann wissen wir, dass Q( 2) einen K¨orper bildet, da alle anderen Axiome gelten, weil Q und R K¨orper sind. √ Das additive Inverse zu a + b 2 ist offensichtlich √ √ √ √ (3.3) −(a + b 2) = (−a) + (−b) 2 = −a − b 2 ∈ Q( 2)

Erweiterungsk¨orper

80

K¨orpererweiterungen

√ Wir zeigen noch die Existenz des multiplikativen c + d 2 ist invers zu √ Inversen: √ √ 7 a + b 2 f¨ur a, b ∈ Q mit b = 0, falls (a + b 2) · (c + d 2) = 1 ist. Dies ist der Fall, falls √ √ √ ac + bc 2 + ad 2 + 2bd = (ac + 2bd) + (ad + bc) 2 = 1 ist, und dies gilt, falls die Gleichungen ac + 2bd = 1 ad + bc = 0

(3.4) (3.5)

gelten. Wir l¨osen Gleichung (3.5) nach c auf (b = 0 ist vorausgesetzt): c=−

ad b

(3.6)

Wir setzen diesen Term f¨ur c in Gleichung (3.4) ein und erhalten −

2b2 − a2 a2 d + 2bd = d=1 b b

woraus d=

b 2b2 − a2

(3.7)

folgt. Einsetzen von (3.7) in (3.6) liefert c=−

2b2

a − a2

(3.8)

Aus (3.8) und (3.7) folgt, dass √ b a + 2 2 2 2 −a 2b − a √ das multiplikative Inverse zu a+b 2 ist. Diese Zahlen existieren f¨ur alle a, b ∈ Q mit b = 0, denn die Nenner werden genau dann 0, wenn b2 = 2a2 ist, und diese Gleichung ist f¨ur kein a, b ∈ Q mit b = 0 l¨osbar. Es gilt also −



2b2

√ −1 a+b 2 =−

f¨ur alle a, b ∈ Q mit b = 0.

2b2

√ a b + 2 2 2 2 −a 2b − a

(3.9) 2

Der folgende Satz gibt einer Verallgemeinerung der im obigen Beispiel verwendeten Methode zur Erweiterung eines K¨orpers an. 7

√ Der Fall b = 0 ist uninteressant, da dann a + b 2 = a ist, und a = 0 ist als rationale Zahl invertierbar.

Ringe, Integrit¨atsbereiche und K¨orper

Satz 3.6

81

Es sei K ein K¨orper sowie α ∈ K mit α = c2 f¨ur alle c ∈ K.

a) Die Struktur K(α) = ( K × K, +α , ·α ) mit (a, b) +α (c, d) = (a + c, b + d) (a, b) ·α (c, d) = (ac + αbd, ad + bc)

(3.10) (3.11)

ist ein K¨orper. b) K(α) ist eine Erweiterung von K, d.h., dass K in dem Sinne in K(α) eingebettet ist, dass alles, was in K gerechnet werden kann, auch in K(α) gerechnet werden kann. Beweis a) Die Abgeschlossenheit der Operationen +α und ·α in K(α) ist offensichtlich. Assoziativit¨at von +α : ((a, b) +α (c, d)) +α (e, f ) = (a + c, b + d) +α (e, f ) = ((a + c) + e, (b + d) + f ) = (a + (b + e), b + (d + f )) = (a, b) +α (c + e, d + f ) = (a, b) +α ((c, d)) +α (e, f )) Assoziativit¨at von ·α : Einerseits ist ((a, b) ·α (c, d)) ·α (e, f ) = (ac + αbd, ad + bc) ·α (e, f ) = (ace + αbde + αadf + αbcf, acf + αbdf + ade + bce) (3.12) Andererseits ist (a, b) ·α ((c, d) ·α (e, f )) = (a, b) ·α (ce + αdf, cf + de) = (ace + αadf + αbcf + αbde, acf + ade + bce + αbdf ) (3.13) Da (3.12) und (3.13) gleich sind, folgt die Assoziativit¨at. Die Kommutativit¨at der beiden Operationen folgt unmittelbar aus der Kommutativit¨at der Addition + und der Kommutativit¨at der Multiplikation · im K¨orper K. Das additive Einselement ist 0α = (0, 0), denn es ist (a, b) +α (0, 0) = (a + 0, b + 0) = (a, b)

82

K¨orpererweiterungen

Das multiplikative Einselement ist 1α = (1, 0), denn es ist (a, b) ·α (1, 0) = (a · 1 + α · b · 0, a · 0 + b · 1) = (a, b) Das additive Inverse von (a, b) ist −α (a, b) = (−a, −b), denn es ist (a, b) +α −α (a, b) = (a, b) +α (−a, −b) = (a − a, b − b) = (0, 0) − 1

Wir m¨ussen noch das multiplikative Inverse (a, b) α von (a, b) bestimmen. Sei (c, d) das Inverse von (a, b), dann muss (a, b) ·α (c, d) = (1, 0) gelten, d.h. es muss (ac + αbd, ad + bc) = (1, 0) sein. Das ist der Fall, wenn (3.14) (3.15)

ac + αbd = 1 ad + bc = 0

gilt. a und b sind gegeben, wir m¨ussen mithilfe der beiden Gleichungen c und d bestimmen. Dazu k¨onnen wir voraussetzen, dass b = 0, also invertierbar ist. − 1 Denn f¨ur b = 0 ist (a, b) = (a, 0), und das multiplikative Inverse (a, 0) α von −1 (a, 0) ist (a , 0), denn es ist −α 1

(a, 0) ·α (a, 0)

−1

= (a, 0) ·α (a , 0) = (a · a

−1

−1

+ α · 0 · 0, a · 0 + 0 · a ) = (1, 0)

Aus (3.15) folgt c = −adb

−1

(3.16)

Wir setzen (3.16) in (3.14) ein und l¨osen nach d auf: −1  2 2 d = b · αb − a

(3.17)

Jetzt setzen wir (3.17) in (3.16) ein und erhalten −1  2 2 c = −a · αb − a Es folgt −α 1

(a, b) 2

 =

2

(3.18)

−1 −1   2  2 2 2 −a · αb − a , b · αb − a 2

2

−1 2

αb − a ist invertierbar, denn es ist αb − a = 0; ansonsten w¨are α = (ab ) . Es ist aber vorausgesetzt, dass α nicht das Quadrat eines K¨orperelementes ist. Wir zeigen noch die Distributivit¨at: Einerseits ist: (a, b) ·α ((c, d) +α (e, f ))

Ringe, Integrit¨atsbereiche und K¨orper

= (a, b) ·α (c + e, d + f ) = (a(c + e) + αb(d + f ), a(d + f ) + b(c + e)) = (ac + ae + αbd + αbf, ad + af + bc + be) Andererseits ist: ((a, b) ·α (c, d)) +α ((a, b) ·α (e, f )) = (ac + αbd, ad + bc) +α (ae + αbf, af + be) = (ac + αbd + ae + αbf, ad + bc + af + be) Beide Ergebnisse sind gleich, also gilt die Distributivit¨at. Insgesamt haben wir gezeigt, dass K(α) ein K¨orper ist. b) Wir definieren φ : K → K(α) durch φ(a) = (a, 0). Offensichtlich ist φ total und injektiv, und es gilt φ(a + c) = (a + c, 0) = (a, 0) +α (c, 0) = φ(a) +α φ(c) φ(a · c) = (a · c, 0) = (a, 0) ·α (c, 0) = φ(a) ·α φ(c) φ ist also ein Homomorphismus von K nach K(α) mit dem Wertebereich Bild (φ) = K × {0}. Es folgt K ∼ = K × {0}. Insofern ist K in K(α) eingebettet. Die Definitionen (3.10) und (3.11) ergeben in K × {0} (a, 0) +α (b, 0) = (a + b, 0 + 0) = (a + b, 0) (a, 0) ·α (b, 0) = (ab + α · 0 · 0, a · 0 + 0 · b) = (ab, 0) und stimmen damit, wenn wir von der 0-Komponente absehen, mit der Addition und Multiplikation in K u¨ berein (was ja auch eine wesentliche Anforderung f¨ur die Erweiterung von K zu K(α) ist). 2

3.6

Restklassengruppen und die S¨atze von Euler und Fermat

Wir kehren nun zu einigen offenen Fragen die Ringe Zm und die zugeh¨origen ∗ Einheitengruppen Zm betreffend zur¨uck, wie zum Beispiel: Wann ist a ∈ Zm invertierbar, also eine Einheit? F¨ur welche m ∈ N sind alle Elemente von Zm – nat¨urlich außer der 0 – invertierbar? Verbunden mit dieser Frage ist die Frage ¨ nach den m ∈ N, f¨ur die Zm einen K¨orper bildet. Aus Beispielen und Ubungen wissen wir, dass das f¨ur m = 2, 3, 5, 7 der Fall ist, f¨ur m = 4, 6, 8 hingegen nicht. Vielleicht haben Sie auf der Basis dieser Beobachtungen schon Vermutungen f¨ur die Antworten der Fragen angestellt. Die Antworten werden in diesem Abschnitt erfolgen, sie sind von wesentlicher Bedeutung f¨ur Anwendungen z.B. in den Bereichen Modulare Arithmetik, Primzahltests und Verschl¨usselung, die wir sp¨ater noch betrachten werden.

83

84

Restklassengruppen und die S¨atze von Euler und Fermat



Definition 3.8 Zm , die Einheitengruppe von Zm , heißt Restklassengruppe modulo m. 2 Restklassengruppe modulo m



Satz 3.7 Es gilt a ∈ Zm genau dann, wenn (a, m) = 1 ist. Beweis ⇒“: Wir nehmen an, dass (a, m) = t > 1 ist. Da t|m ist, existiert ein ” x mit m = t · x. Da t > 1 ist, ist x = m, d.h. – modulo m gerechnet – ist x = 0. Da andererseits t|a ist, ist auch t · x|a · x, d.h. es existiert ein y mit a·x=t·x·y =m·y =0=a·0 Da a invertierbar ist, folgt aus a·x = a·0, dass x = 0 ist, was im Widerspruch zu der vorher hergeleiteten Aussage x = 0 steht. Die gemachte Annahme (a, m) = t > 1 ist also falsch, d.h. es ist (a, m) = 1. ⇐“: Allgemein gilt (siehe Korrollar 1.14): Ist t = (x, y), dann gibt es s und r mit t = xs + yr. F¨ur (a, m) = 1 bedeutet dies, dass es s und r gibt mit 1 = as + mr. ∗ Da mr = 0 in Zm ist, folgt, dass as = 1 ist, d.h. s ist invers zu a. a ist also invertierbar. 2 Korollar 3.6



a) Sei p ∈ P, dann gilt Zp = Zp − {0} = {1, 2, . . . , p − 1}. ∗

b) Es ist m ∈ P genau dann, wenn Zm ein Integrit¨atsbereich ist. ∗

c) Es ist m ∈ P genau dann, wenn Zm ein K¨orper ist. ∗

d) Sei p ∈ P. Die Gleichung x2 = 1 hat in Zp genau die beiden L¨osungen x = 1 und x = −1. ∗

e) Sei p ∈ P. In Zp sind nur die beiden Elemente 1 und p − 1 = −1 selbstinvers. Beweis a) folgt unmittelbar aus Satz 3.7. ∗

b) “⇒“: Wir nehmen an, Zm besitze Nullteiler a und b. Es ist a, b ∈ / { 1, −1 } = { 1, m−1 }, denn 1 und −1 sind offensichtlich keine Nullteiler. Es gilt also a·b = 0 = m, d.h. m ist eine zusammengesetzte Zahl, also m ∈ / P, ein Widerspruch. ∗

⇐“: Wir nehmen an, m ∈ / P, dann gibt es a, b ∈ Zm − { 1, −1 } mit m = a · b, ” ∗ also a · b = 0, d.h. a und b sind Nullteiler, ein Widerspruch dazu, dass Zm ein Integrit¨atsbereich ist. c) folgt unmittelbar aus Satz 3.5 und b). d) 1 und −1 sind offensichtlich L¨osungen der Gleichung x2 = 1. F¨ur p = 2 gilt 1 = −1, und die Behauptung ist offensichtlich erf¨ullt. F¨ur p = 3 ist −1 = 2, und 2 es ist 2 = 1 in Z3 . 2



Es sei nun p ≥ 5. Wir nehmen an, das x = 1 noch die L¨osung a ∈ Zp mit a = 1 2 2 und a = −1, d.h. mit 2 ≤ a ≤ p − 2, hat. Dann gilt a = 1, d.h. a − 1 = 0, d.h. (a−1)(a+1) = 0. Es ist 1 ≤ a−1 < p−2 und 3 ≤ a+1 < p und damit sowohl a − 1 = 0 als auch a + 1 = 0. Wegen unserer Annahme ist (a − 1)(a + 1) = 0, ∗ d.h. a − 1 und a + 1 sind Nullteiler, ein Widerspruch dazu, dass Zp ein K¨orper ist. Die Annahme ist also widerlegt und damit die Behauptung gezeigt. e) folgt unmittelbar aus d).

2

Ringe, Integrit¨atsbereiche und K¨orper

85

F¨ur p ∈ P werden die K¨orper Zp auch mit Fp (von Englisch Field“) bezeichnet, ” ∗ und die Einheitengruppen Zp , p ∈ P, heißen prime Restklassengruppen modulo p. Definition 3.9

Die Funktion ϕ : N → N definiert durch  ∗ ϕ(m) = ordZ∗ = Zm 

Eulersche ϕ-Funktion

m

2

heißt Eulersche ϕ-Funktion. Korollar 3.7

a) Es ist ϕ(m) = {a ∈ Zm | (a, m) = 1}.

b) F¨ur p ∈ P gilt ϕ(p) = p − 1. Beweis a) folgt unmittelbar aus Satz 3.7. 2

b) folgt unmittelbar aus Korollar 3.6 a). Korollar 3.8

Sei p ∈ P, α ∈ N, α ≥ 2, dann gilt ϕ(p ) = p α

α−1

(p − 1).

α

Beweis Gem¨aß Korollar 3.7 ist ϕ(p ) die Anzahl der Zahlen zwischen 1 und α α p − 1, die teilerfremd zu p sind. Wir  berechnen diese Anzahl folgendermaßen:  α Jede Zahl a ∈ 0, 1, 2, . . . , p − 1 l¨asst sich im p-adischen Zahlensystem mit den Ziffern 0, 1, . . . , p − 1 eindeutig darstellen in der Form a = a0 + a1 p + . . . + aα−1 p

α−1

(3.19)

1. Es gilt (p , a) = mit ai ∈ {0, 1, . . . , p − 1}, 0 ≤ i ≤ α −   1 genau dann, wenn α a0 = 0 ist. Die Anzahl der Zahlen a in 1, 2, . . . , p − 1 mit der Darstellung ¨ (3.19) mit a0 = 0 ergibt sich durch kombinatorische Uberlegung: F¨ur den Koeffizienten a0 gibt es p − 1 M¨oglichkeiten und f¨ur die α − 1 Koeffizienten ai , 1 ≤ i ≤ α − 1, gibt es jeweils p Ziffern in einem p-adischen Zahlensystem, d.h. α−1 α es gibt insgesamt (p − 1)p teilerfremde Zahlen zu p , womit die Behauptung gezeigt ist. 2 ! Korollar 3.9 F¨ur alle m ∈ N gilt d|m, d>0 ϕ(d) = m. α

Beweis Wir betrachten die Mengen Di = {x | 1 ≤ x ≤ m, (m, x) = i}, 1 ≤ i ≤ m. Di enth¨alt alle Zahlen zwischen 1 und m, deren gr¨oßter gemeinsamer Teiler mit m die Zahl i ist. Die Mengen Di sind paarweise disjunkt. Es gilt also  m

m=

i=1

|Di | =



|Dd |

(3.20)

d|m

Ist d ein Teiler von m, dann  alt Dd alle Zahlen x, 1 ≤x ≤ m, die Vielfache  enth¨ von d sind und f¨ur die xd , md = 1 gilt. Es gilt also ϕ md = |Dd |. Mit der Gleichung (3.20) folgt hieraus  m =m ϕ d d|m

Prime Restklassengruppen modulo p

86

Polynomringe

Wegen d = m m folgt, dass sowohl mit d als auch mit d laufen werden. Damit gilt auch   m ϕ(d) = ϕ d d|m

m d

alle Teiler von m durch-

d|m

2

und damit insgesamt die Behauptung.

Aus Korollar 2.8 b) und Definition 3.9 folgt unmittelbar der folgende Satz von Euler. Satz von Euler



Satz 3.8 F¨ur alle a ∈ Zm gilt a

ϕ(m)

2

= 1.

Als Spezialfall folgt mithilfe von Korollar 3.7 b) der Kleine Satz von Fermat. Kleiner Satz von Fermat



Satz 3.9 Sei p ∈ P. Dann gilt f¨ur alle a ∈ Fp : a

p−1

2

= 1.

Varianten dieses Satzes werden im folgenden Korollar aufgelistet. Korollar 3.10 a) Sei p ∈ P und a ∈ N mit (a, p) = 1, dann ist a

p−1

b) Sei n ∈ N und a ∈ N mit (a, n) = 1 und a

n−1



= 1 (p).

= 1 (n), dann ist n ∈ / P.

2

¨ Ubungsaufgaben ∗

3.5 (1) Ist 999 ∈ Z103 ? Begr¨unden Sie Ihre Antwort! ∗

−1

(2) Falls 999 ∈ Z103 ist, dann bestimmen Sie 999 ! ∗

(3) Ist 101 ∈ Z103 ? Begr¨unden Sie Ihre Antwort! ∗

−1

(4) Falls 101 ∈ Z103 ist, dann bestimmen Sie 101 ! 3.6 Bestimmen Sie ordZ∗ ! 1331

5

3.7 Beweisen Sie, dass 5|n − n f¨ur alle n ∈ N0 gilt! 3.8 Zeigen sie, dass f¨ur alle a, b ∈ Z und p ∈ P gilt: Ist a = b (p), dann ist p p 2 2 auch a = b (p )! p

3.7

p

Polynomringe

Bei der Codierung von Daten spielen Polynome u¨ ber endlichen K¨orpern eine wichtige Rolle. Wir werden in diesem Kapitel sehen, dass Polynome addiert und multipliziert werden k¨onnen und dass die so entstehende algebraische Struktur einen Integrit¨atsbereich bildet. Mit Polynomen kann man also genau wie mit ganzen Zahlen rechnen.

Ringe, Integrit¨atsbereiche und K¨orper

Definition 3.10

87

a) Sei R ein Ring, dann heißt n

P (x) = an x + an−1 x

n−1

Polynom

2

+ . . . + a2 x + a1 x + a0 =

n 

ai x

i

i=0

mit ai ∈ R, 0 ≤ i ≤ n, ein Polynom u¨ ber R mit der Unbekannten (Unbestimmten, Variablen) x. Falls die Bezeichnung der Unbekannten keine Rolle spielt, schreibt man anstelle von P (x) auch P . Die ai , 0 ≤ i ≤ n, heißen die Koeffizienten von P . b) Es existiere mindestens ein i, 0 ≤ i ≤ n mit ai = 0, und sei k = max {i | 0 ≤ i ≤ n, ai = 0}, dann heißt ak der f¨uhrende Koeffizient von P und grad (P ) = k heißt Grad von P . Ist ak = 1, dann heißt P normiert oder monisch. Polynome vom Grad 1 heißen linear. c) Mit R[x] bezeichnen wir die Menge aller Polynome u¨ ber R. ! !n i j d) Seien P, Q ∈ R[x] mit P = m i=0 ai x und Q = j=0 bj x zwei Polynome u¨ ber R mit grad (P ) = m und grad (Q) = n. Dann heißt P +Q=

s 

ck x

k

Koeffizient Grad eines Polynom ¨ Fuhrender Koeffizient Monisches Polynom Lineares Polynom Summe von Polynomen

k=0

mit s = max {m, n} und ck = ak + bk f¨ur 0 ≤ i ≤ min {m, n} sowie ck = ak f¨ur n < k ≤ m, falls n < m, bzw. ck = bk f¨ur m < k ≤ n, falls m < n die Summe von P und Q, und s  i P ·Q= di x i=0

! mit di = ik=0 ak bi−k , 0 ≤ i ≤ m + n, wobei ak = 0 f¨ur k > m, falls m > n, bzw. bk = 0 f¨ur k > n, falls n > m, heißt das Produkt von P und Q. e) P und Q heißen gleich, falls m = n und ai = bi , 0 ≤ i ≤ m, ist. 2

3

2

2

Beispiel 3.5 a) Es seien P = x + 3x − 1 und Q = 2x − 5x + 7 Polynome u¨ ber R, dann gilt 3

2

P + Q = 2x − 4x + 3x + 6 5

4

3

2

P · Q = 2x + x − 17x + 12x + 21x − 7 3

3

2

b) Es seien P = x + x + 1 und Q = x + x + 1 Polynome u¨ ber F2 , dann gilt 2

P +Q=x +x 6

5

4

3

2

P ·Q=x +x +x +x +x +x+1 5

2

5

3

c) Es seien P = 2x + x + 1 und Q = 2x + x + 2 Polynome u¨ ber Z4 , dann gilt 3

2

P +Q=x +x +3 8

7

5

3

2

P · Q = 2x + 2x + 3x + x + 2x + 2

2

Produkt von Polynomen

88

Irreduzible und prime Elemente

Korollar 3.11 a) Ist R ein Ring und P, Q ∈ R[x], dann gilt: (1) grad (P + Q) ≤ max {grad (P ), grad (Q)}. (2) grad (P · Q) ≤ grad (P ) + grad (Q). b) Ist I ein Integrit¨atsbereich und P, Q ∈ I[x], dann gilt: (1) grad (P + Q) ≤ max {grad (P ), grad (Q)}. (2) grad (P · Q) = grad (P ) + grad (Q).

Nullpolynom Einspolynom Konstante Polynome

c) Polynomaddition und -multiplikation sind kommutative Operationen. Sie erf¨ullen die Assoziativgesetze f¨ur Addition bzw. f¨ur Multiplikation sowie das Distributivgesetz. Das Nullpolynom 0 ist das Einselement bez¨uglich der Addition und das Einspolynom 1 ist das Einselement bez¨uglich der Multiplikation. Zum Polynom P ist das Polynom −P = −1 · P additiv invers. d) Die Konstanten a ∈ R heißen konstante Polynome in R[x]. F¨ur a = 0 gilt grad (a) = 0; wir setzen grad (0) = −∞. ∗

e) Sei R ein Ring, dann besitzen nur die konstanten Polynome a ∈ R Inverse; ∗ ∗ es gilt also R[x] = R . Alle nicht konstanten Polynome besitzen kein Inverses. Selbst K[x] bildet f¨ur K¨orper K im Allgemeinen keinen K¨orper. 2 Satz 3.10 a) Sei R ein Ring. Dann bildet (R[x], +, ·) einen kommutativen Ring mit Einselement. b) Sei I ein Integrit¨atbereich. Dann bildet (I[x], +, ·) ebenfalls einen Integrit¨atsbereich. Beweis a) Folgt unmittelbar aus Korollar 3.11 c). b) Es seien P, Q ∈ I[x] mit P = 0 und Q = 0; es gilt also grad (P ) ≥ 0 und grad (Q) ≥ 0. Mit Korollar 3.11 b) (2) folgt grad (P ·Q) = grad (P )+grad (Q) ≥ 0. Es folgt, dass P · Q = 0 ist.

3.8

Irreduzible und prime Elemente

Definition 3.11 Sei I ein Integrit¨atsbereich sowie a, b ∈ I. ∗

Assoziiertes Element

a) a ist assoziiert zu b genau dann, wenn gilt: Ist b = aq, dann ist q ∈ I , d.h. a und b unterscheiden sich multiplikativ nur um eine Einheit. Wir schreiben a ∼ b, wenn a und b assoziiert sind, sonst a ∼ b.

Echter Teiler

b) b heißt echter Teiler von a genau dann, wenn b|a und a ∼ b gilt.

Irreduzibles Element

c) a heißt irreduzibel genau dann, wenn a ∈ / I ist und aus b|a folgt, dass 1 ∼ b oder a ∼ b gilt. a besitzt also außer Einheiten keine echten Teiler.

Primelement

d) p ∈ I − {0} heißt Primelement genau dann, wenn p ∈ / I und aus p|ab folgt, dass p|a oder p|b gilt. 2





Ringe, Integrit¨atsbereiche und K¨orper

89

Beispiel 3.6 a) Wir betrachten den Integrit¨atsbereich F5 [x] der Polynome u¨ ber dem K¨orper F5 . Es gilt z.B. 2x + 1|x + 3 denn es ist x + 3 = (2x + 1) · 3 −1

Da 3

= 2 ist, gilt auch x + 3|2x + 1 denn es ist 2x + 1 = (x + 3) · 2

Die Polynome x + 3 und 2x + 1 unterscheiden sich in F5 [x] also nur durch die zu einander inversen Einheiten 2 und 3. Die beiden Polynome sind also assoziiert in F5 [x]: x + 3 ∼ 2x + 1. b) Im Integrit¨atsbereich Z der ganzen Zahlen gilt a ∼ b genau dann, wenn a = b ∗ oder a = −b ist. Denn, da Z = {1, −1} ist, gilt a ∼ b genau dann, wenn a = b·1 oder a = b · −1, also a = b oder a = −b ist (siehe auch Korrollar 1.2 j). 3

c) Wir betrachten das Polynom P = x + x + 1 ∈ F3 [x]. Es gilt: 3

2

x + x + 1 = (x + 2)(x + x + 2) 3

2

x + x + 1 = (2x + 1)(2x + 2x + 1) Durch Nachrechnen (z.B. jeweils durch Dividieren durch alle nicht konstanten Polynome kleineren Grades) stellt man fest, dass alle vier Polynome kein nicht konstantes Polynom als Teiler besitzen. Alle vier Polynome besitzen als einzigen Teiler außer sich selbst noch die Konstante 2. Diese ist aber eine Einheit in F3 und damit in F3 [x]. Alle vier Polynome besitzen also außer einer Einheit keine weiteren echten Teiler. Damit besitzt das Polynom P in F3 [x] zwei verschiedene irreduzible Faktorisierungen. √ d) Wir betrachten den um −2 erweiterten Integrit¨atsbereich √ √    Z −2 = a + b −2 | a, b ∈ Z Es gilt z.B. 6=2·3 6 = (2 +



−2) · (2 −



−2)

√ Die Faktoren 2 und 3 sowie (2 + −2) und (2 − −2) sind irreduzibel. Somit haben wir ein weiteres Beispiel daf¨ur, dass die Faktorisierung in irreduzible Elemente nicht eindeutig sein muss. √ Des Weiteren gilt, dass 2 ein Teiler von 6 und damit ein √ √ Teiler von (2 + −2) · (2 − √ −2) ist. Aber 2 ist weder ein Teiler von √(2 + −2) noch ein Teiler von −2 . (2 − −2). 2 ist also kein Primelement in Z √

e) Die Zahl 2 ist ein Primelement von Z, denn f¨ur alle Zahlen a, b ∈ Z mit 2|ab folgt 2|a oder 2|b. Wir zeigen dies durch einen Widerspruchsbeweis. Es sei also

90

Irreduzible und prime Elemente

2|ab, und wir nehmen an, dass weder 2|a noch 2|b gelte. Aus 2|ab folgt, dass es ein q gibt mit ab = 2q

(3.21)

Aus 2 | a und 2 | b folgt, dass es qa und qb gibt mit a = 2qa + 1 bzw. b = 2qb + 1

(3.22)

Aus (3.22) folgt ab = 2(2qa qb + qa + qb ) + 1 womit ab eine ungerade Zahl w¨are, was einen Widerspruch zu (3.21) darstellt. Unsere Annahmen sind also falsch, d.h. es gilt 2|a oder 2|b, wenn 2|ab gilt, was zu zeigen war. Die Zahl 4 ist kein Primelement in Z, denn es gilt z.B. 4|6 · 9, aber weder 4|6 noch 4|9. Die positiven Primelemente von Z sind gerade die Primzahlen. Diese haben wir bereits in Kapitel 1.4 betrachtet. 2 Das Beispiel 3.6 d) zeigt, dass irreduzible Elmente keine Primelemente sein m¨ussen. Primelemente sind aber immer irreduzibel. Das besagt der folgende Satz. Satz 3.11 Sei p ein Primelement im Integrit¨atsbereich I. Dann ist p irreduzibel in I. Beweis Wir nehmen an, p sei prim, aber nicht irreduzibel. Dann l¨asst sich p ∗ faktorisieren in p = ab mit a, b ∈ / I : p besitzt Teiler, die keine Einheiten sind. Da p prim ist, muss gelten p|a oder p|b. Es sei p ein Teiler von a (die folgende Argumentation kann f¨ur den Fall p|b analog u¨ bernommen werden). Es gibt also ein q ∈ I mit a = pq. Daraus folgt ab = pqb und daraus, da p = ab ist, p = pqb. ∗ Mithilfe der K¨urzungsregel gilt 1 = qb, womit b invertierbar, d.h. b ∈ I ist. Dies ∗ ist aber ein Widerspruch zur Annahme b ∈ /I . 2 Der folgende Satz zeigt, dass bei den ganzen Zahlen auch die Umkehrung gilt: Ist p ∈ Z irreduzibel, dann ist p ein Primelement von Z. Satz 3.12 Sei p ∈ Z irreduzibel, dann ist p auch prim. Beweis Sei p also irreduzibel und p|ab. Wir m¨ussen zeigen, dass dann p|a oder p|b gelten muss. Wir nehmen an, dass p |a gilt. Da p irreduzibel ist, folgt, dass p, −p, 1 und −1 die einzigen Teiler von p sind. Dann gilt (p, a) = 1. Damit kann Satz 1.8 a) angewendet werden, und es folgt p|b, was zu zeigen war. 2 Aus den beiden letzten S¨atzen folgt Korollar 3.12 p ∈ Z ist prim genau dann, wenn p irreduzibel ist.

2

Ringe, Integrit¨atsbereiche und K¨orper



91

¨ Ubungsaufgaben

3.9 (1) Zeigen Sie, dass √  √   −2 = a + b −2 | a, b ∈ Z Z einen Integrit¨atsbereich bildet (siehe Beispiel 3.6 d)! (2) Zeigen Sie, dass 2 in F3 [x] ein Teiler der Polynome x + 2, 2x + 1, 2 2 x + x + 2 und 2x + 2x + 1 ist (siehe Beispiel 3.6 a)! 2

2

3.10 Zeigen Sie, dass in Z12 [x] sowohl 8 = (6x + 4)(6x + 2) als auch 8 = 2 2 (6x + 4)(6x + 8) gilt! Dies bedeutet, dass in Z12 [x] der Quotient bei der 2 ¨ Sie, dass, Division von 8 durch (6x + 4) nicht eindeutig ist. Uberlegen wenn der f¨uhrende Koeffizient des Divisors eine Einheit ist, der Quotient eindeutig ist! 2

3.9

Teilbarkeit von Polynomen

Die Menge der Polynome u¨ ber einem Integrit¨atsbereich bildet genau wie die ganzen Zahlen einen Integrit¨atsbereich (siehe Satz 3.10 b). Somit liegt es nahe, die Begriffe Teilbarkeit, gr¨oßter gemeinsamer Teiler sowie den Euklidischen Algorithmus zur Berechnung des gr¨oßten gemeinsamen Teilers von ganzen Zahlen auf Polynome zu u¨ bertragen. Wir werden deshalb in aller Regel nur die entsprechenden Ergebnisse auff¨uhren und nicht mehr die Beweise f¨uhren, da diese mehr oder weniger eins zu eins aus dem Kapitel 1 u¨ bernommen werden k¨onnen.

3.9.1

Gr¨ oßter gemeinsamer Teiler von Polynomen

Satz 3.13 Sei I ein Integrit¨atsbereich und A, B ∈ I[x] mit B = 0. Dann gibt es eindeutig bestimmte Polynome Q, R ∈ I[x] mit A = B · Q + R, so dass gilt R = 0 oder grad (R) < grad (B). Q heißt Quotientenpolynom und R heißt Restpolynom. 2 3

2

2

Beispiel 3.7 a) Es seien A = x + x + 2x + 1 und B = x − 4 Polynome u¨ ber Q, dann gilt: 3

2

2

(x + x + 2x + 1) : (x − 4) = x + 1 + 3 2 x + 0x − 4x 2 x + 6x + 1 2 x + 0x − 4 6x + 5

6x+5 x2 −4

Quotientenpolynom Restpolynom

92

Teilbarkeit von Polynomen

Es ist also Q = x + 1 das Quotientenpolynom und R = 6x + 5 das Restpolynom dieser Division, und es ist 3

2

2

(x + x + 2x + 1) = (x − 4) · (x + 1) + (6x + 5) 3

2

2

b) Es sei A, B ∈ F2 [x] mit A = x + x + 1 und B = x + x + 1, dann gilt: 3

2

2

(x + x + 1) : (x + x + 1) = x + 3 2 x +x +x x+1

x+1 2 x +x+1

Hier ist also Q = x der Quotient und R = x + 1 der Rest, und es gilt 3

2

2

(x + x + 1) = (x + x + 1) · x + (x + 1)

2

.Definition 3.12 Sei I ein Integrit¨atsbereich und P, P  , S ∈ I[x]. Teiler

G¨oßter gemeinsamer Teiler

a) S ist Teiler von P (P ist teilbar durch S), falls es ein Q ∈ I[x] gibt mit P = S · Q. Schreibweise: S|P . b) S heißt gemeinsamer Teiler von P und P  , falls S|P und S|P  gilt. S heißt gr¨oßter gemeinsamer Teiler von P und P  , S = (P, P  ), falls S ein Teiler von P und von P  ist und f¨ur jeden weiteren Teiler S  von P und von P  gilt: S  |S. Auch bei Polynomen treffen wir f¨ur den Sonderfall P = 0 und P  = 0 die Vereinbarung (0, 0) = 0. 2 Im Unterschied zu ganzen Zahlen gibt es im Allgemeinen zu zwei Polynomen nicht nur einen gr¨oßten gemeinsamen Teiler. Satz 3.14 Es sei I Integrit¨atsbereich, P, P  ∈ I[x] und S = (P, P  ). Dann gilt ∗ f¨ur alle a ∈ I ebenfalls a · S = (P, P  ). Beweis Aus S = (P, P  ) folgt S|P und S|P  , d.h. es gibt Q, Q ∈ I[x] mit ∗ P = S · Q und P  = S · Q . Daraus folgt sofort, dass f¨ur alle a ∈ I gilt: −1 −1 −1   P = a · S · a · Q und P = a · S · a · Q . Wir setzen Qa = a · Q sowie −1 Qa = a · Q . Dann gilt: P = a · S · Qa bzw. P  = a · S · Qa . Hieraus folgt: ∗ a · S|P und a · S|P  . Mit S ist also auch a · S f¨ur alle a ∈ I ein gemeinsamer   Teiler von P und P . F¨ur jeden weiteren Teiler S von P und P  gilt, da S gr¨oßter gemeinsamer Teiler von P und P  ist, S  |S. Hieraus folgt, dass auch S  |a · S f¨ur ∗ 2 alle a ∈ I gilt. Insgesamt folgt die Behauptung a · S = (P, P  ). Ein Verfahren zur Berechnung eines gr¨oßten gemeinsamen Teilers von zwei Polynomen ist eine entsprechende Variante des Euklidischen Algorithmus, mit dem der gr¨oßte gemeinsame Teiler von zwei ganzen Zahlen berechnet werden kann (siehe Abschnitt 1.3.3). Beispiel 3.8

a) Es seien P, P  ∈ Q[x] mit 4

3

2

3

2

P = x + x − x + x + 2 sowie P  = x + 2x + 2x + 1

Ringe, Integrit¨atsbereiche und K¨orper

93

dann gilt: 4

3

2

3

2

2

x + x − x + x + 2 = (x + 2x + 2x + 1) · (x − 1) + (−x + 2x + 3) 3

2

2

x + 2x + 2x + 1 = (−x + 2x + 3) · (−x − 4) + (13x + 13)   1 3 2 +0 −x + 2x + 3 = (13x + 13) · − x + 13 13 4 3 3 2 ¨ ist Somit ist: 13x + 13 = (x + x − x2 + x + 2, x + 2x + 2x + 1). Im Ubrigen 1 x + 1 = 13 (13x + 13) ebenfalls ein gr¨oßter gemeinsamer Teiler von P und P  , ∗ genau so wie jedes Vielfache a · (13x + 13) mit a ∈ Q . 4

2

3

b) Es sei P, P  ∈ F2 [x] mit P = x + x + x + 1 und P  = x + 1, dann gilt 4

2

3

2

x + x + x + 1 = (x + 1) · x + (x + 1) 3

2

x + 1 = (x + 1) · x + (x + 1) 2

x + 1 = (x + 1) · (x + 1) + 0 4

2

3

und somit x + 1 = (x + x + x + 1, x + 1). Es gibt keine weiteren gr¨oßten ∗ gemeinsamen Teiler, da nur ein a ∈ F2 existiert, n¨amlich a = 1, und 1 · (x + 1) = x + 1 ist. 2 Wie die beiden Beispiele zeigen, wird der Euklidische Algorithmus auf zwei Polynome A und B mit grad (A) ≥ grad (B) genauso angewendet, wie auf zwei Zahlen. Der Divisor wird im n¨achsten Schritt Dividend, und der Rest wird Divisor. In jedem Schritt muss deshalb der Grad des Restes echt kleiner werden. Damit ist gesichert, dass das Verfahren endet, denn der Rest muss 0 werden. Der letzte nicht verschwindende Rest ist ein gr¨oßter gemeinsamer Teiler (bei ganzen Zahlen ist dieser der gr¨oßte gemeinsame Teiler), die weiteren ergeben sich durch Multiplikation mit den Einheiten aus dem zugrunde liegenden Ring. Von den gr¨oßten gemeinsamen Teilern zweier Polynome u¨ ber einem K¨orper betrachten wir in der Regel das monische Polynom als den gr¨oßten gemeinsamen Teiler, d.h. wir multiplizieren ein – etwa mit dem Euklidischen Algorithmus berechneten – gr¨oßten gemeinsamen Teiler mit dem Inversen seines f¨uhrenden Koeffizienten (siehe Beispiel 3.8 a). In Z gilt das Lemma von B´ezout (siehe Korollar 1.14): Zu a, b ∈ Z gibt es p, q ∈ Z, so dass (a, b) = ap + bq gilt (p und q k¨onnen mithilfe des erweiterten Euklidischen Algorithmus bestimmt werden). Analog kann f¨ur Polynome der folgende Satz hergeleitet werden. Satz 3.15 Sei I Integrit¨atsbereich und A, B, S ∈ I[x] mit S = (A, B), dann gibt es P, Q ∈ I[x] mit S = A · P + B · Q. 2 Beispiel 3.9 Im Beispiel 3.8 a) haben wir 4

3

2

3

2

13x + 13 = (x + x − x + x + 2, x + 2x + 2x + 1) in Q[x] berechnet. Es gilt: 4

3

2

3

2

2

x + x − x + x + 2 = (x + 2x + 2x + 1) · (x − 1) + (−x + 2x + 3)

Lemma von B´ezout

94

Teilbarkeit von Polynomen

Daraus folgt: 2

−x + 2x + 3 = 4 3 2 3 2 (x + x − x + x + 2) − (x + 2x + 2x + 1) · (x − 1)

(3.23)

Außerdem ist: 3

2

2

x + 2x + 2x + 1 = (−x + 2x + 3) · (−x − 4) + (13x + 13) Daraus folgt: 3

2

2

13x + 13 = (x + 2x + 2x + 1) − (−x + 2x + 3) · (−x − 4) Mit Einsetzen von (3.23) folgt daraus: 13x + 13 3

2

3

2

= (x + 2x + 2x + 1) " 4 # 3 2 3 2 − (x + x − x + x + 2) − (x + 2x + 2x + 1)(x − 1) (−x − 4) 4

3

2

= (x + 2x + 2x + 1) − (x + x − x + x + 2)(−x − 4) 3

2

+ (x + 2x + 2x + 1)(x − 1)(−x − 4) 4

3

2

3

2

2

= (x + x − x + x + 2)(x + 4) + (x + 2x + 2x + 1)(−x − 3x + 5) 2

Die gesuchten Polynome P und Q sind also: P = x + 4 und Q = −x − 3x + 5. b) Im Beispiel 3.8 b) haben wir 4

2

3

x + 1 = (x + x + x + 1, x + 1) in F2 [x] berechnet. Es gilt: 4

2

3

2

x + x + x + 1 = (x + 1) · x + (x + 1) Daraus folgt: 2

4

2

3

(3.24)

x + 1 = (x + x + x + 1) + (x + 1)x Außerdem ist:

3

2

x + 1 = (x + 1) · x + (x + 1) Daraus folgt:

3

2

x + 1 = (x + 1) + (x + 1)x Mit Einsetzen von (3.24) folgt daraus: " 4 # 3 2 3 x + 1 = (x + 1) + (x + x + x + 1) + (x + 1)x x 3

4

2

3

= (x + 1) + (x + x + x + 1)x + (x + 1)x 4

2

3

2

2

= (x + x + x + 1)x + (x + 1)(x + 1) 2

Die gesuchten Polynome P und Q sind also: P = x und Q = x + 1.

2

Ringe, Integrit¨atsbereiche und K¨orper

3.9.2

95

Polynomringe und Irreduzibilit¨ at

Die Menge der ganzen Zahlen haben wir mithilfe der modulo-Relation ≡m faktorisiert zum Faktorring Z/mZ, der isomorph zum Ring Zm ist (siehe Abschnitte 1.2.3, 2.5.2, 2.6.3), und im Kapitel 3.6 haben wir gesehen, dass Zm einen K¨orper bildet genau dann, wenn m prim ist. Wir f¨uhren nun f¨ur Polynomringe eine entsprechende Relation ein und untersuchen auch daf¨ur die Frage, f¨ur welche Module der entstehende Faktorring einen K¨orper bildet. Definition 3.13 Sei I Integrit¨atsbereich und P, P  , Q ∈ I[x] mit grad (Q) = n > 0. P und P  sind kongruent modulo Q genau dann, wenn P und P  bei Division durch Q denselben Rest R ∈ I[x] mit grad (R) < n besitzen. Sind P 2 und P  kongruent modulo Q, dann schreiben wir: P ≡Q P  .

Kongruenzrelation

Korollar 3.13 Sei I Integrit¨atsbereich und Q ∈ I[x] mit grad (Q) = n > 0, dann gilt: ¨ a) ≡Q ist eine Aquivalenzrelation auf I[x]. b) Ist P ≡Q P  , dann gibt es S, S  , R ∈ I[x] mit R = 0 oder mit 0 ≤ grad (R) < n, so dass gilt: P = S · Q + R und P  = S  · Q + R Es gilt offensichtlich R ≡Q P und R ≡Q P , denn P und R bzw. P  und R lassen bei Division durch Q denselben Rest R: Alle a¨ quivalenten Polynome sind ¨ a¨ quivalent zu ihrem“ Restpolynom. F¨ur jede Aquivalenzklasse von Polynomen ” wollen wir das Restpolynom als Repr¨asentant w¨ahlen. Jedes (Rest-) Polynom R ¨ mit R = 0 sowie mit 0 ≤ grad (R) < n legt also genau eine Aquivalenzklasse, eine Restklasse modulo Q, fest.

Repr¨asentant Restklasse

c) Q liegt in der Restklasse, die durch den Rest 0 repr¨asentiert wird, da Q = 1 · Q + 0 gilt; es ist also [ 0 ]Q = [ Q ]Q . d) Mit diesen Restklassen kann wieder gerechnet werden: [ R ]Q ⊕ [ R ]Q = [ R + R ]Q und [ R ]Q ⊗ [ R ]Q = [ R · R ]Q Die Restklassen bilden mit diesen beiden Operationen einen Ring, den sogenannten Faktorring oder Quotientenring (I[x]/Q, ⊕, ⊗). Wir werden im Folgenden wieder + anstelle ⊕ und · anstelle ⊗ schreiben. 2

Faktorring Quotientenring

In Korollar 3.6 c) hatten wir festgestellt, dass Zp ein K¨orper genau dann ist, wenn das Modul p eine Primzahl ist. Die Rolle der Primzahlen spielen in I[x] die irreduziblen Polynome: Ein Polynom ist irreduzibel (siehe Definition 3.11), falls es nur triviale Teiler besitzt. Ist also I ein Integrit¨atsbereich, dann ist P ∈ I[x], P = 0, irreduzibel in I[x] genau dann, wenn f¨ur Polynome A, B ∈ I[x] mit P = A · B gilt, dass A oder B invertierbar ist. Anderenfalls heißt P reduzibel oder zusammengesetzt.

Irreduzible reduzible zusammengesetzte Polynome

Beispiel 3.10 2

2

2

a) x −1 ist reduzibel u¨ ber Z, denn es gilt x −1 = (x+1)(x−1).

b) x + 1 ist irreduzibel u¨ ber R.

96

Teilbarkeit von Polynomen

2

2

c) x + 1 ist reduzibel u¨ ber C, denn es gilt: x + 1 = (x + i)(x − i) mit i2 = −1. 2

d) x − 3 ist irreduzibel u¨ ber Q, aber reduzibel u¨ ber R, denn es gilt: √ √ 2 x − 3 = (x + 3)(x − 3) 2

e) x − 3 ist ebenfalls reduzibel u¨ ber F11 , denn es gilt 2

2

x − 3 = x + 8 = (x + 5)(x + 6) 2

f) x + x + 1 ist irreduzibel u¨ ber F2 , aber reduzibel u¨ ber F3 : 2

2

x + x + 1 = (x + 2)(x + 2) = (x + 2)

g) Polynome mit Grad 1 (lineare Polynome) sind irreduzibel u¨ ber jedem K¨orper. h) Die einzigen irreduziblen Polynome u¨ ber R sind die linearen Polynome sowie 2 die quadratischen Polynome x +px+q mit p2 −4q < 0 (negative Diskriminante). ¨ i) Uber C sind nur die linearen Polynome irreduzibel. 2 Analog zu Satz 3.12 gilt f¨ur Polynome u¨ ber K¨orpern, dass irreduzible Polynome auch prim sind. Satz 3.16 Sei K ein K¨orper und P ∈ K[x] irreduzibel, dann ist P auch prim. Beweis Gem¨aß Definition 3.11 d) m¨ussen wir zeigen, dass ein irreduzibles Polynom P ∈ K[x], dass das Produkt A · B zweier Polynome A, B ∈ K[x] teilt, auch A oder B teilt. Sei also P |A · B. Ist A = 0 oder B = 0, dann folgt sofort die Behauptung. Sei also A = 0 und B = 0. Ist P |A, dann gilt (P, A) = 1, denn P ist laut Voraussetzung irreduzibel. Gem¨aß dem Lemma von B´ezout f¨ur Polynome (Satz 3.15) gibt es dann Polynome R, S ∈ K[x] mit P · R + A · S = 1. Multiplikation mit B ergibt P · (R · B) + (A · B) · S = B. P teilt beide Summanden, den ersten offensichtlich, den zweiten wegen der Voraussetzung P |A · B. Damit gilt P |B. Der Beweis f¨ur P |B erfolgt analog. 2 Jede ganze Zahl ungleich 0 l¨asst sich eindeutig als Produkt von 1 oder −1 (den Einheiten in Z) und Primzahlen (kanonisch) darstellen (siehe Satz 1.13). Wir wollen nun untersuchen, in welcher Art und Weise sich Polynome in irreduzible Faktoren zerlegen lassen, und betrachten dazu zun¨achst ein Beispiel. 2

Beispiel 3.11 Sei P = 3x + 5x + 6 ∈ F7 [x]. P l¨asst sich zerlegen in zwei lineare, damit irreduzible Faktoren: P = (2x + 3)(5x + 2)

(3.25)

Es gibt aber noch weitere Zerlegungen: P = 2 · (2x + 3) · 4 · (5x + 2) = (4x + 6)(6x + 1) = 4 · (2x + 3) · 2 · (5x + 2) = (x + 5)(3x + 4) = 3 · (2x + 3) · 5 · (5x + 2) = (6x + 2)(4x + 3) = 5 · (2x + 3) · 3 · (5x + 2) = (3x + 1)(x + 6)

(3.26)

Ringe, Integrit¨atsbereiche und K¨orper

97

Jetzt klammern wir aus P den f¨uhrenden Koeffizienten aus: 2

P = 3(x + 4x + 2)

(3.27)

2

Das monische Polynom P  = x + 4x + 2 l¨asst sich irreduzibel zerlegen in P  = (x + 5)(x + 6), womit wir die irreduzible Zerlegung von P in drei Faktoren erhalten: P = 3 · (x + 5) · (x + 6)

(3.28)

Dabei ist der erste Faktor ein K¨orperelement, und die weiteren Faktoren sind irreduzible, monische Polynome. Wenn wir nun in allen Faktoren der Zerlegungen in (3.25) und (3.26) die f¨uhrenden Quotienten ausklammern, erhalten wir (4x + 6)(6x + 1) = 4(x + 5) · 6(x + 6) = 3(x + 5)(x + 6) (x + 5)(3x + 4) = (x + 5) · 3(x + 6) = 3(x + 5)(x + 6) (6x + 2)(4x + 3) = 6(x + 5) · 4(x + 6) = 3(x + 5)(x + 6) (3x + 1)(x + 6) = 3(x + 5) · (x + 6) = 3(x + 5)(x + 6) und damit in allen F¨allen die Zerlegung in (3.28). Zumindest in diesem Beispiel gilt, dass sich P (bis auf die Reihenfolge der Faktoren) eindeutig zerlegen l¨asst in einen konstanten Faktor und irreduzible, monische Polynome. 2 Der folgende Satz besagt, dass sich Polynome u¨ ber K¨orpern generell in dieser Art und Weise zerlegen lassen. Satz 3.17 Sei K ein K¨orper. Dann l¨asst sich jedes Polynom P ∈ K[x], P = 0, ∗ bis auf die Reihenfolge eindeutig zerlegen in P = α · P1 · . . . · Pk mit α ∈ K und irreduziblen Polynomen Pi ∈ K[x], 1 ≤ i ≤ k, k ≥ 0, mit grad (Pi ) ≤ grad (P ). Beweis Sei P = a0 +a1 x+. . .+an x mit an = 0. Ist grad (P ) = 0, also P = a0 , dann gilt die Behauptung mit α = a0 und k = 0. Sei nun grad (P ) ≥ 1. Ist P −1 irreduzibel, dann gilt die Behauptung mit P = α·P1 , α = an und P1 = α ·P. Ist P reduzibel, dann gilt P = P1 · P2 und P1 und P2 sind nicht konstant. Diese sind irreduzibel oder lassen sich weiter zerlegen. Letztendlich erhalten wir so eine Zerlegung wie behauptet mit h¨ochstens grad (P ) = n Faktoren. Jetzt u¨ berlegen wir noch die Eindeutigkeit. Angenommen, wir h¨atten zwei Zerlegungen n

P = α · P1 · . . . · Pk und P = β · Q1 · . . . · Q

(3.29)

mit 1 ≤ k, , ≤ n, α,β ∈ K und irreduziblen, monischen Pi ∈ K[x], 1 ≤ i ≤ k, und Qj ∈ K[x], 1 ≤ j ≤ . Es gilt Q1 |P und Q1 ist irreduzibel, mit Satz 3.16 also prim. Es folgt wegen Definition 3.11 d), dass Q1 einen der Faktoren Pi teilen muss: Q1 |Pi f¨ur ein i. Q1 und Pi sind irreduzibel, deswegen muss Q1 = Pi sein. O.B.d.A. k¨onnen wir annehmen, dass i = 1 ist und damit Q1 = P1 . Wir k¨urzen diesen Faktor aus den Darstellungen in (3.29) und erhalten P  = α · P2 · . . . · Pk bzw. P  = β · Q2 · . . . · Q

98

Teilbarkeit von Polynomen

Wir u¨ berlegen f¨ur diese Darstellungen genau wie f¨ur die urspr¨unglichen Darstellungen in (3.29). Letztendlich erhalten wir Qi = Pi , und k = , 1 ≤ k, ≤ n, α = β. 2



¨ Ubungsaufgaben

3.11 Geben Sie eine irreduzible Zerlegung des Polynoms 4

3

P = 3x + 3x + 2x + 2 ∈ F5 [x] an!

Das Korollar 3.6 c) beantwortet die Frage, f¨ur welche Moduln m die Restklassenringe Zm K¨orper bilden, n¨amlich genau dann, wenn m Primzahl, also irreduzibel ist. Der folgende Satz beantwortet die analoge Frage f¨ur Polynomringe, d.h. f¨ur welche P ∈ K[x] bildet der Faktorring K[x]/P einen K¨orper. Satz 3.18 Sei K ein endlicher K¨orper. K [x]/P ist ein K¨orper genau dann, wenn P ∈ K [x] irreduzibel u¨ ber K ist. Beweis Wir zeigen: P ∈ K [x] ist reduzibel genau dann, wenn K [x]/P kein K¨orper ist. P ist reduzibel u¨ ber K genau dann, wenn es zwei nichttriviale Polynome Q, S ∈ K [x] gibt mit P = Q·S. Da P ≡P 0 ist, gilt dies genau dann, wenn Q · S ≡ P 0 ist. Dies gilt genau dann, wenn Q und S Nullteiler in K [x]/P sind, und dies gilt genau dann, wenn K [x]/P kein Integrit¨atsbereich ist. Da K [x]/P endlich ist, kann gem¨aß Satz 3.5 K [x]/P auch kein K¨orper sein, was ein Widerspruch zur Voraussetzung ist. 2 2

Beispiel 3.12 a) Wir betrachten das Polynom Q = x + 1 ∈ F2 [x]. Q ist redu2 2 zibel, denn es ist: x + 1 = (x + 1) = (x + 1)(x + 1). Es gilt A ≡Q B f¨ur A, B ∈ F2 [x], falls A und B bei Division durch Q denselben Rest haben. Reste sind alle Polynome R mit R = 0 und 0 ≤ grad (R) < grad (Q) = 2. Diese Reste sind: O=0 E=1 R=x S =x+1

Ringe, Integrit¨atsbereiche und K¨orper

99

Wir w¨ahlen diese als Repr¨asentanten der Restklassen und betrachten die Additions- und die Multiplikationtstafel von F2 [x]/Q: ⊕ O E R S

O O E R S

E E O S R

R R S O E

⊗ E R S

S S R E O

E E R S

R R E S

S S S O

Man sieht: F2 [x]/Q ist ein Ring, aber kein K¨orper, denn das Polynom (die Restklasse) S = x + 1 besitzt kein Inverses. 2

b) Wir betrachten das Polynom P = x + x + 1 ∈ F2 [x]. P ist irreduzibel. Da grad(P ) = grad(Q) = 2 ist, entstehen bei Division durch P dieselben Reste wie bei Division durch Q in Beispiel a). Die Additions- und die Multiplikationtstafel von F2 [x]/P sieht allerdings anders aus: ⊕ O E R S

O O E R S

E E O S R

R R S O E

⊗ E R S

S S R E O

E E R S

R R S E

S S E R 2

Man sieht: F2 [x]/P ist ein K¨orper.



¨ Ubungsaufgaben

3.12 Sei p ∈ P und P ∈ Fp [x]. Bestimmen Sie die Anzahl der Restklassen modulo P , d.h. die Anzahl der Elemente von Fp [x]/P !

3.9.3

Nullstellen

Sei R ein Ring. Falls wir in einem Polynom n

P (x) = an x + an−1 x

n−1

2

+ . . . + a2 x + a1 x + a0 ∈ R[x]

die Variable x durch ein Element b ∈ R ersetzen, entsteht der Term n

P (b) = an b + an−1 b

n−1

2

+ . . . + a2 b + a1 b + a0

dessen Wert ein Element von R ist. Es gilt der Satz 3.19 Sei K ein K¨orper, b ∈ K und P ∈ K[x]. Dann gilt a) P (b) = c genau dann, wenn ein Polynom Q ∈ K[x] existiert mit P (x) = (x − b) · Q(x) + c,

100

Teilbarkeit von Polynomen

b) P (b) = 0 genau dann, wenn (x − b)|P (x) ist. Beweis ⇒“: Sei b ∈ K. Die Division von P durch (x − b) liefert Polynome Q ” und R mit P (x) = (x − b) · Q(x) + R(x)

(3.30)

mit Q, R ∈ K[x] und grad (R) < grad (x − b) = 1. Es folgt, dass grad (R) = 0 sein muss, d.h. es gilt R(x) = r ∈ K. Setzt man in (3.30) x = b, dann ist: c = P (b) = (b − b) · Q(b) + r = r Daraus folgt, dass r = c und somit R(x) = c ist. Damit folgt aus (3.30) die Behauptung. ⇐“: Wir setzen x = b und erhalten mit P (b) = (b − b) · Q(b) + c = c die ” Behauptung. 2

b) folgt aus a) mit c = 0. Nullstelle Vielfachheit einer Nullstelle Einfache Nullstelle

Definition 3.14 Sei K ein K¨orper. Ein Element b ∈ K heißt Nullstelle des Pok lynoms P ∈ K[x], falls P (b) = 0 ist. ΠP(b) = { k ∈ N0 |(x − b) |P } heißt Vielfachheit der Nullstelle b in P . Gilt ΠP(b) = 1, dann heißt die Nullstelle b einfach. Satz 3.19 b) kann benutzt werden, um ein Polynom in irreduzible Polynome zu faktorisieren (siehe auch Satz 3.17). 5

4

2

Beispiel 3.13 a) Betrachten wir P (x) = x + 3x − 12x − 25x − 15 ∈ R[x]. Durch Probieren findet man, dass b = −1 Nullstelle von P ist. Division von P durch (x − b) = (x + 1) liefert: 4

3

2

P (x) = (x + 1) · (x + 2x − 14x + 2x − 15) 4

3

3

2

2

Durch Probieren findet man, dass 3 Nullstelle von x + 2x − 14x + 2x − 15 ist. Dessen Division durch (x − 3) liefert: 4

3

2

x + 2x − 14x + 2x − 15 = (x − 3) · (x + 5x + x + 5) 3

2

−5 ist Nullstelle von x + 5x + x + 5. Es folgt 3

2

2

x + 5x + x + 5 = (x + 5) · (x + 1) 2

x + 1 ist irreduzibel u¨ ber R [x]. Somit erhalten wir insgesamt die folgende Faktorisierung von P : 2

P (x) = (x + 1)(x − 3)(x + 5)(x + 1) Die Nullstellen −1, 3 und −5 sind einfach. 2

b) Betrachten wir das Polynom P = x + x + 1 u¨ ber F7 . Durch Probieren findet man die Nullstellen 2 und 4. Damit gilt: 2

x + x + 1 = (x − 4) · (x − 2) = (x + 3) · (x + 5)

Ringe, Integrit¨atsbereiche und K¨orper

101

(x + 3) · (x + 5) ist die gem¨aß Satz 3.17 existierende irreduzible Zerlegung von P (x) u¨ ber F7 . Beide Nullstellen sind einfach. 3

2

c) Das Polynom P (x) = (x + 1)(x + x + 1) ∈ F3 [x] hat die dreifache Nullstelle x = 2 und die zweifache Nullstelle x = 1. Es l¨asst sich irreduzibel zerlegen in P (x) = (x − 2)(x − 2)(x − 2)(x − 1)(x − 1) = (x + 1)(x + 1)(x + 1)(x + 2)(x + 2) 3

2

= (x + 1) · (x + 2)



¨ Ubungsaufgaben 5

4

3.13 (1) Geben Sie die irreduzible Zerlegung des Polynoms P (x) = 2x +3x + 3 2 4x + 4x + 6x + 1 u¨ ber F11 an! (2) Beweisen Sie folgende Behauptung: x + 1|x + 1 f¨ur alle n ∈ U+ und alle x ∈ R! 2 n

Aus den S¨atzen 3.17) und 3.19 folgt unmittelbar Korollar 3.14 Sei K ein K¨orper und P ∈ K [x] mit grad (P ) = n. Dann gilt: a) Sind b1 , . . . , bk , k ≥ 0, Nullstellen von P , dann existiert ein irreduzibles Polynom Q ∈ K[x] mit Π (b1 ) P

P (x) = (x − b1 ) b) grad (Q) +

!k i=1

Π (b2 ) P

· (x − b2 )

Π (bk ) P

· . . . · (x − bk )

· Q(x)

ΠP(bi ) = n;

c) P hat h¨ochstens n Nullstellen in K.

2

Um festzustellen ob eine Nullstelle eines Polynoms einfach ist, kann die Ableitung von P zurhilfe genommen werden. Die Ableitung von  n

P (x) =

i=0

 n

i



ai x ist P (x) =

i · ai x

i−1

i=1

F¨ur die Ableitung von Polynomen gilt (wie f¨ur alle ableitbaren Funktionen) die Produktregel: (P · Q) = P  · Q + P · Q

(3.31)

Produktregel

102

Teilbarkeit von Polynomen

Satz 3.20 Sei K ein K¨orper und P ∈ K[x] mit P = 0, und b ∈ K sei eine Nullstelle von P , dann gilt: b ist eine einfache Nullstelle von P genau dann, wenn b keine Nullstelle von P  ist. Beweis ⇒“: b ist Nullstelle von P . Dann gilt gibt es laut Satz 3.19 ein Polynom ” Q1 ∈ K[x] mit P (x) = (x − b) · Q1(x). Wir leiten P ab und erhalten mit der Produktregel (3.31) P  (x) = Q1(x) + (x − b) · Q1 (x). W¨are b eine Nullstelle von P , also P  (b) = 0, dann w¨urde 0 = P  (b) = Q1(b) + (b − b) · Q1 (b) = Q1(b) sein, und damit w¨are b eine Nullstelle von Q1 , und es w¨urde ein Polynom Q2 ∈ K[x] 2 existieren mit Q1(x) = (x − b) · Q2(x). Damit w¨are P (x) = (x − b) · Q2(x) und b w¨are eine (mindestens) zweifache Nullstelle von P , ein Widersrpuch zur Voraussetzung. b ist also keine Nullstelle von P , womit diese Richtung gezeigt ist. ⇐“: b sei keine Nullstelle von P . Wir nehmen an, dass b eine zweifache Null” 2 stelle von P ist. Dann gibt es ein Polynom Q ∈ K[x] mit P (x) = (x − b) · Q(x). 2   Wir leiten P ab und erhalten P (x) = 2(x − b) · Q(x) + (x − b) · Q (x). Daraus folgt, dass b eine Nullstelle von P  ist, ein Widerspruch zur Voraussetzung. Damit ist die Annahme widerlegt, dass b zweifache Nullstelle ist, und auch diese Richtung ist gezeigt. Die Aussage von Korollar 3.14 c) hilft uns beim Beweis des folgenden Satzes, der besagt, dass die Einheitengruppen von endlichen K¨orpern immer zyklisch sind. ∗

Satz 3.21 Sei K ein endlicher K¨orper, dann ist K zyklisch. ∗

Beweis Da die Einheitengruppe K endlich ist, gilt  ∗ ordK∗ = K  = |K −{ 0}| = |K|− 1 ∗

und jedes ihrer Elemente besitzt eine endliche Ordnung. Sei a ∈ K ein Element mit maximaler Ordnung:   ∗ (3.32) ordK∗(a) = max ordK∗(b) | b ∈ K ∗

Wir zeigen nun, dass ordK∗(a) = |K|− 1 ist. Daraus folgt  a  = K , d.h. a ist ein ∗ ∗ Generator von K und damit ist K zyklisch. Aus (3.32) folgt ordK∗(a) ≤ |K| −1. Wir zeigen jetzt noch, dass auch ordK∗(a) ≥ |K| −1 gilt, womit alles gezeigt ist. Dazu betrachten wir das Polynom x

ord ∗ (a) K

−1

(3.33) ∗

1 ist offensichtlich eine Nullstelle dieses Polynoms. F¨ur jedes Element b ∈ K gilt ordK∗(b)|ordK∗(a). Ansonsten w¨aren ordK∗(b) und ordK∗(a) teilerfremd, woraus mit Satz 2.4 b) f¨ur b = 1 folgt ordK∗(a · b) = ordK∗(a) · ordK∗(b) > ordK∗(a)

Ringe, Integrit¨atsbereiche und K¨orper

103

Damit h¨atte a · b eine gr¨oßere Ordnung als das Element a, welches ein Element ∗ maximaler Ordnung ist. Es gilt also ordK∗(b)|ordK∗(a) f¨ur alle b ∈ K und daord ∗ (a)



mit b K = 1. Es folgt, dass alle Elemente von K Nullstellen des Polynoms (3.33) sind. Da das Polynom (3.33) wegen Korollar 3.14 c) h¨ochstens ordK∗(a)  ∗ Nullstellen haben kann, folgt ordK∗(a) ≥ K  = |K|− 1, was noch zu zeigen war. 2

Erweiterungen endlicher K¨orper

4

105

Erweiterungen endlicher K¨orper

Wir haben bisher schon an vielen Stellen Beispiele von endlichen K¨orpern und auch von Polynomen u¨ ber endlichen K¨orpern betrachtet, und in Kapitel 3.5 haben wir eine bestimmte Art von Erweiterungen von K¨orpern um neue Elemente durchgef¨uhrt. In diesem Kapitel werden wir mithilfe von Polynomen alle K¨orper mit endlich vielen Elementen beschreiben. Diese Polynome und K¨orper sind eine wesentliche Grundlage f¨ur in der Praxis angewendete fehlertolerante Codierungverfahren, worauf wir im Rahmen dieses Buches aber nicht eingehen. Nach dem Durcharbeiten dieses Kapitels sollten Sie

Lernziele



endliche K¨orper konstruieren k¨onnen,



erl¨autern k¨onnen warum durch Fpα , p ∈ P, α ∈ N, genau alle endlichen K¨orper gegeben sind.

4.1

Beispiele

Wir besch¨aftigen uns im Folgenden mit Eigenschaften endlicher K¨orper. Dabei kn¨upfen wir an Kapitel 3.9.2 an. Dort hatten wir im Satz 3.18 gesehen, dass f¨ur einen K¨orper K und ein Polynom P ∈ K[x] der Polynomring K[x]/P ein K¨orper genau dann ist, wenn P irreduzibel ist (siehe auch Beispiel 3.12). Wir wollen uns nun etwas n¨aher mit irreduziblen Polynomen befassen und betrachten als ein 2 erstes Beispiel das u¨ ber F2 irreduzible Polynom P (x) = x + x + 1. Im Kapitel 3.9.3 haben wir den Zusammenhang zwischen Nullstellen und Faktorisierung von Polynomen festgestellt, und im Kapitel 3.5 haben wir K¨orper erweitert, um Gleichungen der Art P (x) = 0 zu l¨osen, d.h. um Nullstellen von Polynomen bestimmen zu k¨onnen. So f¨uhren wir also auch jetzt ein Element α ∈ / F2 ein mit der Eigenschaft 2 P (α) = 0, d.h. mit α + α + 1 = 0 2

2

Hieraus folgt, dass α = α + 1 ist. Wir berechnen P (α ) schrittweise: 2

2 2

2

2

2

2

P (α ) = (α ) + α + 1 = α · α + α + 1 = (α + 1) · (α + 1) + (α + 1) + 1 2

=α +1+α = (α + 1) + 1 + α =0 2

2

Mit α ist also auch α eine Nullstelle von P (x) = x + x + 1. Mit Satz 3.19 2 muss P (x) = (x − α)(x − α ) gelten, d.h., da wir in F2 rechnen, muss P (x) =

K.-U. Witt, Algebraische und zahlentheoretische Grundlagen für die Informatik, DOI 10.1007/978-3-658-04075-8_4, © Springer Fachmedien Wiesbaden 2014

106

Beispiele

F2 (α) 0 0 α =1 1 α =α 2 α =α+1 3 2 α = (α + 1) · α = α + α = α + 1 + α = 1

2

2

F2 GF(4) F2 [x]/(x + x + 1) 00 0 0 01 1 1 10 2 x 11 3 x+1 01 1 1

2

¨ F2 [x]/(x + x + 1) Abb. 11: Multiplikations- und Logarithmentafel fur

2

(x + α)(x + α ) gelten. Wir rechnen nach: 2

2

2

(x + α)(x + α ) = x + x · α + x · α + α

3

2

= x + x(α + 1) + x · α + α(α + 1) 2

2

=x +x·α+x+x·α+α +α 2

=x +x+α+1+α 2

=x +x+1 = P (x) Der um das Element α erweiterte K¨orper F2 F2(α) = {a + bα | a, b ∈ F2 } bildet wieder einen K¨orper. Die Elemente von F2 (α) sind 0, 1, α und α+1; α und 1 2 3 α + 1 sind invers zueinander. Da α = α, α = α + 1 sowie α = 1 ist, gilt auch 1 2 3 2 F2 (α) = { 0, α , α , α }; in dieser Darstellung sind α und α invers zueinander.

Galois-Feld

In der Abbildung 11 stellen wir mit diesen Ergebnissen einen Zusammenhang 2 2 her zwischen F2 (α), F2 , GF(4) und F2 [x]/(x + x + 1). GF(4) enth¨alt die Elemente von Z4 , allerdings ist die Multiplikation anders als in Z4 definiert: In Z4 ist 2 · 3 = 2, w¨ahrend in GF(4) 2 · 3 = 1 ist. GF(q) heißt Galois-Feld mit q Elementen. Auf diese Strukturen und ihre Bedeutung gehen wir in Abschnitt 4.5 noch n¨aher ein. Wir werden dort sehen, dass q immer eine Primzahlpotenz sein s 2 muss: q = p , p ∈ P, s ∈ N. In unserem Fall ist q = 2 = 4. 2

2

α kann als ein erzeugendes Element von F2 (α), F2, GF(4) und F2 [x]/(x + x + 1) 2 aufgefasst werden, d.h. wir k¨onnen α als eine Primitivwurzel modulo x + x + 1 auffassen (siehe auch Kapitel 5.4). F¨ur α gilt: m

n

α ·α =α

m+n (3)

(4.1)

Erweiterungen endlicher K¨orper

107

α kann also als Basis f¨ur einen diskreten Logarithmus sowohl f¨ur F2 (α) als auch 2 2 f¨ur F2 [x]/(x + x + 1) (nat¨urlich auch f¨ur F2 und f¨ur GF(q)) dienen: logα α = 1 bzw. logα (α + 1) = 2 bzw. logα 1 = 3 bzw.

logα x = 1 logα (x + 1) = 2 logα x = 3

Wegen dieser Eigenschaft und wegen (4.1) haben wir die Tafel in Abbildung 11 Multiplikations- und Logarithmentafel genannt. Wir betrachten als weiteres Beispiel das u¨ ber F2 irredzuzible Polynom P (x) = 4 3 / F2 ein Element mit der Eigenschaft x + x + 1. Sei α ∈ 4

3

P (α) = 0, d.h. mit α + α + 1 = 0 4

3

2

4

Hieraus folgt, dass α = α + 1 ist. Wir k¨onnen berechnen, dass auch α , α und 8 α Nullstellen von p sind. Es gilt also 2

4

8

P (x) = (x + α)(x + α )(x + α )(x + α ) 4

3

Die Multiplikations- und Logarithmentafel f¨ur F2 [x]/(x +x +1) ist in Abbildung 12 dargestellt. Hier gilt m

n

α ·α =α

m+n (15)

(4.2)

und auch hier kann α als ein erzeugendes Element aufgefasst werden, n¨amlich 4 4 4 3 von F2(α), F2, GF(2 ) und F2 [x]/(x + x + 1), und α kann als Basis f¨ur einen diskreten Logarithmus in diesen Strukturen gew¨ahlt werden. So gilt z.B. 3

2

logα (x + 1) = 12 sowie logα (x + x + x) = 8

(4.3)

F¨ur Logarithmen gilt die Rechenregel (siehe Kapitel 5.4): logα (a · b) = logα a + logα b Damit kann mithilfe von Logarithmen die Multiplikation auf die Addition zur¨uckgef¨uhrt werden. Wenden wir diese Regel auf die Polynome A(x) = x + 1 3 2 und B(x) = x + x + x aus (4.3) an, dann erhalten wir: logα (A(x) · B(x)) = logα A(x) + logα B(x) = 12 + 8 = 5 Dabei werden die Logarithmen modulo 15 addiert, siehe Gleichung (4.2). Da 3 5 = logα (x + x + 1) ist, folgt unmittelbar 3

3

2

3

A(x) · B(x) = (x + 1) · (x + x + x) = x + x + 1 4

3

nat¨urlich modulo x + x + 1 gerechnet. Eine Probe durch direkte Berechnung des Produktes der Polynome A(x) und B(x) verifiziert selbstverst¨andlich dieses Ergebnis.

108

Beispiele

F2 (α) 0 0 α =1 1 α =α 2 α 3 α 4 3 α =α +1 5 3 α =α +α+1 6 3 2 α =α +α +α+1 7 2 α =α +α+1 8 3 2 α =α +α +α 9 2 α =α +1 10 3 α =α +α 11 3 2 α =α +α +1 12 α =α+1 13 2 α =α +α 14 3 2 α =α +α 15 α =1

4

4

4

3

F2 GF(2 ) F2 [x]/(x + x + 1) 0000 0 0 0001 1 1 0010 2 x 2 0100 4 x 3 1000 8 x 3 1001 9 x +1 3 1011 11 x +x+1 3 2 1111 15 x +x +x+1 2 0111 7 x +x+1 3 2 1110 14 x +x +x 2 0101 5 x +1 3 1010 10 x +x 3 2 1101 13 x +x +1 0011 3 x+1 2 0110 6 x +x 3 2 1100 12 x +x 0001 1 1

4

3

¨ F2 [x]/(x + x + 1) Abb. 12: Multiplikations- und Logarithmentafel fur

An diesen Beispielen wird deutlich, dass auf der Basis von (abgespeicherten) Multiplikations- und Logarithmentafeln eine sehr effiziente Multiplikation f¨ur Polynome implementiert werden kann. 4

3

4

3

Da P (x) = x + x + 1 irreduzibel ist, wissen wir, dass F2 [x]/(x + x + 1) ¨ ein K¨orper ist. Aus den obigen Uberlegungen ergibt sich unmittelbar, dass damit 4 4 auch F2 (α), F2 und GF(2 ) K¨orper sind sowie dass alle diese vier K¨orper isomorph zueinander sind. Dasselbe gilt nat¨urlich auch f¨ur die vier in Abbildung 11 dargestellten Strukturen. Wenn man des Weiteren andere irreduzible Polynome vom Grad 4 u¨ ber F2 w¨ahlt, 4 4 3 2 z.B. Q(x) = x + x + 1 oder R(x) = x + x + x + x + 1, und daf¨ur Nullstellen β 4 bzw. γ einf¨uhrt, so dass also Q(β) = 0 und R(γ) = 0 und damit β = β + 1 bzw. 4 3 2 γ = γ + γ + γ + 1 gilt, und damit die der Tafel in Abbildung 12 entsprechenden 4 4 Tafeln berechnet, wird man feststellen, dass F2 (β) isomorph zu F2 , GF(2 ) und 4 4 4 4 3 F2 [x]/(x + x + 1) bzw. F2 (γ) isomorph zu F2 , GF(2 ) und F2 [x]/(x + x + 2 x + x + 1) sind, und damit sind auch die K¨orpererweiterungen F2 (α), F2 (β) und F2 (γ) untereinander isomorph.

Erweiterungen endlicher K¨orper



109

¨ Ubungsaufgaben 3

4.1 P (x) = x +2x+1 ist ein monisches irreduzibles Polynom u¨ ber F3 . Stellen Sie die Multiplikations- und Logarithmentafel von P analog zu den Abbildungen 11 und 12 auf! Berechnen Sie mithilfe der Logarithmen 7 · 21! 2

Wenn man weitere Beispiele dieser Art betrachtet, d.h. man betrachtet einen K¨orper Fq , q ∈ P, w¨ahlt ein monisches irreduzibles Polynom P ∈ Fq [x] vom Grad s, s ≥ 2, f¨uhrt f¨ur dieses eine Nullstelle α ein und stellt eine den Abbildungen 11 und 12 entsprechende Tafel auf, so kann man zu folgenden Feststellungen, Vermutungen bzw. Fragen kommen: •

s

Bei Division durch P gibt es q Reste. Diese sind die Polynome  s−1

R(x) =

i

ai x = as−1 x

s−1

+ . . . + a1 x + a0 mit ai ∈ Fq , 0 ≤ i ≤ s − 1

i=0



F¨ur jede Nullstelle α von P (x) ist Fq (α) ein K¨orper. Dieser ist isomorph s s zu Fq, GF(q ) und Fq [x]/P (x). Sind α und β Nullstellen von P , dann sind Fq (α) und Fq (β) isomorph.



Sind alle endlichen K¨orper isomorph zu einer durch ein monisches irreduzibles Polynom u¨ ber Fq bestimmten K¨orpererweiterung von Fq f¨ur ein q ∈ P?

Wir wollen im Folgenden diese Vermutungen und Fragen schrittweise betrachten und beantworten.

4.2

Grundlegende Definitionen und Eigenschaften

Definition 4.1 Es sei L ein K¨orper und K sei ein weiterer K¨orper, der ein Teilk¨orper von L oder isomorph zu einem Teilk¨orper von L ist. Dann nennen wir L einen Erweiterungsk¨orper von K und schreiben daf¨ur L|K. 2 √ Beispiel 4.1 Aus Kapitel 3.5 wissen wir, dass Q( 2)|Q und R|Q sowie C|R gelten. 2 Korollar 4.1 Sei q ∈ P und P (x) ein u¨ ber Fq irreduzibles Polynom, dann gilt Fq [x]/P (x)|Fq . Beweis Die Menge der konstanten Polynome in Fq [x]/P (x) ist offensichtlich 2 isomorph zu Fq . Es l¨asst sich leicht nachrechnen, dass der folgende Satz gilt.

Erweiterungsk¨orper

110

Minimalpolynome

Satz 4.1 Es seien L und K zwei K¨orper mit L|K. Dann ist L ein Vektorraum u¨ ber K. 2 Grad einer K¨orpererweiterung

Falls der Vektorraum L eine endliche Dimension hat, heißt die K¨orpererweiterung L|K endlich. Die Dimension von L heißt dann Grad der K¨orpererweiterung und wird mit [ L : K ] bezeichnet. Korollar 4.2 Die K¨orpererweiterung Fq [x]/P (x)|Fq ist endlich, und ihr Grad ist gleich dem Grad von P (x). Beweis Es sei grad (P (x)) = s, dann ist die Menge 2

s−2

{ 1, x, x , . . . , x , x

s−1

}

eine Basis von Fq [x]/P (x), woraus unmittelbar die Behauptung folgt.

2

Wenn wir den K¨orper Fq , q ∈ P, um ein Element α zu Fq (α) erweitern, muss Fq (α), damit diese Menge abgeschlossen gegen¨uber den K¨orperoperationen ist, neben α auch alle Elemente n

a = an α + an−1 α

n−1

+ . . . + a1 α + a0

(4.4)

f¨ur alle ai ∈ Fq , 0 ≤ i ≤ n, n ≥ 0, enthalten. Es sei nun s

P (x) = x + ps−1 x

s−1

+ . . . + p1 x + p0

ein u¨ ber Fq irreduzibles monisches Polynom vom Grad s. Wir legen fest, dass α eine Nullstelle von P sein soll, d.h. es soll s

P (α) = α + ps−1 α

s−1

+ . . . + p1 α1 + p0 = 0

sein. Daraus folgt, dass sich jede Potenz α , n ≥ 0, als Linearkombination der i Potenzen α , 0 ≤ i ≤ s − 1, darstellen l¨asst: n

n

α = rs−1 α

s−1

+ rs−2 α

s−2

+ . . . + r1 α + r0

(4.5)

Aus (4.4) und (4.5) folgt nun, dass sich alle Elemente a ∈ Fq (α) als Polynome vom Grad h¨ochstens s − 1 darstellen lassen. Damit ergibt sich eine eineindeutige Zuordnung zwischen den Elementen von Fq (α) und denen von Fq [x]/P (x). Der Festlegung, dass α eine Nullstelle von P ist, und der daraus folgenden Reduktion n der Potenzen α entspricht dem Rechnen modulo P (x), d.h. dem Rechnen in Fq [x]/P (x). Dabei entspricht dem zu Fq adjungierten Element α das Polynom x. ¨ Aus diesen Uberlegungen folgt Satz 4.2 Jede endliche Erweiterung eines K¨orpers K l¨asst sich als Quotientenk¨orper K[x]/P (x) mit einem u¨ ber K irreduziblen Polynom P (x) ∈ K[x] darstellen. 2

Erweiterungen endlicher K¨orper

4.3

111

Minimalpolynome

Definition 4.2 a) Es seien K und L zwei K¨orper mit K ⊆ L und α ∈ L. Ein monisches Polynom M (x) ∈ K[x] kleinsten Grades mit M (α) = 0, d.h. α ist Nullstelle von M in L, heißt Minimalpolynom von α u¨ ber K. b) Sei L ein weiterer Oberk¨orper von K (der gleich L sein kann) und sei β ∈ L eine weitere Nullstelle von M , dann heißen α und β konjugierte Nullstellen von M. 2 Aus Teil a) der Definition kann unmittelbar gefolgert werden: Korollar 4.3 a) Sei K ein K¨orper und a ∈ K, dann ist M (x) = x − a das Minimalpolynom von a. b) Jedes Minimalpolynom u¨ ber einem K¨orper K ist irreduzibel u¨ ber K.

2

¨ Der folgende Satz fasst die Uberlegungen aus dem vorherigen Abschnitt zusammen und verdeutlich die Bedeutung von Minimalpolynomen daf¨ur. Satz 4.3 Sei P (x) ein irreduzibles monisches Polynom u¨ ber dem K¨orper Fq , q ∈ P, α sei eine Nullstelle von P und Fq (α) der durch Adjunktion von α zu Fq entstandene K¨orper. Dann ist die Abbildung ϕ : Fq (α) → Fq [x]/P (x) definiert durch n

ϕ(an α + an−1 α

n−1

n

+ . . . + a1 α + a0 ) = an x + an−1 x

n−1

+ . . . + a1 x + a0 (P (x))

ein Isomorphismus, und P (x) ist das Minimalpolynom von α.

2

Der folgende Satz besagt, dass das Minimalpolynom f¨ur ein Element eindeutig bestimmt ist. Satz 4.4 Sei M (x) ein Minimalpolynom von α u¨ ber dem K¨orper K. Dann gilt f¨ur jedes Polynom P (x) ∈ K[x] mit P (α) = 0: M (x)|P (x). Beweis Es sei P (x) ein Polynom mit P (α) = 0. Zu P und M gibt es Polynome Q und R mit P (x) = M (x) · Q(x) + R(x) und grad (R) < grad (M ) oder R(x) = 0. Es folgt: P (α) = M (α) · Q(α) + R(α). Da P (α) = 0 ist und M (α) = 0 ist, folgt R(α) = 0. Daraus folgt, dass R(x) = 0 sein muss, sonst w¨are R ein Polynom mit kleinerem Grad als der Grad von M mit der Nullstelle α, ein Widerspruch dazu, dass M Minimalpolynom von α ist. 2 Aus Satz 4.3 folgt unmittelbar Satz 4.5 Sei M ein Minimalpolynom von α u¨ ber dem K¨orper Fq , q ∈ P, und β eine zu α konjugierte Nullstelle von M , dann sind Fq (α) und Fq (β) isomorph. 2

Minimalpolynom

Konjungierte Nullstelle

112

Einheitengruppen endlicher K¨orper

4.4

Einheitengruppen endlicher K¨orper

In einem K¨orper K sind alle Elemente außer dem additiven Einselement invertierbar. Ist K endlich mit |K| = q, dann gilt also ordK∗ = q − 1. ∗

Sei a ∈ K ein Element mit Ordnung s: ordK∗(a) = s (siehe Kapitel 2.3). s s ist also der kleinste Exponent gr¨oßer als Null, f¨ur den a = 1 gilt. Mit unseren Kenntnissen u¨ ber Gruppen, K¨orper und Polynome k¨onnen wir folgende Folgerungen ziehen. ∗

Korollar 4.4 Sei K ein endlicher K¨orper sowie a ∈ K mit ordK∗(a) = s. Dann gilt: a) Die Elmente a sind f¨ur 1 ≤ j ≤ s alle von einander verschieden. j

b) Alle Potenzen a , 1 ≤ j ≤ s, sind L¨osungen der Gleichung x − 1 = 0. j

s

c) Es gilt die Zerlegung 2

s

s−1

x − 1 = (x − 1)(x − a)(x − a ) . . . (x − a 2

d) Aus x − 1 = (x − 1)(x − a)(x − a ) . . . (x − a s−1 x = a oder . . . oder x = a . s

s−1

)

) = 0 folgt x = 1 oder

l

e) Genau die Potenzen a mit (s, l) = 1 besitzen die Ordnung s, und die Anzahl dieser Potenzen betr¨agt ϕ(s). 2 Satz 4.6 Es sei K ein endlicher K¨orper mit ordK∗ = q − 1, dann gilt: a) Zu jedem Teiler s von q − 1 gibt es genau ϕ(s) Elemente der Ordnung s, ∗

b) K besitzt ϕ(q − 1) erzeugende Elemente. a) Aus Korollar 3.9 wissen wir, dass f¨ur!alle m ∈ N gilt: ϕ(d) = m. F¨ur m = q − 1 und d = s gilt also s|(q−1) ϕ(s) = q − 1. Des Weiteren wissen wir (siehe Korollar 2.8), dass die Ordnungen der Elemente ∗ von K Teiler von q − 1 sind. Wir nehmen an, dass es einen Teiler s von q − 1 ∗ gibt, zu dem es in K kein Element der Ordnung s gibt. Dann w¨urde   q−1≤ ϕ(s) < ϕ(s) = q − 1 Beweis !

d|m, d>0

s|(q−1), s=s

s|(q−1)

gelten, was offensichtlich einen Widerspruch darstellt. Zu jedem Teiler s von q − 1 gibt es also ein Element der Ordnung s, und gem¨aß Teil e) des obigen Korollars gibt es davon ϕ(s) St¨uck. b) folgt unmittelbar aus a).

2

Von Satz 3.21 wissen wir, dass endliche K¨orper zyklisch sind. Deswegen besitzen endliche K¨orper (mindestens) ein (multiplikativ) erzeugendes Element.

Erweiterungen endlicher K¨orper

113

Definition 4.3 Sei K ein endlicher K¨orper sowie a ∈ K ein erzeugendes Ele∗ ∗ ment von K , d.h. es ist  a  = K . a) a heißt dann primitives Element von K. b) Ist a ein primitves Element von K und M (x) ein Minimalpolynom von a u¨ ber K, dann heißt M (x) primitives Polynom u¨ ber K. 2

4.5

Primitives Element Primitives Polynom

Charakteristik von K¨orpern

!k Definition 4.4 Sei K ein K¨orper. Die kleinste Zahl k ∈ N mit i=1 1 = 0 heißt die Charakteristik von K. Existiert ein solches k nicht, dann ist die Charakteristik von K gleich 0. 2 Offensichtlich gilt Korollar 4.5 Sei q ∈ P, dann hat der K¨orper Fq die Charakteritik q.

2

Die Charakteristik eines K¨orpers ist quasi seine Ordnung bez¨uglich der Addition. Wir haben jetzt zwei M¨oglichkeiten, die Elemente ungleich 0 der K¨orper Fq , q ∈ P, aufzuz¨ahlen: Zum einen additiv ∗

Fq = { 1, 1 + 1, 1 + 1 + 1, . . . , 1 + 1 + . . . + 1 } q−1-mal

(4.6)

= {1, 2, 3, . . . , q − 1} und zum anderen multiplikativ   ∗ 2 q−2 Fq = 1, g, g , . . . , g

(4.7)

f¨ur eine Primitivwurzel g von Fq . Bemerkung 4.1 Anstelle von 1 + . . . + 1 schreibt man in aller Regel j · 1. Gej-mal

nau betrachtet ist das aber nicht die normale Multiplikation in Fq , sondern das ist j die additive Potenzschreibweise. Normalerweise m¨usste man 1 schreiben, aber diese Schreibweise ist ja schon f¨ur die Multiplikation vergeben (siehe auch entsprechende Bemerkungen in Kapitel 2.2). Man k¨onnte h¨ochstens zwischen einer +n additiven und einer multiplikativen Potenz untercheiden, etwa in der Art a f¨ur ×n n n · a bzw. a f¨ur a . 2 Korollar 4.6 Sei k Charakteristik des K¨orpers K. Dann gilt: !k ∗ a) k ist die kleinste Zahl mit i=1 a = 0 f¨ur alle a ∈ K . b) Es gilt: k ∈ P oder k = 0.

Charakteristik eines K¨orpers

114

Charakteristik von K¨orpern

Beweis a) F¨ur k = 0 gilt die Behauptung offensichtlich. Sei also k ≥ 1 und ∗ a ∈ K , dann gilt zum einen k 

 k

a=a

i=1

Sei zum anderen k  < k mit

1=a·0=0

i=1

!k i=1

a = 0. Dann gilt k

0=a

−1

·0=a

−1



k

a=a

−1

·a



i=1

k

1=



i=1

1

i=1

!k Da k die kleinste Zahl mit der Eigenschaft i=1 1 = 0 ist, kann es keine kleinere  !k !k Zahl k  mit i=1 1 = 0 geben. Also ist k auch die kleinste Zahl mit i=1 a = 0. b) Wir betrachten nur den Fall k ∈ P. W¨a! re ks eine zusammengesetzte !r Zahl, d.h. es gibt r, s ∈ N mit k = r · s, und es sei i=1 1 = a = 0 (f¨ur i=1 1 = a = 0 folgt die Argumentation analog), dann gilt:  k

0=

i=1

 r·s

1=

i=1

 r

1=

i=1

s

 r

1=

i=1

 r

a=a

i=1

1

i=1

!r Daraus folgt, dass i=1 1 = 0 sein muss. Da r < k ist, haben wir einen Widerspruch dagegen erhalten, dass k Charakteristik von K ist. 2 Unmittelbar aus Teil b) dieses Korollars folgt Korollar 4.7 Sei q ∈ P und P (x) irreduzibel u¨ ber Fq , dann besitzen die K¨orper 2 Fq und Fq [x]/P (x) beide die Charakteristik q. Wir werden nun feststellen, dass jeder endliche K¨orper K als Erweiterung eines K¨orpers Fq f¨ur ein q ∈ P betrachtet werden kann. Satz 4.7 Sei K ein endlicher K¨orper der Charakteristik q. Dann ist Fq isomorph zu einem Teilk¨orper von K. Beweis K enth¨alt auf jeden Fall die q von einander verschiedenen Elemente !k i=1 1, 0 ≤ k ≤ q − 1, d.h. die Elemente 0, 1, 1 + 1, . . . , 1 + 1 + . . . + 1 (q−1)-mal

Wenn wir die Menge dieser Elemente mit C(K) bezeichnen, dann kann man leicht nachrechnen, dass die Abbildung φ : C(K) → Fq definiert durch φ(1 + 1 + . . . + 1) = k, 0 ≤ k ≤ q − 1 k-mal

ein Isomorphismus ist, womit die Behauptung gilt.

2

Erweiterungen endlicher K¨orper

115

Wenn man von dem m¨oglicherweise notwendigen Isomorphismus absieht, kann man also sagen, dass jeder endliche K¨orper der Charakteristik q den K¨orper Fq als Teilk¨orper enth¨alt. Der folgende Satz beschreibt dieses Enthaltensein noch etwas deataillierter. Satz 4.8 Es seiK ein endlicher K¨orper mit der Charakteristik q. Dann gilt Fq =  q a∈K|a =a . Beweis Nach obigem Satz 4.7 ist Fq ein Teilk¨orper von K, und mit Satz 3.9 gilt q−1 ∗ a = 1 f¨ur alle q − 1 Elemente a ∈ Fq . Alle diese Elemente sind Nullstellen des q−1 Polynoms x − 1, und mehr Nullstellen als sein Grad q − 1 kann das Polynom q ∗ q nicht haben. Es gilt also a = a f¨ur alle a ∈ Fq sowie 0 = 0, und f¨ur kein weiteres Element aus K gilt diese Eigenschaft. Somit gilt die Behauptung. 2 Der folgende Satz besagt, dass durch geeignete Erweiterung des K¨orper Fq quasi (genauer: bis auf Isomorphie) endliche K¨orper der Charakteristik q festgelegt sind. Satz 4.9 Sei K ein endlicher K¨orper der Charakteristik q und a ein primitives Element von K. Dann gilt K = Fq (a) (genauer: dann sind K und Fq (a) isomorph). Beweis Nach dem obigen Satz enth¨alt K den K¨orper Fq . Es sei a ∈ K − Fq k−1 sowie ordK∗ = k − 1. Dann gilt mit Satz 3.9 a = 1. Damit ist a Nullstelle k−1 des Polynoms x − 1 ∈ Fq [x], d.h. a ist Nullstelle eines monischen, u¨ ber Fq irreduziblen Faktors M (x) in der Zerlegung dieses Polynoms, und M (x) ist das Minimalpolynom von a u¨ ber Fq . Es ist also a ∈ K und M (a) = 0 in K. Es gilt also, dass Fq (a) Teilk¨orper von K ist: Fq (a) ⊆ K. Ist a sogar ein primitives Element von K, d.h. alle Elemente von K (außer der Null) k¨onnen als Potenzen von a dargestellt werden, dann gilt auch K ⊆ Fq (a). Sind die Voraussetzungen 2 des Satzes erf¨ullt, dann gilt also K = Fq (a). Aus dem Satz folgt unmittelbar Korollar 4.8 Sei K ein endlicher K¨orper der Charakteristik q, a und b seien primitive Elemente von K und Ma (x) sei Minimalpolynom von a und Mb (x) sei Minimalpolynom von b. Dann gilt: a) K = Fq (a) = Fq (b). b) Die Minimalpolynome von a und b stimmen im Allgemeinen nicht u¨ berein. c) Fq [x]/Ma (x) und Fq [x]/Mb (x) sind isomorph. d) |K| = q

grad(Ma)

.

2

Alle endlichen K¨orper K sind also (isomorph zu einem) Erweiterungsk¨orper eines geeigenten K¨orpers Fq. Die Anzahl q der Elemente von K ist in jedem Fall s eine Primzahlpotenz: q = |K| = p f¨ur ein s ∈ N. s ist der Grad des Minimalpo∗ lynoms eines zu Fq adjungierten Elementes. Sowohl die Elemente von Fq (a) als

116

Charakteristik von K¨orpern



auch die Elemente von Fq (b) sind Nullstellen des Polynoms F (x) = x ¨ (siehe auch Korollar 4.4). Uber Fq (a) gilt damit die Zerlegung F (x) = x

ps −1

ps −1

2

− 1 = (x − a)(x − a ) . . . (x − a

ps −1

−1

)

und u¨ ber Fq (b) die Zerlegung F (x) = x

ps −1

2

− 1 = (x − b)(x − b ) . . . (x − b

ps −1

(4.8)

)

Es gilt F (a ) = F (b ) = 0 f¨ur 0 ≤ i, j ≤ p − 1 = q − 1, d.h. insbesondere ist F (a) = F (b) = 0. Mit Satz 4.4 folgt, dass die Minimalpolynome Ma (x) von a und Mb (x) von b Teiler von F (x) sind. Da Ma (x) und Mb (x) irreduzibel u¨ ber Fq sind, gilt entweder Ma (x) = Mb (x) oder (Ma (x), Mb (x)) = 1. F¨ur den zweiten Fall gilt dann nicht nur Ma (x)|F (x) und Mb (x)|F (x), sondern auch Ma (x) · Mb (x)|F (x). Es gibt also ein Polynom G(x), so dass i

j

s

F (x) = Ma(x)·G(x) und F (x) = Mb(x)·G(x) oder F (x) = Ma(x)·Mb(x)·G(x) u¨ ber Fq gilt. Mit (4.8) folgt, dass Ma (x) folgende Gestalt hat: e

e

Ma (x) = (x − b 1 ) . . . (x − b k ) wobei dieExponenten e1 , .. . , ek verschiedene Elemente aus der Menge der Exs ¨ nach ponenten 1, 2, . . . , p − 1 der Zerlegung (4.8) sind. In den Uberlegungen Korollar 4.2, insbesondere mithilfe der Gleichungen (4.4) und (4.5) hatten wir festgestellt, dass sich jedes Element r ∈ Fq (a) als Linearkombination R(a) = rs−1 a

s−1

(4.9)

+ . . . + r1 a + r0

f¨ur geeignete ri ∈ Fq , 0 ≤ i ≤ s − 1, mit s = grad(Ma(x)) darstellen l¨asst. Wir definieren nun die Abbildung φ : Fq (a) → Fq (b) durch e

φ(r(a)) = r(b 1 )

(4.10)

Diese Abbildung ist ein Isomorphismus zwischen Fq (a) und Fq (b). In Verbindung mit Satz 4.9 und Korollar 4.8 a) folgt, dass endliche K¨orper, die dieselbe Anzahl von Elementen besitzen, isomorph sein m¨ussen. Also gilt Satz 4.10 Es seien K und L zwei endliche K¨orper mit |K| = |L|. Dann sind K und L isomorph. 2 In Korollar 4.8 d) haben wir festgestellt, dass die Anzahl der Elemente eines endlichen K¨orpers in jedem Fall eine Primzahlpotenz ist. Des Weiteren ergibt ¨ sich aus den obigen Uberlegungen, dass es sogar zu jedem p ∈ P und zu jedem s s ∈ N einen K¨orper mit q = p Elementen gibt. Satz 4.11 Zu jedem p ∈ P und zu jedem s ∈ N gibt es einen K¨orper mit q = p Elementen. 2 s

Erweiterungen endlicher K¨orper

117

Aus den beiden letzten S¨atzen folgt Korollar 4.9 Zu jedem p ∈ P und zu jedem s ∈ N gibt es bis auf Isomorphie s genau einen K¨orper mit p Elementen. 2 Eine g¨angige Bezeichnung f¨ur einen bis auf Isomorphie eindeutigen K¨orper mit s s p Elementen ist GF(p ). Dabei steht GF f¨ur Galois-Feld.8 Diese Bezeichnung haben wir in Abschnitt 4.1 bereits verwendet.

8

Benannt nach Evariste Galois (1811 - 1832). Galois besch¨aftige sich schon in sehr jungen Jahren mit der L¨osbarkeit algebraischer Gleichungen. Er war in revolution¨aren Aktivit¨aten dieser Zeit verwickelt und wurde deswegen mehrfach verhaftet. Noch nicht 21 Jahre alt starb er in einem Duell (das, so wird erz¨ahlt, wegen einer Liebesgeschichte stattfand). Wohl das Ende des Duells erahnend schrieb er in der Nacht davor die Grundideen der nach ihm benannten Galois-Theorie auf. Mit deren Hilfe l¨asst sich feststellen, ob algebraische Gleichungen l¨osbar sind. Durch die Ans¨atze von Galois wurde die Bedeutung von algebraischen Strukturen wie Gruppen und K¨orper f¨ur die Darstellung und L¨osung grundlegender mathematischer Probleme klar. Sie f¨uhrte in der Folgezeit zu einer fruchtbaren Weiterentwicklung der Mathematik, die bis in die heutige Zeit reicht.

Galois-Feld

Modulare Arithmetik

119

5

Modulare Arithmetik

Mit diesem Kapitel beginnen die Anwendungskapitel“, in denen wir Problem” stellungen aus ausgew¨ahlten Anwendungsbereichen der Informatik betrachten und mithilfe von Konzepten, Methoden und Verfahren aus den bisherigen Kapiteln l¨osen. Dabei m¨ussen eine Reihe von bekannten Begriffen noch detaillierter untersucht werden, was zu neuen mathematischen Erkenntnissen f¨uhrt. Wir beginnen mit einem Einblick in die modulare Arithmetik. Mit deren Hilfe kann man arithmetische Berechnungen wie das Additieren, Multiplizieren und Potenzieren in bestimmten F¨allen einfacher und effizienter durchf¨uhren. Wir beginnen mit dem Chinesischen Restsatz, der eine Grundlage f¨ur die modulare Arithmetik ist. Der Chinesische Restsatz wird dar¨uber hinaus f¨ur Betrachtungen in sp¨ateren Kapiteln von Bedeutung sein. Nach dem Durcharbeiten dieses Kapitels sollten Sie

Lernziele



den Chinesischen Restsatz beweisen k¨onnen,



lineare Kongruenzgleichungssysteme mithilfe des Chinesischen Restsatzes l¨osen k¨onnen,



Additionen und Multiplikationen ganzer Zahlen modular durchf¨uhren k¨onnen,



modulares Potenzieren verstehen und anwenden k¨onnen,



diskrete Logarithmen f¨ur kleine Einheitengruppen angeben und damit rechnen k¨onnen.

5.1

Chinesischer Restsatz

Wir beginnen mit einer kleinen Geschichte: Ein Ehepaar besitzt eine Anzahl von Goldm¨unzen, die es an seine f¨unf Kinder vererben m¨ochte. Wenn es die M¨unzen nur auf zwei seiner Kinder mit gleicher Anzahl f¨ur beide aufteilt, bleibt eine M¨unze u¨ brig. Teilt es alle M¨unzen auf drei Kinder gleichermaßen auf, dann bleiben zwei M¨unzen u¨ brig, und teilt es alle M¨unzen auf alle f¨unf gleich auf, bleiben drei M¨unzen u¨ brig. Wie viele Goldm¨unzen besitzt das Ehepaar? Wenn x die Anzahl der Goldm¨unzen ist, dann bleibt bei Divison von x durch zwei der Rest eins, bei Division durch drei der Rest zwei sowie bei Division durch f¨unf der Rest drei. Diesen Sachverhalt k¨onnen wir durch das folgende Kongruenzgleichungssystem beschreiben: x = 1 (2) x = 2 (3) x = 3 (5)

(5.1)

K.-U. Witt, Algebraische und zahlentheoretische Grundlagen für die Informatik, DOI 10.1007/978-3-658-04075-8_5, © Springer Fachmedien Wiesbaden 2014

120

Lineares Kongruenzgleichungssystem

Chinesischer Restsatz

Wie k¨onnen wir solche linearen Kongruenzgleichungsysteme l¨osen? Ein allgemeines lineares Kongruenzgleichungssystem ist gegeben durch x = a1 (m1 ) x = a2 (m2 ) ... x = an (mn )

(5.2)

wobei ai ∈ Z sowie mi ∈ N ist mit mi ≥ 2 und außerdem soll (mi , mj ) = 1 f¨ur i = j, 1 ≤ i, j ≤ n, sein. Wir gehen schrittweise vor und betrachten zun¨achst den Fall n = 2. Chinesischer Restsatz light“ ” Version 1

Satz 5.1 Seien a, b ∈ Z, m1 , m2 ∈ N mit m1 , m2 ≥ 2 und (m1 , m2 ) = 1 sowie m = m1 · m2 . Dann gilt a = b (m1 ) und a = b (m2 ) genau dann, wenn a = b (m) gilt. Beweis Vorbemerkung: Wegen der Voraussetzung (m1 , m2 ) = 1 gilt mit Korollar 1.20 [m1 , m2 ] = m1 · m2 .

Chinesischer Restsatz light“ ” Version 2

⇒“: Aus a = b (m1 ) und a = b (m2 ) folgt m1 |a − b bzw. m2 |a − b. Mit Korollar ” 1.18 folgt [m1 , m2 ]|a − b. Aus der Vorbemerkung folgt damit m1 · m2 |a − b und damit die Behauptung a = b (m). ¨ ⇐“: Folgt unmittelbar mithilfe von Ubung 1.2 (1). 2 ” Satz 5.2 Seien a1 , a2 ∈ Z, m1 , m2 ∈ N mit m1 , m2 ≥ 2 und (m1 , m2 ) = 1 sowie m = m1 · m2 . Dann besitzt das lineare Kongruenzgleichungssystem x = a1 (m1 ) x = a2 (m2 )

(5.3)

genau eine L¨osung modulo m. Beweis Wegen Korollar 1.14 gibt es zu m1 , m2 ∈ N mit (m1 , m2 ) = 1 Zahlen b1 , b2 ∈ Z mit b1 m2 + b2 m1 = 1. Daraus folgt: (5.4) (5.5)

b1 m2 = 1 (m1 ) b2 m1 = 1 (m2 ) Wir setzen x = a1 b1 m2 + a2 b2 m1 (m) Dann ist x eine eindeutige L¨osung f¨ur das Gleichungssystem (5.3). x ist eine L¨osung, weil x beide Gleichungen erf¨ullt, denn es gilt x = a1 b1 m2 + a2 b2 m1 (m1 ) = a1 b1 m2 (m1 ) = a1 · 1 (m1 ) = a1 (m1 )

wegen (5.4)

Modulare Arithmetik

121

sowie x = a1 b1 m2 + a2 b2 m1 (m2 ) = a2 b2 m1 (m2 ) = a2 · 1 (m2 ) = a2 (m2 )

wegen (5.5)

Wir zeigen noch die Eindeutigkeit von x. Sei x = x eine weitere L¨osung, es sei o.B.d.A. x < x. Es gilt 0 ≤ x < m = m1 m2 sowie 0 ≤ x < m = m1 m2 . Daraus folgt 0 ≤ x − x < m

(5.6)

x und x erf¨ullen das Gleichungssystem (5.3): x = a1 (m1 ) x = a2 (m2 )

x = a1 (m1 ) x = a2 (m2 ) Es folgt x = x (m1 ) x = x (m2 )

Da (m1 , m2 ) = 1 ist, gilt mit Satz 5.1 x = x (m), d.h. m|x − x . Daraus folgt, dass x − x ≥ m gilt, was ein Widerspruch zu (5.6) ist. Damit ist die Annahme, dass eine weitere L¨osung x = x existiert, falsch, und somit die Eindeutigkeit der L¨osung x gezeigt. 2 Die beiden folgenden S¨atze sind Verallgemeinerungen der beiden obigen Light“-Varianten des Chinesischen Restsatzes. ” Satz 5.3 Seien a, b ∈ Z, m1 , m2 , . . . , mn ∈ N mit mi ≥ 2 und (mi , mj ) = 1, 1 ≤ i, j ≤ n, i = j, sowie m = m1 · m2 · . . . · mn . Dann gilt a = b (mk ), 1 ≤ k ≤ n genau dann, wenn a = b (m) gilt. 2 Satz 5.4 Seien a1 , a2 , . . . , an ganze Zahlen, m1 , m2 , . . . , mn ganze, paarweise teilerfremde Zahlen gr¨oßer gleich 2, dann besitzt das lineare Kongruenzgleichungssystem x = a1 (m1 ) x = a2 (m2 ) .. . x = an (mn ) genau eine L¨osung modulo m1 · m2 · . . . · mn . M , 1 ≤ i ≤ n. Es gilt Beweis Es sei M = m1 · m2 · . . . · mn sowie Mi = m i (mi , Mi ) = 1 (Mi und mi sind teilerfremd, womit Mi modulo mi invertierbar

Chinesischer Restsatz Version 1 Chinesischer Restsatz Version 2

122

Chinesischer Restsatz

ist), 1 ≤ i ≤ n. Nach Korrollar 1.14 gibt es dann bi und ci , so dass 1 = bi · Mi + ai · mi , d.h. bi · Mi = 1 (mi ), 1 ≤ i ≤ n ist. Die L¨osung des Kongruenz-Gleichungssystems ist gegeben durch x = a1 · b1 · M1 + a2 · b2 · M2 + . . . + an · bn · Mn (M ) Wir zeigen zun¨achst, dass das so berechnete x eine L¨osung des Gleichungssystems ist. Es gilt Mj = 0 (mi ) f¨ur i = j, und damit x = ai · bi · Mi (mi ), 1 ≤ i ≤ n. Da bi · Mi = 1 (mi ) ist, folgt, dass x = ai (mi ), 1 ≤ i ≤ n, ist. Diese L¨osung ist eindeutig. Wir nehmen an, x sei eine weitere L¨osung und o.B.d.A. x < x (f¨ur x > x erfolgt der Beweis analog). Es gilt 0 ≤ x < M und 0 ≤ x < M und damit 0 ≤ x − x < M

(5.7)

x und x erf¨ullen das Gleichungssystem, d.h. es ist x = ai (mi ) und x = ai (mi ), 1 ≤ i ≤ n. Es folgt, x = x (mk ), 1 ≤ k ≤ n. Da (mi , mj ) = 1 f¨ur 1 ≤ i, j ≤ n mit i = j gilt, folgt mit Satz 5.3 x = x (M ). Es folgt M |x − x und damit ist x − x ≥ M , was ein Widerspruch zu (5.7) ist. Die Annahme, dass es neben x eine L¨osung x = x gibt, ist also falsch, x ist die eindeutige L¨osung des Gleichungssystems. 2 Mithilfe des Chinesischen Restsatzes kann der folgende Satz gezeigt werden. Satz 5.5 Es seien m1 , . . . , mn paarweise teilerfremde nat¨urliche Zahlen gr¨oßer gleich 2, und es sei m = m1 · . . . · mn . Dann ist die Abbildung ∗

n



f : (Z/mZ) → ×i=1 (Z/mi Z) definiert durch f ([a]m ) = ([a]m1 , . . . , [a]mn )



ein Isomorphismus. Insgesamt folgt also, dass die Gruppe (Z/mZ) und die Pro∗ ∗ duktgruppe (Z/m1 Z) × . . . × (Z/mn Z) isomorph sind. Es gilt also ∗ ∗ ∗ (Z/mZ) ∼ = (Z/m1 Z) × . . . × (Z/mn Z)

Beweis Wir zeigen zun¨achst, dass f (1) total, (2) injektiv und (3) surjektiv ist. Aus schreibtechnischen Gr¨unden beweisen wir die Light-Version“ f¨ur n = 2, ” der allgemeine Beweis kann daraus abgeleitet werden. Des Weiteren verwenden ∗ ∗ ∼ wir die Isomorphie (Z/kZ) = Zk f¨ur alle k ∈ N. Es sei also r, s ∈ N mit r, s ≥ 2 ∗ ∗ ∗ und (r, s) = 1 und f : Zr × Zs → Zrs definiert durch f ([a]r , [a]s ) = [a]rs , dann ist f bijektiv. ∗



Dazu u¨ berlegen wir: Ist a ∈ Zr und b ∈ Zs , dann gilt (siehe Satz 3.7) (r, a) = 1 und (s, b) = 1. Nach dem Chinesichen Restsatz (Satz 5.2) gibt es genau eine L¨osung modulo rs f¨ur das Kongruenzgleichungssystem x = a (r) und x = b (s).

Modulare Arithmetik

123



Zu (1): Wir m¨ussen zeigen, dass x ∈ Zrs gilt, d.h. dass (rs, x) = 1 ist. Wegen x = a (r) gilt (r, x) = 1 und wegen x = b (s) gilt (s, x) = 1, woraus mit Korollar 1.16 folgt, dass x teilerfremd zu rs sein muss, also (rs, x) = 1 ist. ∗ Damit ist x ∈ Zrs gezeigt. ∗



Zu (2): Sei (a1 , b1 ), (a2 , b2 ) ∈ Zr × ∈ Zs mit (a1 , b1 ) = (a2 , b2 ), dann haben die beiden Kongruenzgleichungssysteme x1 = a1 (r), x1 = b1 (s) und x2 = a2 (r) und x2 = b2 (s) zwei verschiedene L¨osungen x1 und x2 modulo rs. Damit ist die Injektivit¨at gezeigt. ∗

Zu (3): Sei y ∈ Zrs. Wir bestimmen c und d mit y = c (r) und y = d (s). F¨ur diese gilt (r, c) = 1 und (s, d) = 1. Damit hat das Kongruenzgleichungssystem x = c (r) und x = d (s) nach dem Chinesischen Restsatz eine L¨osung x modulo rs. Da die L¨osung eindeutig ist, muss y = x (rs) sein. Damit ist die Surjektivit¨at gezeigt. Die Homomorphieeigenschaft von f zeigen wir in der allgemeinen Variante: f ([a]m ⊗ [b]m ) = f ([a · b]m ) = ([a · b]m1 , . . . , [a · b]mn ) = ([a]m1 ⊗ [b]m1 , . . . , [a]mn ⊗ [b]mn ) = ([a]m1 , . . . , [a]mn ) ⊗ ([b]m1 , . . . , [b]mn ) = f ([a]m ) ⊗ f ([b]m ) 2 ∗ ∗ ∼ Aus der gezeigten Isomorphie Zm = Zm × . . . × Zmn ergeben sich weitere 1 Eigenschaften, die wir sp¨ater noch vielf¨altig verwenden werden. Damit ist alles gezeigt.



Korollar 5.1 a) Es sei m = m1 · m2 · . . . · mk mit (mi , mj ) = 1 f¨ur i = j, und a ∈ N, dann gilt am = a (m) genau dann, wenn am = a (mi ) f¨ur 1 ≤ i ≤ k b) Es sei m = m1 · m2 · . . . · mk mit (mi , mj ) = 1 f¨ur i = j, dann gilt ϕ(m) = ϕ(m1 ) · ϕ(m2 ) · . . . · ϕ(mk ) =

k 

ϕ(mi )

i=1

c) Es sei n ∈ N quadratfrei, d.h. n = p1 · p2 · . . . · pk , pi ∈ P, pi = pj f¨ur i = j, dann ist k  (pi − 1) ϕ(n) = i=1

Beweis a) und b) folgen unmittelbar aus dem Satz 5.5. c) folgt aus b) und Korollar 3.7 b).

2

124

Modulare Addition und Multiplikation

5.2

Modulare Addition und Multiplikation

Die Ergebnisse des letzten Abschnitts k¨onnen f¨ur effizientes modulares Rechnen genutzt werden. Falls Berechnungen modulo m aufw¨andig sind, weil etwa die Wortbreite des verwendeten Rechnersystem zu klein ist, oder falls man Berechnungen auf einem System paralleler Prozessoren durchf¨uhren m¨ochte, dann kann man m zerlegen in ein Produkt teilerfremder kleiner“ Moduln m = m1 ·. . .·mn . ” ∗ ∗ Die Rechnungen in Zm f¨uhrt man dann in allen Zm , 1 ≤ i ≤ n, aus und berechi net aus deren Ergebnissen mithilfe des Chinesischen Restsatzes (Satz 5.4) das ∗ gew¨unschte Ergebnis in Zm. Beispiel 5.1 Wir wollen dies an einem Beispiel mit kleinen Moduln verdeutlichen, damit wir im Kopf“ rechnen k¨onnen. Nehmen wir an, dass wir mit Zahlen ” 12 einer Bitl¨ange von 12, d.h. im Zahlenbereich 0, 1, . . . , 2 − 1 (= 4095), also mo12 dulo 2 rechnen wollen, uns aber nur Rechner mit einer Bitl¨ange von 4, d.h. nur 4 4 die Zahlen im Bereich 0, 1, . . . , 2 − 1 (= 15), also Rechnungen modulo 2 zur Verf¨ugung stehen. Dann k¨onnen wir etwa als Moduln die Primzahlen m1 = 5, m2 = 7, m3 = 11 und m4 = 13 w¨ahlen; es gilt: M = m1 · m2 · m3 · m4 = 5005. F¨ur die Anwendung des Chinesischen Restsatzes ben¨otigen wir f¨ur 1 ≤ i ≤ 4 M sowie ihre Inversen bi modulo mi : Mi · bi = 1 (mi ). Es gilt: die Zahlen Mi = m i

M1 = 1001 M2 = 715 M3 = 455 M4 = 385 b2 = 1 b3 = 3 b4 = 5 b1 = 1 Die Mi und die bi brauchen nur einmal bestimmt zu werden, sie gelten f¨ur alle Rechnungen, die mit diesem System durchgef¨uhrt werden sollen. Wir wollen als Beispiel f¨ur eine Addition die Summe 1123 + 1456 + 789 = 3368 berechnen. Wir berechnen zuerst die Reste der Summanden bez¨uglich der Moduln mi , 1 ≤ i ≤ 4: 1123 = 3 (5) 1123 = 3 (7) 1123 = 1 (11) 1123 = 5 (13)

1456 = 1 (5) 1456 = 0 (7) 1456 = 4 (11) 1456 = 0 (13)

789 = 4 (5) 789 = 5 (7) 789 = 8 (11) 789 = 9 (13)

Jetzt addieren wir diese Reste in Z5 × Z7 × Z11 × Z13 : (3 + 1 + 4 (5), 3 + 0 + 5 (7), 1 + 4 + 8 (11), 5 + 0 + 9 (13)) = (3, 1, 2, 1) Die Summe 1123 + 1456 + 789 = 3368 in Z5005 wird also repr¨asentiert durch die Summe (3, 1, 2, 1) ∈ Z5 × Z7 × Z11 × Z13 . Zur Probe l¨osen wir das Kongruenzgleichungssystem x = 3 (5) x = 1 (7) x = 2 (11) x = 1 (13)

Modulare Arithmetik

125

und erhalten mithilfe des Chinesischen Restsatzes als L¨osung x = 3 · 1 · 1001 + 1 · 1 · 715 + 2 · 3 · 455 + 1 · 5 · 385 = 3368 (5005) ∗

Als Beispiel f¨ur eine Multiplikation berechnen wir in Z5005 das Produkt 107·38 = 4066. Zun¨achst bestimmen wir wieder die Reste: 107 = 2 (5) 107 = 2 (7) 107 = 8 (11) 107 = 3 (13) ∗



38 = 3 (5) 38 = 3 (7) 38 = 5 (11) 38 = 12 (13) ∗



Wir multiplizieren die Reste in Z5 × Z7 × Z11 × Z13 : (2 · 3 (5), 2 · 3 (7), 8 · 5 (11), 3 · 12 (13)) = (1, 6, 7, 10) ∗





Das Produkt 107 · 38 = 4066 ∈ Z5005 entspricht also (1, 6, 7, 10) ∈ Z5 × Z7 × ∗ ∗ Z11 × Z13 . Zur Probe l¨osen wir das Kongruenzgleichungssystem x = 1 (5) x = 6 (7) x = 7 (11) x = 10 (13) und erhalten als L¨osung x = 1 · 1 · 1001 + 6 · 1 · 715 + 7 · 3 · 455 + 10 · 5 · 385 = 4066 (5005) Im Beispiel haben wir die Anzahl der Moduln und die Moduln selbst sehr speziell gew¨ahlt. Im Allgemeinen kann man bei einer Bitl¨ange von n, bei der also mo$k n n dulo 2 gerechnet wird, die k ersten Primzahlen p1 , . . . , pk mit i=1 pi ≥ 2 als n Moduln w¨ahlen. Dabei reicht es, k ≈ log n zu setzen. Anstelle einer n-stelligen Arithmetik ben¨otigen wir nur eine log n-stellige Arithmetik. Wir betrachten als 32 Beispiel den Fall n = 32. Es ist 2 = 4 295 031 296 sowie log3232 = 9.233 . . .. Wir k¨onnen also als Moduln die ersten 10 Primzahlen 2, 3, . . . , 29 w¨ahlen: 32

2 · 3 · 5 · 7 · 11 · 13 · 17 · 19 · 23 · 29 = 6 468 673 160 > 2 = 4 294 967 296 5

Es ist 29 < 2 das gr¨oßte Modul, wir kommen also mit einer Arithmetik mit 5 = log 32 Stellen aus. Anstelle der n-stelligen arithmetischen Verkn¨upfung a op b von zwei Zahlen n a, b < 2 berechnet man die modularen Reste ai = a (pi ) und bi = b (pi ), 1 ≤ i ≤ k, und verkn¨upft diese mit log n-stelliger Arithmetik modular: (a1 op b1 (p1 ), . . . , ak op bk (pk ))

126

Effizientes Potenzieren

Bei Bedarf kann man daraus das Ergebnis a op b bestimmen, indem man mithilfe des Chinesischen Restsatzes das Kongruenzgleichungssystem x = a1 op b1 (p1 ) .. . x = ak op bk (pk ) l¨ost und so die L¨osung x = a op b = (a1 op b1 ) · c1 · M1 + . . . + (ak op bk ) · ck · Mk (M ) f¨ur 1 ≤ i ≤ k sowie die Inversen erh¨alt. Dabei m¨ussen M = p1 · . . . · p2 , Mi = M pi ci von Mi modulo pi nur einmal f¨ur die durch die gew¨ahlten Module p1 , . . . , pk bestimmte Arithmetik berechnet werden, denn diese Gr¨oßen h¨angen nur von den Moduln ab und nicht von den zu berechneten Verkn¨upfungen a op b.

5.3

Effizientes Potenzieren

Bei Primzahltests, aber auch bei vielen anderen Anwendungen, z.B. bei der Verschl¨usselung von Daten (siehe Kapitel 7), m¨ussen modulare Potenzen ben rechnet werden. So muss zum Beispiel getestet werden, ob a = 1 (n) f¨ur ein a ∈ {1, . . . , n − 1} gilt. Zun¨achst u¨ berlegen wir, dass die naive Berechnung von n a (n) durch n − 1-maliges Multiplizieren der Dualdarstellung von a mit sich selbst gem¨aß Adam Riese“ und anschließende Reduktion modulo n einen viel ” zu großen Aufwand ben¨otigt, n¨amlich expontiell in log n viele Operationen, da die L¨angen der Dualdarstellungen von a und von n von der Gr¨oßenordnung log n sind. Ein wesentlich effizienteres Verfahren zur Berechnung der modularen Potenz ist das wiederholte Quadrieren. Dazu betrachten wir zun¨achst den Fall, dass wir b k a (n) berechnen wollen f¨ur b = 2 , k ≥ 2. Es gilt n¨amlich 2

a (n) = a · a (n) 4

2

2

8

4

4

a (n) = (a (n) · a (n)) (n) a (n) = (a (n) · a (n)) (n) .. . k

2

2

a (n) = (a i 2

k−1

(n) · a

2

k−1

(n)) (n)

Zur Berechnung von a (n) benutzen wir also die bereits vorher berechnete Potenz a

2

i−1

(n).

Modulare Arithmetik

127

b

Nun betrachten wir die Berechnung von a (n) und benutzen dabei die Dualdarstellung von b: bn−1 . . . b1 b0 . Es gilt  n−1

b=

i

bi · 2

i=0

und damit b

a =a

i Pn−1 b ·2 i=0 i

b ·2

0

=a0

1 b ·2

·a1

b ·2

·a2

2

bn−1 ·2

· ... · a

n−1

i

2

Um a (n) zu berechnen, berechnen wir zuerst ai = a (n), 0 ≤ i ≤ n − 1, durch wiederholtes Quadrieren, und danach multiplizieren wir modulo n alle ai , f¨ur die bi = 1 ist. n

b

F¨ur die Berechnung von a (n) ben¨otigt man mit diesem Verfahren 2log n Multplikationen von Zahlen aus Zn mit der L¨ange log n ihrer Dualdarstellungen. 3 Die Berechnung ben¨otigt also insgesamt in der Gr¨oßenordnung (log n) viele bin¨are Operationen. 341

Beispiel 5.2 a) Wir berechnen 2 (341) mithilfe wiederholten Quadrierens. Die Dualdarstellung von 341 ist 101010101, sie hat die L¨ange 9. Wir berechnen zun¨achst die Faktoren ai , 0 ≤ i ≤ 8, jeweils modulo 341: 0

a0 = 22 = 2 1

2

2

4

a1 = 22 = 2 = 2 · 2 = 4 2

2

4

4

a2 = 22 = 2 = 2 · 2 = 4 · 4 = 16 3

a3 = 22 = 28 = 2 · 2 = 16 · 16 = 256 24

= 216 = 28 · 28 = 256 · 256 = 64

25

= 232 = 216 · 216 = 64 · 64 = 4

26

= 264 = 232 · 232 = 4 · 4 = 16

a4 = 2 a5 = 2 a6 = 2

7

a7 = 22 = 2128 = 264 · 264 = 16 · 16 = 256 8

a8 = 22 = 2256 = 2128 · 2128 = 256 · 256 = 64 Es ist bi = 1 f¨ur i ∈ { 0, 2, 4, 6, 8 }. Wir m¨ussen also noch a0 · a2 · a4 · a6 · a8 berechnen und zwar schrittweise bei gleichzeitiger Reduktion: (((a0 · a2 ) · a4 ) · a6 ) · a8 = (((2 · 16) · 64) · 16) · 64 = ((32 · 64) · 16) · 64 = (2 · 16) · 64 = 32 · 64 =2 341

Ingesamt folgt also: 2

= 2 (341).

128

Primitivwurzeln und diskrete Logarithmen

b) Selbstverst¨andlich kann man das Verfahren auch auf die Berechnung von Pon tenzen anwenden, die nicht von der Art a (n) sind, sondern allgemeiner von b der Art a (n). Als Beispiel berechnen wir 338 (11). Die Dualdarstellung von 38 ist 100110, hat also die L¨ange n = 6. Wir berechnen zun¨achst die Faktoren ai , 0 ≤ i ≤ 5, jeweils modulo 11: 0

a0 = 32 = 3 1

2

2

4

a1 = 32 = 3 = 3 · 3 = 9 2

2

4

4

a2 = 32 = 3 = 3 · 3 = 9 · 9 = 4 23

a3 = 3

= 38 = 3 · 3 = 4 · 4 = 5

4

a4 = 32 = 316 = 38 · 38 = 5 · 5 = 3 5

a5 = 32 = 332 = 316 · 316 = 3 · 3 = 9 Es ist bi = 1 f¨ur i = 1, i = 2 sowie i = 5. Wir m¨ussen also noch a1 · a2 · a5 berechnen und zwar schrittweise bei gleichzeitiger Reduktion: a1 · a2 = 9 · 4 = 3 (a1 · a2 ) · a5 = 3 · 9 = 5 38

Ingesamt folgt also: 3 = 5 (11). ¨ Die Potenz 338 (11) kann man im Ubrigen auch mithilfe des Satzes von Fermat (Satz 3.9) sehr schnell ausrechnen. Da (3, 11) = 1 ist, gilt 310 = 1 (11). Damit rechnen wir:  3 3 3 2 338 = 310 · 38 = 38 = 3 · 3 · 3 = 5 · 5 · 9 = 3 · 9 = 5 (11) Diesem Verfahren liegt folgende Idee f¨ur die Berechnung von a (p) mit p ∈ P und (a, p) = 1 zugrunde: Bestimme q mit b = (p − 1) · q + r und 0 ≤ r < p − 1, dann gilt b

b

(p−1)·q+r

a =a

= (a

p−1 q

r

r

) · a = a (p)

(5.8)

r

und a (p) kann dann mit anderen Methoden, etwa mit der oben vorgestellten effizient berechnet werden.



¨ Ubungsaufgaben

5.1 Rechnen Sie mithilfe des Verfahrens wiederholtes Quadrieren“ nach, dass ” 5561 = 5 (561) ist (siehe auch Beispiel 6.2)! 2

Modulare Arithmetik

5.4

129

Primitivwurzeln und diskrete Logarithmen ∗

Wir betrachten die Einheitengruppen Zn f¨ur 2 ≤ n ≤ 8 der multiplikativen Restklassengruppen modulo n f¨ur 2 ≤ n ≤ 8 und rechnen aus, ob diese zyklisch sind: ∗

(1) n = 2: Es gilt Z2 = {1} =  1 . ∗

1

2



1

2

(2) n = 3: Es gilt Z3 = { 1, 2 } =  2 , da 2 = 2 und 2 = 1. (3) n = 4: Es gilt Z4 = { 1, 3 } =  3 , da 3 = 2 und 3 = 1. ∗

1

2

3

(4) n = 5: Es gilt Z5 = { 1, 2, 3, 4 } =  2 , da 2 = 2, 2 = 4, 2 = 3 und 4 2 = 1. ∗

1

2

(5) n = 6: Es gilt Z6 = { 1, 5 } =  5 , da 5 = 5 und 5 = 1. ∗

1

2

3

(6) n = 7: Es gilt Z7 = { 1, 2, 3, 4, 5, 6 } =  3 , da 3 = 3, 3 = 2, 3 = 6, 4 5 6 3 = 4, 3 = 5 und 3 = 1. ∗

2

2

2

2

(7) n = 8: Es gilt Z8 = { 1, 3, 5, 7 } sowie 1 = 1, 3 = 1, 5 = 1 und 7 = 1. ∗



Wir stellen fest, dass Zn zyklisch ist f¨ur 2 ≤ n ≤ 7, w¨ahrend Z8 nicht zyklisch ∗ ist – jedes Element von Z8 hat die Ordnung 2. Es stellt sich die Frage, f¨ur welche ∗ n die Einheitengruppen Zn zyklisch sind. Diese Frage beantwortet der folgende Satz, den wir in mehreren Schritten beweisen. Satz 5.6

Sei p ∈ P. Dann gilt: ∗

a) Ist p = 2, dann ist Z k zyklisch f¨ur k ∈ {1, 2} und nicht zyklisch f¨ur k ≥ 3; p



b) Z k ist zyklisch f¨ur alle p ≥ 3. p

Lemma 5.1 Sei k ∈ N, k ≥ 3, dann gilt   ∗ k−1 a) Z k = 2i − 1 | 1 ≤ i ≤ 2 2

k−1

b) ordZ∗ = 2

.

2k

  k Beweis a) Es ist Z2k = i | 0 ≤ i ≤ 2 − 1 . Mit Satz 3.7 folgt   ∗ ∗ k Z k = a ∈ Z k | (a, 2 ) = 1 2

2

(a, 2 ) = 1 gilt f¨ur k ≥ 1 genau dann, wenn a ungerade ist. Daraus folgt unmittelbar die Behauptung. k

b) folgt sofort aus a). Lemma 5.2

Sei k ∈ N, k ≥ 3, dann ist k−2

a) ordZ∗ (5) = 2 2k

,

2

130

Primitivwurzeln und diskrete Logarithmen

b)  5  =

& % k−2 0 1 2 2 −1 . 5 ,5 ,5 ,...,5

¨ Beweis a) Wegen Ubung 1.2 (5) ist (w¨ahle a = 1) 2

k−3

5

k−1

=1+2

k

= 1 (2 )

(5.9)

¨ Wir quadrieren und erhalten wieder mithilfe von Ubung 1.2 (4) und, weil k ≥ 3 vorausgesetzt ist: 

2

k−3

2

5

2

k−2

=5

2k−2

k

=1+2 +2

k

= 1 (2 )

(5.10)

Aus (5.9) und (5.10) folgt die Behauptung. 2

b) folgt unmittelbar aus a). Lemma 5.3 F¨ur alle n ∈ N0 gilt n+1

a) 4|5

−5 , n

n

b) 5 = 1 (4). Beweis a) Es gilt 5 Behauptung folgt.

− 5 = 5 · (5 − 1) = 5 · 4, woraus unmittelbar die

b) Mit Korollar 1.5 gilt n 5 = 1 (4) folgt.

5 −1 5−1

n+1

n

n

n

n

∈ N0 , woraus 4|5 − 1 und damit die Behauptung 2 n

Aus den Lemmata 5.2 und 5.3 folgt Lemma 5.4 Sei k ∈ N, k ≥ 3, und  5  die von 5 erzeugte zyklische Unter∗ gruppe von Z k, dann ist 2

  k−2  5  = 1 + 4j | 0 ≤ j ≤ 2 − 1

(5.11)



 5  enth¨alt also alle Elemente von Z k im Abstand 4 beginnend bei 1: 2

  k  5  = 1, 5, 9, . . . , 2 − 3 Die restlichen Elemente sind wegen Lemma 5.1   ∗ k  5  = Z k −  5  = 3, 7, 11, . . . , 2 − 1 2   k−2 = 3 + 4i | 0 ≤ i ≤ 2 − 1

(5.12)

(5.13)

Wir setzen −  5  = {−a | a ∈  5 }

(5.14)

Modulare Arithmetik

131

Wir zeigen nun, dass 5 = −5

(5.15)

ist: Sei a ∈  5 , dann existiert wegen (5.11) ein j mit a = 1 + 4j. Daraus folgt k

−a = 2 − a k

= 2 − 1 − 4j k−2

=2

· 4 − 1 − 4j − 1 k−2

= 3 + 4 · (2

− 1 − j)

(5.16)

Es ist 0 ≤ 2 −1−j ≤ 2 −1 f¨ur 0 ≤ j ≤ 2 −1. Wir setzen i = 2 −1−j, womit sich aus (5.16) −a = 3+4i ergibt, woraus gem¨aß (5.13) folgt: −a ∈  5 . Damit ist (5.15) gezeigt. 2 k−2

k−2

k−2

k−2

Lemma 5.5 Sei k ∈ N, k ≥ 3, dann ist die additive Produktgruppe Z2 × Z2k−2 ∗ isomorph zu Z k. 2



Beweis Wir definieren ϕ : Z2 × Z2k−2 → Z k durch ϕ(x, y) = (−1) · 5 . ϕ ist 2 offensichtlich total und injektiv. Aus Lemma 5.4 folgt, dass ϕ auch surjektiv ist: Das Urbild von b ∈  5  ist offensichtlich (0, b), und das Urbild von b ∈  5  = −  5  ist offensichtlich (1, b). Des Weiteren gilt x

y

ϕ((a, b) + (c, d)) = ϕ(a + c, b + d) a+c

= (−1)

a

b+d

·5 b

c

d

= (−1) · 5 · (−1) · 5 = ϕ(a, b) · ϕ(c, d)

womit ϕ auch die Homomorphiegleichung erf¨ullt. Insgesamt folgt, dass ϕ ein Isomorphismus ist, womit die Behauptung gezeigt ist. 2 Wir haben nun alle Hilfsmittel beisammen, um den Satz 5.6 zu beweisen. ∗



Beweis von Satz 5.6 a) Dass Z2 und Z4 zyklisch sind, wissen wir aus Beispielen ¨ und Ubungen aus Kapitel 1 (beide Gruppen haben die Ordnung 2, woraus sofort die Zyklizit¨at folgt). ¨ Aus Ubung 2.18 (2) wissen wir, dass die additiven Produktgruppen Z2 ×Z2k−2 f¨ur k ≥ 3 nicht zyklisch sind. In Lemma 5.5 haben wir gezeigt, dass diese Gruppen ∗ isomorph zu den Gruppen Z k , k ≥ 3, sind. Also k¨onnen diese Gruppen nicht 2 zyklisch sein. b) F¨ur k = 1 trifft die Behauptung zu, denn Fp sind endliche K¨orper f¨ur alle p ∈ P (siehe Korollar 3.6 c), und alle endlichen K¨orper sind zyklisch (siehe Satz 3.21). ∗



Wir m¨ussen jetzt also noch Z k f¨ur p ≥ 3 und k ≥ 2 betrachten. Zp ist als endlip cher K¨orper zyklisch, besitzt also einen Generator g. Es gilt g

p−1

= 1 + ap (p)

(5.17)

132

Primitivwurzeln und diskrete Logarithmen

¨ f¨ur alle a ∈ Z, insbesondere auch f¨ur a ∈ Z mit (a, p) = 1. Wegen Ubung 1.2 (4) gilt damit pk−1

k

= 1 + ap (p

(1 + ap)

k+1

(5.18)

)

Es folgt pk−1

(1 + ap)

k

(5.19)

= 1 (p )

sowie pk−2

(1 + ap)

Aus (5.19) und (5.20) folgt, dass g damit hat g die Ordnung (p−1)·p ∗

= 1 + ap

p−1

k−1

k−1

k

= 1 (p )

= 1 + ap die Ordnung p ∗

(5.20) k−1



in Z k hat, und p

in Z k. Des Weiteren ist ϕ(p ) = (p−1)·p k

k−1

p

die Ordnung von Z k (siehe Korollar 3.8). Daraus folgt, dass g auch ein Generator ∗

p



von Z k ist, und damit ist Z k zyklisch. p

2

p

Die erzeugenden Elemente von zyklischen Einheitengruppen spielen im Folgenden noch eine wichtige Rolle. Die folgende Definition gibt diesen zun¨achst eine spezielle Bezeichnung. Primitivwurzel





Definition 5.1 a) Sei R ein Ring mit Einselement und a ∈ R . Falls R =  a  ∗ ist, dann heißt a Primitivwurzel von R . ∗

b) Im Fall der Restklassenringe Zn mit zyklischen Einheitengruppen Zn heißen deren erzeugende Elemente Primitivwurzeln modulo n. 2 Beispiel 5.3 2 ist eine Primitivwurzel modulo 3 und modulo 5, 3 ist eine Primitivwurzel modulo 4 und modulo 7, und 5 ist eine Primitivwurzel modulo 6. Eine Primitivwurzel modulo 8 existiert nicht. 2 Korollar 5.2

a) Ist a eine Primitivwurzel modulo n, dann gilt   2 ∗ ϕ(n) Zn = a, a , . . . , a ϕ(n)

= 1 (n). Hieraus leitet sich auch dabei ist ϕ die Euler-Funktion und es gilt a ∗ der Begriff der Wurzel“ ab: a ist eine Wurzel aus 1 in Zn . ” ∗ b) Sei p ungerade Primzahl und a ∈ Zp mit ordZ∗ (a) = p − 1, dann ist a eine Primitvwurzel modulo p.

p

2

Im Anschluss an die letzte Folgerung stellt sich die Frage, zu welchen Primzah∗ len Primitivwurzeln existieren. F¨ur Zp ist die Ordnung p − 1. Ein Element a ist erzeugendes Element, d.h. Primitivwurzel modulo p, genau dann, wenn es diese Ordnung, d.h. keine echt kleinere Ordnung, hat. Da die Ordnung eines Elementes immer Teiler der Gruppenordnung ist (siehe Korollar 2.8 a), muss getestet werden, ob f¨ur echte Teiler der Gruppenordnung p − 1 der Quotient eine Ordnung f¨ur a ist. Falls dies f¨ur keinen Teiler der Fall ist, dann ist a ein erzeugendes Element. Diesen Sachverhalt beschreibt der folgende Satz.

Modulare Arithmetik

133

πp−1 (pj ) $s Satz 5.7 Sei p ∈ P ungerade und p − 1 = j=1 pj die kanonische Primfaktorzerlegung von p − 1. Eine ganze Zahl a mit p | a ist Primitivwurzel modulo p−1 p genau dann, wenn a pi = 1 (p) f¨ur 1 ≤ i ≤ s ist.

Beweis ⇒“: Sei a Primitivwurzel modulo p, d.h. a hat die Ordnung p − 1, d.h. ” p−1 i es gibt kein i < p − 1 mit a = 1 (p). Deshalb gilt f¨ur 1 ≤ i ≤ s: a pi = 1 (p). ⇐“: Sei ordZ∗ (a) = m, d.h. es ist a = 1 (p) und f¨ur alle k < m gilt a = 1 (p). ” p ∗ Da gem¨aß Korollar 2.8 a) die Ordnung von a die Ordnung von Zp teilt, gilt also: m

k

 πp−1 (pj ) m|p − 1 und damit m| pj s

(5.21)

j=1

Wir nehmen an, dass m < p − 1 ist. Dann gibt es wegen (5.21) eine Zahl r > 1 πp−1 (pj ) $s . Da m < p − 1 ist, muss einer der Primfaktoren pi mit r · m = j=1 pj Teiler von r sein, d. h. es gibt ein t > 1 mit r = t · pi , d.h. es ist  s

t · pi · m =

 s

πp−1 (pj )

pj

und damit t · m =

πp−1 (pj )

pj

πp−1 (pi )−1

· pi

=

j=1,j=i

j=1

p−1 pi

p−1 p

Hieraus folgt, dass m| p−1 ist, und hieraus, da m Ordnung von a ist: a i = 1 (p). pi Dies ist aber ein Widerspruch zur Voraussetzung dieser Richtung im Satz. Unsere Annahme m < p − 1 ist also falsch, damit muss m = p − 1 sein, d.h. es gilt ordZ∗ (a) = p − 1, woraus mit Korollar 5.2 b) folgt, dass a Primitvwurzel modulo p

2

p ist.



Beispiel 5.4 Z7 ist nach Satz 5.6 eine zyklische Einheitengruppe. Wir wenden den Satz 5.7 an um zu testen, ob 2 eine Primitivwurzel modulo 7 ist. Die Prim6 3 faktorzerlegung von 7 − 1 = 6 ist 2 · 3. Es gilt 2 2 = 2 = 1 (7), somit kann 2 keine Primitivwurzel modulo 7 sein. Wir testen nun, ob 3 eine Primitivwurzel modulo 7 ist (was wir aus der Einleitung des Kapitels schon wissen, siehe (6) dort). Es gilt: 6

32 3

6 3

3

= 3

2

= 3

= 27 = 6 = 1 (7) =

9 = 2 = 1 (7)

Hieraus folgt, dass 3 Primitivwurzel modulo 7 ist.

2

Satz 5.7 liefert f¨ur den Fall, dass die Faktorisierung von p − 1 f¨ur die Primzahl p bekannt ist, ein effizientes Verfahren um zu testen, ob eine Zahl a eine Primitivwurzel modulo p ist. Die n¨achste Folgerung vereinfacht den Test f¨ur den Fall, dass die Primzahl eine bestimmte Gestalt hat. Korollar 5.3 Sei p eine Primzahl, so dass p − 1 = 2q f¨ur eine Primzahl q gilt. 2 Dann ist die Zahl a eine Primitivwurzel modulo p genau dann, wenn a = 1 (p) q und a = 1 (p) ist. 2

134

Primitivwurzeln und diskrete Logarithmen

Beispiel 5.5 Es sei wieder p = 7, dann ist p − 1 = 2 · 3 und 3 ist eine Primzahl. Wir berechnen folgende Tabelle: a 2 3 4 5 6 2 a (7) 4 2 2 4 1 3 a (7) 1 6 1 6 6 Wir erkennen, dass – wie schon bekannt – 3 sowie 5 Primitivwurzeln modulo 7 ∗ sind, denn auf beide trifft das Korollar 5.3 zu. In der Tat erzeugt 5 ebenfalls Z7 : 0 1 2 3 4 5 2 5 = 1, 5 = 5, 5 = 4, 5 = 6, 5 = 2 und 5 = 2. Gibt es eine Primitivwurzel b modulo n = p oder modulo n = 2p , k ∈ N, dann ∗ i existiert f¨ur jedes Element a ∈ Zn eindeutig ein i, 1 ≤ i ≤ ϕ(n), mit a = b . Dies ist die Kernaussage des folgenden Satzes. k

k

Satz 5.8 Sei b eine Primitivwurzel modulo n, dann ist die Abbildung ∗

i

λb : (Zϕ(n) , +) → Zn definiert durch λb (i) = b (n) ein Isomorphismus. Beweis Die Abbildung λb ist offensichtlich total, injektiv und surjektiv, also bijektiv. Wir zeigen noch die Homomorphieeigenschaft: λb (x + y) = b Diskreter Logarithmus

x+y

x

y

= b · b = λb (x) · λb (y)

2

−1

Definition 5.2 Die Umkehrabbildung λb von λb heißt Index oder diskreter Lo−1 garithmus zur Basis b modulo n. Anstelle von λb ist es u¨ blich, indb bzw. logb zu schreiben. Es gilt x

x = logb a genau dann, wenn λb (x) = b = a ist. x heißt Logarithmus von a zur Basis b modulo n.

2

Beispiel 5.6 In Beispiel 5.4 haben wir festgestellt, dass 3 eine Primitivwurzel ∗ von Z7 ist. Wir k¨onnen also 3 als Basis f¨ur den diskreten Logarithmus modulo 7 w¨ahlen. Dann gilt: 1

1 = log3 3, da 3 = 3 2

2 = log3 2, da 3 = 2 3

3 = log3 6, da 3 = 6 4

4 = log3 4, da 3 = 4 5

5 = log3 5, da 3 = 5 0

0 = log3 1, da 3 = 1 Korollar 5.4 F¨ur das Rechnen mit (diskreten) Logarithmen gelten folgende Gleichungen. Ihre G¨ultigkeit folgt unmittelbar daraus, dass der Logarithmus zur

Modulare Arithmetik

135

Basis b als Umkehrabbildung des Isomorphismus λb wieder ein Isomorphismus ist (siehe Korollar 2.11 b). logb (xy) = logb (x) + logb (y)

(5.22)

−1

logb (x ) = − logb (x) k

logb (x ) = k · logb (x) Die Strukturgleichung (5.22) zeigt, dass mithilfe von Logarithmen Multiplikatio∗ nen in Zn durch Additionen in Zϕ(n) berechnet werden k¨onnen. Wollen wir z.B. ∗ 5 · 6 in Z7 ausrechnen, dann gilt (es ist ϕ(7) = 6) log3 (5 · 6) = log3 5 + log3 6 = 5 + 3 = 8 = 2 (6) ∗

und es ist 2 = log3 2, womit 5 · 6 = 2 in Z7 gilt. Die Berechnung diskreter Logarithmen ist im Allgemeinen ein schwieriges Problem, d.h. es gibt derzeit keine effizienten Verfahren, mit denen zu einer Basis b f¨ur eine Zahl a der diskrete Logarithmus berechnet werden kann. Ein naives Verfahren ist das folgende: Sei b eine Primitivwurzel modulo n, dann teste f¨ur x x ∈ { 1, . . . , ϕ(n) } der Reihe nach“, ob a = b gilt. W¨ahlen wir z.B. n = 2017, ” b = 5 und a = 3, dann finden wir nach 1029 Schritten (Multiplikationen von b mit sich selbst), dass 1030 = log5 3 ist. Werden wesentlich gr¨oßere Logarithmen betrachtet als im Beispiel, etwa solche 100 100 mit x > 2 , ben¨otigt die naive Iteration 2 Gruppenoperationen, was lang dauernde Rechenzeiten selbst auf schnellsten Rechnern erfordert. Es gibt zwar Algorithmen, die wesentlich effizienter als das naive Verfahren sind. Aber auch bei Verwendung dieser ben¨otigt die Bestimmung des Logarithmus noch so viel Zeit, dass das Problem als praktisch unl¨osbar gilt. Deshalb werden diskrete Logarithmen in der Kryptografie zur Verschl¨usselung von Daten verwendet. Ihre Sicherheit basiert gerade darauf, dass es einen immensen Aufwand ben¨otigt, verwendete Schl¨ussel zu berechnen. Solange keine effizienten Verfahren gefunden werden, gelten diese Verschl¨usselungsverfahren als sicher. Auf die Verschl¨usselung mithilfe diskreter Logarithmen gehen wir in den Kapiteln 7.3 und 7.4 noch n¨aher ein.



¨ Ubungsaufgaben

5.2 (1) Bestimmen Sie alle Primitivwurzeln modulo 11! (2) Geben Sie zu allen Primitivwurzeln modulo 11 die diskreten Logarith∗ men aller Elemente von Z11 jeweils mit diesen Primitivwurzeln als Basis an! ∗

(3) Berechnen Sie 10 · 9 in Z11 mithilfe der Logarithmen!

2

136

Primitivwurzeln und diskrete Logarithmen

Zu (1): Wir verwenden Korollar 5.3: Es ist 11 − 1 = 10 = 2 · 5. Damit ergibt sich (analog zu Beispiel 5.5) folgende Tabelle: 2 3 4 5 6 7 8 9 10 a 2 a (11) 4 9 5 3 3 5 9 4 1 5 a (11) 10 1 1 1 10 10 10 1 10 Hieraus lassen sich die Primitivwurzeln modulo 11 ablesen: 2, 6, 7 und 8. Zu (2): Damit ergeben sich zur Basis 2: 0

0 = log2 1, da 2 = 1 1

1 = log2 2, da 2 = 2 2

2 = log2 4, da 2 = 4 3

3 = log2 8, da 2 = 8 4

4 = log2 5, da 2 = 5 5

5 = log2 10, da 2 = 10 6

6 = log2 9, da 2 = 9 7

7 = log2 7, da 2 = 7 8

8 = log2 3, da 2 = 3 9

9 = log2 6, da 2 = 6 (3): Wir rechnen (es ist ϕ(11) = 10): log2 (10 · 9) = log2 10 + log2 9 = 5 + 6 = 1 (10) ∗

Es ist 1 = log2 2, also ist 10 · 9 = 2 in Z11.

Primzahltests

137

6

Primzahltests

Zur Bestimmung von Schl¨usseln bei den in der Praxis verbreitet eingesetzten so genannten o¨ ffentlichen Verschl¨usselungsverfahren werden (sehr große) Primzahlen ben¨otigt. Wir besch¨aftigen uns in diesem Kapitel mit Primzahltests, und wir werden sehen, dass wir viele Erkenntnisse, die wir bisher in Algebra und Zahlentheorie erarbeitet haben, jetzt sehr gut f¨ur die Konstruktion von Primzahltests und die Beurteilung ihrer praktischen Brauchbarkeit verwenden k¨onnen. Nach dem Durcharbeiten dieses Kapitels sollten Sie •

das Sieb des Eratosthenes, den Wilson- und den Lucas-Test erkl¨aren k¨onnen,



Pseudoprimzahlen und Carmichael-Zahlen erl¨autern k¨onnen,



b-Sequenzen berechnen k¨onnen,



den Miller-Rabin-Test und sein Fehlerverhalten erl¨autern k¨onnen,



die Idee des AKS-Tests verstehen.

6.1

Das Sieb des Eratosthenes

Der allgemein bekannte Primzahltest Sieb des Eratosthenes9 bestimmt f¨ur eine Zahl n ∈ N, welche der Zahlen von 2 bis n prim sind (siehe Abbildung 13). Am Anfang (1) ist noch keine dieser Zahlen durch das Sieb gefallen. In der Schleife (2) wird gepr¨uft, ob die Zahl i im Sieb und damit prim ist. Falls das der Fall ist, werden alle Vielfachen von i gestrichen, denn sie k¨onnen nicht prim sein, fallen also durchs Sieb. Dann wird mit der n¨achsten Zahl, die noch nicht durchs Sieb gefallen ist, gleichermaßen fortgefahren. Am Ende bleiben genau die Zahlen i im Sieb, die prim sind, d.h. f¨ur die sieb[i] = true ist. Wir wollen die Komplexit¨at dieses Verfahrens analysieren, indem wir die Anzahl der Schleifenl¨aufe feststellen. Diese wird √ durch die beiden Schleifen (2) und (3) n − 1)-mal durchlaufen. Die innere bestimmt. Die a¨ ußere Schleife (2) wird (  Schleife wird ni -mal f¨ur jedes i durchlaufen (der Einfachheit halber sch¨atzen wir grob ab und ber¨ucksichtigen nicht, dass m¨oglicherweise i schon ausgesiebt 9

Eratosthenes von Kyrene (ca. 275 - 194 v.Chr.) war ein griechischer Gelehrter, der sich mit mathematischen, astronomischen, philologischen und philosophischen Fragestellungen besch¨aftigte, außerdem gilt er als Gr¨under der wissenschaftlichen Geografie (so bestimmte er u.a. mit geometrischen Methoden vergleichsweise exakt den Erdumfang). Eratosthenes leitete lange Jahre die Bibliothek von Alexandria, die als die bedeutendste Bibliothek der Antike gilt.

K.-U. Witt, Algebraische und zahlentheoretische Grundlagen für die Informatik DOI 10.1007/978-3-658-04075-8_6, © Springer Fachmedien Wiesbaden 2014

Lernziele

138

Das Sieb des Eratosthenes

algorithm ERATOSTHENES(n ∈ N) sieb : array[2, n] of bool for i := 2 to n√do sieb [i] = true endfor for i := 2 to  n do if sieb [i] = true then  for k := i to ni do sieb [i · k] := false endfor endif endfor return sieb endalgorithm ERATOSTHENES

(1) (2) (3)

Abb. 13: Sieb des Eratosthenes

wurde). F¨ur die Anzahl der Durchl¨aufe TErat (n) ergibt sich: ⎛ √ ⎞ √ √ √ n n n n  n  n 1 1 TErat (n) ≤ ≤ =n· =n·⎝ − 1⎠ i i i i i=2

i=2

i=2

Die Reihe

(6.1)

i=1

1 

H() =

i i=1

Harmonische Reihe

ist die so genannte Harmonische Reihe. F¨ur diese gilt folgende Absch¨atzung 1 

ln 
1. Laufzeiten, etwa in der Gr¨oßenordnung O c Bis zum Jahre 2002 waren keine (deterministischen) polynomiellen Tests bekannt. In diesem Jahr wurde von drei indischen Mathematikern erstmals ein po12+ lynomieller Primzahltest mit einer Laufzeit von O(L(n) ), > 0, vorgestellt. In der Praxis verbreitet verwendet werden jedoch sehr effiziente probabilistische Tests. Darauf wollen wir in diesem Kapitel einf¨uhrend eingehen. Vorher betrachten wir noch zwei Tests, die zwar ebenfalls ineffizient sind, die aber zeigen, wie Erkenntnisse aus den vorherigen Kapiteln genutzt werden k¨onnen.

6.2

Wilson-Test

Der folgende Satz von Wilson liefert eine notwendige und hinreichende Bedingung daf¨ur, dass eine nat¨urliche Zahl prim ist. Satz 6.1

Eine nat¨urliche Zahl p ∈ N, p ≥ 2, ist genau dann prim, wenn (p − 2)! = 1 (p)

ist. 10 Da log x =

1 ln 2

ln x gilt, d.h. log n = O(ln n) ist, verwenden wir weiter ln.

Satz von Wilson

140

Lucas-Test

Beweis F¨ur p = 2 gilt die Behauptung offensichtlich. Wir beweisen die Behauptung also f¨ur p ≥ 3, d.h. p ist ungerade. ⇒“: Sei p prim, dann ist Fp ein K¨orper (siehe Korollar 3.6 c) und damit sind ” ∗ alle Elemente in Fp = {1, 2, . . . , p − 1} invertierbar. Außerdem gilt f¨ur jedes x 2 mit 1 ≤ x ≤ p − 1, x = 1 genau dann, wenn x = 1 oder wenn x = −1 ist 2 (siehe Korollar 3.6 d). In Fp gilt −1 = p − 1, d.h. x = 1 gilt genau dann, wenn x = 1 oder wenn x = p − 1 ist. Das bedeutet, dass sich unter den restlichen ∗ p − 2 − 2 + 1 = p − 3 Elementen {2, . . . , p − 2} von Fp zu jedem Element auch sein Inverses befindet (es ist p − 3 ∈ G+ , da p ungerade). Damit ergibt sich: (p − 2)! = 1 ·

2 · . . . · (p − 2)    zu jedem Faktor existiert der inverse

= 1 · = 1

1

⇐“: Wir nehmen an, p sei nicht prim, dann hat p mindestens einen ech” ten Teiler q, 1 < q < p. Das bedeutet, dass mindestens eine der Zahlen q ∈ {2, 3, . . . , p − 1} die Zahl p teilt und dass damit auch (p − 1)! von q geteilt wird. p und (p − 1)! besitzen also den nicht trivialen gemeinsamen Teiler q. Da nach Vorraussetzung (p − 1)! = (p − 2)! · (p − 1) = 1 · (p − 1) = p − 1 (p) gilt, besitzen die benachbarten Zahlen p und p − 1 einen nicht trivialen gemeinsamen Teiler, was einen Widerspruch bedeutet. Unsere Annahme, dass p nicht prim ist, muss also falsch sein, d.h. p muss prim sein. 2 Leider ist der Satz von Wilson wie das Sieb des Eratosthenes auch praktisch ungeeignet zum Primzahltest, da derzeit f¨ur die Berechnung der Fakult¨at keine schnellen Algorithmen bekannt sind, d.h. der Test von (n − 2)! = 1 (n) ben¨otigt selbst auf Rechnern mit extrem schnellen Prozessoren bei sehr großen Zahlen n ∈ N mehrere Wochen, Monate oder Jahre.

6.3

Lucas-Test

Unter bestimmten Voraussetzungen kann der Lucas-Test ein effizienter Primzahltest sein. Satz von Lucas

Satz 6.2 Eine nat¨urliche Zahl p ∈ N, p ≥ 2, ist genau dann prim, wenn es eine p−1 m ganze Zahl a > 1 gibt mit (1) a = 1 (p) und mit (2) a = 1 (p) f¨ur jeden Teiler m ∈ { 1, . . . , p − 2 } von p − 1. Beweis ⇒“: Diese Richtung folgt unmittelbar aus dem Satz von Fermat (Satz ” 3.9).

Primzahltests

141

⇐“: Aus Voraussetzung (1) und Korollar 2.8 a) folgt, dass ordZ∗(a)|p − 1 ist, ” p i j und aus (2) folgt sogar, dass ordZ∗(a) = p − 1 sein muss. Daraus folgt a = a (p) p



f¨ur 0 ≤ i, j ≤ p−1 und i = j. Daraus folgt  a  = { 1, . . . , p−1 } = Zp , woraus ϕ(p) = p − 1 folgt. Das gilt aber nur, wenn p eine Primzahl ist. 2 Ein Test einer (sehr großen) Zahl n auf Primalit¨at auf der Basis des Satzes von Lucas ist nur dann effizient, wenn die Faktorisierung von n − 1 bekannt ist. F¨ur die Faktorisierung sind aber derzeit keine effizienten Algorithmen bekannt.

6.4

Fermat-Test

Also bleibt weiterhin die Suche nach einem effizienten (positiven) Primzahltest. F¨ur die Berechnung von modularen Potenzen gibt es effiziente Algorithmen. Der Kleine Satz von Fermat (Satz 3.9) bzw. das daraus abgeleitete Korollar 3.10 b), die modulare Potenzen verwenden, liefern somit zwar einen effizienten, aber leider nur einen negativen Primzahltest: Sei p eine Primzahl und x ∈ Z mit ” p (p, x) = 1, dann gilt x = x (p).“ Wir kehren diesen Satz um und w¨ahlen dabei x = 2: n

Ist 2 = 2 (n), dann ist n prim.“ ”

(6.3)

Wenn man nun 2 modulo n f¨ur alle nat¨urlichen Zahlen n ∈ N, 2 ≤ n ≤ 340, n berechnet, stellt man fest, dass genau f¨ur die Primzahlen in diesem Intervall 2 = 2 (n) gilt. Trotzdem d¨urfen wir daraus nicht schließen, dass dieser Test f¨ur alle nat¨urlichen Zahlen korrekte Anworten gibt. Denn f¨ur n = 341 macht dieser Test 341 einen Fehler: Es gilt 2 = 2 (341), obwohl 341 eine zusammengesetzte Zahl ist. Hierauf kommen wir im Folgenden noch zur¨uck. n

Wir betrachten nun die Folge an = zusammengesetzte Zahlen sind. Satz 6.3

n

4 −1 , 3

deren Glieder gem¨aß Satz 1.2 f¨ur n ≥ 3 ap

Sei p ∈ P und p > 3, dann gilt 2 = 2 (ap ).

Beweis Da p > 3 ist, ist (2, p) = 1. Mit dem Satz von Fermat gilt also 2p = 2 (p). Da laut Voraussetzung p > 3 ist, ist p ungerade. Deshalb gilt mithilfe ¨ Ubung 1.2 (2): p

2 = 2 (2p)

(6.4)

Wir addieren 1 auf beiden Seiten und erhalten p

2 + 1 = 3 (2p)

(6.5)

Da p > 3 vorausgesetzt ist, ist p ungerade, und deswegen ist (3, 2p) = 1. Aus Satz 3.7 folgt, dass 3 invertierbar modulo 2p ist. Also k¨onnen wir die Gleichung

142

Fermat-Test

(6.5) durch 3 teilen und erhalten p

2 +1 = 1 (2p) 3 Daraus sowie mit (6.4) erhalten wir 4 −1 2 +1 p p p = (2 − 1) = (2 − 1) · 1 = 2 − 1 = 2 − 1 = 1 (2p) 3 3 (6.6) p

ap =

p

Damit existiert eine Zahl q mit ap = 2p · q + 1

(6.7)

2p

Andererseits gilt 3ap = 4 − 1 = 2 − 1 = 0 (ap ) und damit p

2p

2 = 1 (ap )

(6.8)

Mit den Gleichungen (6.7) und (6.8) folgt nun ap

2

1+2pq

=2

2p q

= 2 · (2 ) = 2 · 1 = 2 (ap )

und dieses war zu zeigen.

2

Aus dem Satz 6.3 folgt unmittelbar Korollar 6.1 Falls die Umkehrung zum Satz von Fermat – siehe Zeile (6.3) – g¨ultig w¨are, dann w¨are ap ∈ P f¨ur jedes p ∈ P, p > 3, was aber einen Widerspruch zum Satz 6.3 bedeuten w¨urde. Damit ist die Umkehrung des Satzes von Fermat als positiver Primzahltest im Allgemeinen ungeeignet. 2 Wir wollen uns durch dieses negative Ergebnis aber nicht abschrecken lassen, sondern versuchen, das Beste“ daraus zu machen. Zun¨achst einmal geben wir ” den zusammengesetzten Zahlen, die den Primzahltest (6.3) reinlegen, einen Namen. Pseudoprimzahl

Definition 6.1 Ist m ∈ N eine zusammengesetzte Zahl mit (2, m) = 1 und m 2 = 2 (m), dann ist m eine Pseudoprimzahl. 2 Pseudoprimzahlen gaukeln also vor prim zu sein, wenn bei ihrem Primalit¨atstest mit der Umkehrung des Fermat die Basis 2 gew¨ahlt wird.



¨ Ubungsaufgaben

6.1 Zeigen Sie, dass 5461 pseudoprim ist!

2

Primzahltests

143

5461

Wir m¨ussen zeigen, dass 2 = 2 (5461) ist. Die Faktorisierung ergibt 5461 = 43 · 127, und es gilt (2, 43) = 1 sowie (2, 127) = 1. Mit dem Kleinen Satz von 42 126 Fermat gilt 2 = 1 (43) und 2 = 1 (127). Damit rechnen wir: 5461

2 5461

2

 42 130 = 2 · 2 = 2 (43)

 126 43 43  7 6 43 6 6 = 2 · 2 = 2 = 2 · 2 = 128 · 2 = 1 · 2 = 2 (127) 5461

Mit dem Chinesischen Restsatz (Satz 5.1) folgt 2 war.

= 2 (5461), was zu zeigen

Alternative L¨osung: F¨ur die Folge 4 −1 , p ∈ P, p ≥ 3 3 p

ap =

ap

haben wir in Satz 6.3 gezeigt, dass 2 die Behauptung. Korollar 6.2

= 2 (ap ) gilt. Es ist a7 = 5461, damit gilt

a) Sei p ∈ P mit p > 3, dann ist ap =

p

4 −1 3

Pseudoprimzahl.

b) Es gibt unendlich viele Pseudoprimzahlen. c) a5 = 341 ist die kleinste Pseudoprimzahl. Beweis a) folgt unmittelbar aus Satz 6.3; b) folgt aus a), und c) folgt durch Nachrechnen. 2 Im Zusammenhang mit dem Primzahlsatz (Satz 1.11) haben wir eine Tabelle zur Verteilung der Primzahlen angegeben. Wir erg¨anzen diese durch Angaben zur Verteilung von Pseudoprimzahlen: x 3 10 4 10 5 10 6 10 7 10 8 10 9 10 10 10

Pseudoprimzahlen Primzahlen ≤ x ≤x = π(x) 3 167 22 1 229 78 9 591 245 78 497 750 664 578 2 057 5 761 455 5 597 50 847 533 14 885 455 052 510

Es gibt wesentlich weniger Pseudoprimzahlen als Primzahlen kleiner einer vorgegebenen Zahl x, denn es gilt lim

x→∞

Anzahl der Pseudoprimzahlen ≤ x =0 Anzahl der Primzahlen ≤ x

In Definition 6.5 haben wir die Pseudoprimzahlen zur Basis 2 definiert. In der folgenden Definition verallgemeinern wir den Begriff der Pseudoprimzahl.

144

Pseudoprimzahl zur Basis a

Fermat-Test

Definition 6.2 Sei a ∈ N, a ≥ 2, und m ∈ N eine zusammengesetzte Zahl mit (a, m) = 1. Dann heißt m Pseudoprimzahl zur Basis a genau dann, wenn m m−1 = 1 (m)) gilt. 2 a = a (m) (oder a¨ quivalent a Beispiel 6.1 Die Zahl a5 = 341 ist pseudoprim zur Basis 2 (folgt unmittelbar aus Korollar 6.2 c), aber nicht pseudoprim zur Basis 3, denn es gilt: (3, 11) = 1 10 und damit mit dem Kleinen Satz von Fermat 3 = 1 (11) und damit 341

3

10 34

= (3 ) · 3 = 3 (11) 30

Des Weiteren ist (3, 31) = 1 und damit 3 = 1 (31) und damit 341

3

30 11

11

11

4

4

3

= (3 ) · 3 = 3 = 3 · 3 · 3 = 19 · 19 · 27 = 13 (31) 341

Da 341 = 11 · 31 und (11, 31) = 1 ist, folgt mit Korollar 5.1 a): 3 341 341 da zwar 3 = 3 (11), aber 3 = 3 (31) ist.

= 3 (341),

Wenn wir also f¨ur den Primalit¨atstest mit der Umkehrung von Fermat bei der ¨ Uberpr¨ ufung der Zahl 341 die Basis 3 gew¨ahlt h¨atten, h¨atte der Test keine Primalit¨at vorgegaukelt, sondern die richtige Antwort nicht prim“ gegeben. 2 ” Wir gehen zun¨achst einmal von der Annahme aus, dass es f¨ur jede zusammengesetzte Zahl eine geeignete Basis gibt, mit der mithilfe der Umkehrung des Fermat deren Nicht-Primalit¨at festgestellt werden kann. Da wir aber nicht wissen, welche Basis geeignet ist, bringen wir den Zufall ins Spiel und w¨ahlen eine Basis f¨ur den Test zuf¨allig. Wenn wir dann etwas u¨ ber die Verteilung der schlechten“ ” Basen in Bezug auf den Test einer zusammengesetzten Zahl m w¨ussten, k¨onnten wir die Fehlerwahrscheinlichkeit des Tests bestimmen. Falls diese Wahrscheinlichkeit sehr gering ist, h¨atten wir einen praktikablen Primzahltest. Wir betrachten als erstes den Test FERMAT in Abbildung 14, der probabilistisch entscheidet, ob eine Zahl zusammengesetzt, also nicht prim, d.h. Element der Menge P = {k ∈ N | k ≥ 3, k ∈ / P} ist. algorithm FERMAT(k ∈ U+ , k ≥ 3) W¨ ahle zuf¨ allig a ∈ {1, 2, . . . , k − 1} mit (a, k) = 1 k−1 Falls a = 1 (k), dann Ausgabe: k ∈ P“ ” sonst Ausgabe: k ∈ P“ ” endalgorithm FERMAT Abb. 14: Randomisierter Primzahltest FERMAT

Wir untersuchen im Folgenden, welche Falschaussagen dieser Test machen kann und wie hoch die Wahrscheinlichkeit daf¨ur ist. Dazu verwenden wir die Notation

Primzahltests

145

ProbF [ A | B ], um die Wahrscheinlichkeit daf¨ur anzugeben, mit der das Ereignis A unter der Bedingung B bei der Ausf¨uhrung des Algorithmus FERMAT eintritt. Als erstes k¨onnen wir damit festhalten, dass   (6.9) ProbF k ∈ P“ | k ∈ P = 0 ” gilt, denn wenn k ∈ P und (a, k) = 1 ist, muss wegen des Kleinen Satzes von k−1 = 1 (k) sein. Der Algorithmus FERMAT macht also f¨ur den Fall, Fermat a dass k eine Primzahl ist, niemals die gegenteilige, falsche Ausgabe k ist nicht ” prim“. Komplement¨ar zu (6.9) gilt ProbF[ k ∈ P“ | k ∈ P ] = 1 ” Wenn k eine Primzahl ist, dann stellt das der Fermat-Test auch so fest. Auf der anderen Seite kann der Algorithmus, wie wir wissen, aber Fehler machen. W¨are die testende Zahl z.B. k = 341 und als Basis w¨urde zuf¨allig a = 2 gew¨ahlt, dann macht der Algorithmus die falsche Aussage 341 ∈ P“, w¨ahrend ” er bei der Wahl der Basis a = 3 die korrekte Antwort 341 ∈ P“ gibt. 2 ist also ” ein schlechter Zeuge gegen die Primalit¨at f¨ur 341, w¨ahrend 3 ein guter Zeuge gegen die Primalit¨at von 341 ist. Wir wollen nun versuchen, die Wahrscheinlichkeit daf¨ur festzustellen, dass eine Basis a ein schlechter Zeuge f¨ur die Primalit¨at einer Zahl m ist. Dazu bilden wir f¨ur die Zahl m ∈ N mit m ≥ 3 die Menge   ∗ m−1 = 1 (m) (6.10) Fm = a ∈ Zm | a der Basen, f¨ur die m den Fermat-Test als Primalit¨atstest besteht. Zun¨achst stellen wir fest, dass diese Menge eine Untergruppe des Restklassengruppe modulo m bildet. Lemma 6.1





Es gilt Fm  Zm.

2

¨ Ubungsaufgaben 2

6.2 Beweisen Sie Lemma 6.1!

Wir benutzen das Untergruppenkriterium aus Satz 2.5 a). Sei also a, b ∈ Fm , dann ∗ m−1 m−1 ∗ = 1 (m) und b = 1 (m). Damit folgt a · b ∈ Zm gilt a, b ∈ Zm sowie a sowie −1

m−1

(a · b)

−1 m−1

= (a )

·b

m−1

= (a

woraus die Behauptung a · b ∈ Fm folgt.

m−1 −1

) ·b

m−1

−1

= 1 · 1 = 1 (m)

146

CarmichaelZahlen

Fermat-Test

Wir haben oben angenommen, dass es zu jeder zusammengesetzten Zahl m eine Basis gibt, mit der mithilfe des Algorithmus FERMAT deren Nicht-Primalit¨at festgestellt werden kann. Das ist aber nicht so: Es gibt zusammengesetzte Zahlen, so genannte Carmichael-Zahlen, die f¨ur alle m¨oglichen Basen beim FermatTest vorgaukeln prim zu sein; auf diese Zahlen gehen wir im Abschnitt 6.5 noch n¨aher ein. Jedenfalls gehen wir im Folgenden von deren Existenz aus und k¨onnen unmittelbar u¨ berlegen: Ist m eine Primzahl oder eine Carmichael-Zahl, dann gibt der Fermat-Test f¨ur alle m¨oglichen Basen die Anwort m ∈ P“. ” Lemma 6.2 Falls m ∈ N, m ≥ 3, eine Primzahl oder eine Carmichael-Zahl ∗ 2 ist, dann gilt Fm = Zm. Ist m keine Primzahl, dann enth¨alt Fm gerade die Basen, die den FermatTest t¨auschen“. Aus dem Kleinen Satz von Fermat bzw. aus der Eigenschaft ” der Carmichael-Zahlen, dass diese f¨ur alle Basen beim Fermat-Test Primalit¨at vort¨auschen, folgt unmittelbar Lemma 6.3 Sei m ∈ N, m ≥ 3, zusammengesetzt und keine Carmichael-Zahl, dann gilt ∗

a) Fm  Zm , b) |Fm | ≤



|Zm | 2

.

Beweis a) Da laut Voraussetzung m ≥ 3 weder Primzahl noch Carmichael-Zahl ∗ ∗ ist, ist Fm = Zm. Mit den Lemmata 6.1 und 6.2 folgt, dass Fm  Zm ist. b) folgt unmittelbar aus a) und Anwendung von Satz 2.8 (7).

2

Aus dem Lemma 6.3 b) folgt, dass der Algorithmus FERMAT f¨ur den Fall, dass k keine Primzahl ist, die falsche Ausgabe k ∈ P“ mit einer Wahrscheinlichkeit ” von h¨ochstens 12 macht, d.h. es gilt Satz 6.4 Sei k ∈ N, k ≥ 3, eine zusammengesetzte Zahl und keine Carmichael-Zahl, dann gilt   1 ProbF k ∈ P“ | k ∈ P ≤ ” 2

Die Klasse RP

(6.11)

Bemerkung 6.1 Der Algorithmus FERMAT ist ein so genannter RP-Algorithmus f¨ur P. RP steht f¨ur Random Polynomial und steht f¨ur die Mengen, f¨ur die die Zugeh¨origkeit von Elementen folgendermaßen entschieden werden kann: Es sei U eine Menge, dann geh¨ort eine Menge M ⊆ U zur Klasse RP genau dann, wenn ein randomisierter Algorithmus A existiert, so dass Folgendes gilt: / M ] = 0: Ist x ∈ / M , dann akzeptiert A das Ele(1) ProbA[ A akzeptiert x | x ∈ ment x mit Wahrscheinlichkeit 0, d.h. A macht keine falschen positiven Aussagen. (2) ProbA[ A akzeptiert x nicht | x ∈ M ] ≤ 12 : Die Wahrscheinlichkeit, dass A eine falsche negative Aussage macht, ist h¨ochstens 12 .

Primzahltests

147

(3) Die Laufzeit des Algorithmus ist f¨ur jede Eingabe x ∈ U polynomiell in der L¨ange von x (Verfahren zum effizienten modularen Potenzieren haben wir im Kapitel 5.3 betrachtet). Algorithmen, die Mengen gem¨aß (1) und (2) akzeptieren, heißen auch Monte Carlo-Algorithmen.

Monte CarloAlgorithmus

Der Algorithmus FERMAT ist ein Monte Carlo-Algorithmus f¨ur die Menge P, es gilt also P ∈ RP. Dem entsprechend gilt P ∈ coRP.11 Die Irrtumswahrscheinlichkeit ist also h¨ochstens 12 , was nat¨urlich viel zu groß sein kann. Wenn der Algorithmus nun f¨ur eine Eingabe k ∈ U+ , k ≥ 3,  Runden ausgef¨uhrt wird, bei denen die Basis a zuf¨allig und unabh¨angig jeweils neu gew¨ahlt wird und in jeder Runde k ∈ P“ ausgegeben wird, dann betr¨agt die ” Irrtumswahrscheinlichkeit h¨ochstens 21 . Wenn wir also vorgeben, dass ein Feh−s ler mit h¨ochstens = 10 auftreten darf, dann setzen wir  = 4s, denn es ist −4s −s −15 2 < 10 . F¨ur eine angestrebte Fehlerwahrscheinlickeit von z.B. 10 reichen also 60 Runden. Die Rundenzahl ist eine vorgegebene Konstante, unabh¨angig von der Eingabe k, ber¨uhrt also nicht die Gr¨oßenordnung der polynomiellen Laufzeit. 2

6.5

Carmichael-Zahlen

Im Zusammenhang mit der Analyse des Fermat-Tests haben wir schon die Existenz der Carmichael-Zahlen angenommen, zu denen es keine Basen gibt, mit denen der Fermat-Test ihre Nicht-Primalit¨at feststellen k¨onnte. Sie widersetzen sich also grunds¨atzlich dem Ansinnen, die Umkehrung des Kleinen Satzes von Fermat zur Basis eines probabilistischen Primzahltests zu nehmen. In diesem Abschnitt untersuchen wir die Carmichael-Zahlen n¨aher, und im folgenden Abschnitt betrachten wir einen probabilistischen Primzahltest, den Miller-RabinTest, f¨ur den die Anwendung auf Carmichael-Zahlen keine Probleme bereitet. Definition 6.3 Eine zusammengesetzte Zahl m ∈ N, m ≥ 3, heißt Carmim−1 chael-Zahl genau dann, wenn f¨ur alle Basen a mit (m, a) = 1 gilt a = 1 (m) m (oder a¨ quivalent a = a (m)). 2 Beispiel 6.2 Die Zahl 561 ist eine (sogar die kleinste) Carmichael-Zahl. Die Primzahlzerlegung von 561 ist 561 = 3·11·17. F¨ur alle Zahlen a mit (561, a) = 1 gilt (3, a) = 1 (3), (11, a) = 1 (11) sowie (17, a) = 1 (17). Jeweils mithilfe des   11 F¨ur eine Komplexit¨atsklasse C ist coC = L | L ∈ C die zu C komplement¨are Komplexit¨atsklasse.

CarmichaelZahlen

148

Carmichael-Zahlen

Kleinen Satzes von Fermat folgt dann: 561

2 280

a

= (a )

· a = a (3)

561

10 56

= (a ) · a = a (11)

561

= (a ) · a = a (17)

a

16 35

a

Aus den drei Gleichungen folgt (siehe Korollar 5.1 a), da die Primzahlen 3, 11 und 17 paarweise teilerfremd sind, a

561

= a (3 · 11 · 17) = a (561) 2

f¨ur alle Zahlen a mit (561, a) = 1. Man kann zeigen, dass es unendlich viele Carmichael-Zahlen gibt.

Satz 6.5 Sei m eine Carmichael-Zahl, dann ist die Primfaktorisierung von m quadratfrei. Beweis Wir nehmen an, dass die Faktorisierung nicht quadratfrei ist, d.h. es sei t m = p · n mit p ∈ P und t > 1, und n ist das Produkt der restlichen Faktoren. Wir zeigen im Folgenden, dass wir mit dieser Annahme p|m − 1 zeigen k¨onnen, was ein Widerspruch zur Voraussetzung p|m darstellt. Wegen der Annahme m = p · n mit p ∈ P und t > 1 gilt t

2

2

p |m d.h. es gibt eine Zahl r mit m = p · r k

(6.12) 2

Wir betrachten die Zahl a = 1 + p, und berechnen a modulo p : k

k

a = (1 + p) k  k  i p = i i=0         k 0 k 1 k 2 k k = p + p + p + ... + p 0 1 2 k = 1 + kp + 0 + ... + 0 2

(6.13)

= 1 + kp (p ) Aus (6.13) folgt f¨ur k = p: 2

p

2

a = 1 + p = 1 (p )

(6.14)

ordZ∗2(a) = p

(6.15)

Es gilt also p

Falls nun a p|m − 1.

m−1

2

= 1 (p ) gezeigt werden kann, dann gilt wegen Satz 2.2 b) auch

Primzahltests

149

Da (a, m) = (1 + p, p · n) = 1 und m eine Carmichael-Zahl ist, gilt a = m−1 = m · q + 1. Mit (6.12) folgt, dass 1 (m). Es gibt also eine Zahl q mit a m−1 2 = p · r · q + 1 gilt, d.h. es ist a t

m−1

m−1

a

2

= 1 (p )

(6.16) 2

was wir zeigen wollten.

Im n¨achsten Satz zeigen wir eine weitere wesentliche Eigenschaft von Carmichael-Zahlen. Satz 6.6 Sei m eine Carmichael-Zahl, dann besitzt die Primfaktorzerlegung von m mindestens drei Faktoren. Beweis Wir nehmen an, m sei eine Carmichael-Zahl mit genau zwei Primfaktoren. Wegen des letzten Satzes m¨ussen diese verschieden sein. Es sei also m = p · q, mit p, q ∈ P und p = q. F¨ur jeden endlichen K¨orper K sind die Ein∗ ∗ heitengruppen K zyklisch (siehe Satz 3.21). In der Gruppe Fp gibt es also einen Generator b. F¨ur diesen gilt ordF∗(b) = p − 1

(6.17)

p

¨ Da m Carmichael-Zahl ist, ist bm−1 = 1 (m), und da p|m gilt, gilt – siehe Ubung 1.2 (1) – auch bm−1 = 1 (p)

(6.18)

Aus (6.17) und (6.18) folgt wiederum mit Satz 2.2 b) p − 1|m − 1

(6.19)

Analog kann gezeigt werden, dass auch q − 1|m − 1

(6.20)

gelten muss. Da m − 1 = pq − 1 = (p − 1)q + (q − 1) ist, folgt hieraus mit (6.19) und Korollar 1.2 i), dass p − 1|q − 1 gilt, und da analog m − 1 = pq − 1 = p(q − 1) + (p − 1) ist, folgt hieraus mit (6.20) und Korollar 1.2 i) auch q − 1|p − 1. Aus p − 1|q − 1 und q − 1|p − 1 folgt aber p − 1 = q − 1 und damit p = q, was ein Widerspruch zur Voraussetzung p = q ist. 2 Die beiden letzten S¨atze besagen also, dass Carmichael-Zahlen quadratfreie Faktorisierungen mit mindestens drei Primzahlen besitzen. Der folgende Satz gibt eine hinreichende Bedingung f¨ur die Generierung von Carmichael-Zahlen an. Dazu betrachten wir noch einmal das Beispiel 6.2 und versuchen das Vorgehen dort zu verallgemeinern: Im Beispiel ist m = 561 = 3 · 11 · 17

150

Miller-Rabin-Test

die Primfaktorzerlegung der Carmichael-Zahl 561. Wir haben dann wie folgt gerechnet:  560 560 561 2 = a · (a ) 2 = a (3) a =a· a  560 560 561 10 = a · (a ) 10 = a (11) a =a· a  560 560 561 16 = a · (a ) 16 = a (17) a =a· a Allgemein sei m = p1 · p2 · . . . · pk , k ≥ 3, pi = pj , i = j die quadratfreie Faktorisierung der Carmichael-Zahl m mit mindestens drei Faktoren. Aus Korollar 5.1 a) und mithilfe des Kleinen Satzes von Fermat gilt pi −1

(a, m) = 1 ⇒ (a, pi ) = 1 ⇒ a

= 1 (pi ), 1 ≤ i ≤ k

Hieraus folgt m

a =a·a

m−1



pi −1 m−1

pi −1

=a· a

= a (pi )

Man sieht also, dass man so rechnen kann, wenn pi − 1|m − 1 f¨ur 1 ≤ i ≤ k ist (wie es auch im Beispiel der Fall ist). Es gilt also der folgende Satz. Satz 6.7 Sei m ∈ N ungerade, zusammengesetzt und quadratfrei. Gilt f¨ur jeden Primteiler p|m auch p − 1|m − 1, dann ist m eine Carmichael-Zahl. 2 Beispiel 6.3 a) F¨ur die uns schon aus vorherigen Beispielen bekannte kleinste Carmichael-Zahl 561 gilt: 561 = 3 · 11 · 17 ist quadratfrei und es gilt: 2|560, 10|560 und 16|560. b) F¨ur die Zahl 1105 gilt: 1105 = 5 · 13 · 17 ist quadratfrei und es gilt: 4|1104, 12|1104 und 16|1104. Also ist 1105 eine Carmichael-Zahl. c) F¨ur die Zahl 1729 gilt: 1729 = 7 · 13 · 19 ist quadratfrei und es gilt: 6|1728, 12|1728 und 18|1728. Also ist 1729 eine Carmichael-Zahl. 2



¨ Ubungsaufgaben

6.3 Zeigen Sie, dass 2821 eine Carmichael-Zahl ist!

2

Aus dem Beweis von Satz 6.7 kann folgendes Verfahren zur Generierung von Carmichael-Zahlen abgeleitet werden: Bestimme Primzah$kk ≥ 3 verschiedene p − 1 . Dann ist die Zahl len p1 , . . . , pk mit der Eigenschaft (pi − 1) | i=1 i $k m = i=1 pi eine Carmichael-Zahl.

Primzahltests

6.6

151

Miller-Rabin-Test

Carmichael-Zahlen werden vom Fermat-Tests prinzipiell nicht als zusammengesetzt festgestellt. Wir betrachten nun den Miller-Rabin-Test, der dieses unerw¨unschte Verhalten nicht hat. Der Miller-Rabin-Test ist ein effizienter probabilistischer Primzahltest, der die Basis vieler praktisch verwendeter Primzahlgeneratoren bildet. Den Ausgangspunkt bildet das Korollar 3.6 d), welches wir hier in einer Variante formulieren: Korollar 6.3 Sei p ∈ P. Dann besitzt die 1 modulo p genau die beiden Wur2 zeln 1 und −1, d.h. die quadratische Gleichung x = 1 besitzt genau die beiden ∗ L¨osungen x = 1 und x = −1 in der Einheitengruppe Zp . 2 ∗

x = 1 und x = −1 sind in allen Einheitengruppen Zm , m ∈ N, m ≥ 2, Wurzeln von 1; sie k¨onnen deshalb als triviale Quadratwurzeln bezeichnet werden. Ist ∗ 2 m ∈ / P, dann hat in Zm die Gleichung x = 1 nicht nur die beiden L¨osungen ∗ x = 1 und x = −1. So sind z.B. in Z12 auch x = 5 und x = −5, d.h. x = 5 und x = 7, Wurzeln von 1. Diese Tatsache macht folgende Definition sinnvoll. ∗

Definition 6.4 x ∈ Zm heißt eine nicht triviale Quadratwurzel von 1 modulo 2 m, falls x = 1 gilt sowie x = 1 und x = −1 ist. 2

Triviale Quadratwurzel

Nicht triviale Quadratwurzel

Beispiel 6.4 4 ist eine nicht triviale Quadratwurzel modulo 15, denn es gilt 2 2 4 = 1 (15) sowie 4 = 1 (15) und 4 = −1 (15). Aus Korollar 6.3 und Definition 6.4 folgt unmittelbar Korollar 6.4 Falls eine nicht triviale Quadratwurzel modulo m existiert, dann ist m eine zusammengesetzte Zahl. 2 Die Korollare 6.3 und 6.4 sind die Ausgangspunkte f¨ur die folgenden S¨atze und damit f¨ur den Miller-Rabin-Test. Dabei sei f¨ur eine Zahl m ∈ N   r (6.21) s = max r ∈ N | 2 |m − 1 m−1 s und damit m − 1 = 2 · d (6.22) 2s Es folgt unmittelbar, dass d eine ungerade Zahl sein muss, sonst k¨onnte d durch 2 geteilt werden, und s w¨are nicht das in Gleichung (6.21) festgelegte Maximum. d=



F¨ur b ∈ Zm nennen wir

+ d

2d

4d

8d

b ,b ,b ,b ,...,b

s−1 2 ·d

s 2 ·d

,b

, (6.23)

r 2 ·d

wobei alle Folgenglieder b , 0 ≤ r ≤ s, modulo m gerechnet werden, eine ∗ b-Sequenz in Zm . Falls m ∈ P ist, dann ist das letzte Glied in dieser Sequenz gleich 1, denn mit dem Kleinen Satz von Fermat und der Gleichung (6.22) gilt b

s 2 ·d

=b

m−1

=1

(6.24)

b-Sequenz

152

Miller-Rabin-Test

Beispiel 6.5 a) Sei m = 25, dann ist s = 3 sowie d = 3. F¨ur die Basis b = 2 ergibt sich die Sequenz - 3 6 12 24 . =  8, 14, 21, 16  2 ,2 ,2 ,2 F¨ur b = 3 ergibt sich -

3

6

12

24

.

3 ,3 ,3 ,3 und f¨ur b = 7

-

3

6

12

24

.

7 ,7 ,7 ,7

=  2, 4, 16, 6 

=  18, −1, 1, 1 

(6.25)

b) Sei m = 97, dann ist s = 5 sowie d = 3. F¨ur die Basis b = 2 ergibt sich die Sequenz - 3 6 12 24 48 96 . 2 ,2 ,2 ,2 ,2 ,2 =  8, 64, 22, −1, 1, 1  F¨ur b = 14 ergibt sich - 3 6 12 24 48 96 . 14 , 14 , 14 , 14 , 14 , 14 =  28, 8, 64, 22, −1, 1  f¨ur b = 35

-

3

6

12

24

48

96

.

35 , 35 , 35 , 35 , 35 , 35 und f¨ur b = 62 -

3

6

12

24

48

96

.

62 , 62 , 62 , 62 , 62 , 62 Satz 6.8

=  1, 1, 1, 1, 1, 1 

=  −1, 1, 1, 1, 1, 1 



Es sei p ∈ P und b ∈ Zp , b = 1 sowie b ∗

b-Sequenz in Zp mit b

r 2 ·d

r 2 ·d

das erste Glied in der

= 1. Dann gilt entweder r = 0 oder b ∗

2

r−1 ·d

= −1.

2

Beweis Gem¨aß Korollar 6.3 gilt f¨ur x ∈ Zp : x = 1 genau dann, wenn x = 1 oder x = −1 ist. Da b 2

r−1 ·d

r 2 ·d

das erste Glied in der b-Sequenz mit b

r 2 ·d

= 1 ist, kann

r 2 ·d

die Wurzel b von b nicht gleich 1 sein, sondern muss gleich −1 sein, womit die Behauptung gezeigt ist. 2 Aus dem Satz 6.8 folgt unmittelbar   r Satz 6.9 Es sei p ∈ P, s = max r ∈ N | 2 |p − 1 , d = p−1 s und b ∈ N mit 2 d (p, b) = 1, dann gilt entweder b = 1 (p) oder es existiert ein r mit 0 ≤ r ≤ s − 1 und b

r 2 ·d

= −1 (p).

Aus dem Satz folgt, dass die b-Sequenzen f¨ur Primzahlen eine bestimmte Gestalt haben.

Primzahltests

Korollar 6.5

153





a) Sei p ∈ P, dann ist f¨ur b ∈ Zp die b-Sequenz in Zp gleich  1, 1, . . . , 1,

1, 1, . . . , 1 

(6.26)

 −1, 1, . . . , 1, 1, 1, . . . , 1 

(6.27)

 ?, ?, . . . , ?, −1, 1, . . . , 1 

(6.28)

oder gleich

oder gleich

wobei ?“ f¨ur eine Zahl aus Zp ungleich 1 und ungleich −1 steht. ” b) Sei m ∈ N und b ∈ Zm . Ist die b-Sequenz in Zm gleich  ?, ?, . . . , ?, 1, 1, . . . , 1 

(6.29)

 ?, ?, . . . , ?, ?, ?, . . . , −1 

(6.30)

 ?, ?, . . . , ?, ?, ?, . . . , ? 

(6.31)

oder gleich

oder gleich

wobei ?“ f¨ur eine Zahl aus Zm ungleich 1 und ungleich −1 steht, dann ist m ” zusammengesetzt. 2 Mit den S¨atzen 6.8 und 6.9 bzw. mit dem Korollar 6.5 liegt eine analoge Situation im Hinblick auf den Ausgangspunkt f¨ur einen Primzahltest vor wie beim Kleinen Satz von Fermat: Die Aussagen geben notwendige Bedingungen f¨ur die Primalit¨at einer Zahl an. Im Beispiel 6.5 b) sind f¨ur die Primzahl 97 vier Basen gew¨ahlt, welche die Muster von Korollar 6.5 a) zeigen. Die Bedingungen sind aber nicht hinreichend, denn am Beispiel 6.5 a) sehen wir, dass auch b-Sequenzen von zusammengesetzten Zahlen ein Primzahlmuster haben k¨onnen: F¨ur m = 25 hat die 7-Sequenz (6.25) das Muster (6.28). Das bedeutet, dass es f¨ur den Fall, dass wir – analog zum Kleinen Satz von Fermat – die Umkehrung der obigen S¨atze als Grundlage f¨ur einen Primzahltest verwenden wollen, zusammengesetzte Zahlen gibt, welche Primalit¨at vorgaukeln. Das legt folgende Definition nahe. Definition 6.5

s

Gilt b = 1 (m) oder existiert ein r ∈ {0, 1, . . . , s − 1} mit b heißt m stark pseudoprim zur Basis b. d



Sei m ∈ U+ , m ≥ 3, m − 1 = 2 · d mit d ∈ U+ sowie b ∈ Zm . r 2 ·d

= −1 (m), dann 2

Im Hinblick auf die zuf¨allige Auswahl von Basen zu einer auf Primalit¨at zu testenden Zahl stellt sich auch hier wie beim Fermat-Test die Frage, wie hoch die Fehlerwahrscheinlichkeit eines solchen Tests ist, d.h. die Frage nach der maximalen Anzahl von Basen, zu denen die zu testende Zahl stark pseudoprim ist. Darauf gibt der folgende Satz eine Anwort.

Starke Pseudoprimzahl zur Basis b

154

Miller-Rabin-Test

Satz 6.10 Sei m ∈ U+ , m ≥ 3,12 zusammengesetzt, dann betr¨agt die Anzahl . der Basen a ∈ Zm , a = 0, zu denen m stark pseudoprim ist, h¨ochstens m−1 4 Beweis m ist zusammengesetzt, sei also α

α

α

m = p 1 1 · p 2 2 · . . . · pk k

(6.32)

die kanonische Primfaktorzerlegung von m mit p1 ≥ 3 sowie mit k = 1 und α1 ≥ 2 oder mit k ≥ 2 und αi ≥ 1, 1 ≤ i ≤ k. Des Weiteren seien s und d wie in (6.21) bzw. in (6.22) bestimmt. Wir m¨ussen die Anzahl der Elemente a ∈ { 1, . . . , m − 1 } mit (a, m) = 1 absch¨atzen, f¨ur die d

(6.33)

a = 1 (m) oder a

r 2 ·d

= −1 (m)

(6.34)

f¨ur ein r ∈ { 0, 1, . . . , s−1 } gilt. Wenn es kein solches a gibt, ist die Behauptung gezeigt. Wir nehmen an, dass es ein Element a gibt, zu dem m stark pseudoprim ist. Wenn es ein a gibt, dass (6.33) erf¨ullt, dann gibt es auch ein Element, n¨amlich d −a, welches (6.34) erf¨ullt: (−a) = −1 (m), da d ungerade ist. Wir k¨onnen also annehmen, dass mindestens ein Element a existiert, zu dem m stark pseudoprim ist und das (6.34) f¨ur ein r ∈ { 0, 1, . . . , s − 1 } erf¨ullt. Es sei R der gr¨oßte dieser Exponenten. Es ist also R ≤ s − 1 und damit s − R ≥ 1 und damit s−R

2

∈ G+

(6.35)

Wir setzen jetzt j = 2 · d sowie R



j

Jm = { a ∈ Zm | a = ±1 (m) }

(6.36)

Jm enth¨alt alle Elemente, die stark pseudoprim zu m sind. Jm bildet eine Unter∗ gruppe der in Gleichung (6.10) definierten Untergruppe Fm von Zm , denn es gilt mit (6.35) und (6.22): j

a ∈ Jm ⇒ a = ±1 ⇒ a ⇒a

m−1

R 2 ·d

 = ±1 ⇒

R 2 ·d

a

2s−R = +1 ⇒ a

s 2 ·d

=1

= 1 (m) ⇒ a ∈ Fm

Des Weiteren ist Jm offensichtlich abgeschlossen gegen Multiplikation und Inversenbildung. Es gilt also mit Lemma 6.1 ∗

Jm  Fm  Zm 12 Siehe hierzu Bemerkung 6.2.

(6.37)

Primzahltests

155

Wenn wir zeigen k¨onnen, dass 

 ∗ Zm : Jm ≥ 4

(6.38)

gilt, ist der Satz bewiesen. Dazu betrachten wir im Folgenden drei F¨alle f¨ur die Zerlegung (6.32) von m: α

α

α

α

α

α

(1) m = p1 1 · p2 2 · p3 3 · . . . · pk k mit k ≥ 3 und αi ≥ 1, 1 ≤ i ≤ k; (2) m = p1 1 · p2 2 , also k = 2, mit α1 , α2 ≥ 1; (3) m = p , also k = 1, mit α ≥ 2. α

Dabei ist p1 ≥ 3 bzw. p ≥ 3, da m ∈ U+ und m ≥ 3 ist. Zu (1): Es sei a ∈ Jm mit a = −1 (m), also gem¨aß Korollar 5.1 a) j

α

j

a = −1 (pi i ), 1 ≤ i ≤ k Wir betrachten folgende Kongruenzgleichungssysteme  α x = ci pi i , mit ci ∈ { 1, a }, 1 ≤ i ≤ k

(6.39)

(6.40)

wobei in jedem System nicht alle Konstanten ci identisch sind. W¨aren alle k M¨oglichkeiten zugelassen, dann g¨abe es 2 solcher Systeme. Da zwei Systeme ausgeschlossen sind, n¨amlich die beiden, in denen alle ci = 1 bzw. alle ci = a k sind, gibt es also 2 − 2 erlaubte Systeme. Diese haben gem¨aß dem Chinesichen k Restsatz (Satz 5.4) modulo m eindeutige, von einander verschiedene, also 2 − 2 L¨osungen x. F¨ur diese L¨osungen gilt mit (6.39) und (6.40)  α  j j j (6.41) x ∈ 1 , a = {1, −1} pi i , 1 ≤ i ≤ k sowie  α μ f¨ur mindestens ein μ ∈ { 1, 2, . . . , k } 1 pμ  αν  j j f¨ur mindestens ein ν ∈ { 1, 2, . . . , k } x = a = −1 pν j

j

x =1 =

(6.42)

mit μ = ν. Mit Korrollar 5.1 a) folgt aus (6.42) j

j

sowohl x = 1 (m) als auch x = −1 (m) Daraus folgt mit (6.36): x ∈ / Jm . Andererseits gilt mit (6.22), (6.41) und (6.35) x

m−1

=x

s 2 ·d

 =

x

R 2 ·d

2s−R

s−R  j 2s−R  α 2 = x = (±1) = 1 pi i , 1 ≤ i ≤ k

woraus mit Korrollar 5.1 a) x

m−1

= 1 (m)

156

Miller-Rabin-Test

folgt, und das bedeutet, dass x ∈ Fm ist. Somit k¨onnen jedem Element a ∈ Jm k genau 2 − 2 Elemente aus Fm zugeordnet werden. Daraus folgt k

[ Fm : Jm ] ≥ 2 − 2

(6.43)

F¨ur die festgelegte Voraussetzung k ≥ 3 ist damit und mit (6.37) die zu zeigende Behauptung (6.38) bewiesen. α

α

Zu (2): Sei nun m = p1 1 · p2 2 , d.h. wir betrachten im Vergleich zu Fall (1) den Fall, dass k = 2 ist. Mit derselben Argumentation wie unter (1) folgt aus (6.43): (6.44)

[ Fm : Jm ] = 2

Da m nur zwei Primfaktoren besitzt, kann m Satz  wegen  6.6 keine Carmichael∗ Zahl sein. Gem¨aß Lemma 6.3 b) gilt dann Zm : Fm ≥ 2. Mit (6.44) und mit (6.37) folgt dann auch f¨ur diesen Fall die Behauptung (6.38). Zu (3): Sei nun m = p mit p ≥ 3 und α ≥ 2. Wir m¨ussen die Anzahl der ∗ a ∈ Zpα bestimmen, f¨ur die a ∈ Fpα , d.h. α

a

pα −1

α

(6.45)

= 1 (p )







gilt. Gem¨aß Satz 5.6 ist Zpα zyklisch. Sei g ∈ Zpα eine Primitivwurzel von Zpα . ∗ Dann gibt es zu jedem a ∈ Zpα und damit zu jedem a ∈ Fpα ein qa ∈ N mit qa α α−1 ist, gilt f¨ur qa : a = g . Da gem¨aß Korollar 3.8 ordZ∗ = ϕ(p ) = (p − 1)p p

α

1 ≤ qa ≤ (p − 1)p . Gleichbedeutend mit der obigen Frage, d.h. mit der Frage nach der Anzahl der a ∈ Fpα , f¨ur die (6.45) gilt, ist also die Frage nach der Anzahl der q mit α−1

1 ≤ q ≤ (p − 1)p

α−1

(6.46)

und q pα −1

(g )

α

(6.47)

= 1 (p )

Gem¨aß Satz 2.6 sind das genau t = (q · (p − 1), (p − 1) · p zeigen im Folgenden schrittweise, dass t = p − 1 und damit     Fpα  = p − 1 α

α−1

) Elemente. Wir

(6.48)

ist. Aus (6.47) folgt mit Satz 2.2 b) (p − 1) · p

α−1

α

| q · (p − 1)

(6.49)

Wegen Lemma 1.1 gilt α

p − 1|p − 1

(6.50)

Primzahltests

157

Damit folgt aus (6.49) p −1 p−1 α

p Es gilt p

α−1

α−1

|q ·

(6.51)

| p , und damit α

p

α−1

α

 |p − 1

Aus (6.51) und (6.52) folgt nun, dass p

α−1

q=p

(6.52)

| q sein muss. Es gibt somit ein q  mit

α−1

· q

(6.53)

Aus (6.52) und (6.53) folgt mit Korollar 1.19 a) t = (q  · (p − 1), p − 1) α

und hieraus folgt mit (6.50), dass t = p − 1 ist, womit (6.48) gilt, was wir zeigen wollten. Hieraus folgt mit (6.45): "



Zpα : Fpα

#

(p − 1)p p−1

α−1



=p

α−1

Womit auch f¨ur diesen Fall, wenn wir α ≥ 3 fordern (es ist ja p ≥ 3), die Behauptung (6.38) gezeigt ist. 2 Bemerkung 6.2 a) Wegen der zuletzt genannten Voraussetzung α ≥ 3 gilt 2 die Behauptung nicht f¨ur die kleinst m¨ogliche Primzahlpotenz m ≥ 3 = 9. Da wir allerdings an Primzahltests f¨ur (sehr) große Zahlen interessiert sind, vernachl¨assigen wir diese Einschr¨ankung. b) Wegen dieser Einschr¨ankung m¨usste streng genommen im Satz als Voraussetzung m ≥ 9 gefordert werden. 2 Satz 6.10 ist eine wesentliche Grundlage f¨ur die Verwendung des in Abbildung 15 dargestellten Miller-Rabin-Algorithmus, ein effizienter probabilistischer Primzahltest, der praktische Anwendung findet. In einer Runde stellt der Test fest, ob eine eingegebene ungerade Zahl m stark pseudoprim zu einer zuf¨allig gew¨ahlten Basis a ist. Wenn in hinreichend vielen Runden keine Basis gefunden wird, zu der m stark pseudoprim ist, ist wegen Satz 6.10 die Wahrscheinlichkeit, dass m prim ist, entsprechend hoch. In der folgenden Darstellung des Miller-Rabin-Tests bedeutet die Ausgabe m ” ist prim?“, dass w¨ahrend einer Ausf¨uhrung kein Zeuge gegen die Primalit¨at von m gefunden wird.

158

Miller-Rabin-Test

algorithm MILLER-RABIN(m ∈ U+ , m ≥ 3) s Berechne d und s mit m − 1 = d · 2 und d ungerade W¨ ahle zuf¨ allig ein a ∈ {2, 3, . . . , m − 2} mit (a, m) = 1 d b := a (m) if b = 1 (m) oder b = −1 (m): Ausgabe: m ist prim?“ ” for r := 1 to s − 1 do 2 b := b (m) if b = −1 (m): Ausgabe: m ist prim?“ ” if b = 1 (m): Ausgabe: m ist nicht prim“ ” endfor Ausgabe: m ist nicht prim“ ” endalgorithm MILLER-RABIN Abb. 15: Miller-Rabin-Primzahltest



¨ Ubungsaufgaben

6.4 (1) Berechnen Sie die b-Sequenzen f¨ur die Primzahl p = 13 f¨ur alle Basen b ∈ {2, 3, . . . , 11}! Welche Ausgaben macht der Miller-Rabin-Algorithmus f¨ur p und diese (zuf¨allig) Basen? (2) Berechnen Sie die b-Sequenzen f¨ur die zusammengesetzte Zahl m = 65 f¨ur die Basen b ∈ {2, 8, 12, 18}! Welche Ausgaben macht der MillerRabin-Algorithmus f¨ur m und diese (zuf¨allig) gew¨ahlten Basen? 2

F¨ur den MILLER-RABIN-Algorithmus (im Folgenden als Index mit MR abgek¨urzt) gilt ProbM R [ Ausgabe: m ist nicht prim“ | m ∈ P ] = 0 ” also

  ProbM R m ∈ P | m ∈ /P =0

Aus dem Satz 6.10 folgt, dass der Algorithmus f¨ur den Fall, dass m keine Primzahl ist, die Ausgabe m ist prim ?“ mit einer Wahrscheinlichkeit von h¨ochstens ” 1 macht, d.h. es gilt 4 1 ProbM R [ Ausgabe: m ist prim?“ | m ∈ / P] ≤ ” 4 also

  1 ProbM R m ∈ P | m ∈ P ≤ 4

Primzahltests

Der MILLER-RABIN-Algorithmus ist also wie der FERMAT-Algorithmus ein Monte Carlo-Algorithmus f¨ur die Menge P der zusammengesetzten Zahlen (siehe Bemerkung 6.1) mit dem Vorteil, dass er nicht von den Carmichaelzahlen hereingelegt wird. Wird der Algorithmus f¨ur eine zusammengesetzte Zahl m  Runden durchgef¨uhrt, dann ist die Wahrscheinlichkeit daf¨ur, dass er in jeder Runde m ist ” prim ?“ ausgibt 1 ProbM R [ -mal Ausgabe: m ist prim?“ | m ∈ / P] ≤  ” 4 Wird der Test -mal wiederholt und ist m zusammengesetzt, dann ist die Wahrscheinlichkeit, dass dabei keine Basis a gefunden wird, zu der m stark pseudoprim ist, kleiner gleich 41 . F¨ur  = 25 gilt bereits 4125 = 2150  10115 . F¨uhrt man den Algorithmus  Runden aus, w¨ahlt man also zuf¨allig  zu m teilerfremde Zahlen zwischen 2 und m − 2 aus, dann ist m mit einer Wahrschein lichkeit von mindestens 1 − ( 14 ) eine Primzahl, falls m starke Pseudoprimzahl zu allen  gew¨ahlten Basen ist. Rabin selbst zeigte, dass die ziemlich großen“ ” 400 Zahlen mi = 2 − (2i + 1) f¨ur 0 ≤ i ≤ 295 zusammengesetzt sind, w¨ahrend 400 er bei m296 = 2 − 593 bei 100 zuf¨allig gew¨ahlten Basen keinen Zeugen gegen die Primalit¨at dieser Zahl fand. Damit ist diese Zahl mit einer Wahrscheinlich1 – also so gut wie sicher“ – eine Primzahl. In der keit von mindestens 1 − 4100 ” Tat wurde mittlerweile festgestellt, dass m296 eine Primzahl ist.13 Der Miller-Rabin-Algorithmus ben¨otigt bei Eingabe von m bei   Runden 3Durchf¨uhrung O ( · (log m)) arithmetische Operationen sowie O  · (log m) BitOperationen, l¨auft also in polynomieller Zeit in Abh¨angigkeit der L¨ange der zu testenden Zahl m. Wenn f¨ur eine zu testende Zahl m der Miller-Rabin-Test mehr als ein Viertel aller m¨oglichen Basen probiert und dabei m nicht als zusammengesetzt erkannt wird, dann ist m eine Primzahl. Der Miller-Rabin-Test kann also als deterministischer Primzahltest verwendet werden, allerdings wird die Laufzeit dann so groß, dass seine Verwendung nicht mehr praktikabel ist.

6.7

Der AKS-Test

Obwohl, wie bereits erw¨ahnt, seit 2002 ein deterministicher polynomieller – nach den Anfangsbuchstaben seiner Erfinder M. Agrawal, N. Kayal und M. Saxena AKS-Test genannter – Primzahltest existiert, wird derzeit und wohl auch 13 Es sei bemerkt, dass die Wahrscheinlichkeit eines Denk- oder Rechenfehlers (Hardware 1 ist. oder Softwarefehler) wohl gr¨oßer als 4100

159

160

AKS-Test

noch in n¨achster Zeit wie bisher der Miller-Rabin-Test weiter Verwendung finden. Er ist sehr effizient und seine Sicherheit kann durch entsprechend viele Wiederholungen beliebig gesteigert werden. Der AKS-Algorithmus hingegen ist zwar determnistisch polynomiell, aber mit einem sehr hohen Grad. Die Bedeutung des AKS-Tests ist insbesondere, dass er die u¨ ber Jahrhunderte lange offene Frage beantwortet hat, ob die Primalit¨at einer Zahl deterministisch polynomiell entschieden werden kann. So lautet der Titel der Ver¨offentlichung von M. Agrawal, N. Kayal und M. Saxena entsprechend: Primes is in P.14 Wir betrachten in diesem Kapitel die Ideen des AKS-Tests, allerdings nicht bis ins letzte Detail. Ausgangspunkt f¨ur den AKS-Test ist der folgende Satz. Satz 6.11 Es sei m, a ∈ N mit (a, m) = 1. Dann gilt m

m

m ∈ P genau dann, wenn (x + a) = x + a (m)

(6.54)

¨ Beweis ⇒“: Diese Richtung haben wir bereits in Ubung 1.2 (3) gezeigt, wobei ” m jetzt zus¨atzlich noch (a, m) = 1 und damit mit dem Kleinen Fermat a = a (m) gilt. ⇐“: Wir nehmen an, dass m nicht primist. Dann gibtes Primteiler von m. Sei ” c d also p ∈ P mit p|m. Wir setzen d = max c ∈ N | p |m . Es gilt p |m und damit d d+1 existiert q mit m = p · q und q < p, da p  | m ist. Es gilt des Weiteren   m m! m · (m − 1) · . . . · (m − p + 1) = = p p! · (m − p)! p · (p − 1) · . . . · 1 p · q · (m − 1) · . . . · (m − p + 1) p · (p − 1) · . . . · 1 d

=

· q · (m − 1) · . . . · (m − p + 1) (p − 1) · . . . · 1   m−1 d−1 =p ·q· p−1 =

p

d−1

Es folgt p |

  m p

m |

  m p

d

und daraus

(6.55)

(6.56)

d d   sonst w¨urde, da p |m ist, auch p | mp gelten, ein Widerspruch zu (6.55). Aus (6.56) folgt   m = 0 (m) (6.57) p

14 P ist die Klasse aller Mengen, die deterministisch in Polynomzeit entschieden werden k¨onnen.

Primzahltests

161

und daraus  m  m

k

k

x a

m−k

m

= x + a (m)

k=0

da in der Summe wegen (6.57) und der (a, m) = 1 auf jeden Fall  m−p  Voraussetzung stehen bleibt. Damit folgt der Summand mit dem Koeffizienten mp a m

m

(x + a) = x + a (m) was ein Widerspruch zur Voraussetzung bei dieser Richtung des Beweises ist. Damit ist die Annahme, dass m nicht prim ist, falsch, und die Richtung ist gezeigt. 2 Bemerkung 6.3 Der Satz ist eine Verallgemeinerung des Kleinen Satzes von Fermat, welchen man erh¨alt, wenn x = 0 setzt. Der Kleine Satz von Fermat gilt allerdings nur in eine Richtung. 2 Leider ist der Test (6.54) nicht polynomiell der L¨ange  in log m von m, sondern 2 log m exponentiell von der Gr¨oßenordnung O log m · 2 . Die Idee ist, ein geeigm

netes Polynom P zu finden, mit dem zus¨atzlich zu (6.54) auch noch (x + a) = m x + a (P ) getestet und der Aufwand auf eine polynomielle Laufzeit reduziert r wird. Ein Kandidat f¨ur ein solches Polynom ist von der Art P (x) = x − 1. Es gilt der Satz 6.12 Es sei p, a, r ∈ N mit (a, p) = 1. Ist p ∈ P, dann gilt p

p

r

(x + a) = x + a (p, x − 1))

(6.58)

Die Aussage (6.58) ist nur notwendig f¨ur die Primalit¨at von p, aber nicht hinreichend, d.h. es gibt zusammengesetzte Zahlen, die (6.58) erf¨ullen. Abgesehen davon, dass der Test polynomiell sein soll, ben¨otigen wir, dass (6.58) auch hinr reichend f¨ur die Primalit¨at von p ist. Die Idee ist, zu dem Polynom x − 1 und einer zusammengesetzten Zahl m, die f¨ur ein a mit (a, m) = 1 das Kriterium (6.58) erf¨ullt, eine Zahl b mit (b, m) = 1 zu finden, die dieses Kriterium nicht erf¨ullt. wir betrachten also die beiden folgenden Mengen   m m r (6.59) A(r, m) = a ∈ N | (a, m) = 1, (x + a) = x + a (m, x − 1)   m m r (6.60) B(r, m) = b ∈ N | (b, m) = 1, (x + b) = x + b (m, x − 1) Das Ziel ist nun, eine Menge C(r, m) ⊂ N zu finden, die polynomiell in der L¨ange von m viele Elemente enth¨alt und f¨ur die C(r, m) ∩ B(r, m) = ∅ ist. Eine solche Menge ist     (6.61) C(r, m) = 1, 2, . . . , 2 · log m · ϕ(r)

162

AKS-Test

algorithm AKS(m ∈ N) b (1) Falls existiert a, b ∈ N, a, b > 1 mit m = a , then Ausgabe:  ”m ist nicht prim“;2exit  (2) Berechne r = min s ∈ N | ordZ∗ (m) > 4 · log m s (3) for a := 1 to r do falls 1 < (a, m) < m then Ausgabe: m ist nicht prim“; exit ” endfor (4) Falls m ≤ r, Ausgabe:  m ist prim“; exit ” (5) for a := 1 to 2 · log m · ϕ(r) do m m r falls (x + a) = x + a (m, x − 1), then Ausgabe: m ist nicht prim“; exit ” endfor; (6) Ausgabe: m ist prim“ ” endalgorithm AKS Abb. 16: AKS-Test

Abbildung 16 zeigt den AKS-Algorithmus, in dem diese Menge in Schritt (5) verwendet wird. Die Korrektheit ist bis auf einen Fall einfach zu erkl¨aren: Wir u¨ berlegen zuerst den Fall, dass die Eingabe m prim ist. Wir nehmen an, dass der Algorithmus m ist nicht prim ausgibt. Das ist in den Schritten (1), (3) und (5) m¨oglich. Die Ausgabe bei (1) erfolgt, wenn m eine echte Potenz, also keine Primzahl ist. Die Ausgabe bei (3) erfolgt, falls m einen nicht trivialen Teiler enth¨alt, also nicht prim ist. Wir erhalten also in diesen beiden F¨allen einen Widerspruch. In Schritt (5) erfolgt die Ausgabe nicht prim, wenn a ∈ C(r, m) ∩ B(r, m) ist, siehe dazu (6.60) und (6.61). Es muss (a, m) > 1 sein. Denn w¨are m m r (a, m) = 1, dann w¨are wegen Satz 6.11 (x + a) = x + a (m, x − 1) und damit die Bedingung in Schritt (5) nicht erf¨ullt. Aus (a, m) > 1 und m ∈ P folgt p|m m m r und damit ebenfalls die Gleichheit (x + a) = x + a (m, x − 1). Die Bedingung in Schritt (5) wird also in keinem Fall erf¨ullt, d.h. es erfolgt die korrekte Ausgabe m ist prim im Schritt (6). Nun betrachten wir den Fall, dass m zusammengesetzt ist, und nehmen an, dass der Algorithmus m ist prim ausgibt; das ist in den Schritten (4) und (6) m¨oglich. Wenn m zusammengesetzt ist, dann besitzt m einen Primteiler p < m. Dies w¨urde im Schritt (3) festgestellt, die korrekte Ausgabe w¨urde erfolgen und Schritt (4) nicht erreicht. Die Ausgabe in Schritt (6) erfolgt, wenn in Schritt (5) die Nicht-Primalit¨at von m nicht festgestellt w¨urde. F¨ur deren Feststellung sorgt aber gerade das eigentliche AKS-Kriterium in Schritt (5). Der Beweis f¨ur die Korrektheit dieser Bedingung, deren Idee wir eingangs kurz dargestellt haben, sprengt aber den Rahmen dieses Buches; es sei auf entsprechende Literatur verwiesen.

Primzahltests

163

Jetzt betrachten wir noch die Laufzeitkomplexit¨at des AKS-Algorithmus. Dazu ist das folgende Lemma von entscheidender Bedeutung, welches wir ebenfalls ohne Beweis angeben. Es gibt eine obere Grenze f¨ur die f¨ur den AKS-Test wesentliche Gr¨oße r an. / 5 0 Lemma 6.4 F¨ur m ∈ N, m ≥ 2, gibt es ein r ∈ N mit r ≤ 16 · log m , / 2 0 2 ordZ∗ (m) > 4 · log m und (r, m) = 1. r

Korollar 6.6 Die Laufzeit des AKS-Algorithmus ist f¨ur eine Eingabe m ∈ N 10,5 von der Gr¨oßenordnung O(log m), also polynomiell in der L¨ange von m. Beweis Wir betrachten die Laufzeit f¨ur die einzelnen Schritte: (1): Es muss getestet werden, ob f¨ur b mit 2 ≤ b ≤ log m ein a mit 2 ≤ a ≤ √ b m existiert mit m = a . Das ben¨otigt O(log



3

5

m · log m · log m) = O(log m)

Schritte.

/ 5 0 (2): Wegen Lemma 6.4 muss f¨ur r mit 1 ≤ r ≤ 16 · log m und jedes k mit 0 / 2 k 1 ≤ k ≤ 4 · ≤ log m gepr¨uft werden, ob m = 1 (r) gilt. Multiplikation in Zr 2

ben¨otigt O(log r) Schritte. Damit ergibt sich f¨ur (2) eine Laufzeit von 2

5

2

2

5

7

2

5

O(r · k · log r) = O(log m · log m · log (log m)) = O(log m · log (log m)) (3): Es muss (a, m) f¨ur a mit 1 ≤ a ≤ r berechnet werden. Die Berechnung von (a, m) ben¨otigt O(log m) Schritte. Damit ergibt sich f¨ur die r-malige Ausf¨uhrung die Laufzeit 5

6

O(r · log m) = O(log m · log m) = O(log m) (4): Der Vergleich ist in der L¨ange von m m¨oglich, somit ist die Zeitkomplexit¨at O(log m)    (5): Es werden 2 · log m · ϕ(r) viele Gleichungen gepr¨uft. Dazu m¨ussen O(log m) viele Multiplikationen von Poynomen mit Grad r und Koeffizienten der Gr¨oßenordnung O(log m) durchgef¨uhrt werden. Der Test bei jedem Durch2 lauf ben¨otigt also O(r · log m) Schritte. Damit ergibt sich die Gesamtschrittzahl   3   2 3 O log m · ϕ(r) · r · log m = O r 2 · log m  3 5 3 = O (log m) 2 · log m  21   10,5 2 = O log m = O log m

164

AKS-Test

Schritt (5) dominiert alle anderen Schritte, womit sich die Behauptung ergibt. 2 Die Komplexit¨at wird wesentlich durch die Absch¨atzung einer Schranke f¨ur das finden eines geeigneten r bestimmt. Es gibt – bisher nicht bewiesene – Vermutungen, dass es daf¨ur eine kleinere Schranke gibt, mit der die Gesamtlaufzeit 6 deutlich gedr¨uckt werden kann, etwa auf O(log m). Die G¨ultigkeit einer Vermutung, die allerdings als unsicher gilt, w¨urde sogar zur (akzeptablen) Laufzeit 3 O(log m) f¨uhren. Ohne die Verwendung von ungesicherten Vermutungen konn7,5 te bereits eine Schranke f¨ur r bewiesen werden, die zur Laufzeit O(log m) f¨uhrt.

Asymmetrische Verschl¨usselung

7

165

¨ Asymmetrische Verschlusselung

Die Kryptologie besch¨aftigt sich mit Konzepten, Methoden, Verfahren und Techniken zur Gew¨ahrung von Sicherheit und Vertraulichkeit bei Datenspeicherung und -transfer. Grundlegende Problemstellungen, die von der Kryptologie behandelt werden, sind: •

Geheimhaltung, Vertraulichkeit: Schutz gegen Abh¨oren (Lauschen),



Integrit¨at: Schutz gegen Ver¨anderung (Verf¨alschung),



Authentizit¨at: Beweis der Identit¨at (Signatur, elektronische Unterschrift),



Verbindlichkeit: Nachweis der Urheberschaft f¨ur Daten.

Wir werden uns haupts¨achlich mit der Geheimhaltung sowie ein wenig mit der Authentizit¨at und Verbindlichkeit besch¨aftigen. Beim Thema Authenti” zit¨at“ geht es darum, dass ein Sender seine Nachricht so kennzeichnet (signiert), dass vom Empf¨anger eindeutig erkannt wird, wer der Sender ist. Verbind” lichkeit“ bedeutet, dass der Sender von ihm unterschriebene Nachrichten nicht leugnen kann. Dabei betrachten wir diese Themen nur einf¨uhrend, indem wir an einigen bekannten Verschl¨usselungs- bzw. Signaturverfahren Probleme und L¨osungsm¨oglichkeiten betrachten. Dabei werden wir sehen, dass wir viele theoretische Kenntnisse aus den vorherigen Kapiteln f¨ur die L¨osung der Probleme verwenden k¨onnen. Wir gehen dabei bei dem Thema Geheimhaltung“ von folgendem Modell aus: ” Ein Sender hat Daten im Klartext vorliegen. Zum Schutz gegen Lauschangriffe wird dieser Text vor Speicherung oder vor dem Transfer (Kanal) verschl¨usselt (chiffriert). Ein (berechtigter) Empf¨anger muss in der Lage sein, die verschl¨usselten Daten zu entschl¨usseln (zu dechiffrieren), um den Klartext zur¨uckzugewinnen. Wir verwenden dabei f¨ur Sender und Empf¨anger die Buchstaben A und B, die Abk¨urzungen f¨ur die Namen Alice und Bob sind, welche Standardprotagonisten f¨ur diese Rollen in der einschl¨agigen Literatur sind. Man unterscheidet symmetrische und asymmetrische Verschl¨usselung. Bei symmetrischer Verschl¨usselung wird die Verschl¨usselung einer Nachricht und die Entschl¨usselung des entsprechenden Chiffrats mit dem selben Schl¨ussel vorgenommen (oder der Entschl¨usselungsschl¨ussel ist einfach aus dem Verschl¨usselungsschl¨ussel zu berechnen). Dazu muss der Schl¨ussel selber ausgetauscht werden, welches Geheimhaltung und Vertraulichkeit gef¨ahrden kann, oder es muss ein Verfahren geben, welches die Vereinbarung eines gemeinsamen Schl¨ussels erlaubt, ohne diesen selbst auszutauschen. Auf ein origin¨ares Verfahren dazu gehen wir im Abschnitt 7.3 ein. In den letzten Jahren werden bei der elektronischen Kommunikation zunehmend asymmetrische Verschl¨usselungsverfahren angewendet. Sie verwenden zum Verschl¨usseln und zum Entschl¨usseln verschiedene Schl¨ussel. Dabei wird unterschieden zwischen o¨ ffentlichen Schl¨usseln, die – wie der Name sagt – o¨ ffentlich bekannt sind, und privaten Schl¨usseln, die geheim gehalten werden m¨ussen.

K.-U. Witt, Algebraische und zahlentheoretische Grundlagen für die Informatik DOI 10.1007/978-3-658-04075-8_7, © Springer Fachmedien Wiesbaden 2014

Kryptologie

166

Einwegfunktionen

Man spricht deshalb auch von Public private key-Systemen. Ein Austausch der Schl¨ussel unter den Teilnehmern, die verschl¨usselte Nachrichten versenden und empfangen wollen, ist nicht n¨otig. Ein Teilnehmer A in einem solchen System besitzt einen o¨ ffentlichen Schl¨ussel eA , den jeder Teilnehmer B verwenden kann, um eine Nachricht verschl¨usselt an A zu senden. A besitzt dazu einen passenden, geheimen Entschl¨usselungsschl¨ussel dA. Wir gehen in diesem Kapitel einleitend auf einige mathematische Grundlagen asymmetrischer Verschl¨usselung ein. Generierung, Verteilung und Management von Schl¨usseln (Trust Center, Public private key-Infrastrukturen etc.) betrachten wir nicht. Lernziele

Nach dem Durcharbeiten des Kapitels sollten Sie •

die Idee von Einwegfunktionen erkl¨aren k¨onnen,



das RSA-Verfahren, den Diffie-Hellman-Schl¨usselaustausch sowie das El Gamal-Verfahren erl¨autern und daf¨ur ( per Hand berechenbare“) Beispiele ” angeben k¨onnen,



Prinzipien f¨ur Signaturverfahren angeben k¨onnen.

7.1

Einwegfunktionen

Neben o¨ ffentlich bekannten und geheimen Schl¨usseln verwenden die Verschl¨usselungsverfahren sogenannte Einwegfunktionen (englisch One way function), das sind Funktionen, deren Funktionswerte leicht zu berechnen sind, bei denen der (zeitliche) Aufwand zur Berechnung eines Argumentes zu einem Funktionswert – d.h. die Berechnung der Umkehrfunktion – aber so hoch ist, dass die Entschl¨usselung – zwar theoretisch gegeben – aber praktisch unm¨oglich ist. Wir wollen einige Beispiele f¨ur schwer invertierbare Funktionen betrachten. Zun¨achst ein etwas naives“ Beispiel: Betrachten wir Telefonb¨ucher als Funktions” tabellen, in denen Personen Zahlen, ihren Telefonnummern, zugeordnet sind. Es ist sehr einfach, die Funktion f¨ur ein Argument zu berechnen, d.h. zu einer Person die Telefonnummer zu bestimmen. Die Umkehrung, d.h. zu einer Telefonnummer die Person festzustellen, ist weitaus aufw¨andiger: Bei gleich verteilten Anfragen muss man zu einer Telefonnummer im Mittel das halbe Telefonbuch durchsuchen, um den Teilnehmer mit dieser Nummer zu finden. G¨angige“ mathematische Funktionen, wie z.B. lineare Funktionen oder Poten” zen, sind leicht invertierbar. Die Umkehrung der Funktion f (x) = ax + b mit −1 Wenn man allerdings a = 0 l¨asst sich anaytisch leicht herleiten: f (y) = y−b a modulo“ rechnet, kann die Invertierung sehr aufw¨andig sein. Betrachten wir ” e z.B. f¨ur fest gew¨ahlte e, n ∈ N mit (n, e) = 1 die Funktion fn : N → N definiert

Asymmetrische Verschl¨usselung

e

167

e

durch fn (k) = k (n). Es gilt im Allgemeinen e

e

k = (k + n) (n), f¨ur alle k, e, n ∈ N Die Funktion f ist also periodisch mit der Periodenl¨ange n. W¨ahlen wir z.B. e = 3 und n = 22 ergeben sich folgende Funktionswerte: k : 3 k (22) :

0 0

1 1

2 8

3 4 5 6 7 5 20 15 18 13

k : 11 12 13 14 3 k (22) : 11 12 19 16

15 9

16 4

17 7

8 6

9 10 3 10

18 19 20 21 2 17 14 21

Wenn man diese Funktion ins kartesische Koordinatensystem eintr¨agt, stellt man fest, dass die Verteilung der Funktionswerte chaotisch“ ist. ” e

Die Umkehrfunktion von fn l¨asst sich (beim derzeitigen Stand der Wissenschaft) im Gegensatz zu vielen uns bekannten Funktionen nicht arithmetisch oder algebraisch herleiten. Nat¨urlich ist die Umkehrfunktion berechenbar: Wir k¨onnen ein Programm schreiben (vergleiche oben: suchen des Teilnehmers zu einer gegebenen Telefonnummer), welches f¨ur einen (Funktions-) Wert y, 1 ≤ y < n, systee matisch alle x, 1 ≤ x < n, durchprobiert um festzustellen, ob fn (x) = y ist. Die Laufzeit eines solchen Programms ist aber beim gegenw¨artigen Kenntnisstand u¨ ber Algorithmen und bei der gegenw¨artig verf¨ugbaren Rechnertechnologie f¨ur sehr große n – und solche liegen bei realen Verschl¨usselungverfahren vor – so hoch, dass seine Verwendung praktisch nutzlos ist. Eine Verschl¨usselung muss allerdings einfach umkehrbar sein, denn der Empf¨anger m¨ochte sicherlich mit geringem zeitlichen Aufwand die an gerichtete Nachricht lesen k¨onnen. Man ben¨otigt sogenannte Hintert¨ur-Funktionen (englisch: Trap door function), das sind Einwegfunktionen, die prinzipiell schwer umkehrbar, aber mithilfe eines speziellen Parameters (der Hintert¨ur“) leicht umkehrbar sind. Diese Parameter ” sind in den in den folgenden Abschnitten betrachteten Verfahren gerade die privaten, geheim zu haltenden Schl¨ussel. Ein weiteres Beispiel f¨ur eine schwer invertierbare Funktion, welche beim RSAVerschl¨usselungsverfahren verwendet wird, ist die Multiplikation von Primzahlen. F¨ur diese Multiplikation gibt es sehr effiziente Verfahren. Die Umkehrfunktion, also die Zerlegung einer Zahl in ihre Primfaktoren, die sogenannte Faktorisierung, ist prinzipiell berechenbar, ben¨otigt allerdings f¨ur sehr große Zahlen bei heutigem Kenntnisstand u¨ ber Algorithmen und bei der derzeitig verf¨ugbaren Rechnertechnologie so viel Zeit, dass sie als praktisch nicht berechenbar gilt. In Kapitel 5.4 haben wir bereits festgestellt, dass die Berechnung des modularen diskreten Logarithmus ebenfalls sehr aufw¨andig sein kann. Auf Verschl¨usselungsverfahren, die sich diese Tatsache zu Nutzen machen, gehen wir in den Kapiteln 7.3 und 7.4 noch ein.

168

Das RSA-Verfahren

7.2

Das RSA-Verfahren

Wir wollen als erstes o¨ ffentliches Verschl¨usselungsverfahren das RSA-Verfahren einf¨uhrend betrachten.15 RSA-Verfahren werden heutzutage sehr verbreitet eingesetzt. Die urspr¨ungliche Idee des Verfahrens, welches mittlerweile in vielf¨altiger Weise weiterentwickelt worden ist, basiert auf der schweren Invertierbarkeit der beiden im vorigen Kapitel genannten Funktionen: modulare Potenz (mit großen Moduln) und Multiplikation von (großen) Primzahlen. Wir wollen an einem Beispiel, allerdings mit kleinem Modul und kleinen Primzahlen, da wir die Rechnungen mit Bleistift und Papier ausf¨uhren wollen, das Prinzip der RSAVerschl¨usselungsmethode erl¨autern. Beispiel 7.1 Wir w¨ahlen als Modul n = 22 und als Exponent e = 3. Der Exponent wird hier mit e (f¨ur encrypt“) bezeichnet, da er der Schl¨ussel zur Ver” schl¨usselung einer Nachricht ist. Den zu verschl¨ 2 repr¨asentie1 usselnden Klartext ren wir als Folge von Zahlen kleiner n: m = m1 , m2 , . . . , mq , 1 ≤ mk < n, 1 ≤ k ≤ q, (m steht f¨ur message“). In unserem Beispiel sei der Klartext ” m =  3, 7, 2, 17, 3, 4  Jede Zahl mk (jeder Buchstabe) des Klartextes wird modular mit dem Schl¨ussel e potenziert: e

ck = E(mk ) = mk (n) Es ergibt sich der Geheimtext (c steht f¨ur cipher text“): ” 2 1 c = c1 , c2 , . . . , cq 3

In unserem Beispiel ist also ck = E(mk ) = mk (22). Damit ergibt sich z.B. f¨ur die ersten beiden Buchstaben 3 und 7 unserer Beispielnachricht m 3

E(3) = 3 = 27 = 5 (22) bzw.

3

E(7) = 7 = 49 · 7 = 5 · 7 = 35 = 13 (22) Durch weiteres Ausrechnen ergibt sich f¨ur m die Verschl¨usselung c =  5, 13, 8, 7, 5, 20  Der Empf¨anger der verschl¨usselten Nachricht c benutzt nun einen von e verschiedenen Schl¨ussel d (f¨ur decrypt“) und als Entschl¨usselungsfunktion ebenfalls die ” modulare Potenz: d

D(ck ) = ck (n) 15 RSA steht f¨ur die Anfangsbuchstaben der Namen der Erfinder dieses Verfahrens: R.L. Rivest, A. Shamir und L.M. Adleman.

Asymmetrische Verschl¨usselung

Wie wir sp¨ater allgemein zeigen werden, gilt tats¨achlich mk = D(ck ) und damit insgesamt D(E(m)) = m f¨ur geeignete e, d und n. Wenn wir f¨ur unsere Beispielverschl¨usselung d = 7 w¨ahlen und die beiden ersten Buchstaben des verschl¨usselten Textes entschl¨usseln, ergibt sich 7

D(5) = 5 = 25 · 25 · 25 · 5 = 3 · 3 · 3 · 5 = 27 · 5 = 5 · 5 = 25 = 3 (22) sowie 7

D(13) = 13 = 169 · 169 · 169 · 13 = 15 · 15 · 15 · 13 = 225 · 195 = 5 · 19 = 7 (22) Insgesamt erhalten wir f¨ur unseren Geheimtext c =  5, 13, 8, 7, 5, 20  durch weiteres Ausrechnen D(c) =  3, 7, 2, 17, 3, 4  = m und damit die Klartextnachricht zur¨uck. 2 Ist dies Zauberei? Nach welchen Prinzipien funktioniert diese Ver- und Entschl¨usselung? Wie findet man geeignete e, d und n? Mit der Beantwortung dieser Fragen besch¨aftigen wir uns im Folgenden, und wir werden sehen, dass wir dabei einige Kenntnisse aus den Kapiteln u¨ ber algebraische Strukturen und Zahlentheorie verwenden k¨onnen. Das RSA-Verfahren ist ein Beispiel f¨ur ein asymmetrisches, o¨ ffentliches Verschl¨usselungsverfahren:16 •



Asymmetrisch deshalb, weil zum Verschl¨usseln und zum Entschl¨usseln verschiedene Schl¨ussel e und d verwendet werden mit der Eigenschaft, dass aus der Kenntnis von e der Schl¨ussel d nur mit sehr großem Aufwand ermittelt werden kann. ¨ Offentlich deshalb, weil der Schl¨ussel eB zur Verschl¨usselung von Nachrichten an einen Empf¨anger B o¨ ffentlich bekannt ist, d.h. jeder, der an B eine Nachricht sendet, muss den Schl¨ussel eB , der z.B. in einem o¨ ffentlichen Schl¨usselbuch“ (vergleiche: o¨ ffentliches Telefonbuch) hinterlegt sein kann, ” ¨ kennen. Offentlich bekannt ist zudem das Verschl¨usselungsverfahren: modulare Potenz mit einem passenden Modul n. Insgesamt ist die Verschl¨usselung an den Empf¨anger B durch das Paar (eB , n) festgelegt und o¨ ffentlich bekannt.



Der Schl¨ussel dB zur Entschl¨usselung einer mit eB verschl¨usselten Nachricht ist geheim, d.h. nur B bekannt. B kennt das Entsch¨usselungsverfahren, ebenfalls die modulare Potenz, und seinen Schl¨ussel dB , was durch das Paar (dB , n) bezeichnet werden kann.



Ein Austausch von Schl¨usseln ist im Gegensatz zu symmetrischen Verfahren nicht notwendig.

16 Ein Modell f¨ur das RSA-Verfahren ist das folgende Kofferspiel“: Jeder Teilnehmer B ” stellt einen Koffer KB zur Verf¨ugung, zu dem nur er einen Schl¨ussel b hat. Ein Teilnehmer A kann nun in den Koffer von B eine Nachricht legen, den Koffer schließen und an B senden. Dieser – und nur dieser – kann den Koffer mit seinem Schl¨ussel b o¨ ffnen.

169

170

Das RSA-Verfahren



Obwohl das Verschl¨usselungsverfahren, die modulare Potenz, und o¨ ffentlicher Schl¨ussel bekannt sind, kann ein Angreifer aus deren Kenntnis praktisch nicht den geheimen Schl¨ussel, der zur Entschl¨usselung notwendig ist, ermitteln. Theoretisch ist dies zwar m¨oglich, aber selbst mithilfe der heute bekannten Algorithmen-Theorie und der in absehbarer Zeit existierenden schnellsten Rechenanlagen w¨urde die Berechnung zu lange brauchen (je nach L¨ange der gew¨ahlten Schl¨ussel l¨anger, als das Universum alt ist).

Wir wollen uns nun mit den mathematischen Prinzipien des RSA-Verfahrens besch¨aftigen. Es muss gelten: e

e d

D(E(m)) = D(m ) = (m ) = m

e·d

=m=m

Die Frage ist also, wie sind e und d zu bestimmen, damit m

1

e·d

(7.1) 1

= m ist.

Dazu erinnern wir uns an den Satz von Euler (Satz 3.8): Ist (n, m) = 1, dann gilt ϕ(n) m = 1 (n) und damit m

q·ϕ(n)+1

= m, f¨ur alle q ∈ N0

(7.2)

Wir setzen die Gleichungen (7.1) und (7.2) gleich und erhalten m

e·d

=m

q·ϕ(n)+1

Daraus folgt, dass es eine Zahl q ∈ N0 gibt mit e · d = q · ϕ(n) + 1 und damit gilt e · d = 1 (ϕ(n)) Wir m¨ussen also modulo ϕ(n) zueinander inverse d und e bestimmen, damit e·d

D(E(m)) = m

=m

q·ϕ(n)+1

=m

gilt. Dabei gilt die Voraussetzung (m, n) = 1. F¨ur solche Schl¨ussel e und d arbeitet das RSA-Verfahren also korrekt. In folgendem Satz formulieren wir dieses Ergebnis und verallgemeinern es, indem wir auf die Voraussetzung (n, m) = 1 verzichten. Satz 7.1 Sei n = p · q mit p, q ∈ P, p = q sowie e eine Zahl mit (ϕ(n), e) = 1. Dann gelten f¨ur die beiden Abbildungen e

E : Zn → Zn definiert durch E(m) = m (n) d

D : Zn → Zn definiert durch D(m) = m (n) mit e · d = 1 (ϕ(n))

Asymmetrische Verschl¨usselung

171

die Gleichungen E(D(m)) = D(E(m)) = m f¨ur alle m ∈ Zn Beweis Wir m¨ussen zeigen, dass E ◦ D = D ◦ E = idZn, d.h. dass m = m f¨ur alle m ∈ Zn ist. ed

¨ Diese Behauptung gilt – und diesen Fall haben wir gerade bei den Uberlegungen vor dem Satz betrachtet – f¨ur den Fall, dass (n, m) = 1 ist (entspricht der Voraussetzung des Satzes von Euler). Wir m¨ussen also die G¨ultigkeit der Behauptung noch f¨ur den Fall zeigen, dass m und n nicht teilerfremd sind. Sei also (n, m) > 1. Da n = pq und 0 < m < n ist, gilt entweder (n, m) = p oder (n, m) = q. Wir betrachten den Fall (n, m) = p, die Argumentation f¨ur den anderen Fall l¨auft analog. Sei also (n, m) = p. Wir u¨ berlegen, dass dann (m, q) = 1 sein muss. Denn, wenn (m, q) = 1 w¨are, muss (m, q) = q sein, da q ∈ P ist. Damit h¨atten wir q|m sowie wegen der Voraussetzung (n, m) = p auch p|m. Damit folgt mit Korollar 1.18 b) [ p, q ] | m und damit, da (p, q) = 1 ist, mit Korollar 1.20 pq|m, also n|m und damit m ≥ n, ein Widersrpuch zur Voraussetzung 0 < m < n. Also ist (m, q) = 1. Daraus folgt mit dem Kleinen Satz von Fermat (siehe Koq−1 rollar 3.10) m = 1 (q) und daraus  m

q−1

p−1 =m

und damit wegen Korollar 5.1 c) m m

ϕ(n)

(q−1)(p−1)

= 1 (q)

= 1 (q). Es folgt, dass

ϕ(n)·t+1

= m (q)

(7.3)

f¨ur alle t ∈ N0 gilt. Die Voraussetzung ed = 1 (ϕ(n)) bedeutet, dass es ein te,d ∈ N0 gibt mit ed = ϕ(n) · te,d + 1. Hiermit folgt aus (7.3) ed

(7.4)

m = m (q) Da (n, m) = p ist, ist p|m, also m = 0 (p) und damit ed

(7.5)

m = 0 = m (p) Aus (7.4) und (7.5) ergibt sich, dass ed

ed

q|m − m bzw. p|m − m ist. Es folgt mit Korollar 1.18 b) [ p, q ] | m − m und damit wegen Korollar ed ed 1.20 pq|m − m und damit n|m − m. Diese Eigenschaft bedeutet aber, dass ed 2 m = m (n) gilt, was zu zeigen war. ed

172

Das RSA-Verfahren

RSA-Verschl¨ usselungsverfahren Der Satz 7.1 ist die Grundlage f¨ur das RSA-Verschl¨usselungsverfahren. Wir betrachten den Fall, dass Absenderin Alice (A) eine verschl¨usselte Nachricht an Empf¨anger Bob (B) senden m¨ochte: 1. B w¨ahlt zwei voneinander verschiedene sehr große (z.B. 500-stellige) Primzahlen p und q, berechnet ihr Produkt n = pq und die Ordnung ϕ(n) = ∗ (p − 1)(q − 1) der Einheitengruppe Zn. 2. B w¨ahlt eine zu ϕ(n) teilerfremde Zahl e und berechnet dazu (mit dem erweiterten Euklidischen Algorithmus, siehe Abschnitt 1.3.3) das Inverse d modulo ϕ(n). B ver¨offentlicht (e, n) als seinen o¨ ffentlichen Schl¨ussel, und beh¨alt seinen privaten Schl¨ussel (d, n) sowie p, q und ϕ(n) geheim (p, q und ϕ(n) werden am besten vernichtet). 3. A will einen Klartext m an B senden, der aus einer Folge von Zahlen mi e mit 0 < mi < n besteht. A verschl¨usselt m zu c, indem sie ci = mi (n) berechnet und den Ciphertext an B sendet. d

4. B entschl¨usselt c, indem er mi = ci (n) rechnet und damit den Klartext m zur¨uckerh¨alt. Beispiel 7.2 Wir f¨uhren das Verfahren beispielhaft durch, verwenden aber nur sehr kleine Zahlen, da wir mit Bleistift und Papier rechnen wollen 1. B w¨ahlt p = 5 und q = 11 und berechnet damit n = 5 · 11 = 55 sowie ϕ(55) = 4 · 10 = 40. 2. B w¨ahlt als o¨ ffentlichen Schl¨ussel e = 3, teilerfremd zu ϕ(55) = 40. B berechnet seinen geheimen Schl¨ussel: Das Inverse d von e ergibt sich aus der Gleichung 3 · d = 1 (40). Es ist d = 27 (Probe: 3 · 27 = 81 = 1 (40)). 3. A will die Klartext-Nachricht m = 5 an B senden. A verschl¨usselt dazu m mit B’s o¨ ffentlichem Schl¨ussel: 3

c = 5 = 125 = 15 (55) und sendet c an B. 4. B entschl¨usselt c mit seinem geheimen Schl¨ussel: 27

2 13

13

3 4

4

15 = 15 · (15 ) = 15 · 5 = 15 · 5 · (5 ) = 15 · 5 · 15 = 15 · 15 = 5 (55) B erh¨alt also den Klartext zur¨uck.

2

¨ Wir wollen noch eine Uberlegung zur H¨aufigkeit von w¨ahlbaren Schl¨usseln an¨ stellen (siehe auch Ubung 1.9). Sei n = p · q f¨ur p, q ∈ P mit p = q. Dann gilt ϕ(n) = (p − 1) · (q − 1), d.h. es gibt (p − 1)(q − 1) zu n teilerfremde Zahlen e mit 1 ≤ e ≤ n. Wir berechen die Anzahl der nicht teilerfremden Zahlen: n − (p − 1)(q − 1) = pq − pq + p + q − 1 = p + q − 1

Asymmetrische Verschl¨usselung

173

Ist also n das Produkt zweier verschiedener Primzahlen, n = p · q, dann trifft der Satz von Euler zwar nicht auf alle n = p · q Elemente zu, aber auf die meisten“, ” denn es ist: (p − 1)(q − 1)  p + q − 1 (wir benutzen das Vergleichssymbol  f¨ur deutlich gr¨oßer“, ohne seine Bedeutung exakt zu definieren) f¨ur große ” Primzahlen p und q. Des Weiteren wollen wir noch beispielhaft u¨ berlegen, wie viele hinreichend große Primzahlen es gibt. Es gibt z.B. 501

500

π(10 ) − π(10 ) Primzahlen mit 500 Stellen. Nach dem Primzahlsatz (Satz 1.11) ist π(x) ≈ So ergibt sich 501

500

501

x . log x

500

10 10 10 10 − ≈ − 1665 1661 log 10501 log 10500

=

10

500

· (16 610 − 1 665) 2 765 565

500

>

10 · 14 000 2 800 000 498

= 0.5 · 10 498

Es stehen also ungef¨ahr 0.5 · 10 , jedenfalls hinreichend viele 500-stellige Primzahlen zur Verf¨ugung.

¨ Uberlegungen zur Sicherheit der RSA-Verschl¨ usselung und zur Schl¨ usselgenerierung Die Sicherheit des RSA-Verfahrens ist durch die Schwierigkeit begr¨undet, aus dem o¨ ffentlichen Schl¨ussel (e, n) den zum Entschl¨usseln notwendigen Exponenten d zu berechnen. Theoretisch ist dieses Problem l¨osbar: Man zerlege n in seine Primfaktoren p und q und berechne damit d gem¨aß den Schritten 1 und 2 des Verfahrens. Die praktische Schwierigkeit liegt jedoch in der Prim-Faktorisierung von n. Beim derzeitigen Stand der Algorithmentheorie und der Rechnertechnik ben¨otigt die Faktorisierung einer z.B. 1 000-stelligen Zahl sehr viel Aufwand (Hadware, Software, Personen, Zeit). Sollte die Schl¨ussell¨ange nicht ausreichen, weil durch schnellere Hardware oder durch Vernetzung von vielen Rechnern in vertretbarer Zeit n faktorisiert werden konnte, dann wird einfach“ ein gr¨oßeres ” n, sprich gr¨oßere p und q gew¨ahlt. Ob das Faktorisierungsproblem ein schwieriges Problem ist, welches prinzipiell (praktisch) nicht l¨osbar ist, ist weiterhin offen. Prinzipiell bessere Faktorisierungs-Algorithmen sind m¨oglich auf anderer Rechnertechnologie (DNA-Computer, Quantencomputer), die zwar noch nicht verf¨ugbar ist, u¨ ber die aber intensiv geforscht wird.

174

Das RSA-Verfahren

Neben der Faktorisierung gibt es noch andere Angriffsm¨oglichkeiten, wie z.B. ein Known plaintext-Angriff der folgenden Art: Der Angreifer err¨at den Klartext aus einem vorliegenden Ciphertext, oder er findet ihn durch Probieren heraus. Hat er z.B. eine verschl¨usselte vierstellige PIN-Nummer c vorliegen, dann kann 4 er mit dem o¨ ffentlichen Schl¨ussel alle 10 m¨oglichen vierstelligen Nummern, das sind alle m¨oglichen Klartexte, verschl¨usseln und die jeweils entstehenden Verschl¨usselungen mit c vergleichen. Einen solchen Angriff kann man erschweren, indem man kurzen Klartexten zuf¨allig weiteren Text hinzuf¨ugt. Also die vierstelligen Nummern durch zuf¨allig erzeugte Ziffern auf etwa die L¨ange 50 erg¨anzt. Dann m¨usste der Angreifer im Mittel 0.5 · 1050 M¨oglichkeiten testen und zudem noch wissen, an welchen Stellen in der langen Folge die vier Ziffern der PIN-Nummer versteckt sind. Wir wollen noch eine eine Angriffsm¨oglichkeit betrachten: die Geheimhaltung des Entschl¨usselungsschl¨ussels d. Dies ist in der Regel eine sehr große Zahl (in der Gr¨oßenordnung von n), die man wohl schwerlich im Ged¨achtnis behalten kann und deren Eingabe wohl sehr lange dauern w¨urde und mit vielen Fehlerm¨oglichkeiten behaftet w¨are. Deshalb wird sie elektronisch auf Chipkarten gespeichert, womit sie allerdings weiteren Angriffen ausgesetzt ist. Um diese zu erschweren, k¨onnte man d selbst auf der Chipkarte verschl¨usseln und zwar mit einem viel k¨urzeren Schl¨ussel (Passwort). Dieser w¨are aber m¨oglicherweise leichter zu knacken.

Generierung von Primzahlen 500-stellige Primzahlen kann man wie folgt – mit sehr großer Wahrscheinlichkeit – effizient bestimmen: Man w¨ahlt zuf¨allig eine 500-stellige Zahl x und bestimmt die kleinste Primzahl p gr¨oßer gleich dieser Zahl. Nach dem Primzahlsatz (Satz 1.11) betr¨agt die Wahrscheinlichkeit, in der Gr¨oßenordnung von x eine Primzahl 1 1 zu finden, ungef¨ahr gleich log 10 500 , also etwa 1 600 . Da Primzahlen ungerade sind, muss man also im Schnitt etwa 800 Zahlen auf Primalit¨at testen, um eine 500stellige Primzahl zu erhalten. Zum Test auf Primalit¨at teilt man einen Kandidaten zun¨achst durch kleine Primzahlen (etwa durch die Primzahlen kleiner 100 000 – das sind π(100 000) = 9 592 Zahlen –, die man fest gespeichert hat) und f¨uhrt dann, wenn der Kandidat durch diese Zahlen nicht teilbar ist, den Miller-RabinTest durch (siehe Kapitel 6.6).

Verwendung der RSA-Verschl¨ usselung RSA wird eher bei der Verschl¨usselung kurzer Klartexte eingesetzt, z.B. beim Schl¨usselmanagement: Ver- und Entschl¨usselung von Klar- bzw. Geheimtexten geschieht mit konventionellen symmetrischen Verfahren (wie z.B. DES, AES und IDEA); die dazu notwendigen vielen Austausche der vergleichsweise kurzen Schl¨ussel geschehen mit asymmetrischen Verfahren, z.B. mit dem RSA-

Asymmetrische Verschl¨usselung

175

Verfahren. Man spricht dann von hybrider Verschl¨usselung. Hierauf kommen wir am Ende von Kapitel 7.5 noch zur¨uck.

7.3

¨ Der Diffie-Hellman-Schlusselaustausch

Das Diffie-Hellman-Verfahren ist kein Public key-Verschl¨usselungsverfahren, sondern ein Verfahren, um eine geheime Schl¨usselvereinbarung zu realisieren, ohne dabei den gemeinsamen Schl¨ussel selbst auszutauschen. Es geht darum, dass Alice und Bob, bevor sie sich mit einem symmetrischen Verfahren Nachrichten zusenden, die dazu notwendigen Schl¨ussel sicher austauschen m¨ussen. Die Sicherheit des Diffie-Hellman-Verfahrens basiert nicht auf der Schwierigkeit des Faktorisierungsproblems, wie das RSA-Verfahren, sondern auf dem DiskreteLogarithmus-Problem, welches wir bereits am Ende von Kapitel 5.4 betrachtet haben. Das Verfahren l¨auft in folgenden Schritten ab: 1. A und B vereinbaren eine Primzahl p und eine Primitivwurzel b modulo p, 2 ≤ b ≤ p − 2. p und b brauchen nicht geheimgehalten werden. 2. A w¨ahlt zuf¨allig eine Zahl x ∈ { 1, 2, . . . , p − 2 }, berechnet damit die Zahl x X = b (p) und sendet diese an B. y B w¨ahlt zuf¨allig eine Zahl y ∈ { 1, 2, . . . , p−2 }, berechnet damit Y = b (p) und sendet dieses Y an A. x

xy

y

xy

3. A berechnet Y = b (p) und B berechnet X = b (p). Ihr gemeinsamer xy Schl¨ussel ist K = b (p). Beispiel 7.3 Wir f¨uhren die Schritte dieses Verfahrens mit kleinen Zahlen durch, um wieder mit Bleistift und Papier rechnen zu k¨onnen. 1. A und B vereinbaren p = 7 und b = 3 (3 ist eine Primitivwurzel modulo 7, siehe Beispiel 5.4). 4

2. A w¨ahlt x = 4, berechnet X = 3 = 4 (7) und sendet diese Zahl an B. 2 B w¨ahlt y = 2, berechnet Y = 3 = 2 (7) und sendet diese Zahl an A. 4

2

3. A berechnet 2 = 2 (7) und B berechnet 4 = 2 (7). Ihr gemeinsamer 4·2 2 Schl¨ussel ist K = 3 = 2 (7). Ein Angreifer kann durch Lauschangriff p, b, X und Y feststellen. Er ben¨otigt xy aber den Schl¨ussel K = b (p). Dieses Problem ist das Diffie-Hellman-Problem. Es kann durch L¨osung des Diskrete-Logarithmus-Problems, dessen prinzipielle Schwierigkeit wir in Kapitel 5.4 betrachtet haben, gel¨ost werden: Bestimmung der diskreten Logarithmen x von X oder y von X zur Basis b modulo p. Die L¨osung des Diskrete-Logarithmus-Problems ist die bisher einzige allgemein verwendbare Methode, um das Diffie-Hellman-Problem zu l¨osen. Es ist aber bis-

Diffie-HellmanProblem

176

Das ElGamal-Verfahren

her nicht sicher, ob dies prinzipiell die einzige Methode zur L¨osung des DiffieHellman-Problems ist. Solange also die L¨osung des Diffie-Hellman-Problems schwierig ist, ist das Diffie-Hellman-Verfahren ein sicheres Verfahren f¨ur den Schl¨usselaustausch.

7.4

Das ElGamal-Verfahren

W¨ahrend das Diffie-Hellman-Verfahren ein Verfahren zum geheimen Schl¨usselaustausch ist, verwendet das ElGamal-Verfahren die dem Diffie-Hellman-Verfahren zugrunde liegende Idee zur Verschl¨usselung von Nachrichten: 1. A w¨ahlt zun¨achst eine Primzahl p und eine Primitivwurzel b modulo p mit p−1 2 ≤ b ≤ p − 2. Es ist also b = 1 (p). Anschließend w¨ahlt sie zuf¨allig x ∈ { 1, 2, . . . , p − 2 } und berechnet damit x

(7.6)

X = b (p)

Das Tripel (p, b, X) bildet A’s o¨ ffentlichen Schl¨ussel, und x ist ihr geheimer Schl¨ussel. 2. Um eine Nachricht verschl¨usselt an A zu senden, besorgt sich B den o¨ ffentlichen Schl¨ussel (p, b, X) von A, w¨ahlt zuf¨allig y ∈ { 1, 2, . . . , p − 2 } und berechnet damit y

(7.7)

Y = b (p) 3. B verschl¨usselt den Klartext m ∈ { 0, 1, . . . , p − 1 } zum Ciphertext y

c = X · m (p)

(7.8)

und sendet das Paar (Y, c) an A. 4. A berechnet Y · c (p) mit d = p − 1 − x und erh¨alt damit den Klartext m zur¨uck, denn es gilt: d

d

Y ·c=b

y(p−1−x)

= (b

p−1 y

y

·X ·m x −y

) (b )

−y

y

=X ·X ·m = m (p)

mit (7.7) und (7.8) y

·X ·m mit (7.6)

Beispiel 7.4 Auch dieses Beispiel f¨uhren wir mit kleinen Zahlen durch, um wieder mit Bleistift und Papier rechnen zu k¨onnen. 1. A w¨ahlt p = 7, b = 3 (3 ist eine Primitivwurzel modulo 7, siehe Beispiel 2 5.4) sowie x = 2 und berechnet damit X = 3 = 2 (7). Das Tripel (7, 3, 2) bildet A’s o¨ ffentlichen Schl¨ussel, und x = 2 ist ihr geheimer Schl¨ussel.

Asymmetrische Verschl¨usselung

177

4

2. B w¨ahlt y = 4 und berechnet Y = 3 = 4 (7). 4

3. B verschl¨usselt den Klartext m = 6 zum Ciphertext c = 2 · 6 = 5 (7) und sendet das Paar (4, 5) an A. 4

4. A berechnet d = 7 − 1 − 2 = 4 und erh¨alt mit 4 · 5 = 6 (7) den Klartext zur¨uck. 2 Bob sollte bei jeder neuen verschl¨usselten Nachricht an Alice ein neues y w¨ahlen. Denn, nehmen wir an, er w¨ahlt f¨ur die Verschl¨usselung der Nachrichten m und m dasselbe y, dann sind die entsprechenden Ciphertexte c = X · m (p) sowie c = X · m (p) y

−1

y

−1

und es gilt c · c = m · m (p). Ist einem Angreifer der Klartext m bekannt, kann er m berechnen, denn es gilt m = c · c

7.5

−1

· m (p)

Signaturen

Neben der Geheimhaltung von Nachrichten zur Vermeidung von Lauschangriffen spielt das Signieren von Dokumenten eine wichtige Rolle. Wenn Alice ein Dokument an Bob handschriftlich signiert, kann Bob, sofern er Alices Unterschrift kennt, verifizieren, dass das Dokument tats¨achlich von Alice stammt. Außerdem kann Alice nicht bestreiten, dass das Dokument von ihr unterschrieben wurde. Beide Aspekte, die Authentizit¨at von Nachrichten und Dokumenten sowie die Verbindlichkeit von Nachrichten und Dokumenten spielen z.B. im elektronischen Gesch¨aftsverkehr eine wichtige Rolle. In diesem Abschnitt betrachten wir einf¨uhrend nur einen Ansatz f¨ur elektronische Signaturen. Eine detailliertere Besch¨aftigung mit diesem Thema erfordert die Kenntnis weiterer mathematischer Hilfsmittel, auf die wir im Rahmen dieses Buches nicht eingehen. So kann man mithilfe des RSA-Verschl¨usselungsverfahrens elektronische Signaturen realisieren, indem man die Rollen des o¨ ffentlichen und des geheimen Schl¨ussels vertauscht: Alice besitze den o¨ ffentlichen RSA-Schl¨ussel (n, e) und den geheimen Schl¨ussel (n, d). Sie signiert ein Dokument m an Bob – oder an jemand anderen –, indem sie die RSA-Entschl¨usselung auf m anwendet, also d s = m (n) berechnet, und das Dokument und die Signatur (m, s) an Bob sendet. Bob oder ein anderer Adressat wendet auf die Signatur s das RSA-Verschl¨ussee lungsverfahren mit Alices o¨ ffentlichem Schl¨ussel an und berechnet s = m (n)  und vergleicht das Ergebnis mit m. Ist m = m, dann ist die Signatur verifiziert, denn nur Alice kennt den geheimen Schl¨ussel d, der zum o¨ ffentlichen Schl¨ussel

178

Signaturen

e passt. Solange das RSA-Verschl¨usselungsverfahren als sicher gilt, kann Bob sicher sein, dass niemand anders als Alice zur Nachricht m die Signatur s berechnet hat. Voraussetzung ist, dass Alices o¨ ffentlicher Schl¨ussel authentisch ist. Ein Nachteil dieses Verfahrens ist, dass die Unterschrift s so groß wie der Klartext m wird. Das kann, z.B. wenn m Bilder oder Videos enth¨alt, zu Effizienzver¨ lusten (Ubertragungszeit, Speicherplatz) f¨uhren. Dies l¨asst sich mit so genannten kollisionsresistenten Hashfunktionen, die zudem Einwegfunktionen sein ∗ m¨ussen, vermeiden. Solche Funktionen sind von der Art h : Σ → { 0, 1, . . . , n− 1 }, wobei Σ das Klartextalphabet ist (z.B. Σ = { 0, 1 }, wenn die Klartexte ∗ Bitfolgen sind). In der Regel gilt f¨ur die Menge L ⊂ Σ der Nachrichten, die u¨ bertragen werden, |L|  n, d.h. die Menge der potenziellen Nachrichten ist wesentlich gr¨oßer als die m¨oglichen Werte von h. Da h total sein muss, kann h nicht injektiv sein. Deshalb muss daf¨ur gesorgt werden, dass h mit sehr großer Wahrscheinlichkeit keine Kollisionen hat, d.h. dass f¨ur tats¨achlich auftretende verschiedene Nachrichten deren Hashwerte verschieden sind: F¨ur Nachrichten m und m mit m = m muss also gelten (mit sehr hoher Wahrscheinlichkeit): h(m) = h(m ). Es gibt international standardisierte Message Dienste, z.B. MD5 (Message Digest Version 5) und SHA-1 (Secure Hash Algorithm Version1), deren Funktionen von jedermann benutzt werden k¨onnen. MD5 erzeugt aus beliebig langen Texten (Bitfolgen) einen Hashwert aus 128 Bits, SHA-1 erzeugt Werte aus 160 Bits. Außer der Komprimierung der Signatur wollen wir nat¨urlich auch wieder die Vertraulichkeit der Nachrichten durch Verschl¨usselung garantieren. Insgesamt haben wir die folgende – wieder am Beispiel von Alice und Bob geschilderte – Prozedur der Nachrichten¨ubermittlung oder -speicherung zur Sicherung von Vertraulichkeit, Authentizit¨at und Verbindlichkeit: 1. Alice habe den o¨ ffentlichen Schl¨ussel (nA , eA ) und den geheimen Schl¨ussel (nA , dA ). Bob habe den o¨ ffentlichen Schl¨ussel (nB , eB ), und (nB , dB ) sei sein geheimer Schl¨ussel. Der Ablauf beim Versenden eines verschl¨usselten, signierten Dokuments m von Alice an Bob ist wie folgt: 2. Alice erzeugt den Ciphertext c = meB (nB ) mit Bobs o¨ ffentlichem Schl¨ussel gem¨aß dem RSA-Verschl¨usselungsverfahren. 3. Des Weiteren erzeugt sie eine Signatur zum Hashwert h(m) ihres Dokumentes m mit ihrem geheimen Schl¨ussel gem¨aß dem RSA-Signaturverfahren: s = h(m)dA (nA ) 4. Sie versendet den Ciphertext und die Signatur des Hashwertes (c, s) an Bob.

Asymmetrische Verschl¨usselung

179

5. Bob entschl¨usselt den Ciphertext mit seinem geheimen Schl¨ussel gem¨aß dem RSA-Verschl¨usselungsverfahren: cdB = m (nB )

(7.9)

6. Bob verifiziert die Signatur mit dem o¨ ffentlichen Schl¨ussel von Alice und berechnet zun¨achst seA = m (nA )

(7.10)

7. Bob testet, ob die Ergebnisse von Entschl¨usselung (7.9) und von Verifikation (7.10) u¨ bereinstimmen, d.h. ob h(m) = m ist (h ist Bob bekannt). Falls ja, kann er sicher sein, dass das Dokument authentisch und verbindlich ist, d.h. von Alice stammt. Analog zu dem hier Beschriebenen kann man Signaturverfahren auch mit anderen Verschl¨usselungsverfahren, z.B. mit dem im vorigen Kapitel beschriebenen ElGamal-Verfahren realisieren. Darauf wollen wir nicht weiter eingehen. Es sei noch bemerkt, dass die in der Praxis verwendeten Verfahren weitgehender und vielf¨altiger sind als die oben geschilderte Prozedur, die nur die wesentlichen Prinzipien aufzeigen soll. So k¨onnen zur Verschl¨usselung der Nachricht und zur Erzeugung der Signatur unterschiedliche Verfahren verwendet werden und nicht wie im Beispiel f¨ur beides dasselbe Verfahren. Des Weiteren hatten wir weiter oben schon bemerkt, dass die asymmetrische Verschl¨usselung im Vergleich zu symmetrischen Verfahren sehr ineffizient sein kann (bei langen Nachrichten) und dass man dann die Nachrichten symmetrisch verschl¨usselt und die Schl¨ussel mit einem asymmetrischen Verfahren austauscht. Außerdem kann es ebenfalls aus Effizienzgr¨unden sinnvoll sein, Nachrichten und m¨oglicherweise auch Unterschriften mit Kompressionsverfahren zu verk¨urzen. Ohne konkrete Verfahren anzugeben, k¨onnte das Schema einer solchen Verschl¨usselung einer Nachricht von Alice an Bob wie folgt aussehen: c = (ASYM1 (pubKB , randK), SYM(randK, COMP(m, ASYM2 (privKA , H(m))))) Dabei sind ASYM1 und ASYM2 asymmetrische (Public key-) Verschl¨usselungsbzw. Signaturverfahren, SYM ein symmetrisches Verfahren und randK ein zuf¨allig generierter Schl¨ussel f¨ur das symmetrische Verfahren. COMP ist das Kompressionsverfahren und H die Hashfunktion. pubKB ist Bobs o¨ ffentlicher Schl¨ussel f¨ur das Verschl¨usselungsverfahren ASYM1 , und privKA ist Alices privater Schl¨ussel f¨ur das Signaturverfahren ASYM2 . m ist wie immer die eigentliche“ ” Nachricht. Der endg¨ultig u¨ bermittelte Ciphertext c besteht aus zwei Teilen: 1. ASYM1 (pubKB , randK): Der f¨ur das symmetrischen Verfahren SYM (zuf¨allig generierte) Schl¨ussel randK wird mit Bobs o¨ ffentlichem (Verschl¨usselungs-) Schl¨ussel pubKB mit dem asymmetrischen Verfahren ASYM1 verschl¨usselt.

180

Signaturen

2. SYM(randK, COMP(m, ASYM2 (privKA , H(m)))): Der Hashwert H(m) wird mit Alices geheimem Schl¨ussel privKA mit dem asymmetrischen Verfahren ASYM2 signiert. Die Signatur wird an die Nachricht m angef¨ugt und beides zusammen mit dem Verfahren COMP komprimiert. Das Ergebnis wird mit einem zuf¨allig generierten Schl¨ussel randK mit dem symmetrischen Verfahren SYM verschl¨usselt. Ein Beispiel f¨ur eine Verschl¨usselungssoftware, die dieses Schema implementiert, ist das popul¨are Public domain-Verschl¨usselungsprogramm PGP (Pretty Good Privacy).

Anhang

181

A

Anhang

In diesem Anhang werden einige grundlegende Begriffe aufgelistet, die im Buch verwendet werden, ohne sie dort explizit u¨ ber Definitionen einzuf¨uhren.

A.1

Zahlenmengen

Folgende Bezeichnungen f¨ur Zahlenmengen werden verwendet: N = {1, 2, 3, . . .} N0 = {0, 1, 2, 3, . . .} Z = {. . . , −2, −1, 0, 1, 2, . . .} G = {. . . − 4, −2, 0, 2, 4, . . .} G+ = {0, 2, 4, . . .} G− = {−2, −4, −6, . . .} U = {. . . − 3, −1, 1, 3, . . .} U+ = {1, 3, 5, . . .} U− = {−1, −3, −5, . . .} & % p | p ∈ Z, q ∈ N Q= q R = Menge der reellen Zahlen +

R = {x ∈ R | x > 0}   2 C = a + bi | a, b ∈ R, i = −1

A.2

nat¨urliche Zahlen nat¨urliche Zahlen einschließlich 0 ganze Zahlen gerade Zahlen positive gerade Zahlen negative gerade Zahlen ungerade Zahlen positive ungerade Zahlen negative ungerade Zahlen rationale Zahlen

reelle Zahlen g¨oßer 0 komplexe Zahlen

Alphabete, W¨orter, Sprachen

Ein Alphabet ist eine endliche Menge von Symbolen, die im Allgemeinen mit Σ bezeichnet wird. Aus den Symbolen (Buchstaben) k¨onnen W¨orter gebildet ∗ ∗ werden. Die Menge aller W¨orter u¨ ber Σ wird mit Σ bezeichnet. Σ kann wie folgt rekursiv festgelegt werden: ∗

(1) Das leere Wort, welches wir mit ε bezeichnen, ist ein Wort u¨ ber Σ: ε ∈ Σ , ∗

(2) jeder Buchstabe aus Σ ist ein Wort: ist a ∈ Σ, dann ist auch a ∈ Σ , ∗

(3) werden zwei W¨orter aus Σ hintereinander geschrieben (konkateniert), dann ∗ ∗ ergibt sich wieder ein Wort: ist v, w ∈ Σ , dann ist auch v ◦ w = vw ∈ Σ ,

K.-U. Witt, Algebraische und zahlentheoretische Grundlagen für die Informatik, DOI 10.1007/978-3-658-04075-8, © Springer Fachmedien Wiesbaden 2014

Alphabet

Leeres Wort

182

Relationen und Funktionen



(4) Σ ist die kleinste Menge von endlichen Buchstabenfolgen, die mit den Regeln (1) – (3) gebildet werden k¨onnen. Es gilt z.B.: ∗



Ist Σ = ∅, dann ist Σ = {ε};



ist Σ = {a}, dann ist Σ = {ε, a, aa, aaa, . . .};









ist Σ = {a, b}, dann ist ∗

Σ = {ε, a, b, aa, ab, ba, bb, aaa, aab, aba, abb, baa, bab, bba, bbb, . . .} ∗

Eine Menge L ⊆ Σ heißt (formale) Sprache u¨ ber Σ. die Sprache   nn   2 2 L = ε, ab, a b , . . . = a b | n ∈ N0 enth¨alt besipielsweise alle W¨orter u¨ ber dem Alphabet Σ = {a, b}, deren W¨orten aus eine Folge von a’s gefolgt von einer gleich langen Folge von b’s bestehen.

A.3

Relationen und Funktionen

Sind A und B Mengen, dann heißt R ⊆ A × B = {(a, b) | a ∈ A, b ∈ B} eine Relation zwischen A und B; ist A = B, dann heißt R homogen und A Grundmenge von R. Anstelle von (a, b) ∈ R schreibt man auch aRb. Gilt f¨ur eine homogene Relation R ⊆ A × A, dass aRa gilt f¨ur alle a ∈ A, dann heißt R reflexiv. Folgt aus aRb, dass dann auch bRa gilt, dann heißt R symmetrisch. Folgt aus aRb und bRc, dass dann auch aRc gilt, dann heißt R transitiv. Eine ¨ reflexive, symmetrische und transitive Relation heißt Aquivalenzrelation. F¨ur ei¨ ne Aquivalenzrelation R u¨ ber der Grundmenge A heißt [ a ]R = {b ∈ A | aRb} ¨ Aquivalenzklasse von R mit dem Repr¨asentanten a. ¨ Eine Aquivalenzklasse ist niemals leer, denn wegen der Reflexivit¨at gilt a ∈ [ a ]R ¨ f¨ur alle a ∈ A, und eine Aquivalenzklasse ist unabh¨angig von ihrem Repr¨asentanten, denn f¨ur jedes b ∈ [ a ]R gilt [ a ]R = [ b ]R. Des Weiteren gilt f¨ur a, b ∈ A ¨ mit verschiedenen entweder [ a ]R = [ b ]R oder [ a ]R∩[ b ]R = ∅; Aquivalenzklassen Repr¨asentanten sind also entweder gleich oder disjunkt. Die Vereinigung aller ¨ ¨ Aquivalenzklassen ergibt die Grundmenge: a∈A [ a ]R = A. Eine Aquivalenzrelation partitioniert also die Grundmenge vollst¨andig in nicht leere, disjunkte ¨ Teilmengen, den Aquivalenzklassen. Umgekehrt legt jede vollst¨andige Partition ¨ einer Menge A in nichtleere, disjunkte Teilmengen eine Aquivalenrelation u¨ ber der Grundmenge A fest. Eine Relation R ⊆ A × B heißt rechtseindeutig genau dann, wenn aus aRb und aRc folgt, dass b = c ist. Rechtseindeutige Relationen heißen Funktionen oder Abbildungen. Funktionen werden im Allgemeinen mit f bezeichnet, und anstelle

Anhang

183

von f ⊆ A × B schreibt man f : A → B und anstelle von xf y schreibt man f (x) = y. x heißt Argument von f , y heißt Wert oder Bild von x unter f . Gibt es zu einem x ∈ A kein y ∈ B mit f (x) = y, dann ist f f¨ur das Argument x nicht definiert, was auch mit f (x) = ⊥ notiert wird. A heißt Ausgangsmenge und B Zielmenge von f . Die Menge Def (f ) = {x ∈ A | es existiert ein y ∈ B mit f (x) = y} heißt Definitionsbereich von f , und W (f ) = {y ∈ B | es existiert ein x ∈ A mit f (x) = y} heißt Wertebereich von f . F¨ur C ⊆ A heißt f (C) = {f (x) | x ∈ C} Bildmenge von C unter f , und −1 f¨ur D ⊆ B heißt f (D) = {x ∈ A | f (x) ∈ D} Urbildmenge von D unter f . Die Menge graph(f ) = {(x, y) ∈ A × B | f (x) = y} = Def (f ) × W (f ) heißt Graph von f . Sei f : A → B eine Funktion: Ist f¨ur alle x, y ∈ A mit x = y auch f (x) = y, dann heißt f injektiv oder auch linkseindeutig. Gilt Def (f ) = A, dann heißt f total, gilt W (f ) = B, dann heißt f surjektiv. Ist eine Funktion total, injektiv und surjektiv, dann heißt sie bijektiv oder auch eineindeutig. Zwei Mengen A und B heißen gleichm¨achtig genau dann, wenn eine bijektive Funktion f : A → B existiert; man schreibt dann |A| = |B|. Hat eine Menge A endlich viele Elemente, dann schreibt man |A| < ∞, hat sie n Elemente, so schreibt man |A| = n, hat sie unendlich viele Elemente, so schreibt man |A| = ∞. Die Menge P(A) = {M | M ⊆ A} aller Teilmengen von A heißt Potenzmenge A A von A. Eine andere Schreibweise f¨ur P(A) ist 2 . Mit B bezeichnet man die Menge aller totalen Funktionen von A nach B.

A.4

Spezielle Funktionen sowie Summen und Produkte

Die Funktion · : R → R definiert durch x = min {y ∈ Z | x ≤ y} heißt obere Gaussklammer, die Funktion · : R → R definiert durch

Obere Gaussklammer

x = max {y ∈ Z | y ≤ x} heißt untere Gaussklammer. Es gilt z.B. 2.3 = 3, −2.3 = −2, 3.7 = 3 und −3.7 = −4. Zur kompakten Beschreibung von Summen und Produkten benutzen wir die ! $ Symbole und : F¨ur reelle (komplexe) Zahlen ai und m, n ∈ Z mit m ≤ n

Untere Gaussklammer

184

Spezielle Funktionen, Summen und Produkte

gilt  n

ak = am + am+1 + am+2 + . . . + an

k=m





ak =

k=m





ak = am + am+1 + am+2 + . . .

k≥m

n

ak = am · am+1 · am+2 · . . . · an

k=m





ak =

k=m



ak = am · am+1 · am+2 · . . .

i≥m

Die endlichen Summen (analog Produkte) k¨onnen auch r¨uckw¨arts berechnet werden:  n

k=m

Indexverschiebung



n−m

ak =

an−k

k=0

Beim Rechnen mit solchen Summen und Produkten sind oft so genannte Indexverschiebungen hilfreich: Sei i ∈ N0 , dann gilt f¨ur Summen (analog f¨ur Produkte): 



n

n+i

ak =

k=m



k=m+i



ak =

k≥m

 n−i

ak−i =

ak−i =

k≥m+i

 k≥m−i

Speziell f¨ur i = m gilt  n

k≥m



n−m

ak =

k=m



ak+i

k=m−i

ak+m

k=0

ak =

 k≥0

ak+m

ak+i

Anhang

185

F¨ur n ∈ N heißt das Produkt der ersten n Zahlen 1 · 2 · . . . · (n − 1) · n =

Fakult¨at n 

k

k=1

Fakult¨at von n. Diese Funktion wird kurz mit n! notiert. Es ist sinnvoll, 0! = 1 zu setzen. Damit erh¨alt man folgende rekursive Definition der Fakult¨atsfunktion:  1, n=0 n! = (n − 1)! · n, n ≥ 1

A.5

Vektorr¨aume

Sei V eine additive abelsche Gruppe und K ein K¨orper sowie ∗ : K × V → V eine Verkn¨upfung, die folgende Eigenschaften erf¨ullt: 1∗x=x α ∗ (x + y) = α ∗ x + α ∗ y (α + β) ∗ x = α ∗ x + β ∗ y (α · β) ∗ x = α ∗ (β ∗ x)

f¨ur alle f¨ur alle f¨ur alle f¨ur alle

Vektorraum

x∈V x, y ∈ V, α ∈ K x ∈ V, α , β ∈ K x ∈ V, α , β ∈ K

Dann heißt V ein Vektorraum u¨ ber K. Sei K ein K¨orper. Dann bildet K f¨ur alle n ∈ N einen Vektorraum u¨ ber K, wenn n n die Addition x + y von x = (x1 , . . . , xn ) ∈ K und y = (y1 , . . . , yn ) ∈ K komponentenweise definiert ist durch n

x + y = (x1 + y1 , . . . , xn + yn ) und die skalare Multiplikation α ∗ x mit α ∈ K ebenfalls komponentenweise definiert ist durch α ∗ x = (α · x1 , . . . , α · xn ) Sei Sei A = {a1 , . . . , an } ⊆ V, dann bildet SpanA = {α1 a1 + . . . + αn an | αi ∈ K} einen Unterraum von V, den von A aufgespannten Unterraum. Sei B ⊆ V mit SpanB = V und gilt SpanB−{b} ⊂ V f¨ur alle b ∈ B, dann bildet B eine Basis f¨ur V. Sind B1 und B2 zwei endliche Basen f¨ur V, dann gilt |B1 | = |B2 |. Ist B eine Basis f¨ur V und |B| = n, dann heißt dim(V) = n die Dimension von V. Sei K ein K¨orper. Jede Menge von n Vektoren n

ei = (xi1 , . . . , xin ) ∈ K , 1 ≤ i ≤ n, n ≥ 1

Basis Dimension

186

Spezielle Funktionen, Summen und Produkte



definiert durch xij = 0 f¨ur 1 ≤ j ≤ n, j = i und xii ∈ K bildet eine Basis f¨ur n n n K . Es gilt also dim(K ) = n. F¨ur jeden Vektor y = (y1 , . . . yn ) ∈ K gibt es −1 Skalare αi = yi · xi ∈ K, 1 ≤ i ≤ n, mit  n

y = (y1 , . . . , yn ) =

i=1

αi ei

L¨osungen zu den Aufgaben

187

L¨osungen zu den Aufgaben Aufgabe 1.2 (1) Es gibt ein q mit a = m · q + b, und es gibt ein r mit m = k · r. Es folgt a = k · (r · q) + b, woraus die Behauptung a = b (k) folgt. (2) Es gibt ein q mit 2m = m · q + 2. Es folgt, dass q ∈ G+ sein muss, da 2m , 2 ∈ G+ und m ∈ U+ ist. Es gibt also ein r mit q = 2 · r. Damit erhalten wir 2m = 2m · r + 2, woraus die Behauptung 2m = 2 (2m) folgt. (3) Es gilt die binomische Formel  p p

p

(a + b) =

k

k

a b

p−k

(E.1)

k=0

Dabei gilt     p p = =1 0 p sowie

Wir betrachten

    p p = p = 0 (p) = p−1 1

(E.2)

(E.3)

  p f¨ur 2 ≤ k ≤ p − 2 k

Es gilt p−1     p p p−1 = = p · k−1 (E.4) k k k−1 k p−1  eine ganze Zahl. Da p prim ist, ist k Da kp eine ganze Zahl ist, ist auch kp k−1 p−1 kein Teiler von p f¨ur 2 ≤ k ≤ p − 2, d.h. k muss ein Teiler von k−1 sein. Sei also p−1 k−1

k Damit gilt mit (E.4)

=q

  p =p·q k  p woraus folgt, dass p| k gilt und damit kp = 0 (p) f¨ur 2 ≤ k ≤ p − 2. Deswegen sowie wegen (E.2) und (E.3) fallen in der Summe (E.1), wenn modulo p gerechnet wird, alle Summanden bis auf den ersten und letzten weg, womit die Behauptung gezeigt ist.

188

L¨osungen zu den Aufgaben

(4) F¨ur  = 2 gilt die Behauptung offensichtlich. Sei also  ≥ 3. Wir zeigen zun¨achst mit vollst¨andiger Induktion, dass es zu jedem  ≥ 3 ein b ∈ Z gibt mit p−3

(1 + ap)

= 1 + ap

−2

+ bp

−1

(E.5)

F¨ur  = 3 gilt die Behauptung offensichtlich (w¨ahle b = 0). Mit Verwendung der Induktionsannahme und mithilfe der binomischen Formel erhalten wir p−2

(1 + ap) p  p−3 = (1 + ap) p  −2 −1 = 1 + ap + bp p k  p  −2 (a + bp)p = k k=0 p k  p  −2 −2 (a + bp)p = 1 + p(a + bp)p + k k=2 p   k  p  −1  −2 (a + bp)p = 1 + ap + bp + k

Potenzrechengesetz Induktionsannahme binomische Formel

k=2

Die Summanden ab k = 2 enthalten wegen den Voraussetzungen p, ≥ 3 alle  den Faktor p . Somit gibt es eine Zahl b ∈ Z mit p−2

(1 + ap)

= 1 + ap

−1

+ b p



womit der Induktionsschritt gezeigt ist. Wir kehren zur Aufgabe zur¨uck und zeigen die Behauptung mithilfe von (E.5) und der binomischen Formel: p  p−2 p−3 = (1 + ap) Potenzrechengesetz (1 + ap) p  −2 −1 wegen (E.5) = 1 + ap + bp p   k   p −2 (a + bp)p = binomische Formel k k=0

 p  p−1

= 1 + p(a + bp)p

−2

+

k

(a + bp)p

−2

k

p

+ (a + bp) p

(−2)p

k=2

∈ 1 + p(a + bp)p

−2



p

+ p Z + (a + bp) p

(−2)p

wobei wir hier wie oben in der Induktion feststellen, dass die Summanden f¨ur  2 ≤ k ≤ p − 1 alle den Faktor p enthalten. Des Weiteren gilt wegen p, ≥ 3:

L¨osungen zu den Aufgaben

p |p 

189

(−2)p



. Wenn wir nun modulo p rechnen erhalten wir p−2

(1 + ap)

= 1 + p(a + bp)p

−2

= 1 + ap

−1



+ bp = 1 + ap

−1



(p )

womit die Behauptung gezeigt ist. (5) Hier ist die Behauptung f¨ur  = 3 offensichtlich; sei also  ≥ 4. Mit einer Induktion analog zu der in (5) kann man zeigen, dass es f¨ur alle  ≥ 4 und a ∈ Z ein b ∈ Z gibt mit 2−4

−2

−1

=1+2 a+2

(1 + 4a)

b

Damit ergibt sich 2−3

(1 + 4a)

2  2−4 = (1 + 4a)  2 −2 −1 = 1+2 a+2 b −1

=1+2

2−4

(a + 2b) + 2

2

(E.6)

(a + 2b)

2−4

Wegen der Voraussetzung  ≥ 4 ist  ≤ 2 − 4 und deswegen 2 |2 ergibt aus (E.6) modulo 2 gerechnet 

2−3

(1 + 4a)

−1

=1+2

−1



. Damit

−1



(a + 2b) = 1 + 2 a + 2 b = 1 + 2 a (2 )

und damit die Behauptung. (6) Wir dividieren a − b durch a − b und erhalten im ersten Schritt n

n

n

n

n−1

a − b = (a − b) · a

+a

n−1

b−b

n

Wir fahren fort mit der Division des Restes n−1

a

n

n−2

b − b = (a − b) · a

b+a

n−2 2

b −b

n

usw. Letztendlich landen wir bei der vorletzten Divison 2 n−2

ab

n

− b = (a − b) · ab

n−2

+ ab

n−1

−b

n

und dann bei der letzten ab

n−1

n

− b = (a − b) · b

n−1

bei der kein Rest mehr entsteht. Wir sammeln die Quotienten auf und erhalten insgesamt  n

n

n

a − b = (a − b) · (a

n−1

n−2

+a

b + . . . + ab

n−2

+b

n−1

) = (a − b) ·

i=1

n−i i−1

a

b

190

L¨osungen zu den Aufgaben

Wir f¨uhren eine Probe durch  n

(a − b) ·

 n

a

n−i i−1

b

=a·

i=1

 n

a

n−i i−1

b

−b·

i=1



b

i=1

n

=

n−i i−1

a

 n

a

n+1−i i−1

b



i=1

a

b

i=1

n



n



n



n

i=1 n

n

=a +

n−i i

 n−1

a

n+1−i i−1

b



i=2

a

n

 n−1

a

n+1−(i+1) i+1−1

b

i=1



a

n−i i

b −b

n

i=1

n−1

=a +

b −b

i=1

n−1

=a +

n−i i

 n−1

a

n−i i

b −

a

n−i i

b −b

n

i=1

=a −b

und erhalten das Ergebnis best¨atigt. Damit ist die Behauptung gezeigt. Aufgabe 1.3 Wir nehmen an, es gebe zu a, b ∈ Z zwei gr¨oßte gemeinsame Teiler t, t ∈ N0 . Dann folgt aus der Definition, dass t|t und dass t |t gelten. Mit Korollar 1.2 i) folgt, da t, t ∈ N0 ist, dass t = t sein muss. Aufgabe 1.5 Wir nehmen an, es sei (a, k) = t > 1. Es folgt t|a sowie t|k, d.h. es gibt q und p mit a = q · t bzw. k = p · t. Des Weiteren gibt es ein r mit m = r · k. Durch Einsetzen erhalten wir m = r · p · t. Das heißt neben t|a gilt auch t|m. Es folgt: t ist ein gemeinsamer Teiler von a und b, also gilt (a, m) ≥ t > 1, was ein Widerspruch zur Voraussetzung (a, m) = 1 ist. Aufgabe 1.6 a) Es gilt αi = α1 · 0 + . . . + αi−1 · 0 + αi · 1 + αi+1 · 0 + . . . + αk · 0 b) Es gilt: 6Z + 9Z = {0, 3, −3, 6, −6, , 9, −9, 12, −12, . . .} = (6, 9)Z 3Z + 4Z = {0, 1, −1, 2, −2, 3, −3, 4, −4, . . .} = (3, 4)Z = Z 5Z + 8Z = {0, 1, −1, 2, −2, 3, −3, 4, −4, . . .} = (5, 8)Z = Z Generelle Vermutung: aZ + bZ = (a, b)Z.

L¨osungen zu den Aufgaben

191

Aufgabe 1.9

# " k−1 k (1) Wir m¨ussen die Anzahl der Primzahlen im Intervall 2 , 2 absch¨atzen. Mit dem Primzahlsatz erhalten wir  k  k−1 π 2 −π 2 ≈

k

k−1

2 2 − k · ln 2 (k − 1) · ln 2 2 k−2 · ln 2 k(k − 1) k−1

=

1 2 k−2 · · 2 k ln 2 k − 1  k 1 ≈ ·π 2 2 k

=

(2) Die Wahrscheinlichkeit ist   k k−1 π 2 −π 2 k−1

2



 k π 2 k

2

k



1.44 2 ≈ k 2 · k · ln 2 k

F¨ur k = 128 ergibt sich die Wahrscheinlichkeit 0.01125, f¨ur k = 512 ergibt sich 0.0028125. Aufgabe 1.11 Es ist a=



p

πa (p)

und b =

p∈P

Es sei t=



p

πb (p)

(E.7)

p∈P



p

min{πa (p),πb (p)}

p∈P

Aus diesen Darstellungen ist ersichtlich, dass t|a und t|b gilt, denn es ist sowohl min {πa (p), πb (p)} ≤ πa (p) als auch min {πa (p), πb (p)} ≤ πb (p); t ist also ein gemeinsamer Teiler von a und b. Sei nun t eine weiterer Teiler von a und b und  πt (p) t = p p∈P πt (p)

dessen Faktorisierung. Dann muss p ≤ min {πa (p), πb (p)} f¨ur alle p ∈ P gelten. Hieraus folgt, dass t |t gilt. Insgesamt folgt t = (a, b). Es sei c=

 p∈P

p

max{πa (p),πb (p)}

(E.8)

192

L¨osungen zu den Aufgaben

Aus dieser Darstellung und den Darstellungen von a und b in (E.7) ist ersichtlich, dass sowohl a|c als auch dass b|c gilt, denn es ist πa (p) ≤ max {πa (p), πb (p)} als auch πb (p) ≤ max {πa (p), πb (p)}; c ist also ein gemeinsames Vielfaches von a und b. Aus (E.8) folgt πc (p) = max {πa (p), πb (p)}

(E.9)

Sei nun c ein weiteres Vielfaches von a und b mit  πc (p) p c = p∈P

Da a|c und b|c gilt, folgt, dass πa (p) ≤ πc (p) und πb (p) ≤ πc (p) und damit dass max {πa (p), πb (p)} ≤ πc (p) ist. Hieraus folgt mit (E.9) πc (p) ≤ πc (p) und damit c|c und damit c ≤ c . Es folgt insgesamt, dass c = [ a, b ] ist. Aufgabe 1.12 (1) F¨ur a, b ∈ {0, 1} l¨asst sich die Gleichung nachrechnen. F¨ur a, b ≥ 2 folgt mit Satz 1.15:  min{πa (p),πb (p)}  max{πa (p),πb (p)} p · p (a, b) · [a, b] = p∈P

=



p∈P

p

πa (p)+πb (p)

p∈P

=



p

πa (p)

·p

πa (p)

·

p∈P

=



p

p∈P

πb (p)



p

πb (p)

p∈P

=a·b (2) Folgt unmittelbar aus Satz 1.16, da (a, b) = 1 vorausgesetzt ist. Aufgabe 2.4 Alle Strukturen sind assoziativ, denn Addition und Multiplikation von ganzen Zahlen sind – auch modulo gerechnet – assoziativ, und Vereinigung und Durchschnitt von Mengen sind ebenfalls assoziative Verkn¨upfungen. Alle Strukturen besitzen ein Einselement. Bei den additiven Strukturen ist das die 0, bei den multiplikativen ist das die 1. Bei der Vereinigung von Mengen ist die leere Menge ∅ das Einselement, und beim Durchschnitt von Mengen ist die gesamte Menge M = {a, b} das Einselement. Bei der Addition modulo 2 sind die beiden Elemente selbstinvers; bei der Multiplikation modulo 2 ist 1 zu sich selbstinvers, die 0 besitzt kein Inverses. Bei der

L¨osungen zu den Aufgaben

193

Addition modulo 5 ist das Element a invers zu 5 − a, denn a + (5 − a) = 5 = 0 modulo 5 gerechnet. Bei der Multiplikation modulo 5 sind die Elemente 1 und 4 −1 −1 selbstinvers, und 2 und 3 sind invers zueinander, d.h. es ist 2 = 3 und 3 = 2, denn es gilt 2 · 3 = 3 · 2 = 1. Die Zahl 0 besitzt keine Inverses modulo 5. Bei der Vereinigung und dem Durchschitt besitzen nur die beiden Einselemente ∅ bzw. M ein Inverses, sie sind selbstinvers. Alle anderen Elemente sind nicht invertierbar. Alle Strukturen sind kommutativ. Aufgabe 2.5 Die additive Struktur modulo 2 in Abbildung 7 bildet eine abelsche Gruppe der Ordnung 2; 0 ist das Einselement, 1 ist selbtsinvers und hat die Ordnung 2. Die multiplikative Struktur in dieser Abbildung bildet ein kommutatives Monoid mit dem Einselement 1. Entfernt man die 0, die kein Inverses besitzt, bleibt eine Gruppe u¨ brig, die nur aus dem Einselement besteht. Die additive Struktur modulo 5 in Abbildung 8 bildet eine abelsche Gruppe der Ordnung 5. 0 ist das Einselement, und a ist modulo 5 invers zu 5 − a. In Beispiel 2.1 f) haben wir bereits festgestellt, dass alle Elemente außer der 0 Ordnung 5 haben. Die multiplikative Struktur in Abbildung 8 bildet eine abelsche Gruppe der Ordnung 4. 1 ist das Einselement, 1 und 4 sind selbstinvers, und 2 und 3 sind invers 4 zueinander. 2 hat die Ordnung 4, denn 4 ist die kleinste Zahl, so dass 2 = 1 modulo 5 ist. 3 hat ebenfalls die Ordnung 4, und 4 hat die Ordnung 2 (ist ja selbstinvers). Die beiden Strukturen in Abbildung 9 bilden kommutative Monoide. Die leere Menge ∅ bzw. die Ausgangsmenge M sind die Einselemente. Außer diesen sind alle anderen Elemente nicht invertierbar. Aufgabe 2.6 Verkn¨upfungstafel:

· 1 2 3 4 5 6

1 1 2 3 4 5 6

2 2 4 6 1 3 5

3 3 6 2 5 1 4

4 4 1 5 2 6 3

5 5 3 1 6 4 2

6 6 5 4 3 2 1

Die Struktur ist offensichtlich abgeschlossen, die Multiplikation ist assoziativ −1 und kommutativ, 1 ist das Einselement. Jedes Element besitzt ein Inverses: 1 = −1 −1 −1 −1 −1 1, 2 = 4, 3 = 5, 4 = 2, 5 = 3, 6 = 6. Die Struktur bildet eine abelsche Gruppe der Ordnung 6. Die Elementordnungen sind: ord(1) = 1, ord(2) = 3, ord(3) = 6, ord(4) = 2, ord(5) = 6, ord(6) = 1.

194

L¨osungen zu den Aufgaben

{1, 6} bildet die einzige zweielementige Untergruppe, und {1, 2, 4} ist die einzige dreielementige Untergruppe. Aufgabe 2.7 Verkn¨upfungstafel:

id nid rez nrez ◦ id id nid rez nrez nid nid id nrez rez rez rez nrez id nid nrez nrez rez nid id

Die Komposition von Funktionen ist generell assoziativ, und die Identit¨at ist generell das Einselement dieser Verkn¨upfung. Aus der Tabelle ist ersichtlich ( Symmetrie bez¨uglich der Hauptdiagonale“), dass die Struktur kommutativ ist. ” Aus der Tabelle ist ebenfalls ersichtlich, dass alle Elemente zu sich selbst invers sind. Diese Struktur bildet also eine abelsche Gruppe der Ordnung 4. Weil alle 2 Elemente selbstinvers sind, gilt f¨ur alle f ∈ {nid , rez , nrez } f = id , d.h. alle Elemente außer dem Einselement id , welches nat¨urlich die Ordnung 1 hat, haben die Ordnung 2. Aufgabe 2.8 Die Operation ist abgeschlossen auf R, denn f¨ur alle a, b ∈ R gilt a ∗ b = √ 3 a3 + b3 ∈ R. √ √ 3 3 Es gilt a ∗ b = a3 + b3 = b3 + a3 = b ∗ a, also ist ∗ kommutativ. Weiterhin gilt: 3  3 3 a3 + ( b3 + c3 )3  3 = a3 + b 3 + c 3 3  3 3 = ( a3 + b3 )3 + c3 = (a ∗ b) ∗ c

a ∗ (b ∗ c) =

Also ist ∗ assoziativ. 0 ist das neutrale Element dieser Struktur:    √ 3 3 3 3 a ∗ 0 = a3 + 03 = a3 = a = 0 + a3 = 03 + a3 = 0 ∗ a Zu a ist −a invers, denn es gilt 3  √ 3 3 a ∗ −a = 3 a3 + (−a)3 = a3 − a3 = 0 = 0 Aufgabe 2.9 (1) Wir zeigen zun¨achst die Abgeschlossenheit. Dazu m¨ussen wir zeigen, dass 4,1 4,1 (a, b, c, d)∗(e, f, g, h) ∈ Z , d.h. dass (ae+bg, af +bh, ce+dg, cf +dh) ∈ Z

L¨osungen zu den Aufgaben

195

4,1

ist. Das gilt gem¨aß der Definition von Z genau dann, wenn (ae+bg)(cf +dh)− (af + bh)(ce + dg) = 1 ist. Wir rechnen nach: (ae + bg)(cf + dh) − (af + bh)(ce + dg) = acef + adeh + bcf g + bdgh − acef − adf g − bceh − bdgh = (ad − bc)eh + (ad − bc)(−f g) = (ad − bc) · (eh − f g) =1 4,1

Die letzte Gleichung folgt, weil (a, b, c, d), (e, f, g, h) ∈ Z und damit ad−bc = 1 und eh − f g = 1 ist. Jetzt rechnen wir nach, dass die Assoziativit¨at (a, b, c, d) ∗ ((ef, g, h) ∗ (i, j, k, l)) = ((a, , c, d) ∗ (e, f, g, h)) ∗ (i, j, k, l) (E.10) gilt: Einerseits erhalten wir (a, b, c, d) ∗ ((ef, g, h) ∗ (i, j, k, l)) = (a, b, c, d)∗ (ei + f k, ej + f l, gi + hk, gj + hl) = (aei + af k + bgi + bhk, aej + af l + bgi + bhl, cei + cf k + dgi + dhk, cej + cf l + dgj + dhl)

(E.11)

und andererseits ((a, , c, d) ∗ (e, f, g, h)) ∗ (i, j, k, l) = (ae + bg, af + bh, ce + dg, cf + dh) ∗ (i, j, k, l) = (aei + bgi + af k + bhk, aej + bgj + af l + bhl, cei + dgi + cf k + dhk, cej + dgj + cf l + dhl)

(E.12)

Durch Vergleich von (E.11) und (E.12) stellen wir fest, dass (E.10) gilt. Wir bestimmen nun das Einselement, d.h. wir suchen ein Element (e, f, g, h) ∈ 4 Z mit eh − f g = 1 und (a, b, c, d) ∗ (e, f, g, h) = (a, b, c, d), also mit (ae +

196

L¨osungen zu den Aufgaben

4

bg, af + bh, ce + dg, cf + dh) = (a, b, c, d) f¨ur alle (a, b, c, d) ∈ Z mit ad − bc = 1. Wir suchen also e, f, g, h ∈ Z mit (E.13) (E.14) (E.15) (E.16)

ae + bg = a af + bh = b ce + dg = c cf + dh = d

Die Gleichungen (E.13) und (E.15) sind erf¨ullt f¨ur e = 1 und g = 0, und die Gleichungen (E.14) und (E.16) sind erf¨ullt f¨ur f = 0 und h = 1. F¨ur das Element 4,1 (e, f, g, h) = (1, 0, 0, 1) gilt einerseits eh − f g = 1, es ist also (1, 0, 0, 1) ∈ Z , und andererseits gilt (a, b, c, d) ∗ (1, 0, 0, 1) = (a · 1 + b · 0, a · 0 + b · 1, c · 1 + d · 0, c · 0 + d · 1) = (a, b, c, d). Insgesamt folgt, dass (1, 0, 0, 1) das Einselement von SL2 (Z) ist. 4,1

Jetzt m¨ussen wir noch zeigen, dass zu jedem Element (a, b, c, d) ∈ Z ein Ele4,1 ment (e, f, g, h) ∈ Z existiert mit (a, b, c, d) ∗ (e, f, g, h) = (1, 0, 0, 1). Wir suchen also e, f, g, h ∈ Z mit (E.17) (E.18) (E.19) (E.20)

ae + bg = 1 af + bh = 0 ce + dg = 0 cf + dh = 1

Wenn wir ber¨ucksichtigen, dass ad − bc = 1 ist, werden die Gleichungen (E.17) und (E.19) f¨ur e = d und g = −c erf¨ullt, und die Gleichungen (E.18) und (E.20) werden f¨ur f = −b und h = a erf¨ullt. Wir erhalten also (e, f, g, h) = (d, −b, −c, a). F¨ur dieses Element gilt eh − gf = da − (−b)(−c) = ad − bc = 1 und (a, b, c, d) ∗ (e, f, g, h) = (a, b, c, d) ∗ (d, −b, −c, a) = (ad − bc, −ab + ab, cd − dc, −bc + da) = (1, 0, 0, 1). Es folgt also zusammengefasst −1

(a, b, c, d) = (d, −b, −c, a) SL2 (Z) bildet also eine Gruppe. Diese Gruppe ist nicht abelsch. Dazu betrachten wir folgendes Beispiel: F¨ur (1, 1, 1, 2), (2, 3, 1, 2) ∈ SL2 (Z) gilt (1, 1, 1, 2) ∗ (2, 3, 1, 2) = (3, 5, 4, 7) = (5, 8, 3, 5) = (2, 3, 1, 2) ∗ (1, 1, 1, 2) (2) Wir zeigen mit vollst¨andiger Induktion, dass a = (1, n, 0, 1) f¨ur alle n ∈ N n+1 gilt: F¨ur n = 1 gilt die Behauptung offensichtlich. Wir berechnen a mithilfe n von a = (1, n, 0, 1): n

n+1

a

n

=a ∗a = (1, n, 0, 1) ∗ (1, 1, 0, 1) = (1 · 1 + n · 0, 1 · 1 + n · 1, 0 · 1 + 1 · 0, 0 · 1 + 1 · 1) = (1, n + 1, 0, 1)

L¨osungen zu den Aufgaben

197

womit die Induktionsbehauptung gezeigt ist. Es folgt: a hat unendliche Ordnung. (2) Es gilt 4

4

b = (0, 1, −1, 0)

2

2

= (0, 1, −1, 0) ∗ (0, 1, −1, 0) = (−1, 0, 0, −1) ∗ (−1, 0, 0, 1) = (1, 0, 0, 1) und damit ordSL

(0, 1, −1, 0) = 4.

2 (Z)

Es gilt 6

6

c = (0, −1, 1, 1)

2

2

2

= (0, −1, 1, 1) ∗ (0, −1, 1, 1) ∗ (0, −1, 1, 1) = (−1, −1, 1, 0) ∗ (−1, −1, 1, 0) ∗ (−1, −1, 1, 0) = (0, 1, −1, −1) ∗ (−1, −1, 1, 0) = (1, 0, 0, 1) (0, −1, 1, 1) = 6.

und damit ordSL

2 (Z)

Aufgabe 2.10 a) Es gilt z.B. {a} ∪ {a, b} = {b} ∪ {a, b}, es ist aber {a} =  {b}. Analog gilt ∅ ∩ {a} = ∅ ∩ {b} und {a} =  {b}. b) Wir betrachten die Verkn¨ufungstafel der Gruppe G = ({a1 , . . . , an } , ∗), dabei seien die Elemente in der Reihenfolge, wie sie in der Verkn¨upfungstafel auf¨ gef¨uhrt sind, indiziert. Wir stellen die Uberlegungen f¨ur die i Zeile an, f¨ur Spalten sind sie vollkommen analog. Wir nehmen an, dass in der Zeile i in den Spalten r und s mit r = s dasselbe Element steht. Das bedeutet, dass ai ∗ ar = ai ∗ as ist, woraus mit der K¨urzungsregel ar = as folgt, ein Widerspruch zur Voraussetzung r = s. In der Zeile i wird das Element ai mit jedem aj , 1 ≤ i ≤ n, verkn¨upft; in der i-ten Zeile stehen also die Elemente der Menge ai ∗G = {ai ∗ a1 , a1 ∗ a2 , . . . , ai ∗ an }. Offensichtlich kann diese Menge nicht mehr als n Elemente haben, d.h. es ist ¨ sind alle Elmente diese Menge aber |ai ∗ G| ≤ n. Wegen der obigen Uberlegung verschieden voneinander, d.h. in der i-ten Zeile treten alle n Elemente von G auf: ai ∗ G = G. c) Es gilt −1

a ∗ b = (a ∗ b) −1

−1

=b ∗a =b∗a

weil alle Elemente selbstinvers sind, also auch a ∗ b wegen Satz 2.1 e) weil alle Elemente, also auch a und b, selbstinvers sind

198

L¨osungen zu den Aufgaben

Aufgabe 2.11 ∗

Es sei G1 = (Z2 , +) die additive Gruppe modulo 2 und G2 = (Z5 , ·) die multiplikative Gruppe modulo 5, dann ist die Verkn¨upfungstafel von G1 × G2 = ∗ (Z2 × Z5 , ∗) gegeben durch: ∗ (0, 1) (0, 2) (0, 3) (0, 4) (1, 1) (1, 2) (1, 3) (1, 4)

(0, 1) (0, 1) (0, 2) (0, 3) (0, 4) (1, 1) (1, 2) (1, 3) (1, 4)

(0, 2) (0, 2) (0, 4) (0, 1) (0, 3) (1, 2) (1, 4) (1, 1) (1, 3)

(0, 3) (0, 3) (0, 1) (0, 4) (0, 2) (1, 3) (1, 1) (1, 4) (1, 2)

(0, 4) (0, 4) (0, 3) (0, 2) (0, 1) (1, 4) (1, 3) (1, 2) (1, 1)

(1, 1) (1, 1) (1, 2) (1, 3) (1, 4) (0, 1) (0, 2) (0, 3) (0, 4)

(1, 2) (1, 2) (1, 4) (1, 1) (1, 3) (0, 2) (0, 4) (0, 1) (0, 3)

(1, 3) (1, 3) (1, 1) (1, 4) (1, 2) (0, 3) (0, 1) (0, 4) (0, 2)

(1, 4) (1, 4) (1, 3) (1, 2) (1, 1) (0, 4) (0, 3) (0, 2) (0, 1)

−1

−1

Das Einselement ist (0, 1), und die Inversen sind: (0, 1) = (0, 1), (0, 2) = −1 −1 −1 −1 (0, 3), (0, 3) = (0, 2), (0, 4) = (0, 4), (1, 1) = (1, 1), (1, 2) = (1, 3), −1 −1 (1, 3) = (1, 2), (1, 4) = (1, 4). Aufgabe 2.13 −1

Zeige: a, b ∈ U1 ∩ U2 genau dann, wenn a ∗ b ∈ U1 ∩ U2 ist. a, b ∈ U1 ∩ U2 genau dann, wenn a, b ∈ U1 ∧ a, b ∈ U2 −1

genau dann, wenn a ∗ b ∈ U1 ∧ a −1

genau dann, wenn a

−1

∗ b ∈ U2

∗ b ∈ U1 ∩ U 2

Aufgabe 2.14 (1) Wir benutzen Satz 2.5 b) und zeigen, dass f¨ur a, b ∈ mZ auch a − b ∈ mZ ist. Zu a, b ∈ mZ gibt es xa , xb ∈ Z mit a = m · xa bzw. b = m · xb . Damit gilt a − b = m · xa − m · xb = m · (xa − xb ) ∈ mZ, da f¨ur xa , xb ∈ Z auch xa − xb ∈ Z ist. −1

(2) Wir verwenden Satz 2.5 b) und zeigen, dass f¨ur a, b ∈ GU gilt: a ∗ b ∈ GU . Sei also a, b ∈ GU , mit ordG (a) = r, d.h. es ist r ∈ U+ , bzw. mit ordG (b) = s, d.h. es ist s ∈ U+ . Es gilt r · s ∈ U+ . Des Weiteren gilt, da G abelsch ist, 

a∗b

−1

r·s

 r s  s −r s −r = a ∗ b =e ∗e =e

Mithilfe von Satz 2.2 b) folgt −1

ordG (a ∗ b ) | r · s −1

Da r · s ∈ U+ ist, muss ebenso ordG (a ∗ b ) ∈ U+ sein. Damit gilt, dass −1 a ∗ b ∈ GU ist, was zu zeigen war.

L¨osungen zu den Aufgaben

199

Aufgabe 2.15 (1) Es gilt e ∈ I(G). (2) Ist m gerade, dann gilt 2x = 0 genau dann, wenn x = 0 oder x = m ungerade, dann gilt 2x = 0 genau dann, wenn x = 0 ist. Somit gilt   0, m2 , m gerade I(Zm ) = {0} , m ungerade

m 2

ist. Ist



(3) Es gilt 1, m − 1 ∈ Zm (und 1 = m − 1) f¨ur alle m ≥ 3. 2

2

(4) Sei a, b ∈ I(G), dann ist a = e und b = e. Es folgt mit der Kommutativit¨at 

a∗b

−1

2

 −1 2  2 −1 2 2 −1 =a ∗ b =a ∗ b =e∗e =e

2  −1 Also ist a ∗ b ∈ I(G), womit mit Satz 2.5 b) die Behauptung folgt. Aufgabe 2.16 (1) gilt offensichtlich. (2) gilt, da e ∈ C(G) ist. (3) Es sei a, b ∈ C(G), dann gilt x ∗ a = a ∗ x f¨ur alle x ∈ G x ∗ b = b ∗ x f¨ur alle x ∈ G

(E.21) (E.22)

Des Weiteren gilt mit diesen Gleichungen: −1

= (a ∗ x)

−1

−1

x ∗ a = a ∗ x gdw. ( x ∗ a ) −1

−1

−1

∗x =x ∗a  −1  −1 −1 −1 ∗ (x ∗ b) = x ∗ x ∗ a ∗ (b ∗ x) gdw. x ∗ a ∗ x  −1  −1 gdw. x ∗ a ∗ b = a ∗ b ∗ x gdw. a

gdw. a

−1

∗ b ∈ C(G) −1

F¨ur a, b ∈ C(G) folgt also a ∗ b ∈ C(G), woraus mit Satz 2.5 a) die Behauptung folgt. Aufgabe 2.17 (1) Wir zeigen (i) GU ∗ GU ⊆ GU und (ii) G ⊆ GU ∗ GU , womit die Behauptung gezeigt ist. Zu (i): Sei a ∈ GU ∗ GU , dann gibt es b, c ∈ GU mit a = b ∗ c. Da GU abgeschlossen ist, ist b ∗ c ∈ GU und damit a ∈ GU , womit GU ∗ GU ⊆ GU gezeigt ist.

200

L¨osungen zu den Aufgaben

Zu (ii): Es gilt GU = e ∗ GU ⊆ GU ∗ GU . (2) Diese Behauptung folgt unmittelbar aus der Abgeschlossenheit der Untergruppe GU gegen¨uber Inversenbildung: Es gilt −1

−1

a ∈ GU gdw. a ∈ GU gdw. a ∈ GU −1

(3) folgt unmittelbar aus (1) und (2): GU ∗ GU = GU ∗ GU = GU . (4) Es gilt −1

a ∗ GU ∗ a

−1

= a ∗ G U ∗ GU ∗ a

−1

wegen (3) −1

= a ∗ G U ∗ ( a ∗ GU )

−1

= b ∗ GU ∗ ( b ∗ GU ) −1

= b ∗ GU ∗ GU ∗ b = b ∗ GU ∗ b

−1

−1

wegen Satz 2.1 e) wegen Voraussetzung wegen Satz 2.1 e) wegen (3)

Aufgabe 2.18 (1) Es gilt:  1  = {1}  2  = {1, 2, 4} ∗

 3  = {1, 3, 2, 6, 4, 5} = Z7  4  = {1, 4, 2} =  2 



 5  = {1, 5, 4, 6, 2, 3} = Z7  6  = {1, 6} ∗

Die Gruppe Z7 ist zyklisch; sie besitzt die Generatoren 3 und 5. (2) Die Elemente von Z2 × Z2k haben die Gestalt (a, b) mit a ∈ {0, 1} und k 0 ≤ b ≤ 2 −1. Von einem Element (0, b), b = 0, kann kein Element (1, b ) durch fortgesetzte Addition erreicht werden, d.h. es gibt kein n ∈ N mit n · (0, b) = (1, b ), weil n · 0 = 0 ist. Die Elemente (0, b) k¨onnen also keine Erzeuger sein. Betrachten wir nun Elemente der Art (1, b) als potenzielle Erzeuger. Diese m¨ussten u.a. alle Elemente der Art (0, b ) durch fortgesetzte Addition erzeugen, d.h. es muss ein n ∈ N geben mit n · (1, b) = (0, b ). Es folgt, dass n gerade sein muss, damit n · 1 = 0 ist. Daraus folgt, dass b = n · b ebenfalls gerade ist. Das bedeutet, dass Element der Art (0, b ) mit b ungerade nicht von Elementen der Art (1, b) erzeugt werden k¨onnen. Damit ist insgesamt die Behauptung gezeigt.

L¨osungen zu den Aufgaben

201

Aufgabe 2.21 Es ist (siehe oben)  2  = {1, 2, 4}; damit ergibt sich: 1 ·  2  = {1, 2, 4} =  2  2 ·  2  = {1, 2, 4} =  2  3 ·  2  = {3, 5, 6} 4 ·  2  = {1, 2, 4} =  2  5 ·  2  = {3, 5, 6} 6 ·  2  = {3, 5, 6} ∗



Des Weiteren gilt Z7 / 2  = {{1, 2, 4} , {3, 5, 6}} =  2 \Z7 . Aufgabe 2.22 Die Abbildung ϕa ist offensichtlich total definiert. Sie ist injektiv. Denn, wenn wir annehmen, dass ϕa (x) = ϕa (y) f¨ur x = y ist, folgt ax = ay und daraus mit der K¨urzungsregel x = y, ein Widerspruch zur Voraussetzung x = y. Um die Surjektivit¨at zu zeigen, m¨ussen wir zu jedem y ∈ aU ein x ∈ U angeben mit ϕa (x) = y. Sei also y ∈ aU , d.h. es gibt ein u ∈ U mit y = a ∗ u. Wir w¨ahlen jetzt x = u, dann gilt ϕa (x) = ϕa (u) = a ∗ u = y. ϕa ist also total, injektiv und surjektiv und damit bijektiv. Aufgabe 2.23 ∗

Die Verkn¨upfungstafel f¨ur die Faktorgruppe Z7 / 2  ist: {1, 2, 4} {3, 5, 6} ∗ 2  {1, 2, 4} {1, 2, 4} {3, 5, 6} {3, 5, 6} {3, 5, 6} {1, 2, 4} Aufgabe 2.23 (1) Es ist: ∗

Z2 = {1} ∗

Z3 = {1, 2} ∗

Z4 = {1, 3} ∗

Z5 = {1, 2, 3, 4, 5} ∗

Z6 = {1, 5} ∗

Z7 = {1, 2, 3, 4, 5, 6} ∗

Z8 = {1, 3, 5, 7} (2) 1 ist als Einselement immer zu sich selbstinvers. Das Gleiche gilt f¨ur −1 = m − 1 (m), denn es ist: (−1) · (−1) = (m − 1) · (m − 1) = m2 − 2m + 1 = 1 (m). (3) Alle diese Strukturen sind abelsche Gruppen.

202

L¨osungen zu den Aufgaben

Aufgabe 2.24 Eine Gruppe mit zwei Elementen e und a, von denen eines das Einselment sein muss, kann nur folgende Verkn¨upfungstafel besitzen (dabei sei e das Einselement): ∗ e a e e a a a e Die erste Zeile und die erste Spalte sind klar, weil e Einselement ist, und es muss a ∗ a = e sein, sonst w¨are a nicht invertierbar. Abgesehen von der Benennung der Elemente gibt es also genau eine Gruppe mit zwei Elementen (siehe auch Abbildung 7). Wir betrachten nun M¨oglichkeiten f¨ur Gruppen mit drei Elementen e (Einselement), a und b. Da e Einselement ist, sind die erste Zeile und die erste Spalte der Verkn¨upfungstabelle festgelegt: ∗ e a b

e e a b

a a ? ?

b b ? ?

Es gibt zwei M¨oglichkeiten: a und b sind beide selbstinvers, oder a und b sind zueinander invers. Mit der ersten M¨oglichkeit w¨are die Diagonale der Tabelle festgelegt: ∗ e a b e e a b a a e ? b b ? e Man sieht, dass diese Belegung nicht korrekt ist, denn jede Belegung der Frage¨ zeichen mit a oder b f¨uhrt zu Widerspr¨uchen (siehe Ubung 2.10 b). Es gibt also nur die folgende Verkn¨upfungstafel: ∗ e a b

e e a b

a a b e

b b e a

Abgesehen von der Benennung der Elemente gibt es also nur eine Gruppe mit drei Elementen. Aufgabe 2.27 (1) (i) Die Abbildung ϕ : K4 → F definiert durch ϕ(0) = id , ϕ(1) = nid , ϕ(2) = rez und ϕ(3) = nrez ist ein Isomorphismus, was man durch Vergleich der Verkn¨upfungstafeln leicht nachvollziehen kann. (ii) Die Abbildung ϕ : K4 → Z2 × Z2 definiert durch ϕ(0) = (0, 0), ϕ(1) = (0, 1), ϕ(2) = (1, 0) und ϕ(3) = (1, 1) ist ein Isomorphismus.

L¨osungen zu den Aufgaben

203



(iii) Die Abbildung ϕ : K4 → Z8 definiert durch ϕ(0) = 1, ϕ(1) = 3, ϕ(2) = 5 und ϕ(3) = 7 ist ein Isomorphismus. (2) Wir definieren z : R → R+ −{0} durch: z(x) = 2 . Die Exponentialfunktion z ist bijektiv und es gilt: x

x+y

z(x + y) = 2

x

y

= 2 · 2 = z(x) · z(y)

Dieser Isomorphismus ist die Grundlage f¨ur den dualen Logarithmus log: Es gilt y = z x genau dann, wenn x = log y ist. log ist die Umkehrfunktion von z und damit auch ein Isomorphismus (siehe Korollar 2.11 b). Es gilt also log(a · b) = log a+log b. Man kann also eine Multiplikation von zwei Zahlen a und b mithilfe der Addition ihrer Logarithmen berechnen. Einfaches Beispiel: 16 · 64 = z(log(16 · 64)) = z(log 16 + log 64) = z(4 + 6) = z(10) = 210 = 1024 (3) Wir definieren ϕ : Z → m · Z durch ϕ(x) = mx. Es gilt: ϕ ist bijektiv sowie ϕ(x + y) = m(x + y) = mx + my = ϕ(x) + ϕ(y) Aufgabe 2.28 −1

Wir zeigen: Ist y, z ∈ Bild (ϕ)), dann ist auch y ∗2 z ∈ Bild (ϕ). Sei also −1 −1 y, z ∈ Bild (ϕ). Dann gibt es a, b ∈ G1 mit ϕ(a) = y, d.h. mit (ϕ(a)) = y , bzw. mit ϕ(b) = z. Damit gilt −1

−1

−1

−1

y ∗2 z = (ϕ(a)) ∗2 ϕ(b) = ϕ(a ) ∗2 ϕ(b) = ϕ(a ∗1 b) ∈ Bild (ϕ) Zu y, z ∈ Bild (ϕ) gilt also y Behauptung folgt.

−1

∗2 z ∈ Bild (ϕ), woraus mit Satz 2.5 a) die

Aufgabe 2.29 a) ϕ ist offensichtlich eine totale Abbildung. ϕ ist injektiv, denn aus ϕ(x) = ϕ(y) folgt x x = y.

−1

= y

−1

−1

und daraus unmittelbar −1

−1 −1

ϕ ist surjektiv: Sei y ∈ G, setze x = y , dann gilt ϕ(x) = x = (y ) = y. Es gibt also zu jedem x ∈ G ein y ∈ G mit ϕ(x) = y. Damit ϕ ein Homomorphismus ist, muss G abelsch sein, sonst gilt die Strukturgleichung nicht: −1

ϕ(x ∗ y) = (x ∗ y)

=y

−1

−1

−1

∗x

−1

=x

−1

∗y

−1

= ϕ(x) ∗ ϕ(y)

b) (1) Da t ∗ x ∗ t = t ∗ y ∗ t ist f¨ur x = y, ist ϕt rechtseindeutig, also eine Funktion, und ϕt ist offensichtlich f¨ur alle t total definiert. −1

Aus ϕt (x) = ϕt (y) folgt t ∗ x ∗ t injektiv f¨ur alle t.

−1

= t∗y∗t

und daraus x = y. ϕt ist also

204

L¨osungen zu den Aufgaben

−1

Es sei y ∈ G. Wir setzen x = t ∗ y ∗ t. Dann gilt −1

−1

−1

ϕt (x) = ϕt (t ∗ y ∗ t) = t ∗ (t ∗ y ∗ t) ∗ t

=y

Zu jedem y gibt es also ein x mit ϕt (x) = y. ϕt ist also surjektiv. Des Weiteren erf¨ullt ϕt die Strukturgleichung: −1

ϕt (x ∗ y) = t ∗ (x ∗ y) ∗ t

−1

=t∗x∗e∗y∗t −1

−1

= (t ∗ x ∗ t ) ∗ (t ∗ y ∗ t ) = ϕt (x) ∗ ϕt (y) (3) AUT ist offensichtlich abgeschlossen und ◦, die Komposition von Funktionen, ist bekanntermaßen assoziativ. ϕe ist das Einselement von AUT , denn es gilt −1 ϕe (x) = e ∗ x ∗ e = x = idG (x) Das Inverse von ϕt ist ϕ −1 , denn es gilt t

−1

ϕt ◦ ϕ −1 (x) = ϕt (t t

−1

∗ x ∗ t) = t ∗ (t

−1

∗ x ∗ t) ∗ t

= x = idG (x) = ϕe (x)

Aufgabe 2.30 a) Es muss gezeigt werden, dass fa total, surjektiv und injektiv ist. fa ist f¨ur jedes x ∈ G definiert, da wegen der Abgeschlossenheit von G f¨ur jedes x ∈ G das Produkt a ∗ x definiert ist. fa ist also total. Sei y ∈ G. Wir setzen x = a

−1

∗ y. Dann gilt −1

fa (x) = a ∗ x = a ∗ (a

−1

∗ y) = (a ∗ a ) ∗ y = e ∗ y = y

Zu jedem y ∈ G gibt es also ein x ∈ G (n¨amlich x = a fa ist surjektiv.

−1

∗ y) mit fa (x) = y, d.h.

Es sei fa (x1 ) = fa (x2 ). Dann ist gem¨aß Definition von fa : a ∗ x1 = a ∗ x2 , woraus mit der K¨urzungsregel x1 = x2 folgt. Aus fa (x1 ) = fa (x2 ) folgt also x1 = x2 , womit die Injektivit¨at von fa gezeigt ist. ∗

b) Multiplikationstafel von (Z5 , ·): · 1 2 3 4

1 1 2 3 4

2 2 4 1 3

3 3 1 4 2

4 4 3 2 1

L¨osungen zu den Aufgaben

205

F¨ur die Abbildungen f1 , f2 , f3 , f4 ergibt sich: x 1 2 3 4

f1 (x) = 1 · x f2 (x) = 2 · x f3 (x) = 3 · x f4 (x) = 4 · x 1 2 3 4 2 4 1 3 3 1 4 2 4 3 2 1

c) Abgeschlossenheit: Es seien fa , fb ∈ F(G). Dann gilt: (fa ◦ fb )(x) = fa (fb (x)) = fa (b ∗ x) = a ∗ (b ∗ x) = (a ∗ b) ∗ x = fa∗b (x) Es folgt, dass fa ◦ fb = fa∗b

(E.23)

ist. Da a ∗ b ∈ G ist, ist auch fa∗b ∈ F(G) und damit fa ◦ fb ∈ F(G), womit die Abgeschlossenheit von F(G) gezeigt ist. Assoziativit¨at: Die Komposition von Funktionen ist generell assoziativ. In diesem Beispiel l¨asst sich die Assoziativit¨at von ◦ auch durch die Assoziativit¨at von ∗ begr¨unden (dabei verwenden wir die Gleichung (E.23)): fa ◦ (fb ◦ fc ) = fa ◦ fb∗c = fa∗(b∗c) = f(a∗b)∗c = fa∗b ◦ fc = (fa ◦ fb ) ◦ fc Das Einselement von F(G) ist fe , denn es gilt mit (E.23): fe ◦ fa = fe∗a = fa = fa∗e = fa ◦ fe Inverse: Zu fa ist f

−1

a

invers, denn es gilt mit (E.23): fa ◦ f

−1

=f

−1 a∗a

a

= fe



d) Eine Multiplikationstafel f¨ur F(Z5 ) ist: · f1 f2 f3 f4

f1 f1 f2 f3 f4

f2 f2 f4 f1 f3

f3 f3 f1 f4 f2

f4 f4 f3 f2 f1

e) Wir definieren φ : G → F(G) durch φ(a) = fa . Wir zeigen, dass φ ein Isomorphismus zwischen G und F(G) ist: (i) φ ist bijektiv: φ ist offensichtlich total und surjektiv. Es bleibt noch zu zeigen, dass φ auch injektiv ist. Sei φ(a) = φ(b). Dann ist fa (x) = fb (x), d.h. a∗x = b∗x

206

L¨osungen zu den Aufgaben

f¨ur alle x ∈ G, woraus mit der K¨urzungsregel a = b folgt. Aus φ(a) = φ(b) folgt also a = b, d.h. φ ist injektiv. (ii) Wir m¨ussen nun noch zeigen, dass φ die Homomorphieeigenschaft besitzt, d.h. dass φ(a ∗ b) = φ(a) ◦ φ(b) gilt. Dies folgt unmittelbar aus (E.23): φ(a ∗ b) = fa∗b = fa ◦ fb = φ(a) ◦ φ(b) Aus (i) und (ii) folgt, dass φ ein Isomorphismus zwischen G und F(G) ist. f) Wenn man sich die beiden Multiplikationstafeln aus b) und d) ansieht, sieht ∗ ∗ man sofort, dass die beiden Gruppen Z5 und F(Z5 ) isomorph sind. Den Isomorphismus erkennt man unmittelbar aus den Tafeln: Er entspricht der allgemeinen Abbildung φ(x) = fx aus e). Aufgabe 2.31 a) Es gilt, dass ϕ offensichtlich total definiert ist, sowie ϕ((a, b) + (c, d)) = ϕ(a + c, b + d) = b + d − (a + c) = (b − a) + (d − c) = ϕ(a, b) + ϕ(c, d) 2

und damit ist ϕ ein Homomorphismus von (Z , +) nach (Z, +). b) Es ist   2 Kern(ϕ)) = (a, b) ∈ Z | ϕ(a, b) = 0   2 = (a, b) ∈ Z | b − a = 0 = {(a, a) | a ∈ Z} c) Da Kern(ϕ) = {(0, 0)} ist, folgt sofort, dass ϕ nicht injektiv und damit kein Isomorphismus ist. d) Die Nebenklasse mit dem Repr¨asentanten (3, 7) ist gegeben durch: (3, 7) + Kern(ϕ) = (3, 7) + {(a, a) | a ∈ Z} = {(3, 7) + (a, a) | a ∈ Z} = {(x, y) | y − x = 7 − 3} = {(x, y) | y − x = 4}

L¨osungen zu den Aufgaben

207

Die Nebenklasse mit dem Repr¨asentanten (a, b) ist gegeben durch: (a, b) + Kern(ϕ) = (a, b) + {(α,α ) | α ∈ Z} = {(a, b) + (α,α ) | α ∈ Z} = {(x, y) | y − x = b − a} = {(x, y) | y − x = ϕ(a, b)}

(E.24)

Aufgabe 2.32 a) ϕb ist offensichtlich total definiert. Es gilt ϕb (k + l) = b

k+l

k

= b ∗ bl = ϕb (k) + ϕb (l)

und damit ist ϕb ein Homomorphismus von Z nach G. b) Es ist Kern(ϕb ) = { k ∈ Z | ϕb (k) = e }. Hieraus folgt mit Satz 2.2 b): Kern(ϕb ) = { k ∈ Z | bk = e } = { k ∈ Z | ordG (b)|k }   = k ∈ Z | k = ordG (b) · l, l ∈ Z = ordG (b) · Z c) ordG (b) · Z besitzt die ordG (b) vielen Nebenklassen r + ordG (b) · Z, 0 ≤ r ≤ ordG (b) − 1. Z/Kern(ϕb ) hat also ordG (b) viele Elemente; diese sind: 0 + Kern(ϕb ) 1 + Kern(ϕb ) .. . (ordG (b) − 1) + Kern(ϕb ) Aufgabe 3.1 Die Abgeschlossenheit sowie die Kommutativit¨at von ⊕ und ⊗ sind offensichtlich. Assoziativit¨at von ⊕: a ⊕ (b ⊕ c) = a ⊕ (b + c + 1) = a + (b + c + 1) + 1 = (a + b + 1) + c + 1 = (a ⊕ b) + c + 1 = (a ⊕ b) ⊕ c

208

L¨osungen zu den Aufgaben

Assoziativit¨at von ⊗: Es gilt einerseits a ⊗ (b ⊗ c) = a ⊗ (b + c + bc) = a + (b + c + bc) + a(b + c + bc) = a + b + c + bc + ab + ac + abc und andererseits (a ⊗ b) ⊗ c = (a + b + ab) ⊗ c = a + b + ab + c + (a + b + ab)c = a + b + ab + c + ac + bc + abc woraus unmittelbar folgt: a ⊗ (b ⊗ c) = (a ⊗ b) ⊗ c. Additives Einselement: e⊕ : F¨ur a ∈ Z muss a ⊕ e⊕ = a sein, d.h. es muss a + e⊕ + 1 = a sein, also ist e⊕ = −1. Additives Inverses: a zu a: F¨ur a ∈ Z muss a ⊕ a = −1 sein, d.h. es muss a + a + 1 = −1 sein, also ist a = −a + (−2) = −(a + 2). Multiplikatives Einselement: e⊗ : F¨ur a ∈ Z −{− 1} muss a ⊗ e⊗ = a sein, d.h. es muss a + e⊗ + a · e⊗ = a, also (1 + a)e⊗ = 0 sein. Da a = −1 und damit (1 + a) = 0 ist, muss e⊗ = 0 sein. Distributivit¨at: Wegen der Kommutativit¨at der Multiplikation braucht nur die Linksdistributivit¨at gezeigt zu werden: Einerseits gilt a ⊗ (b ⊕ c) = a ⊗ (b + c + 1) = a + (b + c + 1) + a(b + c + 1) = 2a + ab + ac + b + c + 1 und andererseits (a ⊗ b) ⊕ (a ⊗ c) = (a + b + ab) ⊕ (a + c + ac) = (a + b + ab) + (a + c + ac) + 1 = 2a + ab + ac + b + c + 1 woraus insgesamt folgt: a ⊗ (b ⊕ c) = (a ⊗ b) ⊕ (a ⊗ c). Aufgabe 3.2 (1) Es gilt: ∗

Z2 = {1} ∗

Z3 = {1, 2} ∗

Z4 = {1, 3} ∗

Z5 = {1, 2, 3, 4} ∗

Z6 = {1, 5} ∗

Z7 = {1, 2, 3, 4, 5, 6} ∗

Z8 = {1, 3, 5, 7}

L¨osungen zu den Aufgaben

209

(2) Das multiplikative Einselement 1m ist zu sich selbst invers: 1m · 1m = 1m . Ebenso ist das additive Inverse (−1)m = (m − 1)m des multiplikativen Einselementes selbstinvers: (−1)m ·m (−1)m = (m − 1)m ·m (m − 1)m = mm ·m mm +m 2m ·m mm +m 1m = 1m (3)

·3 1 2 1 1 2 2 2 1

·2 1 1 1 ·5 1 2 3 4

1 1 2 3 4

2 2 4 1 3

3 3 1 4 2

·4 1 3 1 1 3 3 3 1 ·8 1 3 5 7

4 4 3 2 1 ·7 1 2 3 4 5 6

1 1 2 3 4 5 6

2 2 4 6 1 3 5

3 3 6 2 5 1 4

1 1 3 5 7 4 4 1 5 2 6 3

3 3 1 7 5 5 5 3 1 6 4 2

·6 1 5 1 1 5 5 5 1 5 5 7 1 3

7 7 5 3 1

6 6 5 4 3 2 1 ∗





Bei allen Strukturen handelt es sich um Gruppen. Z3 , Z4 und Z6 sind als zwei∗ ∗ elementige Gruppen isomorph zueinander. Z5 ist isomorph zu Z4 , und Z8 ist isomorph zu K4 (siehe Beispiel 2.7 und Bemerkung 2.3). Aufgabe 3.4 (1) Nullteiler: 3, 6, da 3 · 6 = 0 (auch 3 · 3 = 0 sowie 6 · 6 = 0). (2) Z∗9 = {1, 2, 4, 5, 7, 8} (3)

· 1 2 4 5 7 8

1 1 2 4 5 7 8

2 2 4 8 1 5 7

4 4 8 7 2 1 5

5 5 1 2 7 8 4

7 7 5 1 8 4 2

8 8 7 5 4 2 1

(d) 2 : 1 = 2 · 1 = 2, 2 : 2 = 2 · 5 = 1, 2 : 4 = 2 · 7 = 5, 2 : 5 = 2 · 2 = 4, 2 : 7 = 2 · 4 = 8, 2 : 8 = 2 · 8 = 7.

210

L¨osungen zu den Aufgaben

Aufgabe 3.5 ∗

(1) Es ist 999 = −1 (1000), daraus folgt 999 ∈ Z103 . −1

(2) −1 ist selbstinvers, also gilt 999

= 999 (1000).

(3) Wir testen mit dem Euklidischen Algorithmus, ob (1000, 101) = 1 ist: 1000 = 101 · 9 + 91 101 = 91 · 1 + 10 91 = 10 · 9 + 1 10 = 1 · 10 + 0 Es gilt also (1000, 101) = 1, also ist 101 invertierbar. −1

(4) Mit der Erweiterung des Euklidischen Algorithmus berechnen wir 101 : 91 = 1000 · 1 + 101 · (−9) (E.25) 10 = 101 · 1 + 91 · (−1) = 101 · 1 + ( 1000 · 1 + 101 · (−9) ) · (−1) mit (E.25) = 1000 · (−1) + 101 · 10 (E.26) 1 = 91 · 1 + 10 · (−9) = ( 1000 · 1 + 101 · (−9) ) · 1 + ( 1000 · (−1) + 101 · 10 ) · (−9) mit (E.26) = 1000 · 10 + 101 · (−99) Es gilt also 1 = 1000 · 10 + 101 · (−99) = 101 · (−99) (1000) = 101 · 901 (1000) −1

womit folgt: 101

= 901 (1000).

Aufgabe 3.6 3

Die Faktorisierung von 1331 ist: 1331 = 11 . Mit Korollar 3.8 folgt 3

2

ϕ(1331) = ϕ(11 ) = 11 · 10 = 1210 Aufgabe 3.7 F¨ur alle durch 5 teibaren Zahlen n ∈ N0 ist die Aussage offensichtlich wahr, denn 5 f¨ur diese Zahlen gilt 5|n − n. Also betrachten wir die nicht durch 5 teilbaren Zahlen n ∈ N0 − {5k | k ∈ N0 }. F¨ur diese gilt (n, 5) = 1. Da 5 ∈ P ist, k¨onnen wir den Kleinen Satz von Fermat anwenden: 4

n = 1 (5) Durch Multiplikation dieser Gleichung mit n erhalten wir auch f¨ur diesen Fall die Behauptung.

L¨osungen zu den Aufgaben

211

Aufgabe 3.8 F¨ur a = b ist die Aussage trivial; es sei also a = b. Des Weiteren gilt: Ist (a, p) > 1, dann muss auch (b, p) > 1 sein, oder ist (b, p) > 1, dann muss auch (a, p) > 1 sein, und die Aussage gilt in beiden F¨allen wiederum offensichtlich. Sei also p (a, p) = 1 und (b, p) = 1. Dann gilt mit dem Kleinen Satz von Fermat a = a (p) p und b = b (p), woraus a = b (p) und damit p|a − b folgt. Aus der L¨osung von Aufgabe 1.2 (4) wissen wir, dass  n

n

n

a − b = (a − b) ·

a

n−i i−1

b

i=1

ist; diese Gleichung gilt nat¨urlich auch f¨ur n = p ∈ P.!Da wir schon wissen, p p−i i−1 dass p|a − b gilt, m¨ussen wir noch zeigen, dass auch p| i=1 a b gilt, dann 2 p p p p 2 ist p |a − b und damit die Behauptung a = b (p ) gezeigt. Aus a = b (p) folgt a = b (p) f¨ur alle i ∈ N0 . Damit und mit dem Kleinen Satz von Fermat folgt i

i

p−i

a

·b

i−1

p−i

=a

·a

i−1

=a

p−1

= 1 (p)

f¨ur alle i mit 1 ≤ i ≤ p. Daraus folgt  p

a

i=1

und daraus p|

!p i=1

a

 p

p−i i−1

b

=

1 = p · 1 = 0 (p)

i=1

p−i i−1

b , was noch zu zeigen war.

Aufgabe 3.11 2

Durch Probieren findet man heraus, dass P = 3(x + 1)(x + 4)(x + x + 1) die gesuchte Zerlegung ist. Aufgabe 3.12 Die Anzahl der Restklassen ist gleich der Anzahl der Restpolynome, die bei Division der Polynome A ∈ Fp [x] durch P bleiben. Die m¨oglichen Restpolynome sind alle Polynome R ∈ Fp [x] mit grad (R) < grad (P ). Sei n = grad (P ), dann ist   n−1 an−1 x + . . . + a1 x + a0 | ai ∈ Fp , 0 ≤ i ≤ n − 1 die Menge dieser Restpolynome. Jeder Koeffizient ai kann die p Werte 0, 1, . . .,   grad(P ) p − 1 annehmen. Es folgt Fp [x]/P  = p . Aufgabe 3.13 5

4

3

2

(1) Zun¨achst klammern wir 2 aus und erhalten P (x) = 2(x + 7x + 2x + 2x + 3x + 6). 5 ist eine Nullstelle des eingeklammerten Polynoms; dieses dividieren 5 4 3 2 wir durch (x − 5) = (x + 6) und erhalten x + 7x + 2x + 2x + 3x + 6 =

212

L¨osungen zu den Aufgaben

4

3

2

(x + 6)(x + x + 7x + 4x + 1). 5 ist auch Nullstelle des eingeklammerten 4 3 Polynoms; dieses dividieren wir durch (x − 5) = (x + 6) und erhalten x + x + 2 3 2 7x + 4x + 1 = (x + 6)(x + 6x + 4x + 2). 5 ist ebenfalls eine Nullstelle des 3 2 Quotientenpolynoms. Dessen Division durch (x − 5) = (x + 6) ergibt x + 6x + 2 2 4x + 2 = (x + 6)(x + 4). Das Quotientenpolynom x + 4 ist irreduzibel u¨ ber F11 . Somit erhalten wir insgesamt die irreduziuble Zerlegung von P u¨ ber F11 : 3

2

P (x) = 2(x + 6) (x + 4) (2) Da f¨ur b = −1 f¨ur ungerade n eine Nullstelle des Polynoms x + 1 ist, folgt die Behauptung unmittelbar aus Satz 3.19. n

Aufgabe 4.1 3

Sei α Nullstelle von P . Dann gilt α = α + 2. Damit ergibt sich die in Abbildung 3 17 dargestellte Multiplikations- und Logarithmentafel f¨ur F3 [x]/(x + 2x + 1). Mithilfe der Tafel l¨asst sich leicht berechnen: 16

17

7 · 21 = α · α = α

33 (26)

7

= α = 17

Aufgabe 6.3 Die Faktorisierung ergibt 2821 = 7 · 13 · 31, sie ist offensichtlich quadratfrei. Des Weiteren ist 6|2820, 12|2820 und 30|2820. F¨ur alle Primteiler p ∈ {7, 13, 31} von m = 2821 gilt also: p − 1|m − 1. Daraus folgt mit dem Satz 6.7 die Behauptung. Weiterer Beweis durch Nachrechnen mithilfe des Kleinen Satzes von Fermat: F¨ur alle a mit (a, 2821) = 1 gilt (a, 7) = 1, (a, 13) = 1 und (a, 31) = 1 und damit (Satz von Fermat) a6 = 1 (7), a12 = 1 (13) bzw. a30 = 1 (31). Damit gilt 2821

a

2821

a

2821

a

6 470

= a(a )

12 235

= a(a )

= a (7) = a (13)

30 94

= a(a ) = a (31)

und damit mit Satz 5.3 a

2821

= a (2821)

Aufgabe 6.4 2

(1) Es ist p − 1 = 12 = 2 · 3 und damit s = 2 und d = 3. Zu berechnen ist - 3 6 12 . b ,b ,b f¨ur die gew¨ahlten Basen.

L¨osungen zu den Aufgaben

213

Es ergibt sich f¨ur b = 2 :  8, −1, 1 

Ausgabe : m ist prim?

b = 3 :  1, 1, 1 

Ausgabe : m ist prim?

b = 4 :  −1, 1, 1 

Ausgabe : m ist prim?

b = 5 :  8, −1, 1 

Ausgabe : m ist prim?

b = 6 :  8, −1, 1 

Ausgabe : m ist prim?

b = 7 :  5, −1, 1 

Ausgabe : m ist prim?

b = 8 :  5, −1, 1 

Ausgabe : m ist prim?

b = 9 :  1, 1, 1 

Ausgabe : m ist prim?

b = 10 :  −1, 1, 1 

Ausgabe : m ist prim?

b = 11 :  5, −1, 1 

Ausgabe : m ist prim?

Es kommen alle drei Arten von b-Sequenzen f¨ur Primzahlen vor, wie wir es in der Vorlesung u¨ berlegt haben. Die Ausgabe des Algorithmus ist in jedem Fall korrekt. 6

(2) Es ist m − 1 = 64 = 2 · 1 und damit s = 6 und d = 1. Zu berechnen ist - 1 2 4 8 16 32 64 . b ,b ,b ,b ,b ,b ,b f¨ur die gew¨ahlten Basen. Es ergibt sich f¨ur b = 2 :  2, 4, 16, 61, 16, 61, 16 

Ausgabe : m ist nicht prim

b = 8 :  8, −1, 1, 1, 1, 1, 1 

Ausgabe : m ist prim?

b = 12 :  12, 14, 1, 1, 1, 1, 1 

Ausgabe : m ist nicht prim

b = 18 :  18, −1, 1, 1, 1, 1, 1 

Ausgabe : m ist prim?

65 ist also bez¨uglich der Basen 8 und 18 stark pseudoprim.

214

L¨osungen zu den Aufgaben

F3 (α) 0 0 α =1 1 α =α 2 α 3 α =α+2 4 2 α = α + 2α 5 2 α = 2α + α + 2 6 2 α =α +α+1 7 2 α = α + 2α + 2 8 2 α = 2α + 2 9 α =α+1 10 2 α =α +α 11 2 α =α +α+2 12 2 α =α +2 13 α =2 14 α = 2α 15 2 α = 2α 16 α = 2α + 1 17 2 α = 2α + α 18 2 α = α + 2α + 1 19 2 α = 2α + 2α + 2 20 2 α = 2α + α + 1 21 2 α =α +1 22 α = 2α + 2 23 2 α = 2α + 2α 24 2 α = 2α + 2α + 1 25 2 α = 2α + 1 26 α =1

3

3

3

F3 GF(3 ) F3 [x]/(x + 2x + 1) 000 0 0 001 1 1 010 3 x 2 100 9 x 3 012 5 x+2 2 120 15 x + 2x 2 212 23 2x + x + 2 2 111 13 x +x+1 2 122 17 x + 2x + 2 2 202 20 2x + 2 011 4 x+1 2 110 12 x +x 2 112 14 x +x+2 2 102 11 x +2 002 2 2 020 6 2x 2 200 18 2x 021 7 2x + 1 2 210 21 2x + x 2 121 16 x + 2x + 1 2 222 26 2x + 2x + 2 2 211 22 2x + x + 1 2 101 10 x +1 022 8 2x + 2 2 220 24 2x + 2x 2 221 25 2x + 2x + 1 2 201 19 2x + 1 001 1 1

3

¨ F3 [x]/(x + 2x + 1) Abb. 17: Multiplikations- und Logarithmentafel fur

Literatur

215

Literatur Artin, M.: Algebra; Birkh¨auser, Basel, 1998 Bartholome, A., Jung, J., Kern, H.: Zahlentheorie f¨ur Einsteiger, 7. Auflage; Vieweg+Teubner, Wiesbaden 2010 Bundschuh, P.: Einf¨uhrung in die Zahlentheorie, 6. Auflage, Springer, Berlin/Heidelberg, 2008 Crandall, R., Pomerance, C.: Prime Numbers – A Computational Perspective, 2nd Edition; Springer, New-York, 2005 Diekert, V., Kufleitner, M., Rosenberger, G.: Diskrete algebraische Methoden; De Gruyter, Berlin, 2013 Dietzfelbinger, M.: Primality Testing in Polynomial Time; Springer, Berlin, 2004 Karpfinger, C., Meyberg, K.: Algebra, 3. Auflage; Springer Spektrum, Heidelberg, 2013 L¨uneburg, H.: Gruppen, Ringe, K¨orper; Oldenbourg, M¨unchen, 1999 Matthes, R.: Algebra, Kryptologie und Kodierungstheorie; Fachbuchverlag, Leipzig, 2003 M¨uller-Stach, S., Piontkowski, J.: Elementare und algebraische Zahlentheorie, 2. Auflage; Vieweg+Teubner, Wiesbaden, 2011 Rempe, L., Waldecker, R.: Primzahltests f¨ur Einsteiger; Vieweg+Teubner, Wiesbaden, 2009 Schwarz, F.: Einf¨uhrung in die Elementare Zahlentheorie; Teubner, Stuttgart/Leipzig, 1998 Wolfart, J.: Einf¨uhrung in die Zahlentheorie und Algebra, 2. Auflage; Vieweg+Teubner, Wiesbaden, 2011 Yan, S.Y.: Number Theory for Computing; Springer, Berlin, 2002

Stichwortverzeichnis

217

Stichwortverzeichnis Abbildung, 182 Abgeschlossenheit, 34 Addition, 70 ¨ Aquivalenzklasse, 182 ¨ Aquivalenzrelation, 182 AKS-Test, 159 Alphabet, 181 Argument einer Funktion, 183 Arithmetik modulare, 124 Assoziativit¨at, 1, 33, 35 Ausgangsmenge, 183 Aussage falsch positive, 146 Automorphismus, 58 Basis, 185 Bildmenge, 183 b-Sequenz, 151 Carmichael-Zahlen, 146, 147 Charakteristik, siehe K¨orper Chinesischer Restsatz, 119, 124 Definitionsbereich, 183 Diffie-Hellman-Problem, 175 Diffie-Hellman-Schl¨usselaustausch, 175 Dimension, 185 Direktes Produkt von Gruppen, 40 Distributivgesetz, 69, 75 Distributivit¨at, 2 div-Operator, 5 Dividend, 3 Division mit Rest, 4 Divisor, 3 Einheit, 71 Einheitengruppe, 71 Einselement, 34, 35 additives, 2, 70, 77 multiplikatives, 2, 70, 77 Einspolynom, 88

Einwegfunktion, 166 Element assoziiertes, 88 inverses, siehe Inverses invertierbares, siehe Einheit irreduzibles, 88 neutrales, 2, siehe Einselement primes, 88 primitives, siehe Generator, 113 selbstinverses, 35 Elementordnung, siehe Ordnung eines Gruppenelementes ElGamal-Verfahren, 176 Erweiterungsk¨orper, siehe K¨orpererweiterung, 109 Eulersche ϕ-Funktion, 85 Faktorgruppe, 51 Faktorisierung, 25 Faktorring, 95 Fakult¨at, 185 Fermat-Test, 141 Fundamentalsatz der Zahlentheorie, 25 Funktion, 182 bijektive, 183 eineindeutige, siehe bijektive Funktion injektive, 183 linkseindeutige, siehe injektive Funktion surjektive, 183 totale, 183 Galois-Feld, 106, 117 Gaussklammer obere, 183 untere, 183 Generator, 46 Grad einer K¨orpererweiterung, 110 eines Polynoms, 87 Grundmenge

218

Stichwortverzeichnis

einer Relation, 182 Gruppe, 36 abelsche, siehe kommutative Gruppe kommutative, 36 zyklische, 46 Halbgruppe, 36 Harmonische Reihe, 138 Homomorphiesatz f¨ur Gruppen, 64 Homomorphismus von Gruppen, 58 von K¨orpern, 78 von Ringen, 78 Index, 134 einer Untergruppe, 53 Indexverschiebung, 184 Integrit¨atsbereich, 72 Inverses, 35 additives, 2 Involution, siehe selbstinverses Element, 46 Isomorphie von Gruppen, 58 von K¨orpern, 78 von Ringen, 78 Isomorphismus, 58 Kern eines Homomorphismus, 61 Kleiner Satz von Fermat, 141 Kleinsche Vierergruppe, 57 Known plaintext-Angriff, 174 Koeffizient, 87 f¨uhrender eines Polynoms, siehe Polynom K¨orper, 75 -erweiterung, 105 -homomorphismus, 78 -isomorphismus, 78 adjungierter, siehe K¨orpererweiterung Charakteristik eines, 113 K¨orpererweiterung, 79

Kommutativit¨at, 2, 33, 35 Kongruenzgleichungssystem, 120 Kongruenzrelation, 10, 95 Kostenmaß logarithmisches, 139 uniformes, 138 Kryptologie, 165 K¨urzungsregel, 2 in Gruppen, 38 in nullteilerfreien Ringen, 73 Lemma von B´ezout, 16, 93 Linearkombination, 14 Linksnebenklasse, 49 Logarithmus diskreter, 107, 134 Lucas-Test, 140 Menge gleichm¨achtige, 183 Miller-Rabin-Test, 151 Minimalpolynom, 111 mod-Operator, 5 Monoid, 36 Monte Carlo-Algorithmus, 147 Multiplikation, 70 Nebenklasse, 49 Normalteiler, 49 Nullpolynom, 88 Nullstelle, 100 einfache, 100 konjugierte, 111 Vielfachheit einer, 100 Nullteiler, 72 Ordnung einer Gruppe, 36 eines Gruppenelementes, 36 Partition, 182 Polynom, 86, 87 additiv inverses, 88 irreduzibles, 95 konstantes, 88 lineares, 87 monisches, 87

Stichwortverzeichnis

normiertes, 87 primitives, 113 reduzibles, 95 zusammengesetztes, siehe reduzibles Polynom Potenzmenge, 183 Primalit¨at relative, 12 Primelement, siehe primes Element Primfaktor, 25 Primfaktorzerlegung kanonische, 26 quadratfreie, 26 Primitivwurzel, 106, 132 Primteiler, 6, 22 Primzahlen, 6, 21 Primzahll¨ucke, 25 Primzahlsatz, 23 Primzahltest AKS-, 159 Fermat-, 141 Lucas-, 140 Miller-Rabin-, 151 Wilson-, 139 Produktregel, 101 Pseudoprimzahl, 142 starke zur Basis a, 153 zur Basis a, 144 Quadratwurzel nicht triviale, 151 triviale, 151 Quadrieren wiederholtes, 126 Quotient, 3 Quotientengruppe, siehe Faktorgruppe Quotientenpolynom, 91 Quotientenring, siehe Faktorring Rechtsnebenklasse, 49 Relation, 182 homogene, 182 rechtseindeutige, 182 reflexive, 182 symmetrische, 182

219

transitive, 182 Repr¨asentant, 182 einer Nebenlasse, 49 einer Restklasse, 9 Rest, 3 Restklasse, 95 modulo m, 9 Restklassengruppe, 83 additive, 52, 67 prime, 85 Restklassenring modulo m, 70 Restpolynom, 91 Ring, 69 -homomorphismus, 78 -isomorphismus, 78 kommutativer, 70 mit Einselement, 70 nullteilerfreier, 72 RP, 146 RSA-Verschl¨usselung, 168 Satz von Euler, 86 Satz von Fermat, 86 Satz von Lagrange, 52 Satz von Lucas, 140 Satz von Wilson, 139 Schl¨ussel o¨ ffentlicher, 166 privater, 166 Signatur, 177 Sprache formale, 182 Strukturgleichung, 58 Teilbarkeit, siehe Teiler Teiler, 5, 92 echter, 6, 88 gr¨oßter gemeinsamer, 12, 92 trivialer, 5 Teilerfremdheit, 12 Teilermenge, 6 Teilk¨orper, siehe Unterk¨orper Tr¨agermenge, 34 Untergruppe, 36

220

Stichwortverzeichnis

echte, 36 triviale, 44 Unterk¨orper, 78 Unterring, 78 Urbildmenge, 183 Vektorraum, 185 Verschl¨usselung asymmetrische, 166, 169 hybride, 175 Vielfaches kleinstes gemeinsames, 27 Wertebereich, 183 Wilson-Test, 139 Wort leeres, 181 Zahlen ganze, 1 zusammengesetzte, 6 Zahlenmengen, 181 Zentrum einer Gruppe, 46 Zielmenge, 183