Часть 2. Функциональное и логическое программирование

1. Концепция функционального программирования. Язык Лисп. Основные конструкции языка. Префиксная нотация. Операции со списками.

2. Определение функции в Лиспе. Аргументы функции. Вычисление значений функции.

3. Программирование повторений. Рекурсия. Примеры программирования на Лиспе.

4. Концепция логического программирования. Система предикатов первого порядка. Метод резолюций Робинсона. Язык Пролог.

5. Структура программы в языке Пролог. Факты и правила. Использование переменных. Примеры простейших программ. Рекуррентный характер программ на Прологе.

6. Работа со списками. Примеры программ. Динамические предикаты. Задача о поиске пути в графе.

7. Работа с нелинейными структурами данных. Обход дерева. Задача о восьми ферзях.

8. Применение Пролога для создания баз данных и знаний. Понятие о задачах искусственного интеллекта.