Dado un número entero no negativo N
, genera el número entero impar impar más pequeño que es un pseudoprimo fuerte para todas las primeras N
bases primas.
Esta es la secuencia OEIS A014233 .
Casos de prueba (un índice)
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
Los casos de prueba para N > 13
no están disponibles porque esos valores aún no se han encontrado. Si logra encontrar los siguientes términos en la secuencia, ¡asegúrese de enviarlos a OEIS!
Reglas
- Puede optar por tomar
N
un valor indexado a cero o uno indexado. - Es aceptable que su solución solo funcione para los valores representables dentro del rango de enteros de su idioma (hasta los
N = 12
enteros de 64 bits sin signo), pero su solución debe funcionar teóricamente para cualquier entrada con la suposición de que su idioma admite enteros de longitud arbitraria.
Antecedentes
Cualquier entero par positivo x
puede escribirse en la forma x = d*2^s
donde d
sea impar. d
y s
se puede calcular dividiendo repetidamente entre n
2 hasta que el cociente ya no sea divisible entre 2. d
es ese cociente final y s
es el número de veces que 2 se divide n
.
Si un número entero positivo n
es primo, entonces el pequeño teorema de Fermat dice:
En cualquier campo finito Z/pZ
(donde p
es primo), las únicas raíces cuadradas de 1
son 1
y -1
(o, equivalentemente, 1
y p-1
).
Podemos usar estos tres hechos para demostrar que una de las siguientes dos afirmaciones debe ser verdadera para un primo n
(donde d*2^s = n-1
y r
es algún número entero [0, s)
):
La prueba de primalidad de Miller-Rabin funciona probando el contrapositivo de la afirmación anterior: si existe una base a
tal que ambas condiciones anteriores son falsas, entonces n
no es primo. Esa base a
se llama testigo .
Ahora, probar cada base [1, n)
sería prohibitivamente costoso en tiempo de cálculo para grandes n
. Existe una variante probabilística de la prueba de Miller-Rabin que solo prueba algunas bases elegidas al azar en el campo finito. Sin embargo, se descubrió que probar solo las a
bases primarias es suficiente y, por lo tanto, la prueba se puede realizar de manera eficiente y determinista. De hecho, no todas las bases primas necesitan ser probadas, solo se requiere un cierto número, y ese número depende del tamaño del valor que se está probando para la primalidad.
Si se prueba un número insuficiente de bases primas, la prueba puede producir falsos positivos, enteros compuestos impares donde la prueba no puede demostrar su composición. Específicamente, si una base a
no puede demostrar la composición de un número compuesto impar, ese número se llama un pseudoprimo fuerte a la base a
. Este desafío consiste en encontrar los números compuestos impares que son fuertes psuedoprimos para todas las bases menores o iguales que el N
número primo th (lo que equivale a decir que son pseudoprimos fuertes para todas las bases primas menores o iguales que el N
número primo th) .