Bei einer nicht negativen Ganzzahl N
wird die kleinste ungerade positive Ganzzahl ausgegeben, die eine starke Pseudoprime für alle ersten N
Primzahlen darstellt.
Dies ist die OEIS-Sequenz A014233 .
Testfälle (einseitig indiziert)
1 2047
2 1373653
3 25326001
4 3215031751
5 2152302898747
6 3474749660383
7 341550071728321
8 341550071728321
9 3825123056546413051
10 3825123056546413051
11 3825123056546413051
12 318665857834031151167461
13 3317044064679887385961981
Testfälle für N > 13
sind nicht verfügbar, da diese Werte noch nicht gefunden wurden. Wenn Sie den / die nächsten Begriff (e) in der Sequenz finden, senden Sie ihn / sie unbedingt an OEIS!
Regeln
- Sie können wählen, ob Sie
N
einen Null- oder einen Ein-Index-Wert verwenden möchten. - Es ist akzeptabel, dass Ihre Lösung nur für die Werte funktioniert, die im ganzzahligen Bereich Ihrer Sprache darstellbar sind (also bis zu
N = 12
64-Bit-Ganzzahlen ohne Vorzeichen), aber Ihre Lösung muss theoretisch für jede Eingabe funktionieren, mit der Annahme, dass Ihre Sprache Ganzzahlen beliebiger Länge unterstützt.
Hintergrund
Jede positive gerade ganze Zahl x
kann in der Form geschrieben werden , x = d*2^s
wo d
ungerade ist. d
und s
kann durch wiederholtes Dividieren berechnet werden , n
um 2 , bis der Quotient nicht mehr durch 2 teilbar d
ist , dass Endquotienten, und s
ist die Anzahl von Malen 2 dividieren n
.
Wenn eine positive ganze Zahl n
eine Primzahl ist, lautet der kleine Satz von Fermat :
In jedem endlichen Feld Z/pZ
(wo p
eine Primzahl ist) 1
sind 1
und -1
(oder äquivalent 1
und p-1
) die einzigen Quadratwurzeln von .
Wir können diese drei Tatsachen verwenden, um zu beweisen, dass eine der folgenden beiden Aussagen für eine Primzahl wahr sein muss n
(wo d*2^s = n-1
und r
in welcher Zahl eine ganze Zahl ist [0, s)
):
Der Miller-Rabin-Primalitätstest testet das Gegenteil der obigen Behauptung: Wenn es eine Basis gibt a
, bei der beide oben genannten Bedingungen falsch sind, n
ist dies keine Primzahl. Diese Basis a
wird als Zeuge bezeichnet .
Jetzt [1, n)
wäre das Testen jeder Basis in unerschwinglicher Rechenzeit für große Unternehmen n
. Es gibt eine probabilistische Variante des Miller-Rabin-Tests, die nur einige zufällig ausgewählte Basen im endlichen Feld testet. Es wurde jedoch herausgefunden, dass das Testen nur von primären a
Basen ausreichend ist, und daher kann der Test auf effiziente und deterministische Weise durchgeführt werden. Tatsächlich müssen nicht alle Primzahlenbasen getestet werden - es ist nur eine bestimmte Anzahl erforderlich, und diese Anzahl hängt von der Größe des Werts ab, dessen Primalität getestet wird.
Wenn nicht genügend Primzahlenbasen getestet werden, kann der Test falsch positive Ergebnisse liefern - ungerade zusammengesetzte ganze Zahlen, bei denen der Test ihre Zusammensetzung nicht nachweist. Insbesondere, wenn eine Basis a
die Zusammensetzung einer ungeraden zusammengesetzten Zahl nicht beweisen kann, wird diese Zahl als starkes Pseudoprime zur Basis bezeichnet a
. Bei dieser Herausforderung geht es darum, die ungeraden zusammengesetzten Zahlen zu finden, die starke Pseudoprimes für alle Basen sind, die kleiner oder gleich der dritten N
Primzahl sind (was gleichbedeutend damit ist, dass sie starke Pseudoprimes für alle Primzahlen sind, die kleiner oder gleich der N
dritten Primzahl sind). .