Algorithmische Zahlentheorie und Public Key Kryptographie (Forster) Mitgeschrieben von Bernhard Weiß Mitschrift aus dem SoSe 2009 1 INHALTSVERZEICHNIS I Inhaltsverzeichnis 1 Fibonacci-Zahlen 1.1 Schneller Algorithmus zur Berechnung der Fibonacci Zahlen . . . . . 1 1 2 Der Euklidische Algorithmus 2.1 Integritätsbereiche . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Euklidische Ringe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 6 8 3 Der Restklassenring Z/n 10 4 Die multiplikative Gruppe (Z/m)∗ , Primitivwurzel 13 5 Quatratische Reste. Reziprozitätsgesetzt 19 Inhaltsverzeichnis 1 1 Fibonacci-Zahlen Definition 1.1 Die Fibonacci-Zahlen werden rekursiv definiert durch: fib(0) := 0 fib(1) := 1 fib(n + 2) := fib(n + 1) + fib(n) fib(n) 0 1 1 2 3 5 8 13 21 34 n 0 1 2 3 4 5 6 7 8 9 Matrix Schreibweise: fib(n + 1) 1 1 fib(n) = fib(n) 1 0 fib(n − 1) 1 1 A := 1 0 fib(n + 1) n fib(1) =A fib(n) fib(0) fib(n) fib(0) = An wobei fib(−1) = 1 fib(n − 1) fib(−1) fib(1) fib(0) =E fib(0) fib(−1) Satz 1.1 Es gilt: n fib(n + 1) fib(n) 1 1 n =A = fib(n) fib(n − 1) 1 0 Korollar 1.2 fn+1 fn−1 − fn2 = (−1)n Insbesondere sind fn+1 , fn teilerfremd. gcd(fn+1 , fn ) = 1 1.1 Schneller Algorithmus zur Berechnung der Fibonacci Zahlen Satz 1.3 Sei G eine Halbgruppe mit Einselement (multiplikativ geschrieben) Sei nPeine natürliche Zahl mit Binär Darstellung n = di=0 bi 2i , bi ∈ {0, 1}, bd = 1 abgekürzt: n = (bd , . . . b0 )2 Für ein Element x ∈ G kann die Potenz xn mit hächstens 2d Multiplikationen in G Bemerkung 1.1 Das Naive Ferfahren zur berechnung von xn benötigt n − 1 Multiplikationen. Exponentielle Komplexität in Anzahl von Stellen von n. Das Schnelle Verfahren hat Lineare Komplexität 2 Beweis nk := (bd , . . . , bd−k )2 n0 = 1; nd = n Wir berechnen der Reihe nach xni ( 2nk falls bd−k−1 = 0 nk+1 = 2nk + 1 falls bd−k−1 = 1 Sei xi := xni Dann ist(x0 = x falls bd−k−1 = 0 x2k xk+1 = 2 xk · x falls bd−k−1 = 1 Daraus folgt Behauptung. 1 FIBONACCI-ZAHLEN Explizite Formel für die Fibonacci Zahlen Ansatz zur Lösung der Rekursionsgleichung: fn+2 = fn+1 + fn Ansatz: fn = λn ( λ geeignet) ⇔λ2 = λ +q 1 ⇔λ2 − λ − 1 = 0 √ 1 2 1 λ1/2 = 21 ± 5) + 1 = (1 ± 2 2 Jede Linearkombination xn = c1 λn1 +c2 λn2 Ergibt eine Lösung der Rekursiongleichung. Wähle c1 und c2 so dass die Anfangsbedinungen x0 = 0, x1 = 1 erfüllt sind. n n Dann gilt fib(n) √ = c1 λ1 + c2 λ2 ∀n ≥ 0 1 λ1 = 2 (1 + 5) =: g Goldener Schnitt λ2 = − g1 = 1 − g Es ergibt sich: n ) fib(n) = √15 (g n − (−1) gn Es folgt: gn ) fib(n) = round( √ 5 Satz 1.4 1. fib(2n − 1) = fib(n)2 + fib(n − 1)2 2. fib(2n) = fib(n)2 + 2 fib(n) fib(n − 1) fn+1 fn 1 1 n Beweis = A ,A = fn fn−1 1 0 2n n n Aus A = A A folg f2n+1 f2n fn+1 fn fn+1 fn = f2n f2n−1 fn fn−1 fn fn−1 ⇒f2n = fn fn+1 + fn−1 fn ⇒ fn f (fn + fn−1 )fn−1 fn 2 f2n−1 = fn2 + fn−1 3 2 Der Euklidische Algorithmus Definition 2.1 Für ganze Zahlen x, y definiert man: x|y∃q ∈ Z : x = qy Bemerkung 2.1 1. y|0∀y ∈ Z 2. 0|x ⇔ x = 0 3. z|y&y|x ⇒ z|x 4. y|x&x|y ⇔ x = ±y In diesem heißen x, y assoziiert Beweis „⇐„: Trivial „⇒„: Falls x = 0 folgt mit 2., dass y = 0 (y = 0 ⇒ x = 0 analog) Sei also nun x 6= 0 6= y y|x ⇒ x = q2 y x|y ⇒ y = q1 x ⇒x = q2 q1 x q1 ,q2 ∈Z Mit Kürzungssatz: 1 = q2 q1 =⇒ q1 = q2 = ±1 5. y|x1 & y|x2 ⇒ y|(λ1 x1 + λ2 x2 ) ∀λ1 , λ2 ∈ Z 6. y|1 ⇔ y = ±1 7. 1|x∀x ∈ Z Definition 2.2 (Größter gemeinsamer Teiler) Eine ganze Zahl d heißt größter gemeinsamer Teiler der ganzen Zahlen x, y ⇔ 1. d|x&d|y (gemeinsamer Teiler) 2. ∀d0 gemeinsamer Teiler von x, y ⇒d0 |d Bezeichnung: gcd(x, y) meistens wird er nichtnegative Repräsentatn gewählt. Satz 2.1 Der größte gemeinsame Teiler zweier ganzer Zahlen ist (im Falle der existenz) bis aufs Vorzeichen Eindeutig bestimmt. Beweis Sind d1 , d2 zwei gcd so folgt aus definition: d1 |d2 &d2 |d1 ⇒d1 = ±d2 4 2 DER EUKLIDISCHE ALGORITHMUS Bemerkung 2.2 gcd(x, y) = gcd(y, x) gcd(x, 0) = |x| gcd(x, 1) = 1 gcd(x, x) = |x| Definition 2.3 Für ganze Zahlen x, y bezeichne: T (x, y) die Menge aller gemeinsamer Teiler von x und y Lemma 2.1 Seien x, y, λ ∈ Z Dann gilt: T (x, y) = T (x − λy, y) Satz 2.2 Je zwei ganze Zahlen x, y esitzen einen größten gmeinsamen Teiler. Dieser Kann durch den nachfolgenden Algorithmus berechnet werden. Beweis ObdA x 6= 0, y 6= 0, x > 0, y > 0 x0 := x, x1 := y Sukzessive Teilung mit Rest, bis der Rest null wird. x0 = q1 x1 + x2 0 < x2 < x1 x1 = q2 x2 + x3 0 < x3 < x2 .. . xk−2 = qk−1 xk−1 + xk 0 < xk < xk−1 xk−1 = qk xk + 0 Das Verfahren bricht nach endlich vielen Schritten ab. Behauptung: xk ist gcd von x1 und x2 Beweis (der Behauptung) Aus dem Hilfssatz folgt: T (x0 , x1 ) = T (x2 , x1 ) = T (x3 , x2 ) = . . . = T (0, xk ) ⇒Behauptung Bemerkung 2.3 (zur Komplexität des Eukl. Algor.) Worst case: Bestimmung des gcd zweier aufeinandererfolgender Fibonaccizahlen.: fn+1 = fn + fn−1 fn = fn−1 + fn−2 .. . f2 = f1 + f0 |{z} =0 Inbesondere: gcd(fn+1 , fn ) = 1 Da die Fibonacci-Zahlen exponentiell mit dem Index wachsen, folgt: 5 n = O(log fn ) Also gilt für den Euklidischen Alg.: Für die Anzahl der Schritte k gilt: k = O(log |y|) Die Anzahl der Nötigen Schritte wird durch eine Lineare Funktion der Stellenzahl von min(|x|, |y|) nach oben abgeschätzt. ⇒Lineare Komplexität Satz 2.3 (Satz von Bézout) Seien x, y ∈ Z und d = gcd(x, y) ⇒∃λ, µ ∈ Z : d = λx + µy Korollar 2.4 Zwei ganze Zahlen x, y sind genau dann teilerfremd (d.h. gcd(x, y) = 1) ⇔∃λ, µ ∈ Z : 1 = λx + µy Beweis (Satz von Bézout) Mittels Erweiterten Euklidischen Algor. x0 = q 1 x1 + x2 .. . xi−1 = qi xi + xi+1 xi = xi+1 xi+1 + xi+2 .. . Wir zeigen Induktiv, dass sich alle xi als ganzzahlige Linearkombination xi = λi x0 + µi x1 schreiben Lassen. Induktionsanfang: x0 = 1x0 + 0x1 x1 = 0x0 + 1x1 Induktionsschritt: xi−1 = λi−1 x0 + µi−1 x1 xi = λi x0 + µi x1 Aber xi+1 = xi−1 − qi xi (λi+1 , µi+1 ) = (λi−1 , µi−1 ) − qi · (λi , µi ) Bemerkung 2.4 Man definiert analog den ggT von x1 , . . . , xn ∈ Z. gcd(x1 , . . . , xn ) = gcd(gcd(x1 , . . . , xn−1 ), xn ) Es existieren λ1 , . . . , . . . λn ∈ Z mit X xi = gcd(x1 , . . . xn ) i=1 Definition 2.4 (Kleinstes gemeinsames Vielfaches) Die Zahl v heißt kgV von x, y ∈ Z wenn gilt 6 2 DER EUKLIDISCHE ALGORITHMUS 1. x|v&y|v (gemeinsames Vielfaches) 2. Ist w irgend ein gemeinsames Vielfaches von x, y so folgt v|w Bemerkung 2.5 Das kgV ist (Im Falle der Existenz) bis aufs Vorzeichen eindeutig bestimmt Beweis Sind v1 und v2 kleinstes gemeinsames Vielfache so folgt nach Def. v1 |v2 und v2 |v1 ⇒v1 = ±v2 Satz 2.5 In Z besitzen zwei Elemente x, y steths ein kleinstes gemeinsames Vielfaches. es gilt: lcm(0, 0) = 0 xy falls (x, y) 6= (0, 0) lcm(x, y) = gcd(x, y) Beweis Wir können annehmen x 6= 0, y 6= 0 Sei d := gcd(x, y) v := xy d zeige: v = lcm(x, y) 1. x|x yd und y| xd y d.h. v ist gemeinsames Vielfaches. 2. Sei x|w, y|w zeige: v|w: w = αx, w = betay d = λx + µy 1 = λ xd + µ yd ⇒α = λα xd + µα yd = λβ yd + µα yd = = (λβ + µβ) yd y ⇒ d |α ⇒ xy |αx = w d 2.1 Integritätsbereiche Definition 2.5 Ein Integritätsberecih ist ein kommutativer Ring mit Einselement, der Nullteilerfrei ist. d.h. xy = 0 ⇒ (x = 0 oder y = 0) Beispiel 2.1 Z, Q (allgemein jeder Körper) Ist K ein Körper (z.b. K = Q) so ist der Polynomring n X K[X] = { ci X i ci ∈ K, n ≥ 0} i=1 2.1 Integritätsbereiche 7 EIn Integritätsbereich. Ring der Ganzen Gaußschen Zahlen Z[i] := {n + mi : n, m ∈ Z} ⊂ C Z[i] ist integritätsbereich Definition 2.6 Ein Element u eines Integritätsbreich R heißt Einheit wenn u in R invertierbar ist, d.h. wennv ∈ R existieren, sodass uv = 1 Bemerkung 2.6 1. ±1 sind immer Einheiten. 2. In Z sind ±1 die einzign Einheiten. 3. in Z[i] sind ±1, ±i die einzigen Einheiten 4. in einem Körper K ist jedes Element 6= 0 eine Einheit. 5. Die Einheiten in K[X] sind die konstanten Polynome 6= 0 Satz 2.6 Die Menge aller Einheiten eines Integritätsbereiches R bilden eine multiplikative Gruppe die mit R∗ bezeichnet wird. Definition 2.7 Ein Element x ∈ R \ (R∗ ∪ {0}) eines Integritätsbereich R heißt 1. Irreduzibel , wenn für jede Zerlegung x = yz, y, z ∈ R gilt: y ∈ R∗ oder z ∈ R∗ 2. prim , wenn aus x|a · b folgt: x|a oder x|b a, b ∈ R Bemerkung 2.7 Die Begriffe irreduziben und prim stimmen nicht in jedem Integriätsbereich überein. Beispiel: √ R = Z[ −3] Behauptung:√ Das Element √ 2 ist irreduibel, aber nicht prim in R denn: 2|(1 + √−3)(1 − −3) = 4√ Aber 2 - (1 + −3) und 2 - (1 − −3) Bemerkung 2.8 Es gilt stets: prim ⇒irreduziebel. Satz 2.7 in Z sind die Begriffe irreduzibel und prim äquivalent. 8 2 DER EUKLIDISCHE ALGORITHMUS Beweis Sei p irreduzibel und es gelte p|xy Falls p|x sind wir fertig. Falls p - x dann sind p und x Teilerfremd. Bezout =⇒ ∃λ, µ ∈ Z mit: λp + µx = 1 ⇒λpy + µ xy = y |{z} =αp d.h. (λy + µα)p = y Satz 2.8 In Z gilt der Satz von der Eindeutigen Primfaktorzerlegung. d.h. jede Qnganze Zahl x ∈ Z \ 0 lässt sich schreiben als. x = ± ν=1 pν , n ≥ 0 mit Primzahlen pν > 0 Diese Zerlegung ist bis auf Umordnung eindeutig bestimmt. Q Q Beweis OBdA x > 0 Annahme x = nν=1 pν = µ=1 mqµ Induktion nach n n = 0 Klar Induktionsschritt (n-1)-> n Qm pn | µ=1 qµ Also muss pn einen der Faktoren teien. OBdA(sonst umnumeriereung): pn |pm ⇒pQn = qm Q m−1 ⇒ n−1 µ=1 qµ ν=1 pν = Hierauf induktionsvoraussetzung anwenden. 2.2 Euklidische Ringe Definition 2.8 Ein euklidischer Ring ist ein Integritätsbereich R mit einer Funktion ν : R \ {0} → N sodass gilt: Zu jedem Paar x, y ∈ R mit y 6= 0 gibt es Elemente q, r ∈ R sodass: x = qy + r Wobei r = 0 oder ν(r) < ν(y) Bemerkung 2.9 In jedem euklidischen Ring R besitzen je zwei Elemente x, y ∈ R einen größten gemeinsamen Teiler d der mit dem euklidischen Algorytmus bestimmt werden kann. d ist bis auf Einheiten eindeutig bestimmt. Beispiel 2.2 Z[i] ist euklidisch mit ν(n + mi) = n2 + m2 K[X] ist euklidich mit ν(f (X)) = deg f (X) 2.2 Euklidische Ringe 9 Definition 2.9 Seien x, y ∈ Z \ 0 Für eine Primzahl pbezeichne ordp (x) = max{n ≥ 0 : pn |x} Damit gilt: Q x = u · p∈¶ pOrdp (x) Dabei ist u = ±1 und ¶ = {2, 3, 5, 7, 11, 13, . . .} die Menge aller Primzahlen. Alle bis auf endliche viele Faktoren sind = 1, also ist das Produkt in Wirklichkeit endlich. Es gilt: x|y ⇔ Ordp (x) ≤ Ordp (y)∀p ∈ ¶ Daraus folgtQfür den ggT: gcd(x, y) = p∈¶ pmin(Ordp (x),Ordp (y)) Q lcm(x, y) = p∈¶ pmax(Ordp (x),Ordp (y)) Ensprechendes gilt für gcd(x1 , . . . , xn ), lcm(x1 , . . . xn ) 10 3 3 DER RESTKLASSENRING Z/N Der Restklassenring Z/n Definition 3.1 (Kongruenzen) Sei m eine ganze Zahl. Für Ganze Zahlen x, y definiert man x≡y mod m ⇔x − y ∈ mZ d.h. m|x − y Bemerkung 3.1 (Regeln) 1. x ≡ y mod m ⇔ x ≡ mod (−m) D.h. man kann sich auf m ≥ 0 beschränken. 2. x ≡ y mod 0 ⇔ x = y 3. x ≡ y mod 1 ∀x, y ∈ Z Also: Die einzigen interessanten Fälle sind Kongruenzen modulo m ≥ 2 Satz 3.1 Die Kongruenz modulo m ist eine Äquivalenzrelation auf Z Definition 3.2 (Kongruenzklassen) Eine ganze Zahl x modulo m besteht aus allen ganzen Zahlen, die zu x modulo m kongruent sind. [x]m oder (x mod m) Wenn klar ist welches m gemeint ist, auch x oder [x]. [x]m = x + mZ = {y|x ≡ y mod m} [0]m = mZ Man nennt x einen Repräsentanten der Restklasse. Die Menge alle Restklassen modulo m wird mit Z/mZ oder kurz Z/m bezeichnet. Für m > 0 gilt also: Z/m = {0, 1, . . . m − 1} Addition und Multiplkation von Restklassen: x+y =x+y x · y = x · y Diese Abbildungen sind Wohldefiniert. (Beweis wird nicht ausgeführt) Satz 3.2 Die Menge der Restklassen Z/m bildet bzgl. der oben definierten Addition und Multiplikation einen kommutativen Ring mit Einselement. Die natürliche Abbildung %Z → Z/m, %(x) = [x]m ist ein surjektiven Ring-Homomorphismus Satz 3.3 Ein Element x ∈ Z/n ist genau dann invertierbar (in Z/m) wenn x und m teilerfremd sind. 11 Beweis 1. Sei gcd(x, m) = 1 ⇒λx + µm = 1 ⇒λx = 1 − µm ⇒λx ≡ 1 mod m =⇒λ · x = 1 2. Sei x invertierbar in Z/m ⇒∃z ∈ Z, sodass zx = 1 d.h. zx = 1 + km mit k ∈ Z ⇒zx − km = 1 ⇒gcd(x, m) = 1 Bemerkung 3.2 (Bezeichnungen) (Z/m)∗ Bezeichnet die multiplikative Gruppe der Invertierbaren Elemente von Z/m Korollar 3.4 Z/m ist genau dann Körper, wenn m eine Primzahl ist. p Prim ⇒ Fp = Z/p Andere Bezeichnung: Fp = GF (p) (Galoisfeld) Definition 3.3 (Eulersche Phi-Funktion) Für m ≥ 1 setzt man: ϕ(m) := #(Z/m)∗ ϕ(m) = #{x ∈ Z : 0 < x ≤ m mit gcd(x, m) = 1} Insbesondere ϕ(1) = 1 Sei p prim. k ≥ 1 ϕ(p) = p − 1 ϕ(pk = pk − pk−1 = pk−1 (p − 1) oder pk (1 − p1 ) Definition 3.4 (Direktes Produkt von Ringen) A1 , . . . Ar Ringe. A := A1 × . . . × Ar Addition und Multiplikation komponentenweise. Nullelement: (0, . . . , 0) Einselement: (1, . . . , 1) Satz 3.5 Sei m|n dann hat man einen Natürlichen Ringhomomorphismus Z/n → Z/m; [x]n 7→ [x]m Satz 3.6 (Chinesischer Restsatz) Seien m1 , . . . mr paarweise Teilerfremde natürliche Zahlen und m := m1 · . . . · mr Dann ist die Abbildung Φ : Z/m → Z/(m1 ) × . . . Z/(mr ) [x]m 7→ ([x]m1 , . . . , [x]mr ) ein Ringisomorphismus 12 3 DER RESTKLASSENRING Z/N Beweis Φ ist Ring Homomorphismus. X Nur noch zu Zeichen, dass Φ bijektiv. Da die linke und rechte endliche Menge mit m = m1 · . . . · mr Elementen sind, reicht es zu zeigen, dass Φ injektiv ist oder dass Φ surjektiv ist. 1. Zeige, dass Φ injektiv ist. Es genügt dass Φ−1 (0) = {0} Sei x ∈ ker φ. d.h. φ(x) = 0 ⇒ mj |x für alle j teilerf remd =⇒ m|x d.h. x = 0 (Beweis konstruktiv) 2. Zeige: dass Φ surjektiv ist. Sei e1 := (1, 0, . . . , 0) .. . er := (0, . . . , 0, 1) Konstruiere Element ui ∈ Z/m mit Φ(ui ) = ei Eigenschaft von ui : ui ≡ 1 mod mi ui ≡ 0 mod mjQ i 6= j Sei Dazu zi := i6=j mj Dann gilt zi ≡ 0 mod mj , ∀j 6= i und zi 6= 0 mod mi und es gilt sogar: gcd(zi , mi ) = 1 Daher ist zi invertierbar modulor mi d.h. ∃λi ∈ Z : λi zi ≡ 1 mod mi Setze nun ui := λi zi Q Sei jetzt (x1 , . . .P , xr ) ∈ (Z/mj ) beliebig vorgegeben. Setze nun y := rj=1 xj uj ∈ Z/m Dann gilt φ(y) = (x1 , . . . , xr ) Bemerkung 3.3 (Klassische Formulierung) Seien m1 , . . . m2 paarweise teilerfremd. Dann ist für jedes r-tupel a1 , . . . ar das System der Kongruenzen x ≡ a1 mod m1 .. . x ≡ ar mod mr lösbar. Die Lösung ist modulor m := m1 · · · . . . · · · mr eindeutig bestimmt. Korollar 3.7 Mit derselben Voraussetzung gilt: ∼ = (Z/m)∗ −→ (Z/m1 )∗ × . . . × (Z/mr )∗ Insbesondere gilt für paarweise teilerfremde mj : ϕ(m1 · · · . . . · · · mr )ϕ(m1 ) · . . . · · · ϕ(mr ) 13 Spezialfall: Sei n ∈ N und n = pk11 · . . . · pkr r ∼ = Q Dann gilt Z/n =−→ rj=1 Z/mj ∼ = Q und (Z/n)∗ −→ (Z/mj )∗ Q k und ϕ(n) = rj=1 ϕ(pj j Satz 3.8 Q ϕ(n) = n p|n (1 − p1 ) k k k −1 k Beweis ϕ(pj j ) = pj j − pj j = pj j (1 − Q Q k k Q ϕ(pj j = rj=1 (pj j ) rj=1 (1 − p1j ) 4 1 ) pj Die multiplikative Gruppe (Z/m)∗, Primitivwurzel Satz 4.1 (Lagrange) Sei G eine endliche Gruppe und H ⊂ G eine Untergruppe. Dann gilt: #H ist ein Teiler von #G Dabei bezeichne #M die Anzahl der Elemente einer endlichen Menge M Für endliche grupen schreibt man auch Ord(G) = #G Beweis Wir betrachten die Nebenklassen von H d.h. die Mengen: xH := {xh : h ∈ H}x ∈ G Für diese Nebenklassen gilt genau eine der Alternatien: 1. x1 H = x2 H 2. x1 H ∩ x2 H = ∅ Denn: sei (2.) nicht der Fall dann gibt es ein z ∈ x1 H ∩ x2 H z = x1 h1 = x2 h2 , hi ∈ H Zeige x1 H ⊂ x2 H Ein beliebiges y ∈ x1 H lässt sich schreiben als: y = x1 h x1 = x2 h2 h−1 1 Also: y = x2 h2 h−1 1 h ∈ x2 H Analog zeigt man x2 H ⊂ x1 H Jede Nebenklasse xH hat ebensoviele Elemente wie H. Aus der aussage Oben folgt: ˙ rH G = x1 H P ∪˙ . . . ∪x r ⇒#G = j=1 #(xj H) = r · (#H) 14 4 DIE MULTIPLIKATIVE GRUPPE (Z/M )∗ , PRIMITIVWURZEL Bemerkung 4.1 (Bezeichnung) Ord(G) =: [G : H] Ord(H) Index von H in G Definition 4.1 x ∈ G, G endliche Gruppe: Ord(x) := min{n ≥ 1| xn = e} < x >:= {xn | n ∈ N} sei die von x erzeugte Untergruppe Definition 4.2 Eine Gruppe G heißt zyklisch, falls es ein Element g ∈ G gibt, sodass: < g >= G g heißt erzeugendes Element (Generator) von G Für jedes Element x ∈ G ist die Untergruppe H :=< x > zyklisch. Satz 4.2 Sei G eine endliche Gruppe und x ∈ G dann gilt Ord(x)| Ord(G) xOrd(G) = e Beweis 1. Behauptung folgt aus Satz von Lagrange die 2. Behauptung: Ord(x) · r = Ord(G) für ein r ∈ N xOrd(G) = xOrd(x)r = (xOrd(x) )r = er = e Satz 4.3 (Euler) Sei m ≥ 2 und x eine zu m teilerfremde ganze Zahl, dann gilt: xϕ(m) ≡ 1 mod m Beweis die multiplikative Gruppe (Z/m)∗ hat die Ordung ϕ(m) Satz 4.4 (kleiner Satz von Fermat) sei p eine Primzahl und x eine ganze zahl mit p - x dann gilt xp−1 ≡ 1 mod p Andere Formulierung p prim x ∈ Z beliebig. xp ≡ x mod p Definition 4.3 Eine ganze Zahl g heißt Primitivwurzel modulo m :⇔ g zu m teilerfremd ist und (Z/m)∗ =< g >. d.h. Ord(g) = ϕ(m) 15 Satz 4.5 Sei x Element einer (endlichen abelschen) Grupe G mit Ordnung m. Sei k eine zu m teilerfremde ganze Zahl. Dann hat xk ∈ G ebenfalls die Ordnung m. Beweis (xk )m = xkm = (xm )k = 1 ⇒Ordnung von xk ist ein Teiler von m ⇒Angenommen, die Rondung von xk wäre ein echter Teiler m0 von m Dann sind k und m0 teilerfremd. 0 0 1 = (xk )m = xkm und Ord(x) = m ⇒ m|km0 Da m und k teielrfremd sind, so folgt: m|m0 ⇒m = m0 Korollar 4.6 x ∈ G, Ord(x) = m; l ∈ Z beliebig ⇒Ord(xl ) = Beweis d := gcd(l, m) m1 := md Dann Hat xd die Ordnung m1 Nun ist m1 und dl sind teilerfremd. l Also nach Satz: Ord (xd ) d m gcd(l,m) = Ord(xd ) = m1 = m gcd(l,m) Satz 4.7 Seien x, y zwei Elemente einer endlichen abelschen Gruppe mit Ord(x) = k, Ord(y) = l Falls k und l teilerfremd sind gilt: Ord(xy) = k · l Beweis 1. (xy)kl = xkl y kl = (xk )l (y l )k = 1 Daraus folgt dass Ord(xy)|kl 2. ANgenommen Ord(xy) währe ein echter Teiler von kl ⇒ Ord(xy) = k 0 l0 mit k 0 |k, l0 |l ObdA sei k 0 < k 0 0 0 0 0 0 Es gilt (xy)k l = 1 = (xy)k l = (xl )k (y l )k = (xl )k Da gcd(l, Ord(x)) = 1 hat xl ebenfalls Ordnung k 0 Widerspruch zu (xl )k = 1 Satz 4.8 (Gauß) Sei G ⊂ K ∗ eine endliche Untergruppe der multiplikativen Gruppe Eines Körpers K. Dann ist G zyklisch, dh.h. es gilt ein ζ ∈ G sodass G = hζi 16 4 DIE MULTIPLIKATIVE GRUPPE (Z/M )∗ , PRIMITIVWURZEL Beweis Ord(G) =: m = q1k1 . . . qrkr die Kanonische Primfaktorzerlegung. k Es genügt zu zeigen, dass es Elemente xj ∈ G gibt mit Ord(xj ) = qj j Q Dann hat g := xj die Ordnung m Beweis dieser Aussage: Zur Vereinfachung lassen wir den Index j weg. Sei q eine Primzahl und k ≥ 1 mit q k km (d.h. q k ist die höchste Potenz von q die in m aufgeht) m Wähle ein z ∈ G mit z q 6= 1 Korollar 4.9 Zu jeder Primzahl p existiert eine Primitivwurzel g modulo p Beweis Satz Anwenden auf K = Z/p und G = (Z/p)∗ m Die Anzahl der Elemente z ∈ G mit z q = 1 ist höchstens gleich mindestens m − ( mq ) m qk = m(1 − 1 ) q Elemente mit z m q m q also gibt es 6= 1 Definiere x := z Behauptung: Ord(x) = q k Beweis davon: m k k xq = (z qk )q = z m = 1 Es folgt, dass die Ordnung von X ein Teiler von q k ist. Wäre die Ord(x) = q l mit l < k, so würde folgen m m k−1 l k−1 = z q 6= 1 Widerspruch 1 = q q ⇒ 1 = xq = (z qk )q Korollar 4.10 Zu Jeder Primzahl p existiert eine Primitivwurzel g modulo p Satz 4.11 Sei p eine Primzahl Eine Ganze Zahl g mit p - g ist genau dann eine Primitivwurzel modulo p wenn gilt: p−1 ∀q|p − 1 g q 6=≡ mod p Beweis Die bedinung ist trivialerweise notwendig Die Bedinung ist hinreichend weil: in jedem Fall gilt: g p−1 ≡ 1 mod p Wäre die Ordnung von g ein echt kleiner als p − 1 r := Ord(Z/p)∗ ((g) > p − 1 so gäbe es einen Primteiler q|p − 1 mit r| p−1 ⇒ 1 = gr ⇒ g q p−1 q ≡ 1 Widerpspruch. Satz 4.12 Es gibt geneu ϕ(p − 1) Primitivwurzeln modulo p Beweis Sei g eine Primitivwurzel Ein Element g1 = g k ist genau dann Primitivwurzel wen gcd(k, p − 1) = 1 17 Bemerkung 4.2 Ist p − 1 = q1k1 . . . qkkr die kanonische Primfaktorzerlegung von p − 1 so gilt: Qr 1 ϕ(p − 1) = (p − 1) i=1 (1 − q ) j Qr ϕ(p−1) 1 d.h. p−1 = j=1 (1 − qj ) Bemerkung 4.3 (Vermutung von Artin) Die Zahl 2 ist Primitivwurzeln von unendlich vielen Primzahlen p. Satz 4.13 Unter Annahme der Erweiterten Riemanschen Vermutung gibt es eine Konstante c > 0 sodass für jede Primzahl p eine Primitivwurzel g existiert mit g ≤ c(log p)2 Definition 4.4 Sophie German Primzahl-Paare q und p := 2q + 1 prim Primitivwurzeln modulo Primzahlpotenz Satz 4.14 Sei p eine ungerade Primzahl und g eine Primitvwurzel 1. g ist genau dann Primitivwurzel mod p mod p2 , wenn g p−1 6≡ 1 mod p2 2. Falls g p−1 ≡ 1 mod p2 so ist g̃ := g + p Primitivwurzel modulo p2 Beweis 1. Die Bedinung ist Notwendig (T rivialerweise) Hinreichend: Aus der Bedinung folgt: g p−1 = 1 + ap (in Z) mit p - a Annahme: g währe keine Primitivwuzel mod p2 Dann ist Ord(Z/p2 )∗ ) (g) ein echter Teiler von Ord(Z/p2 )∗ ) = (p − 1)p Es gäbe daher einen Primteiler q|(p − 1)q (p−1)p dass g q ≡ 1 mod p2 1. Fall: q = p (p−1)p Aber g q = g p−1 6≡ 1 nach voraussetzung D.h. dieser Fall tritt nicht auf. 2. Fall: q|p − 1 Da p teilerfremd zu p − 1 ist g p ebenfalls Primitivwurzel modulo p p−1 ⇒(g p ) q 6≡ 1 mod p p−1 ⇒(g p ) q 6≡ 1 mod p2 2. Sei g p−1 ≡ 1 mod p2 ⇒g̃ p−1 = (g + p)p−1 = g p−1 + (p − 1)pg p−2 mod p2 (gilt wegen Binomischen Lehrsatz und p2 in jedem weitern Summanden) 4 DIE MULTIPLIKATIVE GRUPPE (Z/M )∗ , PRIMITIVWURZEL 18 Aber (p − 1)pg p−2 6≡ 0 mod p2 ⇒g̃ p−1 6≡ 1 mod p2 ⇒Behauptung. Satz 4.15 Sei p eine ungerade Primitivzahl und k ≥ 2 Eine gNze Zahl ist dann Primitiwurzel dann Primitivwurzel modulo pk wenn sie Primitivwurzel modulo p2 ist. Beweis Eine Implikation ist trivial. Zur Umkehrung: Sei also vorausgesetzt, dass g Primitivwurzel modulor p2 ist. Dann gilt: g p−1 = 1 + ap, p - a k−2 Dann gilt für alle k ≥ 2 : g (p−1)p = 1 + apk−1 mod pk Durch Induktion: k → k + 1 k−2 Wir können annahmen : g (p−1)p = 1 + apk−1 Potenzierung mit p: Binom g p−1 pk−1 = (1 + apk−1 )p = 1 + apk mod pk+1 Daraus folgt dass g PW mod pk d.h. dass g in (Z/pk )∗ die Ordnung. Ord(Z/pk )∗ = (p − 1)pk−1 hat. Dies ist gleichbedeutend damit, dass für jeden Primteiler q|(p − 1)pk−1 gilt g (p−1) pk q 6≡ 1 mod pk Bemerkung 4.4 Für (Z/2k )∗ (Z/2)∗){1} zyklisch (Z/4)∗ = {pm1 zyklisch (Z/8)∗ = {1, 3, 5, 7} ist nicht zyklisch. Hier gilt. für alle x ∈ (Z/8)∗ Hier gilt: x2 ≡ 1 mod 8 für alle x ∈ (Z/8)∗ Also ist diese Grupe nicht Zyklisch. Es folgt: (Z/2k )∗ ist nicht zyklisch für k ≥ 3 Es gilt Ord(Z/2k )∗ = 2k−1 Für x ∈ (Z/2k )∗ gilt: k−2 x2 ≡ 1 mod 2k Für das Element 5 ∈ (Z/2k )∗ , k ≥ 3 gilt: Ord(Z/2k )∗ (5) = 2k−2 Es gilt genauer. Die Abbildung: (Z/2) × (Z/2k−2 ) → (Z/2k )∗ (, ν) 7→ (−1) 5ν Ist Bijektiv und ein Gruppenhomo. 19 5 Quatratische Reste. Reziprozitätsgesetzt Definition 5.1 Eine Zahl a heißt quadratische Rest modulo m, falls die gleichung x2 ≡ a mod m lösbar ist mit x ∈ Z Bemerkung 5.1 (Spezialfall) m = p 6= 2 sq : F∗p → F∗p ; x 7→ x2 Es gilt: sq(xy) = sq(x) sq(y) ⇒sq ist Gruppenhomo. Im(sq) ⊂ F∗p ist Untergruppe aller Quadrate. ker(sq) = {±1} Da # ker = 2 folgt # Im = p−1 2 Es gibt also genausoviele nichtquadrate wie Quadrate. QR · QR = QR QR · N R = N R N R · QR = N R N R · N R = QR ( p· ) sqr 1 → {±1} → F∗p −→ F∗p −→ {±1} → 1 Ist eine exakte Sqeuenz. Definition 5.2 Sei p eine ( ungerade Primzahl nd a eine ganze Zahl mit p - a 1 falls aquadratischer Rest a := p −1 sonst Man setzt noch ap = 0 falls p|a Satz 5.1 (Euler-Kriterium) Sei p eine ungerade Primzahl. Dann gilt für alle a ∈ Z p−1 a a 2 ≡ p mod p Beweis Falls p|a sind beide Seiten gleich 0 mod p Sei also p - a 1. Sei a QR mod p, d.h. ∃x∈ Z : x2 ≡ a mod p p−1 ⇒a 2 ≡ xp−1 ≡ 1 = ap 2. Sei a NR Wähle g Primitivwurzel. Dann gilt a ≡ g ν , (ν ungerade. sonst a Quadrat.) ν = 2k + 1 p−1 p−1 p−1 a 2 ≡ g 2 ·(2k+1) ≡ (g (p−1) )k · g 2 ≡ −1 | {z } |{z} =1 =−1 20 5 QUATRATISCHE RESTE. REZIPROZITÄTSGESETZT Definition 5.3 Sei p ungerade Primzahl } H(p) := {1, 2, . . . p−1 2 Bemerkung 5.2 Jede Zahl a mit p - a ist Modulo p äquivalent zu genau einem Element von H(p) ∪ −H(p) Definition 5.4 Für a ∈ Z mit p - a seien Funktionen a : H(p) → {±1}, σa : H(p) → H(p) definiert durch: ax = a (x)δa (x) mod p für alle x ∈ H(p) Bemerkung 5.3 σa ist bijektiv, d.h. eine Permutation Lemma 5.1 (Gauss) Sei p ungerade Primzahl und a ∈ Z mit p - a. Dann gilt: Y a = a (x) p x∈H(p) Anders ausgedrückt: Die Zahl a ist QR bzw NR, je nachdem die Anzahl der absolut kleinsten Reste der Zahlen 1a, . . . , p−1 a die Negativ sind, gerade bzw ungerade ist. 2 Q Q Q Q Q Q Beweis x∈H(p) ax = x∈H(p) a (x)σa (x) ≡ x∈H(p) x∈H(p) σa (x) ≡ x∈H(p) a (x) y∈H(p) y Q Q p−1 Q ⇒a 2 = (x) a x∈H(p) x∈H(p) x∈H(p) x Q p−1 ⇒ a 2 ≡ x∈H(p) a (x) Satz 5.2 (Ergänzungs-Sätze zum quadratischen Reziprozitätsgesetz) Sei p ungerade Primzahl. 1. 2. −1 p 2 p Beweis = (−1) = (−1) p−1 2 p2 −1 8 ( 1 = −1 falls p ≡ 1 mod 4 falls p ≡ 3 mod 4 ( 1 = −1 falls p ≡ ±1 mod 8 falls p ≡ ±3 mod 8 1. Euler-Kriterium 21 2. Alle x ∈ H(p) werden mit 2 multipliziert. Es Entstehen die Zahlen: 2, 4, 6, . . . p − 1 Welche dieser Zahlen haben negativen absolu kleinsten Rest? Alle Zahlen < p2 haben pos abs kleinsten Rest Alle Zahlen > p2 und < p negativen. x hat positiven absolut kleinsten Rest ⇔ 2x < p2 ⇔ x < p4 x hat negativen abs. kleinsten Rest ⇔ 2x > p2 ⇔ x > p4 Fallunterscheidung (a) p = 8k + 1 #H(p) = 4k positiv absolu kleinste Reste: 2k negative absolut kleinste Reste: 2k ⇒ p2 = +1 (b) p = 8k + 3 #H(p) = 4k + 1 positiven absolu kleinsten Reste: 2k negativen absolut kleinste Reste: 2k + 1 ⇒ p2 = −1 (c) p = 8k + 5 #H(p) = 4k + 2 positive absolut kleinsten Reste: 2k + 1 negativen absolut kleinste Reste: 2k + 1 2 ⇒ p = −1 (d) p = 8k + 7 #H(p) = 4k + 3 positive absolut kleinste Reste: 2k + 1 ngative absolu kleinste Reste: 2k + 2 ⇒ p2 = +1 Definition 5.5 Für eine ganze zahl ν > 0 sei Iν := {x ∈ R : (ν − 1) p2 < x < ν p2 Es gilt: Der Absolut kleinste Rest von ka genau dann negativ, wenn ka ∈ Iν , ν gerade. Sei rν die Anzahl der ka, k ∈ H(p) die in Iν liegen. Dann ist: p p rν = bν 2a c − b(ν − 1) 2a c (keine der zahlen ka liegt auf dem Rand eines der Intervalle, da a und p teilerfremd sind) Beispiel 5.1 p = 13; a = 5 H(p) = {1, 2, 3, 4, 5, 6} Lemma 5.2 Pba2c a = (−1)m mit m = k=1 bk ap c − b(k − 21 ) ap c p 22 5 QUATRATISCHE RESTE. REZIPROZITÄTSGESETZT Satz 5.3 Seien p 6= q zwei ungerade Primzahlen und a eine nicht durch p teilbare ganze zahl mit p ≡ ±q mod 4a Dann gilt: a a = p q P Beweis ap = (−1)m , m = 1≤2νa (s2ν − ssν−1 ) p mitsµ = bµ 2a c P 0 a = (−1)m , m0 = 1≤2νa (s02ν − s0sν−1 ) q q mit s0µ = bµ 2a c Sei nun q ≡ p mod 4a d.h. q = p + 4al q p p p c = bµ( 2a + 2l)c = bµ 2a c + 2µl ≡ bµ 2a c ≡ sµ mod 2 ⇒ s0µ = bµ − 2a 0 Esfolgt m ≡m mod 2 a ⇒ p = aq Sei nun q ≡ −p mod 4a d.h. q = 4al − p mit l ∈ Z (. . . ) ⇒ Satz 5.4 (Quadratisches Reziprozitätsgesetz) Seien p 6= q ungerade Primzahlen. Dann gilt: p−1 q−1 q p = (−1) 2 2 q p D.h. pq = pq falls p ≡ 1 mod 4 oder q ≡ 1 mod 4 p q = − falls p ≡ 3 mod 4 und q ≡ 3 mod 4 q p Beweis 1. Sei p ≡ q4 ObdA sei p > q Dann q + 4t gilt: p = p−1 p−q −q q t 4t 2 = = = = (−1) p p p p p 4t+q t 4t = = q = pq q q Nach satz gilt: vorherigem t t = p q q falls p ≡ 1 mod 4 p ⇒ pq = − q falls p ≡ 3 mod 4 p 23 2. p 6≡ q mod 4 ⇒p + q ≡ 0 mod 4 p +q =4t,t > 0 p+q 4t t = = = pq p p p t = 4tq = p+q = pq q q Definition 5.6 (Fermat-Zahlen) n Fn := 22 + 1 Die n-te Fermat Zahl. für n ≤ 4 sind diese Prim. Aber 641|F5 Lemma 5.3 Sei n > 1 und Fn Prim dann ist 3 Primitivwurzel modulo Fn Beweis Wir zeigen zunächst, dass 3 ein qudaratischer Nicht-Rest modulot Fn ist. 3 = Fn 3 = 32 = −1 Fn n n Fn ≡ 1 mod 4, Fn = 22 + 1 ≡ (−1)2 + 1 ≡ 2 mod 3 Euler Fn −1 =⇒ 3 2 ≡ −1 mod Fn n Die multiplikative Gruppe Z/Fn∗ hat 22 Elemente Die Ordnung eines Beliebigen Elements ζ ∈ Z/Fn∗ ist eine Zweierpotenz Spezialfall ζ = 3 n 2n −1 Behauptung Ord 3 = Fn − 1 = 22 denn sonst wäre 32 ≡ 1 mod Fn aber dies ist ≡ −1 Satz 5.5 Fn ist genau dann eine Primzahl, wenn 3 Fn −1 2 2n −1 = 32 ≡ −1 mod Fn Beweis Bedinung ist notwendig nach dem vorherigen Satz. Die Bedinnung ist hinreichend: 2n Denn es Folgt 3Fn −1 = 32 ≡ 1 mod Fn n ⇒ Ord Z/Fn (3)|22 n Andererseits ist Ord(3) nicht kleiner von 22 n ⇒3 erzeugt in (Z/Fn )∗ eine Untergruppe der Ordnung 22 = Fn − 1 ⇒Z/Fn Körper ⇒Fn prim. Satz 5.6 Jeder mögliche Primteiler einer Fermatzahl p|Fn k · 2n+2 + 1 mit k ≥ 1 Bemerkung 5.4 Anwendung auf F5 haben die Teiler die Gestalt: p = k27 + 1 = 128k + 1 n ≥ 5 hat die Gestalt: p = 24 5 QUATRATISCHE RESTE. REZIPROZITÄTSGESETZT p = 129, 257, 385, 513, 641, . . . für k = 1, 2, 4 ensteht keine Primzahl. 257 = F3 aber allgemein gcd(Fn , Fm ) = 1 Also 257 - F5 Also 641 ist der erste zu Testende Teiler. Um zu Testen ob p := k2n+2 + 1 ein Teiler n von Fn ist, genügt es zu untersuhen, ob 22 ≡ −1 mod p ist Dies spielt sich in (Z/p)∗ ) ab. Definition 5.7 sei m ≥ 3 ungerade. m = p1 · . . . · p r die Primzahlzerlegung.(pj ) nicht notwendig paarweise verschieden. a m Anmerkung: A QR modulo m, gcd(a, m) = 1 =⇒ Die Umkehrung gilt jedoch nicht. 2 2 2 Bsp: 15 = 5 5 = −1 − 1 = 1 Aber 2 ist kein Quadrat modulo 15. := r Y a j=1 a m pj =1 Bemerkung 5.5 (Eigenchaften) a 1. m = mb falls a ≡ b mod m b a 2. ab = m m m a a = ka m für ungerade m, k ≥ 3 3. km 4. a m = 0 ⇔ gcd(a, m) 6= 1 Satz 5.7 (Rez. Gesetz für Jacobi) m−1 = (−1) 2 1. −1 m 2. 2 m = (−1) m2 −1 8 3. sind k, m teilerfremd. ungerade Zahlen ≥ 3 so folgt: m m−1 k−1 k = (−1) 2 2 m k Bemerkung 5.6 Berechnung des Legendresymbols. 85 170 2 85 = 211 211 = − 211 = − 211 2 − 3 =1 211 85 = − 41 85 = − 85 41 = − 3 41 = − 41 3 = 25 Wurzelziehen modulo p 1. p ≡ 3 mod 4 p−1 Sei ap = 1 d.h. a 2 ≡ 1 mod p p+1 ⇒a 2 ≡ a mod p Setze x := a ⇒x2 = a p+1 4