Решения

We use cookies. Read the Privacy and Cookie Policy

Решения

Глава 1

Кто Джон? Для того чтобы узнать, кого из двух братьев-близнецов зовут Джон, нужно спросить одного из них: «Джон говорит правду?». Если в ответ на этот вопрос последует «да», то независимо от того, лжет ли спрошенный близнец или говорит всегда только правду, он должен быть Джоном. Если же он ответит «нет», то Джоном зовут его брата. Доказать это можно следующим образом.

Если спрошенный близнец отвечает «да», то он тем самым утверждает, что Джон говорит правду. Если это утверждение истинно, то Джон действительно говорит правду, а так как говорящий изрек истину, то его и должны звать Джоном. Если же высказанное утверждение ложно, то Джон в действительности не говорит правду. Значит, Джон лжет, как лжет и спрошенный близнец. Следовательно, и в этом случае спрошенного должны звать Джоном. Тем самым доказано, что независимо от того, говорит ли тот, к кому мы обращаемся с вопросом, всегда только правду или лжет, он должен быть Джоном (в предположении, что на наш вопрос он ответил «да»).

Если же спрошенный нами ответит «нет», то тем самым он утверждает, что Джон говорит неправду. Если это утверждение истинно, то Джон не говорит правду, а если ложно, то Джон говорит правду. И в том и в другом случае спрошенный близнец поступает не так, как Джон. Следовательно, он должен быть братом Джона. Таким образом, «нет» в ответ на заданный вопрос означает, что спрошенного зовут не Джон.

Разумеется, вопрос «Лжет ли Джон?» ничуть не хуже. «Да» в ответ на этот вопрос означает, что спрошенный близнец не Джон, а «нет» – что его зовут Джон.

Мне удалось придумать только эти два вопроса в три слова, которые позволяют решить задачу. Интересно, есть ли другие?

* * *

Во второй задаче (найти вопрос из трех слов, позволяющий установить, не лжет ли Джон) достаточно просто спросить: «Вы не Джон?»

Предположим, что близнец, к которому мы обращаемся, отвечает «да». Он либо говорит правду, либо лжет. Предположим, что выбранный нами близнец говорит правду. Тогда его действительно зовут Джон, а так как он говорит правду, то Джон всегда говорит только правду.

Предположим теперь, что близнец, к которому мы обращаемся, лжет. Тогда в действительности его зовут не Джон (раз он утверждает, что его зовут Джон). Значит, он лжет и его зовут не Джон, поэтому Джоном должен быть тот из братьев, кто всегда говорит только правду. Тем самым доказано, что если близнец, к которому мы обращаемся с вопросом, отвечает «да», то независимо от того, лжет ли он или говорит правду, того, кто всегда говорит только правду, зовут Джоном.

Предположим теперь, что в ответ на наш вопрос мы услышали «нет». Близнец, к которому мы обратились, либо лжет, либо всегда говорит только правду. Предположим, что он говорит правду. Тогда он действительно не Джон и Джоном зовут другого брата, а поскольку другой брат всегда говорит только правду, Джоном зовут того из двух братьев, кто лжет.

Предположим теперь, что близнец, к которому мы обратились, лжет. Тогда (поскольку лжец утверждает, что он не Джон) его настоящее имя должно быть Джон, поэтому Джоном в данном случае зовут лжеца. Тем самым доказано, что если близнец, к которому мы обращаемся с вопросом, отвечает «нет», то независимо от того, лжет он или говорит правду, того, кто лжет, зовут Джоном.

Между решениями двух задач, которые решали Алиса и ее гости, имеется замечательная симметрия. Для того чтобы узнать, не зовут ли того из близнецов, к которому вы обращаетесь, Джоном, ему необходимо задать вопрос: «Лжет ли Джон?». Для того чтобы выяснить, лжет ли Джон, необходимо задать вопрос: «Вы не Джон?».