Guys,

I decided to post the solution,

The Hardest Logic Puzzle Ever

“ Three gods A, B, and C are called, in some order, True, False, and Random. True always speaks truly, False always speaks falsely, but whether Random speaks truly or falsely is a completely random matter. Your task is to determine the identities of A, B, and C by asking three yes-no questions; each question must be put to exactly one god. The gods understand English, but will answer all questions in their own language, in which the words for yes and no are 'da' and 'ja', in some order. You do not know which word means which. ”

Boolos provides the following clarifications:[1]

“ It could be that some god gets asked more than one question (and hence that some god is not asked any question at all).

What the second question is, and to which god it is put, may depend on the answer to the first question. (And of course similarly for the third question.)

Whether Random speaks truly or not should be thought of as depending on the flip of a coin hidden in his brain: if the coin comes down heads, he speaks truly; if tails, falsely.

Random will answer 'da' or 'ja' when asked any yes-no question.[1]

”

Hence whenever you ask them a yes-no question, they reply 'Bal' or 'Da' - one of which means yes and the other no. The trouble is that we do not know which of 'Bal' or 'Da' means yes and which means no". There are other related puzzles in The Riddle of Scheherazade (see especially, p. 114).

More generally this puzzle is based on Smullyan's famous Knights and Knaves puzzles (e.g. on a fictional island, all inhabitants are either knights, who always tell the truth, or knaves, who always lie. The puzzles involve a visitor to the island who must ask a number of yes/no questions in order to discover what he needs to know).

A version of these puzzles was popularized by a scene in the 1980's fantasy film, Labyrinth. There are two doors with two guards. One guard lies and one guard doesn't. One door leads to the castle and the other leads to "certain death". The puzzle is to find out which door leads to the castle by asking one of the guards one question. In the movie Sarah does this by asking "Would he tell me that this door leads to the castle?".

[edit] The solution

Boolos provided his solution in the same article in which he introduced the puzzle. Boolos states that the "first move is to find a god that you can be certain is not Random, and hence is either True or False".[1] There are many different questions that will achieve this result. One strategy is to use complicated logical connectives in your questions (either biconditionals or some equivalent construction).

Boolos' question was:

Does 'da' mean yes if and only if you are True if and only if B is Random?[1]

Equivalently:

Are an odd number of the following statements true: you are False, 'ja' means yes, B is Random?

The puzzle's solution can be simplified by using counterfactuals.[2][3] The key to this solution is that, for any yes/no question Q, asking either True or False the question

If I asked you Q, would you say 'ja'?

results in the answer 'ja' if the truthful answer to Q is yes, and the answer 'da' if the truthful answer to Q is no. The reason this works can be seen by looking at the eight possible cases.

Assume that 'ja' means yes and 'da' means no.

(i) True is asked and responds with 'ja'. Since he is telling the truth the truthful answer to Q is 'ja', which means yes.

(ii) True is asked and responds with 'da'. Since he is telling the truth the truthful answer to Q is 'da', which means no.

(iii) False is asked and responds with 'ja'. Since he is lying it follows that if you asked him Q he would instead answer 'da'. He would be lying, so the truthful answer to Q is 'ja', which means yes.

(iv) False is asked and responds with 'da'. Since he is lying it follows that if you asked him Q he would in fact answer 'ja'. He would be lying, so the truthful answer to Q is 'da', which means no.

Assume 'ja' means no and 'da' means yes.

(v) True is asked and responds with 'ja'. Since he is telling the truth the truthful answer to Q is 'da', which means yes.

(vi) True is asked and responds with 'da'. Since he is telling the truth the truthful answer to Q is 'ja', which means no.

(vii) False is asked and responds with 'ja'. Since he is lying it follows that if you asked him Q he would in fact answer 'ja'. He would be lying, so the truthful answer to Q 'da', which means yes.

(viii) False is asked and responds with 'da'. Since he is lying it follows that if you asked him Q he would instead answer 'da'. He would be lying, so the truthful answer to Q is 'ja', which means no.

Using this fact, one may proceed as follows.[2]

