A Таблица истинности - это математическая таблица, используемая в логике, особенно в связь с булевой алгеброй, булевыми функциями и исчислением высказываний, которые устанавливают функциональные значения логических выражений для каждого их функционального аргументы, то есть для каждой комбинации значений, принимаемых их логическими переменными. В частности, таблицы истинности могут использоваться, чтобы показать, истинно ли пропозициональное выражение для всех допустимых входных значений, то есть логически достоверно.
В таблице истинности есть один столбец для каждой входной переменной (например, P и Q), и один последний столбец, показывающий все возможные результаты логической операции, которую представляет таблица (например, P XOR Q). Каждая строка таблицы истинности содержит одну возможную конфигурацию входных переменных (например, P = true Q = false) и результат операции для этих значений. См. Примеры ниже для дальнейшего пояснения. Людвигу Витгенштейну обычно приписывают изобретение и популяризацию таблицы истинности в его Логико-философском трактате, который был завершен в 1918 году и опубликован в 1921 году. Такая система также была независимо предложена в 1921 году. Автор Эмиль Леон Пост. Еще более ранняя итерация таблицы истинности также была обнаружена в неопубликованных рукописях Чарльза Сандерса Пирса 1893 года, что предшествовало обеим публикациям почти на 30 лет.
Есть 4 унарные операции:
Выходное значение всегда истинно, независимо от входного значения p
p | T |
---|---|
T | T |
F | T |
Выходное значение никогда не бывает истиной: то есть всегда ложно, независимо от входного значения p
p | F |
---|---|
T | F |
F | F |
Логическая идентичность - операция с одним логическим значением p, для которого выходное значение остается p.
Таблица истинности для оператора логической идентичности выглядит следующим образом:
p | p |
---|---|
T | T |
F | F |
Логическое отрицание - это операция над одним логическое значение, обычно значение предложения , которое дает значение true, если его операнд ложный, и значение false, если его операнд истинен.
Таблица истинности для НЕ p (также записывается как ¬p, Np, Fpq или ~ p ) выглядит следующим образом:
p | ¬p |
---|---|
T | F |
F | T |
Существует 16 возможных функций истинности двух двоичных переменных :
Вот расширенная таблица истинности, дающая определения всех возможных функций истинности двух булевых переменных P и Q:
p | q | F | NOR | ↚ | ¬p | ↛ | ¬q | XOR | NAND | AND | XNOR | q | → | p | ← | OR | T | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
T | T | F | F | F | F | F | F | F | F | T | T | T | T | T | T | T | T | ||
T | F | F | F | F | F | T | T | T | T | F | F | F | F | T | T | T | T | ||
F | T | F | F | T | T | F | F | T | T | F | F | T | T | F | F | T | T | ||
F | F | F | T | F | T | F | T | F | T | F | T | F | T | F | T | F | T | ||
Com | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||||||
Adj | F | NOR | ↛ | ¬q | ↚ | ¬p | XOR | NAND | AND | XNOR | p | ← | q | → | OR | T | |||
Neg | T | OR | ← | p | → | q | XNOR | AND | NAND | XOR | ¬q | ↛ | ¬p | ↚ | NOR | F | |||
Dual | T | NAND | → | ¬p | ← | ¬q | XNOR | NOR | OR | XOR | q | ↚ | p | ↛ | AND | F | |||
L id | F | F | T | T | T, F | T | F | ||||||||||||
R id | F | F | T | T | T, F | T | F |
, где
Четыре комбинации входных значений для p, q, считываются построчно из таблицы выше. Функция вывода для каждой комбинации p, q может быть прочитана построчно из таблицы.
Ключ:
Следующая таблица ориентирована по столбцам, а не по строкам. Здесь четыре столбца, а не четыре строки, для отображения четырех комбинаций p, q в качестве входных данных.
p: T T F F. q: T F T F
В этом ключе 16 строк, по одной строке для каждой двоичной функции двух двоичных переменных, p, q. Например, в строке 2 этого ключа значение Converse nonimplication ('') является исключительно T для столбца, обозначенного единственная комбинация p = F, q = T; в то время как в строке 2 значение этой операции '' равно F для трех оставшихся столбцов p, q. Выходная строка для , таким образом,
2: FFTF
, а ключ из 16 строк -
operator | Название операции | |||
---|---|---|---|---|
0 | (FFFF) (p, q) | ⊥ | false, Opq | Противоречие |
1 | (FFFT) (p, q) | ИЛИ | p↓ q, Xpq | Логическое ИЛИ |
2 | (FFTF) (p, q) | ↚ | p↚ q, Mpq | Преобразование без импликации |
3 | (FFTT) (p, q) | ¬p, ~p | ¬p, Np, Fpq | Отрицание |
4 | (FTFF) (p, q) | ↛ | p↛ q, Lpq | Неимпликация материала |
5 | (FTFT) (p, q) | ¬q, ~q | ¬q, Nq, Gpq | Отрицание |
6 | (FTTF) (p, q) | XOR | p⊕ q, Jpq | Исключительная дизъюнкция |
7 | (FTTT) (p, q) | NAND | p↑ q, Dpq | Logical NAND |
8 | (TFFF) (p, q) | AND | p∧ q, Kpq | Логическое соединение |
9 | (TFFT) (p, q) | XNOR | pЕсли и только если q, Epq | Логическая двусмысленность |
10 | (TFTF) (p, q) | q | q, Hpq | Функция проекции |
11 | (TFTT) (p, q) | p→ q | если p, то q, Cpq | Материальное значение |
12 | (TTFF) (p, q) | p | p, Ipq | Функция проекции |
13 | (TTFT) (p, q) | p← q | pif q, Bpq | Обратное значение |
14 | (TTTF) (p, q) | OR | p∨ q, Apq | Логическая дизъюнкция |
15 | (TTTT) (p, q) | ⊤ | true, Vpq | Тавтология |
Логические операторы также могут быть визуализированы с использованием диаграмм Венна.
Логическое соединение - это операция с двумя логическими значениями, обычно значениями двух propositions, который дает значение true, если оба его операнда истинны.
Таблица истинности для p AND q (также записывается как p ∧ q, Kpq, p q, или pq) выглядит следующим образом:
p | q | p ∧ q |
---|---|---|
T | T | T |
T | F | F |
F | T | F |
F | F | F |
В терминах обычного языка, если оба p и q истинны, то конъюнкция p ∧ q верно. Для всех других присвоений логических значений p и q конъюнкция p ∧ q ложна.
Также можно сказать, что если p, то p ∧ q равно q, иначе p ∧ q равно p.
Логическая дизъюнкция - это операция над двумя логическими значениями, обычно значениями двух предложений , который дает значение true, если хотя бы один из его операндов истинен.
Таблица истинности для p OR q (также записывается как p ∨ q, Apq, p || q или p + q ) выглядит следующим образом:
p | q | p ∨ q |
---|---|---|
T | T | T |
T | F | T |
F | T | T |
F | F | F |
В английском языке, если p, то p ∨ q равно p, в противном случае p is q равно q.
Логическое следствие и материальное условие связаны с операцией над двумя логическими значениями, как правило значения двух предложений , что дает значение false, если первый операнд истинен, а второй операнд - ложь, и значение true в противном случае.
Таблица истинности, связанная с логическим импликацией p, подразумевает q (обозначается как p ⇒ q, или, реже, Cpq ) выглядит следующим образом :
p | q | p ⇒ q |
---|---|---|
T | T | T |
T | F | F |
F | T | T |
F | F | T |
Таблица истинности, связанная с материальным условным условием if p then q (обозначается как p → q ) выглядит следующим образом:
p | q | p → q |
---|---|---|
T | T | T |
T | F | F |
F | T | T |
F | F | T |
Также может быть полезно отметить, что p ⇒ q и p → q эквивалентны ¬p ∨ q .
Логическое равенство (также известное как двусмысленное или исключающее или ) - это операция на двух логических значения, обычно значения двух предложений , которые выдают значение истина, если оба операнда ложны или оба операнда истинны.
Таблица истинности для p XNOR q (также записывается как p ↔ q, Epq, p = q, или p ≡ q ) выглядит следующим образом:
p | q | p ↔ q |
---|---|---|
T | T | T |
T | F | F |
F | T | F |
F | F | T |
Итак, p EQ q истинно, если p и q имеют одинаковое значение истинности (оба истинны или оба ложны) и ложь, если они имеют разные значения истинности.
Исключительная дизъюнкция - это операция над двумя логическими значениями, обычно значениями двух пропозиций, которые выдает значение true, если один, но не оба его операнда истинны.
Таблица истинности для p XOR q (также записывается как Jpq или p ⊕ q ) выглядит следующим образом:
p | q | p⊕ q |
---|---|---|
T | T | F |
T | F | T |
F | T | T |
F | F | F |
Для двух предложений, XOR также может быть записано как (p ∧ ¬q) ∨ (¬p ∧ q).
Логическая И-НЕ - это операция с двумя логическими значениями, обычно значениями двух propositions, который дает значение false, если оба его операнда истинны. Другими словами, он выдает значение true, если хотя бы один из его операндов ложен.
Таблица истинности для p NAND q (также записывается как p ↑ q, Dpq или p | q ) выглядит следующим образом:
p | q | p ↑ q |
---|---|---|
T | T | F |
T | F | T |
F | T | T |
F | F | T |
Часто бывает полезно выразить логическую операцию как составную операцию, то есть как операцию, построенную или составленную из других операций. Возможны многие такие композиции, в зависимости от операций, которые считаются базовыми или «примитивными», и операций, которые принимаются как составные или «производные».
В случае логического И-НЕ это явно выражается как соединение НЕ и И.
Отрицание конъюнкции: ¬ (p ∧ q) и дизъюнкция отрицаний: (¬p) ∨ (¬q) можно свести в таблицу следующим образом:
p | q | p ∧ q | ¬ (p ∧ q) | ¬p | ¬q | (¬p) ∨ (¬q) |
---|---|---|---|---|---|---|
T | T | T | F | F | F | F |
T | F | F | T | F | T | T |
F | T | F | T | T | F | T |
F | F | F | T | T | T | T |
логическое ИЛИ - это операция с двумя логическими значениями, обычно значениями двух предложений , которая дает значение истина, если оба его операндов ложны. Другими словами, он выдает значение false, если хотя бы один из его операндов истинен. ↓ также известен как стрелка Пирса в честь своего изобретателя, Чарльза Сандерса Пирса, и является единственным достаточным оператором.
Таблица истинности для p NOR q (также записывается как p ↓ q или Xpq ) выглядит следующим образом:
p | q | p ↓ q |
---|---|---|
T | T | F |
T | F | F |
F | T | F |
F | F | T |
Отрицание дизъюнкции ¬ (p ∨ q), а сочетание отрицаний (¬p) ∧ (¬q) можно свести в таблицу следующим образом:
p | q | p ∨ q | ¬ (p ∨ q) | ¬p | ¬q | (¬p) ∧ (¬q) |
---|---|---|---|---|---|---|
T | T | T | F | F | F | F |
T | F | T | F | F | T | F |
F | T | T | F | T | F | F |
F | F | F | T | T | T | T |
Проверка табличных выводов для NAND и NOR при каждом присвоении логических значений функциональным аргументам p и q, производит идентичные шаблоны функциональных значений для ¬ (p ∧ q), как для (¬p) ∨ (¬q), и для ¬ (p ∨ q), как для (¬p) ∧ (¬q). Таким образом, первое и второе выражения в каждой паре логически эквивалентны и могут заменять друг друга во всех контекстах, которые относятся исключительно к их логическим значениям.
Эта эквивалентность является одним из законов Де Моргана.
Таблицы истинности могут использоваться для доказательства многих других логических эквивалентностей. Например, рассмотрим следующую таблицу истинности:
T | T | F | T | T |
T | F | F | F | F |
F | T | T | T | T |
F | F | T | T | T |
Это демонстрирует тот факт, что логически эквивалентно и .
Вот таблица истинности, которая дает определения 6 наиболее часто используемых из 16 возможных функций истинности двух булевых переменных P и Q :
P | Q | |||||||
---|---|---|---|---|---|---|---|---|
T | T | T | T | F | T | T | T | T |
T | F | F | T | T | F | F | T | F |
F | T | F | T | T | F | T | F | F |
F | F | F | F | F | T | T | T | T |
где
для бинарных операторов также используется сжатая форма таблицы истинности используется, где заголовки строк и столбцов определяют операнды, а ячейки таблицы определяют результат. Например, логика использует эту сжатую нотацию таблицы истинности:
|
|
Эта нотация полезна, особенно если операции коммутативны, хотя можно дополнительно указать, что строки являются первым операндом, а столбцы - вторым. операнд. Эти сжатые обозначения особенно полезны при обсуждении многозначных расширений логики, поскольку они значительно сокращают комбинаторный взрыв количества строк, необходимых в противном случае. Он также обеспечивает быстро узнаваемую характерную «форму» распределения значений в таблице, которая может помочь читателю быстрее понять правила.
Таблицы истинности также используются для определения функции аппаратных справочных таблиц (LUT) в схемах цифровой логики. Для LUT с n входом таблица истинности будет иметь значения 2 ^ n (или строки в указанном выше табличном формате), полностью определяя логическую функцию для LUT. Представляя каждое логическое значение как бит в двоичном числе, значения таблицы истинности могут быть эффективно закодированы как целочисленные значения в автоматизации проектирования электроники (EDA) программное обеспечение. Например, 32-битное целое число может кодировать таблицу истинности для LUT с максимум 5 входами.
При использовании целочисленного представления таблицы истинности выходное значение LUT может быть получено путем вычисления битового индекса k на основе входных значений LUT, и в этом случае выходным значением LUT является k-е бит целого числа. Например, чтобы оценить выходное значение LUT с учетом массива из n логических входных значений, битовый индекс выходного значения таблицы истинности может быть вычислен следующим образом: если i-й вход истинен, let , иначе пусть . Тогда k-й бит двоичного представления таблицы истинности является выходным значением LUT, где .
Таблицы истинности - это простой и понятный способ кодирования логических функций, однако, учитывая экспоненциальный рост размера по мере увеличения количества входов, они не подходят для функций с большим количество входов. Другими представлениями, которые более эффективно используют память, являются текстовые уравнения и диаграммы двоичных решений.
В цифровой электронике и информатике (области прикладной логической инженерии и математики) истина Таблицы могут использоваться для сведения базовых логических операций к простым соотношениям входов и выходов без использования логических элементов или кода. Например, двоичное сложение может быть представлено таблицей истинности:
A B | C R 1 1 | 1 0 1 0 | 0 1 0 1 | 0 1 0 0 | 0 0 где A = первый операнд B = второй операнд C = перенос R = результат
Эта таблица истинности читается слева направо:
Обратите внимание, что эта таблица не описывает логические операции, необходимые для реализации этой операции, а просто определяет функцию входы в выходные значения.
Что касается результата, этот пример можно арифметически рассматривать как двоичное сложение по модулю 2 и как логически эквивалентный бинарной логической операции «исключающее ИЛИ» (исключающая дизъюнкция).
В этом случае его можно использовать только для очень простых входов и выходов, таких как 1 и 0. Однако, если количество типов значений, которые можно иметь на входах, увеличивается, размер таблицы истинности увеличивается.
Например, в операции сложения нужно два операнда, A и B. Каждый может иметь одно из двух значений, ноль или один. Количество комбинаций этих двух значений равно 2 × 2 или четырем. Таким образом, результатом является четыре возможных выхода C и R. Если использовать базу 3, размер увеличится до 3 × 3, или девяти возможных выходов.
Первый пример "сложения" выше называется полусумматором. Полный сумматор - это когда перенос из предыдущей операции предоставляется в качестве входных данных для следующего сумматора. Таким образом, для описания логики полного сумматора потребуется таблица истинности из восьми строк:
A B C * | C R 0 0 0 | 0 0 0 1 0 | 0 1 1 0 0 | 0 1 1 1 0 | 1 0 0 0 1 | 0 1 0 1 1 | 1 0 1 0 1 | 1 0 1 1 1 | 1 1 То же, что и предыдущий, но.. C * = Перенести из предыдущего сумматора
Исследование Ирвинга Анеллиса показывает, что C.S. Пирс, по-видимому, был первым логиком (в 1893 г.), который разработал матрицу таблицы истинности. Из краткого содержания его статьи:
В 1997 году Джон Шоски обнаружил на оборотной стороне страницы напечатанной стенограммы лекции Бертрана Рассела 1912 года на тему «Философия». Матрицы таблицы истинности логического атомизма. Матрица отрицания принадлежит Расселу, рядом с ней находится матрица материального подтекста, созданная Людвигом Витгенштейном. Показано, что неопубликованная рукопись, идентифицированная как составленная Пирсом в 1893 году, включает матрицу таблицы истинности, которая эквивалентна матрице материального значения, обнаруженной Джоном Шоски. Неопубликованная рукопись Пирса, которая, как было установлено, была написана в 1883–1884 годах в связи с сочинением книги Пирса «Об алгебре логики: вклад в философию обозначений», опубликованной в American Journal of Mathematics в 1885 году включает пример косвенной таблицы истинности для условного.
Викискладе есть материалы по теме Таблицы истинности. |