Как же называется эта книга? (Смаллиан) - страница 20

Разберемся теперь, кто такие островитянин A и его приятель, которого мы обозначим B. Если бы A был рыцарем, то он не мог бы дать правдивый ответ «нет», поэтому A — лжец. Так как его отрицательный ответ ложен, то по крайней мере один из двух островитян должен быть рыцарем. Следовательно, A — лжец, а B — рыцарь.

37. Должны. Если оба встретившихся вам островитянина рыцари, то они оба ответят «да». Если они оба лжецы, то они также оба ответят «да». Если же один из них рыцарь, а другой лжец, то рыцарь ответит «нет» и лжец также ответит «нет».

38. Должен признаться, что в этой задаче я позволил себе подшутить над читателем. Ключом к решению служит та фраза, в которой говорится, что вам, сколько вы ни бились, так и не удалось «извлечь его из тины». Слова, заключенные в кавычки, представляют собой каламбур — «извлечь его истины». Из них следует, что встретившийся вам островитянин изрекал только ложь, то есть был лжецом. Отсюда мы заключаем, что его звали Эдвин.

39. Прежде всего заметим, что A не может быть рыцарем, потому что рыцарь не назвал бы себя нормальным человеком. Следовательно, A — либо лжец, либо нормальный человек. Тогда истинно высказывание островитянина B. Значит, B — либо рыцарь, либо нормальный человек. Но B не может быть нормальным человеком (так как A — нормальный человек), поэтому B — рыцарь, а C — лжец. Но лжец не может сказать о себе, что он не нормальный человек (так как любой лжец — не нормальный человек), и мы приходим к противоречию. Итак, A не может быть нормальным человеком. Следовательно, A — лжец. Это означает, что высказывание островитянина B ложно, в силу чего B должен быть нормальным человеком (лжецом он быть не может, так как лжец — островитянин A). Итак, A — лжец, а B — нормальный человек. Отсюда мы заключаем, что C — рыцарь.

40. Эта задача обладает интересной особенностью. Условия ее не позволяют установить, кто из двух островитян говорит правду, не будучи рыцарем: A или B. Мы можем доказать более слабое утверждение: по крайней мере один из двух островитян A и B говорит правду, не будучи рыцарем.

Островитянин A либо говорит правду, либо не говорит правду. Докажем два утверждения: 1) если A говорит правду, то он говорит правду, не будучи рыцарем; 2) если A лжет, то B говорит правду, не будучи рыцарем.

1) Предположим, что A говорит правду. Тогда B — рыцарь и, следовательно, говорит правду. Значит, A — не рыцарь. Таким образом, если A говорит правду, то A — лицо, говорящее правду, не будучи рыцарем.

2) Предположим, что A не говорит правду. Тогда B — не рыцарь. Но B должен говорить правду, так как A не может быть рыцарем (ведь A не говорит правду). Следовательно, в этом случае B говорит правду, не будучи рыцарем.