Divagaciones diofánticas entre números figurados y curvas elípticas
Llevo poco más de dos años escribiendo y pensando en más estampillas imaginarias, como de países visitados, para pegarlos en el libro de Elena Deza y Michel Deza (2012) sobre números figurados. A raíz armónica de este libro, he desarrollado artesanalmente software para hacer música algorítmica con números figurados en Sonic Pi, así como una librería para calcularlos y graficarlos, figuratenum, que ya vive en su propia página de documentación.
Lo que voy a mostrar a continuación es, esencialmente, mi afán por expandir la curiosidad, de la forma más natural posible, hacia otros huariques de la noción de número figurado. Pienso, por lo tanto, escribir varias notas al respecto (cada una autocontenida en cuestión de nociones básicas).
Y antes de dar el contenido de cajón, te cuento que mi interés en las curvas elípticas emergió cual paiche del Amazonas cuando supe que puedes dotarlas de una estructura de grupo en la que los elementos son los puntos de la curva. Más adelante veremos esto, continuemos.
Cómo llegué al huarique del problema
Bien, lo que veremos en cada publicación tratará de responder una pregunta que tuve hace unos días mientras caminaba bajo este clima cambiante y caluroso, cuando iba a comprar al mercado algo para preparar el almuerzo.
Estuve recordando que los números figurados planos (en el libro de cabecera) tienen una forma natural de estudiarse bajo el lente de ecuaciones diofánticas. Por ejemplo, ¿qué números triangulares son también pentagonales ? Es decir, encontrar los números enteros positivos que cumplan
respectivamente. La respuesta es que hay un conjunto infinito de números triangulares y pentagonales a la vez (dale click y míralo en OEIS).
Puedes verlos por separado en consola con mi librería de PyPI, en el rango que elijas.
from figuratenum import FigurateNum
triangular = FigurateNum().triangular()
print([next(triangular) for _ in range(1000)])
# [1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78, 91, 105, 120, ...]
pentagonal = FigurateNum().pentagonal()
print([next(pentagonal) for _ in range(1000)])
# [1, 5, 12, 22, 35, 51, 70, 92, 117, 145, 176, 210, 247, 287, 330, ...]
Y me cuestioné lo siguiente:
¿Y si hago una mixturización de dimensiones? ¿Y si la ecuación diofántica tiene a un lado un número figurado multidimensional de dimensiones y al otro lado un número multidimensional de dimensiones? O, mejor aún para computar cosas más fácilmente, ¿si elijo para el problema un número figurado plano () y un número figurado espacial ()?
Entiéndase por un entero mayor o igual a como la dimensión del número figurado. Previo a ver cómo llegué al asunto central de esta nota de laboratorio, retomo mi énfasis en que las ideas sean naturales, pues fue así y solo así como caigo en las curvas elípticas; si no me hubiera ido al desvío con esa búsqueda de mixturización, no habría llegado a ellas. Ahora toca decirte qué es un número figurado.
Mi forma de ver los números figurados
Solo en esta sección seré más preciso, porque es la base con la que hago el saludo protocolar a nuevas ideas aledañas a los números figurados. Para empezar, un número figurado me gusta pensarlo a través de un polinomio del anillo , y el cual define la función
Así, la sucesión por ambos lados, es decir, bilátera asociada a
donde , es lo que entiendo por número figurado. Probablemente te parece extraño, pero esta holgura en el dominio viene bien para pensar en números figurados clásicos (solo enteros positivos) y los generalizados.
Entonces, con la definición quedamos en que los triangulares son
El esqueleto está calcificado. Para reformular con más filo la pregunta central en nuestros términos actuales, buscamos soluciones a ecuaciones diofánticas de la forma
Es momento de ir a la ecuación.
Números octaédricos en la curva elíptica
Hay múltiples formas de definir un número octaédrico, pero daré la definición más tradicional. Les presento a
Puedes calcular la lista de números octaédricos con mi librería figuratenum
from figuratenum import FigurateNum
seq1 = FigurateNum().octahedral()
print([next(seq1) for _ in range(1500)])
La lista de primeros términos que saldrán por consola son
Ahora el gran problema fue de decisión.
¿A qué otro número figurado pongo al frente de para armar la ecuación diofántica? ¿Triangular, heptagonal, truncado?
Hay tantas posibilidades. Pero, para no complicarme en tal indecisión para estudiar, lo más espontáneo que se me ocurrió fue geometrizar de manera continua a la sucesión, así que
Esto con el fin de estudiar los huecos y espacios que tienen los objetos discretos mediante lo continuo, lo incesante y junto.
Con esto, recordé que cabe interpretarla como una función . Después, como vi que estamos en tercer grado, saltó inmediata mi curiosidad por elevar al cuadrado únicamente el lado izquierdo, ya que me pareció estar dando un par de vueltas a la realidad de una curva elíptica sin querer mirarla. Lo que encuentro entonces es
Es evidente que hay una mixturización y desbalance, porque solo elevé al cuadrado un lado (ya no es equivalente a , y si hubiera elevado ambos lados solo habría obtenido de nuevo la gráfica de ), pero decidí continuar en la misma guisa de cambio diminuto a la hipérbola que hice en una nota en español y que me llevó a los -logaritmos. Es momento de determinar entonces si es una curva elíptica.
Los ingredientes azucarados de la curva elíptica
Lo que es
Bien podríamos dibujar la curva en y ver qué sale, pero necesitamos saber que se trata de una curva elíptica. Dada la premisa autocontenida, necesitaré introducir algunas definiciones vertebrales al tema.
Una curva elíptica sobre los racionales es una curva proyectiva plana de tercer grado y de género que es, además, suave (esto es fundamental), con un punto racional distinguido (el punto al infinito, en la forma de Weierstraß); aunque en lo que veremos, para mayor familiaridad nuestra, tomaremos las ideas en coordenadas afines y no proyectivas.
En el llano en llamas tenemos lo que se llama un modelo de Weierstraß (ojo con la Eszett) de dado por
con cada entero, lo que completa el apellido de modelo integral. Impresiona la primera vez que se ve este tipo de curva por su complejidad, pero en nuestro desarrollo todo será más simple. Para más información, marca el 2 de Silverman.
Los coeficientes que usaremos serán menos, no todos los seis que aparecen allí. Como queremos que la curva nuestra se parezca a ese modelo, necesitamos hacerle unos retoques, para empezar el del denominador debe desaparecer.
Suavidad e invariantes
Las curvas elípticas tienen muchos invariantes, así como en el arte musical se tiene invarianza por transposición o por inversión. Uno sustancial para determinar la suavidad es el discriminante . Pero antes de ello, nuestra curva necesitará menos coeficientes y tendrá la siguiente forma
Recuerda que son enteros y sí, se le ha perdido el monomio de segundo grado. El discriminante queda entonces
Listo, hay varias cuestiones sobre el discriminante (que sea mínimo), pero ya sabes a quién marcar.
Listo. Ya que hemos hablado de suavidad, conviene decir de qué va. Si tenemos una curva definida implícitamente por una ecuación
Decimos que un punto de la curva es suave si las derivadas parciales no se anulan al mismo tiempo. En pocos símbolos
Si se cumple esto, la curva no tiene picos ni cruces ni puntos aislados ni nodos ni cúspides donde la curva deje de comportarse como un objeto geométrico regular.
Probemos con nuestra ecuación entonces.
Si calculamos la derivada parcial respecto de es y respecto de es . Para que un punto sea singular (las cosas que dijimos arriba), debe cumplirse a la misma vez que , además de estar sobre la curva. Si despejamos a lo Baldor, de sale , y al sustituir en la curva tenemos que o , pero como estamos condicionados por la singularidad, debería ser también . Ninguna de esas abscisas anula ( da ; da ). Por lo que el puerto USB no recibe un disquete de 3 1/2: no hay puntos singulares y la curva es suave.
El discriminante hace el trabajo más simple en la detección de singularidades, sin tener que buscar cada punto singular por separado, ya que si es diferente de cero nos informa que la curva proyectiva es suave. Sin embargo, para ser más precisos, la condición es que el campo tenga característica distinta de 2 y de 3, como los racionales o los reales.
Transformaciones cuadradas
Lo que toca ahora es transformar nuestra curva elíptica en la forma de Weierstraß. Vimos que también ese se pega al en la ecuación implícita. Para solucionar esto, llamaremos al viejo truco de matrices cuadradas de con coeficientes racionales que conviertan nuestras coordenadas para dar el salto con pértiga.
Perfecto, planeamos hallar una tal que
Así que nuestra ecuación en la forma que queremos estará escrita con las coordenadas como imagen del punto . La matriz asociada al morfismo lineal es
es decir, , que utilizaré cual ejemplo prototipo de una función asociada a un número figurado. Entonces más adelante, pensaré en matrices
Es decir, cuyo determinante diferente de permita la inversión sobre . Así, es un isomorfismo de espacios vectoriales sobre o, en otras palabras, es inyectivo y sobreyectivo.

