Модели вычислений — различия между версиями

Материал из Кафедра математической кибернетики
Перейти к: навигация, поиск
(Конечные автоматы и регулярные выражения)
(Вычислимые функции и рекурсивные множества)
Строка 18: Строка 18:
 
</ol>
 
</ol>
  
=== Вычислимые функции и рекурсивные множества ===
+
=== Машины Тьюринга и рекурсивно перечислимые языки ===
<ol start="8">
+
<ol start="10">
<li> Машины Тьюринга: основные понятия. Арифметические функции, вычислимые по Тьюрингу.
+
<li> Одноленточные машины Тьюринга. Вычисления машин Тьюринга. Рекурсивные и рекурсивно-перечислимые языки.
<li> Моделирование многоленточных машин Тьюринга одноленточными машинами Тьюринга.
+
<li> Моделирование односторонних и многоленточных машин Тьюринга одноленточными машинами Тьюринга.  
<li> Универсальная машина Тьюринга. Теорема Клини о совпадение класса арифметических функций, вычислимых по Тьюрингу, и частично-рекурсивных функций.
+
<li> Арифметические функции, вычислимые по Тьюрингу. Характеристические теоремы для рекурсивных и рекурсивно-перечислимых языки.
<li> Существование частично-рекурсивной функции, не имеющей рекурсивных доопределений. Неразрешимость проблем самоприменимости и останова для машин Тьюринга.
+
<li> Массовые алгоритмические проблемы и их связь с рекурсивными языками
<li> Сводимость алгоритмических задач. Примеры алгоритмически неразрешимых задач анализа поведения программ.
+
<li> Универсальные машины Тьюринга. Неразрешимость проблемы останова для машин Тьюринга.  
<li> Теорема Райса и примеры ее применения.
+
<li> Сводимость алгоритмических проблем. Примеры алгоритмически неразрешимых проблем программирования.  
<li> Рекурсивные множества. Замкнутость класса рекурсивных множеств относительно операций объединения, пересечения и дополнения.
+
<li> Функциональные (семантические) свойства программ. Теорема Райса.
<li> Рекурсивно-перечислимые множества. Замкнутость класса рекурсивных множеств относительно операций объединения, пересечения. Незамкнутость класса рекурсивно-перечислимых множеств относительно дополнения.
+
<li> Замкнутость классов рекурсивных и рекурсивно перечислимых языков относительно теоретико-множественных операций.  
<li> Теоремы о характеристических свойствах рекурсивно-перечислимых множеств относительно рекурсивных функций.
+
<li> Проблема соответствий Поста. Алгоритмическая неразрешимость проблемы соответствий Поста.
 +
<li> Многоголовочные конечные автоматы. Алгоритмическая неразрешимость проблемы останова для многоголовочных конечных автоматов.  
 +
<li> Ассоциативные исчисления. Алгоритмическая неразрешимость проблемы достижимости для полусистем Туэ.
 +
<li> Примеры алгоритмически неразрешимых проблем математики: проблема разрешимости диофантовых уравнений, проблема мозаики.  Машины Минского. Универсальность модели вычислений машин Минского.
 
</ol>
 
</ol>
  

Версия 13:49, 21 февраля 2015

Лектор - профессор Захаров Владимир Анатольевич.

Программа курса

Конечные автоматы и регулярные выражения

  1. Формальные языки. Операции над языками. Проблемы принадлежности слова языку, пустоты, тотальности, равенства, включения.
  2. Недетерминированные конечные автоматы. Вычисления автоматов. Автоматные языки.
  3. Детерминированные конечные автоматы. Эквивалентные состояния и эквивалентные автоматы. Алгоритм проверки эквивалентности детерминированных конечных автоматов.
  4. Минимальные детерминированные конечные автоматы. Теорема о существовании и единственности минимального детерминированного конечного автомата. Алгоритм минимизации детерминированных конечных автоматов.
  5. Алгоритм преобразования конечного автомата к детерминированному виду. Замкнутость класса автоматных языков относительно операций над языками.
  6. Теорема о разрастании для автоматных языков. Примеры неавтоматных языков.
  7. Регулярные выражения. Алгебра регулярных выражений. Уравнения в регулярных выражениях. Теорема Клини о соответствии между регулярными выражениями и конечными автоматами.
  8. Задача проверки соответствия текста шаблону и теоретико-автоматный подход к ее решению. Задача поиска подстроки в строке. Алгоритм Ахо-Карасик.
  9. Двусторонние конечные автоматы. Теорема о соответствии между односторонними и двусторонними конечными автоматами.

