Mathematica y los primos Mersenne
En junio de 1999, un grupo internacional de matemáticos, científicos de computación y aficionados, que se había formado bajo el cartel
de la Gran Búsqueda por Internet de Primos Mersenne (GIMPS), descubrió que
26972593-1 es
primo. El número es actualmente el primo más grande conocido. Los descubridores oficiales son
N. Hajratwala, G. Woltman y S. Kurowski. La máquina de Hajratwala encontró efectivamente el primo, mientras que Woltman y Kurowski fueron los arquitectos de software y redes.
Este primo tiene un largo de 2.098.960 dígitos decimales y por lo tanto califica para un premio de $50.000 de la
Fundación de Frontera Electrónica. Un interesante hecho secundario es que a principios de la década del 90,
Mathematica cumplió una parte importante en hacer posible este descubrimiento.
Primero, una perspectiva histórica: los números primos de la forma
2q-1 se llaman "primos Mersenne" por el monje francés
Marin Mersenne (1588-1648), quien trató sobre ellos en correspondencia con el gran
Fermat. Los primos Mersenne han tenido un importante papel en teoría de los números -por ejemplo, en la teoría de los llamados números perfectos y en
criptografía, donde ciertos campos algebraicos gozan de una aritmética eficiente basada en Mersenne. Si bien los primos Mersenne han sido estudiados
por siglos, quedan muchas cuestiones fundamentales, entre ellas si existe un número infinito de ellos.
La única manera de determinar si un número muy grande es realmente primo es realizar una prueba de primalidad,
la cual en el caso de los primos Mersenne pueden ser una manifestación eficiente llamada prueba de Lucas-Lehmer. La prueba de Lucas-Lehmer
implica elevar al cuadrado números gigantes -números con miles o millones de dígitos.
Para tal aritmética, el algoritmo subyacente -una "transformada ponderada discreta de base irracional" (IBDWT) fue desarrollado a principios de la década del 90 por
R. Crandall de Reed College y NeXT, Inc., usando
Mathematica con entorno para prototipos. Fue este algoritmo que Waltman utilizó a mediados de los 90 como
una variante de ensamblador, completando así el ciclo de creación de prototipo/desarrollo para el cual
Mathematica es ideal.
La idea del IBDWT es expandir números gigantes en una base irracional. Uno luego aplica una transformada ponderada discreta -una variante
del clásico FFT- para multiplicar o elevar números al cuadrado en esta base con una velocidad sin precedentes.
Como dice Crandall:
"Mathematica es un entorno ideal para el requisito de mezclar elementos simbólicos y numéricos y la clase de exploración interactiva
que conduce a semejante algoritmo nuevo y diferente".
Un póster de pared de números primos, mostrando todos los dígitos decimales (más de dos millones de ellos) para el número primo récord se encuentra disponible en Perfectly Scientific, Inc.
| |