Recordemos que los números poligonales son aquellos que
pueden organizar sus unidades en forma gráfica de polígono
Ya han aparecido varias veces en este blog. Llamamos dimensión k a su número
de lados y orden n al número de unidades por lado. Su
expresión algebraica es
Con nuestra calculadora de números figurados puedes
calcularlos fácilmente.
(Descarga libre desde http://www.hojamat.es/sindecimales/aritmetica/herramientas/hoja/calcupol.xlsm)
Por ejemplo, el número octogonal de orden 3 será igual a
21, ya que
P8,3 = 3*(3*6-4)/2 = 3*14/2 = 21
Gráficamente:
El problema que abordaremos en esta entrada es el de
clasificar aquellos números poligonales que lo son tomando distintos órdenes y
dimensiones. Por ejemplo, el número 36 se puede representar con cuatro lados y
también con trece:
En efecto:
P4,6 = 6*(6*2-0)/2 = 6*6 = 36
P13,3 = 3*(3*11-9)/2 =3*24/2 = 36
¿De
cuántas formas poligonales se puede expresar un número?
Es
evidente que todos ellos son poligonales de orden 2, incluso los primos, ya que
es posible ordenar las unidades sobre un perímetro de n lados. Buscamos ahora aquellos que admitan varias
representaciones.
Comenzaremos con una búsqueda ordenada. Nuestra costumbre
es usar una función en Basic de Excel o Calc. Podría ser esta:
Function mpolig$(n)
Dim i
Dim s$
If n < 3 Then mpolig =
"NO": Exit Function
s$ = ""
For i = 3 To n
If espoligonal(n, i) Then s$ = s$ +
" #" + Str$(i) + ", " + Str$(quepoligonal(n, i))
Next i
mpolig = s
End Function
Esta función es de tipo texto, para poder añadir todos
los tipos de poligonal que admite un número. Comienza desechando los números
inferiores a 3. Después aplica un criterio, espoligonal,
para ver si es poligonal o no. Si lo es, aplica la función quepoligonal, que encuentra el orden y dimensión. Si todo va bien,
añade el nuevo polígono a la serie.
Estas dos funciones, espoligonal
y quepoligonal, son algo teóricas,
por lo que las añadimos a un Apéndice.
Por ejemplo, si aplicamos esta función al número 15,
resultan tres formas de ser poligonal, y se presentan de esta forma:
MPOLIG(15)= # 3, 5
# 6, 3 # 15, 2
Significa que 15 puede ser un número triangular de lado
5, o bien hexagonal de lado 3, o, por último, un polígono de 15 lados. A partir
de ahora no consideraremos esos polígonos formados por tantos lados como
indique el número. Gráficamente:
Es fácil ver que las tres estructuras están compuestas
por 15 unidades.
El primer número que presenta cuatro modalidades de
poligonal es el 36:
MPOLIG(36)= # 3, 8
# 4, 6 # 13, 3 # 36,
2
Puede presentar 3, 4, 13 y 36 lados.
A estos números les podemos denominar multipoligonales. En el extremo opuesto
figuran aquellos números que solo admiten forma de polígono simple, con lados
de una unidad. Entre ellos están los primos y otros que no lo son, como el 38,
que no admite ninguna otra forma poligonal salvo la trivial de un polígono de
38 lados. Este tipo de números está recogido en http://oeis.org/A090467.
Es fácil transformar la función mpolig en otra que simplemente cuente las soluciones de los
distintos tipos de poligonal que admite un número. Quedaría así:
Function npolig(n)
Dim i, p
If n < 3 Then npolig = 0: Exit
Function
p = 0
For i = 3 To n
If espoligonal(n, i) Then p = p + 1
Next i
npolig = p
End Function
Su funcionamiento es fácil de entender. Por ejemplo, con
ella podemos listar los números que admiten cuatro representaciones como
poligonales. Los primeros son:
En la primera columna figuran los números y en la segunda
el número 4 y los distintos tipos de poligonal que admiten.
Los listados de los números con un número dado de tipos
de poligonal están todos publicados en sus casos más sencillos. Por ejemplo,
los anteriores figuran en http://oeis.org/A195528
Números
con dos tipos determinados de poligonal
Para saber si un número es de dos tipos determinados
basta usar esta función:
Function
doblepolig(n, p, q) As Boolean
If
espoligonal(n, p) And espoligonal(n, q) Then doblepolig = True Else doblepolig
= False
End
Function
Es sencilla de entender, ya que exige que sea poligonal
de tipo p y también de tipo q, que son los parámetros que acompañan
a n.
No vamos a recorrer todos los casos, ya que los valores
del número de lados aumentan muy pronto, y se hacen inabordables.
Por ejemplo, con hoja de cálculo solo podemos obtener de
forma razonable dos números que son heptagonales y cuadrados, el 81 y el 5929.
El siguiente, 2307361, necesita más tiempo de cálculo, y no digamos los que
siguen: 12328771225, 4797839017609, 350709705290025, 25635978392186449,
9976444135331412025,…
(Ver http://oeis.org/A036354)
Un
caso concreto
(Complemento con uso de técnicas algo más avanzadas)
¿Qué
números son hexagonales y también cuadrados?
Si los buscamos con la función doblepolig y parámetros 4 y 6, nos resulta el número 1225, pero el
siguiente 1413721, ya necesita unos minutos de proceso. Intentamos una
aproximación algebraica:
Un número cuadrado de orden n tiene como fórmula n2, y un hexagonal de orden
m, m(2m-1). Igualamos:
Sería n2=2m2-m
Multiplico por 2:
2n2=4m2-2m
Completo un binomio al cuadrado:
2n2=(2m)2-2*2m*1/2+(1/2)2-(1/2)2
2n2=(2m-1/2)2-(1/2)2
Multiplico por 4
8n2=(4m-1)2-1
(4m-1)2-8n2=1
Llamando x=8m-1 e y=n, logramos el planteo de una
ecuación de Pell: x2-8y2=1
(Ver mi entrada http://hojaynumeros.blogspot.com/2010/02/ecuacion-de-pell.html)
Acudimos a nuestra herramienta
Rellenamos los parámetros 8, RAIZ(8) y 1 y obtenemos las
soluciones:
Al pasar de X
a n, deberemos desechar las
soluciones no enteras. Aplicamos a X
la función (X+1)/8 para volver a n:
Nos quedamos con las soluciones enteras. La primera es
Y=N=35 y X=25.
Vemos que, efectivamente, se cumple que el cuadrado de 35, 1225,
coincide con el hexagonal de 25, 2*252-25=1250-25=1225.
Veamos la segunda solución entera:
Y=N=1189, X=841, con lo que 11892=1413721=2*8412-841
De igual forma obtendríamos la tercera, 403912=1631432881
(Puedes comprobarlo en http://oeis.org/A046177)
Recurrencia
Esta parte la desarrollaremos sin justificar.
En una ecuación de Pell de parámetro 8, las soluciones se
obtienen a partir de las primeras X=3, Y=1 mediante las recurrencias
Xn+1=3Xn+8Yn y Yn+1=Xn+3Yn
Puedes comprobarlo en la tabla de más arriba.
Como las soluciones enteras aparecen cada dos pasos, las
recurrencias quedarán
Xn+2=3(3Xn+8Yn)+8(Xn+3Yn)=17Xn+48Yn
Yn+2=3Xn+8Yn+3*(Xn+3Yn)=6Xn+17Yn
Así, de x=99, y=35, obtenemos:
X=17*99+48*35=3363
Y=6*99+17*35=1189
Estas serían las siguientes soluciones. Reiterando,
obtendríamos todas las demás:
X=17*3363+48*1189=114243
Y=6*3363+17*1189=40391
Este ha sido un ejemplo concreto, sin demasiada
dificultad algebraica. Las demás coincidencias entre dos tipos se resuelven de
forma similar, pero quizás con un desarrollo más complejo.
Apéndice
Función
espoligonal
Devuelve VERDADERO o FALSO
Function espoligonal(n, k) As Boolean
Dim d
Dim e As Boolean
e = False
d = (k - 4) ^ 2 + 8 * n * (k - 2)
If escuad(d) Then
If esentero((k - 4 + Sqr(d)) / 2 / (k -
2)) Then e = True
End If
espoligonal = e
End Function
Función
quepoligonal
Encuentra la dimensión de un número como
poligonal
Function quepoligonal(n, k)
Dim d
d = Sqr((k - 4) ^ 2 + 8 * n * (k - 2))
If d <> Int(d) Then quepoligonal =
0 Else quepoligonal = (k - 4 + d) / (2 * k - 4)
End Function
No hay comentarios:
Publicar un comentario