Логическая функция F задаётся выражением ((x → y ) ≡ (z → w)) ∨ (x ∧ w).
Дан частично заполненный фрагмент, содержащий неповторяющиеся строки таблицы истинности функции F.
Определите, какому столбцу таблицы истинности соответствует каждая из переменных x, y, z, w.
| Переменная 1 | Переменная 2 | Переменная 3 | Переменная 4 | Функция |
|---|---|---|---|---|
| ??? | ??? | ??? | ??? | F |
| 1 | 0 | |||
| 1 | 1 | 0 | ||
| 1 | 1 | 1 | 0 |
В ответе напишите буквы x, y, z, w в том порядке, в котором идут соответствующие им столбцы (сначала — буква, соответствующая первому столбцу; затем — буква, соответствующая второму столбцу, и т. д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.
Пример. Пусть задано выражение x → y, зависящее от двух переменных x и y, и фрагмент таблицы истинности:
| Переменная 1 | Переменная 1 | Функция |
|---|---|---|
| ??? | ??? | F |
| 0 | 1 | 0 |
Тогда первому столбцу соответствует переменная y, а второму столбцу соответствует переменная x. В ответе нужно написать: yx.
Рассмотрим данное выражение. Преобразуем логическое выражение ((x → y ) ≡ (z → w)) ∨ (x ∧ w) и получим систему, при которой оно ложно:
Заметим, что четвёртый столбец таблицы истинности — это w, тогда первый столбец таблицы истинности — это переменная z. Из условия следует, что переменная x соответствует третьему столбцу таблицы истинности, а переменная y соответствует второму столбцу таблицы истинности.
Приведем другое решение.
Составим таблицу истинности для выражения ((x → y ) ≡ (z → w)) ∨ (x ∧ w) вручную или при помощи языка Python:
print("x y z w")
for x in range(0, 2):
for y in range(0, 2):
for z in range(0, 2):
for w in range(0, 2):
if not(((x <= y) == (z <= w)) or (x and w)):
print(x, y, z, w)
Далее выпишем те наборы переменных, при которых данное выражение равно 0. В наборах переменные запишем в порядке х, y, z, w.
Получим следующие наборы:
(0, 0, 1, 0),
(0, 1, 1, 0),
(1, 0, 0, 0),
(1, 1, 1, 0).
Сопоставим эти наборы с приведенным в задании фрагментом таблицы истинности.
Заметим, что третья строка таблицы может соответствовать только набору (1, 1, 1, 0). Следовательно, четвертый столбец — это переменная w, и в третьей строке в четвертом столбце стоит 0.
Заметим, что вторая строка таблицы (как минимум две единицы) может соответствовать только набору (0, 1, 1, 0). Следовательно, первые два столбца соответствуют переменным у и z, тогда третий столбец соответствует переменной х.
Первая строка таблицы может соответствовать одному из оставшихся наборов, в котором переменная y или z принимает единичное значение. Такой набор — (0, 0, 1, 0), в нем единичное значение принимает переменная z. Следовательно, первый столбец соответствует переменной z, тогда второй столбец соответствует переменной у.
Ответ: zyxw.

