Перед нами три островитянина: α, β и γ. Двое из них высказывают следующие утверждения:
- α сказал: «Мы все лжецы»;
- β сказал: «Один из нас рыцарь»;
Кто из них рыцарь, а кто лжец?
Перед нами три островитянина: α, β и γ. Двое из них высказывают следующие утверждения:
Кто из них рыцарь, а кто лжец?
Допустим, α - рыцарь. Тогда его высказывание - истина и все трое лжецы - в том числе и он. Получили противоречие, поэтому α может быть только лжецом. Тогда из его высказывания следует, что хотя бы один из β и γ рыцарь. Возможны такие варианты:
1. β - рыцарь, γ - лжец
2. β - лжец, γ - рыцарь
3. β - рыцарь, γ - рыцарь
Пусть β - рыцарь, тогда это варианты 1 и 3. Его высказывание истинно и остается вариант 1. Это решение согласуется с условием.
Допустим теперь β - лжец, тогда это вариант 2. В этом случае его высказывание ложно и оно соответствует варианту 3. Это опять противоречие.
Вывод: задача имеет единственное решение: α - лжец, β - рыцарь, γ - лжец.
Можно решить задачу с помощью таблицы истинности. Обозначим:
X1, X2, X3 - островитяне α, β и γ являются рыцарями, соответственно.
A - высказывание жителя α,
B - высказывание жителя β.
Составим таблицу истинности для всех комбинаций X1, X2 и X3. Вычислим истинность высказываний A, B и их отрицаний
(для наглядности 0 = Л, 1 = И):
X1, X2, X3: A, !A, B, !B
--------------------------------------
0, 0, 0: 1, (0), 0, (1)
0, 0, 1: 0, (1), 1, (0)
0, 1, 0: 0, (1), (1), 0 (+)
0, 1, 1: 0, (1), (0), 1
1, 0, 0: (0), 1, 1, (0)
1, 0, 1: (0), 1, 0, (1)
1, 1, 0: (0), 1, (0), 1
1, 1, 1: (0), 1, (0), 1
Так как в зависимости от значений переменных X1, X2, X3 следует брать значение либо исходного высказывания, либо его отрицания (жители могут говорить правду либо лгать), нужные результаты заключены в скобки. Например, для комбинаций, где α - рыцарь, отмечаем высказывание A, а где он лжец, то !A. Аналогично с высказыванием B.
Теперь находим все строки, где оба значения в скобках равны 1 (истина). Такая строка во всей таблице только одна (третья), ей соответствует X1, X2, X3 = 0, 1, 0, т.е. задача имеет единственное решение - α - лжец, β - рыцарь, γ - лжец.
Я решал задачу так:
α(альфа) сказал: «Мы все лжецы»; Отсюда следует что альфа - лжец. В противное не возможно по определению того, что рыцари всегда говорят правду.
Остаётся разобрать пару β(бетта) и γ(гамма)
β сказал: «Один из нас рыцарь»
Если бетта сказал ложь, тогда получаем что все - альфа, бетта и гамма, - лжецы. Но мы знаем что как минимум альфа лжец, значит бетта сказав ложь говорит правду, что является противоречием. Остаётся вариант что бетта сказал правду. Следовательно получаем что бетта рыцарь, гамма лжец.
> Если бетта сказал ложь, тогда получаем что все - альфа, бетта и гамма, - лжецы.
Не только. Отрицанию выражения "Один из нас рыцарь" также соответствуют случаи "Двое из нас рыцари" (в трех вариантах) и "Все трое рыцари". Всего пять случаев.