1.4 Die maximale Periode

Ähnliche Dokumente
1 Klassische Zufallsgeneratoren: Kongruenzgeneratoren und Schieberegister

Existenz unendlich vieler Primzahlen Es werden mehrere Beweise für die Existenz unendlich vieler Primzahlen vorgetragen.

Lösungsvorschlag zur Nachklausur. Zeigen Sie die folgenden voneinander unabhängigen Aussagen:

5 Grundlagen der Zahlentheorie

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

Beweis des Satzes von Euler

Einführung in die Algebra

7 Der kleine Satz von Fermat

Primitive Elemente und Quadratreste

7 Die Sätze von Fermat, Euler und Wilson

Mersennesche Primzahlen

Einführung in die Algebra

Zahlentheorie für den Gebietswettbewerb für Fortgeschrittene der Österreichischen Mathematik-Olympiade

Diskrete Strukturen Kapitel 5: Algebraische Strukturen (Gruppen)

14 Kreisteilungskörper

Der Lucas Lehmer Test

Grundkurs Mathematik I

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

9. Primitivwurzeln. O. Forster: Einführung in die Zahlentheorie

Die Ringe Z n. Invertierbare Elemente ( Einheiten ) für n > 0 wird auf Z n = {0, 1, 2,..., n 1} definiert: n : Z n Z n Z n : (a, b) (a b) mod n

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

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

Zahlentheorie II. smo osm. Thomas Huber. Inhaltsverzeichnis. Aktualisiert: 1. August 2016 vers

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

5-1 Elementare Zahlentheorie

Algebra. 0 = (f g)(x) = f(x) g(x).

Behauptung: Es gibt unendlich viele Primzahlen.

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

Probeklausur - eine Lösung

IV Beweise in der Mathematik

Einführung in die Algebra

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

Seminar zur Zahlentheorie Spezialfälle des Satzes von Fermat

1 Fibonacci-Zahlen und Teilbarkeit

Prof. Dr. H. Brenner Osnabrück SS Zahlentheorie

Lösungen der Aufgaben

Diskrete Mathematik Kongruenzen

Körper- und Galoistheorie

KAPITEL 1: ENDLICHE KÖRPER 1 ALLGEMEINES 2 GLEICHUNGEN ÜBER EINEM ENDLICHEN KÖRPER

3.5 Ringe und Körper. Diese Eigenschaften kann man nun auch. 1. (R, +) ist eine kommutative Gruppe. 2. Es gilt das Assoziativgesetz bezüglich.

Übung zur Vorlesung Diskrete Strukturen I

Grundlagen der Mathematik

Primitive Elemente und Quadratreste

Grundlagen der Arithmetik und Zahlentheorie

1 Aufbau des Zahlensystems

Beweistechniken. Vorkurs Informatik - SoSe April 2013

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

Der Drei-Quadrate-Satz von Gauß

4 Vollkommene Zahlen

Prof. Dr. H. Brenner Osnabrück SS Zahlentheorie. Vorlesung 4. Die Restklassenringe Z/(n)

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

1.2 Eigenschaften der ganzen Zahlen

1 Herangehensweise an eine Aufgabe

Miller-Rabin Test. Primzahl- und Zerlegbarkeitstests. Zeugen für die Zerlegbarkeit ganzer Zahlen

Der kleine Satz von Fermat

2.2. ELEMENTARE TEILBARKEITSTHEORIE, INTEGRITÄTSBEREICHE 65

PROSEMINAR LINEARE ALGEBRA

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

Grundlegendes der Mathematik

1. Gruppen. 1. Gruppen 7

Ganze algebraische Zahlen

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

Vorkurs Mathematik. Prof. Udo Hebisch WS 2017/18

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

Körper- und Galoistheorie

6-1 Elementare Zahlentheorie Zahlen, die sich als Summe zweier Quadrate schreiben lassen.

Quadrate und Wurzelziehen modulo p

Körper- und Galoistheorie

Lineare Schieberegisterfolgen

Vorlesung Diskrete Strukturen Die natürlichen Zahlen

2.4. Kongruenzklassen

Sechs Beweise für die Unendlichkeit der Primzahlen. Kapitel 1

Seminarvortrag aus Reiner Mathematik Existenz von Primitivwurzeln

Seminararbeit zur Zahlentheorie. Die Gaußschen Zahlen

Übung ln(p) x aus dem Primzahlsatz π(x) x/ ln(x) folgt. Gehen Sie dabei wie folgt vor: i) p x

