1 puntos por GN⁺ 2025-05-22 | 1 comentarios | Compartir por WhatsApp
  • Se trata una variante de un rompecabezas de ecuaciones con frutas y emojis de internet como una ecuación diofántica entera, y se sigue el proceso hasta construir una solución en enteros positivos
  • La herramienta clave no es buscar de inmediato soluciones enteras, sino encontrar primero puntos racionales y generar nuevos puntos racionales mediante un método geométrico con rectas o tangentes
  • Tras sustituciones de variables y una rotación, la ecuación se convierte en una curva elíptica simétrica, pero los puntos fáciles que se ven al principio no conducen directamente a soluciones positivas del problema original
  • En la curva elíptica, la recta que une dos puntos racionales o la tangente en un punto produce un tercer punto de intersección, y gracias a la fórmula de Viète ese punto también sigue siendo racional
  • Después de encontrar con Mathematica un punto menos trivial y repetir las operaciones, se construye una enorme solución entera positiva al volver a las variables originales

Cómo un rompecabezas de emojis de internet se convirtió en un problema matemático

  • En internet circulaban mucho rompecabezas de ecuaciones con emojis diseñados para producir respuestas distintas al confundir detalles como la cantidad de bananas
  • A comienzos de 2017 apareció en r/math un hilo de Reddit sobre el cansancio de los típicos rompecabezas matemáticos de frutas estilo Facebook, y un usuario creó un problema más difícil usando dibujos de frutas
  • Sridhar Ramesh modificó ligeramente ese problema y lo difundió ampliamente, convirtiéndolo en un rompecabezas de mala fama cuya solución mínima era larguísima y se consideraba que requería conocimientos de curvas elípticas
  • El objetivo es resolver realmente esa versión modificada del problema de emojis

Ejemplo preparatorio: ternas pitagóricas y puntos racionales

  • Primero se trata como ejemplo más sencillo el problema de encontrar ternas pitagóricas
  • En vez de buscar directamente soluciones enteras, la estructura se simplifica si se transforma en el problema de encontrar puntos racionales sobre la circunferencia unitaria correspondiente
  • Si se parte de un punto racional de la circunferencia unitaria y se traza una recta con pendiente racional, el segundo punto donde corta al círculo también es racional
    • Al hallar las intersecciones de la recta y el círculo aparece una ecuación cuadrática
    • Como los coeficientes son racionales y una raíz ya es racional, por la fórmula de Viète la otra raíz también es racional
  • A la inversa, cualquier otro punto racional de la circunferencia unitaria tiene una recta de pendiente racional que lo une con el punto inicial, así que todos los puntos racionales pueden obtenerse del mismo modo
  • Este proceso lleva a la forma estándar que expresa todas las ternas pitagóricas mediante dos enteros positivos y un múltiplo
  • El patrón importante es el método de obtener nuevos puntos con una recta, y una idea similar se usa en el problema original de emojis

Convertir la ecuación original en una curva elíptica

  • La ecuación del problema de emojis, tras eliminar denominadores, se transforma de la búsqueda de soluciones enteras al problema de hallar puntos racionales para las razones entre variables
  • En lugar de buscar de inmediato solo soluciones enteras positivas, primero se explora el conjunto completo de puntos racionales, incluidos positivos y negativos
  • La gráfica no cambia al intercambiar dos variables, así que tiene una simetría inclinada
  • Por conveniencia, mediante una sustitución de variables se rota la gráfica para llevarla a una forma simétrica respecto de los ejes, y a esta curva se la llama curva elíptica
  • Hay puntos racionales fáciles de ver en la gráfica, pero no corresponden a soluciones positivas válidas del problema original
  • Por eso hay que tomar esos puntos fáciles como punto de partida para generar más puntos racionales

