Фгбоу ВПО «Новосибирский государственный технический

реклама
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ
УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
Факультет автоматики и вычислительной техники
“УТВЕРЖДАЮ”
Декан АВТФ
профессор,
д.т.н.
Владимир Иванович
“___ ”______________ г.
РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫ
Функциональное и логическое программирование
ООП: направление 230100.62 Информатика и вычислительная техника
Шифр по учебному плану: СД.Р.5
Факультет: автоматики и вычислительной техники
Курс: 3,
очная форма обучения
семестр: 5
Лекции: 18
Практические работы: Курсовой проект: 5
Лабораторные работы: 18
Курсовая работа: -
РГЗ: -
Самостоятельная работа: 60
Экзамен: 5
Зачет: -
Всего: 104
Новосибирск
2011
1
Гужов
Рабочая программа составлена на основании Государственного образовательного стандарта
высшего профессионального образования по направлению (специальности): 552800
Информатика и вычислительная техника.(№ 35 тех/бак от 13.03.2000)
СД.Р.5, дисциплины национально- регионального (вузовского) компонента
Рабочая программа обсуждена на заседании кафедры Вычислительной техники протокол №
6 от 31.08.2011
Программу разработал
старший преподаватель,
Новицкая Юлия Вадимовна
Заведующий кафедрой
профессор, д.т.н.
Губарев Василий Васильевич
Ответственный за основную образовательную программу
профессор, д.т.н.
Губарев Василий Васильевич
профессор, д.т.н.
Фроловский Владимир Дмитриевич
2
1. Внешние требования
Таблица 1.1
Шифр
дисциплины
Содержание учебной дисциплины
Часы
Шифр - СД.02
104
Наименование дисциплины - Функциональное и логическое
программирование
Рекурсивные функции и лямбда-исчисление А.Черча;
программирование в функциональных обо-значениях;
функциональные языки; строго функцио-нальный язык;
приемы программирования; представ-ление и интерпретация
функциональных программ; отладка программ; конкретные
реализации языков функционального программирования;
соответствие между функциональными и императивными
программами;
применения
функционального
программирования.
Логическая
программа:
основные
конструкции, операционная и декларативная семантика,
интерпретация, корректность; программирование баз данных;
рекурсивное программирование; вычислительная модель;
анализ структуры термов; металогические предикаты;
внелогические
предикаты;
недетерминированное
программирование;
неполные
структуры
данных;
программирование второго порядка; методы поиска;
обработка нечетких данных; Constraint-Пролог: операционная
семантика; применение логического программирования в
задачах искусственного интеллекта.
Часов - 140
Квалификационные требования ГОСВПО по направлению
230100.62 - "Информатика и вычислительная техника":
1.3.5. Квалификационные требования
Для
компетентного
и
ответственного
профессиональных задач бакалавр:
решения
- готов участвовать во всех фазах проектирования и
разработки объектов профессиональной деятельности;
- готов участвовать в разработке всех видов документации на
программные,
аппаратные
и
программно-аппаратные
комплексы;
- способен использовать современные методы, средства и
технологии
разработки
объектов
профессиональной
деятельности;
3
- готов участвовать в проведении научных исследований и
выполнении
технических
разработок
в
своей
профессиональной области;
- способен изучать специальную литературу и другую научнотехническую информацию, достижения отечественной и
зарубежной науки
и техники в области своей профессиональной деятельности;
- взаимодействует со специалистами смежного профиля при
разработке методов, средств и технологий применения
объектов
профессиональной деятельности в научных исследованиях и
проектно-конструкторской деятельности, в управлении
технологическими,
экономическими,
социальными
системами
и в гуманитарных областях деятельности
человека;
- готов к кооперации с коллегами и работе в коллективе при
разработке объектов профессиональной деятельности;
- умеет на научной основе организовать свой труд, владеет
современными
информационными
технологиями,
применяемыми в
сфере его профессиональной деятельности;
- способен в условиях развития науки и изменяющейся
социальной практики к переоценке накопленного опыта,
анализу своих
возможностей, умеет приобретать новые знания, используя
современные информационные образовательные технологии;
- методически и психологически готов к изменению вида и
характера своей профессиональной деятельности, работе
над
междисциплинарными проектами.
4
Бакалавр должен знать:
методические
и
нормативные
материалы
по
проектированию и разработке объектов профессиональной
деятельности;
- технологию проектирования
профессиональной деятельности;
и
разработки
объектов
- перспективы и тенденции развития информационных
технологий;
- технические характеристики и экономические показатели
лучших оте-чественных и зарубежных образцов объектов
профессиональной
деятельности;
- порядок, методы и средства защиты интеллектуальной
собственности;
- методы анализа качества объектов профессиональной
деятельности;
современные
средства
коммуникаций и связи;
вычислительной
техники,
- основные требования к организации труда при
проектировании объектов профессиональной деятельности;
- правила, методы и средства подготовки технической
документации;
- основы экономики, организации труда,
производства и научных исследований;
организации
- основы трудового законодательства;
- правила и нормы охраны труда.
2. Особенности (принципы) построения дисциплины
Таблица 2.1
Особенности (принципы) построения дисциплины
Особенность
Содержание
(принцип)
Основания для введения
Дисциплина входит в число дисциплин, включенных в
дисциплины в учебный
учебный план на основании ГОСВПО по направлению
план по направлению или
230100.62 - "Информатика и вычислительная техника".
специальности
Адресат курса
Студенты 3 курса дневного отделения факультета АВТ,
5
Основная цель (цели)
дисциплины
Ядро дисциплины
Связи с другими учебными
дисциплинами основной
образовательной
программы
Требования к
первоначальному уровню
подготовки обучающихся
Особенности организации
учебного процесса по
дисциплине
обучающиеся по направлению 230100.62 - "Информатика и
вычислительная техника".
Основной целью дисциплины является формирование и
закрепление системного подхода при разработке программ с
применением языков логического и функционального
программирования, в дисциплине рассматриваются средства и
методы создания таких программ.
Ядро дисциплины составляют средства и приемы создания
программ с использованием языков логического и
функционального программирования.
Для успешного изучения дисциплины студенту необходимо
знать основы математической логики.
Для успешного изучения дисциплины студенту необходимо
знать основы математической логики.
В учебном процессе по дисциплине используется балльнорейтинговая система.
6
3. Цели учебной дисциплины
Таблица 3.1
После изучения дисциплины студент будет
иметь
представление
1
о множестве задач, решаемых с применением логического и
функционального подходов к программированию, и о методах их решения
с использованием языков логического и функционального
программирования, о разделах дисциплины "Функциональное и
логическое программирование", ее структуре
2
о месте и роли, о состоянии развития современных логических и
функциональных языков, о проблемах и направлениях развития этого
раздела программирования
3
о различиях в подходах к решению задач логического и функционального
программирования, о вопросах представления данных для решения задач
логического и функционального программирования, о приемах
разработки программ с применением языков логического и
функционального программирования
4
о проблемах и направлениях развития современных программных средств
логического и функционального программирования, об основных методах
и средствах автоматизации проектирования, используемых в
программных средствах
5
об основах построения сложных программ
знать
6
объект дисциплины (системы разработки программ с использованием
языков логического и функционального программирования), предмет
дисциплины (методы программирования с использованием языков
логического и функционального программирования), задачи дисциплины
(разработка программ с применением языков логического и
функционального программирования)
7
проблематику дисциплины "Функциональное и логическое
программирование" и ее основные разделы
8
базовые понятия и определения, используемые в логическом и
функциональном программировании
9
методы и уровни представления данных, способы обработки и хранения
данных
10
основы технологии программирования в программных средствах,
используемых в современных языках логического и функционального
программирования
уметь
11
ориентироваться в современных языках логического и функционального
программирования, их возможностях
12
обосновать выбор языка (языка логического или функционального
программирования) для решения конкретных задач
13
обосновать выбор представление данных для решения поставленной
задачи
14
обосновать выбор методов обработки данных для решения поставленной
задачи
15
разрабатывать и тестировать программы с применением программных
7
16
средств, используемых в современных языках логического или
функционального программирования
использовать специальную литературу в изучаемой предметной области
4. Содержание и структура учебной дисциплины
Лекционные занятия
(Модуль), дидактическая единица, тема
Семестр: 5
Модуль: Вводный
Дидактическая единица: Логическая программа:
основные конструкции, операционная и
декларативная семантика, интерпретация,
корректность.
Функциональное и логическое программирование
как научная дисциплина. Структура дисциплины. Ее
связь с другими дисциплинами учебного плана.
Особенности предмета дисциплины. Понятие
декларативного прогр
Модуль: Основы логического программирования
Дидактическая единица: Constraint-Пролог:
операционная семантика; металогические
предикаты; внелогические предикаты.
Общие сведения о языках логического
программирования. Constraint-Пролог: операционная
семантика. Области применения языка логического
программирования PROLOG. Основные элементы
языка. Предикаты. Арнос
Дидактическая единица: Методы поиска;
недетерминированное программирование; обработка
нечетких данных.
Простые объекты данных. Согласование целевых
утверждений. Сопоставление и унификация.
Равенство и предикат равенства. Основные секции
программы. Основные стандартные домены.
Объявление нестандартных д
Методы поиска. Недетерминированное
программирование. Обработка нечетких данных.
Основные принципы поиска с возвратом. Поиск всех
решений. Стандартный предикат fail. Прерывание
поиска с возвратом - отс
Дидактическая единица: Вычислительная модель;
анализ структуры термов.
Составные объекты данных. Функторы.
Многоуровневые составные объекты данных.
Вычислительная модель; анализ структуры термов.
Объявление составных объектов данных.
Использование предиката равенства для
Дидактическая единица: Рекурсивное
8
Часы
Таблица 4.1
Ссылки на
цели
1
1, 11, 2, 3
1
1, 11, 2, 3
1
10, 7, 8, 9
1
10, 7, 8, 9
1
10, 7, 8, 9
программирование.
Рекурсивное программирование. Достоинства и
недостатки рекурсии. Хвостовая рекурсия. Способы
задания хвостовой рекурсии.
Рекурсивные структуры данных - списки.
Объявление списков. Составные списки. Голова и
хвост списка. Примеры работы со списками.
Рекурсивные структуры данных - деревья.
Объявление деревьев. Упорядоченные и
неупорядоченные деревья. Бинарные поисковые
деревья. Способы обхода дерева. Создание дерева.
Создание дерева с сохранением
Программирование баз данных Динамические базы
данных. Программная секция базы данных.
Объявление динамической базы данных. Добавление
и удаление фактов в динамическую базу данных во
время выполнения п
Обработка строк. Стандартные предикаты для
работы со строками. Анализ потока параметров.
Контроль потока параметров. Файлы. Работа с
текстовыми и бинарными файлами. Открытие и
закрытие файлов. Стандар
Составные структуры данных - графы.
Представление графов. Действия с графами.
Ориентированные и неориентированные графы.
Поиск ациклического пути в графе. Действия с
графами. Поиск Гамильтонова пути в
Дидактическая единица: Программирование баз
данных.
Программирование баз данных Динамические базы
данных. Программная секция базы данных.
Объявление динамической базы данных. Добавление
и удаление фактов в динамическую базу данных во
время выполнения п
Контроль конца файла. Расширение динамической
базы данных с помощью файлов. Работа с фактами
динамической базы данных, как с термами. Работа с
клавиатурой.
Дидактическая единица: Применение логического
программирования в задачах искусственного
интеллекта; неполные структуры данных;
программирование второго порядка.
Стиль программирования на языке PROLOG.
Примеры использования языка логического
программирования PROLOG для решения задач
искусственного интеллекта. Неполные структуры
данных. Программирование второго
Модуль: Основы функционального
программирования
Дидактическая единица: Соответствие между
функциональными и императивными программами;
функциональные языки; строго функциональный
9
1
10, 7, 8, 9
1
10, 7, 8, 9
1
10, 7, 8, 9
1
10, 7, 8, 9
1
10, 7, 8, 9
1
10, 7, 8, 9
1
10, 7, 8, 9
1
10, 7, 8, 9
1
5
язык; конкретные реализации языков
функционального программирования; применения
функционального программирования; рекурсивные
функции и лямбда-исчисление А.Черча.
Общие сведения о языках функционального
программирования. Соответствие между
функциональными и императивными программами.
Функциональные языки, строго функциональный
язык. Конкретные реализации языков
Дидактическая единица: Программирование в
функциональных обозначениях.
Основные особенности языка LISP. Элементарные
понятия. Символьные выражения: атомы и списки.
Функции. Инфиксная и префиксная нотация.
Программирование в функциональных
обозначениях.
Дидактическая единица: Приемы
программирования; представление и интерпретация
функциональных программ; отладка программ.
Приемы программирования; представление и
интерпретация функциональных программ. Базовые
функции. Предикаты. Псевдофункции. Определение
функций. Задание параметров функции в лямбдасписке. Передача пар
Простая рекурсия. Рекурсия по значению. Рекурсия
по аргументу. Параллельная рекурсия. Взаимная
рекурсия. Рекурсия более высокого порядка.
Функциональные аргументы. Функциональное
значение функции. При
Обзор основных вопросов, рассмотренных в
дисциплине. Перспективы дальнейшего развития
теории и практики функционального и логического
программирования, применения функционального
программирования, при
Лабораторная работа
(Модуль), дидактическая
единица, тема
Семестр: 6
Модуль: Основы логического
программирования
Дидактическая единица:
Логическая программа: основные
конструкции, операционная и
декларативная семантика,
интерпретация, корректность.
Знакомство с основами языка
логического программирования
PROLOG.
1
1, 11, 2, 3
1
10, 7, 8, 9
1
10, 7, 8, 9
1
10, 7, 8, 9
1
11, 12, 4
Учебная деятельность
Студент:
4
- изучает возможности
программной оболочки;
10
Часы
Таблица 4.2
Ссылки
на цели
13, 14, 15,
16
- использует способы
представления данных
в виде фактов и правил
вывода для записи
программы на языке
PROLOG;
- используя
возможности,
предоставляемые
программной
оболочкой, проверяет
правильность работы
созданной программы;
- оформляет результаты
работы программы;
- оценивает
полученные
результаты.
Дидактическая единица:
Рекурсивное программирование.
Разработка программ,
использующих для нахождения
решений рекурсию и поиск с
возвратом.
Разработка программ для работы с
рекурсивными структурами
данных (списками и деревьями)
использует способы
представления данных
в виде фактов и правил
вывода для записи
программы на языке
PROLOG;
проверяет
правильность работы
созданной программы;
исследует различия в
двух методах
нахождения решений:
рекурсии и поиске с
возвратом;
исследует различия в
двух методах
нахождения решений:
хвостовой и
нехвостовой рекурсии;
оформляет результаты
работы программы;
оценивает полученные
результаты.
4
13, 14, 15,
16
использует способы
представления данных
в виде фактов и правил
вывода для записи
программы на языке
PROLOG;
проверяет
4
13, 14, 15,
16
11
правильность работы
созданной программы;
исследует методы
работы с рекурсивными
структурами данных
(списками и
деревьями);
оформляет результаты
работы программы;
оценивает полученные
результаты.
Модуль: Основы функционального
программирования
Дидактическая единица:
Программирование в
функциональных обозначениях.
Знакомство с основами языка
функционального
программирования LISP.
использует способы
представления данных
в виде функций для
записи программы на
языке LISP;
проверяет
правильность работы
созданной программы;
оформляет результаты
работы программы;
оценивает полученные
результаты.
6
13, 14, 15,
16
5. Самостоятельная работа студентов
Семестр- 5, Курсовой проект
В течение семестра студентами выполняется курсовой проект. В рамках курсового
проекта студентам предлагается реализовать программу с использованием языка
логического или функционального программирования, в ходе курсового проектирования
студенты разрабатывают программу на языке логического или функционального
программирования, проверяют правильность работы программы, оценивают полученные
результаты, оформляют пояснительную записку.
Цель курсового проектирования - обобщить и структурировать знания, полученные в
рамках дисциплины "Функциональное и логическое программирование", научить
студентов разрабатывать и отлаживать программы с использованием языков логического
или функционального программирования.
Образец задания:
Разработать программу для работы с бинарными упорядоченными деревьями.
Реализовать следующие функции: создание дерева, загрузку дерева из файла, сохранение
дерева в файле, добавление вершины с сохранением упорядоченности, удаление
вершины, все виды обхода дерева, просмотр дерева в традиционном представлении
(корень вверху, листьевые вершины внизу.)
Требования к оформлению пояснительной записки:
12
Пояснительная записка к курсовому проекту должна содержать: титульный лист, задание
на курсовой проект, назначение программного продукта, описание данных, описание
методов решения, описание разработанного программного продукта, описание
пользовательского интерфейса, список использованной литературы и/или адресов www,
приложение - исходные тексты с комментариями.
(20часов)
Семестр- 5, Индив. работа
Объем индивидуальной работы на подготовку к курсовому проектированию составляет 6
часов.
Семестр- 5, Подготовка к занятиям
Объем самостоятельной работы на подготовку к занятиям составляет 40 часов.
13
6. Правила аттестации студентов по учебной дисциплине
Для аттестации студентов по дисциплине используется балльно-рейтинговая система.
Рейтинг студента по дисциплине определяется как сумма баллов за работу в семестре
(текущий рейтинг) и баллов, полученных в результате итоговой аттестации (экзамен).
В таблице приведено максимальное количество баллов, которое может набрать студент
по видам учебной деятельности в течение семестра и диапазоны баллов, соответствующие
минимальному и максимальному количествам баллов. Максимальная сумма баллов за
семестр составляет 100 баллов (текущий рейтинг - 60 баллов, итоговая аттестация - 40
баллов).
Правила текущей аттестации:
1. В течение пятого семестра необходимо представить и защитить 4 лабораторные
работы и курсовой проект в сроки, установленные учебным графиком (см. таблицу).
2. К защите лабораторных работ допускаются студенты, выполнившие лабораторные
работы в полном объеме (все задания согласно варианту) и оформившие отчеты в
соответствии с требованиями.
3. На защите лабораторной работы предлагается один теоретический вопрос и два
практических вопроса (по ходу выполнения работы).
4. Максимальное количество баллов 16(14) выставляется, если студент полностью
ответил на все вопросы, без серьезных замечаний и недочетов.
5. Количество баллов 12(11) выставляется, если студент полностью ответил на два
вопроса из трех, причем один из вопросов - теоретический.
6. Минимальное количество баллов 8(7) выставляется, если студент ответил на два
вопроса из трех частично, с серьезными замечаниями, недочетами.
7. Пересдача лабораторной работы назначается, если студент не ориентируется в
учебном материале, не может объяснить ход и результаты выполнения работы. В случае
пересдачи работы происходит потеря баллов (максимальное количество баллов составляет
8(7)).
8. В случае представления и защиты работ с опозданием от учебного графика
происходит потеря баллов (опоздание на 1 неделю - потеря 3(4) баллов, опоздание на 2
недели и более - потеря 8(7) баллов).
Правила итоговой аттестации:
1. К экзамену допускаются студенты, сдавшие лабораторные работы, набравшие не
менее 50% (30 баллов) по результатам текущего рейтинга и сдавшие курсовой проект.
2. Экзамен проводится в устном виде, предлагается два теоретических вопроса и одна
задача (перечень экзаменационных вопросов и примеры экзаменационных задач приведены в
п.8).
3. Максимальное количество 36-40 баллов выставляется, если даны полные ответы на
теоретические вопросы экзаменационного билета и дополнительные вопросы, правильно
решена практическая задача.
4. Количество баллов 30-35 выставляется, если дан полный ответ на один из
теоретических вопросов, неполный ответ на второй теоретический вопрос и правильно, без
серьезных замечаний, решена практическая задача.
5. Минимальное количество баллов 20-29 выставляется, если дан ответ на один из
теоретических вопросов и решена практическая задача, но с ошибками, замечаниями,
недочетами.
6. Возможно получить "автомат" (отлично) по дисциплине без сдачи экзамена, если
студент в течение семестра выполняет дополнительные задания повышенной сложности и
набирает свыше 90 баллов по текущему рейтингу.
14
Правила аттестации по курсовому проектированию:
1. К защите курсового проекта допускаются студенты, выполнившие курсовой проект в
полном объеме (по заданию согласно варианту) и оформившие пояснительную записку в
соответствии с требованиями.
2. На защите курсового проекта предлагается три практических вопроса (по ходу
выполнения проекта).
3. Максимальное количество баллов 100 выставляется, если студент полностью ответил
на все вопросы, без серьезных замечаний и недочетов.
4. Количество баллов 75 выставляется, если студент полностью ответил на два вопроса
из трех.
5. Минимальное количество баллов 50 выставляется, если студент ответил на два
вопроса из трех частично, с серьезными замечаниями, недочетами.
6. Пересдача курсового проекта назначается, если студент не ориентируется в учебном
материале, не может объяснить ход и результаты выполнения курсового проекта. В случае
пересдачи курсового проекта происходит потеря баллов (максимальное количество баллов
составляет 50).
7. В случае представления и защиты работ с опозданием от учебного графика
происходит потеря баллов (сдача в течение сессии - потеря 15 балла, сдача в следующем
семестре - потеря 30 баллов).
Таблица
Пятый семестр:
1. Лабораторная работа №1 Максимальное количество баллов - 14 Диапазоны
7-14 Срок представления и защиты (неделя семестра) - по расписанию занятий
2. Лабораторная работа №2 Максимальное количество баллов - 16 Диапазоны
8-16 Срок представления и защиты (неделя семестра) - по расписанию занятий
3. Лабораторная работа №3 Максимальное количество баллов - 16 Диапазоны
8-16 Срок представления и защиты (неделя семестра) - по расписанию занятий
4. Лабораторная работа №4 Максимальное количество баллов - 14 Диапазоны
7-14 Срок представления и защиты (неделя семестра) - по расписанию занятий
баллов баллов баллов баллов -
Итого по текущему рейтингу: Максимальное количество баллов - 60 Диапазоны баллов
- 30-60
5. Экзамен: Максимальное количество баллов - 40 Диапазоны баллов - 20-40
Итого за пятый семестр: Максимальное количество баллов - 100 Диапазоны баллов - 5072 (удовл.), 73-87 (хор.), 88-100 (отл.)
6. Курсовой прект: Максимальное количество баллов - 100 Диапазоны баллов - 50-100
Итого за пятый семестр: Максимальное количество баллов - 100 Диапазоны баллов - 5072 (удовл.), 73-87 (хор.), 88-100 (отл.)
15
7. Список литературы
7.1 Основная литература
В печатном виде
1. Братко И. Алгоритмы искусственного интеллекта на языке Prolog. пер. с англ. / Иван
Братко. - М. [и др.], 2004. - 637 с. : ил.
2. Шрайнер П. А. Основы программирования на языке Пролог : курс лекций : учебное
пособие для вузов по специальностям информационных технологий / П. А. Шрайнер. - М.,
2005. - 172, [1] с. : ил.
3. Хювенен Э. Мир Лиспа. В 2 т.. Т. 1. введение в язык Лисп и функциональное
программирование : [учебное пособие] / Э. Хювёнен, Й. Сеппянен ; пер. с фин. А. А.
Рейтсакаса ; под ред. В. Л. Стефанюка. - М., 1990. - 447 с. : ил.
4. Городняя Л. В. Основы функционального программирования. Курс лекций : учебное
пособие / Л. В. Городняя ; Интернет ун-т информ. технологий. - М., 2004. - 272 с. Рекомендовано УМО.
5. Авдеенко Т. В. Введение в искусственный интеллект и логическое программирование :
учебное пособие / Т. В. Авдеенко ; Новосиб. гос. техн. ун-т. - Новосибирск, 2007. - 62, [2] с. :
ил.
В электронном виде
1. Авдеенко Т. В. Введение в искусственный интеллект и логическое программирование :
учебное пособие / Т. В. Авдеенко ; Новосиб. гос. техн. ун-т. - Новосибирск, 2007. - 62, [2] с. :
ил.. - Режим доступа: http://www.library.nstu.ru/fulltext/metodics/2007/avdeenko.rar
7.2 Дополнительная литература
В печатном виде
1. Хювенен Э. Мир Лиспа. В 2 т.. Т. 2. Методы и системы программирования : [учебное
пособие] / Э. Хювёнен, Й. Сеппянен ; пер. с фин. А. А. Рейтсакаса ; под ред. В. Л.
Стефанюка. - М., 1990. - 318, [1] с. : ил.
2. Ин Ц. М. Использование Турбо-Пролога : Пер. с англ.. - М., 1993. - 606 с. : ил.
3. Языки программирования [Электронный ресурс] : учебный комплекс INTUIT.ru /
Интернет университет информационных технологий. - М., 2006. - 1 электрон. опт. диск (CDROM). - Загл. с экрана.
4. Стобо Д. Язык программирования Пролог : Пер. с англ.. - М., 1993. - 368 с. : ил.
5. Чанышев О. Г. ПРОграммирование в ЛОГике : учебное пособие / О. Г. Чанышев ; Омский
гос. ун-т им. Ф. М. Достоевского. - Омск, 2004. - 63 с.
6. Доорс Д. Пролог - язык программирования будущего / Доорс Дж., Рейблейн А. Р., Вадера
С. - М., 1990. - 141 с. : ил.
7. Малпас Д. Реляционный язык Пролог и его применение. - М., 1990. - 463, [1] с.
8. Непейвода Н. Н. Стили и методы программирования. Курс лекций : учебное пособие для
вузов по специальностям в области информационных технологий / Н. Н. Непейвода ;
Интернет ун-т информ. технологий. - М., 2005. - 316 с. : ил., схемы
9. Янсон А. Турбо-Пролог в сжатом изложении / Пер. с нем. Сойфер Н. С. ; Под ред.
Бухштаба Ю. А. - М., 1991. - 92, [2] с.
10. Стерлинг Л. Искусство программирования на языке Пролог / Л. Стерлинг, Э. Шапиро ;
пер. с англ. С. Ф. Сопрунова и Л. В. Шабанова ; под ред. Дадаева Ю. Г. - М., 1990. - 333 с. :
ил.
16
11. Ходашинский И. А. Язык ПРОЛОГ в примерах и задачах : учебное пособие / И. А.
Ходашинский ; Федер. агентство по образованию ; Том. гос. ун-т систем упр. и
радиоэлектроники. - Томск, 2006. - 279 с. : ил.
12. Сошников Д. В. Парадигма логического программирования / Д. В. Сошников. – М. :
Вузовская книга, 2006. – 220 с.
13. Сергиевский Г. М. Функциональное и логическое программирование : [учеб. пособие] / Г.
М. Сергиевский, Н. Г. Волченков. – М. : Академия, 2010. – 317, [1] с. : ил.
В электронном виде
1. Бойт, К.Бо. Цифровая электроника / К. Бойт ; пер. с нем. М. М. Ташлицкого. - М., 2007. 471 с. : ил.
2. Языки программирования [Электронный ресурс] : учебный комплекс INTUIT.ru /
Интернет университет информационных технологий. - М., 2006. - 1 электрон. опт. диск (CDROM). - Загл. с экрана.
8. Методическое и программное обеспечение
8.1 Методическое обеспечение
В электронном виде
1. Новицкая Ю. В. Учебно-методический комплекс по дисциплине "Функциональное и
логическое программирование" [Электронный ресурс] : учебно-методический комплекс / Ю.
В. Новицкая ; Новосиб. гос. техн. ун-т. - Новосибирск, [2008]. - Режим доступа:
http://ermak.cs.nstu.ru/flp. - Загл. с экрана.
8.2 Программное обеспечение
1. Amzi! inc., Amzi! Prolog, Embeddable, Extendable, Portable Prolog Implementation
2. Файфель Б.Л., Файфель А.Б., HomeLisp, Система Лисп-программирования на платформе
Windows
17
Скачать