Algebra. 1 = a u + b,

2.6 Ergänzungen und Beispiele: Semidirekte Produkte

Beweistechniken. Beweistechniken. Vorsemesterkurs Informatik Theoretischer Teil Wintersemester 2013/ Oktober Vorsemesterkurs WS 2013/1

Zahlentheorie. Vorlesung 14. Fermatsche Primzahlen

Tim Behnke. 09. November Wintersemester 2017/2018 Proseminar Das Buch der Beweise. 4 Beweise für die Unendlichkeit der Primzahlen.

Eine kurze Tabelle soll uns erste Einsichten erleichtern. Der Strich heißt, dass es eine solche Darstellung nicht gibt.

Einführung in Algebra und Zahlentheorie Lösungsvorschläge zur Klausur vom Aufgabe 1 (6 Punkte)

8 Summen von Quadraten

n (als K 0 -Vektorraum) und insbesondere

3.7 Eigenwerte und Eigenvektoren

Lineare Algebra I 5. Tutorium Die Restklassenringe /n

c Swiss Mathematical Society, 2007

Vorkurs: Mathematik für Informatiker

Bitstrom-Verschlüsselung

Transkript:

1.4 Die maximale Periode Wann hat ein linearer Kongruenzgenerator zum Modul m die maximal mögliche Periode m? Für einen multiplikativen Generator ist das nicht möglich, weil man vom Folgenglied 0 nie mehr wegkommt. Im Moment sind also nur gemischte Kongruenzgeneratoren von Interesse. Der triviale Generator mit erzeugender Funktion s(x) = x + 1 mod m zeigt, dass dann die Periodenlänge m möglich ist; er zeigt natürlich auch, dass die maximale Periodenlänge noch lange nicht hinreicht, um die Qualität eines Zufallsgenerators nachzuweisen. Das allgemeine Ergebnis ist leicht formuliert: Hauptsatz 1 (Hull/Dobell 1962, Knuth) Der lineare Kongruenzgenerator mit erzeugender Funktion s(x) = ax + b mod m hat genau dann die Periode m, wenn folgende drei Bedingungen erfüllt sind: (i) b und m sind teilerfremd. (ii) Jeder Primteiler p von m teilt auch a 1. (iii) Ist m durch 4 teilbar, so auch a 1. Die erste Bedingung bedeutet insbesondere b 0, so dass also wirklich ein gemischter Kongruenzgenerator vorliegt. Dem Beweis werden drei Hilfssätze vorangestellt. Hilfssatz 1 Sei m = m 1 m 2 mit teilerfremden natürlichen Zahlen m 1 und m 2. Seien λ, λ 1 und λ 2 die Perioden der Kongruenzgeneratoren x n = s(x n 1 )modm bzw. mod m 1 bzw. mod m 2 zum Startwert x 0. Dann ist λ das kleinste gemeinsame Vielfache von λ 1 und λ 2. Beweis. Seien x (1) n und x (2) n die entsprechenden Folgeglieder für m 1 bzw. m 2. Dann ist x (i) n = x n mod m i. Da x n+λ = x n für alle genügend großen n, folgt sofort, dass λ ein Vielfaches von λ 1 und λ 2 ist. Umgekehrt folgt aus m t m 1, m 2 t, dass x n = x k x (i) n = x (i) k für k = 1 und 2. Also ist λ höchstens gleich dem kleinsten gemeinsamen Vielfachen von λ 1 und λ 2. Daher kann man im Beweis des Hauptsatzes m als Primpotenz annehmen. Hilfssatz 2 Sei m = 2 e mit e 2. (i) Ist a ungerade, so a 2s 1 (mod 2 s+2 ) für alle s 1. (ii) Ist a 3 (mod 4), so m 1 + a + + a m/2 1. 6