El truco de la recta que también funciona en curvas elípticas

  • Si se traza la recta que une dos puntos racionales (P), (Q) sobre una curva elíptica, esa recta vuelve a cortar la curva en un tercer punto (R)
  • Ese tercer punto de intersección también es un punto racional
    • Al sustituir la ecuación de la recta en la ecuación de la curva elíptica aparece una ecuación cúbica en una variable
    • Los coeficientes de la ecuación cúbica son racionales
    • Como dos de las raíces ya son racionales porque provienen de las coordenadas de (P) y (Q), por la fórmula de Viète la tercera raíz también es racional
    • Al sustituirla de nuevo en la ecuación de la recta, la otra coordenada también queda determinada como racional
  • En el caso (P=Q), en lugar de la recta que une dos puntos se usa la tangente en ese punto, y la intersección se calcula contando multiplicidades
  • Incluso al unir los puntos fáciles iniciales o trazarles tangentes, solo se repiten algunos pocos puntos y no se expande hacia puntos nuevos y útiles
  • Esos puntos son torsion point, así que repetir el mismo truco de la recta ya no permite escapar hacia puntos nuevos

Buscar puntos racionales dentro de la región válida

  • Con Mathematica se buscaron puntos racionales menos triviales sobre la curva elíptica, y uno de ellos se usó en los cálculos posteriores
  • El objetivo no es cualquier punto racional, sino uno que, al volver a las variables originales, haga que los tres valores sean positivos
  • Si todas las variables son negativas, se pueden cambiar todos los signos para obtener una solución positiva, así que se fija una variable como positiva y se reconstruyen las condiciones hacia atrás
  • Esta condición aparece como una región verde específica en el plano de coordenadas transformado, y hay que enviar un punto racional de la curva elíptica dentro de esa región
  • Hacerlo a mano es muy engorroso, así que con Mathematica se calcularon las fórmulas de las coordenadas de intersección producidas por operaciones con rectas y tangentes
  • Se obtuvieron fórmulas de coordenadas tanto para el tercer punto de intersección de la recta que une dos puntos como para el tercer punto generado por la tangente en un punto, y las expresiones se volvieron muy complejas mientras los números crecían

Construcción final de la solución entera positiva

  • A partir del punto racional inicial se traza una tangente para obtener un punto nuevo, y luego se vuelve a trazar una tangente en ese nuevo punto para obtener el siguiente, repitiendo el proceso
  • Incluso tras varias operaciones con tangentes no se entra de inmediato en la región objetivo, así que además se crea otro punto uniendo uno de los puntos con el punto obtenido al cambiar el signo de sus coordenadas
  • Al final, se une un “buen” punto racional reservado de antemano con el punto de coordenadas grandes obtenido antes, y por fin se alcanza un punto racional dentro de la región verde objetivo
  • Ese punto racional final se devuelve a las variables originales y, al multiplicar por el mínimo común múltiplo de los denominadores, se construye una solución entera positiva
  • La verificación final confirma que la enorme solución entera construida satisface la ecuación del problema original de emojis

