Алгебра логики
Алгебра логики, раздел математической. логики, изучающий высказывания, рассматриваемые со стороны их логических значений (истинности или ложности), и логические операции над ними. А. л. возникла в середине 19 в. в трудах Дж. Буля и развивалась затем в работах Ч. Пирса, П. С. Порецкого, Б. Рассела, Д. Гильберта и др. Создание А. л. представляло собой попытку решать традиционные логические задачи алгебраическими методами. С появлением теории множеств (70-е гг. 19 в.), поглотившей часть первоначального предмета А. л., и дальнейшим развитием математической логики (последняя четверть 19 в. - 1-я половина 20 в.) предмет А. л. значительно изменился. Основным предметом А. л. стали высказывания. Под высказыванием понимается каждое предложение, относительно которого имеет смысл утверждать, истинно оно или ложно. Примеры высказываний: "кит - животное", "все углы - прямые" и т. п. Первое из этих высказываний является, очевидно, истинным, а второе - ложным. Употребляемые в обычной речи логические связки "и", "или", "если..., то...", "эквивалентно", частица "не" и т. д. позволяют из уже заданных высказываний строить новые, более "сложные" высказывания. Так, из высказываний "х > 2", "х £ 3" при помощи связки "и" можно получить высказывание "x>2 и х £ 3", при помощи связки "или" - высказывание "x>2 или х £ 3", при помощи связки "если..., то..." - высказывание "если x > 2, то х £ 3" и т. д. Истинность или ложность получаемых таким образом высказываний зависит от истинности и ложности исходных высказываний и соответствующей трактовки связок как операций над высказываниями.
Связки. Формулы. В А. л. для обозначения истинности вводится символ и для обозначения ложности - символ Л. Часто вместо этих символов употребляются числа 1 и 0. Связки "и", "или", "если..., то...", "эквивалентно" обозначаются соответственно знаками & (конъюнкция), Ú (дизъюнкция), ? (импликация), ~ (эквивалентность); для отрицания вводится знак - (чёрточка сверху). Наряду с индивидуальными высказываниями, примеры которых приводились выше, в А. л. используются также т. н. переменные высказывания, т. е. такие переменные, значениями которых могут быть любые наперёд заданные индивидуальные высказывания. Далее индуктивно вводится понятие формулы, являющееся формализацией понятия "сложного" высказывания; через А, В, С,... обозначаются индивидуальные, а через X, Y, Z ,... - переменные высказывания. Каждая из этих букв называются формулой. Если знаком * обозначить любую из перечисленных выше связок, а Á и Â суть формулы, то (Á* Â) и ?суть формулы. Пример формулы:
Связки и частица "не" рассматриваются в А. л. как операции над величинами, принимающими значения 0 и 1, и результатом применения этих операций также являются числа 0 или 1. Конъюнкция X&Y равна 1 тогда и только тогда (т. и т. т.), когда и Х и Yравны 1; дизъюнкция XÚY равна 0 т. и т. т., когда и Х и Y равны 0; импликация Х?Y равна 0 т. и т. т., когда Х равно 1, а Y равно 0; эквивалентность Х~У равна 1 т. и т. т., когда значения Х и Y совпадают; отрицание ?равно 1 т. и т. т., когда Х равно 0. Введённые операции позволяют каждой формуле при заданных значениях входящих в неё высказываний приписать одно из двух значений 0 или 1. Тем самым каждая формула может одновременно рассматриваться как некоторый способ задания или реализации т. н. функций А. л., т. е. таких функций, на наборах нулей и в качестве значений 0 или 1. Для задания функций А. л. иногда используются таблицы, содержащие все наборы значений переменных и значения функций на этих наборах. Так, например, сводная таблица, задающая функции ` , X&Y, XÚY, X?Y и X~Y имеет вид: XY X&Y X/Y X?У Х~Y 00 1 0 0 1 1 01 1 0 1 1 0 10 0 0 1 0 0 11 0 1 1 1 1
Аналогично устроены таблицы для произвольных функций А. л. Это - т. н. табличный способ задания функций А. л. Сами же таблицы иногда называют истинностными таблицами.
Для преобразований формул в равные формулы важную роль в А. л. играют следующие равенства:
(1) ??X&Y = Y&X, XÚY = YÚX (закон коммутативности);
(2) (X&Y)&Z = X&(Y&Z), (XÚY)ÚZ = XÚ(YÚZ) (закон ассоциативности);
(3) ??X&(XÚY) = X, XÚ (Х&У) = X (закон поглощения);
(4) ??X& (YÚZ) = (X&Y)Ú(X&Z) (закон дистрибутивности);
(5) ??X& = 0 (закон противоречия);
(6) ??XÚ = 1 (закон исключенного третьего);
(7) Х?Y == ÚY, Х~Y = (X&Y)Ú( & ).
Эти равенства, устанавливаемые, например, с помощью истинностных таблиц, позволяют уже без помощи таблиц получать др. равенства. Методом получения последних являются т. н. тождественные преобразования, которые меняют, вообще говоря, выражение, но не функцию, реализуемую этим выражением. Например, при помощи законов поглощения получается закон идемпотентности ХÚХ = X. Упомянутые равенства в ряде случаев позволяют существенно упростить запись формул освобождением от "лишних скобок". Так, соотношения (1) и (2) дают возможность вместо формул (...(Á1&Á2)&...)& Ás и (...(Â1ÚÂ2)Ú...)Ú Âs использовать более компактную запись Á1&Á2&...&Ás и Â1ÚÂ2Ú...Âs Первое из этих выражений называется конъюнкцией сомножителей Á1,..., Ás, а второе - дизъюнкцией слагаемых Â1,..., Âs. Равенства (5), (6), (7) показывают также, что константы 0 и 1, импликацию и эквивалентность, рассматривая их как функции, можно выразить через конъюнкцию, дизъюнкцию и отрицание. Более того, всякая функция А. л. может быть реализована формулой, записываемой с помощью символов
Нормальные формы. Множество всех формул, в построении которых участвуют переменные высказывания, некоторые из символов &, Ú,?, ~ , - и констант 0 и 1, называются языком над данными символами и константами. Равенства (1) - (7) показывают, что для всякой формулы в языке над &, Ú,?, ~ , -,0, 1 найдётся равная ей формула в языке над &, Ú,-,0, 1, например
Особую роль в последнем языке играет класс формул, которые могут быть записаны в виде Á1ÚÁ2Ú...ÚÁs, 0 или 1, где s³1, и каждое Ái - либо переменное высказывание, либо его отрицание, либо конъюнкция таковых, при этом каждое Ái не содержит одинаковых сомножителей и не содержит сомножителей вида Х и ?одновременно и все Ái - попарно различны. Здесь скобки опускаются, т. к. предполагается, что операция конъюнкции связывает "сильнее", чем дизъюнкция, т. е. при вычислении по заданным значениям переменных следует сначала вычислить значения Ái .Эти выражения называются дизъюнктивными нормальными формами (днф). Каждую формулу Á, реализующую функцию, отличную от константы, в языке над &, Ú, ?, ~ , - , 0, 1 при помощи равенств (1) - (7) можно привести к равной ей днф, содержащей все переменные формулы Á и любое число других переменных, причем каждое Á в этой днф содержит одни и те же переменные. Такая днф называется совершенной днф формулы Á. Возможность приведения к совершенной днф лежит в основе алгоритма, устанавливающего равенство или неравенство двух наперёд заданных формул.
Важную роль в А. л. и её приложениях играет т. н. сокращённая днф. Днф называется сокращённой, если выполнены следующие условия: 1) в ней нет таких пар слагаемых Ái и Áj, что всякий сомножитель из Ái имеется и в ÁI; 2) для всяких двух таких слагаемых Ái и Ái ,из которых один содержит сомножителем некоторое переменное, а другой - отрицание этого переменного (при условии, что в данной паре слагаемых нет другого переменного, для которого это же имеет место), имеется (в этой же днф) слагаемое Ái, равное конъюнкции остальных сомножителей этих двух слагаемых. Всякая днф при помощи равенства (1) - (7) может быть приведена к равной ей сокращённой днф. Например, сокращённой днф для формулы ((X ~ (Y?Z)) ? (X&Z)) является
Кроме днф, употребляются также конъюнктивные нормальные формы (кнф). Так называют выражения, которые можно получить из днф путём замены в них знаков Ú на &, а & на Ú. Например, из днф
получается кнф
Операция (или функция) f называется двойственной для операции y, если таблица, задающая f получается из таблицы, задающей y, путём замены в ней всюду 0 на 1 и 1 на 0 (включая замену значений функций). Например, конъюнкция и дизъюнкция двойственны между собой, отрицание двойственно самому себе, константы 1 и 0 двойственны друг другу и т. д. Преобразованием формул, при котором знаки всех операций в выражении заменяются на знаки двойственных им операций, константа 0 заменяется на 1, а 1 - на 0, называются преобразованием двойственности. Если верно равенство Á = Â и Á* двойственно Á, а Â* двойственно Â, то верно Á* = Â*, называемое двойственным предыдущему. Это т. н. принцип двойственности. Примерами двойственных равенств являются пары законов (1), (2), (3); равенство (5) двойственно равенству (6), каждая кнф двойственна некоторой днф. Совершенная кнф и сокращённая кнф определяются как такие кнф, что двойственные им выражения являются соответственно совершенной днф и сокращённой днф.
Следствия. Гипотезы. Минимизация. Совершенные и сокращённые днф и кнф используются для решения задачи обзора всех гипотез и всех следствий заданной формулы. Под гипотезой формулы Á понимается такая формула Â, что (Â?Á) = 1, а под следствием формулы Á - такая формула Â, что (Á?Â) = 1. Гипотеза формулы Á называется простой, если она есть конъюнкция переменных или их отрицаний и после отбрасывания любого из её сомножителей перестаёт быть гипотезой формулы Á. Аналогично, следствие формулы называется простым, если оно есть дизъюнкция переменных или их отрицаний и после отбрасывания любого из её слагаемых перестаёт быть следствием формулы Á. Решение задачи обзора гипотез и следствий основано на указании алгоритма, строящего все простые гипотезы и следствия для заданной формулы и в получении из них при помощи законов (2) - (7) всех остальных гипотез и следствий.
Сокращённая днф имеет важные приложения. Следует отметить прежде всего задачу минимизации функций А. л., являющуюся частью т. н. задачи синтеза управляющих систем. Минимизация функций А. л. состоит в построении такой днф для заданной функции А. л., которая реализует эту функцию и имеет наименьшее суммарное число сомножителей в своих слагаемых, т. е. имеет минимальную "сложность". Такие днф называются минимальными. Каждая минимальная днф для заданной отличной от константы функции А. л. получается из сокращённой днф любой формулы, реализующей эту функцию, выбрасыванием некоторых слагаемых Ái, из этой сокращённой днф.
Языки. Интерпретации. В языке над &, Ú, ?, ~, 0, 1, + , где знак + интерпретируется как сложение по модулю два, устанавливаются следующие соотношения:
Эти равенства позволяют переводить формулы в языке над &, Ú, ?, ~, -, 0, 1 в равные им формулы в языке над &,+, 1 и обратно. Тождественные преобразования в последнем языке осуществляются при помощи равенств, установленных для конъюнкции и дополнительных:
(11) ??Х +Y=Y+ X;
(12) ??(Х+Y) + Z = Х+(Y + Z);
(13) ??Х&(Y + Z) = X&Y + X&Z;
(14) Х&Х = Х, X + (Y + Y) = X, X&1 = X,
здесь по-прежнему считается, что конъюнкция связывает "сильнее", чем знак +. Этих равенств достаточно для того, чтобы из них при помощи тождественных преобразований, так же как и при рассмотрении языка над &, Ú, ?, ~, -, 0, 1, можно было вывести любое верное равенство в языке над &, +, 1. Выражение в этом языке называется приведённым полиномом (п.п.), если оно либо имеет вид Á1+Á2+ ... Ás, где каждое Ái есть или 1, или переменное, или конъюнкция различных переменных без отрицаний, Ái¹Áj при i¹j и s³1, либо равно 1 + 1. Например, выражение X&Y&Z + X&Y+1 является п. п. Всякую формулу А. л. можно привести к п. п.
Кроме рассмотренных языков, существуют и др. языки, равносильные им (два языка называются равносильными, если при помощи некоторых правил преобразования каждая формула одного из этих языков переводится в некоторую равную ей формулу в другом языке и обратно). В основу такого языка достаточно положить любую систему операций (и констант), обладающую тем свойством, что через операции (и константы) этой системы можно представить всякую функцию А. л. Такие системы называются функционально полными. Примерами полных систем являются
и т. п. Существует алгоритм, который по произвольной конечной системе функций А. л. устанавливает её полноту или неполноту. Рассматриваются и такие языки, в основе которых лежат системы операций, не являющихся функционально полными, и таких языков бесконечно много. Среди них имеется бесконечно много попарно неравносильных языков (в смысле отсутствия переводимости при помощи тождественных преобразований с одного языка на другой). Однако для всякого языка, построенного на основе тех или иных операций А. л., существует такая конечная система равенств этого языка, что всякое равенство этого языка выводимо при помощи тождественных преобразований из равенств этой системы. Такая система равенств называется дедуктивно полной системой равенств (п. с. р.) языка.
Рассматривая тот или иной из упомянутых выше языков вместе с некоторой п. с. р. этого языка, иногда отвлекаются от табличного задания операций, лежащих в основе этого языка, и от того, что значениями его переменных являются высказывания. Вместо этого допускаются различные интерпретации языка, состоящие из той или иной совокупности объектов (служащих значениями переменных) и системы операций над объектами этого множества, удовлетворяющих равенствам из п. с. р. этого языка. Так, язык над &, Ú, -, 0, 1 в результате такого шага превращается в язык т. н. булевой алгебры, язык над &, +, 1 превращается в язык т. н. булевого кольца (с единицей), язык над &, Ú в язык дистрибутивной структуры и т. п.
А. л. развивается главным образом под влиянием задач, встающих в области её приложений. Из них самую важную роль играют приложения А. л. в теории электрических схем. Для описания последних в некоторых случаях приходится отказываться от пользования лишь обычной двузначной А. л. и рассматривать те или иные её многозначные обобщения (см. Многозначная логика).? Лит.: Гильберт Д. и Аккерман Б., Основы теоретической логики, пер. с нем., М., 1947; Тарский А., Введение в логику и методологию дедуктивных наук, пер. с англ., М., 1948; Клини С. К., Введение в метаматематику, пер. с англ., М., 1957; Новиков П. С., Элементы математической логики, М., 1959.
В. Б. Кудрявцев.