Beweis. (i) Ist a = 4q + 1, so a 2 = 16q 2 + 8q + 1; ist a = 4q + 3, so a 2 = 16q 2 + 24q + 9 1 (mod 8). Die Behauptung folgt durch Induktion: a 2s 1 = 1 + t2 s+1 = a 2s = (a 2s 1 ) 2 = 1 + 2t2 s+1 + t 2 2 2s+2. (ii) Es ist 2m = 2 e+1 a m/2 1 nach (i). Da in a 1 nur die erste Potenz von 2 aufgeht, folgt m = 2 e am/2 1 a 1, wie behauptet. Hilfssatz 3 Sei p eine Primzahl und e eine natürliche Zahl mit p e 3. Sei p e die größte p-potenz, die in x 1 aufgeht. Dann ist p e+1 die größte p-potenz, die in x p 1 aufgeht. Beweis. Es ist x = 1 + tp e mit einer ganzen Zahl t, die kein Vielfaches von p ist. Nach der Binomialformel ist x p = 1 + p k=1 ( ) p t k p ke. k Da p alle Binomialkoeffizienten ( ) p k = p! k!(p k)! für k = 1,..., p 1 teilt, kann man aus der Summe sogar p e+1 ausklammern: x p = 1 + tp e+1 s mit einer ganzen Zahl s. Also geht p e+1 in x p 1 auf. Zu zeigen ist noch, dass s kein Vielfaches von p ist. Dazu sieht man sich s genauer an: p ( ) 1 p s = t k 1 p e(k 1) p k k=1 = 1 + 1 ( ) p tp e + + 1 p 2 p tp 1 p e(p 1). Da p e 3, ist e(p 1) 2, also s 1 (mod p). Beweis des Hauptsatzes. Für beide Beweisrichtungen kann man o. B. d. A. m = p e mit einer Primzahl p annehmen. = : Da jede Zahl in [0... m 1] genau einmal vorkommt, darf man o. B. d. A. x 0 = 0 annehmen. Dann ist x n = (1 + a + + a n 1 ) b mod m für alle n. 7

Da x n auch den Wert 1 annimmt, muss schon mal b zu m teilerfremd sein. Da x m = 0, folgt nun m 1 + a + + a m 1, also p m a m 1 = (a 1)(1 + a + + a m 1 ). Nach dem kleinen Satz von Fermat ist a p a (mod p), also a m = a pe a pe 1... a (mod p), also p a 1. Die Aussage (iii) ist der Fall p = 2 mit e 2. Wegen der Aussage (ii) muss a schon mal ungerade sein. Wäre nun a 3 (mod 4), so nach Hilfssatz 2 bereits x m/2 = 0. Also muss a 1 (mod 4) sein. = : Auch hier kann man wieder o. B. d. A. x 0 = 0 annehmen. Dann ist x n = 0 m 1 + a + + a n 1. Insbesondere ist der Fall a = 1 trivial. Sei also o. B. d. A. a 2. Dann ist weiter x n = 0 m an 1 a 1. Zu zeigen ist: m am 1 dann ist λ m; m kein Teiler von am/p 1 da m eine p-potenz ist, folgt dann λ m. Sei p h die maximale Potenz, die in a 1 aufgeht. Nach Hilfssatz 3 ist dann und sukzessive a p 1 (mod p h+1 ), a p 1 (mod p h+2 ) a pk 1 (mod p h+k ), a pk 1 (mod p h+k+1 ) für alle k. Insbesondere folgt p h+e a m 1. Da in a 1 höchstens p h aufgeht, folgt m = p e am 1. Wäre pe am/p 1, so p e+h a pe 1 1, Widerspruch. Dieser Satz ist vor allem für Zweierpotenz-Moduln von Interesse; für Primzahl-Moduln dagegen ergibt er kein brauchbares Ergebnis. Korollar 1 (Greenberger 1961) Ist m = 2 e mit e 2, so wird die Periode m genau dann erreicht, wenn gilt: (i) b ist ungerade. (ii) a 1 (mod 4). Korollar 2 Ist m eine Primzahl, so wird die Periode m genau dann erreicht, wenn b zu m teilerfremd und a = 1 ist. 8

