Теория сложности, когда оракул является частью ввода

14

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

Есть, однако, другой способ, которым оракулы иногда происходят: как часть ввода . Например, предположим, я хочу изучить алгоритмы вычисления объема заданного многомерного многогранника. Классически, многогранник должен быть указан путем предоставления списка его фасетов или некоторого другого явного представления. Тем не менее, мы можем также поставить проблему вычисления объема многогранника, который определяется оракулом объема, который принимает координаты точки в пространстве в качестве входных данных и выдает «да» тогда и только тогда, когда данная точка находится внутри многогранника. Затем мы можем спросить, какие вычислительные ресурсы необходимы для вычисления объема многогранника, указанного таким образом. В этом конкретном случае мы имеем очень хорошую схему аппроксимации полиномиального времени Дайера, Фриза и Каннана и, что интересно, с точки зрения теории сложности, доказательство того, что случайность существенно помогает в этой задаче, в том, что никакой детерминированный алгоритм не может выполнить так же, как алгоритм Дайера-Фриза-Каннана.

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

Тимоти Чоу
источник
2
Я помню публикацию в блоге Скотта Ааронсона с обсуждением этого вопроса в комментариях # 21- # 23: scottaaronson.com/blog/?p=451 .
Мартин Шварц

Ответы:

18

Это называется Теория сложности типа 2. Есть статья Кука, Импальяццо и Ямаками, которая хорошо связывает ее с теорией общих оракулов.

Лэнс Фортноу
источник
9

Это должно быть далеко от полного ответа, но, надеюсь, это указывает на некоторые места, чтобы посмотреть.

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

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

Я не знаю исследования классов сложности задач с неявным вводом (а не отдельных задач) с учетом стоимости вычислений, но, вероятно, некоторые люди знают.

Цуёси Ито
источник
1
теперь, когда вы упомянули, знаете ли вы, в каких случаях сложность запроса не дает оракула разделения между соответствующими классами?
Маркос Вильягра
@MarcosVillagra: Не совсем, но я сомневаюсь, что аналог сложности запроса класса в вычислительной сложности всегда четко определен.
Цуёси Ито
5

Модель, в которой ввод представлен как оракул, изучается в теории вычислимости и вычислимом анализе. Одной из моделей, которые кажутся близкими к тому, что вы хотите, является модель TTE (Эффективность второго типа). Хорошая ссылка на это - книга Клауса Вейрауха « Вычислительный анализ ». Он также кратко говорит о сложности в главе 7.

В книге Ker-I Ko " Вычислительная сложность реальных функций " обсуждается еще одна модель доступа к оракулу, которая кажется более подходящей для сложности. Вопросы о представлении объектов более высокого типа и метода доступа к оракулу являются деликатными вопросами. См., Например, недавнюю работу Стивена А. Кука и Акитоши Кавамуры « Теория сложности для операторов в анализе » из STOC 2010 и его кандидатскую диссертацию . Одна из основных проблем заключается в том, что для того, чтобы сделать модель разумной, нужно дать машине достаточно времени для обработки ответов оракула (в противном случае невозможно даже вычислить оператора приложения). Для полиномиального времени и полиномиального пространства это можно сделать, используя полиномы более высокого порядка, основанные на Стивене А. Кук и Брюсе М. КапроньНовая характеристика выполнимости типа 2 "FOCS 1991" и " Характеристики основных выполнимых функционалов конечного типа " STOC 1989.

Кава
источник