Машины Тьюринга и рекурсивно перечислимые языки

  1. Одноленточные машины Тьюринга. Вычисления машин Тьюринга. Рекурсивные и рекурсивно-перечислимые языки.
  2. Моделирование односторонних и многоленточных машин Тьюринга одноленточными машинами Тьюринга.
  3. Арифметические функции, вычислимые по Тьюрингу. Характеристические теоремы для рекурсивных и рекурсивно-перечислимых языки.
  4. Массовые алгоритмические проблемы и их связь с рекурсивными языками
  5. Универсальные машины Тьюринга. Неразрешимость проблемы останова для машин Тьюринга.
  6. Сводимость алгоритмических проблем. Примеры алгоритмически неразрешимых проблем программирования.
  7. Функциональные (семантические) свойства программ. Теорема Райса.
  8. Замкнутость классов рекурсивных и рекурсивно перечислимых языков относительно теоретико-множественных операций.
  9. Проблема соответствий Поста. Алгоритмическая неразрешимость проблемы соответствий Поста.
  10. Многоголовочные конечные автоматы. Алгоритмическая неразрешимость проблемы останова для многоголовочных конечных автоматов.
  11. Ассоциативные исчисления. Алгоритмическая неразрешимость проблемы достижимости для полусистем Туэ.
  12. Примеры алгоритмически неразрешимых проблем математики: проблема разрешимости диофантовых уравнений, проблема мозаики. Машины Минского. Универсальность модели вычислений машин Минского.

Формальные грамматики и языки

  1. Формальные грамматики: основные понятия. Классификация Хомского формальных грамматик (иерархия Хомского).
  2. Праволинейные грамматики и языки. Совпадением класса праволинейных языков и класса автоматных языков. Разрешимость проблем принадлежности и эквивалентности для класса праволинейных языков.
  3. Теорема о разрастании (лемма о накачке) для автоматных языков. Примеры языков, не являющихся автоматными.
  4. Контекстно-свободные грамматики и языки. Примеры контекстно-свободных языков. Замкнутость класса контекстно-свободных языков относительно операции объединения. Разрешимость проблемы принадлежности для контекстно-свободных языков.
  5. Нормальная форма Хомского для контекстно-свободных грамматик. Приведение контекстно-свободных грамматик к нормальной форме Хомского.
  6. Теорема о разрастании (лемма о накачке) для контекстно-свободных языков. Примеры языков, не являющихся контекстно-свободными.
  7. Автоматы с магазинной памятью. Теорема о совпадении класса контекстно-свободных языков и класса языков, распознаваемых автоматами с магазинной памятью.
  8. Алгоритм Кока-Янгера-Касами синтаксического анализа контекстно-свободных языков.
  9. Незамкнутость класса контекстно-свободных языков относительно операций пересечения и дополнения.
  10. Контекстно-зависимые грамматики и языки. Примеры контекстно-зависимых языков. Разрешимость проблемы принадлежности для контекстно-зависимых языков.
  11. Грамматики типа 0 и рекурсивно-перечислимые языки.

Алгоритмически неразрешимые математические задачи

  1. Проблема соответствий Поста. Теорема об алгоритмической неразрешимости проблемы соответствий Поста.
  2. Алгоритмическая неразрешимость проблемы непустоты пересечения, проблемы тотальности и проблемы эквивалентности для контекстно-свободных грамматик.
  3. Примеры алгоритмически неразрешимых проблем арифметики, алгебры, комбинаторики.

Литература

  1. Ахо А., Ульман Дж. Теория синтаксического анализа, перевода и компиляции. Т. 1: Синтаксический анализ. - М.: Мир, 1978. - 612 с.
  2. Ахо А., Сети Р., Ульман Дж. Компиляторы: принципы, технологии и инструменты. - М.: Вильямс, 2001. - 768 с.
  3. Верещагин Н.К., Шень А. Лекции по математической логике и теории алгоритмов. Часть 3. Вычислимые функции. - М.: МЦНМО, 1999. - 176 с.
  4. Катленд Н. Вычислимость. Введение в теорию рекурсивных функций. - М.: Мир, 1983.
  5. Льюис Ф., Розенкранц Д, Стирнз Р. Теоретические основы проектирования компиляторов. - М.: Мир, 1979.. - 656 с.
  6. Матрос Д.Ш., Поднебесова Г.Б. Теория алгоритмов. - М.: Бином, 2008. - 200 с.
  7. Пентус А.Е., Пентус М.Р. Математическая теория формальных языков. Серия "Основы информатики и математики" - М: Бином, 2006. - 247 с.
  8. Роджерс Х. Теория рекурсивных функций и эффективная вычислимость. - М.: Мир, 1972.
  9. Хопкрофт Дж., Мотвани Р., Ульман Дж. Введение в теорию автоматов, языков и вычислений. - М.: Вильямс, 2002. - 528 с.

Правила проведения экзамена

Экзамен проводится в форме письменной контрольной работы. Время, отведенное на решение задач, составляет 120 мин. Письменная контрольная работа состоит из 10 заданий.

Задания 1-4 - это задачи требующие применения стандартных алгоритмов и методов решения. Правильное решение каждой такой задачи оценивается 2 баллами.

В заданиях 5-8 требуется сформулировать определения основных понятий, введенных в лекционном курсе. Правильное решение каждой такой задачи оценивается 1 баллом.

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

В задании 10 требуется решить теоретическую задачу, опираясь на сведения, представленные в лекционном курсе. Правильное решение каждой такой задачи оценивается 3 баллами.

Оценка контрольной работы проводится по следующим критериям:

14-17 баллов - отлично,

10-15 баллов - отлично,

7-9 баллов - удовлетворительно.