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

Материал из Кафедра математической кибернетики
Перейти к: навигация, поиск
м (Автоматы-преобразователи, ω-автоматы и логика S1S)
Строка 18: Строка 18:
 
===Программа и основные материалы===
 
===Программа и основные материалы===
  
Программу курса см. ниже
+
[[Media:MV_exam_info.pdf|'''Программа курса и порядок проведения экзамена''']]
  
 
Презентации к лекциям см. ниже
 
Презентации к лекциям см. ниже
Строка 46: Строка 46:
 
==2025-2026 учебный год==
 
==2025-2026 учебный год==
  
Занятия проходят очно.
+
Занятия проходят очно. Планируется устный экзамен.
 
+
Планируется устный экзамен.
+
 
+
== Программа курса == 
+
 
+
=== Конечные автоматы и регулярные выражения ===
+
<ol>
+
<li> Недетерминированные конечные автоматы. Вычисления автоматов. Автоматные языки.
+
<li> Проблема принадлежности и проблема пустоты для конченых автоматов. Полный и приведённый автомат. Устранение &epsilon;-переходов.
+
<li> Детерминированные конечные автоматы. Алгоритм проверки эквивалентности детерминированных конечных автоматов.
+
<li> Теорема о соответствии состояний эквивалентных детерминированных автоматов. Эквивалентные состояния автоматов и их свойства.
+
<li> Минимальные детерминированные конечные автоматы. Алгоритм минимизации детерминированных конечных автоматов и обоснование его корректности.
+
<li> Алгоритм преобразования конечного автомата к детерминированному виду.
+
<li> Теорема о разрастании для автоматных языков. Примеры неавтоматных языков.
+
<li> Замкнутость класса автоматных языков относительно теоретико-множественных операций. Регулярные выражения. Алгебра регулярных выражений. Уравнения в регулярных выражениях.
+
<li> Теорема Клини о соответствии между регулярными выражениями и конечными автоматами.
+
<li> Задача проверки соответствия текста шаблону и теоретико-автоматный подход к ее решению. Задача поиска подстроки в строке. Алгоритм Ахо-Корасик.
+
</ol>
+
 
+
=== Машины Тьюринга и рекурсивно перечислимые языки ===
+
<ol start="11">
+
<li> Одноленточные машины Тьюринга. Вычисления машин Тьюринга. Рекурсивные и рекурсивно перечислимые языки. Многоленточные машины Тьюринга.
+
<li> Теорема Поста. Теорема о выражении рекурсивно перечислимых языков с помощью квантора существования. Замкнутость классов рекурсивных и рекурсивно перечислимых языков относительно теоретико-множественных операций.
+
<li> Арифметические функции, вычислимые по Тьюрингу. Характеристические теоремы для рекурсивных и рекурсивно перечислимых языков. Теорема о перечислении рекурсивно перечислимого языка вычислимой функцией.
+
<li> Универсальная машина Тьюринга.
+
<li> Проблема самоприменимости, её положение относительно классов рекурсивных и рекурсивно перечислимых языков. Сводимость алгоритмических проблем. Проблемы остановки, тотальности и эквивалентности машин Тьюринга.
+
<li> Функциональные (семантические) свойства машин Тьюринга. Теорема Райса.
+
<li> Многоголовочные конечные автоматы. Алгоритмическая неразрешимость проблемы пустоты языка двухголовочного конечного автомата.
+
<li> Ассоциативные исчисления. Алгоритмическая неразрешимость проблемы выводимости для полусистем Туэ.
+
<li> Проблема соответствий Поста. Инициальная проблема соответствий Поста и её связь с обычной проблемой соответствий Поста.
+
<li> Алгоритмическая неразрешимость проблемы соответствий Поста.
+
</ol>
+
 