La curva elíptica octaédrica
Reemplacemos entonces. El cambio de variables es y y, si despejamos en las variables de la ecuación base, tenemos
Sustituimos e en la curva original , de modo que
El denominador mayor que encontrarás en ambos lados del océano elíptico es .
Multiplicamos como lo amerita y tenemos la ecuación clave de esta nota (presta atención):
Como comprobación rápida con el discriminante, , así que la curva es suave, como ya intuíamos.
Los números octaédricos tienen esta curva elíptica asociada. Y merece aclarar que
La matriz nos ha dado una equivalencia entre curvas afines sobre .
Lo que viene a continuación, es tomar una mínima parte de lo ya estudiado en la teoría de curvas elípticas.
El grupo de Mordell-Weil
Pues esta curva está indexada en la base de datos de -funciones y formas modulares en el enlace
Allí verás su gráfica que con un script.py tenemos

Como mi motivación estuvo dada por el álgebra de grupos, aquí introduciré la idea de grupo de Mordell-Weil de una curva elíptica. El truco está en enunciar cómo es la idea que considero de lo más interesante por sí misma:
Existe una ley de composición binaria geométrica que permite dotar de estructura de grupo al conjunto de puntos -racionales de una curva elíptica .
Una ley geométrica
Entonces, sean y dos puntos de la curva sobre los racionales. Dibujemos una recta secante por ambos puntos, esta recta cruzará un tercer punto en la misma curva, ahora hacemos una reflexión axial, respecto al eje de abscisas . Dicho punto reflejado es
Ese fue el primer caso. Pero si , en vez de tomar una recta secante, trazaremos la recta tangente a ese punto ; si te das cuenta, implica la suma (una duplicación).
Entonces, olvidemos las mayúsculas por el momento para divisar las cosas. Esta recta no vertical tiene ecuación ampliamente conocida . Nuevamente, substituimos en nuestra curva de la manera
donde sus tres raíces son las abscisas de los tres puntos de intersección que escribimos como . Si hacemos una simple suma con ellas del modo
deducimos que la primera coordenada de los puntos y son idénticamente , porque la suma
mantiene intacta e invierte el signo de .
Veamos el cálculo explícito ahora. Partimos que (nuevamente en minúsculas), con dos puntos diferentes y , la pendiente de es la archiconocida
Así, el punto viene dado por las coordenadas racionales
Por el otro lado, la duplicación mediante tiene pendiente
(siempre que ; si la tangente es vertical y ). Para llegar a la meta, el punto lo calculas usando y de arriba con .
Cómo es exactamente el grupo
La idea de grupo fue lo que escuché por vez primera como matemática fuera de serie (la que no aprendí en la escuela), y me propuse leer más sobre ello. Usualmente se define mediante un conjunto de axiomas. Y los puntos de la curva los satisfacen de manera análoga a como se haría con un objeto algebraico puro.
Por ejemplo, la cerradura, vimos que se queda dentro de la curva. El elemento neutro, del que no hemos hablado mucho hasta el momento, , es el punto en el infinito tal que al sumarlo . También tiene su inverso (cambio de signo de coordenada ), como , que nos lleva a la identidad en el infinito. También tenemos conmutatividad . Y para cerrar con broche de punto en el infinito, presenta asociatividad
que es la más complicada de demostrar. En suma, los puntos de forman un grupo abeliano con la operación . Pero, es inmediato preguntarnos ¿qué grupo es explícitamente?
Ya, ahora sí el grupo explícito
El teorema de Mordell-Weil es algo más general, para decir de manera global cómo es el grupo a grandes rasgos sobre un cuerpo numérico (extensiones finitas de ). Por obvias razones, no demostraremos aquí nada, pero bien vale que marques .
Los versos del teorema dicen que
si sobre es una curva elíptica, entonces es un grupo abeliano finitamente generado.
Esto implica que existen puntos de que permiten construir, mediante combinaciones lineales con coeficientes enteros, cualquier otro punto de .
Para situar en la mente mejor las cosas, más particularmente tenemos
Tenemos frente a nosotros una parte de torsión , un subgrupo con puntos que tienen orden finito. Y, en el otro lado, tenemos un grupo libre de torsión de rango .
Antes de continuar, conviene dar un breve atisbo histórico que hice en español sobre la forma que demostró Mazur en los años setentas que sobre los racionales, el subgrupo de torsión es una lista de 15 tipos de grupos posibles (11 cíclicos de orden y 4 que son producto de dos cíclicos), y vienen en dos platos y .
La clasificación de la antigua conjetura de Ogg es, por tanto,
También existen ciertas clasificaciones para cuerpos más generales, , como por ejemplo para cuadráticos.
Para ya casi cerrar la sección, solo queda la parte libre. Es el compendio de la complejidad y de quién encuentra el rango más grande. Ambas partes siguen siendo ampliamente estudiadas.
El grupo de nuestra curva es según LMFDB
Tiene rango y subgrupo de torsión de orden dos.
Contemos los puntos enteros
Volvamos a los números figurados, porque estamos ya muy inmersos en los racionales; el foco no debe irse mucho de donde están en los enteros.
Según el teorema de Siegel del año diecinueve veintinueve,
Una curva elíptica como la nuestra y, en general, sobre , con enteros, tiene solamente un conjunto finito de puntos integrales.
Seguro pensarás que este teorema de Siegel nos da una fórmula para hallar los puntos, pero no es así.
Lo que buscamos ahora tiene la forma
Y Siegel solamente nos confirma que
sin ninguna cota ni nada por el estilo.
Según la LMFDB, en total hay puntos. A saber,
Pero si observas, los números de lista que aparecen allí no tienen mucho que ver con los octaédricos. Si puedes, grafícalos en la curva. Bien, lo que sucedió fue que la matriz que definimos es invertible sobre racionales
así que ocurren tres situaciones:
- Los puntos enteros de (curva base antes de aplicar la matriz) se vuelven puntos enteros en (después de aplicada la matriz).
- No todos los puntos enteros de se transformarán en puntos enteros de la curva base .
- Para recuperar los enteros en desde la forma de Weierstraß , hay que filtrar modularmente, es decir, aplicar un criterio de divisibilidad específico.
El cambio a la forma elíptica por excelencia de la LMFDB introdujo puntos enteros que no existen en la curva base. La matriz está bastante lejos de ser unimodular, si tuviera entradas enteras y , hubiéramos estado dentro de (o si el determinante es ) y dejaríamos de lado las 3 consideraciones.
Es menester entonces aclarar que el isomorfismo solo se da sobre racionales, pero no induce un isomorfismo sobre el retículo .
Nosotros buscamos, según el inverso, retomar los puntos enteros de la curva original. Escribiremos como hicimos más arriba pero ahora pensando en puntos con coordenadas enteras
Así, que lo que buscamos es el conjunto de puntos
tal que sus coordenadas satisfagan las congruencias
Una tablita aquí nos muestra cuáles pasan el filtro modular.
| Punto | Cumple | ||
|---|---|---|---|
| Sí | Sí | Sí | |
| No | No | No | |
| No | No | No | |
| Sí | Sí | Sí | |
| Sí | Sí | Sí | |
| Sí | Sí | Sí | |
| Sí | Sí | Sí |
De los cuales extraemos los puntos
Les aplicamos la matriz y nos quedan los puntos enteros en la ecuación base
Corolario que sabe a teorema, pero es proposición

