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

