Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MLTA_shpory2.doc
Скачиваний:
101
Добавлен:
23.12.2018
Размер:
2.34 Mб
Скачать

75. Разрешимые и перечислимые множества. Связь между разрешимостью и перечислимостью множеств. Теорема Райса.

Множество М называется разрешимым (или рекурсивным), если существует алгоритм АМ, который по любому объекту а дает ответ, принадлежит а множеству М или нет. Алгоритм АМ называется разрешающим алгоритмом для М.

Эквивалентное, но несколько более точное определение: множество М называется разрешимым, если оно обладает общерекурсивной характеристической функцией, т. е. вычислимой всюду определенной функцией cм, такой, что

Множество М называется перечислимым (или рекурсивно-перечислимым), если оно является областью значений некоторой общерекурсивной функции, т. е. существует общерекурсивная функция yм(х), такая, что a ΠM, если и только если для некоторого х а = yм(х). Функция yм называется перечисляющей для множества М; соответственно алгоритм, вычисляющий yм, называется перечисляющим или порождающим для М.

Эффективно заданное множество — это множество, обладающее разрешающей или перечисляющей функцией. Вопрос, равносильны ли эти два типа задания?

Теорема 14. Если непустое множество М разрешимо, то оно перечислимо.

Теорема 15. Существует множество М, которое перечислимо, но неразрешимо.

Согласно теореме 15 перечислимость — более слабый вид эффективности; хотя перечисляющая процедура и задает эффективно список элементов множества М, однако поиск данного элемента а в этом списке (всегда бесконечном, но, может быть, с повторяющимися элементами) может оказаться неэффективным: это неопределенно долгий процесс, который в конечном счете остановится, если а Î М, но не остановится, если а Ï М. Поэтому список элементов М, заданный перечисляющей функцией, сам по себе не гарантирует разрешающей процедуры для М.

Теорема 16. М разрешимо, если и только М и -М перечислимы.

Теорема 17 (теорема Райса). Никакое нетривиальное свойство вычислимых функций не является алгоритмически разрешимым.

Пусть С — любой класс вычислимых функций одной переменной, нетривиальный в том смысле, что имеются как функции, принадлежащие С, так и функции, не принадлежащие С. Тогда не существует алгоритма, который бы по номеру х функции fx определял бы, принадлежит fx классу С или нет; иначе говоря, множество {x|fx Î C} неразрешимо.

63. Сложность алгоритмов. Меры сложности алгоритмов. Сложность задачи. Массовые и индивидуальные задачи.

81.Полиномиальный алгоритм. Легко- и трудноразрешимые задачи, классы задач p и np.

В теории алгоритмов классом P (от англ. polynomial) называют множество алгоритмов, время работы которых не слишком сильно зависит от размера входных данных (не превосходит многочлена от размера данных). Алгоритмы, принадлежащие классу P, считаются быстрыми. Иногда под классом P имеют в виду более узкий класс функций, а именно класс предикатов (функций ). В таком случае языком L, который распознаёт данный предикат, называется множество слов, на которых предикат равен 1. Языками класса P называются языки, для которых существуют распознающие их предикаты класса P. Очевидно, что если языки L1 и L2 лежат в классе P, то и их объединение, пересечение и дополнения также лежат в классе P. Алгоритм отождествляется с детерминированной машиной Тьюринга, которая вычисляет ответ по данному на входную ленту слову из входного алфавита Σ. Временем работы алгоритма TM(x) при фиксированном входном слове x называется количество рабочих тактов машины Тьюринга от начала до остановки машины. Сложностью функции , вычисляемой некоторой машиной Тьюринга, называется функция , зависящая от длины входного слова и равная максимуму времени работы машины по всем входным словам фиксированной длины: Если для функции f существует машина Тьюринга M такая, что CM(n) < nc для некоторого числа c и достаточно больших n, то говорят, что она принадлежит классу P, или полиномиальна по времени.

В теории алгоритмов классом NP (от англ. non-deterministic polynomial) называют множество алгоритмов, время работы которых сильно зависит от размера входных данных, но если предоставить алгоритму некоторые дополнительные сведения (так называемых свидетелей решения), то он сможет достаточно быстро (за время, не превосходящее многочлена от размера данных) решить задачу. Проблема в том, что найти таких свидетелей бывает сложно, поэтому многие алгоритмы из класса NP считаются долгими.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]