Biorąc pod uwagę nieujemną liczbę całkowitą N, wyprowadza najmniejszą nieparzystą liczbę całkowitą dodatnią, która jest silnym pseudopierwszym znakiem dla wszystkich pierwszychN liczb .
Jest to sekwencja OEIS A014233 .
Przypadki testowe (z jednym indeksem)
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
Przypadki testowe dla N > 13nie są dostępne, ponieważ te wartości nie zostały jeszcze znalezione. Jeśli uda Ci się znaleźć kolejne terminy w sekwencji, koniecznie prześlij je do OEIS!
Zasady
- Możesz wybrać
Nwartość zerową lub jedną indeksowaną. - Dopuszczalne jest, aby twoje rozwiązanie działało tylko dla wartości reprezentatywnych w zakresie liczb całkowitych twojego języka (tak więc
N = 12dla niepodpisanych liczb całkowitych 64-bitowych), ale twoje rozwiązanie musi teoretycznie działać dla każdego wejścia, przy założeniu, że twój język obsługuje liczby całkowite o dowolnej długości.
tło
Każda dodatnia parzysta liczba całkowita xmoże być zapisana w postaci, w x = d*2^sktórej djest nieparzysta. di smożna go obliczyć przez wielokrotne dzielenie nprzez 2, aż iloraz nie będzie już podzielny przez 2. dto ostateczny iloraz i sjest to liczba razy 2 dzielenian .
Jeśli liczba całkowita dodatnia njest liczbą pierwszą, to małe twierdzenie Fermata głosi:
W dowolnym polu skończonym Z/pZ (gdzie pjest liczba pierwsza) jedynymi pierwiastkami kwadratowymi 1są 1i -1(lub równoważnie 1i p-1).
Możemy użyć tych trzech faktów, aby udowodnić, że jedno z dwóch poniższych stwierdzeń musi być prawdziwe dla liczby pierwszej n(gdzie d*2^s = n-1i gdzie rjest liczba całkowita [0, s)):
Test pierwszeństwa Millera-Rabina działa na zasadzie przeciwstawności powyższego twierdzenia: jeśli istnieje podstawa ataka, że oba powyższe warunki są fałszywe, nto nie jest pierwsza. Ta baza anazywa się świadkiem .
Teraz testowanie każdej bazy [1, n)byłoby zbyt drogie w obliczeniach dla dużych n. Istnieje probabilistyczny wariant testu Millera-Rabina, który testuje tylko niektóre losowo wybrane zasady w polu skończonym. Okazało się jednak, że awystarczające jest testowanie tylko podstawowych zasad, dlatego test można przeprowadzić w sposób skuteczny i deterministyczny. W rzeczywistości nie wszystkie podstawowe zasady muszą zostać przetestowane - wymagana jest tylko pewna liczba, a liczba ta zależy od wielkości testowanej wartości pierwotności.
Jeśli przetestowana zostanie niewystarczająca liczba zasad podstawowych, test może dać fałszywie dodatnie - nieparzyste liczby całkowite, w których test nie udowodni ich złożoności. W szczególności, jeśli baza anie udowodni złożoności nieparzystej liczby złożonej, liczba ta nazywana jest silnym pseudopierwszym znakiem bazy a. Wyzwanie polega na znalezieniu nieparzystych liczb zespolonych, które są silnymi pseudopierwszymi dla wszystkich zasad mniejszych lub równych Nth pierwszej liczbie podstawowej (co jest równoważne z twierdzeniem, że są one silnymi pseudopierwszymi dla wszystkich baz pierwszych mniejszych lub równych Nth pierwszej liczbie pierwszej) .