+
=== Формальные грамматики и магазинные автоматы ===
+
<ol start="21">
+
<li> Порождающие грамматики и порождаемые ими языки. Классификация порождающих грамматик. Иерархия Хомского формальных языков.
+
<li> Регулярные грамматики и автоматные языки. Неограниченные грамматики и рекурсивно перечислимые языки.
+
<li> Контекстно-свободные грамматики. Устранение стартового нетерминала в левых частях, &epsilon;-правил и переименований. Нормальная форма Хомского контекстно-свободных грамматик.
+
<li> Проблема синтаксического анализа и проблема пустоты для контекстно-свободных грамматик.
+
<li> Теорема о разрастании для контекстно-свободных языков. Примеры языков, не являющихся контекстно-свободными.
+
<li> Магазинные автоматы. Распознавание контекстно-свободных языков магазинными автоматами.
+
<li> Упрощение магазинных автоматов. Моделирование магазинных автоматов контекстно-свободными грамматиками.
+
<li> Теоремы о замкнутости и незамкнутости класса контекстно-свободных языков относительно операций над формальными языками. Проблемы непустоты пересечения, тотальности и эквивалентности для контекстно-свободных грамматик.
+
<li> Задача синтаксического анализа. Алгоритм Кока-Касами-Янгера проверки принадлежности слова контекстно-свободному языку. Детерминированные магазинные автоматы. Пример не детерминированного контекстно-свободного языка.
+
<li> LL(k)-грамматики. Синтаксический анализ LL(k)-грамматик. Проверка свойства LL(1) для контекстно-свободной грамматики.
+
</ol>
+
 
+
=== Автоматы-преобразователи, &omega;-автоматы и логика S1S ===
+
<ol start="31">
+
<li> Конечные автоматы-преобразователи и рациональные отношения. Простейшие свойства рациональных отношений. Теорема о разрастании.
+
<li> Свойства замкнутости класса рациональных отношений. Регулярные выражения над рациональными отношениями. Связь рациональности и регулярности.
+
<li> Проблемы пустоты, тотальности и эквивалентности автоматов-преобразователей. Детерминированные автоматы-преобразователи.
+
<li> Алгоритм проверки эквивалентности детерминированных автоматов-преобразователей.
+
<li> Автоматы Бюхи и их вычисления. &omega;-автоматные языки. Детерминированные автоматы Бюхи.
+
<li> Операции над &omega;-автоматными языками. &omega;-регулярные языки.
+
<li> Алгоритм проверки пустоты для &omega;-автоматов. Автоматы Рабина и Маллера, их связь с автоматами Бюхи.
+
<li> Монадическая логика 2-го порядка S1S. Примеры выражения отношений чисел и множеств.
+
<li> Моделирование автоматов Бюхи формулами логики S1S.
+
<li> Распознавание языков логики S1S автоматами Бюхи.
+
 
+
</ol>
+
  
 
== Презентации к лекциям (В.А. Захаров) ==
 
== Презентации к лекциям (В.А. Захаров) ==

Версия 22:39, 18 апреля 2026

Курс для студентов бакалавриата кафедры МК, читается в весеннем семестре:

  • 4-й курс — 3 часа лекций и 1 час семинаров в неделю (всего 16 пар), отчетность — экзамен.

Лектор: Савицкий Игорь Владимирович.

Аннотация

Курс посвящён изучению ряда вычислительных моделей (как классических, так и более специальных), используемых в теории алгоритмов. Исследуются распознаваемые данными моделями языки и анализируется сложность задач анализа этих моделей.

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

Материалы по курсу

Программа и основные материалы

Программа курса и порядок проведения экзамена

Презентации к лекциям см. ниже

Литература

  1. Захаров В.А. Презентации к лекциям (см. ниже)
  2. Ахо А., Ульман Дж. Теория синтаксического анализа, перевода и компиляции. Т. 1: Синтаксический анализ. М.: Мир, 1978. 612 с.

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

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

Записи лекций

Видеозаписи лекций и семинаров 2025 года (И.В. Савицкий).

Видеозаписи и презентации лекций 2022 года (В.А. Захаров).

2025-2026 учебный год

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

Презентации к лекциям (В.А. Захаров)

Лекция 1. Формальные языки. Операции над языками.Разнообразие моделей вычислений. Конечные автоматы Рабина-Скотта. Автоматные языки. Упрощение конечных автоматов. Детерминированные конечные автоматы. Минимизация детерминированных конечных автоматов.

Лекция 2. Алгоритм преобразования конечного автомата к детерминированному виду. Замкнутость класса автоматных языков относительно операций над языками. Теорема о разрастании для автоматных языков. Примеры неавтоматных языков.

Лекция 3. Регулярные выражения. Алгебра регулярных выражений. Уравнения в регулярных выражениях. Теорема Клини о соответствии между регулярными выражениями и конечными автоматами. Задача проверки соответствия текста шаблону и теоретико-автоматный подход к ее решению. Задача поиска подстроки в строке. Алгоритм Ахо-Карасик. Двусторонние конечные автоматы. Теорема о соответствии между односторонними и двусторонними конечными автоматами.

