Открыть сервис

Таблица истинности

Таблица истинности — это таблица, описывающая логическую функцию (операцию), которая устанавливает однозначное соответствие между всеми возможными наборами значений аргументов (входных переменных) и значением самой функции. Таблицы истинности являются основным инструментом булевой алгебры (алгебры логики) и используются в математической логике, теории алгоритмов, цифровой схемотехнике и программировании для определения поведения логических элементов и схем.

Определение и структура

Таблица истинности для функции от \( n \) переменных содержит \( 2^n \) строк (по числу всех возможных комбинаций значений аргументов) и \( n+1 \) столбец (\( n \) столбцов для аргументов и один — для значения функции). Аргументы принимают значения из множества {0, 1} (или {ложь, истина}).

Пример таблицы для двух переменных

Пусть дана функция И (конъюнкция, обозначается \( A \land B \)). Таблица будет выглядеть так:

ABA ∧ B
000
010
100
111

История

Идея представления логических операций в табличной форме восходит к античности, однако систематическое использование таблиц истинности связано с развитием математической логики в XIX—XX веках.

В середине XX века с появлением и бурным развитием цифровых электронных вычислительных машин таблицы истинности стали незаменимым инструментом в цифровой схемотехнике и булевой алгебре.

Основные логические операции и их таблицы

Базовые одноместные и двуместные операции

  1. Отрицание (НЕ, NOT, инверсия). Функция \( \lnot A \). Таблица:
A¬A
01
10
  1. Конъюнкция (И, AND, логическое умножение). Функция \( A \land B \). Возвращает 1 только при A=1 и B=1.
  1. Дизъюнкция (ИЛИ, OR, логическое сложение). Функция \( A \lor B \). Возвращает 0 только при A=0 и B=0.
ABA ∨ B
000
011
101
111
  1. Импликация (→, если… то). Функция \( A \rightarrow B \). Ложна только в случае, когда посылка истинна, а следствие ложно (1→0 = 0).
ABA → B
001
011
100
111
  1. Эквиваленция (↔, равнозначность). Функция \( A \leftrightarrow B \). Истинна, когда A и B совпадают.
ABA ↔ B
001
010
100
111
  1. Стрелка Пирса (↓, NOR, отрицание ИЛИ). Функция \( A \downarrow B \). Истинна только при A=0 и B=0.
  1. Штрих Шеффера (|, NAND, отрицание И). Функция \( A \nmid B \). Ложна только при A=1 и B=1.

Функции от трёх переменных

Для трёх переменных таблица содержит 8 строк. Например, функция И-НЕ (NAND) для трёх входов:

ABC¬(A ∧ B ∧ C)
0001
0011
0101
0111
1001
1011
1101
1110

Виды и классификация

Таблицы истинности можно классифицировать по нескольким признакам:

По числу значений истинности

По способу задания

По функциональному назначению

Применение

Цифровая схемотехника

Таблицы истинности являются отправной точкой для синтеза цифровых устройств. Инженер составляет таблицу, описывающую требуемый алгоритм работы, а затем по ней строит логическое выражение (СДНФ — совершенная дизъюнктивная нормальная форма или СКНФ — совершенная конъюнктивная нормальная форма), которое реализуется на логических элементах. Метод карт Карно (диаграммы Вейча) позволяет минимизировать логические функции, заданные таблично, чтобы сократить число используемых вентилей и количество соединений на кристалле микросхемы.

Программирование

В разработке программного обеспечения таблицы истинности применяются:

Математическая логика

В математической логике таблицы истинности используются для:

Искусственный интеллект и базы знаний

В экспертных системах и системах, основанных на продукционных правилах, таблицы истинности помогают формализовать причинно-следственные связи и проверить непротиворечивость базы знаний. В машинном обучении принцип табличного задания функции лежит в основе некоторых методов классификации, например, в деревьях решений (деление пространства признаков).

Ограничения

Основные недостатки табличного представления логических функций:

  1. Экспоненциальный рост. Полная таблица для \( n \) переменных содержит \( 2^n \) строк. При \( n = 10 \) это 1024 строки, при \( n = 20 \) — уже более миллиона строк. Такая форма становится необозримой для человека и неэффективной для компьютерной обработки.
  2. Избыточность. Для сложных функций с большим числом «неважных» случаев полная таблица часто содержит многократно повторяющиеся фрагменты.
  3. Отсутствие структуры. Таблица даёт точечное описание поведения, но не раскрывает внутреннюю логическую структуру функции (например, возможность факторизации или скрытые зависимости).

В связи с этим для работы с функциями от большого числа переменных в современной цифровой схемотехнике применяют другие формы задания: ROBDD (сокращённые упорядоченные бинарные диаграммы решений), AIG (логические графы И-НЕ), BNF (нормальные формы) и другие.

Интересные факты

Источники

  1. Цаленко М. Ш. «Алгебра логики и теория алгоритмов». — М.: Наука, 1992.
  2. Гиндикин С. Г. «Алгебра логики в задачах». — М.: Физматлит, 2009.
  3. Яглом И. М. «Булева алгебра и её применение». — М.: Наука, 1970.
  4. Мендельсон Э. «Введение в математическую логику». — М.: Мир, 1971.
  5. Тэтэ, У. «Техника цифровых схем». — М.: Бином, 2003.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →