martes, 22 de abril de 2008

Solución al Puzzle lógico más difícil del mundo


Ayer introducía el enunciado del Puzzle lógico más difícil del mundo. Hoy veremos cuál es la solución, y sobre todo, las pistas que hacen falta para enfrentar una situación de la que desconocemos casi todo. Por comodidad vuelvo a poner aquí el enunciado:
Tres dioses llamados Verdad, Mentira y Aleatorio. Debes averiguar quién es cada uno. Sólo pueden responder 'sí' o 'no'. Y tú sólo puedes hacer tres preguntas en total (puedes hacer dos al mismo dios, una a cada uno, o las tres al mismo dios; pero en total tres preguntas). Los dioses entienden tus preguntas, pero lamentablemente responderán 'sí' o 'no' en su propio idioma así que dirán 'ja' y 'da' pero tú no sabes qué significan. Aleatorio no responde de forma aleatoria, sino que a cada pregunta 'cambia de estado': pasa de mentir a decir la verdad y tú no sabes de qué estado parte.
Para empezar, deberíamos averiguar algo que nos dé seguridad para progresar a partir de ahí. Por ejemplo saber cuál es Verdad o Mentira para a partir de ese dios, sacar más información de los otros.

Según el Departamento de Filosofía de la Universidad de California, la primera pregunta se haría al primer dios:
¿'Da' significa 'sí' si y solo si tú eres Verdad si y solo si el dios que está a tu lado es Aleatorio?
Intentamos meter un bucle if-then encadenado en la pregunta para obtener una respuesta fiable (que no deje flecos ni interpretaciones en la respuesta). Esta forma de encarar un acertijo no es muy instintiva, la solución más normal para resolver el primer paso del puzzle sería introducir contrafactuales (usaremos esto a partir de ahora). Los contrafactuales hacen referencia a cosas no ocurridas y son unas útiles herramientas para construir universos no existentes. Es, digamos, el mundo de las posibilidades no realizadas.

Sea Q una pregunta cuya respuesta verdadera es 'sí' o 'no'. Le preguntamos a un dios no Aleatorio (que puede ser el mismo al que le realizamos la primera pregunta o no) lo siguiente.
¿Si te preguntara Q, responderías 'ja'?
Si responde 'ja' diría la verdad y por tanto ya entenderíamos el idioma de los dioses. Ja=sí y Da=no. ¿Por qué? Analicemos las posibles respuestas según la posible identidad del dios en cuestión.

Supongamos que ja=sí y da=no.
  • Le preguntamos a Verdad y responde 'ja'. Como dice la verdad y la respuesta a Q es sí, ja=sí.
  • Le preguntamos a Verdad y responde 'da'. Como dice la verdad y la respuesta a Q es no, entonces ja=sí.
  • Le preguntamos a Mentira y responde 'ja'. Como miente él pensaría en responder a Q con un 'da' pero a la pregunta que está por encima tendría que volver a mentir luego diría 'ja' que sería 'sí'.
  • Le preguntamos a Mentira y responde 'da'. Como miente, pensaría que la respuesta a Q es 'ja', pero habría una doble mentira, la respuesta correcta a Q es 'da', que significaría 'no'.
Ahora supongamos que ja=no y da=sí.
  • Le preguntamos a Verdad y responde 'ja', como dice la verdad la respuesta correcta a Q es 'da' que significa sí.
  • Le preguntamos a Verdad y responde 'da'. Como dice la verdad, la respuesta correcta a Q es 'ja' que significa no.
  • Le preguntamos a Mentira y responde 'ja'. Respondería a Q con un 'ja', pero la respuesta a la pregunta sería 'da' que significa sí.
  • Le preguntamos a Mentira y responde 'da'. Respondería a Q con un 'da', pero la respuesta a la pregunta sería 'ja' que significa no.
Algo intrincado. Tengamos siempre presente que estamos suponiendo significados y que hacemos una pregunta sobre una pregunta.



Teniendo presente esto, le preguntamos al segundo dios:
¿Si te preguntara si el primer dios es Aleatorio, responderías 'ja'?
Si responde 'ja', querría decir que o bien ese mismo dios es Aleatorio (está respondiendo al tun-tun), o bien que no es Aleatorio y que el primero sí lo es. De cualquiera de las dos formas, sabríamos que el tercer dios no es Aleatorio.

Si responde 'da', podría indicar que o bien él mismo es Aleatorio o que el primero no es Aleatorio, en cualquier caso, el primero no sería Aleatorio.

Ahora dirígete al dios identificado como no Aleatorio (el primero o el tercero):
¿Si te preguntara si eres Verdad, responderías 'ja'?
Si dice 'ja' es que es Verdad, si dice 'da' es que es Mentira.

Sabiendo esto ya casi lo tenemos. Volvemos a preguntar a este dios (cuya identidad ya sabemos):
¿Si te preguntara si el segundo es Aleatorio, dirías 'ja'?
Si la respuesta es ' ja ' entonces el segundo es Aleatorio; si la respuesta es ' da ' entonces el dios con el que todavía no has hablado es Aleatorio. El dios restante puede ser identificado por eliminación.

Bueno, el puzzle se puede resolver también con tan solo dos preguntas.

9 comentarios:

Unknown dijo...

ok, ahora vayamos a lo importante:

en qué/cuando/porqué debería preguntarles toda esa mierda?

Pablo Otero dijo...

Es un problema de matemáticas :-)

Anónimo dijo...

Chungo. No creo que existan tres dioses con las ideas tan claras. Y si Verdad solo dice la verdad con un intervalo de confianza del 95%, Mentira solo miente en un 95% y Aleatorio tiene 50% de probabilidad de contestar cualquier cosa (puede contestar siempre verdad, siempre mentira, una cosa y luego otra...es el más facil de identificar). No puede existir cualquier respuesta que no sea verdad, mentira o aleatoria. Una cosa más: a un dios no se le puede realizar dos veces la misma pregunta (seria blasfemia). El numero mínimo de preguntas deberia ser menor de 42... Creo que tiene algo parecido Malba Tahan (el de los Sudokus cuando todavia no se llamaban Sudokus, sino cuadrados magicos)...pero es un tipo que murió en 1974!!

Pablo Otero dijo...

Anónimo:

El comportamiento de los tres dioses es el siguiente:

-Verdad dice la verdad el 100% de las veces.
-Mentira dice la mentira el 100% de las veces.
-Aleatorio comienza diciendo la verdad o la mentira y a la siguiente pregunta cambia (o sea VFV o FVF).

aanodino dijo...

1.- ¿Si te preguntara Q, responderías 'ja'?
2.- ¿Si te preguntara si el primer dios es Aleatorio, responderías 'ja'?
3.- ¿Si te preguntara si eres Verdad, responderías 'ja'?
4.- ¿Si te preguntara si el segundo es Aleatorio, dirías 'ja'?

No es que dude de tu planteamiento lógico (al contrario, me duele un poco la cabeza), pero el enunciado explicita que tienes solo 3 preguntas. ¿Por qué, entonces, se formulan 4? He leído dos veces todo y no parece que haya contado mal, sino que se omite el que se han realizado 4 preguntas. Es por ello que en vez de marearme más te pregunto directamente, a fin de que me aclares la duda antes de que explote.
Saludos.

Pablo Otero dijo...

Anodino:

Las preguntas que valen son las tres últimas. La anterior es un ejemplo de cómo interpretar las respuestas a ese tipo de preguntas.

aanodino dijo...

Muchas gracias por tu pronta respuesta, ya me duele menos la cabeza :)

Ahora me pica la curiosidad, ¿cómo se resolvería en dos preguntas? ...Vaya, ya me empieza a doler de nuevo.

Un abrazo.

Pablo Otero dijo...

Hace cuatro años y medio que escribí la entrada, la verdad es que no me acuerdo de dónde saqué la idea de que podía resolverse en dos preguntas. Pero vamos, supongo que serían preguntas con muchas precondiciones en cascada, del estilo "si eres Verdad, el que está a tu lado es Mentira, no me mientes y...". Irían por ahí los tiros.

Dario dijo...

Yo creo que han hecho demasiado lio pudiendolo hacer simple, yo no pude acertar el acertijo en 3 pero si en 4 sencillas preguntas
1 - Vas a decir la verdad en la proxima pregunta?
2 - 2+2 es = a 4?
Si responde a las dos con la misma palabra (Ja-ja o da-da) significa que es el dios honesto o que es el dios aleatorio que contesto verdad y luego mentira, por ende la pregunta 3 sera verdad
En caso de no coincidir las respuestas (Ja-da o da-ja) se trataria del dios falso o del dios aleatorio que contesto mentira, luego verdad y la 3er pregunta sera mentira, en cualquiera de los casos la 3er pregunta nos dara una certeza
3 - como se dice "si" en su lenguaje?
Con esto sabremos exactamente con que dios estamos hablando y comprenderemos el idioma, ej: si las 3 respuestas fueron da-da-da entonces da=si y el dios con el que hablamos es el honesto
Da-da-ja indica ja=si dios aleatorio
El resto de las variables es facilmente calculable y nos deja la 4ta pregunta
4 - es aquel dios el dios x?
Con esta ultima definimos dos dioses por ende el tercero y el lenguaje