- •Математическая логика и теория алгоритмов
- •11. Понятие об алгоритмах. Схемы алгоритмов
- •11.1. Понятие об алгоритме и теории алгоритмов
- •11.2. Схемы алгоритмов
- •11.3. Рекурсивные функции
- •11.4. Машина Тьюринга
- •11.5. Машина Поста
- •11.6. Нормальные алгорифмы а.А. Маркова
- •11.7. Универсальная абстрактная машина
- •11.8. Разрешимость в теории алгоритмов. Проблема самоприменимости
- •11.9. Сложность алгоритма
- •11.10. Представление схемы алгоритма эквивалентным автоматом
- •11.11. Представление схемы алгоритма микропрограммой с двумя типами микрокоманд
- •12. Элементы формальной логики
- •12.1. Предмет формальной логики
- •12.2. Понятие и его виды
- •12.3. Отношения между понятиями
- •12.4. Операции над понятиями
- •12.5. Суждение и его характеристика
- •Модальные и категорические суждения.
- •Простые категорические суждения.
- •Виды простых категорических суждений.
- •Распределение терминов в простом категорическом суждении.
- •Логический квадрат.
- •13. Умозаключение
- •13.1. Виды умозаключений
- •13.2. Непосредственное умозаключение
- •Умозаключения путем противопоставления предикату.
- •13.3. Опосредованное дедуктивное умозаключение. Фигуры силлогизма
- •Фигуры пкс.
- •Модусы пкс.
- •13.4. Дополнительные виды силлогизмов
- •13.5. Индуктивные умозаключения. Математическая индукция
- •14. Логика высказываний
- •14.1. Семантика логики высказываний
- •I закон – тождества.
- •14.3. Формализация высказываний
- •14.4. Интерпретации, разрешимость, выполнимость, общезначимость
- •14. 5. Логическая равносильность. Законы логики
- •14.6. Формы представления формул логики высказываний
- •14.7. Проблема дедукции в логике высказываний
- •15. Проверка правильности логических выводов. Метод резолюций
- •15.1. Закон контрапозиции
- •15.2. Логическое следование. Проверка правильности логических выводов
- •15.3. Силлогизмы в логике высказываний
- •Разделительно-категоричные силлогизмы.
- •16. Синтаксис и семантика языка логики предикатов
- •16.1. Понятие предиката
- •16.2. Кванторы и связанные переменные
- •16.3. Синтаксис языка логики предикатов. Формулы логики предикатов и формализация суждений
- •16.4. Семантика формул логики предикатов
- •Общезначимость, выполнимость, невыполнимость.
- •17. Тождественные преобразования формул логики предикатов
- •17.1. Операции над предикатами
- •17.2. Основные равносильности логики предикатов
- •Отрицание предложений с кванторами.
- •17.3. Тождественные преобразования формул
- •17.4. Универсум Эрбрана
- •18. Использование метода резолюций в логике предикатов
- •18.1. Подстановка и унификация
- •18.2. Резольвенция и факторизация
- •18.3. Метод резолюций в логике предикатов
- •18.4. Принцип логического программирования
- •19. Логические исчисления
- •19.1. Понятие о формальных теориях
- •19.2. Исчисление высказываний
- •19.3. Исчисление предикатов
- •19.4. Система натурного вывода
- •19.5. Понятие о математической лингвистике
- •19.6. Формальный язык
- •19.7. Формальные грамматики и их свойства
- •19.8. Теоремы Гёделя
- •20. Неклассические логики
- •20.1. Современные модальные логики
- •20.2. Понятие о теории неопределенности
- •20.3. Элементы теории нечетких множеств и нечеткая логика
- •20.4. Нечеткие алгоритмы
- •Литература
- •Приложение 1 Варианты контрольных заданий по дисциплине «Дискретная математика»
- •Приложение 2 Варианты контрольных заданий по дисциплине «Математическая логика»
20. Неклассические логики
20.1. Современные модальные логики
Рассмотренная выше логика называется классической. С начала ХХ века развиваются неклассические логики. Таковы, например, модальные логики. В модальных логиках связь между субъектом и предикатом или ослабляется, или усиливается.
Алетическая модальность – модальность возможности – выделяет необходимость, возможность. Еще у Аристотеля встречается выражение: «Завтра необходимо будет морское сражение».
Применяются, например, обозначения:
F – необходимо F;
–возможно F;
–необходимо F – не возможно не F;
= – возможно – не необходимо не F.
Деонтическая модальность – обязательность, разрешение или запрещение (О, З, Р).
На этой модальности основана логика норм. Норма, соответствующая объективной необходимости общественного развития, считается нормативно истинной [5].
Связь между О, З, Р выглядит так [5]:
Например, разрешено употребление пива лицам старше 18 лет (не в общественных местах). Запрещено употребление наркотических веществ. Обязательно соблюдение законов.
Эпистемическая логика рассматривает доказуемые, опровержимые, проблематичные суждения.
Логика знания и веры использует выражения типа: Верит (α) А – истинно, если индивид α верит в формулу А.
Многозначные логики [32].
Используют изученный нами ранее математический аппарат многозначных переключательных функций.
Впервые многозначность предложил польский математик Ян Лукасевич (1878-1956 гг.). Но еще в 1910 г. русский логик Н.А. Васильев [36] разработал «воображаемую логику», в которой суждения могут быть не только утвердительными и отрицательными, но и акцидентальными. Если акцидентальное суждение истинно, то и утвердительное и отрицательное суждения являются ложными. Введем следующие обозначения:
1) необходимость («истинно») – обозначим 2 или ;
2) невозможность («ложно») – обозначим 0;
3) возможность («нейтрально») – обозначим 1 или .
Рассмотрим отрицание в системе Лукасевича (табл. 90).
Таблица 90
Отрицание в системе Лукасевича
F |
_ F |
0 |
2 |
1 |
1 |
2 |
0 |
Конъюнкция и дизъюнкция вычисляются так, как мы рассматривали в дискретной математике:
АВ=max(A,B); А&В=min(A,B).
Ясно, что закон исключенного третьего не выполняется: 112 (табл. 91).
Таблица 91
Таблица истинности F и
-
F
F
0
0
0
1
0
2
2
2
2
Логика более чем с двумя значениями истинности может быть интерпретирована в современных информационных системах таким образом:
истинно R – подтверждено в базе данных;
ложно – R явно отрицается в базе данных;
не определено – ничего не сказано об R в базе данных.
Иногда в базе данных может быть и противоречивая информация об R. Но чаще всего это запрещено [32]. Однако имеется паранепротиворечивая логика, которая допускает противоречивую информацию.
Имеется немонотонная логика, в которой новые данные могут отменить предыдущие выводы.
Логика умолчаний формализует выполнимые, а не общезначимые рассуждения. То есть, при неполной информации получаем правдоподобное заключение.
Логика с ограничениями учитывает ограниченность ресурсов системы по принципу: «Попробуй доказать Х, пока не исчерпаешь ресурсов, а потом, если доказать не удалось, заключи, что Х ложно».
Логика вопросов и ответов [38].
С суждениями тесно связана такая форма мышления, как вопрос. Вопросы – особая логическая реальность. По утверждению английского философа Р. Коллингвуда, логика, обращающая внимание только на ответы и пренебрегающая вопросами, – ложная логика. Искусство задавать вопросы, вести мысль к правильному ответу – необходимый элемент логической культуры. И. Кант писал: «Умение ставить разумные вопросы есть уже важный и необходимый признак ума и проницательности…».
Раздел логики, изучающий вопросы, называется эротетическая или интеррогативная логика. В ней «единицей мысли» выступает комплекс вопроса и ответа. Взаимодействие вопроса и ответа – типичная форма диалога в общении между людьми. Поэтому одной из важнейших функций вопроса нужно признать коммуникативную функцию. Исключительно велика роль вопроса и как средства информационного поиска. Без вопроса нет и не может быть познания. Великая познавательная роль вопроса состоит в том, что он является звеном, связывающим познанное с непознанным, мостиком, перекинутым от старого знания к новому. Вопрос – могучий стимулятор развития знания. Отношения человека с окружающим миром могут быть представлены как своего рода диалог, в котором вопросы и ответы постоянно сменяют друг друга.
Во второй половине ХХ в. актуализировались исследования природы вопроса в связи с использованием ЭВМ в так называемом диалоговом режиме. Вопрос – это форма мысли, в которой выражено требование уточнить или получить новую информацию на основе уже имеющейся.
Логическая структура вопроса такова: 1) исходное знание; 2) требование дополнить или уточнить эту информацию, перейти от исходного к искомому знанию. Первая часть вопроса называется его предпосылкой, или базисом, а вторая – оператором вопроса.
Корректный вопрос – это вопрос, предпосылкой которого является истинное и непротиворечивое знание. Корректный вопрос соответствует всем требованиям логики (определенность, точность, непротиворечивость, обоснованность).
Ответ – это суждение, дающее информацию, запрашиваемую в вопросе. Основными функциями ответа являются: 1) снятие (уменьшение) неопределенности, заключенной в вопросе или 2) указание на неправильную постановку вопроса. Ответ является правильным в том случае, если выраженное в нем суждение истинно и логически связано с поставленным вопросом.
Многозначная логика возможных миров [32].
В этом случае используется 4 градации истинности: необходимо истинно (3), нейтрально истинно (2), нейтрально ложно (1), необходимо ложно (0). Получается четырехзначная логика (табл. 92).
Таблица 92
Семантика возможных миров
Истинно |
Ложно | ||
Не нейтрально |
Нейтрально |
Не нейтрально | |
3 |
2 |
1 |
0 |
Случайно истинно |
Необходимо ложно | ||
Необходимо истинно |
Случайно ложно |
И – необходимо истинно – то, что подтверждается в нашем мире и во всех возможных мирах;
Л – необходимо ложно – то, что не подтверждается ни в одном из возможных миров.
Пусть существуют мир Х («наш») и возможный мир У. Тогда:
ложно и в Х и в У – необходимо ложно;
ложно в Х и истинно в У – случайно, но не необходимо ложно;
истинно в Х и ложно в У – случайно, но не необходимо истинно;
истинно и в Х и в У – необходимо истинно.
Тогда соответствующая таблица истинности имеет вид табл. 93.
Таблица 93
Таблица истинности для двух миров
-
X
Y
Л
Л
0
Л
Л
И
1
Л
И
Л
2
И
И
И
3
И
Здесь 0 – необходимо истинно, 1 – случайно ложно, 2 – случайно истинно, 3 – необходимо истинно. Отрицание в четырехзначной логике имеет вид табл. 94.
Таблица 94
Отрицание в четырехзначной логике
-
F
0
3
1
2
2
1
3
0
Соотношение F и представлено в табл. 95.
Таблица 95
Таблица истинности F и
F |
F | |
0 |
0 |
0 |
1 |
0 |
3 |
2 |
0 |
3 |
3 |
3 |
3 |
Дальнейшим развитием многозначности является n-значная логика Эмиля Поста (1897-1954 гг.), в которой n значений истинности. Рассмотрим отрицание в этой логике (табл. 96).
Таблица 96
Отрицание в n-значной логике Поста (n – четное)
-
x
N1(x)
N2(x)
N1 – первое отрицание – циклическое;
N2 – второе отрицание – симметричное.
1
2
n
2
3
n-1
.
.
.
n-1
n
2
n
1
1
Наконец, в бесконечнозначных логиках – бесконечное число градаций т.е. n=.
Между двумя крайними значениями 0, 1 лежат промежуточные значения. Абсолютная истина складывается из бесконечного количества относительных истин. Эта логика была предложена в 1930 г. Я. Лукасевичем и Альфредом Тарским (1902-1983 гг.)
Временные логики (темпоральные) учитывают время.
Используют выражения: иногда (F), всегда (G) (в будущем или в прошлом), часто (R) и никогда (H). Например:
(иногда А – не всегда А);
(часто А – не никогда А);
(всегда А – никогда не А);
(никогда А – всегда не А).
Временные логики могут использовать выражения вида:
PA – «было А»;
FA – «будет А»;
А В – «если А, то после этого В».
Алгоритмическая логика.
Академик В.М. Глушков разработал основы теории синтеза дискретных устройств (ДУ). Интересно, что после окончания аспирантуры в Москве, он был назначен на преподавательскую должность в Пермский государственный университет, но там оказался не востребован по своему научному направлению.
Он предложил алгоритмические алгебры (60-е гг. ХХ века) для доказательства правильности программ.
Понятие об алгоритмической логике Ч. Хоара.
Язык алгоритмических логик сочетает язык описания программ и логический язык, что дает возможность выражать разнообразные свойства программ. Это программная или динамическая логика.
Применяется для описания свойств частичной корректности программ. Использует выражения:
(исходное состояние памяти) (программа заканчивает работу) (заключительное состояние памяти)
где P, Q – логические формулы, а A – программа.
Такая формула имеет следующий смысл: Если исходное состояние памяти (исходное значение переменных удовлетворяет условиюP и программа A завершает работу над , то заключительное значение переменных удовлетворяет условиюQ.
Верификация – доказательство правильности программ. Алгоритмическая логика позволяет доказать правильность (неправильность) программ без перебора всевозможных вариантов их реализации на различных сочетаниях переменных.
В [1] приводятся примеры языков алгоритмических логик, использующих высказывания вида:
{U}S{В} – «Если до исполнения оператора S будет выполнено U, то после него будет В». Здесь U – предусловие, а В – постусловие. При анализе условных операторов программы, если ни при каких вариантах не реализуется один из его выходов – фиксируется ошибка. При описании циклов, что является наиболее трудным, анализируются возможности выходов из них. Каждое состояние памяти, возникающее в ходе исполнения программы, – «возможный мир». Пути исполнения программы – переходы между «мирами». В случае тотальной корректности программа обязательно завершается: B. Частичная корректность:
Автоматическое доказательство правильности программ – задача до сих пор нерешенная.