Introducción a la teoría de números. Ejemplos y - TEC-Digital
Introducción a la teoría de números. Ejemplos y - TEC-Digital
Introducción a la teoría de números. Ejemplos y - TEC-Digital
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
162 NÚMEROS PRIMOS Y FACTORIZACIÓN.<br />
En el método <strong>de</strong> factorización por ensayo y error, en su versión más cruda, probamos con todos<br />
los <strong>números</strong> entre 2 y √ N para hal<strong>la</strong>r un factor <strong>de</strong> N. Si no lo hal<strong>la</strong>mos, N es primo.<br />
En vez <strong>de</strong> hacer estos ≈ √ N pasos (en el peor caso), vamos a escoger una lista aleatoria <strong>de</strong><br />
<strong>números</strong>, más pequeña que √ N, y probar con ellos.<br />
A menudo se construyen sucesiones seudo-aleatorias x0, x1, x2,... usando una iteración <strong>de</strong> <strong>la</strong> forma<br />
x i+1 = f (x i) (mod N), con x0 = random(0, N − 1). Entonces {x0, x1,...} ⊆ ZN. Por lo tanto los<br />
x i’s se empiezan a repetir en algún momento.<br />
La i<strong>de</strong>a es esta: Supongamos que ya calcu<strong>la</strong>mos <strong>la</strong> sucesión x0, x1, x2,... y que es “suficientemente<br />
aleatoria”. Si p es un factor primo <strong>de</strong> N y si<br />
� xi ≡ x j (mod p)<br />
x i ≡/ x j (mod N)<br />
entonces, como x i − x j = kp, resulta que MCD(x i − x j, N) es un factor no trivial <strong>de</strong> N.<br />
C<strong>la</strong>ro, no conocemos p, pero conocemos los x i’s, así que po<strong>de</strong>mos reve<strong>la</strong>r <strong>la</strong> existencia <strong>de</strong> p con<br />
el cálculo <strong>de</strong>l MCD: En <strong>la</strong> práctica se requiere comparar, <strong>de</strong> manera eficiente, los x i con los x j<br />
hasta reve<strong>la</strong>r <strong>la</strong> presencia <strong>de</strong>l factor p vía el cálculo <strong>de</strong>l MCD(x i − x j, N).<br />
⎧<br />
⎨<br />
⎩<br />
x i ≡ x j (mod p)<br />
x i ≡/ x j (mod N)<br />
=⇒ mcd(x i − x j, N) es factor no trivial <strong>de</strong> N<br />
Si x0, x1, x2,... es “suficientemente aleatoria”, hay una probabilidad muy alta <strong>de</strong> que encontremos<br />
pronto una “repetición” <strong>de</strong>l tipo x i ≡ x j (mod p) antes <strong>de</strong> que esta repetición ocurra (mod N).<br />
Antes <strong>de</strong> entrar en los <strong>de</strong>talles <strong>de</strong>l algoritmo y su eficiencia, veamos un ejemplo.<br />
Ejemplo 9.3 Sea N = 1387. Para crear una sucesión “seudoaleatoria” usamos f (x) = x 2 − 1 y x1 = 2.<br />
Luego,<br />
es <strong>de</strong>cir,<br />
x0 = 2<br />
xi+1 = x 2 i − 1 (mod N)