domingo, 15 de marzo de 2015

Un problema muy complejo

Enunciado

La idea es partir de una fracción s/t, con s y t enteros positivos, y construir k, a, b, c y d que cumplan el sistema de ecuaciones a3 + b3 = ks y c3 + d3 = kt. Sin embargo, tenemos sólo un par de ecuaciones y nada menos que 5 incógnitas, de forma que podemos construirlas, en teoría, de muchas formas.

Para empezar, vamos a suponer que k = 1, aunque luego igual nos damos cuenta de que nos conviene más otro valor.

Una reducción que viene bien es hacer a = d, pero hay que ser flexible, ya que este tipo de simplificaciones a lo mejor no nos sirve luego.

Ahora, trataremos de factorizar y simplificar, para que el sistema sea lineal y realmente podamos obtener una fórmula general. Así, a3 + b3 = (a + b)*(a2 - ab + b2) y a3 + c3 = (a + c)(a2 - ac + c2). Esta factorización se puede conocer como uno de los productos notables, pero también podemos intentar realizar la división (a3 + b3)/(a + b) por cualquier método para ver si es divisible.

Para que se simplifique el término al cuadrado, debería darse que a2 - ab + b2 = a2 - ac + c2, pero sin que b sea igual que c, ya que en ese caso la fracción sólo podría valer 1.

Considerando esta igualdad como una ecuación de segundo grado en b, observamos qué implica.

Resulta que nos lleva a que - ab + b2 = - ac + c2, que equivale a b2 - ab + ac - c2 = 0, por lo que en esa ecuación el coeficiente del término de segundo grado es 1, el de primer grado es -a y el término independiente es ac - c2. Así, el discriminante, que estaría dentro de la raíz cuadrada, sería a2 - 4(ac - c2) = a2 - 4ac + 4c2 = (a - 2c)2. ¡Observa que es un cuadrado perfecto! Eso quiere decir que b puede tener dos valores, (a + a - 2c)/2 = a - c y el valor que ya conocíamos, (a - a + 2c)/2 = c, que no nos interesa.

También podríamos haber tratado esta igualdad como un polinomio en b y dividir por el binomio (b - c), que es solución y no nos interesa que suceda, como dividimos por el método de Ruffini.

El caso es que, imponiendo que b = a - c, ese término de segundo grado se simplifica, y tenemos nuestro sistema mucho más sencillo: a + b = s, a + c = t y b = a - c. Sustituyendo, por ejemplo, b, tenemos que 2a - c = s y a + c = t. Aplicando ahora reducción, tenemos que 3a = s + t. Puesto que debemos dividir por 3 para obtener un entero, reconsideramos nuestra postura inicial de tomar k = 1, de forma que k realmente la hacemos valer 3, lo que no cambia mucho nuestras ecuaciones.

De esta forma, 3a = 3s + 3t, luego a = s + t, c = 3t - a = 2t - s, y b = a - c = 2s - t.

Sin embargo, deberemos probar que a, b y c son positivos, y eso sólo sucede si 2t es mayor que s y además 2s es mayor que t. Manipulando un poco estas desigualdades vemos que este método parece un poco limitado, ya que sólo funciona con las fracciones en el intervalo entre 1/2 y 2. Podemos comprobar que una fracción en ese intervalo ya la podemos poner de esa forma.

¿Qué podemos hacer con una fracción positiva que no esté comprendida en ese intervalo?

La idea genial consiste en "desplazarla" hacia ese intervalo multiplicando por una fracción que sea cubo de otra, y después transformarla con esta receta. Podremos volverla a convertir mediante una división y tendremos, agrupando los cubos, que será de la forma deseada.

Es decir, necesitamos un multiplicador p3/q3. Una vez convertida en una fracción de la forma (a3 + b3)/(c3 + d3), volvemos a multiplicar el resultado, esta vez por q3/p3, agrupamos los cubos y tenemos una expresión como la que necesitamos, ((aq)3 + (bq)3)/((cp)3 + (dp)3).

¿Seguro que existe este multiplicador? Supongamos que nuestra fracción es s/t. En realidad el multiplicador debe estar entre t/2s y 2t/s, para que al usarlo esté entre 1/2 y 2. Si tomamos raíces cúbicas, tendremos dos valores distintos (t/2s)(1/3) y (2t/s)(1/3). Como las fracciones son densas, es decir, entre dos números podemos encontrar infinidad de ellas, bastará que tomemos una entre esos dos números, y su cubo cumplirá las propiedades que necesitamos.

Veamos un ejemplo. Imagina que la fracción es, por fijar ideas, 2/5.

