I was trying to solve this puzzle but I believe I have run into a paradox.Found the puzzle in https://io9.gizmodo.com/can-you-solve-the-hardest-logic-puzzle-in-the-world-1642492269

"There are 100 perfectly logical dragons in an island with all green eyes. A dragon cannot see the color of his/her own eyes but can see the eye-color of the other dragons. The dragons have a rule that they cannot talk with each other about the color of their eyes and the day a dragon gets to know for sure that his/her eye-colour is green, the dragon gets transformed in that midnight to a sparrow. A visitor tells them (which the dragons knew all along because they could see the eye-colors of other dragons) that there is at least one green-eyed dragon among them. What will happen thereafter?"

It is not very difficult to prove by induction on the number of dragons (starting from 1 dragon, 2 dragons base) that all the dragons will eventually turn to sparrows. But since each dragon knew the fact that the visitor told them, couldn't they do this logical reasoning by themselves? However, when I run the induction on the base of 1 dragon, then I can see that the dragon would not know this fact and the visitor has provided extra information inductively. Have I run into a paradox that the visitor "has" provided extra information and "has not" done so?

There is a post in stack exchange close to this, but I think my question is different. (Green/blue)-eye logic puzzle. Statement validation


The visitor has provided extra information: now the fact that there is a green-eyed dragon is common knowledge: not only every dragon knows that there is a green-eyed dragon, but also that every dragon knows it, and every dragon knows every dragon knows it, etc.

It can help to think about 2 or 3 dragons case. For example, for 3 dragons A, B, C everyone knows that there is a green-eyed dragon. Also, A knows that both B and C know that there is a green-eyed dragon. But A doesn't know if B knows that C knows that there is a green-eyed dragon. But after visitor makes their statement, A now knows it.

| cite | improve this answer | |
  • 1
    $\begingroup$ Thanks @mihaild. Looks perfect. How do I accept the answer? $\endgroup$ – Anirban Apr 13 '19 at 2:35
  • 2
    $\begingroup$ Maybe see this for accepting answers: math.stackexchange.com/help/someone-answers. ("To mark an answer as accepted, click on the check mark beside the answer to toggle it from greyed out to filled in.") $\endgroup$ – Minus One-Twelfth Apr 13 '19 at 2:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.