Mostrando las entradas para la consulta multipoligonal ordenadas por relevancia. Ordenar por fecha Mostrar todas las entradas
Mostrando las entradas para la consulta multipoligonal ordenadas por relevancia. Ordenar por fecha Mostrar todas las entradas

lunes, 3 de mayo de 2021

Números poligonales doblemente centrados

El día 17/02/21 publiqué en Twitter (@connumeros) lo siguiente:

17221 es un número multipoligonal centrado, porque equivale a un poligonal de ese tipo de 20 lados con medida 42 y también a otro de 21 lados y medida 41. Es interesante comparar las fórmulas:

17221=(20×42^2-20×42+2)/2

17221=(21×41^2-21×41+2)/2

Esto, que parece una casualidad, me llamó la atención por el hecho de que 42 es el doble de 21, y eso podría suponer que este tipo de coincidencias fuera más frecuente de lo esperado inicialmente. En efecto, existen coincidencias de este tipo y otros parecidos con abundancia de casos concretos.

En primer lugar hay que recordar que los poligonales centrados se forman mediante figuras concéntricas, y no adosadas como los poligonales usuales.

En la imagen está representado el triangular centrado de orden 3, que equivale a 10 unidades. En efecto, según la fórmula

 

POLC(3,3)=(3*3^2-3*3+2)/2=(27-9+2)/2=10

