Теоретические основы информатики 1к.БИ 14

advertisement
Правительство Российской Федерации
Нижегородский филиал
Федерального государственного автономного образовательного
учреждения высшего профессионального образования
"Национальный исследовательский университет
"Высшая школа экономики"
Факультет бизнес-информатики и прикладной математики
Программа дисциплины «Теоретические основы информатика»
для направления 38.03.05 «Бизнес-информатика» подготовки академического бакалавра
Автор программы:
Логвинова К.В., к.ф.-м.н., профессор, klogvinova@hse.ru
Одобрена на заседании кафедры ИСиТ
Зав. кафедрой Асеева Н.В. _______________________
Рекомендована секцией УМС «Информатика»
Председатель Асеева Н.В. _______________________
Утверждена УМС НИУ ВШЭ – Нижний Новгород
Председатель Бухаров В.М. _______________________
«___»____________ 2014 г
«___»____________ 2014 г.
«___»_____________2014 г.
Нижний Новгород, 2014
НИУ ВШЭ – Нижний Новгород
Программа дисциплины «Теоретические основы информатики» для направления 38.03.05 «Бизнес-информатика» подготовки академического бакалавра
1
Область применения и нормативные ссылки
Настоящая программа учебной дисциплины устанавливает минимальные требования к
знаниям и умениям студента и определяет содержание и виды учебных занятий и отчетности.
Программа предназначена для преподавателей, ведущих данную дисциплину, учебных
ассистентов и студентов направления 38.03.05 «Бизнес-информатика» подготовки бакалавра.
Программа разработана в соответствии с:
 Образовательным стандартом НИУ ВШЭ по направлению 38.03.05 «Бизнес – информатика».
 Образовательной программой по направлению 38.03.05 «Бизнес – информатика».
 Учебным планом НИУ ВШЭ по направлению 38.03.05 «Бизнес – информатика,
утвержденным в 2014.
2
Цели освоения дисциплины
Целями освоения дисциплины «Теоретические основы информатика» являются изучение
понятийного аппарата и применение полученных знаний к анализу математических моделей в
различных предметных областях.
3
Компетенции обучающегося, формируемые в результате освоения дисциплины
В результате освоения дисциплины студент должен:
 Знать основные методы, применяющиеся в дискретной математике
 Уметь применять эти методы на практике
 Иметь навыки (приобрести опыт) решения задач, возникающих в различных прикладных областях