He postergado algo que muy probablemente notaste desde un inicio cuando hablé de ecuaciones diofánticas y puse una curva elíptica. Que lo que hemos planteado es
El lado izquierdo de la curva elíptica son los números cuadrados . Así que todo el tiempo hemos operado elípticamente la ecuación diofántica de números figurados
Desde un inicio solo nos interesa la parte natural, entonces removemos el y los puntos se reducen a . Y de esos cuatro puntos, debemos elevar al cuadrado la ordenada para recuperar el número figurado en común; como y dan el mismo cuadrado, quedan únicamente puntos con coordenadas enteras positivas, y .
El punto cuadrado sin relleno
Con todo lo dicho, hemos demostrado un corolario que sabe a teorema con presentación de proposición que es el plato insignia del huarique visitado en la nota.
. Los únicos números figurados octaédricos y cuadrados a la vez son y .
El porqué está en , mientras que , y en la belleza a media sombra del teorema de finitud de Siegel, con su contrapunto de especie elíptica en la base datos.
Clausura elíptica
Sin duda, ha sido una divagación, mas he planteado el esqueleto bailador para estudiar más ecuaciones diofánticas entre números figurados de tal modo que el ancla esté en la teoría de curvas elípticas sobre y el motor en una matriz invertible asociada a un morfismo lineal .
Además, ya los atisbo como moradores de más invariantes aritméticos y, por supuesto, en cercanía de las funciones generadoras que más me llaman, las formas modulares.
Tabla de contenidos
