Теорема (Теорема  Сэвича).  PS = NPS.

Доказательство.  Очевидно,  что  PS ⊆  NPS,  поскольку  каждая  ДМТ  является  также  и  НМТ.  Доказываем  обратное  включение: NPS ⊆  PS,  т. е.  если  L  допускается  НМТ  N  с  ограничением  пространства  p(n),  где  p(n)-  полином,  то  L  также  допускается  ДМТ  D  с  ограничением  пространства  полиномом  q(n). Доказательство  основано  на  имитации  НМТ  N  с  помощью  ДМТ  D.

  Машина  D  с  помощью  рекурсивной  процедуры  проверяет,  что  пере - ход  от  одной  МО  I  к  другой – J  осуществляется  не  более, чем  за  m  переходов. По  теореме  11.3,  если  N  допускает,  то  делает  это  в  пределах  c1+p(n)  шагов,  где  c – некоторая  константа,  также  и  m  не  превышает  cp(n). Получив  вход  w,  машина  D  исследует  тройки  вида  [I0, J, m ],  где  I0 – исходное  МО,  J – заключительное  МО  машины  N,  в  котором  используется  не  более  p(n)  клеток.  m  в  каждом  вызове  рекурсивной  процедуры  уменьшается  в  два  раза,  пока  не  станет  равным  1.  Рекурсивных  вызовов  не  более  log 2 m,  так  что  элементов  [I, J, m/2i] -  log 2 m,  т. е. log 2 c1+p(n),

НЕ нашли? Не то? Что вы ищете?

или  O(p(n)).

  Каждый  элемент  вызова  занимает  пространство  O(p(n)),  для  записи  каждого  МО  требуется  1+p(n)  клеток,  а  для  записи  в  двоичном  виде – log2 c1+p(n),  т. е.  O(p(n))  клеток. 

  Таким  образом,  D  использует  пространство  O(p2(n)),  т. е.  L  допускается  ДМТ  с  полиномиально  ограниченным  пространством.

Проблема,  полная  для  класса  PS.

  Проблема  P  определяется  как  полная  для  PS (PS-полная),  если :

P ∈  PS.  Все  языки  L  из  PS  полиномиально  сводимы  к  P.

Теорема.  Пусть  P – PS-полная  проблема.  Тогда :

  a)  если  P∈ P,  то  P  =  PS;

  b)  если  P∈ NP,  то  NP  =  PS..

Доказательство.  Докажем  (a).  Дано,  что  P – PS-полная  проблема, тогда  любой  язык  L  из  PS  полиномиально,  за  время  q (n), сводим  к  P.  Пусть  P∈ P  и  время  работы  допускающей  ДМТ  задается  полиномом  p(n) . 

  Цепочка  w  принадлежит  языку  L  тогда  и  только  тогда,  когда,  используя  сведение,  можно  получить  цепочку  x,  принадлежащую  P. Поскольку  сведение  занимает  время  q (⎜w⎟), цепочка  x  не  может  быть  длинее,  чем  q (⎜w⎟).  Принадлежность  x  к  языку  P  можно  проверить  за  время  p(⎜x⎟),  т. е.  p(q (⎜w⎟)),  полиномиальное  относительно  ⎜w⎟. Следовательно, для  L  сушествует  полиномиальный  по  времени  алгоритм  и  L ∈ P.  Таким  образом,  PS ⊆ P.  Обратное  включение  очевидно. 