(Ver mi publicación “Números y formas”, http://www.hojamat.es/publicaciones/numform.pdf)

Podríamos usar esta fórmula para estudiar la casualidad que publiqué en Twitter:

POLC(20, 42)=(20×42^2-20×42+2)/2=17221

POLC(21,41)=(21×41^2-21×41+2)/2=17221

En general, usaremos las variables (n, k) para el primer poligonal y (n+1, k-1) para el segundo, olvidando por ahora si n es el doble de k+1 o no. Es decir, restringiremos la búsqueda al caso en el que los dos parámetros, número de lados n y orden k sean consecutivos con su par.

Podemos plantear esta igualdad:

(n*k2-n*k+2)/2=((n+1)*(k-1)2-(n+1)*(k-1)+2)/2

Simplificando y agrupando factores queda:

  n*(k2-k)=(n+1)((k-1)^2-(k-1))

O bien

nk(k-1)=(n+1)(k-1)(k-2)

nk=(n+1)(k-2)=nk+k-2n-2

k=2(n+1)

Luego el hecho de que 42 fuera el doble del 21 no era casual, sino obligado en este caso.

Así que todo poligonal centrado en el que n sea el doble de k-1 debe cumplir la condición de partida. Lo vemos:

En la tabla comenzamos con los números pares consecutivos y con su mitad menos 1 como orden. Aplicamos las fórmulas con parámetros consecutivos y comprobamos que da el mismo resultado. En la última fila se ha añadido el caso de 17221.

Esta tabla se podría prolongar y comprobaríamos que todos los poligonales centrados en los que el orden k sea par y el número de lados el adecuado (k/2-1) presentarán esta coincidencia.

Ya tenemos resuelto el caso planteado, pero en este blog nos seguimos planteando siempre segundas preguntas, y, en este caso ¿existirán muchos números multipoligonales centrados además de los estudiados?

Caso general

Para descubrir a cuántos poligonales centrados equivale uno concreto recorreremos todos los posibles parámetros n y k tomando nota de las repeticiones.

Poligonales no triviales

Al igual que con los números poligonales usuales, todo número entero positivo es poligonal centrado, ya que es igual a la unidad más un polígono de dos unidades por lado. En la imagen vemos el número 9 representado por la unidad centrada con un octógono, es decir, con un lado menos y dos unidades por lado:

Muchos números sólo poseen esta representación como poligonales centrados. Les llamaremos poligonales centrados triviales. Los no triviales están publicados en http://oeis.org/A275340 y los primeros son (han incluido casos con n<3, como 4 y 7):

4, 7, 10, 11, 13, 16, 19, 21, 22, 25, 28, 29, 31, 34, 37, 40, 41, 43, 46, 49, 51, 52, 55,…

Esto acota nuestra búsqueda, porque el caso trivial se repite demasiado y no nos interesa.

Comenzaremos, como casi siempre en este blog, con una función de Excel, que nos devolverá las formas de ser poligonal centrado de cada número. Veremos que se excluye el caso trivial:

Function multipoligc$(n)

Dim i, j, m

Dim s$

s = "" ‘Variable que recibirá los resultados

m = 0 ‘Número de resultados

For i = 3 To n ‘Número de lados, comenzando en 3

For j = 3 To n ’ Unidades por lado, evitando el caso trivial de 2

If n = (i * j * (j - 1) + 2) / 2 Then m = m + 1: s = s + Str$(i) + Str$(j) + "  # " ‘Existe una solución. Se incrementa el contador y se incorpora al conjunto obtenido

Next j

Next i

If s <> "" Then s = ajusta(m) + ":" + s ‘Se añade el contador al resultado

multipoligc = s

End Function

Si el resultado de esta función es la cadena vacía, es que no es “multipoligonal” y, en caso contrario, la cadena contiene el número de soluciones y sus parámetros.

Estos serían los primeros no triviales:

 

Los resultados se inician con el número de soluciones. Por ejemplo, el 43 posee dos formas de ser poligonal centrado, una de 7 lados y orden 4 y otra de 14 lados y orden 3.

En efecto, 43=1+7+14+21 y también 43=1+14+28, sumas de capas concéntricas (o múltiplos de 7 y 14)

Observamos que 61 posee cuatro representaciones. La razón es que 61-1=60 posee muchos divisores distintos.

El número con el que comenzamos este estudio, 17221, presenta 10 formas de ser poligonal centrado:

17221: 10: 20 42  #  21 41  #  82 21  #  164 15  #  615 8  #  820 7  #  1148 6  #  1722 5  #  2870 4  #  5740 3  #

Entre ellas, las que dieron lugar a estas búsquedas, 20 42 y 21 41


viernes, 18 de junio de 2021

Números poligonales en general (3)

 ¿Eres un poligonal?

 Pedimos prestado este título de una entrada de este blog

https://hojaynumeros.blogspot.com/2010/06/eres-un-poligonal.html

En ella nos planteábamos si un número dado no puede ser poligonal de ningún tipo, sin contar con el que tiene el mismo número de lados que él mismo:

Así, el número 9 es un eneágono.

Lo que sigue complementa otra entrada de este blog dedicada al tema

https://hojaynumeros.blogspot.com/2020/01/multipoligonal.html

En la imagen también se descubre que el máximo número de lados de un número poligonal coincide con él mismo. Esto nos posibilita buscar qué poligonales pueden coincidir con N buscando entre 3 y N mediante un bucle. Como disponemos de la función quepoligonal, bastará analizarla en ese rango. Así se efectúa en esta función, que devuelve “NO” si un número no es poligonal salvo con su mismo número de lados, o bien la colección de tipos de poligonales si existen.

 Function mpolig$(n)

Dim i, p

Dim s$

 

If n < 3 Then mpolig = "NO": Exit Function ‘Si es menos que 3 no puede ser poligonal

s$ = ""

For i = 3 To n – 1 ‘Llegamos hasta n-1, porque n no nos vale

p = quepoligonal(n, i) ‘Preguntamos si es poligonal

If p > 0 And p = Int(p) Then s$ = s$ + " #" + Str$(i) + ", " + Str$(p) ‘Si lo es, devolvemos los tipos

Next i

mpolig = s

End Function

Con esta función descubrimos los números N que pueden ser poligonales para un índice menor que N. Son los verdaderos poligonales, por lo que se les denomina como poligonales regulares.

En la imagen puedes consultar los primeros, que vienen acompañados por los distintos tipos que admiten:

 


La lista termina con el 36, que es, como ves, poligonal de tres tipos: triangular de lado 8, cuadrado de lado 6 y poligonal de 13 lados de medida 3.

En nuestra entrada https://hojaynumeros.blogspot.com/2015/10/damos-vueltas-los-triangulares.html y siguiente, se estudia el caso de los triangulares cuadrados, entre ellos el 36, con el uso de la ecuación de Pell.

Estos poligonales regulares están publicados en http://oeis.org/A090466

Cambiando ligeramente las condiciones de búsqueda obtendremos aquellos números que no pueden ser poligonales salvo con el tipo trivial.

1, 2, 3, 4, 5, 7, 8, 11, 13, 14, 17, 19, 20, 23, 26, 29, 31, 32, 37, 38, 41, 43, 44, 47, 50, 53, 56…

Están publicados en http://oeis.org/A090467

Entre ellos figuran los números primos. Los que son compuestos, como 4, 8 y 14, los tienes en http://oeis.org/A176949

Se puede razonar esta presencia. Para que un número poligonal sea primo deberá ocurrir que

P=k(k(n-2)-(n-4))/2, con P primo.

 El número k es mayor que 2 en los poligonales regulares, luego k/2 no puede valer 1. Por tanto, si queremos que P sea primo, deberemos considerar que el paréntesis valga 2, es decir:

Será k(n-2)-n+4=2, kn-2k-n+2=0, (k-1)(n-2)=0

Esto nos lleva o a k=1 o a n=2, en cuyo caso P sería negativo. No hay posibilidad de que P sea primo.

Caso de los múltiplos de 3

Los números que sí figuran todos entre los poligonales regulares son los múltiplos de 3 mayores que 3. Sigue la sucesión http://oeis.org/A090466 y verás que no falta ninguno. Esto es así por dos razones:

a) En el criterio para saber si un número es poligonal que sea un cuadrado la expresión (n-4)2+8P(n-2) hacemos P=3(n-1), con lo que representa a todos los múltiplos de 3 a partir de 6 (recordemos que b>2). Unos cambios en la expresión nos llevarán a un cuadrado:

  (n-4)2+8P(n-2) = n2-8n+16+24(n-1)(n-2) = n2-8n+16+24n2-72n+48 = (1+24)n2-(8+72)n+16+48 = 25n2-80n+64 = (5n-8)2

