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.
viernes, 30 de enero de 2015
Suma con el primo anterior
En la entrada anterior estudiábamos la suma de un número con su próximo primo y encontramos los números en los que esa suma es prima. Recomendamos su lectura previa a la de la actual. La misma cuestión se puede abordar si le sumamos el anterior primo más cercano. Lo desarrollaremos en esta entrada. Al igual que con el próximo primo se puede plantear que sea prima la suma con el anterior. Hay muchas soluciones. Las primeras son:
3, 4, 6, 10, 12, 16, 22, 24, 30, 36, 42, 46, 50, 54, 56, 66, 70, 76, 78, 84, 90, 92, 100, 114, 116, 120, 126, 130, 132, 142, 144, 156, 160, 170, 174, 176, 180, 186, 192, 196, 202, 210, 220, 222, 226, 232, 234, 240, 246, 250, 252, 276, 280, 282, 286, 288, 294, 300, 306, 310…
Todos ellos, salvo los primeros casos especiales, son pares, como era de esperar. Si les sumamos el primo más cercano por la izquierda el resultado también es primo. Así, 282 tiene como primo anterior el 281, y la suma de ambos, 563, es prima. Los hemos publicado en https://oeis.org/A249666
Para obtenerlos con PARI sólo efectuaremos un pequeño cambio:
{for(i=3,10^3,k=i+precprime(i-1);if(isprime(k),print1(i,", ")))}
También podemos expresar esta propiedad con un esquema similar al de la cuestión anterior:
Vemos el ejemplo de 156, en el que se cumple que tanto N-D como 2N-D son primos.
Al igual que en la cuestión anterior, podemos obtener un listado de las diferencias entre el número natural dado y su anterior primo (con suma de ambos prima)
Diferencias
2 1 1 1 3 1 3 3 1 1 5 1 3 3 1 3 5 3 3 5 1 1 3 3 1 3 7 13 3 1 3 5 5 3 3 1 3 1 5 1 3 3 11 9 11 3 3 1 1 5 9 1 5 3 1 3 5 1 7 13 3 7 9 13 3 9 3 3 1 5 5 3 3 3 7 3 5 9 1 1 3 1 3 3 7 3 1 3 1 3 3 5 15 17 5 3 9 3 3 9 1 3 3 11 1 3 3 1 1 5 1 7 7 5 9 1 5 5 3 1 3 7 1 3 7 13 5 9 3 7 1 5 5 9 3 3 7 3 9 13 15 1 9 3 3 1 7 7 5 3...
También aquí nos podemos preguntar si están todos los números enteros positivos impares en la lista. Conjeturamos que sí, y hemos confeccionado un listado similar al del caso precedente, en el que encontramos para cada caso el valor del número que consigue una suma prima en las condiciones dadas y que la diferencia con el sumando primo sea la dada.
Primera ocurrencia de diferencia dada
En este caso también formularemos una conjetura:
Cualquier número impar es diferencia entre cierto número y su anterior primo, en el caso en el que la suma de ambos también sea prima.
Números que cumplen ambas condiciones
Basta recorrer las dos listas de números que hemos considerado para darnos cuenta de que existe una intersección entre ambas. Son aquellos números que forman suma prima tanto con el siguiente primo como con el precedente. Son estos:
6, 24, 30, 36, 50, 54, 78, 84, 114, 132, 144, 156, 174, 210, 220, 252, 294, 300, 306, 330, 360, 378, 474, 492, 510, 512, 528, 546, 560, 594, 610, 650, 660, 690, 714, 720, 762, 780, 800, 804, 810, 816, 870, 912, 996, 1002, 1068, 1074, 1104, 1120, 1170, 1176, 1190, …
Por ejemplo, dado el número 996, su siguiente primo es 997 y su suma, 1993, es un número primo. En dirección opuesta, el primo precedente a 996 es 991, y su suma. 1987, también es prima. Los hemos publicado en https://oeis.org/A249667
Los hemos encontrado con hoja de cálculo y con PARI
Código PARI
{for(i=3,2*10^3,k=i+nextprime(i+1);q=i+precprime(i-1);if(isprime(k)&&isprime(q),write1("final.txt",i,", ")))}
También para ellos es válido el esquema que estamos usando, en este caso, doble:
Es evidente que, salvo en los primeros términos de la sucesión, las diferencias son impares (en el ejemplo 5 y 7). Convierten el par de números primos 997 y 1009 en el par de abajo (1999,2011) mediante una traslación de valor 1002. Estos hechos son meras curiosidades sin valor teórico, pero quedan visualmente muy bien.
¿Existirán términos de esta sucesión en los que la diferencias con los primos más cercanos sean iguales?
Es un caso interesante, pues el número dado sería el promedio de dos números primos consecutivos y su doble también, pero no necesariamente consecutivos.
Es evidente que sí existen, como sería el caso del 144 cuyos primos más próximos son 139 y 149, cumpliéndose que 144-139=149-144=5 y que tanto 144+139=283 como 144+149=293 son primos.
No cansamos con un nuevo código. Sólo señalaremos que los números buscados son
6, 30, 50, 144, 300, 560, 610, 650, 660, 714, 780, 810, 816, 870, 1120, 1176, 1190, 1806, 2130, 2470, 2490, 2550, 2922, 3030, 3240, 3330, 3390, 3480, 3600, 3620, 3840, 4266, 4368,...
( https://oeis.org/A249676)
Todos ellos son compuestos que equivalen al promedio entre dos primos consecutivos y que con ambos forman suma prima. Para ellos el esquema propuesto se hace más simétrico:
lunes, 19 de enero de 2015
Suma con el próximo primo
En estas dos entradas anteriores sumamos dos primos consecutivos e investigamos la naturaleza de esa suma y en algunos casos de su mitad (media de ambos):
http://hojaynumeros.blogspot.com.es/2014/06/suma-de-dos-numeros-primos-consecutivos.html
http://hojaynumeros.blogspot.com.es/2014/06/suma-de-dos-numeros-primos-consecutivos_29.html
Hoy podríamos buscar propiedades similares pero sin exigir que el primer número del par sea primo, pero sí usando el primer primo que le sigue (o que le antecede). Comenzaremos sumando cada número con el primer primo que le sigue e investigaremos si también es primo.
Suma con el primo siguiente
Dado un número natural cualquiera, buscaremos menor primo superior a él. Nuestra función de hoja de cálculo PRIMPROX(N) nos serviría en este caso, por lo que en realidad estudiaremos la suma N+PRIMPROX(N). La tienes contenida en la hoja Conjeturas.xlsm
http://www.hojamat.es/sindecimales/divisibilidad/herramientas/hojas/conjeturas.xlsm
Búsqueda de primos
Un número, si es primo, no puede formar otro primo sumado con el siguiente, salvo el caso de 2+3=5, pero sí lo forma si no es primo. Buscamos, pues, números no primos que al sumarles el mínimo primo mayor que ellos sí produzcan suma prima. Por ejemplo, el 14 con su próximo primo 17 suma otro primo, el 31.
Los números con esta propiedad son
0, 1, 2, 6, 8, 14, 18, 20, 24, 30, 34, 36, 38, 48, 50, 54, 64, 68, 78, 80, 84, 94, 96, 98, 104, 110,114,
124, 132, 134, 138, 144, 154, 156, 164, 174, 182, 188, 198, 208, 210, …
En todos ellos al sumarles su próximo primo obtendremos otro número primo. Vemos que son frecuentes, pero otros muchos no cumplen la propiedad. Así, 24 sí la cumple, porque 24+29=43, que es primo, pero 22+23=45, que es compuesto. Es trivial descubrir que todos son pares salvo el caso especial 1.
En realidad estamos exigiendo otra propiedad, y es que si llamamos D a la diferencia entre N y su próximo primo, si sumamos D a 2N también resulta otro primo (no necesariamente PRIMPROX(2N)). Es fácil justificarlo y podemos representarlo en este tipo de esquema, que usaremos más adelante también, y que hemos implementado en hoja de cálculo para realizar pruebas.
Insertamos el correspondiente al 38:
Los números de la sucesión los hemos obtenido con Excel, pero puede resultar más sencillo acudir a PARI:
{for(i=0,10^3,k=i+nextprime(i+1);if(isprime(k),print1(i,", ")))}
Su funcionamiento se entiende fácilmente. El único detalle a explicar es que para encontrar el próximo primo hay que basarse en i+1 y no en i.
Lo hemos usado para publicar la sucesión en https://oeis.org/A249624
Es evidente que, salvo el 1 son todos pares, y algunos, como el 8 y el 64, potencias de 2. Podíamos afirmar que estos números son diferencias de primos, pero lo importante es que esas diferencias son las mínimas, ya que no existen más primos entre ellos. Sin esa condición, estaríamos en las condiciones de la conjetura de Polignac, que afirma que para todo 2k existen dos primos tales que q-p=2k. Entonces, si la conjetura es cierta, todos los pares cumplirían la condición impuesta.
Estos son los valores de esas diferencias:
1, 1, 1, 3, 3, 1, 3, 5, 1, 3, 1, 3, 5, 3, 5, 3, 3, 1, 3, 5, 3, 1, 3, 3, 3, 13, 3, 5, 3, 1, 5, 3, 1, 3, 5, 9, 3, 1, 3, 1, 7, 3, 1, 3, 3, 5, 5, 3, 1, 9, 13, 7, 1, 3, 3, 9, 3, 1, 1, 3, 7, 1, 3, 1, 5, 7, 7, 9, 9, 5, 3, 1, 3, 7, 3, 3, 11, 5, 7, 3, 7, 1, 5, 11, 9, 3, 13, 3, 1, 5, 3, 3, 1, 3, 5, 5, 1, 1, 3, 3, 1, 3, 5, 3, 3, 5, 3, 1, 5, 1, 3, 9, 5, 7, 3, 1, 3, 3, 3, 7, 3, 7, 3, 11, 9, 5, 1, 5, 1, 9, 13, 9, 7, 3, 13, 7, 1, 3, 13, 3, 7, 7, 3, 1, 3, 5, 5, 3, 1, 5, 3, 3, 1,…
Parecen recorrer todos los números impares. En nuestra lista sólo se llega hasta el 13 ¿Aparecerán al final todos?¿Podrá ser cualquier impar diferencia entre un número par y su próximo primo si ambos suman otro primo?
Hemos implementado una función que a cada número impar (no analizamos en ella si lo es o no) le hace corresponder el mínimo número natural que sumado con él produce un primo en el que la suma de ambos también es primo
Public Function difconprim(n)
Dim i, d, dd, p
i = 2
d = 0
While d = 0 And i < 10 ^ 6
p = primprox(i)
If esprimo(p + i) And p - i = n Then d = i
i = i + 2
Wend
difconprim = d
End Function
Recorre los números pares (variable i) hasta un tope de 10^6 (para números mayores habría que aumentarlo) y estudia si el próximo primo p cumple que p+i es primo y la diferencia entre ambos es el número n dado. No está completo ni optimizado el código. Sólo pretendemos establecer una conjetura. Aquí tienes la tabla para los primeros números impares:
Por ejemplo, para la diferencia 21 el primer número par que la produce es el 1130, en el que se dan estos datos:
,
Si a 1130 le sumamos la diferencia 21 se convierte en el número primo 1151, cuya suma con el anterior 1130+1151=2281, también es un número primo.
Puedes construirte un esquema similar. La función PRIMPROX la encontrarás en la hoja Conjeturas referenciada más arriba. El problema que se presenta es que las hojas de cálculo se ralentizan cuando el valor buscado tiene muchas cifras. Así, entre los números impares menores que 100 la solución mayor es la correspondiente al 97, que es nada menos que 3240996. Lo puedes ver en este esquema:
Para paliar esta lentitud hemos realizado también la búsqueda con PARI
difconprim(n)={local(i=2,d=0,p=2);while(d==0&&i<10^7,p=nextprime(i);if(isprime(i+p)&&(p-i==n),d=i);i+=2);return(d)}
{k=1;while(k<100,write("final.txt",k," ",difconprim(k));k+=2)}
Si tienes preparado en la misma carpeta un archivo de nombre “final.txt”, este código te crea en él un listado similar al que sigue (hemos recortado la parte de los números anteriores a 100)
Parece que nos podemos atrever a expresar una conjetura:
Cualquier número impar es diferencia entre cierto número y su próximo primo, en el caso en el que la suma de ambos también sea prima.
jueves, 8 de enero de 2015
Sucesión de las vacas de Narayana
Proseguimos nuestro estudio de sucesiones recurrentes de tercer orden con la ideada por el hindú Narayana (siglo XIV), con la que intentaba calcular generaciones de vacas, al igual que Fibonacci lo hacía con conejos. Planteó lo siguiente:
Una vaca tiene anualmente una cría. Cada una de ellas, cuando ya es novilla a los cuatro años, también tiene una cría anual ¿Cuántas vacas habrá a los 20 años?
En libros y webs de Historia de las Matemáticas puedes encontrar cómo lo resolvió a partir de sumas de números consecutivos, pero a nosotros nos interesa en este momento su carácter de sucesión recurrente.
En efecto, supongamos que nace la vaca en el año 1. Se pasará tres años sin parir, por lo que la sucesión deberá comenzar con 1, 1, 1,… Al cuarto año tiene una cría, luego ya serán 2 vacas, y, como pare cada año, los siguientes números serán 3 y 4. Cuando la cría tiene 4 años, tendrá otra a su vez, y serán 6. En general, en cada generación habrá tantas vacas como las que haya actuales, más todas aquellas que ya tengan cuatro años, lo que nos lleva a que
xn=xn-1+xn-3
Según esto, la sucesión de Narayana es recurrente de tercer orden, y entra dentro del ciclo que estamos desarrollando.
Para entender mejor cómo organizaremos el estudio, puedes leer la entrada
http://hojaynumeros.blogspot.com.es/2014/11/sucesion-de-perrin.html
La definición de la sucesión, como todas las de su clase, se basa en dar la fórmula de recurrencia y las condiciones iniciales. Según lo explicado más arriba, son estas:
Condiciones iniciales: x0=1, x1=1, x2=1 Ecuación de recurrencia: xn=xn-1+xn-3
Acudiendo a la herramienta que usamos en esta serie (http://hojamat.es/sindecimales/aritmetica/herramientas/herrarit.htm#recurre2) tendremos:
Planteamiento:
Resultado
Coincide con la sucesión publicada en http://oeis.org/A000930
1, 1, 1, 2, 3, 4, 6, 9, 13, 19, 28, 41, 60, 88, 129, 189, 277, 406, 595, 872, 1278, 1873, 2745,…
Ecuación característica
La ecuación característica correspondiente será X3-x2-1=0. Con el botón Resolver de esa hoja obtienes las tres soluciones de la ecuación, una real y dos complejas
Con wxMaxima:
Esta situación la hemos visto en sucesiones anteriores, y es que X(n) debe coincidir con la suma de las tres raíces elevadas a n, pero como el módulo de las complejas es menor que 1, X(n) se acercará para valores grandes a 1,46557^n (ver en http://oeis.org/A000930 una aproximación más precisa), y que también X(n+1)/X(n) se acercará a ese valor 1,46557. Esto segundo lo puedes ver con la hoja creando una columna de cocientes:
Función generatriz
Al igual que en las sucesiones recurrentes que ya hemos estudiado, podemos considerar una función generatriz para esta. Es la siguiente:
La comprobamos con PARI y vemos que su desarrollo contiene la sucesión en los coeficientes.
write("sucesion.txt",taylor(1/(1-x-x^3),x,20))
1 + x + x^2 + 2*x^3 + 3*x^4 + 4*x^5 + 6*x^6 + 9*x^7 + 13*x^8 + 19*x^9 + 28*x^10 + 41*x^11 + 60*x^12 + 88*x^13 + 129*x^14 + 189*x^15 + 277*x^16 + 406*x^17 + 595*x^18 + 872*x^19 + O(x^20)
En cada sucesión que estudiamos nos gusta destacar algún tipo de propiedades. En la de Narayana llaman la atención las de tipo combinatorio.
Relación con los números combinatorios
Se X(n) equivale al número de composiciones (particiones con orden) del número n en sumandos 1 y 3. Por ejemplo, si X(7)=9, es porque existen 9 particiones ordenadas de este tipo del número 7: {1, 3, 3} {3, 1, 3} {3, 3, 1} {1, 1, 1, 1, 3} {1, 1, 1, 3, 1} {1, 1, 3, 1, 1} {1, 3, 1, 1, 1} {3, 1, 1, 1, 1} {1, 1, 1, 1, 1, 1, 1}
Con nuestra hoja “Cartesius” (no publicada) lo hemos reproducido fácilmente, con las instrucciones siguientes, que no explicaremos ahora:
XRANGO=7
XT=1,3
SUMA=7
REPITE
Aquí tenemos el resultado:
Es otra forma de ver la recurrencia: estas nueve composiciones han resultado de añadir un 3 a las correspondientes a n=4, que son : {1, 3} {3, 1} y {1, 1, 1, 1} y añadir un 1 a las correspondientes a n=6: {3, 3} {1, 1, 1, 3} {1, 1, 3, 1} {1, 3, 1, 1} {3, 1, 1, 1} {1, 1, 1, 1, 1, 1}, con lo que se cumple que C(7)=C(6)+C(4). Esto ocurre para todo valor N, porque siempre podemos repartir sus composiciones entre las que terminan en 1 y las que lo hacen en 3, resultando así C(n-1) y C(n-3).
Desarrollo con binomiales
Si observas la tabla del desarrollo de X(7), entenderás que está formada por permutaciones de dos elementos (1 y 3) tomados 3, 5 o 7 veces. Las permutaciones con repetición de dos elementos equivalen a números combinatorios, por lo que podemos plantear:
En general se cumplirá:
Esto nos da un procedimiento para calcular directamente cualquier elemento de la sucesión de Narayana. La función en Basic de hoja de cálculo te lo resuelve:
Public Function narayana(n)
Dim p, q, t, s, i
p = 0: q = n: t = 1
While p < q - 1
q = q - 2: p = p + 1 ‘Va incrementando el índice inferior y restando 2 al superior
s = 1: For i = 0 To p - 1: s = s * (q - i) / (p - i): Next i ‘Calcula el número combinatorio
t = t + s ‘Suma los números combinatorios
Wend
narayana = t
End Function
Con ella podemos responder a la cuestión de Narayana, y es que a los 20 años habría 1278 vacas.
Suscribirse a:
Entradas (Atom)