Los dos extremos que necesitamos son 5/4 y 5, o, mejor dicho, sus raíces cúbicas. Vamos a buscar una fracción lo más sencilla posible. En estos casos, a mí me gusta recurrir a las series de Farey o el árbol de Stern-Brocot. No sirve un entero (1 es muy pequeño y 2 demasiado grande), probamos con su mediante, 3/2. Éste sí sirve, ya que 5/4 es menor que 27/8 y 27/8 es menor que 5. Si no hubiésemos encontrado una tan sencilla, por ejemplo, hubiese sido demasiado pequeña, habríamos usado el mediante con el 2 y así sucesivamente.

Ahora que tenemos el multiplicador, tomamos la fracción (2/5)*(27/8) = 54/40 = 27/20. Pues bien, tenemos que a = 27 + 20 = 47, b = 54 - 20 = 34 y c = 40 - 27 = 13. Con esos números, tenemos que 27/20 = (473 + 343)/(473 + 133), por lo que 2/5 = (8/27)*(27/20) = (943 + 683)/(1413 + 393). ¿No es fascinante?

Una vez hecho todo el razonamiento, podemos resumirlo en: tomamos la fracción s/t, buscamos un multiplicador p/q de forma que esté entre (t/2s)(1/3) y (2t/s)(1/3). Así, su cubo estará entre t/2s y 2t/s. Luego (sp3)/(tq3) está entre 1/2 y 2. Tomamos ahora a = sp3 + tq3, b = 2tq3 - sp3 y c = 2sp3 - tq3. Con esas condiciones, es largo pero no muy complicado ver que ((qa)3 + (qb)3)/((pa)3 + (pc)3) = s/t, y que los cuatro valores, qa, qb, pa y pb son números positivos, debido a la elección de p y q.

Enhorabuena si has llegado hasta aquí. Ha sido un texto escrito sobre todo para mí mismo, para recordar este problema que me ha rondado por la cabeza más de una semana. Si hay algo que creas que no funciona bien, o que no entiendes, deja un comentario. Gracias.

1 comentario:

Jesus SD dijo...

Buenas tardes, me llamo Jesús y estoy desarrollando una aplicación web que consiste en una calculadora de triángulos (http://triancal.esy.es (de momento, solo funciona bien en el navegador Chrome)) aunque no soy matemático a base cabezonería (papel, el Derive y el Geogebra) he conseguido obtener un montón de formulas para calcular un triángulo con el mínimo numero de datos posible, quizás alguna sea inédita, y sus límites para que solo se puedan introducir datos correctos.

Debido a mis limitados conocimientos matemáticos en el calculo de derivadas para hallar máximos y mínimos no consigo hallar unas formulas, por este motivo les escribo por si me pudieran ayudar, las formulas que me faltan parten de que aunque he conseguido hallar las dos posibles áreas (t y td) de un triángulo a partir de dos alturas (x, y) y el perímetro (p);

$v1=($x*$x*($y*$y+$p*$p)+3*$p*$p*$x*$y+$p*$p*$y*$y)*d((12*$p*($x+$y)));

$v2=sqrt(abs(pow($x,4)*pow(($y*$y+$p*$p),2)+6*$p*$p*pow($x,3)*pow($y,3)+$p*$p*$x*$x*$y*$y*(2*$y*$y-$p*$p)+
pow($p,4)*pow($y,4)))*d((6*$p*($x+$y)));

$v3=-asin((2*pow($x,6)*pow(($y*$y+$p*$p),3)+18*$p*$p*pow($x,5)*pow($y,3)*($y*$y+$p*$p)+3*$p*$p*pow($x,4)*$y*$y*(2*pow($y,4)+
10*$p*$p*$y*$y-pow($p,4))+18*pow($p,4)*pow($x,3)*pow($y,5)+3*pow($p,4)*$x*$x*pow($y,4)*(2*$y*$y-$p*$p)+
2*pow($p,6)*pow($y,6))*d((2*pow(abs((pow($x,4)*pow(($y*$y+$p*$p),2)+6*$p*$p*pow($x,3)*pow($y,3)+
$p*$p*$x*$x*$y*$y*(2*$y*$y-$p*$p)+pow($p,4)*pow($y,4))),(3*d(2))))))*d(3);

$t=$v1-$v2*sin(A60+$v3);

$dt=$v1+$v2*sin($v3);
Notas:
*d es igual que / (dividido, pero uso esta función elevando el divisor a -1 para que devuelva datos más exactos).
A60 es el ángulo de 60º en radianes.

No consigo las siguientes fórmulas:

- La altura máxima y mínima correspondiente al lado b de un triángulo cualquiera (abc) conocido el valor de su perímetro y la altura correspondiente al lado a.

- El perímetro mínimo de un triángulo cualquiera (abc) conocidas las alturas correspondientes a los lados a y b.

Les rogaría me contestaran de una manera que lo pudiera trasladar a php (lenguaje de programación).

Un saludo.
Jesús desde Madrid.