
Лекция 4. Основные понятия математической логики.
План лекции:
-
Основные определения
-
Логические операции
-
Законы логики
-
Формы логических функций
-
Совершенные формы записи логических функций СКНФ и СДНФ.
Перейдем к основным понятиям и определениям, которые встречаются в математической логике. Прежде всего, логика –это наука о формах и способах мышления. Логика, как наука была впервые предложена древнегреческим ученым Аристотелем. Он был учеником Платона. В 343г. до н.э.- воспитатель Македонского. В 335г. до н.э. основал Ликей (лицей или перипатетическую школу). Создал понятие аппарат, которое до сих пор пронизывает философский лексикон и сам стиль научного мышления.
Основными формами мышления являются:
- понятие
- высказывание
- умозаключение
Понятие - этоформа мышления, фиксирующая основные, существенные признаки объекта.
Высказывание – это форма мышления, в которой что-либо утверждается или отрицается о свойствах реальных предметов и отношения между ними. Высказывание может быть либо истинно либо ложно.
Умозаключение – это форма мышления, с помощью которой из одного или нескольких суждений может быть получено новое суждение (заключение).
В алгебре высказываний высказывания обозначаются именами логических переменных, которые могут принимать лишь 2 значения: «истина» (1) и «ложь» (2).
Свое развитие математическая логика получила в 19 веке. Ее иногда называют булевой алгеброй в честь ирландского математика Джорджа Буля. Математический аппарат булевой алгебры позволил формализовать действиями над математическими выражениями и явился базой для разработки логических элементов и логических основ для построения цифровых основ в том числе и компьютерных.
Логические операции.
Основные логические операции:
- инверсия
- дизъюнкция
- конъюнкция
- импликация
- эквивалентность
- неравнозначность
Следует отметить, что кроме перечисленных- основных логических операций существуют и другие.
-
Логическое умножение (конъюнкция)
Объединение двух или нескольких высказываний в одно с помощью союза «и» называется операцией логического умножения.
Составное высказывание, образованное в результате операции логического умножения (конъюнкции) истинно тогда и только тогда, когда истины все входящие в него простые высказывания.
Операции логического умножения принято обозначать значком «^» или «&».
F=B&A
где F- функция
А и В- логические переменные, которые могут принимать значения «истина» (1) и «ложь» (0).
Таблица 1-истинности функции логического умножения.
А |
В |
F=B&A
|
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
Отсюда и пошло название логическое умножение, если вы забудете, что 0 и 1 это значение логических переменных, а просто проведете аналогию с целыми числами и проведете умножение между ними, то вы получите правый столбец таблицы1.
-
Логическое сложение (дизъюнкция)
Объединение двух или нескольких высказываний в одно с помощью союза «или» называется операцией логического сложения (дизъюнкция).
Операция дизъюнкция будет ложной только тогда, когда одновременно ложны два ее операнда.
Операции логического сложения (дизъюнкция) принято обозначать значком «˅» или «+».
F=B˅A
где F- функция
А и В- логические переменные, которые могут принимать значения «истина» (1) и «ложь» (0).
Таблица 2 –истинности функции логического сложения.
А |
В |
F=B˅A
|
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
Есливы забудете, что 0 и 1 это значение логических переменных, а просто проведете аналогию с целыми числами и проведете сложение между ними, то вы получите правый столбец таблицы 2.
-
Логическое отрицание (инверсия).
Присоединение частицы «не» к высказыванию называется операцией логического отрицания (инверсией). Логическое отрицание делает истинное высказывание ложным и, наоборот, ложное –истинным.
Операции логического
отрицания (инверсию) над логическим
высказыванием А в алгебре логики принято
обозначать
,
либо !А, либо
~A.
F=
Таблица 3- истинности функции логического отрицания.
А |
F=
|
0 |
1 |
1 |
0 |
-
Импликация «если…то». Используется в таких высказываниях, в которых есть альтернатива использования частиц если … то. Например, если на улице дождь, то я одену плащ.
А→В=˅В
где А- посылка
В-следствие
Ситуация является ложной в том случае, когда посылка является истинной, а следствие ложным.
-
Эквивалентность «если и только если». Эта операция встречается в равнозначных высказываниях.
А |
В |
F=А→В
|
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
А |
В |
F=А↔В
|
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
А↔В=&
˅A&B
Все операции, кроме конъюнкции, дизъюнкции и отрицания можно записать на основании эквивалентных преобразований, с использованием этих трех операций.Конъюнкцию, дизъюнкцию и отрицание называют основным базисом, т.е. это тот базис, на котором могут быть записаны любые известные операции. Эквивалентность записана как отрицание А конъюнкция В дизъюнкция А конъюнкция В.
-
Неравнозначность (сложение по модулю 2, исключающее или) (либо…либо). Неравнозначность можно рассматривать, как обратную операцию к эквивалентности, т.е. неравнозначность истинна в тех случаях, когда два операнда А и В имеют разные значения.
А |
В |
F=А
|
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
Законы логики.
Закон тождества. Всякое высказывание тождественно самому себе
А=А.
Закон противоречия. Закон говорит о противоречащих друг другу высказываниях, т.е. о таких высказываниях, одно из которых является отрицанием другого. Высказывание не может быть одновременно истинным и ложным.Например, дождь не может идти и не идти одновременно.
А&=0.
Закон исключенного третьего.Закон устанавливает связь между противоречащими друг другу высказываниями. Высказывание может быть либо истинным, либо ложным, третьего не дано. Например, дождь идет или не идет.
А˅=1.
Закон двойного отрицания.Если дважды отрицать некоторое высказывание, то в результате мы получим исходное высказывание:
=А.
Законы де Моргана. Именем английского логика20века А. де Моргана называются логические законы, связывающие с помощью отрицания высказывания, образованные с помощью союзов «и» и «или».
При эквивалентных преобразованиях эти законы широко используются для раскрытия операции отрицания, когда она захватывает несколько операций.
Закон коммутативности (переместительный). От изменения мест переменных значение функции не меняется.
Таблица 4-переместительный закон.
Логическое умножение
|
Логическое сложение
|
А&B=B&A |
А˅B=B˅A |
Закон ассоциативности (сочетательный). От изменения первоочередности вычислений значение функции не меняется. Этот закон знаком нам из школы, это закон о раскрытии скобок при вычислениях.
Таблица 5- сочетательный закон.
Логическое умножение
|
Логическое сложение
|
(А&B)&C=A&(B&C) |
(А˅B)˅C= A˅(B˅C) |
Таблица 6- закон дистрибутивности. Речь идет о том, как раскрываются скобки при различных операциях.
Дистрибутивность умножения относительно сложения
|
Дистрибутивность сложения относительно умножения
|
ab+ac=a(b+c)-валгебре (А&B)˅(A&C)= A&(B˅C)
|
(А˅B)&(A˅C)= A˅(B&C) |
Логическое умножение
|
Логическое сложение
|
А& A=А |
А˅ A=А |
Свойства констант 0 и 1:
=1,
=0,
1
А=
,
0
А=А,
А
=1.
Логическое умножение
|
Логическое сложение
|
А&1=А A&0=0
|
А˅ 1=1 A˅0=A |
Решение логической задачи:
Определить истинность составного высказывания:
(2х2=4 и 3х3=10) или (2х2=5 и 3х3=9).
Заменим простые высказывания логическими переменными и установим их истинность или ложность.
А: «2х2=4»-истинно(1)
В: «3х3=10»-ложно(0)
С: «2х2=5» - ложно(0)
Е: «3х3=9»-истинно(1)
Заменим логические связи «и» и «или» операциями умножения и логического сложения. Тогда составное высказывание примет вид следующего логического выражения: (А&B)˅(С&Е)
Подставим вместо логических переменных их логические значения и определим истинность составного высказывания, используя таблицы истинности логических функций:
(1&0)˅(0&1)=0˅0=0.
Результат- составное высказывание ложно.
Формы логических функций.
Рассматривая основные операции логики, мы работали с простейшими функциями: функции конъюнкции, функции дизъюнкции и т.д. Но есть и сложные, содержащие в себе все эти элементарные функции.
Одна и та же логическая функция может быть записана различным образом. Например, функция F(x1,x2) может быть записана следующими эквивалентными выражениями:
Основная задача преобразования логической функции сводится к тому чтобы привести ее к более простому виду. Для исключения неоднозначности записи логические функции представляют в унифицированных формах. Такими формами являются: дизъюнктивная и конъюнктивная. Элементарная конъюнкция- такая конъюнкция, в которую входят только переменные и их отрицания, например,
Элементарной называется дизъюнкция, представляющая собой логическую сумму переменных и их отрицаний, например,
В элементарные конъюнкции, дизъюнкции не могут входить одинаковые переменные, а так же переменные с их отрицаниями. Такиеконъюнкции (дизъюнкции) должны преобразовываться. При этом они упрощаются, а также превращаются в 0 или1, например,
Элементарные конъюнкции (дизъюнкции) могут характеризоваться рангом, равным количеству переменных в конъюнкции(дизъюнкции).
Т.о. мы можем перейти к определению дизъюнктивной нормальной формы (ДНФ)- это форма, в которой логическая функция представляется в виде дизъюнкции элементарных конъюнкций, например:
F=x1x2+x1x3+x1x2x3
Функции следующих выражений записаны также в ДНФ:
Конъюнктивная нормальная форма (КНФ)- это форма, в которой логическая функция представляется в виде конъюнкции элементарных дизъюнкций, например:
Использование нормальных форм не устраняет полностью неоднозначности записи логических функций, например:
может быть записана также выражениями
Совершенные формы записей логических функций.
Применяются совершеннаядизъюнктивная исовершенная конъюнктивная нормальные формы (СДНФ и СКНФ).
Эти формы имеют две основные отличительные способности:
-
Все элементарные конъюнкции и дизъюнкции имеют одинаковый ранг.
-
В элементарные конъюнкции (дизъюнкции) входят все те переменные или их отрицания, от которых зависит функция.
Пример.
Функция
F=x1x2+
x1x3+x1x2x3содержит
конъюнкции одинакового ранга, но записана
в ДНФ, а не в СДНФ. Это объясняется тем,
что элементарные конъюнкции не содержат
всех тех переменных или их отрицаний,
от которых зависит функция. Функция
записана в СДНФ.
Рассмотрим, как записывается СДНФ с помощью таблиц истинности.
Правило записи СДНФ функции по таблице истинности. Для всех наборов переменных, на которых функция принимает единичные значения, записать конъюнкции, инвертируя те переменные, которым соответствуют нулевые значения. Затем конъюнкции соединить знаками дизъюнкции.
Таблица истинности логических функций:
X1 |
X2 |
X3 |
F
|
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |