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 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)