Esto demuestra que los números múltiplos de 3 son poligonales. Su número de lados se obtendrá despejando n en P=3(n-1) y nos queda n=P/3+1. Como veremos más adelante, esta no sería la única solución. Muchos de ellos son también triangulares.

Un ejemplo: 39 es múltiplo de 3. Encuentro n tal como se explicó en el párrafo anterior: n=39/3+1)=14. Por tanto 39 se puede expresar como un polígono de 14 lados. Encontramos su índice, despejando en 39=k(k*(14-2)-(14-4))/2 = 6k2-5k

Resolvemos 6k2-5k-39=0 y nos da k=3 como solución entera positiva.

Luego el poligonal pedido es

Está formado por la suma (ver primera parte de este estudio) 1+(14-1)+(14*2-3)=1+13+25=39

b) Existe otra razón para justificar que todos los múltiplos de 3 a partir de 6 sean poligonales. Basta para ello fijar k en 3. Si k=3 queda:

P=3*(3*(n-2)-(n-4))/2=(9n-18-3n+12)/2)=(6n-6)/2=3n-3, que es un múltiplo de 3.

Todos los poligonales de índice 3 son múltiplos de 3

 

Número de tipos de poligonal para un número

Si modificamos la función mpolig para que devuelva un número en lugar de una cadena de texto, podremos clasificar los números naturales según el número de tipos distintos de poligonal (no trivial) que admitan.

Los que acabamos de estudiar tendrán un resultado de 0, pues solo admiten el poligonal trivial. Hemos visto que otros admiten un poligonal nada más. Con la función mpolig modificada se descubren los primeros:

Un tipo: 6, 9, 10, 12, 16, 18, 22, 24, 25, 27, 30, 33, 34, 35, 39, 40, 42, 46, 48, 49, 52, 54, 57, 58, 60,…

Están publicados en http://oeis.org/A177029. Allí se catalogan como que presentan dos tipos de poligonales, porque cuentan el caso trivial.

Dos tipos: 15, 21, 28, 51, 55, 64, 70, 75, 78, 91, 96, 100, 111, 112, 117, 126, 135, 136, 141, 144, 145, 148, 154, 156,…

Por ejemplo, 111 puede ser un eneágono de lado 6 (111=6*(6*(9-2)-(9-4))/2=3*37=111) y también un poligonal de 38 lados de medida 3 (111=3*(3*(38-2)-(38-4))/2=3*37=111)

Tres tipos: 36, 45, 66, 81, 105, 120, 153, 171, 190, 196, 210, 261, 280, 351, 378, 396, 400, 405, 406, 456, 465, 477,…

Comienza con el 36, que hemos indicado, se estudió en este blog como triangular cuadrado. Además, vimos que podía ser un poligonal de 13 lados.

Los demás poligonales regulares presentarán más de tres tipos (cuatro contando el trivial). Los primeros son:

225,231,276,325,435,441,540,561,595,616,651,820,861,936,946,1035,1089,1128,1225,…

1128, por ejemplo, puede ser triangular, hexagonal, poligonal de 42 lados o de 377.

Con esta cuestión finalizamos el estudio general de los números poligonales. En otras entradas se van estudiando los casos particulares, y en el año 2021 publicaremos en http://www.hojamat.es/ un resumen de todos los casos.

Como los poligonales de índice pequeño son los más populares, existen varias sucesiones con dos de esos casos simultáneos. Algunas de ellas son:

Triangulares y cuadrados

1, 36, 1225, 41616, 1413721, 48024900, 1631432881, 55420693056, 1882672131025, 63955431761796,… http://oeis.org/A001110

Les dimos unas vueltas en las entradas de este blog

https://hojaynumeros.blogspot.com/2015/10/damos-vueltas-los-triangulares.html

https://hojaynumeros.blogspot.com/2015/11/damos-vueltas-los-triangulares.html

En ellas se acude a la ecuación de Pell, a recurrencias y fórmulas generales para estos números. Se añade una función generatriz y algunas curosidades.

Triangulares y hexagonales

Es fácil ver que todo número hexagonal de índice k equivale a un triangular de índice 2k-1. Puedes consultar el capítulo de números hexagonales. En este blog hemos estudiado el caso contrario, el de triangulares que no pueden ser hexagonales por tener lado par.

https://hojaynumeros.blogspot.com/2013/09/triangulares-de-lado-par.html

Cuadrados y pentagonales

Son más raros. Los primeros están publicados http://oeis.org/A036353

1, 9801, 94109401, 903638458801, 8676736387298001, 83314021887196947001, 799981229484128697805801,…

Cuadrados y hexagonales

También escasean: 1, 1225, 1413721, 1631432881, 1882672131025, 2172602007770041, 2507180834294496361, 2893284510173841030625, http://oeis.org/A046177

No merece la pena seguir.

 

Teorema de Fermat para poligonales

El teorema del número poligonal de Fermat afirma que cada número natural es suma de a lo máximo n números poligonales. Omitimos su historia, que puedes consultar fácilmente. Aquí nos interesa su comprobación mediante nuestra herramienta Cartesius

http://www.hojamat.es/sindecimales/combinatoria/herramientas/herrcomb.htm#cartesius

Esta herramienta, diseñada en Excel y Calc, no es muy potente, y solo es útil para comprobaciones con números pequeños.

Explicaremos su uso con un ejemplo, como sería encontrar todas las descomposiciones del número 100 en suma de cinco pentagonales o menos. Para conseguirlo hemos usado esta programación en Cartesius:

xtotal=5

xt=1..10

xt=suc((3*(n-1)^2-(n-1))/2)

suma=100

creciente

 

Con ella hemos conseguido estas descomposiciones:

