Primzahlen - Bonn Mathematics

Werbung
Primzahlen
Herbert Koch
Mathematisches Institut
Universität Bonn
12.08.2010
1
Die Primfaktorzerlegung
Wir kennen die natürlichen Zahlen N = 1, 2, . . ., die ganzen Zahlen Z, die rationalen Zahlen (Brüche p/q ) Q und die reellen Zahlen R. Rechenvorschriften sind
Addition, Subtraktion (auÿer N), Multiplikation und Division (auÿer N, Z).
Eine ganze Zahl p 6= ±1 heiÿt Primzahl, wenn ±1 und ±p die einzigen Teiler
sind.
Primzahlen können wir mit dem Sieb des Eratosthenos suchen.
Jede ganze Zahl hat eine Darstellung als Produkt von Primzahlen. Wir
sagen: Jede ganze Zahl ist faktorisierbar.
Satz 1.
Wir verwenden eine wichtige Eigenschaft der natürlichen Zahlen: Jede
nichtleere Menge natürlicher Zahlen hat ein kleinstes Element.
Sei a 6= 1 eine natürliche Zahl. Ist a eine Primzahl, so ist nichts zu zeigen.
Sonst gibt es einen Teiler, und eine Produktdarstellung
Beweis:
a = st
mit s, t 6= ±1. Jetzt kommt der Trick: Sei M die Menge aller natürlichen Zahl,
die sich nicht faktorisieren läÿt. Ist M nicht leer, so gibt es ein kleinstes Element
a. Dieses ist keine Primzahl (diese wäre faktorisierbar) und daher ein Produkt
a = st wie oben. Dann sind s < a und t < a, also nicht in M , damit faktorisierbar. Damit ist auch das Produkt a = st faktorisierbar, und wir erhalten einen
Widerspruch zu der Annahme, daÿ M nichtleer sei.
Ist die Faktorisierung eindeutig, bis auf die Reihenfolge der Faktoren und
die Vorzeichen?
Die Antwort ist ja, aber das ist nicht ganz oensichtlich. Ich möchte die
Selbstverständlichkeit etwas erschüttern.
√
Wir betrachten Zahlen der Art n + m 6, wobei n und m ganze Zahlen sind.
Diese Zahlen können wir addieren und multiplizieren.
√
√
2 = ( 6 + 2)( 6 − 2),
3 = (3 +
1
√
6)(3 −
√
6)
also sind 2 und 3 zerlegbar und in diesen Zahlen keine Primzahlen. Wir bekommen zwei Zerlegungen
√
√
√
√
√
√
6 = 2 ∗ 3 = ( 6 + 2)( 6 − 2)(3 + 6)(3 − 6) = (12 + 5 6)(−12 + 5 6).
Die Frage ist nun: Welche Faktoren sind selbst zerlegbar?
Wir nennen eine Zahl Einheit, wenn wir durch sie dividieren können, und
zerlegbar, wenn sie in ein Produkt ohne Einheiten zerlegt werden kann. Eindeutigkeit der Zerlegung kann man nur bis auf Multiplikation mit Einheiten
erwarten.
√
Wir betrachten nun 'Zahlen' der Art n + m −6√, mit denen wir genauso
rechnen können. Wir nennen diesen Zahlenbereich Z[ −6]. Nun gilt
√ √
6 = 2 ∗ 3 = − −6 −6.
Sind die Faktoren zerlegbar? Falls nicht haben wir ein Beispiel für Mehrdeutigkeit. Wir betrachten eine Norm auf diesen Zahlen:
√
√
√
N (n + m −6) = (n + m −6)(n − m 6) = n2 + 6m2
Dieses ist immer eine natürliche Zahl und N (ab) = N (a)N (b). Zum Beispiel ist
√
N (2) = 4, N (3) = 9, N (6) = 36, N ( −6) = 6
Aus ab = 2 folgt N (a)N (b) = 4 und N (a) ist 1, 2 oder 4.
n2 + 6m2 = 1 genau dann wenn n = ±1, m = 0
n2 + 6m2 = 2, 3 gilt nie
n2 + 6m2 = 4 genau dann wenn n = ±2, m = 0
n2 + 6m2 = 6 genau dann wenn n = 0, m = ±1
n2 + 6m2 = 9 genau dann wenn n = ±3, m = 0
Also ist kein Faktor zerlegbar, und in diesem Zahlenbereich ist die Zerlegung in
unzerlegbare Faktoren nicht eindeutig.
Was ist bei den natürlichen Zahlen anders?
Wir haben die obige Aussage: Jede nichtleere Teilmenge natürlicher Zahlen
hat ein kleinstes Element. Sei n eine natürliche Zahl, und M die Menge aller
durch n teilbaren Zahlen. Diese Menge hat ein kleinstes Element n, und wir
sehen leicht: n = m. Sind n und m natürliche Zahlen, so enthält die Menge
M aller Zahlen, die sowohl von n wie auch von m geteilt werden, ein kleinstes
Element v . Dieses heiÿt kleinstes gemeinsames Vielfaches kgV (n, m).
Behauptung:
Es gibt eine Zahl a mit KgV (n, m)d = nm und a teilt n und m.
Das kleinste gemeinsame Vielfache von n und m teilt das Produkt nm:
Sicher gilt nm ∈ M . Die Dierenz von zwei Zahlen in M wird sowohl von n wie
auch von m geteilt, ist also wieder in M . Wir dividieren nm durch v mit Rest
r,
nm = dv + r
2
0 ≤ r < v . Dann ist aber r ∈ M , oder r = 0. Nun ist v das kleinste Element,
und daher r = 0. Wir können also schreiben:
nm = dv
Nun ist d ein gemeinsamer Teiler von n und m, da d(v/n) = m - hier ist v/n
eine ganze Zahl, also teilt d n und genauso m.
Ist p eine Primzahl, die das Produkt nm zweier natürlicher Zahlen teilt, so teilt p einen der Faktoren.
Das Produkt nm ist ein gemeinsames Vielfaches von p und n. Sei v =
kgV (n, p). Dann ist d = np/v wie oben eine ganze Zahl, die n = d(v/p) und
p = d(v/n) teilt. Da p eine Primzahl ist, gilt d = 1 oder d = p. Ist d = p, so
teilt p die Zahl n. Ist d = 1 so folgt
Behauptung:
1 = np/v, also v = np.
Da nm ein gemeinsames Vielfaches von p und n ist, teilt v = kgV (p, n) = np
nm und es folgt
nm = knp für ein k = nm/kgv(p, n).
Die Primfaktorzerlegung einer natürlichen Zahl ist bis auf die
Reihenfolge eindeutig.
Beweis: Falls nicht existiert eine kleinste Zahl n, für die die Zerlegung nicht
eindeutig ist. n ist keine Primzahl. Sei p eine Primzahl, die n teilt, und n = ab
eine Faktorisierung. Dann teilt p a oder b, und p ist in jeder Primfaktorzerlegung
enthalten. Da n/p eine eindeutige Primfaktorzerlegung besitzt erhalten wir einen
Widerspruch.
Wir nennen einen Zahlenbereich mit Addition, Subtraktion und Multiplikation Ring, wenn die Kommutativgesetze, die Assoziativgesetze und das Distributivgesetz gilt, und Körper, wenn wir √
durch jede Zahl ungleich Null dividieren
können. Beispiele für Ringe sind Z, Z[ −6], Q und R, wobei Q und R Körper
sind.
Wir schreiben a|b, falls a ein Teiler von b ist.
Behauptung:
2
g -adische
Darstellungen
Hier sei g eine natürliche Zahl > 1. Ist auch a eine natürliche Zahl, so existiert
ein kleinstes j mit g j+1 > a, also ist j die gröÿte natürliche Zahl mit g j ≤ a.
Wir dividieren mit Rest:
a = c−j g j + r−j
und iterativ
rl+1 = c−l g l + r−l
Dann nennen wir
(c−j c1−j . . . c0 )g
die g -adische Darstellung von a. Wie in der Dezimaldarstellung können wir reelle
Zahlen als g -adische Dezimalbrüche schreiben: Wir nehmen eine positive Zahl
a, ziehen den ganzzahligen Anteil ab und erhalten eine Zahl r0 zwischen 0 und
1. Den ganzzahligen Anteil stellen wir wie oben dar. Die Nachkommastellen
bestimmen wir iterativ
r0 g = c1 + r1
3
wobei c1 eine ganze Zahl 0 ≤ c1 < g ist.
Es gibt endliche g -adische Brüche, rein-periodische, gemischt-periodische,
und nicht periodische.
2.1
g -adische Darstellungen und Restklassen
Die letzte Zier von Summen und Produkten hängt nur von der letzten
Zier der Summanden bzw. Faktoren ab.
Satz 2.
Wir können also auf der Menge
{0, 1, . . . g − 1}
eine Summe und ein Produkt denieren, indem wir alle anderen Ziern unterschlagen.
Diese Struktur nennt man Restklassenring Z/gZ. Wir schreiben die Elemente
z.B. als
2
5
g
Zur Addition von ag + b nehmen wir Zahlen mit den Endziern a bzw b, d.h.
solche, die Rest a bzw. b bei der Division durch g haben. Das Ergebnis ist der
Rest von a + b bei der Division durch g bzw. die letzte Stelle in der g -adischen
Darstellung.
Frage: Wann existiert ein multiplikatives Inverses? Wann ist Z/gZ ein Körper?
2.2
Der Euklidsche Algorithmus
Wir schreiben den Bruch p/q in der Form
p
= a0 + r
q
wobei a0 die gröÿte ganze Zahl ≤ p/q ist. Die ganze Zahl a0 wird durch Division
mit Rest ermittelt:
p = a0 q + d0
wobei d0 = rq eine ganze Zahl zwischen 0 und q − 1 ist. Oenbar ist d0 kleiner
als p und q . Sind p und q durch eine Zahl teilbar, so teilt diese auch d0 . Wir
fahren nun iterativ fort:
p1 = a1 d0 + d1
bis zu
pn = an dn−1 .
Wir erhalten die Zahlen a0 , a1 , . . . , an sowie d1 , . . . dn = 0, r1 , . . . , rn = 0. Dieses
Verfahren wird Euklidscher Algorithmus genannt.
Beobachtungen:
1. Jeder Teiler von p und q teilt dn−1 . Umgekehrt teilt dn−1 jedes dj und
damit auch p und q . Damit ist dn−1 der gröÿte gemeinsame Teiler.
2. Da wir den ggT von p und q mit dem Euklidschen Algorithmus bestimmen
können, erhalten wir ein Verfahren zum Kürzen von p/q .
4
3. Wir schreiben p/q = [a0 , a1 , . . . , ] und nennen Kj = [a0 , . . . , aj ] den j -ten
Konvergenten. Es gilt
[a0 ] = a0
und
a0 + 1/a1 = [a0 , a1 ]
und, da wir in dieser Formel die rationale Zahl [a1 , a2 , ȧj ] einsetzen können,
erhalten wir rekursiv
1
[a0 , a1 , . . . , an ] = a0 + 1/[a1 , . . . , an ] = a0 +
1
a1 +
a2 +
.
1
a3 + . . .
Jeder Konvergent ist eine rationale Zahl. Wir schreiben den j -ten Konvergenten Kj als Pj /Qj als gekürzten Bruch. Sei
P−2 = 0, Q−2 = 1, P−1 = 1, Q−1 = 0
und
Pk = ak Pk−1 + Pk−2 , Qk = ak Qk−1 + Qk−2
2.3
Beispiel
Betrachte
99 =1 ∗ 70 + 29
70 =2 ∗ 29 + 12
29 =2 ∗ 12 + 5
12 =2 ∗ 5 + 2
5 =2 ∗ 2 + 1
2 =2 ∗ 1
0
1
Satz 3.
1
0
1
1
1
2
3
2
2
7
5
Es gilt
Kj =
Beweis:
2
2 2
17 41 99
12 29 70
Pj
Qj
Wir berechnen
P0 = a0 , Q0 = 1, P0 /Q0 = a0 = [a0 ]
P1 = a1 a0 + 1, Q1 = a1 , P1 /Q1 = a0 + a−1
1 = [a0 , a1 ]
Diese Rechnung gilt auch, wenn wir für aj positive reelle Zahlen einsetzen.Wir
führen einen Widerspruchsbeweis und nehmen an, j + 1 sei die kleinste Zahl, für
die ein endlicher Kettenbruch [a0 , . . . , aj ] mit positiven reellen Zahlen existiert,
für den die Formel Kj = Pj /Qj nicht gilt.
5
Es gilt nun
Kj+1 =[a0 , . . . , aj + a−1
j+1 ]
=
(aj + 1/aj+1 )Pj−1 + Pj−2
(aj + 1/aj+1 )Qj−1 + Qj−2
=
Pj−1
aj+1
Qj−1
aj+1
+ aj Pj−1 + Pj−2
+ aj Qj−1 + Qj−2
aj+1 (aj Pj−1 + Pj−2 ) + Pj−1
aj+1 (aj Qj−1 + Qj−2 ) + Qj−1
aj+1 Pj + Pj−1
=
aj+1 Qj + Qj−1
Pj+1
=
Qj+1
=
Also gilt die Formel für Kj+1 .
Sei [a0 , a1 , . . . , an ] ein Kettenbruch. Dann sind Pj und Qj teilerfremd
und es gilt für jedes j
Satz 4.
Pj Qj−1 − Pj−1 Qj = (−1)j−1 .
Beweis:
P1 Q0 − P0 Q1 = (a1 a0 + 1)1 − a1 a0 = (−1)1−1
und
Pj+1 Qj −Pj Qj+1 = (aj+1 Pj +Pj−1 )Qj −(aj+1 Qj +Qj−1 )Pj = −(Pj Qj−1 −Pj−1 Qj ).
Insbesondere sind Pj und Qj teilerfremd.
2.4
Diophantische Gleichungen
Gesucht sind ganzzahlige Lösungen von
px + qy = r
mit p, q und r ∈ N. Diese existieren nur, wenn ggT (p, q) r teilt. Wir betrachten
also
px + qy = 1
für teilerfremde p und q . Wir schreiben
p
= [a0 , a1 , . . . an ] = Kn
q
Es gilt ggT (Pn , Qn ) = ggT (a, b) und daher Pn = p , Qn = q . Also folgt
pQn−1 − qPn−1 = (−1)n−1 .
Beispiel:
29 ∗ 99 − 41 ∗ 70 = 1.
6
3
Periodische
g -adische
Darstellungen, der Satz
von Fermat-Euler, und das RSA-Verfahren
3.1
Endliche g -adische Darstellungen
Wir nennen einen Bruch a/b reduziert, wenn a und b teilerfremd sind, und
0 ≤ a < b. Die g adische Darstellung
a/b = (c−j . . . c0 , c1 c2 . . . )g
heiÿt endlich, wenn es ein m gibt mit cj = 0 für j > m. Das kleinste m nennen
wir Länge der g -adischen Darstellung.
Satz 5.
Seien a und b teilerfremde natürliche Zahlen. Dann sind äquivalent
1. b teilt gm
2. Der m-te Rest rm von a/b ist Null.
3. Die g-adische Länge von a/b ist höchstens m.
3.2
Periodische g adische Darstellungen
Einige Dezimalbrüche 1/n , und die Zahl der teilerfremden Zahlen < n, ω(n).
1/3
1/7
1/9
1/11
1/13
1/17
1/19
1/37
1/101
1/11111
=
=
=
=
=
=
=
=
=
=
9
99
999
9999
99999
999999
0, 3
0, 142857
0, 1
0, 09
0, 076923
0, 0588235294117647
0, 052631578947368421
0, 027
0, 0099
0, 00009
=
=
=
=
=
=
2
6
6
10
12
16
18
36
100
?
3∗3
3 ∗ 3 ∗ 11
3 ∗ 3 ∗ 3 ∗ 37
3 ∗ 3 ∗ 11 ∗ 101
3 ∗ 3 ∗ 11111
3 ∗ 3 ∗ 3 ∗ 7 ∗ 11 ∗ 37
Die g -adische Darstellung der reellen Zahl t heiÿt periodisch, wenn es natürliche Zahlen m, l gibt mit
cn+l = cn
für n ≥ m. m−1 heiÿt Vorperiode und l Periode. Es gibt eine kleinste Vorperiode
und eine kleinste Periode.
Satz 6. Jede rationale Zahl hat eine periodische g -adische Darstellung, und jede
periodische g-adische Darstellung gehört zu einer rationalen Zahl.
7
3.3
Reinperiodische Darstellungen
Lemma 1.
• b
•
Sei t ∈ N. Folgende Aussagen sind äquivalent:
teilt gt − 1.
Für jedes 0 ≤ a < b besitzt a/b eine reinperiodische Darstellung mit Periode t.
a/b habe eine reinperiodische Darstellung. Dann gilt
Beweis:
a
=(0, c1 c2 . . . cl )g
b
=(0, c1 c2 . . . cl c1 . . . cl )
a
=(0, c1 c2 . . . cl ) + g −l
b
Wir multiplizieren mit bg l :
(g l − 1)a = b ∗ (c1 . . . cl )g ,
also b|(g l − 1)a aber nicht a, also b|(g l − 1).
In umgekehrter Richtung zeigt dieses Argument: Wenn b|(g l − 1) dann hat
a/b eine reinperiodische Darstellung.
Satz 7.
• b
•
Für teilerfremde Zahlen 0 < a < b sind äquivalent:
und g sind teilerfremd.
Die g-adische Darstellung von a/b ist reinperiodisch.
Nach dem vorigen Satz reicht es aus zu zeigen: ggT (b, g) = 1 genau
dann wenn für ein t ∈ N, b|g t − 1. Oensichtlich ist ggT (b, g) = 1 wenn b|g t − 1.
Wir nehmen nun an: ggT (b, g) = 1 und betrachten die Reste von 1, g, g 2 . . . bei
der Division durch b. Da es nur endlich viele Reste gibt gilt
Beweis:
b|g m+l − g m
für gewisse natürliche Zahlen m und l. Also gilt
b|g m (g l − 1).
Nach einer Primfaktorzerlegung beider Seiten sehen wir: b|(g l − 1).
Insbesondere folgt für teilerfremde Zahlen b and g die Existenz von t, so dass
b g t − 1 teilt.
Seien b und g teilerfremde natürliche Zahlen. Dann teilt die kleinste
Periode von a/b, 0 < a < b, die Zahl φ(b) der zu b teilerfremden
Zahlen kleiner als b.
Satz 8.
g -adische
Es gibt genau φ(b) reduzierte Brüche a/b mit Nenner b. Sei ggT (b, g) =
1. Ist t eine Periode eines reduzierten Bruches a/b so folgt b|g t −1, und damit ist t
Periode jedes reduzierten Bruches ã/b. Die Ziern erhalten wir durch rekursives
Beweis:
Berechnen
ga = c0 b + a1
8
Also ist at = a, und das ist das erste t mit dieser Eigenschaft. Die reduzierten Brüche zerfallen also in Gruppen der Länge t, also teilt t die Anzahl der
reduzierten Brüche, und damit φ(b).
Beispiel: 37 ist eine Primzahl. Rekursiv:
1 = 0 ∗ 37 + 1
10 = 0 ∗ 37 + 10
100 = 2 ∗ 37 + 26
260 = 7 ∗ 37 + 1
1/37 = 0 + 1/37
10/37 = 0 + 10/37
100/37 = 2 + 26/37
10 ∗ 26/37 = 7 + 1/37
2 = 0 ∗ 37 + 2
20 = 0 ∗ 37 + 20
200 = 5 ∗ 37 + 15
150 = 4 ∗ 37 + 2
3 = 0 ∗ 37 + 3
30 = 0 ∗ 37 + 30
300 = 8 ∗ 37 + 4
40 = 3 ∗ 37 + 3
Satz 9 (Satz von Fermat-Euler). Für teilerfremde Zahlen b und g teilt b die
Zahl gφ(b) − 1. Insbesondere teilt jede Primzahl entweder g oder gp−1 − 1.
Beweis: Die Länge t der Periode von 1/b teilt φ(b), also φ(b) = st. Dann teilt
b g t − 1. Damit hat g t den Rest 1 bei der Division durch b. Das gilt auch für
(g t )s = g st .
3.4
Das RSA (Rivest, Shamir, Adleman 1977) Verfahren
in der Kryptographie
Das Verfahren: Wir wählen eine groÿe Zahl g und eine zu φ(g) teilerfremde Zahl
s.
Wir verschlüsseln eine Zahl a zwischen 1 und dem kleinsten Teiler von g .
Man bestimmt den Rest r von as bei der Division durch g . Dieser Rest wird
übermittelt.
Die Entschlüsselung geht so: Nach dem Satz von Fermat-Euler teilt g
aφ(g) − 1
Wir bestimmen Zahlen (n, t) mit
1 = ts − nφ(g)
Dann gilt
rt = (as )t = a1+nφ(g) = a(aφ(g) )n
und der Rest bei der Division durch g ist a.
Man wählt zwei groÿe Primzahlen p, q , deniert g = pq . Dann ist φ(g) =
(p − 1)(q − 1). Die Zahlen g und s sind öentlich. Zum Entschlüsseln braucht
man φ(g), was man dann und nur dann kennt, wenn man g faktorisieren kann.
Also: Alice wählt g = pq und s und schreibt die Zahlen auf ihre Homepage.
Sie bestimmt t, da sie φ(g) kennt. Bob verschlüsselt die Nachricht a < g teilerfremd zu g , indem er den Rest r von as bei der Division durch g ermittelt.
Diesen Rest teilt Bob Alice auf seiner Homepage mit. Alice bestimmt a mittels
des Rests von rt bei der Division durch g .
Es gibt zwei Beiträge Bonner Mathematiker zu diesem Verschlüsselungsverfahren. Nitin Saxena war an der Entwicklung eines ezienten deterministischen
Primzahltest beteiligt und Jens Franke war 2009 an der Faktorisierung eines
Produkts der Länge 2768 beteiligt.
9
Herunterladen