Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛЕКЦИИ ПО ИНФОРМАТИКЕ 1 семестр.doc
Скачиваний:
0
Добавлен:
09.02.2020
Размер:
702.46 Кб
Скачать

Алгебра логики

Понятие об алгебре высказываний

Великий немецкий математик Готфрид Лейбниц (1646-1716) разработал в 1666 г. (в двадцатилетнем возрасте) общий метод, позволяющий свести любую мысль к точным формальным высказываниям. Это открыло возможность перевести логику (Лейбниц называл ее законами мышления) из царства слов в царство математики, где отношения между объектами и высказываниями точны и определенны. Таким образом, Лейбниц стал основателем формальной логики. Он занимался исследованием двоичной системы счисления, наделяя ее неким мистическим смыслом: цифру 1 он ассоциировал с Богом, а 0 – с пустотой. Из эти двух цифр, по мнению Лейбница, произошло все и с их помощью можно выразить любое математическое понятие. Лейбниц первым высказал мысль о том, что двоичная система может стать универсальным логическим языком.

Лейбниц мечтал о построении универсальной науки. Он хотел выделить простейшие понятия, с помощью которых по определенным правилам можно сформулировать понятия любой сложности; мечтал о создании универсального языка, на котором можно было бы записывать любые мысли в виде математических формул; думал о машине, которая могла бы выводить теоремы из аксиом, о превращении логических утверждений в арифметические. В 1673 г. Лейбниц создал новый тип арифмометра – механический калькулятор, который не только складывает и вычитает числа, но и умножает, делит, возводит в степень, извлекает квадратные и кубические корни.

В 1847 г. английский математик Джордж Буль (1815-1864) создал универсальный логический язык. Буль разработал исчисление высказываний (впоследствии названное в его честь булевой алгеброй), которое представляет собой формальную логику, переведенную на строгий язык математики. Формулы булевой алгебры внешне похожи на формулы знакомой нам алгебры, причем это сходство не только внешнее, но и внутреннее. Булева алгебра – вполне равноправная алгебра, подчиняющаяся своду принятых при ее создании законов и правил. Она является системой обозначений, применимой к любым объектам – числам, буквам и предложениям. Пользуясь этой системой, можно закодировать любые утверждения, истинность или ложность которых нужно доказать, а затем манипулировать ими, подобно обычным числам в математике.

Огромную роль в распространении булевой алгебры и ее развитии сыграл американский философ, логик, математик естествоиспытатель Чарльз Пирс (1839-1914).

Объект рассмотрения в алгебре логики – так называемые высказывания, т. е. любые утверждения, о которых можно сказать, что они либо истинны, либо ложны. Например: «Сургут – город в России», «9 – четное число»: первое высказывание истинно, а второе – ложно.

Таким образом, высказывание – это любое утверждение, которое может быть либо истинным, либо ложным, но не может быть истинным и ложным одновременно. В математической логике понятие «высказывание» определяется как повествовательное предложение. В информатике это понятие сужается до определения: высказывание – это логическое выражение. Над высказываниями возможны определенные операции.

Итак, раздел математической логики, изучающий высказывания и операции над ними, называется булевой алгеброй. Булева алгебра – частный случай алгебры логики.

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

Из простых логических высказываний образовываются сложные высказывания. Для этого используются союзы: И; ИЛИ; ЕСЛИ…ТО; НЕ.

Истинное значение высказывания, полученного с помощью более простых высказываний, полностью определяется истинными значениями исходных высказываний. Поэтому каждой логической операции соответствует функция, принимающая значения 1 (ИСТИНА, TRUE) или 0 (ЛОЖЬ, FALSE), аргументы которой также принимают значения 1 или 0. Такие функции и называются логическими функциями.

Рассмотрим основные логические операции.

Конъюнкция (логическое умножение, И) двух высказываний А и В представляет собой сложное высказывание, которое истинно тогда и только тогда, когда истинны оба составляющих его высказывания А и В. Обозначение конъюнкции: 1) АВ (читается: А и В); 2) символ «∙» 3) между перемножаемыми высказываниями знак отсутствует: АВ = А∙В = АВ; 4) &.

Значение истинности логического произведения АВ в зависимости от значений истинности высказываний А и В определяется следующими соотношениями:

00=0; 01=0; 10=0; 11=1 (7)

Пример. Если мы обозначим высказывание «6 делится на 2» как А, а «6 делится на 3» как В, их конъюнкцией будет высказывание «6 делится на 2 и 6 делится на 3», которое записывается как АВ и является истинным.

Дизъюнкция (логическое сложение, ИЛИ) двух высказываний А и В является сложным высказыванием, которое истинно, когда хотя бы одно из слагаемых А и В истинно. Обозначение дизъюнкции: 1) АВ (читается: А или В); 2) в виде матрицы

