Концепция языка Пролог и сферы его применения. Процедурная и декларативная трактовка Пролог-программы. Модель в виде абстрактной машины. Термы и их типы. Составной терм. Операторы, их синтаксис и приоритет
Вид материала | Документы |
- Язык Пролог Пролог (Prolog), 180.88kb.
- Программа собеседования по направению подготовки магистров «050100 Педагогическое образование», 403.81kb.
- Работа со списками в языке Пролог Рекурсия в Прологе, 175.74kb.
- Московский Институт Открытого Образования и автономная некоммерческая организация культуры, 382.14kb.
- Программа «Логик теоретик» ипрограммы, близкие к ней. Возникновение языка пролог, 44.56kb.
- Синтаксис современного русского языка, 943.86kb.
- Оформление программы на языке Паскаль. Оператор вывода. Описание переменных. Оператор, 186.34kb.
- Луков Вал. А. Тезаурусная концепция социального проектирования, 260.7kb.
- Специальная часть, 103.31kb.
- Урок литературы в 5 классе по теме: «Пролог к поэме «Руслан и Людмила», 22.14kb.
УТВЕРЖДАЮ
Заведующий кафедрой ПОВТ,
д.т.н., профессор
__________ Г.М.Емельянов
" " ________ 2006 г.
Вопросы к теоретическому зачету
По дисциплине “Функциональное и логическое программирование”.
Осенний семестр 2006/2007 учебного года.
- Теоретические исследования в области формализации мышления. Возникновение и развитие формальной логики. Логика предикатов. Исчисление предикатов 1-го порядка как основа Логического Программирования.
- Функции и отношения. Анализ структуры области знаний. Построение теории предметной области в логике предикатов.
- Правило резолюции. Алгоритм, основанный на резолюции.
- Концепция языка Пролог и сферы его применения. Процедурная и декларативная трактовка Пролог-программы. Модель в виде абстрактной машины.
- Термы и их типы. Составной терм. Операторы, их синтаксис и приоритет.
- Факты и правила. Переменные в Прологе. Вопросы. Использование переменных в вопросах. Конкретизация переменных. Анонимная переменная.
- Общие правила согласования целевых утверждений. Успешное доказательство конъюнкции целевых утверждений. Рассмотрение целевых утверждений при использовании механизма возврата. Правила установления соответствия. Понятие “сцепленных переменных”.
- Список как частный вид структуры. Способы представления списков. Описание списков в Турбо-Прологе и их использование в Пролог-программах. Правила сопоставления списков.
- Рекурсия как основной метод программирования на Прологе. Построение рекурсивных правил. Левосторонняя рекурсия и ее предотвращение. Примеры рекурсивных правил : вычисление факториала, суммирование элементов списка, печать элементов списка.
- Оценка сложности логической программы.
- Разностные списки. Неполные структуры данных. Очереди.
- Отсечение в программе на Прологе. Причины введения отсечения. Синтаксис отсечения. Изменение процесса возврата по цепочке доказательств при использовании отсечения. Диаграмма согласования целевого утверждения для случая использования отсечения.
- Общие случаи использования отсечения в программах на Прологе. Предикат not как альтернатива отсечению. Отсечение и fail. Использование отсечений при работе со списками. Проблемы, связанные с использованием отсечения.
- Понятие недетерминизма. Решение логических задач методом “Образуй и проверь”. Порождение и контроль допустимости решений. Примеры решения логических головоломок.
- Состояния и операторы. Пространство состояний. Базовая программа для решения задач поиска на графах состояний.
- Основные сведения о базах данных. Объекты и атрибуты. Уровни абстракции в Системах Управления Базами Данных. Концептуальная схема и три модели данных. Реляционные базы данных. Внелогические предикаты и их использование при организации базы данных в Турбо-Прологе.
- Предикаты динамической базы данных. Создание и модификация базы данных. Сбор информации из базы данных в список. Предикаты для работы с базой данных в целом. Создание базы данных на диске. Организация и использование индексных файлов.
- Базы знаний. Экспертные системы : назначение, структура, модели представления знаний. Вывод экспертного заключения. Примеры реализации логической и продукционной Экспертной Системы на Турбо-Прологе (Visual Prolog’е). Вывод при наличии нечеткой информации.
- Проблема общения на Естественном Языке (ЕЯ). Виды анализа ЕЯ-информации. Идентификация ключевых слов. Программирование второго порядка и его использование для решения задачи поиска ключевых слов в контексте.
- Машинная реализация процедур синтаксического анализа предложений Естественных Языков. Деревья как частный случай многодоменных структур. Представление синтаксической структуры предложения русского языка в виде дерева. Глубинные Синтаксические Структуры (ГСС) как пример n-арных деревьев. Организация рекурсивной обработки n-арного дерева.
- “Чистый” Prolog. Вычислительная модель Пролога. Edinburgh-Prolog и Wisdom-Prolog.
- Металогические предикаты. Операционная семантика Пролога и металогические тесты. Использование металогических предикатов для программирования алгоритма унификации.
- Логика высшего порядка и ее использование в задачах компьютерной лингвистики. Типы и сорта. Функциональные типы. Lambda-Prolog.
- Параллельный Пролог. Расширение Пролога для использования в качестве языка логического программирования в ограничениях.
На теоретическом зачете кроме теоретических вопросов будет предложена задача. Большинство из предлагаемых задач аналогичны рассмотренным в л/р №3-6 лабораторного курса.
Доцент каф. ПОВТ ___________________ / Д.В. Михайлов /