Математическая логика.ppt
- Количество слайдов: 25
Математическая логика
История логики Согласно одному из самых распространенных определений, ЛОГИКА (от греческого logice – разум) есть наука о способах доказательств истинности рассуждений. Основоположником формальной логики считается древнегреческий ученый Аристотель (384 323 до н. э. ), написавший книгу о законах мышления Органон.
История логики Основоположником математической логики является великий немецкий математик Готфрид Вильгельм Лейбниц (1646 – 1716 гг. ), изучивший труды Аристотеля. Он попытался построить универсальный язык, с помощью которого споры между людьми можно было бы разрешать посредством вычислений. На заложенном Лейбницем фундаменте ирландский математик Джордж Буль (1815 – 1864 гг. ) разработал алгебру логики.
История логики Д. Буль изложил алгебру логики в книге Исследование законов мышления , где, в отличие от обычной алгебры, определены операции не с числами, а с человеческими высказываниями и переменными, которые могут быть истинными или ложными. В честь Д. Буля логические переменные впоследствии стали называть булевскими. Современная математическая логика использует формальные языки с точным синтаксисом, однозначно определяющим понимание и доказуемость математических формул на основании первичных формул аксиом и правил вывода, то есть широко используется в математических приложениях.
Структура курса Учебный курс математической логики включает два основных раздела: логику высказываний и охватывающую ее логику предикатов функций, принимающих значения истина или ложь , в зависимости от значений аргументов, определенных на произвольных уже множествах ( рис. 1) .
Высказывания и операции над ними Опр: Высказывание – утверждение, о котором можно вполне определенно сказать истинно (И) оно или ложно (Л). Примеры: «Число 25 делится на 5» – высказывание, значением которого является И; «Число 25 меньше 5» – высказывание, значением которого является Л; «У треугольника 3 стороны» – высказывание, значением которого является И; « 3 x<2» – это предложение не является высказыванием, так как при разных значениях переменной x может быть как истинным , так и ложным (высказывательная переменная); Высказывания будем обозначать большими английскими буквами А, В, С, D, … Значение истинности высказываний будем обозначать соответственно истину единицей, а ложь нулем. Высказывательные переменные будем обозначать простыми английскими переменными x, y, z, p, …
7 Высказывание или нет? Сейчас идет дождь. Жирафы летят на север. История – интересный предмет. У квадрата – 10 сторон и все разные. Красиво! В городе N живут 2 миллиона человек. Который час?
Высказывания и операции над ними • • • Опр: Высказывание называется простым, если его нельзя разбить на части, которые сами являются высказываниями. Опр: Высказывание называется сложным, если оно образовано из нескольких простых исходных высказываний. Примеры: «У прямоугольника все углы прямые» – простое высказывание; «У прямоугольника все углы прямые и площадь равна произведению высоты на ширину» – сложное высказывание; «Если целое число х имеет младшую цифру 0, то х – четное число» - сложное высказывание.
Высказывания и операции над ними • Сложные высказывания составляются из простых с помощью союзов НЕ (неверно), И, ИЛИ, ЕСЛИ … ТО, ТОГДА И ТОЛЬКО ТОГДА, соответствующие следующим • ЛОГИЧЕСКИМ ОПЕРАЦИЯМ (над высказываниями): • Отрицанием некоторого высказывания А называется такое высказывание, которое ложно, когда А истинно и наоборот истинно, когда А ложно. Обозначение: А (читается «не А» ) Это определение можно записать в виде ТАБЛИЦЫ ИСТИННОСТИ операции Примеры: Число 25 не делится на 5. (Высказывание ложно). Число 25 не простое. (Высказывание истинно).
Высказывания и операции над ними • Конъюнкцией двух высказываний А и В называется такое высказывание, которое истинно тогда и только тогда, когда истинны оба высказывания А и В. Обозначение: А В (читается «А и В» ) Определение конъюнкции двух высказываний распространяется на любое конечное число высказываний. • Примеры: Земля плоская, и Енисей река в Сибири (Высказывание ложно). • Земля шарообразна, и Енисей река в Сибири (Высказывание истинно).
Высказывания и операции над ними • Дизъюнкцией двух высказываний А и В называется такое высказывание, которое ложно тогда и только тогда, когда ложны оба высказывания А и В. Обозначение: А В (читается «А или В» Определение дизъюнкции двух высказываний распространяется на любое конечное число высказываний. Примеры: Земля плоская, или Енисей река в Европе. (Высказывание ложно). • Земля шарообразна, или Енисей река в Европе. (Высказывание истинно). •
12 Операция «исключающее ИЛИ» Высказывание «A B» истинно тогда, когда истинно А или B, но не одновременно (то есть A B). A B А B 0 0 1 1 0 1 0 1 1 0 также: A xor B (Паскаль), A ^ B (Си) арифметическое сложение, 1+1=2 остаток сложение по модулю 2: А B = (A + B) mod 2
Высказывания и операции над ними • Импликацией двух высказываний А и В называется такое высказывание, которое ложно тогда и только тогда, когда А – истинно, а В – ложно. Обозначение: А В (читается «если А то В» или «А импликация В» ) Примеры: Если -2 = 2, то -4 = 4. Если -2 = 2, то. Если , то -2 = 2. (Высказывание истинно). (Высказывание ложно).
Высказывания и операции над ними • Эквиваленцией двух высказываний А и В называется такое высказывание, которое истинно тогда и только тогда, когда оба высказывания одновременно либо истинны, либо ложны. Обозначение: А В (читается «А эквивалентно B» ) Примеры: Целое число делится на 6 тогда и только тогда, когда оно делится на 2 и 3 (Высказывание истинно). Целое число делится на 3 тогда и только тогда, когда оно делится на 9 (Высказывание ложно).
Логические переменные и логические функции • Опр: Переменные, принимающие только 2 значения: 0 и 1 (или ложь и истина) называются логическими или булевыми (или высказывательными переменными). • В качестве модели такой переменной может служить обычный выключатель света с двумя положениями или высказывание и его отрицание. • Опр: Функция f(x 1, x 2, …, xn) называется логической (или булевой или функцией алгебры логики), если все ее аргументы xi являются булевыми, и сама функция также может принимать только два значения 0 и 1. • Можно определить логическую функцию через отображение множеств: • Опр: N-ой декартовой степенью множества В={0, 1} называется множество, состоящее из всевозможных упорядоченных систем (х1, х2, …, хn) элементов множества В. • Обозначение: . • Вn = {(x 1, x 2, …, xn) / хi B} • Количество элементов во множестве В равно 2 (число размещений с повторениями из 2 элементов по n). • Опр2: Логической функцией f(х1, х2, …, хn) называется отображение множества в В.
Количество логических функций Множество всех логических функций от n переменных x 1, x 2, …, xn обозначают P 2. • Теорема. Количество логических функций с n переменными равно Таким образом, логических функций с одним аргументом существует =4, логических функций с двумя аргументами существует = 16. Если вместо высказываний в предыдущих примерах рассматривать логические переменные, то определенные выше операции с высказываниями определяют логические функции с одной или двумя переменными с теми же названиями.
Способы задания логических функций 1. Табличный (задание функции таблицей истинности). 2. Графический. 3. Аналитический (в виде логической формулы). Табличный способ задания Определим 4 логические функции с одним аргументом и дадим им названия:
Логические функции с 2 переменными
Логические функции и сложные высказывания Сложные высказывания могут быть описаны (интерпретированы) с помощью логических функций и, наоборот, логические функции интерпретируются сложными высказываниями. Пример: Запишем в виде логической функции следующее высказывание: Число а делится на 6 тогда и только тогда, когда а делится на 2, и а делится на 3. Разобьем данное сложное высказывание на простые: Х 1 – а делится на 6; X 2 - а делится на 2; X 3 - а делится на 3. Тогда соответствующая функция будет следующей: F = X 1 (X 2 X 3).
Таблица логической функции с 3 переменными Таблица истинности предыдущей функции с 3 аргументами Содержит уже 8 строк:
Аналитический способ задания функции (логические формулы) Таблица истинности булевой функции с 10 аргументами будет содержать строк (1024). Значительно проще в таком случае задавать функцию аналитически формулой. Рассмотренные 20 логических функций одной и двух переменных называются элементарными. Символы , , , и , участвующие в обозначениях элементарных функций называются логическими связками (операциями). Опр: Пусть X= {Х 1, Х 2, …, Хn} фиксированный алфавит логических переменных, = { , , , , } множество логических операций, F множество логических функций. Опр: Формулой над называется всякое выражение вида: 1) x любая переменная из X и обозначения 20 элементарных функций; 2) Если A и B формулы, то , A B это тоже формулы над . 3) Других формул нет.
Порядок вычисления значения формулы Для того чтобы значение формулы было определено однозначно, будем считать, что логические операции выполняются в следующем порядке: 1. Сначала выполняются операции в скобках (если они есть); 2. Отрицание; 3. Штрих Шеффера (|), стрелка Пирса ( ). 4. Конъюнкция ( ); 5. Дизъюнкция ( ), сложение по модулю 2 ( ) 6. Импликация ( ); 7. Эквиваленция ( ).
Графический способ задания функции Рассмотрим графическое представление булевой функции F = X 1 (X 2 X 3), заданной таблицей 8. Множество наборов значений трех переменных можно истолковать как множество координат вершин трехмерного единичного куба (рис. 1). Отметим вершины куба, в которых функция принимает значение 1 кружочками.
Уточнение понятия равенства функций Логические функции равны, если у них одинаковые таблицы истинности. Обобщим понятие равенства логических функций следующим образом: Будем говорить, что булева функция f(x 1, x 2, …, xn) существенно зависит от переменной xi, если существует такой набор значений (α 1, α 2, …, αi-1, αi+1, …, αn) переменных (x 1, x 2, …, xi-1, …, xn), что выполняется неравенство: f(α 1, α 2, …, αi-1, 0, αi+1, …, αn) f(α 1, α 2, …, αi-1, 1, αi+1, …, αn). В противном случае переменная xi называется фиктивной для функции f. Например, для функции t 1(x 1, x 2)=0 переменная x 2 является фиктивной. Опр: булевы функции f 1 и f 2 называются равными, если функцию f 2 можно получить из функции f 1 введением или добавлением фиктивных переменных. Теперь функции F 1(x)=0 и t 1(x 1, x 2)=0 равны.
25 Табличный метод решения логической задачи Задача 2. Дочерей Василия Лоханкина зовут Даша, Анфиса и Лариса. У них разные профессии и они живут в разных городах: одна в Ростове, вторая – в Париже и третья – в Москве. Известно, что • Даша живет не в Париже, а Лариса – не в Ростове, • парижанка – не актриса, • в Ростове живет певица, • Лариса – не балерина. Париж Ростов Москва 0 1 0 0 1 ! Певица Даша Анфиса Лариса 1 0 0 Балерина Актриса 0 1 0 0 0 1 В каждой строке и в каждом столбце может быть только одна единица!


