Статья Автор: Деникина Н.В., Деникин А.В.

Таблицы истинности. Учимся их читать

Не угадываем буквы — восстанавливаем подписи

В задании №2 у таблицы потерялись названия столбцов. Значения в некоторых клетках сохранились. Нужно вернуть каждой переменной её столбец.

Для этого есть два пути: разобрать логическую формулу вручную или попросить Python построить таблицу, а затем сопоставить её с условием. Мы научимся обоим.


Ноль, единица и функция F

Логическая переменная принимает только два значения: 0 — ложь, 1 — истина. Буквы x, y, z, w — имена переменных, а не неизвестные числа любой величины.

Формула F — правило: подставь значения переменных и получишь 0 или 1. Одна строка таблицы — один набор значений всех переменных и результат F на этом наборе.

Как прочитать одну строку

abF
101

Эта строка сообщает: a = 1, b = 0, F = 1. Она ничего не говорит о том, чему будет равна F на другом наборе.


Пять знаков, которые встретятся в формулах

ЗаписьКак читатьКогда результат равен 1
¬AНЕ AКогда A = 0
A ∧ BA И BКогда оба равны 1
A ∨ BA ИЛИ BКогда хотя бы одно равно 1
A → BИз A следует BВо всех случаях, кроме A = 1, B = 0
A ≡ BA равносильно BКогда A и B одинаковы

Здесь A и B могут обозначать как одну переменную, так и целое выражение в скобках. Стрелку и эквивалентность подробно разберём в отдельных тетрадях.

В каком порядке считать

Сначала скобки. Затем: 1) ¬;   2) ∧;   3) ∨;   4) →;   5) ≡

Сначала выполняются действия в скобках, затем отрицание, И, ИЛИ, импликация и эквивалентность. В сложных формулах будем ставить скобки явно.


Возвращаем подписи двум столбцам

F = a ∧ ¬b

№?столбец 1?столбец 2F
У1011

Пустая клетка — неизвестное значение, не ноль. Полные строки различны. С подключённым компонентом здесь работает одна изменяющаяся таблица; без скрипта доступны все шаги ниже.

Все шаги в текстовом виде — для повторения или без скрипта
1. Сначала читаем условие

В этой строке F = 1. Нужно назвать два столбца. Их значения 0 и 1 менять нельзя.

№?столбец 1?столбец 2F
У1011
2. Что требует операция И?

Чтобы a ∧ ¬b было равно 1, обе части должны быть равны 1.

Известно: a = 1; ¬b = 1

Действие: Нажми на заголовок столбца, который может быть a.

Вывод: Во втором столбце стоит 1, поэтому это a. Первый уже не может быть a.

№?столбец 1aстолбец 2F
У1011
3. Снимаем отрицание

Из ¬b = 1 получаем b = 0. У переменной b осталось одно место.

Известно: a = 1; b = 0

Действие: Нажми на заголовок столбца, который может быть b.

Вывод: Первый столбец — b. В ответе нужен порядок ba, а не ab.

№bстолбец 1aстолбец 2F
У1011
4. Проверяем весь фрагмент

a = 1 и b = 0, поэтому a ∧ ¬b = 1. Известные клетки сохранены; полные строки различны.

№bстолбец 1aстолбец 2F
У1011

Ответ: ba.


В другой задаче уже установлено: первый столбец — y, второй — w, третий — z, четвёртый — x. Какую строку нужно записать в ответ?


Пустая клетка не равна нулю

В пустой клетке может оказаться 0 или 1 — значение ещё предстоит установить. А записанный в условии ноль менять нельзя.

Подпись столбца действует на все строки. Если второй столбец — x, то он остаётся x и в первой, и в последней строке. Значение x между строками может меняться.

Неповторяемость относится к полным наборам переменных. Две строки могут выглядеть одинаково в известных клетках, но различаться там, где в условии пропуски.


Что замечать в таблице до подбора букв

Постоянная единица: исключи любой столбец с известным нулём. Постоянный ноль: исключи любой столбец с известной единицей. Если столбец пустой, это не мешает определить его методом исключения.

Противоположные столбцы: в одной строке их значения не могут быть одинаковыми. Истинная импликация: запрещена только пара 1 → 0. Почти одинаковые строки: когда все клетки, кроме одной, совпадают, последняя обязана различаться.

Каждую особенность сначала обоснуй формулой или полным выводом программы для нужного F. Несколько видимых единиц в неполном столбце ещё не доказывают, что вся переменная постоянна.


После восстановления пропусков получились строки:

abcF
0101
0111

Сколько разных наборов переменных здесь записано?


Проверь три ситуации. Для каждой выбери «верно» или «неверно».


Проверка перед переходом

Ты различаешь три вещи: имя переменной, значение в клетке и значение функции F. Пустая клетка — это неизвестное значение, а не дополнительная переменная.

Печать