Vimos en la entrada anterior que toda permutación sobre el conjunto {1,2,3,…,n} se puede descomponer en k ciclos, y van desde la identidad, que comprende n ciclos, hasta las permutaciones cíclicas, que se reducen a un solo ciclo.
Si fijamos el número k, podremos plantearnos cuántas permutaciones se pueden descomponer exactamente en k ciclos. Por ejemplo, en el conjunto {1,2,3,4,5}, las permutaciones formadas por dos ciclos son (escribimos sólo los conjuntos invariantes en los ciclos):
(1,2,3,4)(5), (1,2,3,5)(4), (1,2,4,5)(3), (1,3,4,5)(2), (2,3,4,5)(1),
(1,2,3)(4,5), (1,2,4)(3,5), (1,3,4)(2,5), (2,3,4)(1,5), (1,2,5)(3,4), (1,3,5)(2,4), (2,3,5)(1,4),
(1,4,5)(2,3), (2,4,5)(1,3), (1,3,5)(1,2)
Resultan en total 15 configuraciones, pero cada conjunto de cuatro elementos equivale a seis ciclos (permutaciones circulares, factorial de n-1=3). Así, (1,2,3,4) contiene en realidad los ciclos (1,2,3,4), (1,2,4,3), (1,3,2,4), (1,3,4,2), (1,4,2,3)(1,4,3,2) y cada conjunto de tres equivale a dos ciclos (y los de dos, a uno solo), luego tendremos:
S(5,2)=5*6+10*2=50
Al número de permutaciones de n elementos que están formadas por k ciclos le llamaremos número de Stirling de primera especie sin signo, y lo representaremos por S(n,k). Así, el cálculo anterior se puede expresar como S(5,2)=50
Es evidente que S(n,n)=1, pues sólo la identidad contiene n ciclos, y que S(n,1)=(n-1)!, pues representaría a las permutaciones circulares. Además, S(n,0)=0, valor adoptado por definición. Piensa también por qué S(n,n-1)=Cn,2 (número combinatorio).
El resto de números de Stirling se obtiene mediante la fórmula de recurrencia
S(n+1,k)=S(n,k-1)+nS(n,k)
En efecto, si añadimos un elemento nuevo a una configuración en ciclos, puede ocurrir que ese elemento sea un invariante, que forme ciclo consigo mismo. En ese caso puede estar acompañado de S(n,k-1) formas distintas de distribución en ciclos. Por el contrario, si el nuevo lo deseamos integrar en los ciclos ya existentes, lo podemos incluir ocupando n lugares distintos, luego formará nS(n,k) configuraciones diferentes.
Lo entenderás mejor con un ejemplo. Formemos todas las distribuciones de 4 elementos en 3 ciclos:
(1)(2,3)(4), (2)(1,3)(4), (3)(1,2)(4)
(1,4)(2)(3), (1)(2,4)(3), (1)(2)(3,4)
En total resultan 6. En la primera fila hemos añadido el 4 como elemento invariante, añadido a las tres configuraciones de 3 elementos en dos ciclos S(3,2) y en la segunda lo hemos integrado en los ciclos existentes, que sólo tienen una posibilidad, (1)(2)(3) (S(3,1)) y podemos insertarlo en 3 posiciones distintas, luego resultan 3S(3,3). En resumen:
S(4,3)=S(3,2)+3S(3,3)
Esto nos da una posibilidad de calcular estos números. Por convenio se les da valor cero cuando el número de ciclos es cero. En la imagen tienes la tabla conseguida en hoja de cálculo con stirling.xls y stirling.ods (los puedes descargar desde
http://hojamat.es/sindecimales/combinatoria/herramientas/herrcomb.htm#nume)
Comprueba en ella alguna generación por recurrencia. Por ejemplo, 274=50*5+24, 1624=225*6+274
También es elemental la propiedad de que la suma de números de Stirling para un n dado es n!, pues abarcan todas las posibilidades. Comprueba este hecho sumando todos los números de una misma fila en la tabla de la imagen.
Observa que cada fila posee un solo máximo, como ocurre, por ejemplo con los números combinatorios, sólo que aquí no está necesariamente en el punto medio.
Función generatriz
La función generatriz de estos números (con signo), para un n dado es
Fn(x)=x(x-1)(x-2)(x-3)…(x-n+1)=x(n
Con ella resultan los números con signo y prescindiendo de S(n,0). Observa que se trata de una potencia factorial, o factorial de grado n de x. Los números de Stirling con signo obedecen la misma fórmula de recurrencia, pero restando el segundo término. Esto es claro si consideras el desarrollo de
Fn+1(x)=x(x-1)(x-2)(x-3)…(x-n+1)(x-n)= Fn(x)(x-n)
Piensa en un grado cualquiera del desarrollo y lo comprenderás.
Lo podemos comprobar con PARI, por ejemplo en el caso n=6
{print(taylor(x*(x-1)*(x-2)*(x-3)*(x-4)*(x-5),x,7))}
Resultado: -120*x + 274*x^2 - 225*x^3 + 85*x^4 - 15*x^5 + x^6 + O(x^7)
En la imagen puedes estudiar la comprobación con wxMaxima:
Como ves, los ordena en sentido inverso.
Una interpretación sencilla de este desarrollo es el considerar los números de Stirling (salvo el caso de índice cero) como los coeficientes mediante los que una potencia factorial x(n se descompone como combinación lineal de potencias ordinarias xk de x.
Este blog es un complemento natural de mi página http://www.hojamat.es. Por ello, se dedicará a los temas numéricos tratados con Hoja de Cálculo y a la estructura y prestaciones de esta. Su nivel será elemental o medio, y su orientación lúdica e investigadora.
jueves, 17 de octubre de 2013
jueves, 10 de octubre de 2013
Ciclos (2) – Descomposición en ciclos
Algunas permutaciones dejan invariantes unos elementos, y a otros los van transformando cíclicamente hasta volver al primero. Así, la permutación (1,3,4,2,5,6) deja invariantes 1, 5 y 6, mientras 3 se transforma en 4, este en 2 y el 2 tiene como imagen el 3. A este tipo de permutaciones las llamaremos ciclos. Omitimos definiciones formales, porque aquí nuestro interés es práctico y de aprendizaje de las hojas de cálculo.
Llamaremos ciclo a una permutación que deja invariantes algunos elementos y somete a una rotaciones completas a los restantes.
Representaremos un ciclo mediante los elementos que se van transformando uno en otro, omitiendo los invariantes. Así, (3,4,2) representaría a la anterior permutación. Podemos someter a los elementos 3,4,2 a una rotación en el orden y representarían el mismo ciclo: (3,4,2) = (4,2,3) = (2,3,4), pero otro tipo de alteración del orden, como (3,2,4) ya representaría un ciclo distinto. Si aplicamos reiteradamente un ciclo, cada elemento irá pasando por todas las posiciones posibles e, inversamente, por una posición dada irán pasando ordenadamente todos los elementos.
Un mismo ciclo se puede representar comenzando con cualquiera de sus elementos si se respeta el orden circular.
Un ciclo de un elemento representa un elemento invariante, y el de dos, una transposición entre dos elementos. Si el ciclo abarca la permutación completa, a esta la llamaremos cíclica.
La propiedad más importante de los ciclos es que toda permutación se puede descomponer en ciclos disjuntos de forma única salvo el orden. Según esto, la del ejemplo podemos representarla como (1,3,4,2,5,6)=(3,4,2)(1)(5)(6). Se suelen ordenar los ciclos por su magnitud, de mayor a menor.
¿Cómo descomponer una permutación en ciclos?
El procedimiento puede ser el siguiente:
Elegimos el elemento 1, y aplicamos la permutación de forma reiterada hasta que la imagen vuelva a ser 1. Como el conjunto es finito, esto se acabará logrando, con lo que ya tendremos el primer ciclo de la descomposición. Buscamos después el siguiente elemento que no pertenezca al ciclo conseguido (si hemos acabado es que la permutación estudiada se reduce a un solo ciclo, es cíclica) y efectuamos la misma operación para obtener el segundo ciclo, y así sucesivamente hasta agotar el conjunto.
Por ejemplo, la permutación (4, 2, 6, 7, 8, 9, 10, 11, 3, 1, 5) nos llevaría al siguiente proceso:
Comenzamos con el 1. Las sucesivas imágenes serían: 1 – 4 – 7 – 10 – 1. Ya tendríamos el primer ciclo (4, 7, 10, 1).
Buscamos el siguiente elemento no estudiado aún: el 2, que se transforma en sí mismo. El siguiente ciclo es, pues, (2)
Siguiente elemento libre: 3, que engendra: 3 – 6 – 9 – 3, formando el ciclo (3, 6, 9)
Por último, con 5 logramos (5, 8, 11)
Hemos terminado: (4, 2, 6, 7, 8, 9, 10, 11, 3, 1, 5) = (4, 7, 10,1) (3, 6, 9) (5, 8, 11) (2)
Como cada ciclo opera sobre elementos disjuntos, esta descomposición es un producto en Sn (ver entrada anterior del blog), en el que los ciclos son permutables y por tanto, no influye el orden.
En este proceso los ciclos que se formen serán disjuntos, pues si dos de ellos tuvieran un elemento común, al aplicar el ciclo sobre él reiteradamente se incluirían todos los elementos, y los ciclos serían en realidad uno solo.
El número de ciclos en que se descompone una permutación varía entre 1, si ella misma es cíclica, hasta n, si se trata de la permutación identidad.
Podemos conseguir que una hoja de cálculo haga lo mismo:
Lo hemos implementado en Excel y Apache OpenOffice (http://hojamat.es/sindecimales/combinatoria/herramientas/herrcomb.htm#ciclos)
Observa que ha creado una fila en la que va tomando nota de los ciclos a los que pertenece cada elemento, y después ha escrito debajo la composición de cada ciclo. Es una tarea un poco larga, por lo que sólo explicaremos los fundamentos, remitiendo después a la hoja ya confeccionada.
Proceso para encontrar los ciclos:
1) Se crean unas memorias que contendrán la información de los ciclos que se van ocupando. Al principio se inician todas a cero.
2) En cada paso del proceso se busca el primer elemento cuyo número de ciclo es 0. Se aumenta en una unidad el número del ciclo, que, por tanto, comenzará en 1. Con un procedimiento similar al usado en la anterior entrada, se aplica reiteradamente la permutación hasta completar el ciclo.
Este paso se da mientras exista un elemento con número de ciclo 0. Para cada elemento, se irá escribiendo en la hoja a qué ciclo pertenece.
3) Localizados los ciclos, se van buscando los elementos de cada uno y se escriben en filas distintas debajo del esquema. Esta parte es más informática que matemática, y la podemos omitir.
Generación aleatoria
Como la hoja de cálculo ofrecida no tiene más objetivo que el de explicar el concepto, se ha añadido la posibilidad de generar aleatoriamente una permutación para comprender mejor la descomposición en ciclos.
Orden de un ciclo
No es difícil entender que el orden de un ciclo es su longitud, ya que los elementos invariantes seguirán siéndolo aunque reiteremos y los cíclicos se irán recorriendo uno por uno y se llegará al primero cuando se recorra toda la longitud:
El orden de un ciclo coincide con su longitud
También es sencillo entender que si una permutación se descompone en ciclos, su orden será el MCM de las longitudes de los mismos.
Así, el orden de (1)(2, 3, 7)(4, 5)(6) será 6, el mcm(1, 3, 2, 1)
En la misma hoja se puede estudiar el orden de los ciclos y el de la permutación total
El orden de los ciclos aparece en la parte izquierda de los mismos
El orden total, MCM de los de los ciclos lo tendrás en la parte derecha
Transposiciones
Llamaremos transposición a un ciclo de orden 2. Todo ciclo, y en consecuencia toda permutación, se puede descomponer en transposiciones. Se comprende sólo con estudiar este desarrollo:
(a, b, c, d, e)=(a, e)(a, d)(a, c)(a, b)
Esta descomposición no es única.
Algunos cálculos
Permutaciones circulares o cíclicas
Puede ocurrir que una permutación sea en sí misma un ciclo. La llamaremos cíclica o circular. Dentro del grupo simétrico Sn el número de permutaciones cíclicas equivale a (n-1)! Es algo muy conocido y se justifica porque para inventarte una permutación de este tipo en primer lugar has de ordenar todos los elementos, lo que puedes realizar de n! formas diferentes y una vez elegida una, esta representa n circulares idénticas, porque tienes n formas de elegir el primer elemento, luego el número es n!/n=(n-1)!
Permutaciones de n elementos que son ciclos de orden k
Deberemos elegir k elementos para el ciclo y dejar los restantes n-k fijos. El elegirlos nos supone Cn,k formas y dentro de los elegidos, (k-1)! ciclos posibles, luego el número total de ciclos de orden k será
Permutaciones reducidas
Son aquellas que no dejan fijo ningún elemento, las que en la descomposición en ciclos ninguno de ellos tiene orden 1. Son las conocidas como desarreglos (o desbarajustes) Los puedes estudiar en http://hojamat.es/sindecimales/combinatoria/teoria/teorcomb.pdf
En esa dirección hemos explicado su fórmula
jueves, 3 de octubre de 2013
Ciclos (1) Grupo simétrico
Solemos considerar las permutaciones como las distintas ordenaciones de un conjunto. Existe otro punto de vista alternativo, que es muy fructífero, y es considerarlas como aplicaciones biyectivas del conjunto en sí mismo. Así, la permutación S=(3,2,1,4) se puede considerar derivada de (1,2,3,4) (orden principal) mediante la aplicación S(1)=3, S(2)=2, S(3)=1 y S(4)=4. Así la interpretaremos aquí.
Como la naturaleza de los elementos no influye en la teoría, imaginaremos que se trabaja siempre sobre el conjunto {1,2,3,4,…,n} y que una permutación como S=(5,1,3,2,…) se interpreta: S(1)=5, S(2)=1, S(3)=3, S(4)=2,…La escribimos así, como un conjunto de imágenes, por comodidad de escritura, pero te la puedes imaginar con los orígenes sobre ellas formando una matriz de dos filas, con lo que cae cada imagen debajo del origen
Las permutaciones se pueden componer como todas las aplicaciones, usando una de ellas y después la otra sobre las imágenes de la primera. No es fácil verlo en este caso, por lo que usaremos un ejemplo:
Sean G=(4,2,5,3,1) y H=(1,4,3,5,2), o escribiendo orígenes:
G:
H:
La composición H*G (escribiendo de derecha a izquierda) se formaría así (hay que estar atentos):
H*G(1)=H(G(1))=H(4)=5 H*G(2)=H(G(2))=H(2)=4 H*G(3)=H(G(3))=H(5)=2
H*G(4)=H(G(4))=H(3)=3 H*G(5)=H(G(5))=H(1)=1, con lo que resultaría
H*G=(5,4,2,3,1) Como ves, no es nada intuitivo.
Es fácil demostrar que las n! permutaciones forman grupo para esta composición, siendo la identidad E=(1,2,3,4,…, n) y el inverso la permutación que convierte las imágenes en orígenes. A este grupo lo llamaremos Grupo simétrico para {1,2,3,…, n} y lo representaremos como Sn.
¿Te apetecería comprobar composiciones de permutaciones con hoja de cálculo? Te damos unas ideas:
Puedes escribir en filas distintas, una debajo de la otra, las dos permutaciones G y H (en la imagen, filas 12 y 16) y después la composición de ambas (fila 20), que es la única que contendrá fórmulas. El resto de la hoja sólo contiene datos.
Es muy interesante estudiar qué fórmula podemos implementar en la fila 20 de la imagen. Explicaremos la primera celda, B20, y después bastará extenderla al resto de la fila. La fórmula adecuada es:
=ÍNDICE($B16:$J16;1;B12)
La función ÍNDICE elige en una lista el elemento que presenta un número de orden. En este caso la lista es la permutación H. De ahí que hayamos usado el rango $B16:$J16. Después hay que indicar la fila del rango. Como solo hay una fila, hemos escrito un 1. El siguiente parámetro es el número de orden, y aquí va a residir el truco: Hemos de elegir en H el elemento que ocupe el lugar que indica G en la misma columna. Insistimos en que esto, al principio, no es fácil. Hemos escrito en la fórmula “B12”, que es la primera imagen de G, un 6, luego deberemos ir a H y buscar el sexto elemento, un 8, y por eso en la celda B20 aparece ese 8.
Como puede que te siga costando, te ofrecemos esta hoja en la dirección
http://hojamat.es/blog/compopermu.zip
Como el grupo simétrico opera sobre un conjunto finito (cardinal n!), la aplicación reiterada de una sustitución consigo misma (potencia de la permutación) llevará a la repetición de resultados, es decir, a que dos potencias distintas sean equivalentes:
Pm=Pn
Si suponemos, por ejemplo que m<n, entonces esa igualdad, si le aplicamos la permutación inversa para simplicar, se convertiría en
Pn-m=Pk=E (identidad)
Toda permutación, aplicada un número determinado de veces, se convierte en la identidad.
El número mínimo para el que eso ocurre recibe el nombre de orden de la permutación. En los ejemplos de arriba, el orden de G es 4, y el de H es 3. Compruébalo. Esta idea nos servirá en lo que sigue.
Una propuesta: En la imagen se ha compuesto G consigo misma, y el conjunto total parece haberse dividido en tres subconjuntos, cada uno de los cuales parece que va “a su aire”, sin mezclarse con los otros. ¿Cuáles son?
En otra entrada los relacionaremos con los ciclos. Te puedes adelantar en su estudio.
viernes, 27 de septiembre de 2013
Triangulares de lado par
Esta entrada participa en la Edición 4.123105 del Carnaval de Matemáticas, cuyo anfitrión es el blog Cifras y Teclas.
Los números triangulares 3, 10, 21, 36,…que nos aparecieron en la anterior entrada (http://hojaynumeros.blogspot.com.es/2013/09/igualdad-de-sumas-de-cuadrados-con-un.html) son aquellos cuyo número de orden es par: 3=T(2)=2*3/2; 10=T(4)=4*5/2; 21=T(6)=6*7/2,…
Si aplicamos la expresión algebraica de un número triangular, la de estos será
T(2n)=2n(2n+1)/2=n(2n+1)=2n2+n
Los podemos representar como formados por filas de triángulos de 3 elementos separados por otros elementos aislados. En la imagen hemos representado el 36, es decir T(8)
Observa que está formado por 10 triángulos de tres elementos y 6 puntos aislados. Nos sugiere que un número triangular de orden par equivale al triangular de orden mitad multiplicado por 3 más su triangular anterior, es decir:
T(2n)=3T(n)+T(n-1)
Es fácil demostrarlo por inducción: T(2)=3*T(1)+T(0)=3*1+0=3; T(4)=3*T(2)+T(1)=3*3+1=10…
Probemos con T(2(n+1))=T(2n)+(2n+1)+(2n+2) por definición de número triangular. Si aceptamos la hipótesis para n, tendremos:
T(2(n+1))=3*T(n)+T(n-1)+(n+1+n+1+n+1)+n=3*T(n)+3*(n+1)+T(n-1)+n=3*T(n+1)+T(n), luego la hipótesis se cumple para n+1.
La fórmula T(2n)=3T(n)+T(n-1) es válida
Adaptamos una demostración visual contenida en http://math.berkeley.edu/~rbayer/09su-55/handouts/ProofByPicture-printable.pdf
Así se ve mejor la relación.
En realidad, estos números son los triangulares que no pueden ser hexagonales. Se sabe que todo hexagonal es triangular, porque su expresión es H(n)=n(2n-1)=2n(2n-1)/2=T(2n-1), pero el número de orden del triangular es 2n-1, impar, luego los que no son hexagonales formarán la sucesión que estamos estudiando: 3, 10, 21, 36,…, que está contenida en http://oeis.org/A014105
Expresión como diferencia entre una suma de pares y otra de impares
En la página OEIS enlazada se destacan estas relaciones:
3=4-1
10=6+8-1-3
21=8+10+12-1-3-5
36=10+12+14+16-1-3-5-7
No se justifican, y esto es una invitación a que lo hagamos nosotros. En primer lugar generalizamos.
Llamamos a nuestra sucesión TT(n)
TT(n)=T(2n)=SP(2(n+1),n)-SI(1,n)
Con SP(2(n+1),n) deseamos expresar que se toman n números pares a partir de 2(n+1) y con SI(1,n) que se suman los primeros n impares. Lo intentamos demostrar por inducción:
TT(n+1)=TT(n)+2n+1+2n+2, como ya sabemos por los párrafos anteriores. Si usamos la hipótesis para n queda:
TT(n+1)=2(n+1)+2(n+2)+…+2(2n)-1-3-5-7…- (2n-1)+2n+1+2n+2
Para construir la nueva suma de pares hay que añadir 2(2n+1)+2(2n+2) y eliminar 2(n+1). La diferencia es 4n+2+4n+4-2n-2=6n+4, que ha de salir de los nuevos sumandos 2n+1+2n+2=4n+3, que equivalen a 6n+4-(2n+1), siendo el paréntesis el nuevo impar que habría que restar, luego la estructura de la fórmula se mantiene y es correcta.
Usamos el álgebra
TT(n)=T(2n)=n(2n+1)=2n2+n
SP(2(n+1),n)=(2(n+1)+2(2n))*n/2=3n2+n
SI(1,n)=n2 como es sabido.
Por tanto, se verifica la diferencia.
Demostración visual
Ahí te la dejamos para el caso de 36. Analízala e intenta reproducirla para otros casos:
Esta construcción sólo es posible porque el triángulo es de orden par.
Otros desarrollos
Se cumple que TT(n)=T(2n)=3+7+11+15+…(4n-1), es decir, que es la suma de impares tomados de 4 en 4 a partir de 3. Si sabes verlo ( mira sólo las bolas rojas de la figura de la derecha), en la anterior imagen se muestra esa suma con claridad. Puedes justificarlo algebraicamente:
3+7+11+15+…(4n-1)=(3+4n-1)*n/2=(4n+2)*n/2=n(2n+1)=TT(n)
Este desarrollo se puede escribir así:
TT(n)=22-12+42-32+62-52+82-72…
que es una forma elegante de terminar esta entrada.
Los números triangulares 3, 10, 21, 36,…que nos aparecieron en la anterior entrada (http://hojaynumeros.blogspot.com.es/2013/09/igualdad-de-sumas-de-cuadrados-con-un.html) son aquellos cuyo número de orden es par: 3=T(2)=2*3/2; 10=T(4)=4*5/2; 21=T(6)=6*7/2,…
Si aplicamos la expresión algebraica de un número triangular, la de estos será
T(2n)=2n(2n+1)/2=n(2n+1)=2n2+n
Los podemos representar como formados por filas de triángulos de 3 elementos separados por otros elementos aislados. En la imagen hemos representado el 36, es decir T(8)
Observa que está formado por 10 triángulos de tres elementos y 6 puntos aislados. Nos sugiere que un número triangular de orden par equivale al triangular de orden mitad multiplicado por 3 más su triangular anterior, es decir:
T(2n)=3T(n)+T(n-1)
Es fácil demostrarlo por inducción: T(2)=3*T(1)+T(0)=3*1+0=3; T(4)=3*T(2)+T(1)=3*3+1=10…
Probemos con T(2(n+1))=T(2n)+(2n+1)+(2n+2) por definición de número triangular. Si aceptamos la hipótesis para n, tendremos:
T(2(n+1))=3*T(n)+T(n-1)+(n+1+n+1+n+1)+n=3*T(n)+3*(n+1)+T(n-1)+n=3*T(n+1)+T(n), luego la hipótesis se cumple para n+1.
La fórmula T(2n)=3T(n)+T(n-1) es válida
Adaptamos una demostración visual contenida en http://math.berkeley.edu/~rbayer/09su-55/handouts/ProofByPicture-printable.pdf
Así se ve mejor la relación.
En realidad, estos números son los triangulares que no pueden ser hexagonales. Se sabe que todo hexagonal es triangular, porque su expresión es H(n)=n(2n-1)=2n(2n-1)/2=T(2n-1), pero el número de orden del triangular es 2n-1, impar, luego los que no son hexagonales formarán la sucesión que estamos estudiando: 3, 10, 21, 36,…, que está contenida en http://oeis.org/A014105
Expresión como diferencia entre una suma de pares y otra de impares
En la página OEIS enlazada se destacan estas relaciones:
3=4-1
10=6+8-1-3
21=8+10+12-1-3-5
36=10+12+14+16-1-3-5-7
No se justifican, y esto es una invitación a que lo hagamos nosotros. En primer lugar generalizamos.
Llamamos a nuestra sucesión TT(n)
TT(n)=T(2n)=SP(2(n+1),n)-SI(1,n)
Con SP(2(n+1),n) deseamos expresar que se toman n números pares a partir de 2(n+1) y con SI(1,n) que se suman los primeros n impares. Lo intentamos demostrar por inducción:
TT(n+1)=TT(n)+2n+1+2n+2, como ya sabemos por los párrafos anteriores. Si usamos la hipótesis para n queda:
TT(n+1)=2(n+1)+2(n+2)+…+2(2n)-1-3-5-7…- (2n-1)+2n+1+2n+2
Para construir la nueva suma de pares hay que añadir 2(2n+1)+2(2n+2) y eliminar 2(n+1). La diferencia es 4n+2+4n+4-2n-2=6n+4, que ha de salir de los nuevos sumandos 2n+1+2n+2=4n+3, que equivalen a 6n+4-(2n+1), siendo el paréntesis el nuevo impar que habría que restar, luego la estructura de la fórmula se mantiene y es correcta.
Usamos el álgebra
TT(n)=T(2n)=n(2n+1)=2n2+n
SP(2(n+1),n)=(2(n+1)+2(2n))*n/2=3n2+n
SI(1,n)=n2 como es sabido.
Por tanto, se verifica la diferencia.
Demostración visual
Ahí te la dejamos para el caso de 36. Analízala e intenta reproducirla para otros casos:
Esta construcción sólo es posible porque el triángulo es de orden par.
Otros desarrollos
Se cumple que TT(n)=T(2n)=3+7+11+15+…(4n-1), es decir, que es la suma de impares tomados de 4 en 4 a partir de 3. Si sabes verlo ( mira sólo las bolas rojas de la figura de la derecha), en la anterior imagen se muestra esa suma con claridad. Puedes justificarlo algebraicamente:
3+7+11+15+…(4n-1)=(3+4n-1)*n/2=(4n+2)*n/2=n(2n+1)=TT(n)
Este desarrollo se puede escribir así:
TT(n)=22-12+42-32+62-52+82-72…
que es una forma elegante de terminar esta entrada.
jueves, 19 de septiembre de 2013
Igualdad de sumas de cuadrados con un escalón
Repasando algunas propiedades curiosas me encontré en hojamat.es con esta:
365=102+112+122 = 132+142
La pregunta inmediata que me surgió fue la de si existían otros números con la misma propiedad o similar. Los encontré en OEIS (http://oeis.org/) pero no descubriré dónde por ahora, aunque los lectores experimentados sabrán hallarlos. Con esto quiero aclarar que lo que se consiga en esta entrada está ya descubierto, pero el objetivo (tan frecuente en este blog) es intentar la concurrencia de métodos y el uso de la hoja de cálculo.
Nos acercaremos al problema con el planteamiento de dos preguntas:
¿Existen más números en los que la suma de tres cuadrados consecutivos coincida con los dos siguientes?
¿Qué ocurrirá si aumentamos o disminuimos el número de cuadrados?
Es probable que hayas pensado en el 25=32+42=52, luego parece que sí existen casos similares. Lo vemos.
Acercamiento con la hoja de cálculo
Si concretamos un número de inicio n y un número de cuadrados igual a k+1 en el primer miembro y a k en el segundo, con estas sencillas líneas podemos descubrir si existen otros casos:
For i=1 to 10000 (por ejemplo)
‘calcula el primer miembro
a = 0
For l = 0 To k
a = a + (i + l) ^ 2
Next l
‘calcula el segundo miembro
b = 0
For l = k + 1 To 2 * k
b = b + (i + l) ^ 2
Next l
‘Los compara y si son iguales lo comunica
If a = b Then
Msgbox(n)
Msgbox(a)
End If
Next i
Hemos tomado como tope 10000, pero después habrá quizás que ampliar. Implementa esto como rutina en tu hoja de cálculo y descubrirás que para cada k existe una solución y sólo una.
Recogemos en una tabla los primeros resultados:
Ahora ya descubrimos que los resultados coinciden con los recogidos en http://oeis.org/A059255, pero no podemos dejarlo así, porque en la tabla aparecen números triangulares y múltiplos de 5. Algo habrá detrás. Intentamos descubrirlo.
Un poco de Álgebra
Si sospechamos que las soluciones son únicas para cada valor de k, es probable que exista una relación algebraica sencilla. En efecto, aunque los principios son algo farragosos, con paciencia algebraica llegaremos a la meta. No damos todos los detalles y te dejamos practicar:
Primera suma de cuadrados A
Suponemos que comienza en n y termina en n+k (k+1 sumandos), es decir:
Segunda suma de cuadrados B
Observa cómo lo hemos escrito, para que te aproveches de la fórmula para la suma de números naturales consecutivos.
Desarrolla cada suma separando los coeficientes de n2, de n y los independientes. Como esta tarea te puede llevar a la desesperación, usa las dos populares fórmulas:
Calcula A-B para igualarla a cero y ve encontrando los coeficientes:
De n2 te deberá resultar a=1. Es fácil verlo.
De n, si sabes usar la primera fórmula ofrecida, con algún retoque, te dará b=-2k2
El coeficiente independiente es un poco más complejo de encontrar correctamente. Puedes usar la suma de cuadrados de los primeros naturales. Deberá resultar c=-2k3-k2
Así que la ecuación para calcular n quedaría así:
Su discriminante es el cuadrado de 2k(k+1), lo que nos garantiza una solución entera. Tomamos la positiva y, efectivamente n=k(2k+1), que es el número triangular de orden 2k, como habíamos sospechado al principio.
Para cada valor de k, la igualdad de cuadrados pretendida ocurre para n=k(2k+1), el número triangular correspondiente a 2k, y es por tanto la solución única.
Hemos resuelto con rigor lo que sospechábamos tras el uso de la hoja de cálculo. Esto es imprescindible: las herramientas informáticas sólo proponen o dan pistas, pero no demuestran nada. A veces olvidamos esta limitación.
Expresión de la suma
Ahora podemos calcular el valor de las dos sumas. Sustituimos k(2k+1) en una de ellas, y sacando factor común nos resulta
A(k)=k(k+1)(2k+1)(12k2+12k+1)/6.
Por ejemplo, para k=3 resulta 3*4*7*(12*9+12*3+1)=2030.
El problema se ha reducido a una cuestión algebraica.
Carácter de múltiplos de 5
Es fácil ver que aunque la expresión propuesta tiene denominador 6, su resultado será entero, porque ese ha sido su origen, y porque los factores k(k+1)(2k+1) garantizan un factor 2 y un 3. Estúdialo, que no es difícil de descubrir.
¿De dónde sacamos el factor 5?
Lo podemos ver mediante congruencias módulo 5. El valor de k puede presentar respecto al 5 los restos 0, 1, 2, 3 o 4.
Resto 0: En ese caso k contiene el factor 5
Resto 1: El factor 12k2+12k+1 será múltiplo de 5
Resto 2: Contamos con el factor 2k+1
Resto 3: El factor 12k2+12k+1 sería congruente con 12*9+12*3+1=108+36+1=145, múltiplo de 5
Resto 4: Nos proporciona el factor deseado el valor de k+1
En todos los casos la suma de cuadrados será un múltiplo de 5.
Hemos terminado con éxito. Nuestras sospechas tenían fundamento y la sucesión 25, 365, 2030, 7230, 19855, 45955, 94220, 176460… representa simplemente los distintos valores de un polinomio de quinto grado definido sobre los números naturales.
365=102+112+122 = 132+142
La pregunta inmediata que me surgió fue la de si existían otros números con la misma propiedad o similar. Los encontré en OEIS (http://oeis.org/) pero no descubriré dónde por ahora, aunque los lectores experimentados sabrán hallarlos. Con esto quiero aclarar que lo que se consiga en esta entrada está ya descubierto, pero el objetivo (tan frecuente en este blog) es intentar la concurrencia de métodos y el uso de la hoja de cálculo.
Nos acercaremos al problema con el planteamiento de dos preguntas:
¿Existen más números en los que la suma de tres cuadrados consecutivos coincida con los dos siguientes?
¿Qué ocurrirá si aumentamos o disminuimos el número de cuadrados?
Es probable que hayas pensado en el 25=32+42=52, luego parece que sí existen casos similares. Lo vemos.
Acercamiento con la hoja de cálculo
Si concretamos un número de inicio n y un número de cuadrados igual a k+1 en el primer miembro y a k en el segundo, con estas sencillas líneas podemos descubrir si existen otros casos:
For i=1 to 10000 (por ejemplo)
‘calcula el primer miembro
a = 0
For l = 0 To k
a = a + (i + l) ^ 2
Next l
‘calcula el segundo miembro
b = 0
For l = k + 1 To 2 * k
b = b + (i + l) ^ 2
Next l
‘Los compara y si son iguales lo comunica
If a = b Then
Msgbox(n)
Msgbox(a)
End If
Next i
Hemos tomado como tope 10000, pero después habrá quizás que ampliar. Implementa esto como rutina en tu hoja de cálculo y descubrirás que para cada k existe una solución y sólo una.
Recogemos en una tabla los primeros resultados:
Ahora ya descubrimos que los resultados coinciden con los recogidos en http://oeis.org/A059255, pero no podemos dejarlo así, porque en la tabla aparecen números triangulares y múltiplos de 5. Algo habrá detrás. Intentamos descubrirlo.
Un poco de Álgebra
Si sospechamos que las soluciones son únicas para cada valor de k, es probable que exista una relación algebraica sencilla. En efecto, aunque los principios son algo farragosos, con paciencia algebraica llegaremos a la meta. No damos todos los detalles y te dejamos practicar:
Primera suma de cuadrados A
Suponemos que comienza en n y termina en n+k (k+1 sumandos), es decir:
Segunda suma de cuadrados B
Observa cómo lo hemos escrito, para que te aproveches de la fórmula para la suma de números naturales consecutivos.
Desarrolla cada suma separando los coeficientes de n2, de n y los independientes. Como esta tarea te puede llevar a la desesperación, usa las dos populares fórmulas:
Calcula A-B para igualarla a cero y ve encontrando los coeficientes:
De n2 te deberá resultar a=1. Es fácil verlo.
De n, si sabes usar la primera fórmula ofrecida, con algún retoque, te dará b=-2k2
El coeficiente independiente es un poco más complejo de encontrar correctamente. Puedes usar la suma de cuadrados de los primeros naturales. Deberá resultar c=-2k3-k2
Así que la ecuación para calcular n quedaría así:
Su discriminante es el cuadrado de 2k(k+1), lo que nos garantiza una solución entera. Tomamos la positiva y, efectivamente n=k(2k+1), que es el número triangular de orden 2k, como habíamos sospechado al principio.
Para cada valor de k, la igualdad de cuadrados pretendida ocurre para n=k(2k+1), el número triangular correspondiente a 2k, y es por tanto la solución única.
Hemos resuelto con rigor lo que sospechábamos tras el uso de la hoja de cálculo. Esto es imprescindible: las herramientas informáticas sólo proponen o dan pistas, pero no demuestran nada. A veces olvidamos esta limitación.
Expresión de la suma
Ahora podemos calcular el valor de las dos sumas. Sustituimos k(2k+1) en una de ellas, y sacando factor común nos resulta
A(k)=k(k+1)(2k+1)(12k2+12k+1)/6.
Por ejemplo, para k=3 resulta 3*4*7*(12*9+12*3+1)=2030.
El problema se ha reducido a una cuestión algebraica.
Carácter de múltiplos de 5
Es fácil ver que aunque la expresión propuesta tiene denominador 6, su resultado será entero, porque ese ha sido su origen, y porque los factores k(k+1)(2k+1) garantizan un factor 2 y un 3. Estúdialo, que no es difícil de descubrir.
¿De dónde sacamos el factor 5?
Lo podemos ver mediante congruencias módulo 5. El valor de k puede presentar respecto al 5 los restos 0, 1, 2, 3 o 4.
Resto 0: En ese caso k contiene el factor 5
Resto 1: El factor 12k2+12k+1 será múltiplo de 5
Resto 2: Contamos con el factor 2k+1
Resto 3: El factor 12k2+12k+1 sería congruente con 12*9+12*3+1=108+36+1=145, múltiplo de 5
Resto 4: Nos proporciona el factor deseado el valor de k+1
En todos los casos la suma de cuadrados será un múltiplo de 5.
Hemos terminado con éxito. Nuestras sospechas tenían fundamento y la sucesión 25, 365, 2030, 7230, 19855, 45955, 94220, 176460… representa simplemente los distintos valores de un polinomio de quinto grado definido sobre los números naturales.
jueves, 12 de septiembre de 2013
Tus funciones, disponibles en todas las hojas de cálculo (2)
Procedimiento para Apache OpenOffice y LibreOffice
En la entrada anterior (http://hojaynumeros.blogspot.com.es/2013/09/tus-funciones-disponibles-en-todas-las.html) proponíamos un procedimiento para extender tus funciones a cualquier hoja de cálculo que abras. Propusimos el procedimiento de crear e instalar un complemento para Excel. Si pasamos a Apache OpenOffice o LibreOffice, la creación de complementos (extensiones) se complica, porque está orientada al uso de terceros. Como aquí sólo nos interesa que tengas disponibles tus funciones en cualquier archivo nuevo que crees para tu propio uso, desarrollaremos un método mucho más sencillo.
Usaremos el código que se presentó en la anterior entrada para descomponer un número natural en sus factores primos. Cópialo y guárdalo, porque te servirá en esta entrada.
Una vez decidido el código deberás pasarlo a Apache OpenOffice o a LibreOffice. El procedimiento es similar en ambos programas, y sólo añadiremos los detalles específicos de LibreOffice si fuera necesario.
Abre una hoja nueva. Acude al menú Herramientas y en él elige Macros, después Organizar macros y finalmente OpenOffice Basic (o LibreOffice Basic)
Observa que tu archivo aparecerá en la parte baja (en la imagen aún no tiene título). Tú has de ir a la superior, “Mis macros - Standard”. Pide crear un módulo nuevo con el botón “Nuevo” de la parte derecha. Si ya existe uno, como ocurre en la imagen, le asignará el nombre de Module 2 u otro similar.
Abre el nuevo módulo que has creado (pinchando sobre su nombre) y pégale el código que desees, como el que te ofrecimos en la anterior entrada. Acepta y cierra todo.
Ahora puede ser un buen momento para comprobar si todo va bien. Vuelve a la hoja. Escribe cualquier número entero, por ejemplo 366220 en la celda B4. En otra celda escribe =factores(B4). Si ves escrito [2,2][5,1][18311,1] es que tu función se comporta bien. La interpretación de lo que ves es que el primer número de cada corchete es el factor primo y el segundo el exponente al que está elevado. En este caso 366220=22*5*18311. No intentes cálculos con esta expresión, que tiene formato de texto.
Como has usado el contenedor “Mis macros”, todo lo que has construido hasta ahora lo encontrarás implementado en cualquier libro que abras. Prueba a hacerlo. Cierra el archivo, abre uno nuevo, y en cualquier celda escribe un número entero y aplícale la función factores (no aparecerá en ningún catálogo. Te lo tienes que aprender)
En la imagen se ha descompuesto el número 491300 en factores dentro de un archivo recién creado:
Ahora inténtalo tú.
lunes, 9 de septiembre de 2013
Tus funciones, disponibles en todas las hojas de cálculo (1)
Procedimiento para Excel
El autor de esta entrada necesita frecuentemente descomponer un número en factores primos. Como esta función no viene implementada en la hoja de cálculo, ha tenido que programarla en el Basic de Excel. El problema que surge es que sólo está disponible en la hoja que contiene el código y no en cualquier otra que se cree. Esto tiene un remedio, y es la construcción de un complemento de Excel que nos permita acceder a esa factorización cuando se abra cualquier hoja.
Complementos de Excel
Para saber de qué estamos hablando, entra en las Opciones de Excel y busca Complementos. En la ventana que se abre podrás comprobar qué complementos tienes instalados en tu equipo
(el volcado de pantalla corresponde al Excel 2007 sobre Windows XP, una querida antigüedad,
pero igual te funciona en Excel 2010)
En la imagen vemos que el autor tiene instaladas dos herramientas de análisis, el Solver y un complemento suyo titulado Micomplemento. Como habrás comprendido, los cuatro contienen funciones y rutinas que no vienen implementadas en Excel originariamente.
Crea tu propio complemento
Al final de esta entrada se ha incluido el código mínimo necesario para implementar la descomposición factorial de un número entero (dentro de los límites de Excel y del propio código, no le pidas milagros) como un regalo del autor a sus lectores.
Pasos a seguir
En primer lugar tienes que escribir tus funciones. En el caso que estamos desarrollando basta con que las copies desde el final de esta entrada. Abre un archivo nuevo y pega en él las definiciones que desees según te explicamos a continuación:
Una vez decidido el código deberás pasarlo a Excel. Para ello acude a la pestaña Programador de la cinta de opciones. Si no la tienes visible deberás activarla en Opciones de Excel – Más frecuentes.
Entras en el ámbito de programación mediante el primer botón de la ficha Programador:
Te aparecerá el acceso a las macros que utiliza tu hoja de cálculo en este momento:
A ti no te aparecerá la referencia a Micomplemento. También, si usas la versión 2010 los colores podrán cambiar, pero el contenido será el mismo.
Ahora debes crear un módulo que aloje tu código. Pide Insertar – Módulo y Excel lo hará con el nombre de Modulo 1 (salvo que tengas otro anterior).
En la hoja en blanco que aparece pega el código que habrás copiado desde esta entrada o que haya sido creado por ti:
Ahora puede ser un buen momento para comprobar si todo va bien. Guarda el archivo nuevo como Libro habilitado para macros. Vuelve a la hoja. Escribe cualquier número entero, por ejemplo 366220 en la celda B4. En otra celda escribe =factores(B4). Si ves escrito [2,2][5,1][18311,1] es que tu función se comporta bien. La interpretación de lo que ves es que el primer número de cada corchete es el factor primo y el segundo el exponente al que está elevado. En este caso 366220=22*5*18311. No intentes cálculos con esta expresión, que tiene formato de texto.
Lo que has construido hasta ahora sólo te vale para el archivo que contiene el código. Para que se active en cualquier hoja hay que convertirlo en complemento.
Instalación del complemento
Borra si acaso los cálculos efectuados y vuelve a guardar el libro como complemento de Excel. Puedes cambiarle el nombre a factores. Guíate por la imagen:
Observa que Excel te lleva a la carpeta Complementos, que es donde debe estar alojado el tuyo.
No cambies esa carpeta, que si no, no podrás instalar el complemento.
Puedes acceder a la ruta en la que está situada la carpeta:
En Office 2010 se te muestra también toda la ruta, que es distinta a la anterior:
Es interesante conocer esa ruta, por si deseas borrar el archivo.
Instalación
Ya sólo te falta instalar tu complemento. Vuelve a las opciones de Excel y busca Complementos. En la parte inferior de la ventana tendrás el botón Ir… Úsalo y descubrirás que tu trabajo está preparado ya para ser usado:
Activa la casilla de verificación que está junto al nombre Factores y pulsa Aceptar. Si todo ha ido bien, cuando abras Excel de nuevo, en el catálogo de funciones definidas por el usuario dispondrás de la función factores:
Las otras dos funciones ajusta y sacaprimos son auxiliares y no tienes por qué usarlas, ya que quizás no interpretarías bien su resultado.
Ahora define tú un complemento propio ¡Suerte!
Código en Basic
Global primo(50), expo(50)
Global numomega
Function ajusta$(a)
Dim d$
d$ = Str$(a)
While Left$(d$, 1) = " "
d$ = Right$(d$, Len(d$) - 1)
Wend
ajusta$ = d$
End Function
Public Function sacaprimos(n)
Dim f, a, e
a = n
f = 2: i = 0: numomega = 0
While f * f <= a
e = 0
While a / f = Int(a / f)
e = e + 1
a = a / f
Wend
If e > 0 Then
numomega = numomega + 1
primo(numomega) = f
expo(numomega) = e
End If
If f = 2 Then f = 3 Else f = f + 2
Wend
If a > 1 Then
numomega = numomega + 1
primo(numomega) = a
expo(numomega) = 1
End If
sacaprimos = numomega
End Function
Public Function factores(n) As String
Dim a, nn
Dim s$
'saca factores en forma de string
a = n
nn = sacaprimos(a)
s$ = ""
For i = 1 To numomega
s$ = s$ + "[" + ajusta(primo(i)) + "," + ajusta(expo(i)) + "]"
Next i
factores = s$
End Function
Suscribirse a:
Entradas (Atom)



