В результате освоения дисциплины студент осваивает следующие компетенции:
Компетенция
Дескрипторы – основные признаки
Код по
освоения (показатели достижения
ОС НИУ
результата)
Способен выявлять
научную сущность проблем в профессиональной области
УК-2
Студент способен к распознаванию естественнонаучных аспектов широкого круга проблем
профессиональной деятельности, обладает необходимыми
навыками применения понятийного аппарата
Способен работать с информацией: находить,
оценивать и использовать информацию из
различных источников,
необходимую для решения научных и профессиональных задач (в том
числе на основе системного подхода)
Способность обрабатывать, анализировать и
УК-5
В ходе подготовки к занятиям студент получает и совершенствует
навыки работы с информационными источниками различного
типа
ПК-31 Студент способен применять
современный математический
Формы и методы обучения,
способствующие формированию и развитию компетенции
Чтение лекций, проведение
практических занятий, самостоятельная работа
Самостоятельная работа
Чтение лекций, проведение
практических занятий, самостоятельная работа
НИУ ВШЭ – Нижний Новгород
Программа дисциплины «Теоретические основы информатики» для направления 38.03.05 «Бизнес-информатика» подготовки бакалавра
Дескрипторы – основные признаки
Код по
освоения (показатели достижения
ОС НИУ
результата)
Компетенция
систематизировать информацию по теме исследования, используя
соответствующий математический аппарат и
инструментальные средства
Формы и методы обучения,
способствующие формированию и развитию компетенции
аппарат в прикладной и исследовательской деятельности
Место дисциплины в структуре образовательной программы
4
Настоящая дисциплина относится к циклу профессиональных дисциплин, обеспечивающих
подготовку бакалавра по направлению 38.03.05 «Бизнес-информатика».
Для направления «Бизнес-информатика» настоящая дисциплина является базовой.
Изучение данной дисциплины базируется на знании материала курса «Дискретная математика» и «Программирование», а также навыках логического мышления.
Основные положения дисциплины должны быть использованы в дальнейшем при изучении следующих дисциплин: «Объектно-ориентированное программирование», «Имитационное
моделирование».
Тематический план учебной дисциплины
5
Общая трудоемкость изучения курса 6 зачетных единицы.
№
1
2
3
4
5
Название раздела
Всего
часов
Формальные языки
Конечные автоматы
Автоматы с магазинной памятью
LL-грамматики
LR-грамматики
Итого
16
56
52
52
54
228
3
Аудиторные часы
ПрактиЛекСемические
ции
нары
занятия
2
4
10
8
10
8
40
12
10
10
6
40
Самостоятельная
работа
10
34
34
34
36
148
НИУ ВШЭ – Нижний Новгород
Программа дисциплины «Теоретические основы информатики» для направления 38.03.05 «Бизнес-информатика» подготовки бакалавра
Формы контроля знаний студентов
6
Тип контроля
Текущий
(неделя)
Промежуточный
Итоговый
Форма контроля
Контрольная
работа
Домашнее
задание
Экзамен
1 курс
3
4
Параметры
4
7
Письменная работа 60 минут
3
Письменная работа (5-6 задач)
Письменная работа 80 минут
*
Экзамен
*
Письменная работа 80 минут
Критерии оценки знаний, навыков
При выполнении письменных контрольных работ, а также экзаменационной работ, студент должен продемонстрировать умение решать конкретные задачи, знание теоретического
материала и умение правильно применять его к решению задач, соблюдать логику решения.
Оценки по всем формам контроля выставляются по 10-ти балльной шкале.
6.1
Порядок формирования оценок по дисциплине
По дисциплине предусмотрены: 1 контрольная работы (Ок/р1), 2 домашних задания (Од/з1,
Од/з2 ), 1 промежуточный контроль в форме экзамена (Оэкзамен1) и итоговый экзамен (Оэкзамен).
В диплом идет результирующая оценка по дисциплине (Орезульт ), которая рассчитывается по формуле:
6.2
Орезульт = 0.5 Онакопленная Итоговая + 0.5 ·Оэкзамен
Онакопленная Итоговая = 0.5 Опромежуточная + 0.5 Онакопленная
Опромежуточная = 0.3 Од/з1 + 0.7 Оэкзамен - промежуточная оценка после 3-го модуля
Онакопленная = 0.7 Ок/р1 + 0.3 Од/з2 – оценка, накопленная четвертом модуле.
Способ округления оценок итогового, промежуточного и текущего контролей – в пользу
студента.
На пересдаче студенту не предоставляется возможность получить дополнительный балл
для компенсации оценки за текущий контроль.
На экзамене студент может получить дополнительный вопрос (дополнительную практическую задачу, решить к пересдаче домашнее задание), ответ на который оценивается в 1 балл.
7
Содержание дисциплины
1. Формальные языки.
Алфавит, цепочки в алфавите, язык как множество цепочек. Проблема определения бесконечного языка конечными средствами. Способы определения языка: механизм генерации и распознавания. Иерархия Хомского. Автоматы как способ распознавания языка. Формальные грамматики как способ генерации цепочек языка.
Лекционные занятия – 4 ч.
Практические занятия – 2 ч.
2. Конечные автоматы и праволинейные грамматики
Такт и конфигурация конечного автомата. Детерминированные и недетерминированные КА.
Язык, допускаемый КА. Алгоритм построения детерминированного автомата по заданному недетерминированному. Автоматы с ԑ-тактами. Алгоритм построения ԑ-свободного автомата. Регулярные выражения. Теорема Клини об эквивалентности класса регулярных языков и конечно4
НИУ ВШЭ – Нижний Новгород
Программа дисциплины «Теоретические основы информатики» для направления 38.03.05 «Бизнес-информатика» подготовки бакалавра
автоматных языков. Анализ и синтез КА. Лемма о расширении регулярных множеств. Свойства
замкнутости класса регулярных языков. Конечные преобразователи. Праволинейные грамматики. Эквивалентность праволинейных и регулярных языков.
Формы и методы проведения занятий по разделу: чтение лекций, проведение практических занятий. Разбор контрольной работы.
Лекционные занятия – 10 ч.
Практические занятия – 12 ч.
3. Автоматы с магазинной памятью и контекстно-свободные грамматики
Формальное определение и схематическое представление МП-автомата. Операции с магазином. Эквивалентность МП-автоматов и КС-грамматик. Деревья выводов в КС-грамматиках.
Неоднозначность КС-грамматик. Алгоритм удаления бесполезных символов. Нормальные
формы КС-грамматик. Удаление левой (правой) рекурсии. Преобразователи с магазинной памятью.
Формы и методы проведения занятий по разделу: чтение лекций, проведение практических занятий. Разбор домашнего задания 1.
Лекционные занятия – 8 ч.
Практические занятия – 10 ч.
4. LL-грамматики
Нисходящий синтаксический анализ. Проблема построения дерминированного нисходящего
анализатора. LL(k)- грамматики. Простая (разделенная) LL(1) – грамматика. Функции FIRST и
FOLLOW.. Предсказывающий алгоритм разбора для LL(1) – грамматик.
Формы и методы проведения занятий по разделу: чтение лекций, проведение практических занятий.
Лекционные занятия – 10 ч.
Практические занятия – 10 ч.
5. LR-грамматики
Восходящий синтаксический анализ. Алгоритм перенос-свертка. LR(k)-грамматики. Детерминированный восходящий синтаксический анализ. Построение правых анализаторов для LR(k)грамматик.
Формы и методы проведения занятий по разделу: чтение лекций, проведение практических занятий. Разбор домашнего задания 2.
Лекционные занятия – 8 ч.
Практические занятия – 6 ч.
8
Образовательные технологии
При реализации учебной работы используются повторение основных положений лекционного материала и разбор типовых практических задач.
Примеры типовых практических задач:
1. Построить КА, допускающий числа, кратные трем.
2. Построить детерминированный КА для языка 𝐿 = {𝜔 ∈ {𝑎, 𝑏}∗ ||𝜔|𝑎 ⋮ 2, |𝜔|𝑏 ⋮ 3}. Найти
регулярное выражение.
3. 𝑅 = ((𝑎 + 𝑏)∗ 𝑏)∗ + 𝑎𝑏𝑎. По заданному регулярному выражению найти минимальный конечный автомат.
4. Построить детерминированные автоматы для языков 𝐿∗1 , 𝐿∗2 , 𝐿𝑅2 ∪ 𝐿1 , 𝐿𝑅1 ∙ 𝐿2 , 𝐿1 ∩ 𝐿2 , если
𝐿1 = {𝜔 ∈ {𝑎, 𝑏}∗ ||𝜔|𝑎 = 2𝑛 + 1, 𝑛 ≥ 0}, 𝐿2 = {𝜔 ∈ {𝑎, 𝑏}∗ ||𝜔|𝑏 = 2𝑛, 𝑛 ≥ 0}
5
НИУ ВШЭ – Нижний Новгород
Программа дисциплины «Теоретические основы информатики» для направления 38.03.05 «Бизнес-информатика» подготовки бакалавра
5. Построить 𝜀 - свободный автомат для языков 𝐿1 ∙ 𝐿2
6. Построить распознаватели и найти порождающие грамматики для языков 𝐿1 =
{𝜔 ∈ {𝑎, 𝑏}∗ ||𝜔|𝑎 = 2|𝜔|𝑏 }, 𝐿2 = {𝑎𝑛 𝑐𝜔𝑐𝑎𝑚 |𝜔 ∈ {𝑎, 𝑏}+ , |𝜔|𝑎 = 𝑛 + 𝑚 }
7. Найти КС-грамматику без бесполезных символов, эквивалентную грамматике
𝑆 → 𝑆𝑅𝑇|𝑐
𝑅 → 𝑎𝑅𝑎|𝑏
𝑇 → 𝑎𝑇
𝑍 → 𝑊|𝑏
8. Устранить левую рекурсию из грамматики с правилами
𝐴 → 𝐵𝐶|𝑎, 𝐵 → 𝐶𝐴|𝐴𝑏, 𝐶 → 𝐴𝐵|𝐶𝐶|𝑎
9. Задана грамматика с правилами 𝑆 → 𝑎|𝑏𝑆|𝑐𝑆𝑆.
a) Является ли данная грамматика регулярной? Контекстно-свободной? Пояснить почему.
b) Найти левый и правы разборы для цепочки 𝜔 = 𝑏𝑐𝑎𝑎
c) Построить левый и правый анализатор (недетерминированный) анализатор для данной
грамматики. Проиллюстрировать работу анализаторов на примере цепочки 𝜔 = 𝑏𝑐𝑎𝑎.
d) Показать, что данная грамматика является LL(1)-грамматикой. Построить управляющую таблицу для 1-предсказывающего алгоритма разбора. С помощью полученной
таблицы разобрать цепочку 𝜔 = 𝑏𝑐𝑎𝑎.
10. Задана грамматика с правилами 𝑆 → 𝑎|𝑆𝑏|𝑆𝑐.
a) Доказать, что данная грамматика не является LL грамматикой ни при каком значении k.
b) Преобразовать грамматику к LL(1) грамматике
e) Построить управляющую таблицу для 1-предсказывающего алгоритма разбора.
11. Исходя из определения LL(k) грамматики, доказать, что грамматика 𝑆 → 𝜀|𝑎𝑏𝐴, 𝐴 →
𝑆𝑎𝑎|𝑏 является LL(2)грамматикой.
8.1 Методические указания студентам
При подготовке к практическим занятиям и выполнении контрольных заданий студентам
следует использовать литературу из приведенного в данной программе списка, а также
руководствоваться указаниями и рекомендациями преподавателя.
Перед каждым практическим занятием студент изучает план практического занятия с
перечнем тем и вопросов, списком литературы и домашним заданием по вынесенному на практическое занятие материалу. Студенту рекомендуется следующая схема подготовки к практическому занятию:
1. Проработать конспект лекций;
2. Проанализировать основную и дополнительную литературу, рекомендованную по
изучаемому разделу;
3. Изучить решения типовых задач;
4. Решить заданные домашние задания;
5. При затруднениях сформулировать вопросы к преподавателю.
Домашние задания необходимо выполнять к каждому практическому занятию. Сложные
вопросы можно вынести на обсуждение на практическое занятие или на индивидуальные консультации. Контрольные работы состоят из вопросов и задач, аналогичным задачам домашних
заданий и разбираемых в рамках практических занятий.
Для более глубокого освоения дисциплины студентам рекомендуется больше решать задач из базового учебного пособия и задачника с тестами из списка основной литературы.
На практических занятиях приветствуется способность на основе полученных знаний
находить наиболее эффективное решение поставленных проблем.
8.2
Методические указания по самостоятельной работе
6
НИУ ВШЭ – Нижний Новгород
Программа дисциплины «Теоретические основы информатики» для направления 38.03.05 «Бизнес-информатика» подготовки бакалавра
Самостоятельная работа студентов осуществляется в соответствии с «Методическими
рекомендациями по организации самостоятельной работы студентов НИУ ВШЭ – Нижний
Новгород», утвержденными УМС от 30.04.2014, протокол № 4
9
Оценочные средства для текущего контроля и аттестации студента
9.1
Тематика заданий контрольной работы
1. Построение КА по заданному языку.
2. Построение детерминированного автомата по заданному недетерминированному автомату.
3. Построение ԑ-свободного КА
4. Синтез автомата по регулярному выражению
5. Анализ КА
6. Минимизация КА
Тематика заданий домашних работ
Домашнее задание 1:
1. Построение МП-автомата по заданному языку
2. Найти грамматику, порождающую заданный язык
3. Устранить бесполезные символы из заданной КС-грамматики
4. Устранить левую (правую) рекурсию
5. Определить, является ли заданная грамматика однозначной. Если нет, устранить неоднозначность.
6. Приведение грамматики к нормальной форме Хомского
Домашнее задание 2:
1. Построить нисходящий (восходящий) анализатор по заданной КС-грамматике
2. Определить, является ли заданная грамматика LL грамматикой
3. Вычислить функции FIRST и FOLLOW для заданной LL грамматики
4. Построить левый анализатор для заданной LL(1) грамматики.
5. Построить правый анализатор для заданной LR(1) грамматики
9.2
9.3
Вопросы для оценки качества освоения дисциплины
1. Понятие формального языка. Способы определения языка. Иерархия Хомского.
2. Операции над языками.
3. Концепция КА-распознавателя: формальное определение, схематическое представление, такт и конфигурация.
4. Детерминированный КА.
5. Недетерминированный КА, язык допускаемый недетерминированным КА
6. Эквивалентные состояния, недостижимые символы, построение минимального автомата для заданного языка.
7. Регулярные множества и регулярные выражения.
8. Теорема Клини.
9. Свойства замкнутости регулярных языков.
10. Праволинейные грамматики. Эквивалентность праволинейных и регулярных языков.
11. Лемма о разрастании регулярных множеств.
12. Понятие перевода (трансляции)
13. Конечные преобразователи.
14. Автоматы с магазинной памятью. Операции с магазином.
15. КС-грамматики. Деревья вывода. Неоднозначность КС-грамматик.
16. Бесполезные символы в грамматике. Рекурсивные правила.
7
НИУ ВШЭ – Нижний Новгород
Программа дисциплины «Теоретические основы информатики» для направления 38.03.05 «Бизнес-информатика» подготовки бакалавра
17. Нормальные формы КС-грамматик.
18. Свойства замкнутости КС-языков.
19. Преобразователи с магазинной памятью.
20. Синтаксический анализ (разбор). Построение нисходящего (восходящего) анализаторов по заданной грамматике.
21. Проблема построения детерминированных анализаторов. Классы LL и LR грамматик.
22. Определение LL(k)-грамматики.
23. Функции FIRST и FOLLOW
24. Предсказывающий алгоритм разбора для LL(1) – грамматик
25. Разбор для LL(k) – грамматик
26. Проверка LL(k) - условия
27. Восходящий детерминированный разбор с помощью алгоритма перенос-свертка.
28. Определение LR(k)-грамматики.
29. Алгоритм LR(k) – разбора.
30. Проверка LR(k) – условия.
10 Учебно-методическое и информационное обеспечение дисциплины
10.1 Основная литература
1. Гагарина Л.Г. Введение в теорию алгоритмических языков и компиляторов [электронный ресурс]: учеб. пособие / Л.Г. Гагарина, Е.В. Кокорева; ЭБС Знаниум. - М.:
ИД ФОРУМ, 2011. - 176 с.: ил. - (Высшее образование). - ISBN 978-5-8199-0404-6. - Режим
доступа: http://znanium.com/bookread.php?book=265617 . - Загл. с экрана
10.2 Дополнительная литература
1. Мартыненко Б.К. Языки и трансляция. – СПб: Издательство С.- Петербургского университета, 2008
2. Ахо А., Ульман Дж. Теория синтаксического анализа, перевода и компиляции.
Т.1:Синтаксический анализ. – М.: Мир, 1978
3. Манфред Брой. Информатика. - М.: Наука, 1996
4. Льюис Ф., Розенкранц Д., Стирнз Р. Теоретические основы проектирования компиляторов. - М.: Мир, 1979
5. Ахо А., Сети Р, Ульман Дж. Компиляторы: принципы, технологии, инструменты.
М.:Вильямс, 2001
10.3 Электронно-библиотечные ресурсы
1. Гагарина Л.Г. Введение в теорию алгоритмических языков и компиляторов [Электронный ресурс]: учеб. пособие / Л.Г.Гагарина, Е.В.Кокорева. - М.: ИД ФОРУМ,
2011. - 176 с.: ил. - (Высшее образование). - ISBN 978-5-8199-0404-6. Режим доступа:
http://znanium.com/bookread.php?book=265617
10.4 Интернет-ресурсы
2. Волкова И.А., Вылиток А.А., Руденко Т.В. Формальные грамматики и языки. Элементы теории трансляции: учебное пособие. – M: Издательский отдел МГУ, 2009. –
115с. ISBN 078-5-89407-305-8. http://www.moi-otvet.ru/files/tjap/volk.pdf
11 Материально-техническое обеспечение дисциплины
Занятия проходят в аудиториях, оборудованных следующим мультимедийным оборудованием: преподавательским компьютером (или ноутбуком), экраном, проектором. Оборудование обеспечено выходом в локальную сеть и в сеть интернет. Также аудитория оборудована
маркерной доской.
8
НИУ ВШЭ – Нижний Новгород
Программа дисциплины «Теоретические основы информатики» для направления 38.03.05 «Бизнес-информатика» подготовки бакалавра
Лист изменений на 2015-2016 учебный год
№
1
2
3
4
5
Всего
часов
Название раздела
Формальные языки
Конечные автоматы
Автоматы с магазинной памятью
LL-грамматики
LR-грамматики
Итого
Тип контроля
Текущий
(неделя)
Итоговый
Форма контроля
Контрольная
работа
Экзамен
44
44
52
44
44
228
6 з.е.
1 курс
3
Аудиторные часы
ЛекСеминары
ции
6
6
8
6
6
32
Самостоятельная
работа
8
8
10
8
8
42
30
30
34
30
30
154
Параметры
4
7
Письменная работа 60 минут
*
Письменная работа 80 минут
Порядок формирования оценок по дисциплине
По дисциплине предусмотрены 1 контрольная работа (Ок/р) и итоговый экзамен (Оэкзамен).
В диплом идет результирующая оценка по дисциплине (Орезульт ), которая рассчитывается по формуле:
Орезульт = 0.5 Онакопленная + 0.5 ·Оэкзамен
Онакопленная = Ок/р
9
Download