1 comentarios

 
GN⁺ 2025-05-22
Opiniones de Hacker News
  • Hay una excelente respuesta de Quora sobre este problema: https://www.quora.com/How-do-you-find-the-positive-integer-s...
    • Ese post de Quora lo escribió Alon Amit y, como referencia, el texto original también cita a Alon Amit, así que sus ideas son más bien una explicación posterior
  • Relacionado con esto, cuando enseñaba matemáticas a mis hijos pequeños y los ayudaba con la tarea, solía reescribir las cosas como ecuaciones o, al llegar a esa etapa, cambiar la ecuación misma
    Pero en vez de usar algo como x, usaba nombres como nube esponjosa o estrella; los niños se irritaban, pero seguían interesados, y más tarde hicieron lo mismo al ayudar a sus amigos
    Es fácil olvidar cómo se siente aprender este tipo de abstracción por primera vez, y era importante mostrar que x no tiene nada de especial: también podría ser el sol, o una frase como “número total de gatos”
    • En la cultura matemática hay cierto minimalismo, y entiendo hasta cierto punto que, cuando uno lanza ecuaciones y las manipula, ayuda mantener todo lo más corto posible
      Pero cuando eso luego se publica, la legibilidad se vuelve realmente mala. Terminas en situaciones como: “hay un término que cumple un papel importante en esta ecuación, ¿pero qué demonios significa? Alguien lo llamó φ, así que no tengo idea”
      Solía bromear que, si crees que los programadores son malos poniendo nombres, deberías ver a los matemáticos. Los matemáticos sienten un orgullo extraño por su incapacidad para poner nombres
      Lo peor son los programas derivados directamente de papers de matemáticas. Si una variable contiene un coeficiente de correlación, llámala así. Tenemos miles de años de lenguaje y símbolos para compartir ideas; no lo codifiques para llamarlo rho
  • Se lo pasé a ChatGPT. Solo subí la imagen a la interfaz básica de OpenAI, y esperaba que el modelo ya conociera el problema y diera la respuesta, que alucinara una respuesta, o que directamente se negara a resolverlo
    Pero en realidad pasó esto: https://chatgpt.com/share/682cce62-c53c-8003-be2c-2929395868...
    En resumen, el modelo propone con confianza valores tentativos, calcula, decide que están mal y sigue intentándolo, incluso repitiendo las mismas conjeturas. No reconoció en absoluto la simetría y actuó como un agente completamente sin estructura
    Al final afirmó con mucha seguridad que este acertijo no tiene solución; si el modelo se comporta así de mal también con acertijos futuros, tendré que revisar mi confianza
    • Aquí están los resultados de Gemini: https://g.co/gemini/share/ab287b25648f
      También se lo pregunté a ChatGPT o3 y pensó durante 11.5 minutos: https://chatgpt.com/share/682d0993-db4c-8004-a66c-3908ef7203...
    • Impresionante. Si definimos arbitrariamente una “solución razonable” como “un número que una persona puede calcular o entender mentalmente”, entonces claramente no hay una solución razonable
      ¿No hay una versión de ChatGPT que se conecta a Wolfram Alpha? Me pregunto si intentaste con esa
  • Eso de “una persona llamada Sridhar Ramesh”: Sridhar es alguien que vale la pena seguir. No es común encontrar a alguien con doctorado en matemáticas que además tenga nivel doctoral para shitposting
  • Me encanta este género. Empecé a llamarlo “Dantzig Sniping” y también hice uno propio: https://x.com/TheOisinMoran/status/1298305686082744320
    Hay más contexto y casos relacionados aquí: https://x.com/TheOisinMoran/status/1299124512240398336
    • Pensé que el nombre venía de Gdańsk, es decir, Danzig, y me preguntaba qué habían snipeado allí
    • Me pregunto cómo se descubren problemas con esta propiedad
  • Estamos en 2025, ¿por qué el autor no usa emojis de frutas reales como nombres de variables?
    • Al intentar entender una base de código C compleja, muchas veces me ayudó reemplazar variables existentes por emojis
      Es mucho más fácil seguir dónde se usa cada variable, y permite captar de un vistazo la estructura pura del código. Un ejemplo que publiqué antes está aquí: https://imgur.com/F27ZNfk
      Lamentablemente, la mayoría de los lenguajes modernos como Rust y JS siguen las recomendaciones XID_Start/XID_Continue, cuya motivación personalmente no me parece muy sólida, y excluyen todos los caracteres emoji de los identificadores
    • Es una solución en C# hecha por Gemini; resolvió el problema usando variables con emojis de frutas. Probablemente sea fuerza bruta: https://imgur.com/a/cC5QPH0
    • Este año es 2025, pero el año en que se creó ese lenguaje probablemente no fue 2025
  • Si usas otra constante en vez de 4, la solución más pequeña puede ser un número realmente enorme: https://observablehq.com/@robinhouston/a-remarkable-diophant...
    • Me encanta la forma tonta pero majestuosa de cargar, cuando hace falta, un número de 120 millones de dígitos dentro de un textarea pequeño
  • Recuerdo cuando apareció ese problema por primera vez. En el seminario de teoría de números todos nos reímos a carcajadas
  • Me gusta que se metan en las profundidades de la teoría de números y hasta en grafos extraños, pero no entiendo qué se suponía que era complicado o confuso en el acertijo original de manzanas/bananas
    ¿Hay alguna parte suficientemente fácil de confundir como para hacer que la gente discuta, o es un problema tan fácil que hace que todos se apuren a presumir?
    A mí me dio 10, 4, 2, aunque quizá soy yo el confundido
    • El “truco” es que en el último grupo solo hay 3 bananas, mientras que en los otros grupos hay 4. Del mismo modo, en la última ecuación hay solo un coco
      Así que parece que se puede interpretar como 1 + 10 + 3