Лекция 4. Одноленточные машины Тьюринга. Вычисления машин Тьюринга. Рекурсивные и рекурсивно-перечислимые языки. Моделирование односторонних и многоленточных машин Тьюринга одноленточными машинами Тьюринга. Арифметические функции, вычислимые по Тьюрингу. Характеристические теоремы для рекурсивных и рекурсивно-перечислимых языки. Массовые алгоритмические проблемы и их связь с рекурсивными языками. Замкнутость классов рекурсивных и рекурсивно перечислимых языков относительно теоретико-множественных операций.

Лекция 5. Универсальные машины Тьюринга. Неразрешимость проблемы останова для машин Тьюринга. Сводимость алгоритмических проблем. Примеры алгоритмически неразрешимых проблем программирования. Функциональные (семантические) свойства программ. Теорема Райса.

Лекция 6. Проблема соответствий Поста. Алгоритмическая неразрешимость проблемы соответствий Поста. Многоголовочные конечные автоматы. Алгоритмическая неразрешимость проблемы останова для многоголовочных конечных автоматов. Ассоциативные исчисления. Алгоритмическая неразрешимость проблемы достижимости для полусистем Туэ. Примеры алгоритмически неразрешимых проблем математики: проблема разрешимости диофантовых уравнений, проблема мозаики. Машины Минского. Универсальность модели вычислений машин Минского.

Лекция 7. Формальные грамматики. Классификация формальных грамматик. Иерархия Хомского формальных языков. Неограниченные грамматики и рекурсивно перечислимые языки. Праволинейные грамматики. Совпадение класса автоматных языков и класса праволинейных языков. Контекстно-свободные грамматики. Устранение недостижимых и ε-правил. Нормальная форма Хомского контекстно-свободных грамматик. Приведение контекстно-свободных грамматик к нормальной форме Хомского.

Лекция 8. Деревья синтаксического разбора. Теорема о разрастании для контекстно-свободных языков. Примеры языков, не являющихся контекстно-свободными. Автоматы с магазинной памятью и их свойства. Взаимосвязь контекстно-свободных языков и автоматов с магазинной памятью. Детерминированные магазинные автоматы.

Лекция 9. Свойства замкнутости контекстно-свободных языков. Алгоритмические проблемы для КС-языков. Неразрешимость проблемы эквивалентности для контекстно-свободных грамматик. Алгоритм Кока-Касами-Янгера синтаксического анализа контекстно-свободных языков. Детерминированные КС-языки и синтаксические анализаторы. LL(k)-грамматики. Контекстно-зависимые грамматики.

Лекция 10. Конечные автоматы-преобразователи. Рациональные отношения и их свойства. Описание рациональных отношений регулярными выражениями. Свойства замкнутости класса рациональных отношений. Неразрешимость проблемы эквивалентности для недетерминированных автоматов-преобразователей. Разрешимость проблемы эквивалентности для детерминированных автоматов-преобразователей.

Лекция 11. Реагирующие системы вычислений. Автоматы Бюхи. ω-регулярные языки. Свойства замкнутости класса ω-регулярных языков. Алгоритмические проблемы для автоматов Бюхи. Другие виды ω-автоматов: автоматы Рабина, автоматы Маллера. Взаимосвязь детерминированных и недетерминированных ω-автоматов. Применение ω-автоматов для верификации реагирующих систем.

Лекция 12. Логический способ описания языков. Монадическая предикатов логика второго порядка S1S. Взаимосвязь логики S1S и ω-автоматов. Другие логики предикатов второго порядка.

Задачи к семинарам (В.А. Захаров)

Семинар 1 (после лекции 3). Построение конечных автоматов для заданных языков. Преобразование недетерминированных автоматов к детерминированным. Минимизация детерминированных автоматов. Распознавание автоматности языков, полученных при помощи теоретико-множественных и алгебраических операций над автоматными языками. Доказательство неавтоматности языков. Построение регулярных выражений для автоматных языков. Построение автоматов, соответствующих регулярным выражениям.

Семинар 2 (после лекции 6). Доказательство нерекурсивности и рекурсивной перечислимости языков. Использование метода сводимости для доказательства алгоритмической неразрешимости массовых проблем.

Семинар 3 (после лекции 9). Построение контекстно-свободных грамматик и магазинных автоматов. Приведение контекстно-свободных грамматик к нормальной форме Хомского. Применение алгоритма Кока-Касами-Янгера для проверки принадлежности заданного слова заданному контекстно-свободному языку. Применение теорем о разрастании для классификации языков.

Семинар 4 (после лекции 12). Построение конечных автоматов-преобразователей, распознающих заданные рациональные отношения. Построение автоматов Бюхи и формул логики S1S, задающих регулярные omega-языки.