Логическая функция задаётся выражением:
Определите, какому столбцу таблицы истинности функции соответствует каждая из переменных
Решение руками:
1. Упростим
По закону дистрибутивности =
(если
то
если
то
Тогда
2. Упростим По закону дистрибутивности
3. Получим:
4. Рассмотрим таблицу истинности. Чтобы значение функции было равно 0,
(ведь дизъюнкция ложна, если ложны все входящие в нее высказывания) и
Тогда второму столбцу соответствует
(это единственный столбец, в котором все нули при
Теперь рассмотрим случай, когда
Хотя бы одно из выражений, входящих в дизъюнкцию, должно быть истинно. Во второй строке (где функция истинна) таблицы истинности
значит,
Конъюнкция истинна, если истинны все высказывания, входящие в нее, то есть
и
одновременно,
и
При
= (0, 1, 0)
Во второй строке таблицы истинности из условия содержатся два нуля и одна единица. Значит, третьему столбцу соответствует
(так как там есть единица), а первому —
Решение Python:
print("x y z F")
for x in range(2):
for y in range(2):
for z in range(2):
F = (x and y) or (x and not y) or (y and not z) or (not z and x)
print(x, y, z, int(F))