¿Cuál es una explicación intuitiva de por qué la función de castor ocupado crece tan rápido?

¿Alguna vez has oído hablar del código golf ?

En el golf normal, intentas meter una pelota en 18 hoyos diferentes, en orden, utilizando el menor número de golpes posible.

Del mismo modo, en code golf, intenta escribir un programa informático que logre un objetivo específico en la menor cantidad de caracteres posible.

Hay un montón de comunidades en línea dedicadas al golf de código, por ejemplo

  • Programación de puzzles y código de intercambio de pila de golf
  • Código de golf, cuanto más corto, mejor! • / r / codegolf
  • CodeFights

Tomemos prestado un ejemplo del primer sitio aquí. El usuario George Gibson lanzó un desafío para escribir un programa de computadora que, dada la entrada mal capitalizada como

EL SALTO DEL ZORRO MARRÓN RÁPIDO OFRECE EL TIEMPO PEREZOSO El tiempo vuela como un pantano

lo rectificará para que se parezca más

El rápido zorro marrón salta sobre el perro perezoso. El tiempo vuela como una flecha.

Podría escribir un programa para hacer algo como esto. Probablemente se trataría de una página más o menos, si calculo correctamente. El usuario muddyfish, por otro lado, escribió un programa (en su propio lenguaje de programación Pyke ) que tiene exactamente quince caracteres de longitud:

\ .cFl8l5DI \. + (J

¡Tenga en cuenta cuánto debe saber esta pequeña pieza de código! No es suficiente saber que debe tener letras minúsculas en el medio de las palabras; también tiene que saber que ese período divide la cadena en dos oraciones, que necesitan un espacio entre ellas, y que la primera letra de la siguiente oración debe comenzar con una letra mayúscula. Incluso tenía que saber agregar el período que dejé al final de la segunda oración. Todo lo que está codificado en algún lugar de esos quince caracteres.

El resultado de esto es que, si tienes mucho cuidado con cómo hacerlo, puedes decirle a una computadora que haga algunas cosas muy sofisticadas con un número muy pequeño de instrucciones. En el caso de un programa Busy Beaver, es aún más fácil porque no le importa en absoluto lo que hace la computadora, siempre y cuando se requiera mucho tiempo (pero finito) para hacerlo.