stringtranslate.com

Теорема о пространственной иерархии

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

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

Теоремы пространственной иерархии опираются на концепцию пространственно-конструируемых функций . Детерминированные и недетерминированные теоремы пространственной иерархии утверждают, что для всех пространственно-конструируемых функций f ( n ),

,

где SPACE обозначает либо DSPACE , либо NSPACE , а o относится к маленькой нотации o .

Заявление

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

Для каждой функции, конструируемой в пространстве , существует язык L , разрешимый в пространстве , но не разрешимый в пространстве .

Доказательство

Цель состоит в том, чтобы определить язык, который может быть решен в пространстве, но не в пространстве . Язык определяется как L :

Для любой машины M , которая определяет язык в пространстве , L будет отличаться по крайней мере в одном месте от языка M. А именно, для некоторого достаточно большого k , M будет использовать пространство на и, следовательно, будет отличаться по своему значению.

С другой стороны, L находится в . Алгоритм выбора языка L следующий:

  1. На входе x вычислить с использованием конструируемости пространства и отметить ячейки ленты. Всякий раз, когда делается попытка использовать больше ячеек, отклонить .
  2. Если x не имеет формы для некоторого TM M , отклонить .
  3. Моделировать M на входе x максимум для шагов (используя пространство). Если моделирование пытается использовать больше, чем пространство или больше, чем операций, то отклонить .
  4. Если M принял x во время этой симуляции, то отклонить ; в противном случае принять .

Примечание по шагу 3: Выполнение ограничено шагами, чтобы избежать случая, когда M не останавливается на входе x . То есть случая, когда M потребляет пространство только по мере необходимости, но работает бесконечно долго.

Приведенное выше доказательство справедливо для случая PSPACE, но для случая NPSPACE необходимо внести некоторые изменения. Важным моментом является то, что в то время как на детерминированной TM принятие и отклонение могут быть инвертированы (критично для шага 4), это невозможно на недетерминированной машине.

В случае NPSPACE сначала необходимо переопределить L :

Теперь алгоритм необходимо изменить, чтобы принять L , изменив шаг 4 следующим образом:

L не может быть определено ТМ с использованием ячеек. Предполагая, что L может быть определено некоторой ТМ M с использованием ячеек, и следуя теореме Иммермана–Селепченьи , также может быть определено ТМ (называемой ) с использованием ячеек. Здесь кроется противоречие, поэтому предположение должно быть ложным:

  1. Если (для некоторого достаточно большого k ) не входит, то M примет его, следовательно, отвергнет w , следовательно, w входит (противоречие).
  2. Если (для некоторого достаточно большого k ) входит в , то M отвергнет его, поэтому примет w , следовательно, w не входит в (противоречие).

Сравнение и улучшения

Теорема об иерархии пространства сильнее аналогичных теорем об иерархии времени по нескольким причинам:

Кажется, легче разделить классы в пространстве, чем во времени. Действительно, в то время как теорема об иерархии времени не претерпела значительных улучшений с момента своего создания, теорема об иерархии недетерминированного пространства претерпела по крайней мере одно важное улучшение, сделанное Вилиамом Геффертом в его статье 2003 года "Пересмотренная теорема о иерархии пространства". В этой статье было сделано несколько обобщений теоремы:

Уточнение иерархии пространства

Если пространство измеряется как количество используемых ячеек независимо от размера алфавита, то ⁠ ⁠ поскольку можно достичь любого линейного сжатия, переключившись на больший алфавит. Однако, измеряя пространство в битах, можно достичь гораздо более четкого разделения для детерминированного пространства. Вместо того, чтобы определяться с точностью до мультипликативной константы, пространство теперь определяется с точностью до аддитивной константы. Однако, поскольку любое постоянное количество внешнего пространства можно сохранить, сохранив содержимое во внутреннем состоянии, мы все еще имеем ⁠ ⁠ .

Предположим, что f является пространственно-конструируемым. SPACE является детерминированным.

Доказательство похоже на доказательство теоремы об иерархии пространства, но с двумя осложнениями: универсальная машина Тьюринга должна быть компактной, и обращение должно быть компактным. Обычно можно построить универсальные машины Тьюринга с ⁠ ⁠ накладными расходами пространства, а при соответствующих предположениях — только ⁠ ⁠ накладными расходами пространства (которые могут зависеть от моделируемой машины). Для обращения ключевой вопрос заключается в том, как обнаружить, отклоняет ли моделируемая машина вход в бесконечный (ограниченный пространством) цикл. Простой подсчет количества выполненных шагов увеличит потребление пространства примерно на ⁠ ⁠ . За счет потенциально экспоненциального увеличения времени циклы можно обнаружить с эффективностью использования пространства следующим образом: [1]

Модифицируйте машину, чтобы стереть все и перейти к определенной конфигурации A в случае успеха. Используйте поиск в глубину , чтобы определить, достижима ли A в пространстве, ограниченном начальной конфигурацией. Поиск начинается с A и проходит по конфигурациям, которые ведут к A. Благодаря детерминизму это можно сделать на месте и без перехода в цикл.

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

Следствия

Следствие 1

Для любых двух функций , , где есть и является пространственно конструируемым, .

Это следствие позволяет нам разделить различные классы сложности пространства. Для любого натурального числа k функция является конструируемой по пространству. Поэтому для любых двух натуральных чисел мы можем доказать .

Следствие 2

NL ⊊ PSPACE .

Доказательство

Теорема Сэвича показывает, что , в то время как теорема об иерархии пространства показывает, что . Результатом является это следствие вместе с тем фактом, что TQBF ∉ NL, поскольку TQBF является PSPACE-полным.

Это также можно доказать, используя теорему об иерархии недетерминированного пространства, чтобы показать, что NL ⊊ NPSPACE, и используя теорему Сэвича, чтобы показать, что PSPACE = NPSPACE.

Следствие 3

PSPACEEXPSPACE .

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

Следствие 4

В PSPACE существуют проблемы, требующие для решения произвольно большого показателя степени; поэтому PSPACE не сворачивается в DSPACE ( n k ) для некоторой константы k .

Следствие 5

ПРОСТРАНСТВО( n ) ≠ PВРЕМЯ .

Чтобы увидеть это, предположим обратное, таким образом, любая проблема, решенная в пространстве , решается за время , и любая проблема, решенная в пространстве, решается за время . Теперь , таким образом, P замкнуто относительно такого изменения границы, то есть , так что . Это подразумевает, что для всех , но теорема о иерархии пространства подразумевает, что , и следует следствие 6. Обратите внимание, что этот аргумент не доказывает ни то, ни то , поскольку для достижения противоречия мы использовали отрицание обоих предложений, то есть мы использовали оба включения, и можем только вывести, что по крайней мере одно из них не выполняется. В настоящее время неизвестно, какие из них не выполняются, но предполагается, что оба они не выполняются, то есть и являются несравнимыми - по крайней мере, для детерминированного пространства. [2] Этот вопрос связан с вопросом о временной сложности (недетерминированных) линейных ограниченных автоматов , которые принимают класс сложности (также известных как контекстно-зависимые языки , CSL); поэтому согласно вышеизложенному CSL не разрешим за полиномиальное время - см. также две проблемы Куроды по LBA .

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

Ссылки

  1. ^ Сипсер, Майкл (1978). «Остановка вычислений с ограниченным пространством». Труды 19-го ежегодного симпозиума по основам компьютерной науки .
  2. ^ «Откуда мы знаем, что P != LINSPACE, не зная, является ли одно подмножеством другого?».