Hace unos días, tuve una breve conversación con mi hija Leia de las que hacen pensar... Fue más o menos así:
— Papá, ¿qué es un diploma?
— Pues es un papel que te dan cuando consigues algo.
— Por ejemplo... ¿cuando consigues un diploma?
— Mmm... Sí, supongo que sí. Pero eso sería algo recursivo...
— Papá, ¿qué es recursivo?
— Leia, a dormir ahora mismo.
Estaba claro que este primer asalto lo había perdido yo. Uno a cero para Leia. Pero durante estos días he estado pensando y esta mañana le he dicho que le iba a explicar lo que es la recursividad jugando al Hiperjuego, un juego que esconde una curiosa paradoja matemática.
El Hiperjuego
El Hiperjuego es un juego por turnos con unas reglas muy sencillas. El primer jugador escoge un juego normal para que el segundo jugador empiece a jugarlo. A partir de ahí, se juega siguiendo las reglas del juego elegido.
Lógicamente, Leia me ha preguntado qué es un juego normal. Le he explicado que un juego normal es uno que siempre acaba después de un número finito de movimientos. Por ejemplo, son juegos normales el ajedrez o el tres en raya, pero no sería un juego normal el de piedra, papel o tijera, ya que puedes estar jugando toda la vida y que no se acabe nunca.
Una partida del Hiperjuego podría ser así:
- Yo empiezo escogiendo el juego del ajedrez.
- Leia hace el primer movimiento y mueve un peón.
- Seguimos jugando hasta que el juego acaba.
¿Y qué tiene que ver esto con la recursividad? Pues imaginemos que la partida es la siguiente:
- Yo escojo mi juego favorito: el Hiperjuego.
- Leia hace el primer movimiento (escoger un juego) y elige el Hiperjuego.
- Yo hago el primer movimiento de su Hiperjuego y escojo otra vez el Hiperjuego.
- Continuamos así indefinidamente...
Este sería un proceso recursivo, ya que mientras lo estamos ejecutando, se invoca a sí mismo y vuelve a empezar.
Es algo parecido a lo que pasa si buscas en Google recursividad. El Sr. Google, que es muy gracioso, lo primero que te indica es Quizás quisiste decir: recursividad. Por supuesto, si clicas ahí, vuelve a salir lo mismo...
La paradoja del Hiperjuego
Además de ejemplificar un proceso recursivo, el Hiperjuego encierra una interesante paradoja, porque... ¿es realmente el Hiperjuego un juego normal?
Supongamos que sí lo es. En este caso, el último ejemplo sería válido y tendríamos un caso en el que no podemos acabarlo en un número finito de movimientos, concluyendo que realmente no es un juego normal.
Ahora supongamos que el Hiperjuego no es normal. En este caso, en mi primera jugada no puedo elegir el Hiperjuego; debo elegir un juego normal. Pero si elijo un juego normal, el juego terminará después de un número finito de movimientos. Por lo tanto, el Hiperjuego es un juego normal.
Esta fascinante paradoja se la debemos al matemático americano William Zwicker.
Después de mi detallada explicación, estaba prácticamente seguro de que Leia me iba a preguntar qué es una paradoja. Pero no ha sido así. Me ha mirado con cara de póker y me dicho lentamente:
— Papá, ¿jugamos a otro juego más divertido?
— Bueno... ¿No te interesa esto que te he explicado?
— No.
Dos a cero para Leia.
No hay comentarios :
Publicar un comentario