Наименование: | Алгебра логики. |
Определение: | Алгебра логики — это один из основных разделов символической логики, в основе которого лежит применение алгебраических методов к логике. |
Раздел: |
Концепты философского дискурса Концепты научного дискурса |
Дискурс: |
Философия Наука |
Субдискурс: | Логика Логика формальная Логика символическая |
Текст статьи: © А. В. Кузнецов. А. С. Карпенко. Б. В. Бирюков. Подготовка электронной публикации и общая редакция: Центр гуманитарных технологий. Ответственный редактор: А. В. Агеев. Информация на этой странице периодически обновляется. Последняя редакция: 14.11.2024. | |
Алгебра логики — это один из основных разделов символической логики, в основе которого лежит применение алгебраических методов к логике (см. Логика). Алгебра логики — исторически первая форма символической логики (см. Символическая логика), возникшая в середине XIX века в трудах Дж. Буля. К её созданию привела аналогия между решением алгебраических уравнений и выводом следствий из посылок, а также то, что алгебраические уравнения применимы при решении задач из различных областей знания. Поначалу алгебра логики имела своим предметом классы (как объёмы понятий), соотношения между классиками по объёму и связанные с этим операции над ними. Позднее, в связи с появлением в Попытки сведéния логики к алгебре предпринимались ещё в В XIX веке поиск способов решения логических задач алгебраическими методами продолжился. Были введены чёткие представления об операциях над объектами логики, что стало возможным, прежде всего, благодаря трактовке понятий по их объёму. Кроме того, было введено понятие универсума — предметной области логики, а в качестве объектов, на которых задаются операции, стали выступать подклассы универсума, суждения же получили представление в виде равенств. Принципиальный прорыв в алгебраизации логики совершили А. де Морган и Дж. Буль; «Формальная логика» де Моргана и «Математический анализ логики» Буля вышли в 1847 году. В построениях обоих учёных содержались основания системы, которая ныне называется «булевой алгеброй». Де Морган кроме этого развил исторически первую систему алгебры отношений. Система Буля, называемая «алгеброй логики» (а иногда «алгеброй классов»), получила более широкую известность, чем построения де Моргана. В трудах У. С. Джевонса, И. И. Жегалкина, Э. Шрёдера, Ч. С. Пирса, П. С. Порецкого и других исследователей методы алгебры логики получили дальнейшее усовершенствование. В основе обычной, так называемой классической алгебры логики лежит абстракция высказывания как величины, имеющей одно (и только одно) из двух значений: «истина» или «ложь» (короче: И, Л), или могущей принимать оба эти значения (но не одновременно). В первом из этих случаев имеем индивидуальное высказывание (высказывание в узком, наиболее принятом смысле этого слова), во втором — высказывание-функцию. Примеры высказываний: «2 × 2 = 4», «0 ≤ 0», «Сократ — человек», «0 = 1», «2 × 2 = 5», «x2 = y», «z — человек», «Если x = y, то y = 0», «Если x = 2, то x 2 = 4», «x равняется у или x не равняется y». Первые три высказывания имеют значение И (то есть истинны), Абстракция в алгебре логики идёт дальше. Все истинные высказывания отождествляются между собой, так как истинное высказывание не отличается от другого истинного высказывания по значению (от других сторон высказываний в алгебре логики отвлекаются). Ложные высказывания тоже отождествляются. При рассмотрении же высказываний-функций в алгебре логики обычно отвлекаются от рассмотрения зависимости их от иных переменных, кроме таких, значениями которых тоже являются высказывания, вводя для их рассмотрения буквенные переменные, которые называют переменными высказываниями. Таковыми являются буквы A, B, C, … Α1, A2, A3, … и так далее (при этом выбор букв — вопрос не существа, а соглашения) при условии, что они играют роль переменных, значениями которых могут быть всевозможные индивидуальные высказывания, то есть, в силу упомянутых абстракций, «константы» И и Л. Кроме простых высказываний, обозначаемых отдельными буквами A, B… или И, Л, рассматриваются также сложные высказывания — результат соединения высказываний связками или отрицания их (соответствующего частице «не»). Сложные высказывания рассматривают как функции от входящих в них буквенных переменных A, B, C и так далее. Так появляется понятие функции алгебры логики — функции от аргументов, являющихся переменными высказываниями, то есть принимающих значения И, Л, которая (функция) может принимать тоже лишь эти значения. Вводятся алгебраические операции над высказываниями: конъюнкция A × B (читается «A и B», другие обозначения: AB, A & B, A ⋀ B; другие названия: логическое умножение, булево умножение), дизъюнкция A ⋁ B («читается A или B»; другое обозначение: A + B; другие названия: логическое сложение, булево сложение), импликация A → B (читается: «Если A, то B» или «A влечёт B», или «A имплицирует B», или «Из A следует B»; другое обозначение: A ⊃ B; другое название: логическое следование), эквиваленция А ~ В (читается: «A эквивалентно B» или «A равнозначно B», или «A, если и только если B»: другие обозначения: A ≡ B, A ↔ B; другие названия: эквивалентность, равнозначность, равносильность), отрицание A (читается: «не A», или «A ложно», или «неверно, что A», или «отрицание A»; другие обозначения: ¬ A, ~ A, A´; другое название: инверсия), а также иногда и другие операции. Одной из важных сторон формализации, принимаемой в алгебре логики, является то, что знаками этих операций (то есть по смыслу, соответствующими им связками) можно соединять любые высказывания, без ограничения, в том числе и те, которые сами являются сложными. При этом удаётся точно и строго описать класс всех рассматриваемых выражений алгебры логики. В данном случае он состоит из констант И и Л, переменных A, B… и всех тех выражений, которые получаются из них путём конечного числа соединений знаками «×», «⋁», «→» и «~» и отрицаний. Это связано с требованием, чтобы операции задавались таблично как функции и значение сложного высказывания зависело только от значений составляющих его простых высказываний. Основная суть алгебры логики как системы методов состоит в использовании преобразований высказываний на основе алгебраических законов, которые имеют место для операций над высказываниями. Эти законы чаще всего имеют вид тождеств (см. Тождество), то есть равенств, верных при всех значениях переменных. Важную роль играют следующие тождества:
Эти тождества, устанавливаемые, например, с помощью таблиц, позволяют получать другие тождества. Тождеств I–VI достаточно для того, чтобы из них по методу тождественных преобразований можно было вывести всякое (верное, конечно) тождество, левая и правая части которого — выражения алгебры логики, состоящие из переменных A, B, констант И, Л и знаков «×», «ν» «-» (не обязательно включая все из них). Добавление же тождеств VII A → B = ¬ A ⋁ B, A ~ B = AB ⋁ ¬ A ¬ B даёт возможность выводить и любые тождества, содержащие также знаки «→», «~». Тождества V, VI, VII показывают, что константы И и Л, импликацию и эквиваленцию, рассматривая их как функции, можно выразить через конъюнкцию, дизъюнкцию и отрицание. Имеет место теорема, гласящая, что всякая функция алгебры логики может быть представлена через эти три операции, то есть записана в виде выражения, содержащего лишь знаки этих операций и буквенные переменные. Именно, любую функцию Φ (A1, A2, … An) можно записать как дизъюнкцию всех выражений вида: Φ (a1, a2, … an) × (A1 ~ a1) × (A2 ~ a2) … (An ~ an), где a1, a2, … an, — набор из значений И, Л. Заменяя в этой дизъюнкции выражения A i ~ И на Аi, а Аi, ~ Л — на ¬ Аi, а также стирая «коэффициенты» Φ (a1, a2, … an») равные И (по закону И × A = A) и отбрасывая члены с «коэффициентами», равными Л (по законам (Л × A = Л, Л ⋁ A = A), мы и получим (если функция не есть константа) то выражение, о котором говорится в теореме. Дизъюнктивной нормальной формой (ДНФ) называется выражение, которое есть буква И или Л или имеет вид A1 ⋁ A2 ⋁ … ⋁ As, где каждый член Ai, является либо буквенной переменной, либо её отрицанием, либо конъюнкцией таковых, причём s не обязательно отлично от 1, то есть знаков «⋁» может и не быть. ДНФ называется совершенной, если она есть И или Л или в каждом члене содержит ровно по одному разу все имеющиеся в ней буквы (переменные) и не имеет одинаковых членов. Всякое выражение алгебры логики можно привести к ДНФ. А всякую ДНФ можно привести к совершенной ДНФ, «домножая» члены на недостающие буквы (по закону A = AB ⋁ A ¬ B) и ликвидируя повторения букв в членах (по законам АА = A, A ¬ A = Л, Л × A = Л, Л ⋁ A = A) и повторения членов (по закону A ⋁ A = A). Приведение к совершенной ДНФ позволяет по любым двум данным выражениям A и B решить вопрос о том, одну ли и ту же функцию они выражают, то есть верно ли тождество A = B. Важную роль играет так называемая сокращённая ДНФ. Последнюю можно определить как такую ДНФ, в которой 1) нет повторений букв ни в одном члене; 2) нет таких пар членов Аi, и Aj, что всякий множитель из Аi, имеется и в Аj, и 3) для всяких двух таких членов, из которых один содержит множителем некоторую букву, а другой — отрицание той же буквы (при условии, что другой буквы, для которой это имеет место, в данной паре членов нет), имеется (в этой же ДНФ) член, равный конъюнкции остальных множителей этих двух членов. Кроме ДНФ, употребляются также конъюнктивные нормальные формы (КНФ). Это такие выражения, которые можно получить из ДНФ путём замены в них знаков «⋁» на «×», а «×» на «⋁». Преобразованием двойственности называется такое преобразование выражения алгебры логики, при котором в этом выражении знаки всех операций заменяются на знаки двойственных им операций, а константы: И на Л, Л на И; причём операция (или функция) Φ называется двойственной для операции Ψ, если таблица, задающая Φ, получается из таблицы, задающей Ψ, путём замены в ней всюду И на Л, а Л на И (имеется в виду одновременная замена и значений функции, и значений её аргументов). Если Φ двойственная Ψ, a Ψ двойственная X, то Φ = X. Например, конъюнкция и дизъюнкция двойственны между собой, отрицание двойственно самому себе, константа И (как функция) двойственна константе Л. Функция Φ(A1, A2, … An) двойственна функции Ψ (A1, A2, An), если, и только если, верно тождество: ¬ Φ(A1, A2, … An) = Ψ (¬ A1, ¬ A2, … ¬ An). Совершенную КНФ и сокращённую КНФ можно определить как такие КНФ, что двойственные им выражения есть соответственно совершенная ДНФ и сокращённая ДНФ. Совершенные и сокращённые ДНФ и КНФ можно использовать для решения задачи обзора всех гипотез и всех следствий данного выражения алгебры логики. Причём под гипотезой выражения A алгебры логики естественно понимать такое выражение B, что B → A тождественно истинно, а под следствием выражения A — такое выражение B, что A → B тождественно истинно. Ещё один, часто употребляемый в алгебре логики шаг абстракции, состоит в отождествлении И с числом 1, а Л — с числом 0. Вводится операция A + B, задаваемая таблицей: 0 + 0 = 0, 0 + 1 = 1, 1 + 0 = 1, 1 + 1 = 0. Она называется сложением (точнее сложением по модулю 2; другое название: разделительная дизъюнкция; читается: «A плюс B», или A не эквивалентно B», или «либо A, либо B»). Всякую функцию алгебры логики можно представить через умножение (то есть конъюнкцию), сложение и константу 1 (теорема Жегалкина). В частности, верны следующие тождества:
Обратные представления имеют вид:
Тождества VIII позволяют «переводить» выражения «языка» конъюнкции, дизъюнкции и отрицания (КДО) на «язык» умножения, сложения и единицы (УСЕ), а тождества X — осуществлять обратный «перевод». Тождественные преобразования можно производить и на «языке» УСЕ. В основе их лежат следующие законы:
Этих тождеств достаточно для того, чтобы из них можно было вывести любое (верное) тождество, обе части которого суть выражения «языка» УСЕ. А добавив к ним тождества VIII, мы сможем выводить и все тождества «языка» КДО. Выражение «языка» УСЕ называется приведённым полиномом, если оно есть 1 + 1 (то есть нуль) или имеет вид A1 + A2 + … + Аs где каждый член A, есть либо 1, либо буквенная переменная, либо произведение последних, причём ни в одном члене нет никаких повторений букв, никакие два члена не одинаковы (в том же смысле, что и выше), a S не обязательно больше 1 (то есть знаков «+» может не быть). Всякое выражение алгебры логики можно привести к приведённому полиному (теорема Жегалкина). Кроме «языков» КДО и УСЕ существуют и другие «языки», обладающие тем свойством, что через операции (и константы) этих «языков» можно представить всякую функцию алгебры логики. Такие системы называются (функционально) полными. Примеры полных систем:
Иногда совершают ещё один важный дальнейший шаг абстракции. Отвлекаются от табличного задания операций и от того, что значениями буквенных переменных являются высказывания. Вместо этого допускаются различные интерпретации рассматриваемого «языка», состоящие из той или иной совокупности объектов (служащих значениями буквенных переменных) и системы операций над объектами этого множества, удовлетворяющих тождествам из полной системы тождеств этого «языка». «Язык» КДО в результате такого шага абстракции превращается в «язык» так называемой булевой алгебры, «язык» УСЕ — в «язык» так называемого булева кольца (с единицей), «язык» конъюнкции и дизьюнкции — в «язык» так называемой дистрибутивной структуры. Важным примером булевой алгебры является алгебра классов, в которой роль элементов играют подмножества (классы) некоторого фиксированного множества (так называемого универсума) U, роль 0 играет пустое множество 0, роль 1 — само U, роль AB, A ⋁ B и ¬ Α — теоретико-множественной операции пересечения, объединения и дополнения соответственно. Связь между алгеброй классов, алгеброй предикатов и алгеброй высказываний, этими тремя наиболее важными интерпретациями абстрактной алгебры логики как «языка» булевой алгебры, состоит в следующем: первая переходит во вторую путём замены множеств (классов) их так называемыми характеристическими предикатами (то есть множества A — предикатом x ∈ A, гласящим: «x принадлежит множеству A»), если при этом соответствующим образом преобразуются также операции и константы 0 и 1, а вторая переходит в третью при подстановке во все предикаты на место их аргументов некоторого фиксированного их значения. Вернее, при таком переходе от алгебры классов к алгебре предикатов получается алгебра одноместных предикатов. Другим важным случаем является алгебра двуместных предикатов, называемых чаще отношениями. С ней тесно связана алгебра отношений, отличающаяся от неё только тем, что в последней, кроме трёх операций булевой алгебры, имеются ещё две. Всякую булеву алгебру можно «переделать» в булево кольцо, определив операцию A + B согласно закону X (и отбросив операцию A ⋁ B). Например, в случае алгебры множеств роль A + B играет так называемая симметрическая разность множеств A и B (состоящая из всех тех элементов универсума, которые принадлежат одному и только одному из множеств A или B). Обратно, всякое булево кольцо (с единицей) можно «переделать» в булеву алгебру. Понятия булевой алгебры и булева кольца связываются с именем Дж. Буля. Однако оформились эти понятия (не говоря уже о терминах) значительно позже. Первые работы по алгебре логики были посвящены задачам:
В настоящее время алгебра логики развивается главным образом под влиянием задач, встающих в области её приложений. Она находит широкое применение в технике, и наоборот, развивается сама под влиянием запросов техники и задач программирования. Вопросы, касающиеся понятий самой алгебры логики, приводят к проникновению в алгебру логики неалгебраических методов (таких как табличные, топологические, дескриптивные) и вследствие этого к постепенному выделению из алгебры логики самостоятельной области — теории функций алгебры логики (или иначе, теории булевых функций). Другие тенденции возможного дальнейшего развития алгебры логики связаны с успехами теории алгоритмов и попытках алгебраизации последней, то есть построения алгебраической теории алгоритмов. Всё большее прикладное значение приобретает теория булевых функций как самостоятельная область, выделившаяся из алгебры логики. В результате пришли к понятию функциональной системы (Pn, C), где Pn есть множество всех функций n-значной логики (или множество всех функций счётнозначной логики Pω) с заданной на нём операцией суперпозиции CРn обычно рассматривается как обобщение множества всех булевых функций P2. Известна содержательная трактовка понятия функциональной системы (Pn, C) выступает её частным случаем), в основе которой лежит рассмотрение таких пар (Ρ, Ω), в которых Ρ есть множество отображений, реализуемых управляющими системами из некоторого класса, a Ω состоит из операции, используемой при построении новых управляющих систем из заданных. В свою очередь (P2, Q есть эквивалент алгебры логики. Таким образом, от алгебры формул, изучаемой в алгебре логики, перешли к алгебре функций. И хотя именно алгебра логики, то есть классическая логика высказываний (см. Логика высказываний), лежит в основе проектирования микросхем для современной цифровой электронной техники, в том числе и для компьютеров, подобные работы ведутся и на основе многозначных логик (см. Многозначные логики). Другим направлением современного развития алгебры логики является алгебраическая логика. Она интересна тем, что выдвигает и частично решает задачу построения алгебр неклассических логик (см. Неклассические логики), то есть таких вариантов алгебры логики, которые соответствуют неклассическим исчислениям высказываний. В этой области существенным является вопрос о построении алгебраической семантики, под которой понимается класс всех моделей некоторой алгебры, соответствующей логике L, поскольку посредством алгебраической семантики решаются такие металогические проблемы, как полнота L (относительно общезначимости в классе всех моделей), разрешимость L и другие. В итоге пришли к общему вопросу о том, какая логика алгебраически представима, то есть имеет алгебраическую семантику, а какая нет. Ответ на этот вопрос дан в работе В. Блока и Д. Пигоцци (Blok, Pigozzi, 1989). Существенно, что современное развитие алгебраической логики представляет собой систематическое применение методов и, главное, аппарата универсальной алгебры к символической логике. На сегодняшний день речь уже идёт об алгебраическом охвате всей символической логики, и результаты здесь весьма значительны. К примеру, если Alg (L) обозначает класс алгебр, который соотносится с некоторой логикой L (если L есть классическая логика высказываний, то Alg (L) есть класс булевых алгебр), можно формулировать теоремы, утверждающие, что L имеет определённое логическое свойство тогда и только тогда, когда Alg (L) имеет определённое алгебраическое свойство. Это позволяет дать алгебраическую характеризацию таких логических свойств, как полнота, наличие теоремы дедукции, компактность, разрешимость, интерполяционность Крейга, истинность формул в модели и так далее. Так, первые два свойства принимают следующий вид: L допускает строго полную гилбертовскую аксиоматизацию (Γ ⊦ A тогда и только тогда, когда Γ ⊨ A) тогда и только тогда, когда Alg (L) есть финитно аксиоматизируемое квази-многообразие; L допускает теорему дедукции тогда и только тогда, когда Alg (L) имеет эквационально определимые главные конгруэнции. |
|
Библиография |
|
---|---|
Издания на русском языке: |
|
|
|
Издания на других языках: |
|
|
|