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