Значение истинности логического сложения АВ в зависимости от значений истинности высказываний А и В определяется следующими соотношениями:

00=0; 01=1; 10=1; 11=1 (8)

Пример. Обозначим высказывание «В треугольнике DFE угол D острый» как А, а высказывание «В треугольнике DFE угол Е острый» как В. Тогда дизъюнкция АВ у этих высказываний «В треугольнике DFE угол D или угол Е острый» истинна, так как обязательно истинно хотя бы одно из высказываний.

Отрицание (НЕ). Отрицанием высказывания А является сложное высказывание А. которое ложно, когда А истинно, и истинно, когда А ложно. Обозначение отрицания: 1) Ā (читается: не А); 2)А′.

Значение истинности отрицания высказывания А определяется следующими соотношениями:

1′=0; 0′=1 (9)

Пример. Пусть имеется высказывание А «Река Волга впадает в Каспийское море». Тогда высказывание «Неверно, что река Волга впадает в Каспийское море» будет отрицанием, то есть Ā, а высказывание «Неверно, что река Волга не впадает в Каспийское море» – двойным отрицанием.

Эквивалентность (равнозначность) двух высказываний А и В обозначается символом «». (иногда – «~».). Значение истинности эквивалентных высказываний А и В определяется в зависимости от значений истинности исходных высказываний по следующим соотношениям:

00=1; 01=0; 10=0; 11=1 (10)

Пример. Обозначив высказывание «Треугольник SPQ с вершиной S и основанием PQ равнобедренный» как А, а высказывание «В треугольнике SPQ с вершиной S и основанием PQ Р =Q» как В, мы можем записать высказывание «Треугольник SPQ с вершиной S и основанием PQ равнобедренный тогда и только тогда, когда Р =Q» – в форме эквивалентности АВ. Эквивалентность является истинной, так как высказывания либо одновременно истинны, либо одновременно ложны.

Импликация двух высказываний обозначается символом «» (если А, то В) или стрелкой: «», а выражение АВ читается как «если А, то В».

Пример. Обозначив высказывание «Число 12 делится на 6» как А, а высказывание «Число 12 делится на 3» как В, мы получим импликацию АВ, которая отражает высказывание «Если число 12 делится на 6, то оно делится на 3» и является истинным.

Построение таблиц истинности сложных высказываний

В булевой алгебре существует понятие «значение истинности высказывания». Если высказывание истинно, то его значению придается символ 1, а если ложно – символ 0.

Логические функции могут задаваться таблицами, часто называемыми таблицами истинности (табл. 2).

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

А

В

Ā

АВ

АВ

АВ

АВ

0

0

1

0

0

1

1

0

1

1

0

1

0

1

1

0

0

0

1

0

0

1

1

0

1

1

1

1

Как читается данная таблица? В качестве примера прочитаем ее верхнюю строку: «Если переменные А и В принимают значения ЛОЖЬ, то отрицание А принимает значение ИСТИНА; выражение (А и В) принимает значение ЛОЖЬ; выражение (А или В) принимает значение ЛОЖЬ; выражение (А эквивалентно В) принимает значение ИСТИНА; выражение (если А, то В) принимает значение ИСТИНА.

Понятие формулы алгебры логики

С помощью логических операций над высказываниями можно строить сложные высказывания. При этом порядок выполнения операций определяется скобками. Например, из трех высказываний, А, В, С, можно построить два высказывания:

и

Первое высказывание есть дизъюнкция конъюнкции А, В и отрицания высказывания С. Второе высказывание есть импликация, посылкой которой является высказывание А, а заключением – отрицание дизъюнкции высказывания В и конъюнкции высказываний А, С.

Формулы алгебры логики – это сложное высказывание, которое может быть получено из элементарных высказываний посредством применения логических операций отрицания, конъюнкции, дизъюнкции, импликации и эквивалентности.

Буквенные обозначения формул алгебры логики используются в основном в определениях, когда надо обозначить некоторые общие для формул закономерности.

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

1. Если высказывание простое, то ему ставится в соответствие элементарная формула.

2. Если высказывание составное, то для составления соответствующей формулы нужно:

1) выделить все элементарные высказывания и логические связки, образующие данное составное высказывание;

2) заменить их соответствующими символами (различные элементарные высказывания обозначатся различными символами);

3) расставить скобки в соответствии со смыслом данного высказывания.

Приоритет логических операций

Логические операции выполняются в формулах по следующим правилам приоритета:

1) первыми выполняются операции отрицания (НЕ);

2) вторыми выполняются операции конъюнкции (И);

3) затем выполняются операции дизъюнкции (ИЛИ);

4) в последнюю очередь выполняются операции импликации и эквивалентности.

При этом у операций в скобках приоритет выше, чем у операций вне скобок.