|
|
||||||||
|
|
||||||||
|
|
математическая логика и логическое программирование( Оценки за экзаменационную работу 09.01.2010 )Выставление оценок состоится 11 января в 10.00 в ауд. 790аЛекции по курсу математической логики и логического программированияЛекция 1. Что изучает логика? Логика в информатике. Структура курса. Исторические сведения. Логические парадоксы.Лекция 2. Классическая логика предикатов первого порядка. Синтаксис. Термы и формулы.Семантика. Интерпретация. Выполнимость формул.Лекция 3. Выполнимые и общезначимые формулы. Модели. Логическое следование. Проблема общезначимости. Семантические таблицы.Лекция 4. Подстановки. Табличный вывод. Корректность табличного вывода.Лекция 5. Полнота табличного вывода. Теорема Левенгейма-Сколема. Теорема компактности Мальцева. Автоматическое доказательство теорем.Лекция 6. Общая схема метода резолюций. Равносильные формулы. Теорема о равносильной замене. Предваренная нормальная форма. Сколемовская стандартная форма. Системы дизъюнктов.Лекция 7. Эрбрановские интерпретации. Теорема Эрбрана. Задача унификации.Лекция 8. Алгоритм унификации.Лекция 9. Резолютивный вывод. Корректность резолютивного вывода. Применение метода резолюций.Лекция 10. Полнота резолютивного вывода.Лекция 11. Стратегии резолютивного вывода. Вычислительные возможности метода резолюций.Лекция 12. Хорновские логические программы: синтаксис. Декларативная семантика логических программ. Операционная семантика логических программ. SLD-резолютивные вычисления.Лекция 13. Корректность операционной семантики. Полнота операционной семантики.Лекция 14. Правила выбора подцелей. Деревья вычислений логических программ. Стратегии вычисления логических программ.Лекция 15. Алгоритмическая полнота логических программ. Моделирование машин Тьюринга логическим программами. Теорема Черча.Лекция 16. Управление вычислениями логических программ. Оператор отсечения.Лекция 17. Отрицание в логическом программировании. Оператор not. Встроенные предикаты и функции. Оператор вычисления значений. Модификация баз данных.Лекция 18. Формальные аксиоматические теории. Исчисление предикатов с равенством. Элементарная геометрия. Теория множеств Цермело-Френкеля. Арифметика Пеано. Теорема Геделя о неполноте формальной арифметики.Лекция 19-20. Интуиционистская логика. Модальные логики.Лекция 21. Правильные программы. Императивные программы. Задача верификации программ. Логика Хоара. Автоматическая проверка правильности программ.Лекция 22. Верификация распределенных программ. Логика линейного времени PLTL. Размеченные системы переходов. Задача верификации моделей программ.Лекция 23. Задача верификации моделей программ. Подформулы Фишера-Ладнера. Табличный метод верификации моделей программ. Системы Хинтикки. Алгоритм верификации моделей программ. ( Лекция 23.)Программа курсаЛогика предикатов первого порядка
Метод резолюций
Основы логического программирования
Неклассические прикладные логики
Основная литература
Дополнительная литература
О ПОРЯДКЕ ПРОВЕДЕНИЯ ЭКЗАМЕНА ПО КУРСУ «МАТЕМАТИЧЕСКАЯ ЛОГИКА И ЛОГИЧЕСКОЕ ПРОГРАММИРОВАНИЕ»1. Экзамен проводится в форме письменной контрольной
работы.
2. Первая часть работы (задача 0) – написание логической программы. При написании программы разрешается использовать встроенные арифметические функции и отношения, операторы отсечения и отрицания, а также предикаты для работы со списками concat и elem. Допустим как математический, так и программистский синтаксис логических программ.Типовой пример задачи: Слово – это конечный непустой список букв
русского алфавита. Текст – это конечный непустой список слов. Два разных
слова W¢ и W² называется однокоренными, если W¢=U1WV1, W¢=U2WV2, где U1, V1, U2, V2 - непустые префиксы и
суффиксы слов W¢, W², а W –
слово, состоящее не менее чем из трех букв. Построить логическую программу,
которая для заданного текста L вычисляет
все пары X,Y однокоренных слов. Запрос к программе должен иметь вид ? G(L,X,Y).
3. Вторая часть работы – решение задач и ответы на теоретические
вопросы:
·
4 типовые задачи –
построение формулы логики предикатов, соответствующей естественно-языковому
утверждению, построение табличного вывода для доказательства общезначимости
формулы логики предикатов, применение метода резолюций для доказательства общезначимости
формулы логики предикатов и построение дерева SLD-резолютивных вычислений заданного запроса к
заданной логической программе.
·
5 вопросов, требующих знания
формулировки определений, алгоритмов и утверждений, рассмотренных лекционном курсе.
Вопросы предусматривают проведение простейшего анализа основных понятий математической логики.
·
4 теоретические
задачи, требующие умения обоснованно выбрать истинные утверждения из
предложенного списка.
На выполнение
контрольной работы отводится 150 мин.
Типовые задачи:1. Используя только предикаты, перечисленные в Приложении, построить замкнутую формулу логики предикатов, адекватно выражающую следующее суждение: «Каков бы ни был черный куб, лежащий под всеми черными шарами, слева от него не находится ни одного белого шара». Приложение. B(x) – «предмет x имеет черный цвет»; W(x) – «предмет x имеет белый цвет»; C(x) – «предмет x – куб»; S(x) – «предмет x – шар»; D(x,y) – «предмет x расположен под предметом y»; U(x,y) – «предмет x расположен над предметом y»; L(x,y) – «предмет x расположен слева от предмета y»; R(x,y) – «предмет x расположен справа от предмета y». 2. Используя правила табличного вывода, доказать
общезначимость следующей формулы логики предикатов: (Ø$y P(y) Ú "x R(x)) ® "x (P(x) ® R(x)) 3. Для заданной формулы j выяснить, применяя метод резолюций, является ли эта формула общезначимой. ($y ØP(y) ® $x R(x)) ® "x $y (P(x) Ú R(y)) 4. Для заданного запроса G=? P(x), R(x) к заданной логической программе P построить на основе стандартной стратегии вычислений (с использованием оператора отсечения) дерево SLD-резолютивных вычислений и определить множество вычислимых ответов. P: P(b) ¬ ;
P(f(b)) ¬ R(b), !;
P(c) ¬ ;
R(f(x)) ¬ P(x), !;
R(x) ¬ P(x); 4. Результаты экзамена будут объявлены на этой странице спустя два дня после экзамена.
5. Критерии оценки контрольной работы:
Задача 0 оценивается 6 очками:
Вторая часть
работы оценивается следующим образом:
Каждая из
типовых задач оценивается 3 очками, каждый из вопросов по определениям и
утверждениям оценивается 2 очками, каждая из теоретических задач оценивается
3 очками.
Для получения
оценки
«отлично» требуется
набрать не менее 33 очков
«хорошо» требуется
набрать не менее 26 очков
«удовлетворительно» требуется
набрать не менее 18 очков.
|
||||||
|
|
|
|
||||||