Dieses (traurige) Ergebnis läßt sich etwas allgemeiner fassen. Ist a teilerfremd zu m, so heißt die Ordnung von a mod m in der multiplikativen Gruppe (Z/mZ) die multiplikative Ordnung von a mod m. Es wird ein Hilfssatz benötigt: Hilfssatz 4 Habe m 2 die Primzerlegung m = p e 1 1 per r. Sei a Z mit p i a 1 für i = 1,..., r, und sei s die multiplikative Ordnung von a mod m. Dann gilt s p e 1 1 1 p er 1 r. Beweis. Genau dann ist a s 1 (mod m), wenn a s 1 (mod p e i i ) für i = 1,..., r. Also ist s das kleinste gemeinsame Vielfache der multiplikativen Ordnungen von a mod p e i i. Es reicht daher, den Hilfssatz im Fall r = 1, m = p e zu beweisen. Das geht mit Induktion über den Exponenten e. Ist e = 1, so folgt s = 1 aus a 1 (mod p). Ist e 2 und t p e 2 die multiplikative Ordnung von a mod p e 1, so p e 1 a t 1, also p e a tp 1 nach Hilfssatz 3. Es folgt s tp p e 1. Eine ganze Zahl m heißt quadratfrei, wenn für alle t N mit t 2 stets t 2 kein Teiler von m ist. Äquivalent dazu ist, dass in der Primzerlegung von m kein Faktor mehrfach vorkommt. Jede Primzahl selbst ist quadratfrei. Auch für beliebige quadratfreie Moduln m gibt es keine brauchbaren linearen Kongruenzgeneratoren der Periode m: Korollar 3 Ist m quadratfrei, so wird die Periode m genau dann erreicht, wenn b zu m teilerfremd und a = 1 ist. Wir haben nun mit Hauptsatz 1 die überhaupt größtmögliche Periode erreicht und mit Korollar 1 auch einen brauchbaren Spezialfall gefunden. Eine genauere Untersuchung, die auf Marsaglia zurückgeht, zeigt allerdings, dass die Periode oft in kleinere Teile zerfällt, die sich nur unwesentlich voneinander unterscheiden. Und zwar tritt dieser Effekt gerade auch bei der maximalen Periodenlänge m auf. Das sieht man ganz einfach mit dem ersten Teil des folgenden Hilfssatzes; der zweite Teil wird hier nur zur späteren Verwendung angefügt. Hilfssatz 5 Die Folge (x i ) sei von einem linearen Kongruenzgenerator mit Modul m, Multiplikator a, Inkrement b und Startwert 0 erzeugt. Sei a teilerfremd zu m und s die multiplikative Ordnung von a mod m. Dann gilt: (i) x qs+r qx s + x r (mod m) für alle q, r N. (ii) Ist die Periode gleich m, so ggt(x s, m) = s. Beweis. (i) Da x 0 = 0, ist x k (1 + + a k 1 )b für alle k, und es folgt x qs+r (1+ +a s 1 +1+ +a r )b q(1+ +a s 1 )b+(1+ +a r )b qx s +x r. (ii) Nach Hilfssatz 4 ist s m, und m s q m qs x qs = 0 qx s 0 (mod m) 9

m qx s und daraus folgt die Behauptung. m ggt(x s, m) q, Bleiben wir zunächst beim Startwert x 0 = 0 und nehmen b als teilerfremd zu m an. Dann ist das Folgenstück (x qs+r ) 0 r s 1 identisch mit (x r ) 0 r s 1 bis auf die Verschiebung mod m um den festen Wert qx s. Die gesamte Periode der Länge λ besteht also aus λ/s Blöcken der Länge s, die sich nur unwesentlich unterscheiden. (Dabei ist s ein Teiler von λ weil x k = 0 = 0 = (a 1)x k = (a k 1)b = a k = 1.) Bei beliebigem Startwert sieht das Bild nicht besser aus dann ist nämlich x i = a i x 0 + (1 + + a i 1 )b mod m = x 0 + (a i 1)x 0 + (1 + + a i 1 )b mod m = x 0 + (1 + + a i 1 )c mod m mit c = (a 1)x 0 + b mod m. Betrachtet man die reduzierte Folge y i = ay i 1 + 1 mod m mit y 0 = 0, so ist x i = x 0 + cy i mod m für alle i. Die Zerlegung in λ/s Blöcke der Länge s trifft also genau so zu. Daher nennt man s die effektive Periode des linearen Kongruenzgenerators. Für einen guten Generator sollte also s, die multiplikative Ordnung von a mod m, möglichst groß sein; die absolute Untergrenze für statistische Anwendungen ist 10 9. Das schlechte Beispiel s(x) = x + 1 mit Periode m hat die effektive Periode 1. Damit haben wir also einen neuen Gesichtspunkt, unter dem ein sehr schlechter Generator auch sehr schlecht aussieht. Falls a 1 kein Nullteiler in Z/mZ ist, stimmt die effektive Periode mit der Periode überein, denn x s = a s x 0 + t s b mod m mit t s = 1 + + a s 1 mod m, und () t s = 0, also t s = 0, also x s = x 0. Insbesondere scheidet für einen Primzahlmodul m nur der triviale Multiplikator a = 1 wegen zu kleiner effektiver Periode aus. 10