Conjetura de Collatz

Collatz en base 6

Un programa para operar sobre la conjetura de Collatz en base seis. No implementa la multiplicación por tres; en lugar de eso multiplica por seis y divide por dos. Un posible cambio podría ser retirar la división por dos y sustituirla por multiplicar por tres y dividir entre seis. Otra cosa que posiblemente hay que mejorar es retirar las colas de ceros que se acumulan; aunque el número de ceros puede dar información adicional.

Nótese que en ningún momento empleo números en el sentido convencional del término.

     [[Seguir leyendo]]

Collatz, revisado

Variante a la conjetura de Collatz.

Los siguientes números tienen una propiedad: la cantidad de pasos que requieren (en versión 'económica', hacer par y dividir por 2 es un solo paso) para llegar a 1 es mayor que el número.

A simple vista (machacando números) parece que son todos los enteros positivos que cumplen con esa propiedad. ¿Será eso cierto?

1,3,7,9,27,31,41,47,54,55,62,63

Actualización: Si se toma 'mayor o igual' en lugar que 'mayor' la lista es:

1,3,6,7,9,27,31,41,47,54,55,62,63,73

El código en Haskell que estoy usando es el siguiente:    [[Seguir leyendo]]

Algoritmo booleano para Collatz

Para determinar si un entero positivo n finaliza empleando las reglas de la conjetura de Collatz se pueden aprovechar algunas propiedades de los números binarios; y los binarios tienen equivalencias con los booleanos. Por lo tanto parece de lo más natural intentar aplicar directamente operaciones lógicas como reglas.

El conjunto de reglas requiere tres operaciones básicas: (\ x -> x+1), (\ x -> x/2), y (\ x -> 3*x).    [[Seguir leyendo]]

Distribuir contenido
Powered by Drupal, an open source content management system