Файл: Трахтенброт, Б. А. Алгоритмы и вычислительные автоматы.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 19.10.2024
Просмотров: 110
Скачиваний: 0
повременное сползание на одну позицию правой конфигу рации влево и левой конфигурации вправо и сравнение пары подошедших к точке стыка полуконфпгурапий. Рис. 53,о изображает сравнение «Р (v) = Р (v + 1)?», рис. 53, б — сравнение «Р (v — 1) = Р (v + 2)?» и т. д. Если слово Р симметрично, то на (v — 1)-м такте появится конфигурация рис. 53, д, которая на следующем такте приведет к конфи-
№oc7t)
пюбое
г
Я
z
л
Z
Л
Z
Л
А
А
А
А
А
А
|
|
|
|
Пояснения |
||
х |
У |
У |
х,у,q- |
произвольные |
||
П |
1 |
1 |
Сползание |
правой, |
||
полунонфи |
гурааии |
|||||
X |
У |
z |
q,x,y,z |
- |
произвольные |
|
л |
Л |
|
Сползание |
левой |
||
|
х |
|
> |
полуконфигурации |
||
X |
Z |
до |
обнаружения |
|||
л |
Л |
Л |
асимметрии |
|||
X |
У |
Z |
x,y,z |
- |
произвольные> |
|
л |
п |
л' |
|
но |
xty |
|
Сползание |
левой |
|||||
X |
|
Z |
полуконфигурации |
|||
любое |
после |
обнаружения |
||||
Л' |
Л' |
|||||
|
асимметрии |
|||||
X |
х |
1 |
|
|
|
|
л |
П |
I |
х,у, |
z - |
произвольные, |
|
X |
У |
О |
||||
|
х*у |
|
||||
Л |
П |
I |
|
|
||
х |
г |
о |
Выдача |
результата |
||
Л' |
Л |
г |
|
|
|
|
|
|
Рис. |
54. |
|
|
гурации рис. 52, д. Допустим, что слово Р несимметрично и
это обнаруживается |
впервые при сравнении «Р (v — k — |
_ 1 ) = р (v + /г)?», |
т. е. Р (v — k — 1) Ф Р (v - f k). Тогда |
на следующем такте (рис. 53, г) это зафиксируется появле нием нижнего символа Л' у точки стыка. Этот символ сохра няется при дальнейшем сползании. На предпоследнем так те появляется конфигурация рис. 53, е, которая еще через один такт переходит в конфигурацию рис. 52, е. Теперь ясно, что для доказательства теоремы 3 достаточно решить следующую задачу.
J86.
Вторая задача. Построить нейманову программу Э?п, которая обеспечивает переработку конфигурации рис. 52, а в конфигурацию рис. 53, а с соблюдением следующих условий:
а) |
переработка происходит за время, |
не большее чем |
С'П (С — константа); |
|
|
б) |
3 i n не имеет общих с 3?^ состояний |
кроме состояний: |
Л(покоя), л, л, п, п\ в) по ходу этой переработки до появления конфигура
ции рис. |
53, а нигде не появляются состояния л, |
л, п.'п- |
|
Легко |
понять, что, объединяя |
списки активных |
команд |
программ |
и 5кп , мы получим |
программу Ш0, удовлетво |
|
ряющую требованиям теоремы 3, |
Именно сначала произой |
дет переход от рис. 52, а и 53, а согласно SRn, а затем далее от 53, а к 52, д или к 52, в согласно fSls- При этом общее затра чиваемое время не превышает дозволенной оценки.
Роль программы 9?п заключается, очевидно, в том, чтобы довести одновременно до каждой буквы слова Р информа цию-о том, какой половине слова она принадлежит: левой или правой. Аналогия с задачей о стрелках достаточно проз рачна. Специфика новой ситуации сводится лишь к следую щим двум пунктам: 1) теперь мы имеем дело со стрелками двух категорий (нули и единицы), вместо прежних стрелков одной категории (сплошь палочки); 2) вместо общего для всех приказа «пли» (нижний символ*) теперь стрелкам из левой полушеренги, нужно выполнять приказ «пли на лево!» (нижний символ Л), а стрелкам из правой полушерен ги— приказ «пли. направо!» (нижний символ П). Однако обе эти особенности несущественны; и рассмотренное нами решение (§ 22) легко может быть приспособлено и к'новым
условиям, причем оценка времени останется |
прежней, |
т. е. до синхронизированных выстрелов пройдет |
не более |
5 п тактов. Модификации, которые нужно ввести, потребуют лишь увеличения числа внутренних состояний нейманова элемента (стрелка). Например, вместо двух верхних сим волов I, р потребуются четыре: /°, I 1 , р°, р 1 — для запоми нания того, какие буквы (0 или 1) стояли в тех местах, где заканчивались очередные циклы дихотомии. В заключи тельном такте это позволяет восстанавливать в верхнем этаже первоначальное слово Р; кроме того, увеличение числа состояний необходимо для того, чтобы после первой дихотомии и впредь до выстрела в левой и правой полузовах длиной п/2 употреблялись различные состояния.
167
Это позволяет на заключительном такте установить всюду в левой полузоне нижний символ Л, а всюду в правой полузоне — другой нижний символ П. Опуская эти детали, можем считать теорему 3 доказанной.
а) |
0 |
0 х(1) х(г) |
• |
х(£) |
• |
• |
• |
x(S-l)xfS) |
0 |
0 |
||
|
0 |
уш)0} |
у(г) |
• |
yd) |
|
|
|
$-1) y(s) |
|
0 |
|
|
|
0 |
0 |
|
0 |
|
|
|
0 |
0 |
|
|
в) |
|
X(t) Х(2) |
|
|
|
|
|
0 |
х(5)\ |
|
|
|
|
|
|
ф |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
J |
|
|
г) |
|
|
щ |
|
Ш |
|
|
|
i(S-2)z(S-/)\х(5) |
|
||
|
X//J Х(2)\ |
|
\х(0 |
|
|
|
xlS-l)x(S) 0 |
|
||||
|
|
|
0 |
|
0 |
|
|
|
0 |
|
0 |
|
|
|
0 |
xlf) |
|
T(i-1) |
|
|
|
№0x(s)\ |
|
|
|
3) |
|
0 |
\xY2) |
|
xfi) |
|
|
|
|
|
||
|
|
<x(f) |
|
|
Ф1) |
|
|
|
0 |
Ф |
0 |
|
|
|
\х(2)\ |
|
|
|
|
|
|||||
|
|
~0~ |
Xl3) |
|
|
|
|
|
|
|
|
|
|
|
|
|
T |
|
|
|
0 |
\0 |
|
|
|
|
|
И \у(г) |
0 |
|
|
|
|
|
|
|||
|
|
|
И I |
|
|
|
|
|
|
|
||
|
|
|
\У12)\ |
|
0 |
|
|
|
0 |
0 |
0 |
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис. 55. |
|
|
|
|
|
|
|
23.4. Тьюрингово |
моделирование |
|
автомата |
Неймана. |
||||||||
Идея, |
лежащая |
в основе этого моделирования, иллюстри |
||||||||||
руется |
рис. 55. Рассмотрим |
нейманову |
|
конфиграцию |
||||||||
рис. 55, а, где правее |
x(s) и левее |
л:(1) — сплошь состояния |
||||||||||
покоя. Иначе говоря, |
активная |
зона |
этой |
конфигурации |
||||||||
«покрывается» |
словом |
х (1) х (2)... |
х (s), |
где среди |
х (i) |
|||||||
(L = 1, 2, |
s), допускаются, вообще говоря, и вхождения |
состояния покоя ф. Тогда за один такт эта конфигурация перерабатывается в конфигурацию рис. 55, б, активная зона которой, очевидно, во всяком случае не длинее s -f- 2
188
и |
уж |
наверняка покрывается словом |
у (0) |
у (1)... |
у (s) |
у |
(s + |
1) в алфавите всех состояний. На |
рис. |
55, в, г, |
д, е |
изображены конфигурации «трехэтажной» машины Тью ринга 50?, которая на своем втором этаже стремится ими
тировать работу заданного автомата Неймана |
91. На |
|
рис. 55, в и е показано, как в 50? кодируются |
конфигурации |
|
55, а и б. Для и м и т а ц и и одного нейманова |
такта |
головка |
машины 2)?совершает колебания, изображенные посредством зигзагообразной линии под лентой на рис. 55, в. При пер вом пробеге — слева направо — машина записывает на верхнем этаже каждой посещаемой ячейки содержимое вто рого этажа соседней с нею левой ячейки. В результате воз никает конфигурация рис. 55, г. При возвращении налево в нижний этаж каждой ячейки заносится содержимое вто рого этажа соседней справа ячейки. Итак, после одного полного колебания в каждой ячейке зоны длины s + 2 уже накоплена информация о состоянии соответствующей ней мановой ячейки и о состояниях ее соседей слева и справа. Начиная свой очередной пробег слева направо, машина 50? осуществляет в каждой ячейке замену тройки неймановых состояний тем состоянием, которое предписывается суще ствующей командой программы 31; это состояние заносится на второй этаж, а другие два этажа очищаются. К концу третьего пробега запись на тьюринговой ленте уже имеет вид, указанный на рис. 55, е. Наконец, головка возвра щается влево, не производя никаких записей и, достигнув ячейки с записью и (0), переходит в состояние (обозначен ное на рис. 55, в через г0). Теперь она уже готова к сле дующему циклу, в котором будет моделироваться следующий нейманов такт. Ясно, что можно построить машину Тьюрин га 50?, выполняющую описанный нами алгоритм (подтверж дение основной гипотезы теории алгоритмов).
При составлении программы 50? на самом деле нужно учитывать еще некоторые другие, впрочем, довольно оче видные детали. Например, машине 50? необходимо как-то помечать на каждом цикле ячейку, из которой она начи нает свои колебания, дабы при обратном движении она могла бы обнаружить ее и продолжать свой путь ровно на
одну ячейку дальше. |
|
|
Оценим число тактов, которые затратит |
машина 50? |
|
при имитации t тактов автомата Неймана 50?, |
запущенного |
|
на конфигурации с активной зоной длины |
d. |
Очевидно, |
53? содержит t циклов с общей длительностью |
не более, |
|
чем сумма арифметической прогрессии |
|
|
189