Как построить таблицу истинности: пошаговое решение
Дано: формула от трёх переменных. Найти: таблицу истинности со всеми промежуточными столбцами и наборы, на которых формула истинна.
Метод всегда один: перебрать все наборов значений переменных и посчитать формулу не целиком, а по частям, в порядке приоритета операций. Ответ: формула истинна ровно на трёх наборах - 000, 001 и 011, на остальных пяти ложна, то есть она выполнима, но тавтологией не является. Калькулятор сверху строит такую же таблицу для этой и ещё трёх формул: переключи значения переменных, и нужная строка подсветится.
Решение по шагам
Дано. Формула , переменные , , .
Найти. Полную таблицу истинности и все наборы, где .
Шаг 1. Размер таблицы. Переменных три, каждая принимает два значения, поэтому число строк равно числу двоичных слов длины три:
Шаг 2. Наборы значений. Строки нумеруются от 0 до 7, а сам набор - это двоичная запись номера строки: 000, 001, 010, 011, 100, 101, 110, 111. Старший разряд отдаём переменной , младший - переменной . Такой порядок не обязателен математически, но он принят в учебниках, и с ним ни один набор не потеряется: столбец идёт четырьмя нулями и четырьмя единицами, столбец чередуется парами, столбец - по одному.
Шаг 3. Разбор формулы на операции. Внешняя операция здесь одна - импликация: скобки разделили формулу на посылку и следствие . Значит, промежуточных столбцов будет три: , и , а четвёртым идёт итог . Всего в таблице столбцов.
Шаг 4. Столбец . Дизъюнкция ложна только тогда, когда оба слагаемых ложны. Ноль получится в строках 000 и 001, где и ; во всех остальных шести строках стоит единица.
Шаг 5. Столбцы и . Отрицание просто переворачивает столбец : единицы в первых четырёх строках, нули в последних четырёх. Конъюнкция истинна там, где одновременно и , то есть только в строках 001 и 011.
Шаг 6. Итоговый столбец. Импликация ложна ровно в одном случае - когда посылка истинна, а следствие ложно:
Подставляем и построчно:
| № | |||||||
|---|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 |
| 1 | 0 | 0 | 1 | 0 | 1 | 1 | 1 |
| 2 | 0 | 1 | 0 | 1 | 1 | 0 | 0 |
| 3 | 0 | 1 | 1 | 1 | 1 | 1 | 1 |
| 4 | 1 | 0 | 0 | 1 | 0 | 0 | 0 |
| 5 | 1 | 0 | 1 | 1 | 0 | 0 | 0 |
| 6 | 1 | 1 | 0 | 1 | 0 | 0 | 0 |
| 7 | 1 | 1 | 1 | 1 | 0 | 0 | 0 |
В строках 0 и 1 посылка ложна, и импликация автоматически истинна - это и есть главная ловушка задачи. В строке 3 истинны обе части, импликация снова даёт единицу. Начиная со строки 4 переменная равна единице, поэтому при истинной посылке, и весь хвост таблицы обнуляется.
Ответ. Столбец сверху вниз: 1, 1, 0, 1, 0, 0, 0, 0. Формула истинна на наборах , и и ложна на остальных пяти; она выполнима, но не тождественно истинна.
Сколько строк и столбцов должно получиться
Число строк зависит только от количества переменных и считается по формуле
где - число различных переменных в формуле. Две переменные дают 4 строки, три - 8, четыре - 16, пять - 32. Формулу легко обосновать: каждая переменная независимо принимает два значения, а наборы - это все двоичные слова длины . Повторное вхождение переменной размер таблицы не меняет: в формуле переменных всё равно две, а не три.
Число столбцов заранее не фиксировано - оно равно плюс количество операций, которые ты решил вынести в отдельные столбцы. Минимально допустимый вариант: переменные и итог. На практике в контрольных требуют развёрнутую таблицу, где каждой операции отвечает свой столбец: так видно ход решения, и преподаватель может найти, на каком именно шаге ошибка. Порядок наборов при этом стандартный - двоичный счёт снизу вверх от нулевой строки, потому что тогда номер строки совпадает с числом, записанным набором.
Порядок заполнения: приоритет операций задаёт очередь столбцов
Столбцы заполняются не слева направо по записи формулы, а в порядке, в котором операции вычисляются. Порядок приоритета такой: сначала выражения в скобках, затем отрицание , потом конъюнкция , потом дизъюнкция , дальше импликация и в самом конце эквивалентность . Подробный разбор с примерами лежит в статье про приоритет логических операций.
Практический приём: найди операцию, которая выполняется последней, - она и даст итоговый столбец. В нашей формуле это импликация, значит, до неё нужно посчитать обе её части. Дальше рекурсивно спускайся внутрь каждой части, пока не дойдёшь до самих переменных. Получится дерево, а обход этого дерева снизу вверх и есть очередь столбцов.
Значения операций удобно держать в голове как короткие правила, а не как отдельные таблички. Конъюнкция истинна только при обеих единицах, дизъюнкция ложна только при обоих нулях, импликация ложна только в случае «из истины ложь», эквивалентность истинна при совпадении значений. Четыре правила закрывают почти любую формулу базового курса.
Что читают по готовой таблице
Готовая таблица сразу отвечает на несколько типовых вопросов, и ради них её обычно и строят.
Классификация формулы. Если в столбце одни единицы, формула тождественно истинна (тавтология); одни нули - тождественно ложна (противоречие); есть и то и другое - формула выполнима, но не общезначима. Наш пример относится к третьему случаю: три единицы из восьми.
Равносильность двух формул. Строишь обе таблицы на одном наборе переменных и сравниваешь итоговые столбцы: совпали во всех строках - формулы равносильны. Именно так в одну строчку проверяются законы де Моргана и правило .
Каноническая форма. По строкам с единицей собирается совершенная дизъюнктивная нормальная форма: у нас это строки 000, 001 и 011, то есть . Механика перехода от строки к минтерму разобрана в материале про СДНФ, а по полученной формуле уже собирается логическая схема из элементов И, ИЛИ, НЕ.
Частые ошибки
- Импликацию считают как конъюнкцию. Строки 0 и 1 в нашей таблице дают единицу именно потому, что посылка ложна. «Из лжи следует что угодно» - не оговорка, а определение: ноль в столбце импликации бывает только при паре «1 и 0».
- Теряют строки. При трёх переменных строк обязано быть восемь, при четырёх - шестнадцать. Если выписывать наборы наугад, а не двоичным счётом, один-два набора обычно пропадают, и ответ становится неполным.
- Считают формулу целиком в уме. Без промежуточных столбцов ошибка в середине выражения не ловится вообще: итог не с чем сверить. Отдельный столбец на операцию стоит одной колонки, но экономит переделку всей таблицы.
- Игнорируют скобки и приоритет. Запись означает : конъюнкция сильнее дизъюнкции. Посчитанное слева направо выражение даёт другой столбец и другой ответ.
- Путают порядок разрядов. Если столбец чередуется через один, а идёт четвёрками, таблица остаётся верной, но перестаёт совпадать с ответом в методичке построчно. Держи старший разряд за первой переменной.
- Отрицание применяют не к тому. и - разные столбцы: в первом случае отрицается только , во втором вся конъюнкция. Черта или скобка сверху определяет область действия.
FAQ
Сколько строк в таблице истинности для 4 переменных? Шестнадцать: . Общее правило - строк для переменных, независимо от того, сколько операций в формуле и сколько раз каждая переменная в неё входит.
Обязательно ли выписывать промежуточные столбцы? Формально нет, требуется только итог. Но в проверочных работах развёрнутую таблицу почти всегда просят: она показывает ход решения, и при ошибке в одном столбце остальные остаются зачтёнными.
Как понять, что формула тождественно истинна? Посмотреть на итоговый столбец: если в нём нет ни одного нуля, формула истинна на любом наборе значений, то есть является тавтологией. Если нет ни одной единицы - это противоречие.
В каком порядке перебирать наборы значений? Стандарт - двоичный счёт от 000 до 111, при котором номер строки совпадает с числом, записанным набором. Любой другой порядок формально допустим, но сверять такой ответ с методичкой неудобно.
Коротко
- Считаем число строк: , где - количество различных переменных. Для это .
- Выписываем наборы двоичным счётом от 000 до 111, старший разряд - первой переменной.
- Разбираем формулу на операции по приоритету (скобки, , , , , ) и заводим столбец на каждую.
- Заполняем столбцы снизу дерева вверх; последней считается внешняя операция - она и даёт столбец .
- Ответ примера: равно 1, 1, 0, 1, 0, 0, 0, 0 - формула истинна на наборах 000, 001 и 011, выполнима, но не тавтология.
Похожие задачи
Как составить СКНФ по таблице: пошаговое решение
СКНФ по таблице истинности: разбор задачи с числами. Строки с нулём дают макстермы, отрицание ставится на единицах, ответ проверяется подстановкой. Внутри калькулятор и сравнение с СДНФ.
Дискретная математикаКак найти двойственную функцию: решение по шагам
Как найти двойственную функцию булевой алгебры: определение через отрицание аргументов и результата, вектор значений наоборот, замена операций в формуле и проверка на самодвойственность.
Дискретная математикаКак найти матрицу инцидентности графа: пошаговое решение
Как найти матрицу инцидентности графа: строки вершины, столбцы рёбра, пошаговый разбор примера на 5 вершинах и 6 рёбрах, знаки для орграфа, проверка по степеням вершин и связь с матрицей смежности.
Дискретная математикаКак найти мощность множества: пошаговое решение
Как найти мощность множества: разбор задачи о 30 студентах по формуле включений исключений, мощность булеана 2 в степени n, счётные и континуальные множества, частые ошибки.
Дискретная математикаКак найти полином Жегалкина: решение по шагам
Как найти полином Жегалкина булевой функции по вектору значений 10011110: треугольник Паскаля, метод неопределённых коэффициентов, проверка подстановкой и вывод о линейности.
Дискретная математикаКак построить карту Карно: решение по шагам
Как построить карту Карно на четыре переменные: разметка осей кодом Грея, перенос единиц из таблицы истинности, склейка соседних клеток в группы и запись МДНФ с проверкой.