Loading [MathJax]/extensions/TeX/mathchoice.js

8 votos

Calcular el máximo de la secuencia de Collatz

Consideremos la famosa función de Collatz T(n)={(3n+1)/2 if n is odd,n/2 if n is even.

Una de las técnicas de aceleración más importantes de la prueba de convergencia es el uso de un tamiz (prueba k bits menos significativos de n el tamiz tiene el tamaño de 2k entradas), y probar sólo los números que no se unen a la ruta de un número inferior en k pasos. Esta técnica está muy explicada, por ejemplo, aquí o aquí .

Por ejemplo, considere el tamiz para k=2 y en particular los números de la forma 4n+1 que se unen a la ruta de 3n+1 en dos pasos. Su camino es 4n+16n+23n+1.

Lo que no entiendo es cómo se puede utilizar esto para buscar el número más alto que aparece en la secuencia ( registros de la trayectoria en la terminología de Eric Roosendaal). El tamiz corta el cálculo antes de la computación de cualquier valor intermedio (que en realidad puede ser el máximo, como el valor 6n+2 en el ejemplo anterior). ¿Cómo puedo detectar que 4n+1 lleva a un máximo si no hay 6n+2 ¿se calcula? Comprobación de la trayectoria de 3n+1 ya no tiene sentido porque el máximo 6n+2 se produce antes de este plazo. ¿Me he perdido algo?

5voto

Collag3n Puntos 26

Cita: "Como k aumenta, la búsqueda sólo necesita comprobar aquellos residuos b que no se eliminan con valores más bajos de k "

Por ejemplo, el residuo 15. Sobrevive \mod 2^5 pero se elimina al tamizar 2^7 por lo que cualquier valor x\equiv 15 \mod 2^7 no se buscará más por k>7

El residuo 15 se eliminó porque alcanzó un valor inferior a sí mismo \mod 2^7 . Esto significa que estos números no pueden alcanzar valores más altos, más tarde con k>7 que no se alcanzaron (con una menor k ) por el valor inferior que acaban de alcanzar.

2voto

Collag3n Puntos 26

(Notación: residuo n_0\mod 2^{\lceil i \log_23\rceil} = residuo b\mod2^k de su página wiki)

Sobre el "descartado" 5 que alcanza el máximo 8 (o 16), ya alcanzado por el "superviviente" 3:

  • Uno de los desechado es la secuencia V-Shape inversa que se eleva para i pasos de f(x)=\frac{3x+1}{2} y luego baja por debajo del valor inicial por la división sucesiva por 2 ( Ver aquí ). De todas las secuencias descartadas 2^{\lceil i \log_23\rceil}n+n_0 para un determinado n , este es el tipo de secuencia que potencialmente alcanza el valor más alto: (2^{\lceil i \log_23\rceil}n+n_0+1)\frac{3^i}{2^{i}}-1

Nota: n_0\leq 2^{\lceil i \log_23\rceil}-3 y el valor exacto se puede encontrar en el enlace anterior

por ejemplo, con 4n+1=5 donde n_0=1 , i=1 , n=1 que alcanza 8 antes de bajar a 4<5

  • Uno de los sobreviviendo a secuencia es la línea recta que sube por toda la k={\lceil i \log_23\rceil} pasos de f(x)=\frac{3x+1}{2} . De todas las secuencias supervivientes para un n Esta es la secuencia (a partir de 2\cdot2^{\lceil i \log_23\rceil}n-1 ) que alcanza el valor más alto (limitado a k={\lceil i \log_23\rceil} pasos): 3^{\lceil i \log_23\rceil}(n+1)-1

Nota: aquí siempre tenemos n_0= 2^{\lceil i \log_23\rceil}-1

por ejemplo, con 4n+3=7 donde i=1 , n=1 que alcanza 17 (en 2 pasos), o con n=0 : 3 llega a 8

Ahora es fácil demostrar que el mayor valor que puede alcanzar una secuencia descartada en n es menor (o igual) que el valor más alto ya alcanzado por una secuencia superviviente en n-1

por ejemplo, con el descarte 4(1)+1=5 llega a 8 que ya fue alcanzada por los supervivientes 4(1-1)+3=3

El valor más alto que sobrevive en n-1 es mayor que el valor descartado en n ?

3^{\lceil i \log_23\rceil}n-1 \geq (2^{\lceil i \log_23\rceil}n+n_0+1)\frac{3^i}{2^{i}}-1 y con n_0< 2^{\lceil i \log_23\rceil}-1 Sólo tenemos que demostrar que 3^{\lceil i \log_23\rceil}n-1 \geq (2^{\lceil i \log_23\rceil}(n+1))\frac{3^i}{2^{i}}-1 \Big(\frac{3}{2}\Big)^{\lceil i \log_23\rceil}n \geq \Big(\frac{3}{2}\Big)^i(n+1) \Big(\frac{3}{2}\Big)^{\lceil i \log_2\frac{3}{2}\rceil} \geq 1+\frac{1}{n} lo que ya es cierto para n-1=0 cuando i\geq 3 (comprobado manualmente para i=1 y i=2 utilizando el valor exacto de n_0 en esos casos)

por ejemplo, con n-1=0 : desechado 32n+23 llega a 188 pero sobreviviendo 32(n-1)+31 ya se ha alcanzado 242

Nota: puedes multiplicar ambos lados por 2 para obtener el máximo "real" (16 en lugar de 8).

La idea clave es que incluso si la forma V inversa descartada en n estaba en el residuo más alto posible n_0= 2^{\lceil i \log_23\rceil}-3 alcanzaría un valor menor que la línea recta en n-1 (siempre con residuos n_0= 2^{\lceil i \log_23\rceil}-1 ).

Esto significa que las rutas de registro siempre se encuentran en el residuo b\mod2^k (en otras palabras, en 2^k\cdot n+b con n=0 )

EDITAR:

aún más, al tamizar 2^{k+1} Valores de la tabla: valores inferiores a 2^k que están cayendo no pueden producir nuevos registros de ruta (obviamente), pero el valor por encima de 2^k que no sobreviven después de 2^{k+1} tamiz son ahora conocidos, y allí el máximo sigue siendo el RHS arriba: de hecho la condición n_0+2^{\lceil i \log_23\rceil}< 2^{\lceil i \log_23\rceil+1}-1 o n_0< 2^{\lceil i \log_23\rceil}-1 no cambian, y el valor de i (escalones de subida) ni desde el último paso fue una caída por debajo del valor inicial.

Por lo tanto, aunque el valor máximo en el LHS no suba más en el paso k+1 La cantidad de dinero que se puede gastar en un proyecto es mayor (la ecuación se mantendría igual).

Esto significa que las nuevas rutas de registro sólo se encuentran en sobreviviendo a residuo b\mod2^k

No es necesario comprobar el residuo desechado en absoluto, ni siquiera dentro del rango del tamiz.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X