Observamos que 100 admite una descomposición en suma de cuatro pentagonales y otras cuatro con cinco pentagonales. Puedes comprobar en http://oeis.org/A000326 que, efectivamente, todos los sumandos son pentagonales.

Explicamos línea por línea el planteo:

xtotal=5

Como buscamos sumandos pentagonales, según el Teorema de Fermat, debemos exigir que sean 5. Se entiende que eso es lo que indica xtotal=5

xt=1..10

Esta línea indica el rango de búsqueda de los sumandos. Suele estar indicado elegir la raíz cuadrada del número que se estudia, en este caso el 100. Si no se tiene seguridad, basta consultar las columnas de sumandos. En este caso:

 


Como llega a 100 y se pasa, hemos elegido bien el rango.

xt=suc((3*(n-1)^2-(n-1))/2)

Esta es la fórmula para pentagonales, pero la hemos aplicado a n-1 en lugar de a n, para permitir la entrada del 0 en los sumandos.

suma=100

No necesita explicación. Exige que la suma sea 100

creciente

Esta orden no es necesaria, pero, al exigir sumandos crecientes, simplifica bastante la presentación final.

Al pulsar sobre el botón Iniciar, obtendremos todas las descomposiciones que hemos incluido más arriba.

Si el rango elevado al número de sumandos se acerca a números de cinco cifras, el proceso se hace muy lento y hay que dejar al ordenador que trabaje él solo durante bastantes minutos. Es una “explosión combinatoria”. Lo bueno es que consigues todos los datos posibles.

Otro ejemplo sería descomponer 80 en números hexagonales:

xtotal=6

xt=1..9

xt=suc((n-1)*(2*(n-1)-1))

suma=80

creciente

Resultado:

Dejamos aquí las propiedades generales de los poligonales.

lunes, 16 de noviembre de 2020

Números pentagonales (2)

Algunas propiedades de los números pentagonales

En la anterior entrada se presentaron los números pentagonales desde varios puntos de vista. En esta otra repasaremos algunas propiedades curiosas.

El promedio de los primeros números pentagonales es un número triangular

Antes de sumar los números pentagonales hay que recordar estas dos igualdades:

Con estas dos fórmulas podemos sumar pentagonales:

Con unas pocas simplificaciones llegamos a

De esta igualdad sacamos dos consecuencias:

La expresión de la suma de los primeros números pentagonales coincide con la fórmula de los piramidales pentagonales. Esto es consecuencia de su definición. Puedes comprobarlo en mi publicación “Números piramidales”

