Самая сложная логическая задача

«Самая сложная логическая головоломка» () — название логической задачи, предложенной американским философом и логиком Джорджем Булосом в итальянской газете «la Repubblica» в 1992 году:

Есть три бога: A, B и C, которые являются богами истины, лжи и случая в произвольном порядке. Бог истины всегда говорит правду, бог лжи — всегда обманывает, бог случая либо говорит правду, либо лжёт, что определяется случайным образом. Требуется определить богов, задав 3 вопроса, на которые можно ответить «да» или «нет». Каждый вопрос задаётся только одному богу, но можно задавать одному богу более одного вопроса. Боги понимают язык, но отвечают на своём языке, в котором есть 2 слова «da» и «ja», причём неизвестно, какое слово обозначает «да», а какое «нет».

Булос также разъясняет некоторые моменты задачи:
 Можно задавать одному богу более чем один вопрос (поэтому другим богам может быть не задано ни одного вопроса вообще).
 Каков будет следующий вопрос и кому он будет задан, может зависеть от ответа на предыдущий вопрос.
 Бог случая отвечает случайным образом, зависящим от подбрасываний монетки, спрятанной в его голове: если выпадет аверс, то отвечает правдиво, если реверс — то врёт.
 Бог случая отвечает «da» или «ja» на любой вопрос, на который можно ответить «да» либо «нет».
Другие комментарии:
 Нельзя задавать вопросы-«парадоксы», на которые можно ответить одновременно «da» и «ja», или никак нельзя ответить.

История 
Булос указывает логика Рэймонда Смаллиана как автора задачи и Джона Маккарти за увеличение сложности задачи из-за неясных трактовок «da» и «ja». Похожие задачи есть в книгах Смаллиана, например, он описывает остров, где половина жителей зомби (они постоянно лгут), а другая половина — люди (они постоянно говорят правду). Ситуацию усложняет факт, что жители острова прекрасно нас понимают, но древнее табу запрещает им использовать неродные слова. Поэтому они используют ответы «bal» или «da», которые означают «да» и «нет», причём неясно, какое из них что обозначает. Есть ещё ряд подобных головоломок в книге «The Riddle of Scheherazade». Всё это разновидности широко известных задач о рыцарях и лжецах Смаллиана.

Одна из таких задач была освещена в фильме «Лабиринт»: есть 2 двери и 2 стражника, один всегда говорит правду, второй всегда лжёт. Одна дверь ведёт к замку, вторая — к гибели. Смысл головоломки состоит в том, чтобы узнать, какая дверь ведёт к замку, задав один вопрос одному стражнику. В фильме Сара спрашивала: «Скажет ли он [другой стражник] мне, что эта дверь ведёт к замку?»

Решение задачи 
Булос предложил решение задачи в той же статье, где он и опубликовал саму задачу. Он заявил, что первым вопросом мы должны найти бога, который не является богом случая, то есть является либо богом правды, либо богом лжи. Есть множество вопросов, которые могут быть заданы для достижения этой цели. Одна из стратегий — использование сложных логических связей в самом вопросе.

Вопрос Булоса: «Означает ли „da“ „да“, если и только если ты бог правды, а бог B — бог случая?». Другой вариант вопроса: «Является ли нечётным число истинных утверждений в следующем списке: ты — бог лжи, „ja“ означает „да“, B — бог случая?»

Решение задачи может быть упрощено, если использовать условные высказывания, противоречащие фактам (counterfactuals). Идея этого решения состоит в том, что на любой вопрос Q, требующий ответа «да» либо «нет», заданный богу правды или богу лжи:
 Если я спрошу тебя Q, ты ответишь «ja»?
Ответом будет «ja», если верный ответ на вопрос Q это «да», и «da», если верный ответ «нет». Для доказательства этого можно рассмотреть восемь возможных вариантов, предложенных самим Булосом.

 Предположим, что «ja» обозначает «да», а «da» обозначает «нет»:
 Мы спрашивали у бога правды, и он ответил «ja». Поскольку он говорит правду и верный ответ на вопрос Q — «ja», оно обозначает «да».
 Мы спрашивали у бога правды, и он ответил «da». Поскольку он говорит правду и верный ответ на вопрос Q — «da», оно обозначает «нет».
 Мы спрашивали у бога лжи, и он ответил «ja». Поскольку он всегда лжёт, на вопрос Q он ответит «da». То есть правильный ответ на вопрос «ja», который обозначает «да».
 Мы спрашивали у бога лжи, и он ответил «da». Поскольку он всегда лжёт, на вопрос Q он ответит «ja». То есть правильный ответ на вопрос «da», который обозначает «нет».
 Предположим, что «ja» обозначает «нет», а «da» обозначает «да» , получим :
 Мы спрашивали у бога правды, и он ответил «ja». Поскольку он говорит правду и верный ответ на вопрос Q — «da», оно обозначает «да».
 Мы спрашивали у бога правды, и он ответил «da». Поскольку он говорит правду и верный ответ на вопрос Q — «ja», оно обозначает «нет».
 Мы спрашивали у бога лжи, и он ответил «ja». Поскольку он всегда лжёт, на вопрос Q он отвечает «ja». Но, так как он лжёт, верный ответ на вопрос Q — «da», что означает «да».
 Мы спрашивали у бога лжи, и он ответил «da». Поскольку он всегда лжёт, на вопрос Q он отвечает «da». Но, так как он лжёт, верный ответ на вопрос Q — «ja», что означает «нет».

Используя этот факт, можно задавать вопросы:

 Спросим бога B: «Если я спрошу у тебя „Бог А — бог случая?“, ты ответишь „ja“?». Если бог B отвечает «ja», значит, либо он бог случая (и отвечает случайным образом), либо он не бог случая, а на самом деле бог A — бог случая. В любом варианте, бог C — это не бог случая. Если же B отвечает «da», то либо он бог случая (и отвечает случайным образом), либо B не бог случая, что означает, что бог А — тоже не бог случая. В любом варианте, бог A — это не бог случая.
 Спросим у бога, который не является богом случая (по результатам предыдущего вопроса, либо A, либо C): «Если я спрошу у тебя: „ты - бог лжи?“, ты ответишь „ja“?». Поскольку он не бог случая, ответ  «da» обозначает, что он бог правды, а ответ «ja» обозначает, что он бог лжи.
 Спросим у этого же бога «Если я у тебя спрошу: „Бог B — бог случая?“, ответишь ли ты „ja“?». Если ответ «ja» — бог B является богом случая, если ответ «da», то бог, с которым ещё не говорили, является богом случая.

Оставшийся бог определяется методом исключения.

Примечания

Литература 
 T.S. Roberts, Some thoughts about the hardest logic puzzle ever (Journal of Philosophical Logic 30:609-612(4), December 2001).
 Brian Rabern and Landon Rabern, A simple solution to the hardest logic puzzle ever (Analysis 68 (298), 105—112, April 2008).
 Raymond Smullyan, What is the Name of This Book? (Prentice Hall, Englewood Cliffs, NJ, 1978).
 Raymond Smullyan, The Riddle of Sheherazade (A. A. Knopf, Inc., New York, 1997).

Ссылки 
 T.S. Roberts. Some thoughts about the hardest logic puzzle ever. Journal of Philosophical Logic, 30:609-612(4), December 2001.
 Brian Rabern and Landon Rabern. A simple solution to the hardest logic puzzle ever. Analysis 68 (298), 105—112, April 2008.
 Tom Ellis. Even harder than the hardest logic puzzle ever.

Математические головоломки и досуг