Логическая функция F задаётся выражением ((z → w) ∨ (y ≡ w)) ∧ ((x ∨ z) ≡ y). На рисунке приведён частично заполненный фрагмент таблицы истинности функции F, содержащий неповторяющиеся строки. Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных x, y, z, w.
| ? | ? | ? | ? | F |
|---|---|---|---|---|
| 0 | 1 | 1 | 0 | 1 |
| 1 | 0 | 1 | ||
| 0 | 1 | 1 |
В ответе напишите буквы x, y, z, w в том порядке, в котором идут соответствующие им столбцы. Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.
Заметим, что, чтобы выражение было истинным, обе скобки ((z → w) ∨ (y ≡ w)) и ((x ∨ z) ≡ y) должны быть истинными.
Рассмотрим первую строку таблицы истинности. Заметим, что чтобы скобка ((x ∨ z) ≡ y) была истинной, переменная y должна быть равна 1. Также заметим, что если переменная z будет равна 1, то выражение станет ложным. Значит, чтобы скобка ((x ∨ z) ≡ y) принимала значение 1, переменные y и x должны быть равны 1. Следовательно, переменные y и x соответствуют второму и третьему столбцам таблицы истинности.
Рассмотрим третью строку таблицы истинности. Выражение будет истинным, если переменные x, y и w будут равны 1. Значит, первому столбцу таблицы истинности соответствует переменная z, а четвёртому столбцу таблицы истинности соответствует переменная w.
Рассмотрим вторую строку таблицы истинности. Предположим, что переменная x соответствует второму столбцу таблицы истинности. Тогда, поскольку 0 равна 1, выражение будет ложным. Значит, переменной y соответствует второй столбец таблицы истинности, а переменной x — третий.
Ответ: zyxw.
Приведём другое решение.
Составим таблицу истинности для выражения ((z → w) ∨ (y ≡ w)) ∧ ((x ∨ z) ≡ y) вручную или при помощи языка 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 ((z <= w) or (y == w)) and ((x or z) == y):
print(x, y, z, w)
Далее выпишем те наборы переменных, при которых данное выражение равно 1. В наборах переменные запишем в порядке х, y, z, w. Получим следующие наборы:
(0, 0, 0, 0)
(0, 0, 0, 1)
(0, 1, 1, 1)
(1, 1, 0, 0)
(1, 1, 0, 1)
(1, 1, 1, 1)
Заметим, что первая строка приведенного фрагмента таблицы истинности (две единицы и два нуля) может соответствовать только набору (1, 1, 0, 0). Следовательно, второй и третьей колонкам соответствуют переменные x и y. Рассмотрим вторую строку приведенного фрагмента таблицы истинности. В ней одна из этих переменных принимает значение 0, а другая — 1. Следовательно, эта строка может соответствовать только набору (0, 1, 1, 1), тогда второй столбец — это переменная у, а третий столбец — это переменная x.
Первый и четвертый столбцы соответствуют переменным z и w. Рассмотрим третью строку приведенного фрагмента таблицы истинности. В ней одна из этих переменных принимает значение 0, а другая — 1. Следовательно, эта строка может соответствовать только набору (1, 1, 0, 1) или набору (0, 0, 0, 1), в которых нулю равна переменная z. Тогда первый столбец — это переменная z, а четвертый столбец — это переменная w.