(http://www.hojamat.es/publicaciones/piramidal.pdf)

Tal como hemos afirmado, si dividimos la expresión obtenida entre n obtendremos el promedio de los primeros pentagonales y, en efecto, resulta un número triangular:

Por tanto, el promedio es triangular.

 Números pentagonales como suma de números consecutivos

Según Jon Perry, podemos interpretar el pentagonal de orden n como la suma de n números enteros consecutivos que comienzan en n. Es decir:

 


Por ejemplo, P4=4+5+6+7=22, P5=5+6+7+8+9=35.

Si recordamos que los números triangulares, de fórmula n(n+1)/2, son suma de números consecutivos, tendríamos, para P5:

P5=5+6+7+8+9=9(9+1)/2-4*(4+1)/2=45-10=35.

En general, según esta propiedad:

Pn =T(2n-1)-T(n-1)=(2n-1)*2n/2-(n-1)*n/2=(4n2-2n-n2+n)/2=(3n2-n)/2=n(3n-1)/2

Por tanto, coincide con la fórmula de los números pentagonales.

Hemos comprobado de paso que todo número pentagonal es diferencia entre dos triangulares.

 

Números pentagonales como suma de una progresión aritmética:

También Jon Perry interpreta un número pentagonal como una suma parcial en la progresión aritmética de diferencia 3: 1, 4, 7, 10, 13,…

Antes de demostrarlo algebraicamente, podemos visualizar esta propiedad fácilmente. Basta considerar las líneas poligonales que hemos añadido al esquema gráfico de estos números:



Aunque las líneas están trazadas a mano alzada, se perciben bien los sumandos 1, 4, 7, 10 y 13.

Si recordamos la fórmula de la suma de una progresión aritmética, podremos justificarlo algebraicamente:

Esta propiedad nos permite calcular cualquier número pentagonal por recursión. Basta darse cuenta de que Pn+1=Pn+3n+1.

Así, P1=1, P2=1+3+1=5, P3=5+3*2+1=12, P4=12+3*3+1=22,…

 

Un número pentagonal es suma de un combinatorio y un cuadrado

En efecto:

 


Un número pentagonal es un tercio de otro triangular

Es fácil demostrar que si el orden del pentagonal es k, el del triangular es 3k-1:

 


Pentagonales multipoligonales

Los números pentagonales pueden ser también cuadrados, triangulares o hexagonales. Los cuadrados los puedes consultar en

http://oeis.org/A036353

0, 1, 9801, 94109401, 903638458801, 8676736387298001, 83314021887196947001, 799981229484128697805801, 7681419682192581869134354401, 73756990988431941623299373152801

Disponemos en este blog de la función doblepolig, que nos indica si un número pertenece a dos tipos concretos de número poligonal. Puedes consultarla en

https://hojaynumeros.blogspot.com/search?q=multipoligonal

Con esta función es trivial reproducir la lista de más arriba,ya que basta exigir doblepolig(5,4).El problema radica en que Excel no puede llegar a estos números enormes, pero sí detecta el 9801:

9801 # 4,  99 # 5,  81 # 180,  11 # 274,  9 # 655,  6 # 3268,  3 # 9801,  2         

Se observa que 9801 es cuadrado y pentagonal, además de poligonal de 180, 274, 655, 3268 y 9801 lados.

Con esta función podemos encontrar los primeros pentagonales que son poligonales de otros tipos. Incluimos algunos (no tenemos en cuenta el 1):

Pentagonal y triangular: 210 y40755      

Pentagonal y hexagonal: 40755

Pentagonal y heptagonal: 4347

Y así podríamos seguir.

 

Teorema de Fermat para pentagonales

Fermat afirmó, y se demostró posteriormente, que todo número natural es suma de a lo más n números poligonales. En el caso de los pentagonales se deduce que todo natural es suma de como máximo cinco pentagonales.

La comprobación práctica de esta propiedad puede resultar algo complicada de seguir. No es difícil conseguirlo con nuestro programa de Excel y Calc Cartesius

(http://www.hojamat.es/sindecimales/combinatoria/herramientas/herrcomb.htm#cartesius)

En la captura de pantalla siguiente se presentan todas posibilidades de descomposición en pentagonales del número 121. Observamos que puede obtenerse con dos, tres, cuatro o cinco sumandos pentaonales. El papel del cero e importante. Sin él, sólo obtendríamos sumas de cinco sumandos pentagonales.

El planteo adecuado para conseguir esto es similar al siguiente:

xtotal=5

xt=1..10

xt=suc((n-1)*(3*(n-1)-1)/2)

suma=121

creciente

Explicamos línea por línea:

xtotal=5: Indica que el número de sumandos es 5

xt=1..10: Este es el rango de búsqueda de los índices de los pentagonales que se van a sumar. Es deseable que abarque hasta el índice del número que se va a probar o algo más. En nuestro caso, para 121 está bien un rango de 10.

xt=suc((n-1)*(3*(n-1)-1)/2): Esta es la instrucción fundamental. Indica que se construya el pentagonal de índice n-1, para que así contemos con el cero como sumando

suma=121: Escribe el total que deben dar los sumandos. En este caso, 121.

Creciente: Se incluye para eliminar casos repetidos.


Con esto finaliza nuestro repaso de los números pentagonales. Podíamos pasar a los generalizados, pero no entra dentro de los objetivos de este blog.

lunes, 20 de enero de 2020

Multipoligonal


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.


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,…

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

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