Доказательство  (b)  аналогично  с  заменой  ДМТ  на  НМТ.

  Примером  PS-полной  проблемы  будет  класс  “булевых  формул  с  кванторами ” (КБФ).  Проблема  формулируется  так:  имеет  ли  булева  формула  с  кванторами  без свободных  переменных  значение  1 ? 

  Доказательство  основано  на  идеи  теоремы  Кука - представления вычисления  машины  Тьюринга  логическими  переменными,  каждая  из  которых  говорит,  имеет  ли  определенная  клетка  определенное  значение  в  определенный  момент  времени.  Однако,  если  в  теореме  Кука  речь  шла  о  полиномиальном  времени,  поэтому  там  присутствовало  полиномиальное  количество  переменных,  здесь  время  может  быть  экспоненциальным,  т. е. число МО,  а  полиномиально  пространство  вычислений.

  Вторая  идея -  рекурсивной  проверки,  что  одно  МО  превращается  за  некоторое, теперь  уже  экспоненциальное,  время  m,  реализуется  благодаря  способности  самого  языка булевых  формул  с  кванторами  выражать  такого  рода  факты  в  пределах  полиномиальной  длины,  даже  если  m  экспоненциально  относительно  длины  входа. 

  Утверждение  разбито  на  две  части :  КБФ ∈ PS  и  каждый  язык  из  PS

полиномиально (по  времени)  сводим  к  КБФ.

Теорема.  КБФ  принадлежит  PS.

Доказательство. Рекурсивный  процесс  вычисления  КБФ  F  может  быть  организован  с  использованием  магазина,  хранимого  на  ленте  машины  Тьюринга,  как  в  доказательстве  теоремы  Сэвича.  Пусть  n – длина  F.  Тогда  для  F  создается  запись  длиной  O(n),  включающая  саму  F  и  пространство  для  записи  обрабатываемых  подформул  F.  Вычисления  проводим  индукцией  по  построению  формулы  F:

Пусть  F =  F1 + F2 ,  тогда  выполняем  следующее : помещаем  F1  в  ее  собственную  запись  справа  от  записи  F; рекурсивно  вычисляем  F1; если  значением  F1  является  1,  то  возвращаем  1  как  значение  F; если  значение  F1  есть  0,  то  ее  запись  заменяем  записью  F2  и  рекурсивно  вычисляем  F2; в  качестве  значения  F  возвращаем  F2. Пусть  F = ∃ x E.  Тогда  выполняем  следующее : подставляем  вместо  x  значение  0  и  полученную  запись  E0  помещаем  справа  от  записи  F; рекурсивно  вычисляем  E0; если  значение  E0  равно  1,  то  возвращаем  1  как  значение  F; если  значение  E0  равно  0,  на  место  E0  помещаем  запись  E1,  подставляя  1  вместо  x,  и  рекурсивно  вычисляем  E1; в  качестве  значения  F  возвращаем  значение  E1.

Для  остальных  форм  F (F1F2,  ¬E,  ∀x E)  доказательства  аналогичны.  Для  базисного случая, когда  F– константа, она возвращается без записей на ленте

  Посчитаем  объем  памяти (ленты).  Если  F – длины  n,  на  ленте  n  записей,  каждая  длиной  O(n).  Поэтому  объем  памяти  не  не  превышает  O(n2). Таким  образом,  машина  Тьюринга,  допускающая  КБФ  с  полиномиально  ограниченным  пространством.  Время  работы  алгоритма  экспоненциально  относительно  n.

  Для  сведения  языка  L  из  PS  к  проблеме  КБФ  воспользуемся  идеей  доказательства  теоремы  Кука,  где  использовались  пропозициональные  переменные  yijA  для  утверждения,  что  в  j-й  позиции  i-го  МО  находится  символ  A.  Однако,  поскольку  МО  экспоненциальное  число,  воспользуемся  квантификацией,  чтобы  с  помощью  одного  и  того  же  множества  переменных  представлять  много  различных  МО. 

Теорема.  Проблема  КБФ  PS-полна.

Доказательство. Пусть  L – язык  из  PS,  допускаемый  недетерминированной  машиной  M,  которая  на  входе  длины  n  использует  не  более  p(n) клеток. По  теореме  Сэвича  существует  константа  “c”,  для  которой  M  допускает  вход  за  c 1+ p(n)  переходов (если  допускает).  Опишем,  как  за  полиномиальное  время  по  входу  w  длины  n  построить  КБФ  E  без  свободных  переменных,  имеющее  значение 1  тогда  и  только  тогда,  когда

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18