Учебно-методический комплекс по дисциплине Функциональное и логическое программирование Для направления/специальности - polpoz.ru o_O
Главная
Поиск по ключевым словам:
Похожие работы
Название работы Кол-во страниц Размер
Учебно-методический комплекс по дисциплине по выбору дв2 «логическое... 1 351.89kb.
Учебно-методический комплекс по дисциплине Судебная психиатрия для... 1 208.53kb.
Учебно-методический комплекс по дисциплине «Теория экономического... 4 577.49kb.
Задание к контрольной работе по дисциплине «Функциональное и логическое... 1 88.42kb.
Вопросы к экзамену по дисциплине «Функциональное и логическое программирование» 1 13.5kb.
Учебно-методический комплекс по дисциплине 9 1760.07kb.
Учебно-методический комплекс По дисциплине «Информатика и икт»10... 1 205.87kb.
О. И. Быльченко учебно-методический комплекс по дисциплине «история... 5 1542.05kb.
Учебно-методический комплекс для студентов специальности 080507 «Менеджмент... 4 550.45kb.
Учебно-методический комплекс по дисциплине «Коммерческое право России»... 3 496.24kb.
Учебно-методический комплекс по дисциплине уголовно-процессуальное... 4 1634.57kb.
Классный час 4 класс «Война 1812 года» 1 182.1kb.
1. На доске выписаны n последовательных натуральных чисел 1 46.11kb.

Учебно-методический комплекс по дисциплине Функциональное и логическое программирование - страница №1/4


Дисциплина "Функциональное и логическое программирование"

Технологическая карта




МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ

УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

ПОВОЛЖСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ













Кафедра

Информатики и системного программирования
















Учебно-методический комплекс по дисциплине

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





Для направления/специальности

230100 – Информатика и вычислительная техника,

230105.65 – Программное обеспечение вычислительной техники и автоматизированных систем









Рассмотрено и утверждено на заседании кафедры от 03.09. 2012г.







Разработчик













/ О.Е. Ананьева /

Заведующий кафедрой




/ М.Н. Морозов /













Йошкар-Ола

2012

ВВЕДЕНИЕ

По дисциплине "Функциональное и логическое программирование " имеется достаточное количество экземпляров учебников и учебных пособий в электронном виде, поэтому в данном разделе УМК конспект лекций не приведен. Конспект лекций по дисциплине имеется у ведущего преподавателя.


В учебном плане специальностей по дисциплине " Функциональное и логическое программирование " предусмотрено выполнение курсового проекта.
Учебная практика по дисциплине " Функциональное и логическое программирование " учебным планом специальности не предусмотрена.

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ

УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

ПОВОЛЖСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ










УТВЕРЖДАЮ




Декан ФИ и ВТ




/Сидоркина И.Г./




____ ______________ 2012 г.







РАБОЧАЯ ПРОГРАММА




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

