Вычислимость и сложность
Читается: 3-4 модуль 2 курса
Пререквизиты: нет
Трудоемкость: 5 кредитов
80 аудиторных часов:
- 40 часов лекций;
- 40 часов семинаров.
Формы контроля:
- экзамен;
- 1 контрольная работа;
- 2 домашних задания.
Преподаватели
Факультет математики: доцент
О курсе
Цели курса: знакомство с основными вычислительными моделями, используемыми в теории вычислений (машины Тьюринга, равнодоступные адресные машины, схемы из функциональных элементов, вероятностные варианты этих моделей), знакомство с понятиями алгоритма, вычислимой функции, разрешимых и перечислимых множеств. В курсе будут обсуждаться примеры неразрешимых проблем и сведение одних проблем к другим. Слушатели научатся быстро оценивать время и память, требуемые данному алгоритму при его реализации на данной вычислительной модели, различать различные виды трудности задач (трудность для наихудшего входа и трудность для случайно взятого входа).
Цели курса:
- Познакомить с основными вычислительными моделями, используемыми в теории вычислений (многоленточные машины Тьюринга, равнодоступные адресные машины, схемы из функциональных элементов, вероятностные варианты этих моделей).
- Познакомить с понятиями алгоритма, вычислимой функции, разрешимых и перечислимых множеств, нумерации вычислимых функций.
- Привести примеры неразрешимых проблем и научить сводимости одних проблем к другим.
- Научить быстро оценивать время и память, требуемые данному алгоритму при его реализации на данной вычислительной модели.
- Научить различать различные виды трудности задач (трудность для наихудшего входа и трудность для случайно взятого входа).
- Изучить известные методы установления вычислительной трудности задач различного типа (задач вычисления функции, поиска, оптимизации, апроксимации, подсчета, обращения функции): дать представление о том, как устанавливается "эталонных задач", и научить сводить данную задачу к одной из эталонных трудных задач.
Примерное содержание лекций:
- Вычислительные модели: многоленточные машины Тьюринга, равнодоступные адресные машины. Оценка времени и памяти, необходимых для реализации основных арифметических алгоритмов. Тезис Чёрча.
- Понятие вычислимой функции, разрешимого множества.
- Перечислимые множества.
- Перечислимость и разрешимость (теорема Поста, теорема о
- проекции разрешимого множества).
- Теорема о графике вычислимой функции.
- Универсальные вычислимые функции.
- Нумерации вычислимых функций. Главные универсальные функции.
- Построение перечислимого неразрешимого множества.
- Алгоритмически неразрешимые проблемы в теории алгоритмов. Неразрешим ость проблемы тождества в полугруппах.
- Примеры других алгоритмически неразрешимых проблем в алгебре и теории чисел.
- m-Сводимость, m-полные перечислимые множества.
- Машины с оракулом и сводимость по Тьюрингу.
- Существование неполных перечислимых неразрешимых множеств.
- Полиномиальная эквивалентность по времени и памяти вычислительных моделей. Класс P функций, вычислимых за полиномиальное время.
- Сводимость одной задачи к другой. Полные в данном классе задачи. Теорема о иерархии для временной сложности, как метод доказательства вычислительной трудности задач.
- Доказуемо трудные алгоритмические проблемы: проверка эквивалентности расширенных регулярных выражений, выяснение истинности формул языка первого порядка в аддитивной группе действительных числах.
- Класс NP. Задачи поиска и класс SearchP. Сведение задач поиска к задачам разрешения из класса NP. Задачи подсчета и класс #P.
- NP-трудные и NP-полные задачи. Проблема перебора (P=NP?) и предположительная трудность NP-трудных задач.
- Схемы их функциональных элементов. Теорема Кука-Левина об NP-полноте проблемы выполнимости схем из функциональных элементов.
- NP-полнота других задач: 3-КНФ, 3-РАСКРАСКА, КЛИКА, ВЕРШИННОЕ ПОКРЫТИЕ, ГАМИЛЬТОНОВ ЦИКЛ, РЮКЗАК, КОММИВОЯЖЕР, ЦЕЛОЧИСЛЕННОЕ ЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ.
- Задачи оптимизации и их сводимость к задачам из NP. Приближенное решение оптимизационных задач. Трудность задачи апроксимации хроматического числа данного графа.
Рекомендуемая литература:
- Н. Верещагин и А. Шень. Вычислимые функции. МНЦМО, 1999.
- M. Гэри, Д. Джонсон. Вычислительные машины и труднорешаемые задачи. М.: Мир, 1982.
- A. Китаев, А. Шень, М. Вялый. Классические и квантовые вычисления. М.: МЦНМО, ЧеРо, 1999.
- Т. Кормен, Ч. Лейзерсон, Р. Ривест. Алгоримты: построение и анализ. М.: МЦНМО, 2001.