РАБОЧАЯ ПРОГРАММА (Мет пособие)
.pdfУчреждение образования БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ИНФОРМАТИКИ И
РАДИОЭЛЕКТРОНИКИ
УТВЕРЖДАЮ
Проректор по учебной работе (декан факультета)
–––––––––––––––––––––––––
" " |
|
2005 г. |
||
|
|
|
|
|
РАБОЧАЯ ПРОГРАММА
по курсу |
Функциональное и логическое программирование |
. |
(название дисциплины)
для специальности 40 01 01 "Программное обеспечение информационных технологий"
(№ и название специальности)
факультет |
. |
. |
|
|
. |
кафедра |
|
|
Программное обеспечение информационных технологий |
. |
|||||||||||||
курс |
|
|
|
|
|
|
|
|
|
|
|
|
|
. |
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
. |
|
|
||||
семестр |
|
|
|
6 |
|
|
|
|
|
|
|
|
. |
|
|||
лекции |
51 |
|
(час) |
экзамен 6 |
(семестр) |
|
|
|
|||||||||
практические |
( |
|
семинарские) |
|
|
|
|
|
|
|
|||||||
занятия |
|
|
|
|
|
|
(часов) |
зачет |
|
(семестр) |
|
|
|
||||
лабораторные |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
занятия |
|
34 |
|
|
|
(часов) |
|
|
|
|
|
|
|
||||
всего часов |
|
102 |
|
. |
|
|
|
|
|
|
|
|
|
||||
курсовой проект |
|
|
|
|
|
(семестр) |
|
|
|
|
|
|
|
||||
курсовая работа |
|
|
|
|
|
|
(семестр) |
|
|
|
|
|
|
|
2005 г.
Рабочая программа составлена на основе |
|
. |
|
|
|||||||
|
|
|
|
|
|
|
(название типовой программы) |
. |
|
||
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
(дата утверждения, регистрационный номер) |
|
|
|
|
||
Автор или составитель: доцент кафедры ПОИТ, к.т.н.– Крицкий С.В. |
. |
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|||
Рассмотрена на заседании кафедры |
ПОИТ |
. |
|||||||||
протокол № |
|
|
|
|
. |
||||||
" |
" |
|
|
2005 г. |
Заведующий кафедрой |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
(Бахтизин В.В.)
Одобрена советом (Методической комиссией) Компьютерные системы и сети |
. |
||||||
|
|
|
|
|
(факультета) |
. |
|
|
|
|
|
|
|
|
|
" |
" |
|
2005 г. |
|
|||
|
|
|
|
|
Председатель |
|
|
|
|
|
|
|
( |
) |
1. ЦЕЛЬ И ЗАДАЧИ ДИСЦИПЛИНЫ
Основной целью данной дисциплины является изучение методов декларативного программирования, освоение языков функционального и логического программирования, введение в проблематику искусственного интеллекта.
Задачи курса:
Ознакомить студентов с принципами декларативного программирования , его отличиями от императивного:
-изучить основы функционального программирования;
-освоить программирование на языке Лисп;
-изучить логическое программирование на языке Пролог;
-освоить работу в среде программирования Турбо-Пролог.
Теоретический материал курса базируется на курсах "Конструирование программ и языки программирования", "Спецглавы высшей математики"
Материал курса используется в курсах "Базы данных, знаний и экспертные системы", "Программное обеспечение систем искусственного интеллекта".
2. СОДЕРЖАНИЕ ДИСЦИПЛИНЫ
Шестой семестр 2.1. Императивное и декларативное программирование. Введение в функциональное и
логическое программирование - 2 часа 2.2. Функции и функциональное представление алгоритмов. Введение в лямбдаисчисление - 6 часов
2.3.Символьное представление данных и элементарные функции языка Лисп
-4 часа
2.4.Построение рекурсивных функций и основные приемы функционального
программирования |
- 6 часов |
2.5.Функции с побочным эффектом. Вычислимые функции и функционалы
-6 часов
2.6.Ассоциативные списки и списки свойств. Объектно-ориентированное
программирование на языке Лисп - 4 часа 2.7. Методы поиска. Сопоставление с образцом. Реализация семантических сетей - 4 часов
Седьмой семестр 2.8. Введение в логическое программирование. Объекты, отношения, свойства. Понятие
логического вывода |
- 4 |
часа |
2.9. Синтаксис языка Пролог. |
- 6 |
часов |
2.10 Факты, запросы, переменные, сложные цели и правила |
- 8 |
часов |
2.10. Логический вывод в Прологе. Сопоставление, поиск, унификация |
- 6 |
часов |
2.11. Рекурсия и основные приемы логического программирования. Структуры данных
в Прологе |
- 6 |
часов |
2.12. Управление поиском в Прологе. Отсечение |
- 4 |
часа |
3. ЛАБОРАТОРНЫЕ ЗАНЯТИЯ
1 часть ФиЛП язык программирования Лисп
Шестой семестр |
|
|
|
3.1. Атомы, списки, выражения и элементарные функции Лиспа |
- 4 |
часа |
|
3.2. Определение рекурсивных функций. Арифметика в Лиспе |
- 4 |
часа |
|
3.3. Списки. Работа с простыми списками |
- 4 |
часа |
|
3.4.Сложные списки. Закрепление навыков работы со сложными списками - 4 |
часа |
|
|
3.5. Числовые функции. Закрепление навыков работы с числовыми функциями |
- 8 |
||
часов |
|
|
|
3.6. Построение, интерпретация и вычисление выражений |
- 8 |
часов |
|
4. ЛАБОРАТОРНЫЕ ЗАНЯТИЯ |
|
|
|
2 часть ФиЛП язык программирования Пролог |
|
|
|
Седьмой семестр |
|
|
|
4.1. Ознакомление с системой Турбо-Пролог. |
- 4 |
часа |
|
4.2. Использование сложных цепей и правил в Прологе |
- 4 |
часа |
|
4.3. Построение рекурсивных программ и использование сложных структур данных |
|
||
|
- 8 |
часов |
|
4.4. Возврат и отсечение. Управление поиском |
- 6 |
часов |
|
4.5. Создание баз данных и формирование запросов |
- 4 |
часа |
|
4.6. Файловая система Турбо-Пролог |
-8 часов |
5.УЧЕБНО-МЕТОДИЧЕСКАЯ ЛИТЕРАТУРА
5.1Крицкий С.В. Программирование на языке Лисп. –Мн.:МРТИ,1991.
5.2Хендерсон Н. Функциональное программирование. Применение и реализация. - М.:
Мир, 1988.
5.3.Хювенен Э., Сеппянен И. Мир Лиспа. В 2-х томах. - М.: Мир, 1990.
5.4.Стерлинг Л., Шапиро Э. Искусство программирования на языке Пролог. - М.: Мир, 1990.
5.5.Хоггер К. Введение в логическое программирование. - М.: Мир, 1988.
5.7.Ин П., Соломон Д. Использование Турбо-Пролога. - М.: Мир, 1993.
5.8.Малпас Дж. Реляционный язык Пролог и его применение. - М.: Наука, 1990.
5.9.Лавров С.С., Силагадзе Г.С. Автоматическая обработка данных. Язык Лисп и его реализация. - М.: Наука, 1978.
5.10.Клоксин У., Меллиш К. Программирование на языке Пролог. - М.: Мир, 1987.
5.11.Прихожий А.А. Функциональное и логическое программирование, –Мн.: БГУИР,
1998
5.12.Мурашко И.А., Марина И.М. Функциональное и логическое программирование, часть 1, Язык программирования Лисп, –Мн.: БГУИР,2002.