для направления (ий) (специальности (ей)

230100 – Информатика и вычислительная техника,

специальность 230105.65 – Программное обеспечение вычислительной техники и автоматизированных систем



Дисциплина закреплена за кафедрой Информатики и системного программирования

приказом

№ 157-П

от

10.05

2012 г.




Курс

3




Семестр

6




Распределение учебного времени

Общая трудоёмкость по ГОС

140

часов

Трудоёмкость по учебному плану

153

часов

Лекции

34

часов

Лабораторные занятия

34

часов

Практические (семинарские) занятия

нет

часов

Всего аудиторных занятий

68

часов

Курсовой проект в

6

семестр

Курсовая работа в

нет

семестр

РГР, реферат, К.Р.

нет

семестр

Самостоятельная (внеаудиторная) работа студентов

85

часов

Экзамен в

6

семестре

Зачёт в

-

семестре




Йошкар-Ола

2012





Разработчик(и)













Ст. преподаватель

каф. ИиСП




/О.Е. Ананьева/





































РАССМОТРЕНА и ОДОБРЕНА на заседании кафедры, за которой закреплена дисциплина

Информатики и системного программирования (ИиСП)

(наименование кафедры)


03.09.2012 г.

(Дата)


Протокол № 1













Заведующий кафедрой ИиСП




М.Н. Морозов

(Подпись)













Рабочая программа СОГЛАСОВАНА с факультетом, выпускающей(ими) кафедрой(ами) специальности; СООТВЕТСТВУЕТ действующему плану







Председатель методической

Комиссии ФИиВТ



(Подпись)


А.А.Кречетов












Методист УМУ

(Подпись)



(И.О. Фамилия)












  1. При разработке рабочей программы использованы:

  • Государственный общеобразовательный стандарт по специальности 220400 «Программное обеспечение автоматизированных систем», утвержденный Госстандартом России 27 марта 2000 года.

  • Учебный план специальности 220400 «Программное обеспечение автоматизированных систем» направления подготовки 654600 "Информатика и вычислительная техника" от 17 мая 2004 года.

  • Указатель соответствия между Перечнем направлений подготовки и специальностей высшего профессионального образования и Общероссийским классификатором специальностей по образованию ОК 009-2003 (приказ МИНОБРАЗОВАНИЯ РОССИИ № 4482
    от 04.12.2003).    

2. Обязательный минимум содержания программы в соответствии с государственным стандартом.

СД.02 Функциональное и логическое программирование 140
Рекурсивные функции и лямбда-исчисление А.Черча; программирование в функциональных обозначениях; функциональные языки; строго функциональный язык; приемы программирования; представление и интерпретация функциональных программ; отладка программ; конкретные реализации языков функционального программирования; соответствие между функциональными и императивными программами; применения функционального программирования.

Логическая программа: основные конструкции, операционная и декларативная семантика, интерпретация, корректность; программирование баз данных; рекурсивное программирование; вычислительная модель; анализ структуры термов; металогические предикаты; внелогические предикаты; недетерминированное программирование; неполные структуры данных; программирование второго порядка; методы поиска; обработка нечетких данных.

Constraint–Пролог: операционная семантика; применение логического программирования в задачах искусственного интеллекта.

Раздел 1. Цели и задачи дисциплины, ее место в подготовке специалиста (в т.ч. позиции: «должен знать», «должен уметь»)


    1. Цели и задачи дисциплины

Целью дисциплины является изучение и практическое освоение средств функционального и логического программирования для решения научных и прикладных задач. В качестве инструментальных средств изучаются языки ПРОЛОГ и ЛИСП. Рассматриваются теоретические и прикладные аспекты использования данных языков программирования для решения задач искусственного интеллекта.

Материал курса является инструментальной основой при изучении студентами дисциплин учебного плана, связанных с созданием программных средств искусственного интеллекта.

В результате изучения дисциплины студенты должны знать: математические основы, основные концепции и приемы функционального программирования и уметь использовать основные средства языка функционального программирования для реализации алгоритмов: теоретические основы и прикладные средства логического программирования; должны уметь : разрабатывать и реализовывать алгоритмы с использованием языка функционального программирования; сравнивать различные подходы к реализации алгоритма и выбирать наилучшие подходы для решения прикладной задачи; использовать прикладные средства логического программирования.




    1. Связь с другими дисциплинами

Содержание дисциплины является логическим продолжением содержания дисциплин «Информатика и программирование», «Операционные системы», «Объектно-ориентированное программирование», используется при изучении дисциплины «Разработка интернет-приложений.


Раздел 2. Содержание дисциплины

2.1. Общий план изучения дисциплины


Наименование тем

Виды занятий (количество часов)

Лекции

Практ.

занятия


Лаборат. занятия

Консуль-тации

Самост. работа

Индив. работа

1. Функциональное программирование.

18




18




20




2. Логическое программирование

16




16




65




Итого

34




34




85




2.2. График самостоятельной работы студентов

Виды работ

Недели




1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

Работа над лекциями

л1

л2

л2

л3

л3

л4

л4

л4

л5

л5

л6

л6

л6

л7

л7

л8

л9

Подготовка л/р

р1

р2

р3

р4

р5

р6

р7

р8

р8

р9

р10

р11

р12

р13

р13

р14

р14

Текущий

контроль л/р



р1

р2

р3

р4

р5

р6

р7




р8

р9

р10

р11

р12




р13




р14

Подготовка КП
















пк

пк

пк

пк

пк

пк

пк

пк

пк

пк

пк




Контроль КП













вз







тз



















кп




з



Условные обозначения:

лi – лекция № i (см. п. 2.3)

рi – лабораторная работа № i (см. п. 2.5)

пк - подготовка к выполнению КП

вз – выдача задания на курсовой проект

тз – согласование технического задания

кп – контрольная проверка курсовой работы

з – защита курсового проекта


2.3. Наименование и краткое содержание лекций



Тема лекции. Краткое содержание

Часы

1


Введение. Общее представление о функциональном подходе к программированию. сравнение с процедурным подходом; преимущества и недостатки. ЛИСП - язык функционального программирования. Основные особенности Лиспа

2

2


Элементарные понятия ЛИСПа. Типы данных. Символьные данные и выражения. Понятие функции (тип аргументов и функций). Базовые функции. Использование символов в качестве переменных. Функция SET.

2

3


Функциональный подход к программированию. Абстрактные действия. Передача параметров. Глобальные и локальные переменные. Свободные переменные. Функции обработки списков. Предикаты. Базовые предикаты. Предикаты типов. Числовые предикаты.

2

4


Логические функции. Управляющие структуры. Другие условные предложения разветвление вычислений (cond). Связь между COND и логическими функциями. Простые функции ввода и вывода информации. Определение функций с использованием неявного PROGN. Условный выход из функции: PROG RETURN.

2

5


Циклические предложения. Применение LOOP для численных итераций. Применение LOOP для итераций co списками. Реализация циклов с DO. Обработка списков c DO. DOTIMES

2

6


Рекурсия. Численная рекурсия. Как работает рекурсивная функция. Правила записи рекурсивной функции. CDR рекурсия. Несколько терминальных ветвей. Hесколько рекурсивных ветвей. Общая форма.

2

7


Алгоритм поиска на Лиспе. Функционалы. Отображающий функционал MAPCAR. Лямбда выражения. Свойства символов

2

8


Внутреннее представление списков. Структура памяти. Сборка мусора. Обработка списков без разрушения. Разрушающие функции (NCONC, RPLACA, RPLACD). Применяющие функционалы. Сочетание apply, nconc, mapcar - mapcan.

2

9


Массивы. Определение массива. Доступ к ячейке массива. Запись данных в массив. Обработка массивов. Длина массива. Обратная блокировка. Макросы. Разработка макро. Пример программы на Лиспе

2

10

Ретроспективная справка создания языка Пролог и его версий. Пролог как система, реализующая логический вывод в исчислении предикатов первого порядка. Общий обзор языка ПРОЛОГ. Пример программы: родственные отношения. Факты. Вопросы. Переменные. Конъюнкция целей. Правила. Конъюнкция в правилах. Переменные в теле правила. Структура пролог программы.

2

11

Синтаксис ПРОЛОГА. Константы. Переменные. Структуры. Операторы - тоже функторы. Арифметика. Операции сравнения. Сопоставление. Второе значение операции = в Прологе. Примеры сопоставления структур

2

12

Семантика ПРОЛОГа. Декларативная семантика Пролог-программ. Дизъюнкция целей. Процедурная семантика. Формальное описание процедуры вычисления целей. Соотношение между процедурным и декларативным смыслом.

2

13

Списки. Представление списка диаграммой. Выделение головы и хвоста списка. Шаблоны списков. Определения отношений через cons форму списка. Процедуры обработки списков. Длина списка. Встроенные предикаты. Простые встроенные предикаты ввода-вывода. Процедурный смысл встроенных предикатов ввода-вывода. Ввод-вывод списков. Ввод-вывод списка как терма. Поэлементный ввод-вывод списка.

2

14

Отсечение. Графическая иллюстрация действия cut. Пример действия cut. Применение cut при выборе альтернатив. Формальное описание действия отсечения. Применение отсечения. Добавление элемента без дублирования. Классификация. Отсечение в численной рекурсии. Замечания при использовании отсечения. Сортировка списков. Метод наивной сортировки. Метод пузырька. Метод вставки. Быстрая сортировка quick.

2

15

Отрицание как неудача (not as failure). Алгоритм поиска на Прологе. Чтение и запись информации с файлов. Обработка входных потоков. Обработка выходных потоков. Обработка символов. Три предиката ARITY-prologa.

2

16

Встроенные предикаты repeat. Проверка типа терма. Метапредикаты. (Встроенные предикаты обработки термов.) Создание и декомпозиция термов. Т=..L , functor, arg. Предикаты работы с базой данных. Поиск в лабиринте.

2

17

Примеры использования Пролога для решения задач искусственного интеллекта. Тенденции и перспективы развития языков функционального и логического программирования. Сравнительная характеристика языков программирования

2

Итого:

34

2.4. Наименование и краткое содержание тем практических занятий

Практические занятия учебным планом не предусмотрены.


2.5. Наименование и краткое содержание тем лабораторных работ



Наименование лабораторной работы

Часы

1

Синтаксис Лиспа. Основные понятия.

2

2

Базовые функции. Определение функций

2

3

Логические функции. Управляющие структуры.

2

4

Циклические предложения ЛИСПа.

2

5

Рекурсия.

2

6

Параллельная рекурсия в алгоритме поиска. Функции load и inspect.

2

7

Функционал MAPCAR. LAMBDA-выражения.Свойства символов.

2

8

Внутреннее представление списков. EQ и EQUAL. Разрушающие функции RPLACA, RPLACD, NCONC.

4

9

Основные понятия PROLOGа. Интегрированная среда ARITY-PROLOG.

2

10

Синтаксис PROLOGa. Сопоставление (Унификация)

2

11

Списки. Рекурсия

2

12

Отсечение. Отладка. Встроенные предикаты.

2

13

Реализация алгоритмов символьной обработки. Сортировки

4

14

Реализация поиска на PROLOGе.

4

Итого:

34

2.6. Расчетно-графические работы

Расчетно-графические работы учебным планом не предусмотрены.



2.7. Курсовой проект

п/п


Номер раздела дисциплины.

Тематика курсового проекта

Сроки

Колич. часов

Начало

окончание

конс

самост



2

Дана рабочая плоскость (представленная в виде стандартного файла Windows DIB), содержащая некоторые непересекающиеся геометрические фигуры (круг, квадрат, треугольник и т.п). Необходимо идентифицировать указанные в индивидуальном задании фигуры, определить их положение, размер, проанализировать, отсортировать и преобразовать в фигуры другого вида.


5

17

4

44


2.8. Самостоятельная работа студентов

Раздел дисциплины

№ п/п

Вид СРС

Кол-во часов

Виды и формы контроля

Раздел 1

1.

Проработка лекций

9

Опрос

2.

Подготовка к лабораторным работам

11

Защита лаб.раб

Раздел 2

3.

Проработка лекций

8

Опрос

4.

Подготовка к лабораторным работам

13

Защита лаб.раб

5.

Выполнение КП

40

Тек. проверка







Защита КП

4

Защита КП

Все разделы










Экзамен

Итого







85




Раздел 3. Учебно-методические материалы по дисциплине

3.1. Основная литература.

№№

п/п

Автор

Наименование

Год

изда-

ния

Колич.

экземпляров

в библ.

на кафед.



Кауфман В. Ш.

Языки программирования. Концепции и принципы, Издательский дом ДМК-Пресс, 465 с.

2010

10??

Эл. ва-риант



Шалимов П.Ю.

Функциональное программирование: Учеб. пособие. БГТУ, ISBN: 5-89838-112-0, 160 с.

http://rutracker.org/forum/viewtopic.php?t=1468392



2003

10??

Эл. ва-риант



Адаменко А., Кучуков А.

Логическое программирование и Visual Prolog. BHV. ISBN: 5-94157-156-9, 940 с.

http://rutracker.org/forum/viewtopic.php?t=1108961



2003

10??

Эл. ва-риант

3.2 Дополнительная литература

№№

п/п

Автор

Наименование

Год

изда-

ния

Колич.

экземпляров

в библ.

на кафед.



Хювенен Э., Сеппянен И.

Мир ЛИСПа. В 2 т. - М.: Мир

1990

10??

Эл. ва-риант



И.Братко.

Программирование на языке ПРОЛОГ для искусственного интеллекта. М.: Мир

1990

10??

Эл. ва-риант



Филд А., Харрисон П.

Функциональное программирование. - М.: Мир

1993

10??

Эл. ва-риант



Пенроуз Р.

Глава 2: Лямбда-исчисление Черча // Новый ум короля. О компьютерах, мышлении и законах физики = The Emperors New Mind: Concerning Computers, Minds and The Laws of Physics. Перевод с англ.  под общ. ред. В. О. Малышенко. — 4-е изд. — М.: УРСС, ЛКИ, ISBN 978-5-382-01266-7; 402 с..

2011




Электронный вариант



    1. Методические разработки.

Отсутствуют (по крайней мере, мне они не известны)
3.4. Технические и электронные средства обучения, иллюстративные материалы ( в т.ч. учебные фильмы )



Автор

Наименование


Год

издания

Кол-во экземпляров

В библ.

На кафедре

1.

P. Seibel

Practical Common Lisp. Apress. ISBN: 1590592395, 978-1590592397, 528 с.

http://pcl.catap.ru/doku.php

http://www.gigamonkeys.com/book

http://rutracker.org/forum/viewtopic.php?t=3103736



2005




Электронный вариант

2

C. Barski

Land of Lisp: Learn to Program in Lisp, One Game at a Time. No Starch Press. ISBN: 1593272812, 504 с.

http://rutracker.org/forum/viewtopic.php?t=3244459



2010




Электронный вариант

3

J.Cohen.

Constraint Logic Programming Languages. Communication of the ACM

1990




Электронный вариант

4

B. Demoen, Phuong-Lan Nguyen, T. Schrijvers, R. Tronçon

The First 10 Prolog Programming Contests (with solutions). ISBN: 9789090197821, 161 с.

http://rutracker.org/forum/viewtopic.php?t=2742013



2005




Электронный вариант

5.

J. Stobo

Problem Solving With Prolog. PITMAN PUBLISHING. ISBN: 0-203-26419-3, 325 с.

http://rutracker.org/forum/viewtopic.php?t=2741917



2001




Электронный вариант

6

B. Tjaden, J. Cohen

A Survey of Computational Methods used in Microarray Data Interpretation, Applied Mycology and Biotechnology, Bioinformatics 6

2006




Электронный вариант

7

J. Cohen

Computer Science and Bioinformatics, Communications of the ACM

2005




Электронный вариант

8

J. Cohen

A Tribute to Alain Colmerauer, Transactions in Logic Programming, Oxford University Press

2001




Электронный вариант

9

J. Cohen

New Developments in Constraints, Handbook of Computer Science and Engineering, CRC Press

2003




Электронный вариант

Раздел 4. Учебная и производственная практика

Учебным планом по дисциплине не предусмотрена.


Раздел 5. Переутверждение рабочей программы

следующая страница >>


izumzum.ru