stringtranslate.com

Сокращение Тьюринга

В теории вычислимости редукция Тьюринга от проблемы принятия решения к проблеме решения представляет собой машину-оракул , которая решает задачу , заданную оракулом (Rogers 1967, Soare 1987). Его можно понимать как алгоритм , который можно было бы использовать для решения, если бы ему была доступна подпрограмма для решения . Эту концепцию можно аналогичным образом применить к функциональным задачам .

Если сокращение Тьюринга от до существует, то каждый алгоритм для [a] можно использовать для создания алгоритма для , вставляя алгоритм для в каждое место, где вычислительная машина оракула запрашивает у оракула . Однако, поскольку машина-оракул может запрашивать оракул большое количество раз, результирующий алгоритм может асимптотически потребовать больше времени, чем алгоритм для вычислений на машине-оракуле . Сокращение Тьюринга, при котором машина оракула работает за полиномиальное время, известно как сокращение Кука .

Первое формальное определение относительной вычислимости, названное тогда относительной сводимостью, было дано Аланом Тьюрингом в 1939 году в терминах машин-оракулов . Позже, в 1943 и 1952 годах, Стивен Клини определил эквивалентную концепцию в терминах рекурсивных функций . В 1944 году Эмиль Пост использовал для обозначения этой концепции термин «сводимость по Тьюрингу».

Определение

Учитывая два набора натуральных чисел, мы говорим, что Тьюринг сводится к, и пишем

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

Если существует машина-оракул, которая при запуске с оракулом B вычисляет частичную функцию с областью определения A , то A называется B - рекурсивно перечислимой и B -вычислимо перечислимой .

Мы говорим « эквивалентно по Тьюрингу» и пишем «если оба» и Классы эквивалентности множеств, эквивалентных по Тьюрингу, называются степенями Тьюринга . Записана Тьюринговая степень множества .

Учитывая набор , набор называется жестким по Тьюрингу , если для всех . Если дополнительно , то называется полным по Тьюрингу для .

Связь полноты по Тьюрингу с универсальностью вычислений

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

Пример

Пусть обозначает набор входных значений, при которых машина Тьюринга с индексом e останавливается. Тогда множества и тьюринг-эквивалентны (здесь обозначена эффективная спаривающая функция). Показатели редукции можно построить, используя тот факт, что . Учитывая пару , новый индекс может быть построен с использованием теоремы s mn , так что программа, написанная с помощью игнорирует ее ввод и просто моделирует вычисление машины с индексом e на входе n . В частности, машина с индексом либо останавливается при каждом вводе, либо не останавливается ни при каком вводе. Это справедливо для всех e и n . Поскольку функция i вычислима, это показывает . Представленные здесь сокращения — это не только сокращения Тьюринга, но и сокращения «многие единицы» , обсуждаемые ниже.

Характеристики

Использование сокращения

Поскольку каждое сокращение набора к набору должно определять, находится ли один элемент в наборе, всего за конечное число шагов, оно может делать только конечное число запросов о членстве в наборе . Когда обсуждается объем информации о наборе, используемый для вычисления одного бита , это уточняется с помощью функции использования. Формально использование сокращения — это функция, которая отправляет каждое натуральное число к наибольшему натуральному числу , членство которого в наборе было запрошено сокращением при определении членства в .

Более сильные сокращения

Существует два распространенных способа получения сокращений, более сильных, чем сводимость по Тьюрингу. Первый способ — ограничить количество и способ запросов оракула.

Второй способ создать более строгое понятие сводимости — это ограничить вычислительные ресурсы, которые может использовать программа, реализующая сокращение Тьюринга. Эти ограничения на вычислительную сложность сокращения важны при изучении субрекурсивных классов, таких как P . Множество A можно свести к множеству за полиномиальное время , если существует сокращение по Тьюрингу, которое выполняется за полиномиальное время. Концепция сокращения пространства журнала аналогична.

Эти сокращения являются более сильными в том смысле, что они обеспечивают более четкое различие между классами эквивалентности и удовлетворяют более строгим требованиям, чем сокращения Тьюринга. Следовательно, такие сокращения труднее найти. Возможно, не существует способа построить преобразование одного набора в другое, даже если существует сокращение Тьюринга для тех же наборов.

Более слабые сокращения

Согласно тезису Чёрча-Тьюринга , редукция Тьюринга является наиболее общей формой эффективно вычислимой редукции. Тем не менее, рассматриваются и более слабые сокращения. Говорят, что множество является арифметическим , если его можно определить по формуле арифметики Пеано с параметром. Набор является гиперарифметическим, если существует такой рекурсивный ординал , который вычислим из , α-итерационного скачка Тьюринга . Понятие относительной конструктивности является важным понятием сводимости в теории множеств.

Смотрите также

Примечания

  1. ^ Возможно, Bнеразрешимая проблема , для которой не существует алгоритма.

Рекомендации

Внешние ссылки