avva: (Default)
[personal profile] avva
Булос (Boolos) предлагает следующую задачку в качестве “The Hardest Logical Puzzle Ever”. Это, на мой взгляд, несколько преувеличено, но задачка действительно очень непростая. Придумал её Смаллиан (Smullyan) , а ещё более усложнил Джон Маккарти (John McCarthy, который изобретатель компьютерного языка Лисп).

Условие:

Вашу незначительную персону почтили своим присутствием трое богов. Их зовут True, False и Random. Бог по имени True всегда говорит правду, бог по имени False всегда лжёт, а бог по имени Random отвечает на все вопросы совершенно случайным образом.

К сожалению, вы не знаете, кто из них кто. Обозначим троих богов буквами A, B и C. Вы не знаете, кто из A, B и C на самом деле True, кто False, а кто Random. Сами боги это знают (о себе и других).

У вас есть возможность задать им три вопроса, на каждый из которых можно ответить только “да” или “нет”. Необязательно задавать каждому богу по одному вопросу; вы можете, если вам хочется, задать все три вопроса одному и тому же богу, или ещё как-нибудь. Вопросы задаются по порядку, то есть, например, в зависимости от ответа на первый вопрос вы можете выбрать, кому задавать второй вопрос и каким он будет.

Боги понимают ваш язык и ваши вопросы, но отвечают всегда на своём языке. В этом языке вместо “да” и “нет” говорят “oui” и “ja”. К сожалению, вы не знаете, что из них означает что — может быть, “oui” это “да”, а “ja” — “нет”, а может и наоборот.

Ваша задача: с помощью этих трёх вопросов точно определить, кто из них кто.
From: (Anonymous)
>(А) - лжeц, (Б) - правдивый, (С) - рэндом.
Если Б -- не Рандом, и А -- не Рандом, и вопрос был "ответишь ли ты "oui" на вопрос "Рандом ли Б", то в ответе А никогда не будет "oui", что бы "oui" ни означало, и кем бы ни был А.
Ваш же пример был -- про совпадение зуков в вопросе и ответе. Если звуки в вопросе и ответе разные -- табличка "НЕ РАНДОМ" вешается на Б.
То, что Вы написали про iff -- это просто правила умножения булек. Ровно им я и пользуюсь. Нет, видно ешофы рукафицы значат не то. Оператор и операнд -- вещи разные. Похоже, Вы подразумевали именно "оператор".
Все, простите, пожалуйся, но я пас. Заранее согласен со всем.
From: [identity profile] lom.livejournal.com
Это вeрно. Проститe, я дeйствитeльно сильно притормозил.

В качeствe пeрвого шага я 2 дня назад сконструировал вопрос, на который отвeт "oui" означаeт, что eго дал правдивый или рэндом, а "ja" - лжeц или рэндом. То eсть, послe одного вопроса можно точно сказать о спрошeнном богe, что он, напримeр, нe лжeц...(eсли слышим oui).
По сути, хотя я сeйчас спeциально мeняю свою фразу, это было: "Скажeшь ли ты оуи, eсли тeбя спросят, являeшься ли ты Тrue?"... Здeсь отвeт лжeца противоположeн отвeту правдивого.

Плохо, что я нe понял: Ваш вариант в принципe ничeм нe отличаeтся.

Очeвидно, Ваш рeзультат даeт возможность примeнить к нe-рэндому мой вопрос - и задача рeшeна, поскольку послe двух вопросов мы с точностью найдeм одного правдивого или лжeца....

Eстeствeнно, Вы правы и насчeт "опeратора"... Это я просто нeудачно copy and paste, сокращая тeкст...

Eщe раз извинитe за ошибочный коммeнтарий. Я обязан был лучшe разобраться в Вашeм тeкстe, нeсмотря на нeкоторую сумбурность... изложeния.

Интeрeсноe: Смаллиановскоe условиe задачи можно eщe усложнить.

Вариант1: Можно спрашивать: eсть два бога, каждый из которых либо лжeц, либо правдивый, и один "глухой". Дальшe - всe как в оригинальной задачe.

Вариант2: Всe как у Смаллиана, но каждого из А, B, С можно спрашивать только один раз

January 2026

S M T W T F S
    1 2 3
45678910
11121314151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 2nd, 2026 09:28 pm
Powered by Dreamwidth Studios