- •1. Словарные функции.
- •Словарные функции.
- •2. Вычислимые функции. Мт.
- •3. Словарное предствление мт.
- •4. Массовые алгоритмические проблемы. Разрешимые и перечислимые множества.
- •5. Теорема Поста.
- •6. Проблема остановки. Теорема Тьюринга.
- •7. Проблема пустой ленты. Проблема зацикливания.
- •Проблема зацикливания.
- •8. Понятие массовой и индивидуальной задачи.
- •9. Понятие полиномиального алгоритма и труднорешаемой задачи
- •10. Понятие схемы кодирования.
- •11. Задачи распознавания. Переход от оптимизационной задачи к задаче распознавания
- •Задачи разновидности языка и кодирование.
- •Примеры. Массовая задача и изоморфизм подграфу.
- •12. Язык. Связь между задачами распознавания и языками. Задачи разновидности языка и кодирование.
- •Примеры. Массовая задача и изоморфизм подграфу.
- •13. Детерминированные мт и класс p.
- •14. Недетерминированное вычисление и класс np.
- •15. Взаимоотношения между класами p и np.
- •16. Полиномиальная сводимость.
- •18. Теорема Кука. 6 основных np-полных задач.
- •Доказательство результатов об np-полноте.
- •Шесть основных np-полных задач.
- •19. Методы док-ва np-полноты. Метод сужения. Некоторые методы доказательства np-полноты.
- •Сужение задачи.
- •20. Методы доказательства np-полноты. Метод локальной замены Некоторые методы доказательства np-полноты.
- •Локальная замена.
- •21. Методы доказательства np-полноты. Метод построения компонент. Некоторые методы доказательства np-полноты.
- •Метод построения компонент.
- •22. Анализ подзадач np-полной задачи. Применение теории np-полноты для анализа задач.
- •Анализ подзадач.
- •23. Сильная np-полнота.
- •24. Псевдополиномиальные алгоритмы.
- •25. Именная форма. Высказывания. Операции над высказываниями.
- •26. Основные логические законы. Логические тождества.
- •27. Правила обращения с кванторами.
- •28. Техника доказательств.
- •29. Операции над множествами и одноместными предикатами.
- •30. Булевы функции.
Задачи разновидности языка и кодирование.
Из соображения удобства теория NP – полных задач строится только для задач распознавания свойств. Такие задачи имеют только два возможных решения: “да” и “нет”. Формально, задачи распознавания П состоят из двух множеств: 1) множество DП всех возможных индивидуальных задач; 2) Множество индивидуальных задач с ответом “да”. Стандартная форма, которую мы будем применять для описания задач, состоит из двух частей: в первой части даётся описание условия задачи в терминах различных компонентов, во второй части формулируется вопрос-предположение, предполагающий один из двух ответов “да” или “нет”. Это описание определяет множество DП и YП. Индивидуальная задача принадлежит множеству DП в том случае, когда она может быть получена из стандартной формы описания подстановкой конкретных значений во все компоненты условий индивидуальных задач, множеству YП в том случае, когда ответом на вопрос задачи будет “да”.
Примеры. Массовая задача и изоморфизм подграфу.
ПРИМЕР 1. Условие:
Даны 2 графа G1 = (V1,E1) и G2 = (V2,E2).
Верно ли, что G1 содержит подграф, изоморфный G2? Другими словами, существует ли:
1) Подмножества , такие, что , .
2) Взаимнооднозначная функция f, отображающая , такая, что ребро существует тогда и только тогда, когда существует ребро .
ПРИМЕР 2. Условие:
Заданы конечное множество городов C={C1, C2, … , Cn}, расстояния d(Ci, Cj) и граница B, являющаяся натуральным числом.
Существует ли замкнутый маршрут, проходящий через все города из C, длина которого не превосходит B, т.е. существует ли последовательность <Cπ(1), Cπ(2),…, Cπ(n)> такая, что ?
Подобным образом строится соответствие между любой оптимизационной задачей и задачей распознавания свойств. Здесь важно отметить, что поскольку значение функции легко оценить, то задача распознавания не будет сложнее, чем оптимизационные задачи. Если задача распознавания может быть решена за полиномиальное время, то, решая её некоторое количество раз (ограниченное полиномом от размерности задачи) при различных значениях параметра B, мы сможем решить и оптимизационную задачу.
12. Язык. Связь между задачами распознавания и языками. Задачи разновидности языка и кодирование.
Из соображения удобства теория NP – полных задач строится только для задач распознавания свойств. Такие задачи имеют только два возможных решения: “да” и “нет”. Формально, задачи распознавания П состоят из двух множеств: 1) множество DП всех возможных индивидуальных задач; 2) Множество индивидуальных задач с ответом “да”. Стандартная форма, которую мы будем применять для описания задач, состоит из двух частей: в первой части даётся описание условия задачи в терминах различных компонентов, во второй части формулируется вопрос-предположение, предполагающий один из двух ответов “да” или “нет”. Это описание определяет множество DП и YП. Индивидуальная задача принадлежит множеству DП в том случае, когда она может быть получена из стандартной формы описания подстановкой конкретных значений во все компоненты условий индивидуальных задач, множеству YП в том случае, когда ответом на вопрос задачи будет “да”.