Смекни!
smekni.com

Существование универсальных вычислителей. Алгоритмические проблемы и взаимосвязь алгоритмических систем. (стр. 2 из 2)

Доказательство закончено.

Замечание: обычно доказательство неразрешимости алгоритмической проблемы строится методом сведения. Идея этого метода состоит в том, что для исследуемой проблемы П доказывается, что она сводится к другой проблеме П¢, о которой известно, что она неразрешима.

Взаимосвязь алгоритмических систем.

В связи с существованием неразрешимых алгоритмических проблем возникает вопрос:

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

Определение 4.3. Две алгоритмические системы называются эквивалентными, если множество алгоритмов, которые можно описать в первой системе, эквивалентно множеству алгоритмов, которое можно описать с помощью второй.

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

В этом разделе на примере МТ и НАМ мы покажем, что для эквивалентных алгоритмических систем, не может оказаться так, что какая-то алгоритмическая проблема, неразрешимая в МТ, окажется разрешимой в НАМ. Мы докажем, что для любой МТ U можно подобрать НАМ N такой, что

U(P)=N(P) и наоборот.

Отсюда и будет следовать, что если какая-то алгоритмическая проблема разрешима в МТ, то она автоматически разрешима в НАМ и наоборот.

Теорема 4.2 Для любой машины Тьюринга U существует НАМ N такой, что

U(P)=N(P), где Р Є DU*.

Доказательство: Для доказательства этой теоремы мы покажем, как для каждого правила ap®bqw машины U построить правило подстановки для НАМ N. Тем самым мы, зная функциональную схему U, построим систему правил для N.

В функциональной схеме машины U могут встретиться команды следующих видов:

aqj®bqsЛ

aqj®bqsП

aqj®bqsН

aqj®b!{Л,П,Н}.

Рассмотрим сначала команды машины U вида (1), т. е. запись в текущую позицию вместо символа a символа b и сдвиг влево. В соответствующем НАМ N мы будем обрабатываемый символ в слове р метить слева символом состояния т. е. DN=DUUQUU{Ñ}. Тогда команде (1) сопоставим следующую группу правил подстановки:

qja®qsÑb

{ciqsÑ®qsci} , ci ЄDU

Здесь символ Ñ “экранирует” q от следующего за ним символа в обрабатываемом слове.

Командам вида (2) сопоставим правила подстановки вида

qja®bqs

Командам вида (3) - qja®qsb

Командам вида (4) - qjaab.

Самым последним в системе правил подстановки НАМ будет начальное правило

®qo , машины U.

где qo - начальное состояние U.

Замечание: Если а=L, т. е. командам Lqj®bqsw надо будет сопоставлять правило qj®qsb либо qj®bqs в зависимости от значения w. Все такие правила подстановки надо собрать в конце схемы, сразу перед начальным правилом.

Обратите внимание, что если на вход N подать слово, к которому U не применим, то N будет бесконечно долго подставлять qo в начало слова.

N применим к тем же словам, что и U.

Допустим существование слова Р, к которому U применим, а N - нет. Раз U применим, то пусть его заключительной командой является команда aq®b!H. Ей по построению N соответствует терминальное правило подстановки, которое должно выполняться, т. к. в схеме N нет двух правил с одинаковыми правыми частями..

Пришли к противоречию.

Доказательство теоремы 4.2 закончено.

Теорема 4.3. Для любого НАМ N существует машина Тьюринга U такая, что

N(P)= U(P) для всех PЄDN*.

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

Алфавит U : DU = DNUWN.

Обозначим

U*(Р)=*Р, т. е. МТ , ставящую символ * перед обрабатываемым символом.

U!(P)=P осталось без изменения слова.

1 || Q*aR если QaR=P0 || P* если a не входит в P

mb (1||Q*aR)=QbR

U0 (0||P*)=P

Надеемся, что читателю будет не сложно построить функциональную схему любой из этих машин.

Схема НАМ N состоит из правил либо вида a®b, либо aab, где
a,b Є (DUW)*.

Каждому правилу вида

ai®bi

сопоставим машину Uic функциональной схемой вида

if

then mbi(1||Q*aiR)o U*o U1

else Uоo U*o Ui+1 .

Каждому терминальному правилу вида

aiabi

сопоставим машину Uic функциональной схемой вида

if

then mbi(1||Q*aiR) o U!

else Uоo U*o Ui+1 .

Последнему правилу подстановки в схеме НАМ N вида

ak®bk

сопоставим машину Uk с функциональной схемой

if

then mbk(1||Q*akR)o U*o U1

else Uоo U*o U! .

В части else появление машины U! связано с тем, что по определению НАМ завершается, если не применимо ни одно из правил подстановки.

Функциональная схема искомой машины U будет иметь вид

U*(P)o U1o U2o … o Uk ,

где k - число правил подстановки в схеме НАМ N.

Доказательство теоремы 4.3 закончено.

Из теорем 4.2 и 4.3 следует, что если какая-то алгоритмическая проблема разрешима в одной алгоритмической системе, то она автоматически разрешима и в другой. Если предположить, что какая-то алгоритмическая проблема неразрешимая в одной алгоритмической системе, но разрешима в другой, то придём к противоречию. Действительно, согласно теоремам 4.2 и 4.3 если эта проблема разрешима хотя бы в одной системе, то она разрешима и в другой.

Выводы :

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

В силу тезиса Тьюринга, любой алгоритм реализуем в терминах действий последовательной, параллельной композиций, выбора и цикла и базового набора действий;

Проблема самоприменимости алгоритмической системы алгоритмически не разрешима;

Если алгоритмическая проблема не разрешима, то она не разрешима в любой другой эквивалентной алгоритмической системы;

Алгоритмические системы МТ и НАМ эквивалентны.

Вопросы :

Что такое интерпретация?

Что такое кодирование?

В чем проблема линеаризации Ф.с. для МТ?

Что такое универсальный исполнитель:
- он может исполнять заданный А в любой А.с.?
- он может исполнять любой А, выразимый в данной А.с.?

Как решается проблема произвольности алфавита в УМТ?

Что такое А.п.?

Самоприменимость - что это такое?

А.п. самоприменимости разрешима?

В МТ А не закончен если нет применимого правила, в НАМ в этом случае А - закончен. Как это несоответствие решается при доказательстве сводимости МТ к НАМ и наоборот?

Что означает запись:

Если Fa (*P), то M(1||Q*aR)o U*o U1 иначе U0o U*o Ui+1?