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

