1 INHALTSVERZEICHNIS Pseudoprimzahlen und Carmichael-Zahlen Andreas Zeh-Marschke; Tauberring 16 b D-76344 Eggenstein-Leopoldshafen E-Mail: [email protected] Version 1.20 / 10.01.2009 Dieser Artikel basiert auf dem Artikel von Pomerance, Selfridge und Wagsta [PSW] aus dem Jahr 1980. Zu dieser Zeit waren die Leistungen der Computer noch deutlich niedriger als heute. Neuere Erkenntnisse, die insbesondere bei Ribenboim [Rib] aufgeführt sind, wurden aufgenommen. Es ist die Ausarbeitung eines Vortrages im Seminar über Computeralgebra und Kryptograe im Wintersemester 2008/09 an der FernUniversität in Hagen. Inhaltsverzeichnis 1 Pseudoprimzahlen 2 2 Euler-Pseudoprimzahlen 3 3 Strenge Pseudoprimzahlen 4 4 5 spsp(a) ⊆ epsp(a) ⊆ psp(a) 5 Weitere Eigenschaften für Pseudoprimzahlen 8 6 Die Pseudoprimzahlen bis 25 · 109 9 7 Basen ungleich 2 11 8 Anzahl der Pseudoprimzahlen 11 9 Carmichael-Zahlen 12 10 Andere Pseudoprimzahlen 14 Literatur 14 A Anzahl von Pseudoprimzahlen in Schrittweite 108 15 B Strenge Pseudoprimzahlen zur Basis 2 kleiner als 2, 5 · 1010 15 C Carmichael-Zahlen kleiner als 2, 5 · 1010 16 Es seinen im folgenden stets, wenn nicht explizit etwas anders erwähnt, a, n ∈ N\{1}, also natürliche Zahlen, ohne die 1. 1 2 PSEUDOPRIMZAHLEN 1 Pseudoprimzahlen Der erste Denition basiert auf der nachfolgenden Eigenschaft von Primzahlen, die von Fermat1 aufgestellt wurde. Satz 1 (Kleiner Satz von Fermat): Es seien p ∈ P und a ∈ N mit ggT (a, p) = 1, dann gilt ap−1 ≡ 1 (mod p) Aus der Umkehrung dieses Satzes ergeben sich Bedingungen, unter denen eine Zahl n keine Primzahl ist, also zerlegbar ist. Denition 2: Es sei 1 < a < n. Gilt an−1 6≡ 1 (mod n), dann ist n zerlegbar, also keine Primzahl, und a heiÿt Zeuge Zeuge der Zerlegbarkeit für n (Fermat n−1 a der Zerlegbarkeit oder Fermat- witness to the compositeness ). 6≡ 1 (mod n) ⇒ n 6∈ P Gilt an−1 ≡ 1 (mod n), dann heiÿt n wahrscheinlich prim zur Basis a (probable prime to base a ). Die Menge all dieser wahrscheinlich primen Zahlen zur Basis a wird mit prp(a) bezeichnet. prp(a) = {n ∈ N | n wahrscheinlich prim zur Basis a} Ist n ∈ prp(a) und nicht prim, so heiÿt n eine Pseudoprimzahl zur Basis a (pseudoprime to base a ) oder Fermat-Pseudoprimzahl oder PouletPseudoprimzahl 2 . a heiÿt auch Fermat-Lügner der Zerlegbarkeit (Fermat liar ) Die Menge aller Pseudoprimzahlen zur Basis a wird mit psp(a) bezeichnet. psp(a) = {n ∈ prp(a) | n 6∈ P} Es gilt somit prp(a) = P ∪ psp(a) Die Anzahl der Pseudoprimzahlen zur Basis a kleiner oder gleich einer Grenze x wird mit P πa (x) bezeichnet: P πa (x) = |{n ∈ psp(a) | n ≤ x}| Der Primzahltest, der diese Eigenschaft ausnutzt heiÿt Fermat-Test . Bei der Wahl einer beliebigen Basis ist die Irrtumswahrscheinlichkeit, dass der Fermat-Test ein falsches Ergebnis liefert höchstens 0, 50 (siehe [HU], p. 225). Das Problem ist, dass es Zahlen gibt, die für jede zu n teilerfremde Basis den Fermat-Test positiv beantwortet, d.h. das Ergebnis wahrscheinlich prim liefert. 1 Pierre de Fermat, französischer Mathematiker, 1601-1665. Eine Kurzbiographie über P. de Fermat: Klaus Barner; Das Leben Fermats; in Mitteilungen der Deutschen Mathematiker-Vereinigung, Heft 3 / 2001 2 Paul Poulet untersuchte in den 1920er und 1930er Jahre die Pseudoprimzahlen bis 108 (siehe Ribenboim [Rib], p. 91) Paul Poulet, französischer Mathematiker, 188? - 19??, Einige Daten und Informationen über ihn: http://serge.mehl.free.fr/chrono/poulet.html 2 3 EULER-PSEUDOPRIMZAHLEN Denition 3: Eine zusammengesetzte Zahl n heiÿt Carmichael-Zahl , wenn für alle a ∈ N mit ggT (a, n) = 1 an−1 ≡ 1 (mod n) gilt Beispiel 4: Im folgenden sei a = 2 gewählt. 1. n = 7: 26 = 64 ≡ 1 (mod 7). 2. n = 15: 214 ≡ 4 (mod 15). 2 ist Zeuge der Zerlegbarkeit von 15. 3. n = 341 = 11 · 31: 2340 ≡ 1 (mod 341). 341 ist die kleinste Pseudoprimzahl zur Basis 2. (Es ist 3340 ≡ 56 (mod 341), also ist 341 keine Pseudoprimzahl zur Basis 3, 3 ist Zeuge der Zerlegbarkeit. 4. n = 561 = 3 · 11 · 17 ist die kleinste Carmichael-Zahl. 2 Euler-Pseudoprimzahlen Auf Basis eines Satz von Euler3 Satz 5: Es sei a ∈ Z und p ∈ P, ungerade, dann gilt p−1 a 2 ! ≡ a p (mod p). ergibt sich ein weiteres Kriterium für den Nachweis der Zerlegbarkeit einer Zahl. Denition 6: Es sei 1 < a < n. Gilt a n−1 2 (mod n), dann ist n zerlegbar, also keine Primzahl, und a heiÿt Euler-Zeuge der Zerlegbarkeit für n (Euler witness to the compositeness ). n−1 a 2 n−1 6≡ a n 6≡ a n ! (mod n) ⇒ n 6∈ P Gilt a 2 ≡ na (mod n), dann heiÿt n wahrscheinlich Euler-prim zur Basis a (probable Euler prime to base a ). Die Menge all dieser wahrscheinlich Euler-primen Zahlen zur Basis a wird mit eprp(a) bezeichnet. eprp(a) = {n ∈ N | n wahrscheinlich Euler-prim zur Basis a} Ist n ∈ eprp(a) und nicht prim, so heiÿt n eine Euler-Pseudoprimzahl zur Basis a (Euler pseudoprime to base a ). a heiÿt auch Euler-Lügner der Zerlegbarkeit (Euler liar ). Die Menge alle dieser Euler-Pseudoprimzahlen zur Basis a wird mit epsp(a) bezeichnet. epsp(a) = {n ∈ eprp(a) | n 6∈ P} 3 Leonhard Euler,schweizer Mathematiker, 1707-1783 3 4 STRENGE PSEUDOPRIMZAHLEN Es gilt somit eprp(a) = P ∪ epsp(a) Die Anzahl der Euler-Pseudoprimzahlen zur Basis a kleiner oder gleich einer Grenze x wird mit Eπa (x) bezeichnet: Eπa (x) = |{n ∈ epsp(a) | n ≤ x}| Der Primzahltest, der diese Eigenschaft ausnutzt wird Test 456 genannt. Solovay-Strassen- Bei der Wahl einer beliebigen Basis ist die Irrtumswahrscheinlichkeit, dass der Solovay-Strassen-Test ein falsches Ergebnis liefert höchstens 0, 50 (siehe [HU], p. 236). Es gibt jedoch kein Analogon zu den Carmichael-Zahlen. Beispiel 7: Im folgenden sei a = 2 gewählt. 1. n = 7: 23 = 8 ≡ 1 = ( 72 ) (mod 7). 2 ) (mod 15). 2 ist Euler-Zeuge der Zerlegbar2. n = 15: 27 = 128 ≡ 2 6= ( 15 keit von 15. 5612 −1 2 ) = (−1) 8 (mod 561). 561 ist die 3. n = 561 = 3·11·17: 2280 ≡ 1 = ( 561 kleinste Euler-Pseudoprimzahl zur Basis 2. (Es ist 3280 ≡ 441 (mod 561), alo ist 561 keine Euler-Pseuodprimzahl zur Basis 3). 3 Strenge Pseudoprimzahlen Satz 8: Es sei a ∈ Z und p ∈ P, ungerade. Es sei p − 1 = 2r · d mit ungeradem d, dann gilt ad ≡ 1 (mod p) oder ∃i : 0 ≤ i < r : a2 d ≡ −1 (mod p). i Aus der Umkehrung dieses Satzes ergibt sich wieder ein Kriterium für die Zerlegbarkeit: Denition 9: Es sei 1 < a < n. Gilt ad 6≡ 1 (mod n) und ∀i : 0 ≤ i < ra2i d 6≡ −1 (mod p), dann ist n zerlegbar, also keine Primzahl, und a heiÿt strenger Zeuge der Zerlegbarkeit für n (strong witness to the compositeness ). ad 6≡ 1 (mod n) und ∀i : 0 ≤ i < d : a2 d 6≡ −1 (mod n) ⇒ n 6∈ P i Gilt ad ≡ 1 (mod n) oder ∃i : 0 ≤ i < r : a2 d ≡ −1 (mod p), dann heiÿt n wahrscheinlich streng prim zur Basis a (probable strong prime to base a ). a i 4 5 6 Robert Solovay,amerikanischer Mathematiker,*1938 Volker Strassen, deutscher Mathematiker, *1936 Robert M. Solovay, Volker Strassen; A fast Monto-Carlo test for primality; SIAM Journal on Computing 6(1) (1977): 84-85 5 SP SP (A) ⊆ EP SP (A) ⊆ P SP (A) 4 heiÿt strenger Lügner der Zerlegbarkeit (strong liar ). Die Menge all dieser wahrscheinlich streng primen Zahlen zur Basis a wird mit sprp(a) bezeichnet. sprp(a) = {n ∈ N | n wahrscheinlich streng prim zur Basis a} Ist n ∈ sprp(a) und nicht prim, so heiÿt n eine strenge Pseudoprimzahl zur Basis a (stronge pseudoprime to base a ). Die Menge aller strengen Pseudoprimzahlen zur Basis a wird mit spsp(a) bezeichnet. spsp(a) = {n ∈ sprp(a) | n 6∈ P} Es gilt somit sprp(a) = P ∪ spsp(a) Die Anzahl der strengen Pseudoprimzahlen zur Basis a kleiner oder gleich einer Grenze x wird mit Sπa (x) bezeichnet: Sπa (x) = |{n ∈ spsp(a) | n ≤ x}| Der Primzahltest, der diese Eigenschaft ausnutzt heiÿt Miller-Rabin-Test 7 8 9 Bei der Wahl einer beliebigen Basis ist die Irrtumswahrscheinlichkeit, dass der Miller-Rabin-Test ein falsches Ergebnis liefert höchstens 0, 25 (siehe [HU], p. 229). Es gibt jedoch auch hier kein Analogon zu den Carmichael-Zahlen. Beispiel 10: Im folgenden sei a = 2 gewählt. 1. n = 7: 26 = 64 ≡ 1 (mod 7). 2. n = 15: n − 1 = 14 = 2 · 7, 27 = 64 ≡ 8 (mod 15), 214 ≡ 4 (mod 15). 2 ist strenger Zeuge der Zerlegbarkeit von 15. 3. n = 2047 = 23 · 89: n − 1 = 2 · 1023, 21023 ≡ 1 (mod 2047). 2047 ist die kleinste strenge Pseudoprimzahl zur Basis 2. spsp(a) ⊆ epsp(a) ⊆ psp(a) 4 Welche Beziehungen bestehen zwischen den verschiedenen Pseudoprimzahlen. Sofort klar ist die einfache Eigenschaft Bemerkung 11: epsp(a) ⊆ psp(a) Beweis: Aus an−1 7 8 9 n ∈ epsp(a) folgt a ≡ 1 (mod n), also n ∈ psp(a). n−1 2 ≡ a n (mod n) und somit natürlich Gary L. Miller, amerikanischer Mathematiker und Informatiker, *19?? Michael O. Rabin, israelischer Mathematiker und Informatiker, *1931 Gary L. Miller; Riemann's Hypothesis ans Tests for Primality; Journal of Computer and System Sciences 13 (1976), no. 3, pp. 300-317 und Michael O. Rabin; Probabilistic algorithm for testung primality; J.Number Theory 12 (1980), no. 1, pp. 128-138 4 6 SP SP (A) ⊆ EP SP (A) ⊆ P SP (A) Das ist der erste Teil der Teilmengenbeziehung. weiterhin gilt: Bemerkung 12: spsp(a) ⊆ psp(a) Beweis: Aus n ∈ psp(a). n ∈ spsp(a) ergibt sich klar, dass an−1 ≡ 1 (mod n) ist, also Nicht ganz so einfach ist die Beziehung zwischen spsp(a) und epsp(a) zu klären. Es gilt Satz 13: spsp(a) ⊆ epsp(a) Beweis: Es sei n − 1 = d · 2s , mit d ungerade und s ≥ 1. Da n ∈ spsp(a) ist ergeben sich 3 verschiedene Fälle: 1. ad ≡ 1 (mod n) 2. ∃r ∈ N0 : 0 ≤ r < s − 1 : ad·2 ≡ −1 (mod n) r 3. ad·2 s−1 ≡ −1 (mod n) Es ist zu zeigen, dass a(n−1)/2 ≡ a n gilt. Fall 1: Aus ad ≡ 1 (mod n) folgt: a n−1 2 s−1 s−1 = ad·2 = (ad )2 ≡ 1 (mod n) Daher ergibt sich mit Hilfe der Regeln für das Jacobi-Symbol 1 n 1= ! Da d ungerade ist, muss ad n ≡ a n ! a n = !d = (±1)d (mod n) = 1 gelten, also gilt a(n−1)/2 ≡ a n (mod n). Fall 2: Es sei nun ad·2 ≡ −1 (mod n) für ein r < s − 1. Damit gilt als erstes r s−1 a(n−1)/2 = ad·2 r s−1−r = (ad·2 )2 s−1−r ≡ (−1)2 ≡ 1 (mod n) Die letzte Äquivalenz gilt, da s − 1 − r > 0 gilt. Andererseits gilt ad·2 ≡ r+1 −1 (mod n) und somit ad·2 ≡ 1 (mod n). Daraus ergibt sich r 1= 1 n r+1 ! ≡ ad·2 n ! = Da d ungerade ist, ergibt sich ad a2 n a n r+1 ! a n = !d a n !2r+1 a n ≡ = 1, also gilt a(n−1)/2 ≡ a n !d = (±1)d (mod n). Fall 3: Es sei nun ad·2 ≡ −1 (mod n), d.h es gilt an−1 ≡ −1 (mod n). Daher ist zu zeigen, dass na ≡ −1 (mod n) gilt. s−1 Es sei n= t Y i=1 pi 4 7 SP SP (A) ⊆ EP SP (A) ⊆ P SP (A) wobei die pi (i = 1, . . . , t) Primzahlen sind, die nicht notwendigerweise verschieden sind. Weiter seinen für i = 1, . . . , t pi − 1 = 2si di mit di ungerade. Behauptung a: für i = 1, . . . , t gilt si ≥ s. Es gilt (adi 2 s−1 )d = (ads s−1 )di ≡ (−1)di = −1 (mod n) Da pi |n ist, gilt somit auch s−1 (adi 2 )d ≡ −1 (mod pi ) Da pi eine Primzahl ist, gilt somit sogar s−1 adi 2 ≡ −1 (mod pi ) Falls nun si < s gelten würde, also si + α = s − 1, dann wäre s−1 si 2α −1 ≡ adi 2 = adi 2 s α α α = (adi 2 i )2 = (api )2 ≡ 12 = 1 (mod pi ) was für (ungerade) Primzahlen nicht zutreen kann, also ist si ≥ s. Behauptung b: ist si = s, dann gilt ( pai ) = −1. a pi ! = a pi !d ≡ (a pi −1 2 )d si −1 = (adi 2 )d = (ad2 s−1 )di ≡ (−1)di = −1 (mod pi ) Behauptung c: ist si > s, dann gilt ( pai ) = 1. Es sei si = s + α, mit α > 0, dann gilt: a pi ! = a pi !d ≡ (a pi −1 2 )d si −1 = (adi 2 )d = (adi 2 s−1 2α s−1 )d = (ad2 )di 2 α α ≡ (−1)di 2 = 1 (mod pi ) Es sei k die Anzahl der pi (i = 1, . . . , t), so dass si = s gilt k = |{pi | si = s, i = 1, . . . , t}| Damit gilt a n ! = t Y i=1 a pi ! = (−1)k Jetzt ist nur noch zu zeigen, dass k ungerade ist. Wegen pi − 1 = di 2si gilt 5 WEITERE EIGENSCHAFTEN FÜR PSEUDOPRIMZAHLEN ( 1 1 + 2s pi ≡ 8 si > s (mod 2s+1 ) si = s Wegen n = 1 + d2s ≡ 1 + 2s (mod 2s+1 ) ergibt sich 1 + 2s ≡ n = t Y pi ≡ (1 + 2s )k ≡ 1 + k · 2s (mod 2s+1 ) i=1 woraus sofort gefolgert werden kann, dass k ungerade ist. Damit gilt also im 3. Fall na = −1 und somit insgesamt n−1 a 2 ≡ a n ! (mod n) Zusammenfassend gilt somit Satz 14: spsp(a) ⊆ epsp(a) ⊆ psp(a) Aus dem diesem Satz ergibt sich als Konsequenz für die Primzahltests, dass der Miller-Rabin-Test bessere Ergebnisse zum Erkennen von Primzahlen liefert als der Fermat-Test oder der Solovay-Strassen-Test. Zum einen ist die Erkennungsrate höher und zum anderen ist die Irrtumswahrscheinlichkeit geringer. 5 Weitere Eigenschaften für Pseudoprimzahlen Anbei einige weitere interessante Eigenschaften für Pseudoprimzahlen. Für die Beziehungen zwischen spsp(a) und epsp(a) gilt Bemerkung 15: Ist n ≡ 3 (mod 4), dann gilt n ∈ spsp(a) ⇔ n ∈ epsp(a). Beweis: Zu zeigen ist nur noch, dass aus n ∈ epsp(a) auch n ∈ spsp(a) folgt. Ist n ≡ 3 (mod 4), dann ist n − 1 = d · 21 , mit ungeradem d. Da n ∈ epsp(a) n−1 ist, gilt a 2 = ad ≡ ( na ) (mod n). Der letzte Ausdruck ist je nach Wert des Jacobi-Symbols +1 oder −1. auf jeden Fall sind somit die Bedingungen für n ∈ spsp(a) erfüllt. Weiterhin gilt Bemerkung 16: Ist n ∈ epsp(a) und ( na ) = −1, dann gilt n ∈ spsp(a). Beweis: Mit n − 1 = d · 2s gilt ad·2s−1 = a n−1 2 ≡ ( na ) = −1 (mod n). Somit ist die Bedingung für eine strenge Pseudoprimzahl gegeben. 6 DIE PSEUDOPRIMZAHLEN BIS 9 25 · 109 Die nachfolgende Bemerkung ermöglicht die Konstruktion unendlich vieler Pseudoprimzahlen und strenger Pseudoprimzahlen. (siehe [Rib], p. 92) Bemerkung 17: Ist n eine Pseudoprimzahl zur Basis 2, dann ist n0 = 2n − 1 eine strenge Pseudoprimzahl zur Basis 2. n ∈ psp(2) ⇒ n0 = 2n − 1 ∈ spsp(2) Beweis: Zuerst ist klar dass wenn n = ab eine zusammengesetzte Zahl ist, mit 1 < a, b < n, dass dann 2a −1 ein Teiler von 2n −1 ist, so dass dann auch 2n −1 zusammengesetzt ist. Da n eine Pseudoprimzahl ist, ist n zusammengesetzt und somit ist auch n0 zusammengesetzt, also keine Primzahl. n = ab, 1 < a, b < n ⇒ (2a − 1)|(2n − 1) = (2a − 1) · b−1 X 2ai i=0 Ist n ∈ psp(2), dann gilt auf Grund der Denition der Pseudoprimzahl, dass 2n−1 ≡ 1 (mod n) gilt und somit n|2n−1 − 1 n ∈ psp(2) ⇒ 2n−1 ≡ 1 (mod n) ⇒ 2n−1 − 1 ≡ 0 (mod n) ⇒ n|2n−1 − 1 Weiterhin ist n0 − 1 = 2n − 2 = 2 · (2n−1 − 1) = 2d. Wegen n|2n−1 − 1 = d folgt n0 = 2n − 1|2d − 1, also 2d − 1 ≡ 0 (mod n), also 2d ≡ 1 (mod n0 ), also ist n0 ∈ spsp(2). n0 − 1 = 2n − 2 = 2 · (2n−1 − 1) = 2 · d n ∈ psp(2) ⇒ 2n−1 ≡ 1 (mod n) ⇒ n|2n−1 − 1 = d n|d ⇒ n0 = 2n − 1|2d − 1 ⇒ 2d ≡ 1 (mod n0 ) ⇒ n0 ∈ spsp(2) Die kleinste Pseudoprimzahl ist 341. Damit ist 2341 − 1 eine strenge Pseudoprimzahl, der Startpunkt einer unendlichen Serie von Pseudoprimzahlen und sogar strengen Pseudoprimzahlen. 2341 − 1 = 447 94894 84355 60842 11148 84561 13688 85562 43290 99446 92990 69799 97820 19275 83742 36032 18907 61754 98654 32142 31551 Die nächste (dritte) Zahl in dieser Folge hat dann etwa 1034 Stellen, also schon ziemlich groÿ! 6 Die Pseudoprimzahlen bis 25 · 109 Die Berechnung der Pseudoprimzahlen bis 25 · 109 hat nach Auskunft von Pomerance, Selfridge und Wagsta [PSW, p. 1006] mehrere Monate benötigt. Das 6 DIE PSEUDOPRIMZAHLEN BIS 10 25 · 109 war vor etwa 30 Jahren. Der Fortschritt der Technik ist deutlich spürbar. Auf einem Notebook mit keinen Spitzenleistung benötigte die selbe Rechnung nur etwa 100 Stunden, ohne dass besondere Optimierungen vorgenommen wurden. In der letzten Spalte sind die Anzahl der Carmichael-Zahlen notiert, die später noch betrachtet werden. Es ergaben sich folgende Ergebnisse: x 108 109 2 · 109 3 · 109 4 · 109 5 · 109 10 · 109 15 · 109 20 · 109 25 · 109 π(x) 5.761.455 50.847.534 98.222.287 144.449.537 189.961.812 234.954.223 455.052.511 670.180.516 882.206.716 1.091.987.405 P π2 (x) 2.057 5.597 7.536 8.924 10.103 11.108 14.884 17.658 19.865 21.853 Eπ2 (x) 1.071 2.939 3.925 4.627 5.218 5.734 7.706 9.147 10.307 11.347 Sπ2 (x) 488 1.282 1.681 1.988 2.247 2.471 3.291 3.921 4.412 4.842 C(x) 255 646 843 983 1.092 1.184 1.547 1.782 1.983 2.163 Hierbei ist π(x) die Funktion bezüglich der Anzahl der Primzahlen kleiner oder gleich einer Grenze x. Inzwischen sind die Berechnung weit über diese Grenzen geführt worden. (siehe [Rib], p. 226) x 1011 1012 1013 P π2 (x) Eπ2 (x) 38.975 20.417 101.629 53.332 264.239 124.882 Sπ2 (x) C(x) 8.607 3.605 22.407 8.241 58.892 19.279 Im Anhang A sind die Daten bis 25 · 109 in Schritten von 108 aufgeführt. In der Zeit als der Artikel von Pomerance, Selfridge und Wagsta [PSW] geschrieben wurden, war die Rechnerleistung noch gering. Mit der steigenden Leistung der Rechner ist auch die der Bedarf an groÿen Primzahlen gestiegen, Primzahlen mit 500 bis 1000 Bits, mit 150 bis 300 Stellen. Anbei eine Primzahl mit etwa 1.000 Bit (301 Stellen), mittels Java erstellt. In Java ist der Miller-Rabin-Test im Standard-Sprachumfang implementiert, da die Bestimmung von groÿen Primzahlen sehr wichtig ist. 36235 52295 17680 02881 63724 05610 20035 17263 16301 43659 26575 82193 12376 94233 74980 97470 21790 76471 20157 68304 88278 10871 76544 20814 42571 46289 10107 51083 86800 65032 93913 43779 59781 80381 26717 17573 01981 76129 94314 88050 07555 94693 01900 32723 68786 36802 70395 54230 08163 54368 00254 89425 72424 71769 6 95926 58096 07166 32328 25333 04293 7 7 11 BASEN UNGLEICH 2 Basen ungleich 2 Die bisherigen Untersuchungen sind willkürlich zur Basis 2 durchgeführt worden. Wie sehen die Ergebnisse für andere Basen aus? Ich habe zum einem die strengen Pseudoprimzahlen bis 108 für verschiedene Basen berechnet. Zum anderen habe ich die strengen Pseudoprimzahlen bis 25 · 109 bezüglich anderer Basen untersucht. In der nachstehenden Tabelle sind die Anzahl der strengen Pseudoprimzahlen bis x = 108 für verschiedenen Basen aufgeführt. p 2 3 5 7 11 13 17 19 488 582 475 446 430 472 481 498 Sπp (x) Die Anzahlen stimmen grob gesprochen etwa überein, keine Basis ist in irgend einer Weise ausgezeichnet. In einer anderen Untersuchung habe ich die strengen Pseudoprimzahlen zur Basis 2 bis 25 · 109 untersucht, für welche anderen Basen diese Zahlen auch strenge Pseudoprimzahlen sind. Im Anhang B sind die Daten hinterlegt. Es gibt keine Zahl, die für alle Basen eine strenge Pseudoprimzahl ist. Im Bereich bis 108 sind nur 13 Zahlen strenge Pseudoprimzahlen zu den Basen 2, 3 und 5. Nur eine Zahl (3.215.031.751) ist sogar noch strenge Pseudoprimzahl zur Basis 7. Diese Zahl (eine Carmichael-Zahl) ist jedoch keine strenge Pseudoprimzahl zu 11, 13, 17, jedoch wieder eine Pseudoprimzahl zu 19. Diese Tatsache macht den Miller-Rabin-Test so interessant. Wenn eine Zahl den Miller-Rabin-Test für die Basen 2,3,5,7,11,13,17 und 19 besteht, dann ist die Wahrscheinlichkeit, dass es eine Primzahl ist, hoch. Die heutige Rechnerleistung ermöglich es, den Test schnell auszuführen. Es gibt jedoch keine absolute Sicherheit für die Eigenschaft Primzahl. Im Gegensatz dazu, wenn die Zerlegbarkeit festgestellt wird, dann ist die Zahl sicher zusammen gesetzt, auch wenn man dann noch nicht die Primfaktoren kennt. 8 Anzahl der Pseudoprimzahlen Für die Anzahl der Pseudoprimzahlen P π2 (n) gibt es Abschätzungen, grobe Abschätzungen. Nach Pommerance [Pom] (siehe Riesel [Rie], p. 101) gilt n5/14 < P π2 (n) < n · exp − ln(n) ln(ln(ln(n))) ln(ln(n)) wobei die Abschätzung (für kleine Zahlen wie etwa 2, 5 · 1010 ) sehr grob ist. n 2, 5 · 1010 1011 1012 1013 n5/14 5.171 8.483 19.307 43.940 ln(ln(ln(n))) n · exp − ln(n)ln(ln(n)) 4, 116 · 106 1, 017 · 107 4, 598 · 107 2, 092 · 108 9 CARMICHAEL-ZAHLEN 9 12 Carmichael-Zahlen Betrachten wir nochmals genauer die Carmichael-Zahlen (siehe [HU], p. 226f). Zuerst nochmals die Denition Denition 18: Eine zusammengesetzte Zahl n ∈ N heiÿt Carmichael-Zahl , falls an−1 ≡ 1 (mod n) für alle a ∈ (Z/nZ)× gilt. Eine Charakterisierung von Carmichael-Zahlen wurde von Korselt10 im Jahre 1899 beschrieben, jedoch erst Carmichael11 konnte 1912 die erste CarmichaelZahl angeben, die seither seinen Namen tragen (siehe [Rib], p. 101). Die Charakterisierung von Korselt lautet (siehe [HU], p. 226) Satz 19: (Korselt 1899) Sei n ∈ N eine ungerade, zusammengesetzte Zahl. 1. Wenn n durch p2 teilbar ist, wobei p eine Primzahl ist, dann ist n keine Carmichael-Zahl. 2. Sei n nicht durch eine Quadratzahl teilbar. Genau dann ist n eine CarmichaelZahl, wenn p − 1|n − 1 für jede Primzahl p gilt, die n teilt. Eine Carmichael-Zahl ist qudratfrei und muss das Produkt von mindestens 3 Primfaktoren sein (siehe [HU], p. 227): Bemerkung 20: Eine Carmichael-Zahl ist Produkt von mindestens drei ver- schiedenen Primzahlen. Beispiel 21: Die Zahl 561 = 3 · 11 · 17 ist die kleinste Carmichael-Zahl. Carmichael-Zahlen können konstruiert werden. J. Chernick12 hat 1939 ein einfaches System zur Konstruktion von Carmichael-Zahlen gefunden. (siehe [Rib],p. 103) Bemerkung 22: Eine Zahl M3 (m) = (6m + 1) · (12m + 1) · (18m + 1) ist für m ≥ 1 eine Carmichael-Zahl, wenn alle drei Faktoren (6m+1), (12m+1) und (18m + 1) Primzahlen sind. Dies ist äquivalent zur Aussage: 10 11 12 Alwin Korselt, deutscher Mathematiker, 1984-1947 Robert Daniel Carmichael, amerikanischer Mathematiker, 1879-1967 keine persönlichen Daten gefunden 9 13 CARMICHAEL-ZAHLEN Bemerkung 23: Es sei p > 3 eine Primzahl. Sind auch 2p − 1 und 3p − 2 Primzahlen, dann ist n = p · (2p − 1) · (3p − 2) eine Carmichael-Zahl. Beweis: Es gilt n − 1 = p · (2p − 1) · (3p − 2) − 1 = 6p3 − 7p2 + 2p − 1 = (p − 1) · (6p2 − p + 1) Somit gilt auf jeden Fall (p − 1)|(n − 1). Da p eine ungerade Primzahl ist, gilt 6p2 − p + 1 ≡ 0 (mod 2), ist also gerade, so dass auch (2p − 2)|(n − 1) gilt. Da p > 3 ist, gilt p ≡ 1 (mod 6) oder p ≡ 5 (mod 6). Wenn p ≡ 5 (mod 6) gilt, dann ist 2p − 1 ≡ 3 (mod 6), also keine Primzahl. Für p ≡ 1 (mod 6) gilt 2p − 1 ≡ 1 (mod 6) und 3p − 2 ≡ 1 (mod 6), also kein Widerspruch dazu, dass 2p − 1 und 3p − 2 Primzahlen sein sollen. (D.h. p ist von der Form 6m + 1 für m ≥ 1.) Wegen p ≡ 1 (mod 6) gilt auch p ≡ 1 (mod 3) und somit gilt (6p2 − p + 1) ≡ 0 (mod 3). Damit gilt auch (3p − 3)|(n − 1), also ist n eine Carmichael-Zahl. Die ersten Carmichael-Zahlen dieser Konstruktion sind in der nachfolgenden Tabelle aufgeführt. m M3 (m) 1 1.729 5 172.081 6 294.409 6m + 1 7 31 37 12m + 1 13 61 73 18m + 1 19 91 109 Damit lassen sich Carmichael-Zahlen mit 3 Primfaktoren konstruieren. Für k Primfaktoren gibt es ebenfalls eine Konstruktionsvorschrift (siehe [Rib], p. 103) Bemerkung 24: Für k ≥ 4 und m ≥ 1 sei Mk (m) = (6m + 1) · (12m + 1) · k−2 Y (9 · 2i m + 1) i=1 Sind alle k Faktoren von Mk (m) Primfaktoren und gilt zudem 2k−4 |m gilt, dann ist Mk (m) eine Carmichael-Zahl. Die ersten beiden Carmichael-Zahlen dieser Konstruktion sind in der nachfolgenden Tabelle aufgeführt. m M4 (m) 1 63.973 45 192.739.365.541 6m + 1 7 271 12m + 1 13 541 18m + 1 19 811 36m + 1 37 1621 Es ist unbekannt, ob es für jedes k ≥ 3 unendlich viele Carmichael-Zahlen gibt (siehe [Rib], p. 102). Es konnte jedoch bewiesen werden ([AGP]), dass es unendlich viele Carmichael-Zahlen gibt. Für die obere und untere Grenze der Anzahl C(x) der Carmichael-Zahlen unterhalb oder gleich x gilt. 10 14 ANDERE PSEUDOPRIMZAHLEN Bemerkung 25: Ist C(n) die Anzahl der Carmichael-Zahlen kleiner oder gleich n, dann gilt n 2/7 ln(n) ln(ln(ln(n))) < C(n) < n · exp − ln(ln(n)) Grobe Abschätzungen mit dieser Formel können in der nachstehenden Tabelle entnommen werden. n 2, 5 · 1010 1011 1012 1013 n2/7 935 1.389 2.682 5.179 ln(ln(ln(n))) n · exp − ln(n)ln(ln(n)) 4, 116 · 106 1, 017 · 107 4, 598 · 107 2, 092 · 108 Im Anhang C sind die Carmichael-Zahlen kleiner als 2, 5 · 1010 aufgeführt, inklusive der Primzerlegung. 10 Andere Pseudoprimzahlen Oben wurden Pseudoprimzahlen, Euler-Pseudoprimzahlen und strenge Pseudoprimzahlen untersucht. Es gibt noch weitere Arten von Pseudoprimzahlen (siehe z.B. [Rib]). Jedesmal, wenn es eine Eigenschaft für Primzahlen gibt, kann daraus eine Überprüfung durchgeführt werden. Aus der Beziehung p ∈ P ⇒ A(p) folgt die Umkehrung nicht A(n) ⇒ n ∈ / P. Wenn n zusammengesetzt ist und A(n) gilt, dann hat man eine Pseudoprimzahl mit der Eigenschaft A(n). Dabei ergeben sich folgende Fragen: 1. Wie zuverlässig erkennt die Eigenschaft zusammengesetzte Zahlen. 2. Ist das Verfahren eektiv umsetzbar? Literatur [AGP] W. R. Alford, A. Granville, C. Pomerance; There are Innitely Many Carmichael Numbers; Ann.Math 139 (1994), 702-722 [BS] Eric Bach, Jerey Shallit; Algorithmic Number Theory, Volume 1 Ecient Algorithms; The MIT Press; Cambridge; 1996 [GG] Joachim von zur Gathen, Jürgen Gerhard; Modern Computer Algebra; Cambridge University Press; Cambridge; 2nd Edition 2003 [HU] Silke Hartlieb, Luise Unger; Mathematische Grundlagen der Kryptographie; Skript zum Kurs 01321 an der Fernuniversität in Hagen; 2008 [Pom] Carl Pomerance; On the Distribution of Pseudoprimes; Math.Comp. 37 (1981) 587-593 B STRENGE PSEUDOPRIMZAHLEN ZUR BASIS 2 KLEINER ALS 2, 5·1010 15 [PSW] Carl Pomerance, J.L. Selfridge and Samuel S. Wagsta, Jr.; The Pseudoprimes to 25 · 109 ; Mathematics of Computation, Volume 35, Number 151, July 1980, Pages 1003 - 1026. [Rib] Paulo Ribenboim; Die Welt der Primzahlen; Springer; Berlin; 2006 [Rie] Hans Riesel; Prime Numbers and Computer Methods for Factorization; Birkhäuser; Boston; 1985 [Wol-C] WolframMathWorls; http://mathworld.wolfram.com/CarmichaelNumber.html; [Letzter Zugri: 18.11.2008] [Wol-P] WolframMathWorls; http://mathworld.wolfram.com/Pseudoprime.html; [Letzter Zugri: 15.11.2008] A Anzahl von Pseudoprimzahlen in Schrittweite 108 Die Berechnung der Pseudoprimzahlen bis 2, 5·1010 wurde in Schritten von 108 durchgeführt. Daher wurden 250 Berechnungen durchgeführt. Die Ergebnisse der Berechnungen sind in der Datei Anhang A zusammengefasst. B Strenge Pseudoprimzahlen zur Basis 2 kleiner als 2, 5 · 1010 Im Anhang B sind alle strengen Pseudoprimzahlen zur Basis 2 kleiner als 2, 5 · 1010 aufgeführt. Bei allen 4.842 Zahlen ist auÿerdem vermerkt, für welche Basen 3, 5, 7, 11, 13, 17 und 19 die Zahlen ebenfalls strenge Pseudoprimzahlen sind. In der nachfolgenden Tabelle sind diejenigen strengen Pseudoprimzahlen bis 2, 5 · 1010 aufgeführt, die sowohl für 2, 3 und 5 strenge Pseudoprimzahlen sind. Nr 256 600 1259 1354 2045 2175 2638 2804 3856 3986 4253 4396 4545 n 25.326.001 161.304.001 960.946.321 1.157.839.381 3.215.031.751 3.697.278.427 5.764.643.587 6.770.862.367 14.386.156.093 15.579.919.981 18.459.366.157 19.887.974.881 21.276.028.621 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 5 5 5 5 7 11 13 17 19 11 7 13 11 13 17 17 19 C C CARMICHAEL-ZAHLEN KLEINER ALS 2, 5 · 1010 Carmichael-Zahlen kleiner als 16 2, 5 · 1010 Im Anhang C sind alle Carmichael-Zahlen kleiner als 2, 5 · 1010 aufgeführt, sowie deren Zerlegung in Primfaktoren.