Наконец-то мы добрались до темы, которую вы все ожидали с нетерпением!
106
Вы, житель острова рыцарей, лжецов и нормальных людей, влюблены в дочь короля Маргозиту и хотите жениться на ней. Король не желает, чтобы его дочь вышла замуж за нормального человека, и дает ей отеческие наставления: «Поверь мне, дорогая, тебе действительно не следует выходить замуж за нормального человека. Нормальные люди капризны, переменчивы, на них ни в чем нельзя положиться. С ними никогда не знаешь, где находишься. Один день он говорит тебе правду, на другой день лжет. Что в этом хорошего? Рыцарь же надежен, как скала. С ним всегда знаешь, на чем стоишь. С лжецом тоже чувствуешь себя вполне уверенно: что бы он ни сказал, стоит тебе лишь заменить его высказывание противоположным, и ты знаешь, как обстоит дело в действительности. Я считаю, что у человека должны быть какие-то принципы, которым он неукоснительно следует. Если человек видит высшее наслаждение в том, чтобы говорить правду, пусть говорит правду. Если считает, что ложь превыше всего, пусть лжет. А что представляют собой эти добропорядочные нормальные люди? Так себе: серединка на половинку, ни правды, ни лжи. Нет, они не для тебя!»
Предположим теперь, что вы не нормальный человек (и поэтому имеете шанс обрести в жены дочь короля). Чтобы получить согласие короля на ваш брак с его дочерью, вам необходимо убедить его в том, что вы не нормальный человек. Король дает вам аудиенцию, во время которой вы можете произнести сколько угодно высказываний. Задача подразделяется на две части.
а) Сколько истинных высказываний понадобится вам, чтобы убедить короля в том, что его будущий зять — не нормальный человек?
б) Сколько ложных высказываний понадобится вам, чтобы убедить короля в том, что его будущий зять — не нормальный человек?
(Подчеркнем, что и в том и в другом случае речь идет о минимальном числе высказываний.)
107
На другом острове рыцарей, лжецов и нормальных людей король придерживался противоположных взглядов и дал дочери иные отеческие наставления: «Дорогая, я не хочу, чтобы ты вышла замуж за какого-нибудь рыцаря или лжеца. Мне хотелось бы, чтобы твой муж был солидным нормальным человеком с хорошей репутацией. Тебе не следует выходить замуж за рыцаря, потому что все рыцари — ханжи. Тебе не следует выходить замуж и за лжеца, потому что все лжецы вероломны. Нет, что ни говори, а добропорядочный нормальный человек был бы тебе как раз под пару!»
Предположим, что вы житель этого острова и нормальный человек. Ваша задача — убедить короля в том, что вы нормальный человек.
а) Сколько истинных высказываний понадобится вам для этого?
б) Сколько ложных высказываний понадобится вам для той же цели?
(И в том и в другом случае речь идет о минимальном числе высказываний.)
108
Перед вами более сложный вариант предыдущей задачи. Ее решение представляет собой альтернативу (хотя и чрезмерно сложную) решению предыдущей задачи, но, чтобы решить ее, одного лишь решения предыдущей задачи недостаточно.
Предположим, что вы житель острова рыцарей, лжецов и нормальных людей и сами нормальный человек. Король хочет, чтобы его дочь вышла замуж только за нормального человека, но требует доказательства исключительного остроумия и сообразительности от своего будущего зятя. Чтобы получить руку королевской дочери, вы должны в присутствии его величества произнести одно-единственное высказывание, которое удовлетворяло бы двум следующим условиям:
1) Оно должно убедить короля в том, что вы нормальный человек.
2) Король не должен знать, истинно или ложно ваше высказывание.
Как это сделать?
Решения
88. C — либо рыцарь, либо лжец. Предположим, что C — рыцарь. Тогда по крайней мере двое из трех островитян — лжецы. Следовательно, ими должны быть A и B. Отсюда мы заключаем, что B — оборотень (так как, по его словам, он не оборотень, а по доказанному B — лжец). Итак, если C — рыцарь, то оборотень — лжец (так как им должен быть B). Предположим теперь, что C — лжец. Тогда неверно, что по крайней мере два из трех островитян — лжецы, поэтому среди них есть самое большее один лжец. Этим лжецом должен быть C. Следовательно, и A, и B — рыцари. Так как A — рыцарь и утверждает, что C — оборотень, то C действительно оборотень. Таким образом, и в этом случае оборотень — лжец (а именно C).
Следовательно, независимо от того, рыцарь ли C или лжец, оборотень — лжец (хотя в каждом случае речь идет о другом лице). Итак, ответ на первый вопрос гласит: оборотень — лжец. Кроме того, мы доказали, что оборотнем может быть либо B, либо C. Следовательно, если вы хотите выбрать себе попутчика, который заведомо не был бы оборотнем, то вам следует остановить свой выбор на A.