Lec_1.ppt
- Количество слайдов: 42
Математическая логика
Идеи математической логики 1) Предполагается, что все высказывания обычного языка можно записать математическими знаками 2) Все рассуждения можно заменить вычислением 3) Применить математические методы для оценки справедливости рассуждений
Основы n «Аналитики» Аристотеля (384 -322 гг. до н. э). n "Первые аналитики" содержат теорию силлогизмов Пример силлогизма: n Всякий человек смертен (бо льшая посылка) n Сократ — человек (меньшая посылка) n ------ n Сократ смертен (заключение) n "Вторые аналитики" содержат теорию доказательств
Этапы развития n Замысел универсального логического исчисления развивал Лейбниц (1646 -1716) n Начало создания аппарата математической логики положил Джордж Буль (1815 -1864) n Логико-математические языки были значительно развиты в работах Фреге (1848 -1925) n В работах Пеано (1858 -1932) и особенно Рассела и Уайтхеда, изданных в 1910 -1913 годах, представлено изложение основных разделов математики на языке математической логики n В 20 -ых годах XX века — с программой обоснования математики на базе математической логики выступил Гильберт (1862 -1943)
Логические представления n Логическое представление исследуемой системы — это ее описание в виде совокупности сложных высказываний. n Логические представления характеризуются определенными свойствами и набором допустимых преобразований над ними (операций, правил вывода и т. п. ), которые являются законами логики.
Предмет изучения n Правила логического представления высказываний, построения новых высказываний из имеющихся с помощью логически выдержанных преобразований n Методы установления истинности или ложности высказываний.
Разделы МЛ Современная логика состоит из двух разделов n логика высказываний n логика предикатов Для построения логики существует два основных подхода (языка): n алгебра логики n исчисление логики
Логика высказываний
Основные определения n Высказывание — повествовательное предложение (утверждение, суждение), о котором имеет смысл говорить, что оно истинно или ложно. Пример: «Дважды два четыре» , «На улице жара» . Все научные знания, события повседневной жизни, ситуации в экономике, управлении, политике формируются в виде высказываний. n Простые высказывания рассматриваются в данном контексте как неделимое целое (аналогично элементу множества) n Сложные высказывания формулируются из простых с помощью логических связок (логических операций), заменяющие связки естественного языка в сложных предложениях.
Логические связки (операция) n Сложное высказывание: Если человек болен гриппом, то у него высокая температура n Логическая операция - это функция вида f(x 1, x 2, …xn): Bn→B, где В множество состоящее из двух элементов В={0, 1}. n Логическая операция – это функция зависящая от логических переменных (т. е. принимающих значение 0, 1), которая так же может принимать только два значения 0 и 1. n В таблице истинности для бинарных операций первые два столбца содержат все возможные наборы операндов, а последующие столбцы значение логических функций.
Конъюнкция. Дизъюнкция. Отрицание n Конъюнкция (операция логического умножения, обозначается любым из символов А&В, АВ ) соответствует связывающему слову «И» , «НО» , «А» . Значение операции А&B=1 если оба операнда равны 1. Пример: «Дискретная математика легкий, но объемный предмет» n Дизъюнкция (операция логического сложения обозначается А В) соответствует связывающему слову «ИЛИ» . Подразумевает истинность А или В или обоих высказываний. Значение А В=1 если хотя бы один из операндов равен 1. Пример: «Петров любит футбол или формулу-1» n Отрицание (операция отрицания или дополнения, обозначается любым из символов А, Ā) соответствует связывающему слову «не верно, что» или «не …» . Значение Ā=1 если А=0 и наоборот. А B А&B A B А В 0 0 1 1 0 1 0 0 1 1 1 0 0
Разделительное ИЛИ. Эквивалентность n Разделительное ИЛИ (обозначается ХОR, 2) соответствует фразам «ИЛИ» , «Либо … либо» в разделительном смысле. Значение А 2 В =1 если значение операндов различно. Например: «Студент Иванов сдаст экзамен по дискретной математике или не сдаст» . n Эквивалентность (обозначается А В) соответствует связкам «А эквивалентно В» , «А равносильно В» , «А тоже, что и В» , «А тогда и только тогда, когда В» , «А необходимо и достаточно для В» . Значение А В=1, Если А=В. Например: «Деление числа k на 2 и 3 (А) необходимо и достаточно для деления k на 6 (В)» . n «Любое число делится на 6 (А) тогда и только тогда, когда оно делится на 2 и 3 (В)» . А B А 2 B A~B 0 0 0 1 0 1
Импликация n Условные высказывания типа «если А, то В» , «А влечет В» соответствуют логической операции импликация. Обозначается следующим образом А В. Пример: отец говорит сыну: «Если в этом семестре ты сдашь все экзамены на «отлично» (A), то я куплю тебе машину (B)» . При каких условиях отец говорит правду? А B A B 0 0 1 1 1 § Одинаковый ли смысл имеют высказывания? «Если человек усердно работает, то он добьется успеха» «Человек добьется успеха если он усердно работает» § Неважно в каком порядке присутствуют простые высказывания. Важно какое высказывание соответствует условию.
Логическая формула Буквы, обозначающие высказывания, логические связки и скобки составляют алфавит языков логики высказываний: алгебры высказываний и исчисления высказываний. С помощью элементов алфавита можно построить разнообразные логические формулы. n Будем называть выражение, составленное из обозначений высказываний и связок (а также скобок), — логической формулой, если оно удовлетворяет следующим условиям: n любая переменная, обозначающая высказывание, — формула; n если A и B — формулы, то (A & B), (A B), ( A), (A B), (A ~ B), (A B) — формулы; n других формул нет.
Упражнения n Упр 1: Составить логическую формулу, соответствующую высказыванию: «Если допоздна играешь на компьютере и при этом много пьешь кофе, то утром просыпаешься в дурном расположении духа или с головной болью. » n Упр 2: Составить логическую формулу, соответствующую высказыванию: «Если социологические исследования показывают, что потребитель отдает предпочтение удобству и многообразию, то фирме следует сделать упор на усовершенствовании товара или увеличении многообразия новых форм» .
Суперпозиция функций n Суперпозицией F булевых функций f 1, . . . , fm называется функция F=f 0(g 1(x 1, . . . , xm), . . . , gn(x 1, . . . , xm)), где каждая из функций gi(x 1, . . . , xm) либо совпадает с одной из переменных, либо – с одной из функций f 1, . . . , fm. f 0 –главная или внешняя функция. n Формулой называется выражение, описывающее эту суперпозицию. n Упр 3 Выписать функции fi, суперпозиция которых образует F. Выписать функции gi. F= ((А→В)&C) A n Таблицы истинности для сложных функций (формул) строится поэтапно, путем выделения простых функций согласно последовательности их выполнения n Упр 4 Построить таблицу истинности для F
Бинарные функции Таблица Кэли
Бинарные функции Таблица Кэли
Бинарные функции Таблица Кэли
Фиктивные переменные n Переменная xi в функции f(x 1, …, xi– 1, xi+1, …, xn) называется несущественной (или фиктивной), если f(x 1, …, xi– 1, 1, xi+1, …, xn) = f(x 1, …, xi– 1, 0, xi+1, …, xn) при любых значениях остальных переменных. n В этом случае f(x 1, …, xn) по существу зависит от n - 1 переменной, т. е. представляет собой функцию g(x 1, …, xi– 1, xi+1, …, xn) от n - 1 переменной. n Говорят, что функция g получена из функции f удалением фиктивной переменной, а функция f получена из функции g введением фиктивной переменной, причем эти функции по определению считаются равными
Глубина формул n Символы переменных, а также функции const_0 и const_1 считаются формулами глубины 0. n Пусть дано множество исходных функций ={f 1, . . . , fm}. Любая формула F =f 0(g 1, . . . , gn), имеет глубину k=max(k 1…, kn)+1, здесь k 1…, kn глубины формул g 1, . . . , gn. n Упр 5 вычислить глубину формулы F= ((А→В)&C) A
Пример: Глубина формул n Определить глубину формулы F= ((А→В)&C) A. 1) Вначале выполняется f 1= А→В. Глубина которой k 1=max(0, 0)+1=1 2) Следующей будет выполняться функция f 2=f 1&C. Функция f 2 имеет глубину k 2=max(k 1, 0)+1=max(1, 0)+1=2 3) Далее выполнятся функция f 0=f 2 A, глубина которой k 0=max(k 2, k 1, 0, 0, 0)+1=max(2, 1, 0, 0, 0)+1=3 n Таким образом, глубина исходной формулы равна 3.
Логически правильные рассуждения n Правила преобразования исходных высказываний называются логически правильными рассуждениями, в результате которых получают новые высказывания. n Исходные высказывания называются посылками (гипотезами, условиями), а получаемые высказывания — заключением (следствием).
Правило заключения — утверждающий модус (Modus Ponens): «Если из высказывания A следует высказывание B и справедливо (истинно) высказывание A, то справедливо В» . n Для построения логических формул, отражающих логически правильные рассуждения, следует все посылки соединить конъюнкцией & и полученную таким образом обобщенную посылку связать импликацией с выводом ((A B)&A) B n n Рассуждение А→В, В НЕ является логически правильным. А
Правило заключения — утверждающий модус (Modus Ponens): А В A B Истинны A B, А 0 0 1 1 1 Истинны A B, В §Выделены клетки, соответствующие наборам переменных при которых истинны обе посылки. §Во втором рассуждении истинным значениям посылок соответствуют А=0 и А=1, следовательно нельзя утверждать, что А- верно.
Пример анализа рассуждений § § § «Если рабочий отсутствовал на работе (А), то он не выполнил задание (В). Рабочий не выполнил задание. Следовательно, он отсутствовал на работе» . Схема рассуждений А→В, В Данное рассуждение НЕ является А логически правильным Логически правильным будет рассуждение А→В, А «Если рабочий отсутствовал на работе (А), то В он не выполнил задание (В). Рабочий отсутствовал на работе. Следовательно, он не выполнил задание» .
Правило отрицания — отрицательный модус (Modus Tollens) n «Если из A следует B, но высказывание А→В, В В неверно, то неверно и A» А Пример: «Если рабочий отсутствовал на работе (А), то он не выполнил задание (В). Рабочий выполнил задание. Следовательно, он присутствовал на работе. » n Рассуждение А→В, А НЕ является логически правильным. В
Правило утверждения–отрицания (Modus Ponendo–Tollens): n «Если справедливо или высказывание A, или высказывание B (в разделительном смысле) и истинно одно из них, то другое ложно»
Правило отрицания–утверждения (Modus Tollen–Ponens): n «Если истинно или A, или B (в разделительном смысле) и неверно одно из них, то истинно другое» n «Если истинно A или B (в неразделительном смысле) и неверно одно из них, то истинно другое»
Правило транзитивности (упрощенное правило силлогизма) n «Если из A следует B, и из B следует C, то из A следует C»
Закон противоречия: n «Если из A следует B и B, то неверно A»
Правило контрапозиции: n «Если из A следует B, то из того, что неверно B, следует, что неверно A»
Сведение к абсурду (Reductio ad Absurdum) n Если из того, что А не верно, следует, что В верно и не верно одновременно, то А верно А →( В & B ) А n Сведение к абсурду используется в методе доказательства, известном как доказательство от противного. Оно состоит в следующем n Предполагается, что истинным является отрицание того высказывания, которое необходимо доказать. Затем необходимо прийти к противоречию. Если это удается, то исходное утверждение доказано.
Тождественно Истинная, Тождественно Ложная и Выполнимая формула Формула F называется тождественно истинной (общезначимой, тавтологией), если при всех наборах переменных F=1 Формула называется тождественно ложной (противоречием), если при всех наборах переменных F= 0 Формула называется выполнимой, если при некоторых наборах переменных формула равна 1. При этом, Единичным набором переменных называется набор переменных, при которых функция равна 1. Множество единичных наборов называется единичным множеством Нулевым набором переменных называется набор переменных, при которых функция равна 0. Множество нулевых наборов называется нулевым множеством Упр 6 выписать единичные и нулевые наборы переменной функции F= ((А→В)&C) A
Эквивалентные формулы Упр 7. Доказать тождественную истинность формулы (P Q) (Q P) n Две формулы называются эквивалентными если при одинаковых наборах переменных формулы имеют одинаковые значение Упр 8. Доказать равносильность формул x 1 | x 2 = x 1 x 2
Способы (нотации) записи формул n Инфиксная – знак операций стоит между операндами (используемая нами до сих пор) x (y z) или x and (y or z); n Префиксная (прямая польская запись) – знак операций стоит перед операндами x y z; n Постфиксная (обратная польская запись) – знак операций стоит после операндов x y z n Постфиксная запись при считывании формулы позволяет однозначно указать порядок выполнения операций.
Преобразование инфиксной формы в префиксную и постфиксную n n Рассматриваем операции согласно их очередности выполнения знак операции выносим либо вперед операндов (префиксная форма) либо располагаем сзади операндов (постфиксная форма) Представить инфиксную форму в префиксную и постфиксную (х3 х1)&x 1&(x 1 x 2) ( х3 х1 ) & x 1 & ( x 1 x 2 ) префиксная ( х3, х1) & x 1 & ( x 1 x 2 ) ( х3 х1) & x 1 & ( x 1 x 2) (& ( х3 х1) x 1) & ( x 1 x 2) & & х3 х1 x 1 x 2 ( х3 х1 ) & x 1 & ( x 1 x 2 ) постфиксная ( х3 х1 ) & x 1 & ( x 1 x 2 ) ( х3 х1 ) & x 1 & ( x 1 x 2 ) ( ( х3 х1 ) x 1 &) & (x 1 x 2 ) х3 х1 x 1 & x 1 x 2 &
Преобразование постфиксной формы в инфиксную n n n n n Выражение просматриваем слева направо, и его элементы помещаются в стек Если в стеке находятся два элемента и операция (а b F), то эта тройка изымается из стека и выполняется операция (a F b). Результат операции помещается в стек Просмотр строки продолжается. Пример: представить постфиксную форму x 3 x 1 & x 1 x 2 в инфиксную x 3 x 1 & x 1 x 1 x 2 (x 3& x 1) x 1 (x 1 x 2) (x 3& x 1) (x 1 x 2)) (x 3& x 1) (x 1 x 2))
Преобразование префиксной формы в инфиксную n n n n Выражение просматриваем слева направо, и его элементы помещаются в стек Если возникает ситуация когда в стеке находятся знак операции и две переменные (F a b), то эта тройка изымается из стека и над ними выполняется операция (a F b). Результат операции помещается в стек. Просмотр продолжается. Пример: представить префиксную форму → х1 х2&x 1 x 3 в инфиксную → х1 х2 & x 1 x 3 → х1 х2 (x 1&x 3) → (х1 х2) (x 1&x 3) (х1 х2) → (x 1&x 3)
Дизъюнктивные и Конъюнктивные формы n Элементарной конъюнкцией называются элементарные переменные либо (в разделительном смысле) их отрицания соединенные конъюнкцией x 1 & x 2 & x 3 n Элементарной дизъюнкцией называются элементарные переменные либо (в разделительном смысле) их отрицания соединенные дизъюнкцией x 1 x 2 x 3 n Дизъюнктивно Нормальная Форма (ДНФ) – дизъюнкция элементарных конъюнкций ( x 1 & x 2 & x 3) (x 1 & x 2 & x 3) n Конъюнктивно Нормальная Форма (КНФ)– конъюнкция элементарных дизъюнкций ( x 1 x 2 x 3) & ( x 1 x 2 x 3)
СДНФ и СКНФ n Совершенная Дизъюнктивно Нормальная Форма (СДНФ) – это ДНФ, у которой все элементарных конъюнкций содержат КАЖДУЮ переменную ровно один раз и все элементарные конъюнкции различны Пример: ( x 1 & x 2 & x 3) (x 1 & x 2 & x 3) n Совершенная Конъюнктивно Нормальная Форма (СКНФ) – это КНФ у которой все элементарных дизъюнкций содержат КАЖДУЮ переменную ровно один раз и все элементарные дизъюнкции различны ) Пример: ( x 1 x 2 x 3) & ( x 1 x 2 x 3) n Любую логическую функцию можно представить в виде СДНФ и СКНФ используя таблицу истинности.
Построение СДНФ и СКНФ Построения СДНФ n Для каждого единичного набора переменных выписываем конъюнкцию всех переменных. n Над теми переменными, которые в этом наборе равны 0, ставим отрицание. n Все такие конъюнкции соединяем дизъюнкциями. Построения СКНФ n Для каждого нулевого набора переменных выписываем дизъюнкцию всех переменных. n Над теми переменными, которые в этом наборе равны 1, ставим отрицание. n Все такие дизъюнкции соединяем конъюнкциями. x y 0 0 1 1 1 0 СДНФ – ( x&y) (x & y) СКНФ – (x y) & ( x y) Упр 9: Построить СДНФ и СКНФ х1 x 2