Ask god B, "If I asked you 'Is A Random?', would you say 'ja'?". If B answers 'ja', then either B is Random (and is answering randomly), or B is not Random and the answer indicates that A is indeed Random. Either way, C is not Random. If B answers 'da', then either B is Random (and is answering randomly), or B is not Random and the answer indicates that A is not Random. Either way, A is not Random.

Go to the god who was identified as not being Random by the previous question (either A or C), and ask him: "If I asked you 'Are you True?', would you say 'ja'?". Since he is not Random, an answer of 'ja' indicates that he is True and an answer of 'da' indicates that he is False.

Ask the same god the question: "If I asked you 'Is B Random?', would you say 'ja'?". If the answer is 'ja' then B is Random; if the answer is 'da' then the god you have not yet spoken to is Random. The remaining god can be identified by elimination.

[edit] Random's behaviour

Most readers of the puzzle assume that Random will provide completely random answers to any question asked of him; however, the puzzle does not actually state this. In fact, Boolos' third clarifying remark explicitly refutes this assumption.[2]

Whether Random speaks truly or not should be thought of as depending on the flip of a coin hidden in his brain: if the coin comes down heads, he speaks truly; if tails, falsely.

This says that Random randomly acts as a liar or a truth-teller, not that Random answers randomly.

A small change to the question above yields a question which will always elicit a meaningful answer from Random. The change is as follows:

If I asked you Q in your current mental state, would you say 'ja'?[2]

We have effectively extracted the truth-teller and liar personalities from Random and forced him to be only one of them. This completely trivializes the puzzle since we can now get truthful answers to any questions we please.

1. Ask god A, "If I asked you 'Are you Random?' in your current mental state, would you say 'ja'?"

If A answers 'ja', then A is Random:

2a. Ask god B, "If I asked you 'Are you True?', would you say 'ja'?"

If B answers 'ja', then B is True and C is False.

If B answers 'da', then B is False and C is True. In both cases, the puzzle is solved.

If A answers 'da', then A is not Random:

2b. Ask god A, "If I asked you 'Are you True?', would you say 'ja'?"

If A answers 'ja', then A is True.

If A answers 'da', then A is False.

3. Ask god A, "If I asked you 'Is B Random?', would you say 'ja'?"

If A answers 'ja', then B is Random, and C is the opposite of A.

If A answers 'da', then C is Random, and B is the opposite of A.

We can modify Boolos' puzzle so that Random is actually random by replacing Boolos' third clarifying remark with the following.

Whether Random says 'ja' or 'da' should be thought of as depending on the flip of a coin hidden in his brain: if the coin comes down heads, he says 'ja'; if tails, he says 'da'.

With this modification, the puzzle's solution demands the more careful god-interrogation given at the end of the The Solution section.

[edit] Exploding god-heads

In A simple solution to the hardest logic puzzle ever,[2] B. Rabern and L. Rabern develop the puzzle further by pointing out that it is not the case that 'ja' and 'da' are the only possible answers a god can give. It is also possible for a god to be unable to answer at all. For example, if the question "Are you going to answer this question with the word that means no in your language?" is put to True, he cannot answer truthfully. (The paper represents this as his head exploding, "...they are infallible gods! They have but one recourse – their heads explode") Allowing the "exploding head" case gives yet another solution of the modified puzzle (modified so that Random is actually random) and introduces the possibility of solving the original puzzle (unmodified) in just two questions rather than three. In support of a two-question solution to the puzzle, the authors solve a similar simpler puzzle using just two questions.

Three gods A, B, and C are called, in some order, Zephyr, Eurus, and Aeolus. The gods always speak truly. Your task is to determine the identities of A, B, and C by asking three yes-no questions; each question must be put to exactly one god. The gods understand English and will answer in English.

Note that this puzzle is trivially solved with three questions (just ask away!). To solve the puzzle in two questions, the following lemma is proved.

Tempered Liar Lemma. If we ask A "Is it the case that {[(you are going to answer 'no' to this question) AND (B is Zephyr)] OR (B is Eurus) }?", a response of 'yes' indicates that B is Eurus, a response of 'no' indicates that B is Aeolus, and an exploding head indicates that B is Zephyr. Hence we can determine the identity of B in one question.

Using this lemma it is simple to solve the puzzle in two questions. A similar trick (tempering the liar's paradox) can be used to solve the original puzzle in two questions.