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

