Файл: Кушнер, Б. А. Лекции по конструктивному математическому анализу.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 15.10.2024
Просмотров: 151
Скачиваний: 0
НОРМАЛЬНЫЕ АЛГОРИФМЫ |
81 |
Наметим доказательство этой теоремы. Обозначим через £)i такой нормальный алгорифм над А\, что при любых натуральных тип
!£>i {man)
и
£), (man) === Л = «J =?= «• |
|
||
(Такой алгорифм, |
распознающий |
графическое |
равен |
ство, был построен |
выше (стр. 74).) |
Применяя |
теоремы |
композиции и объединения к алгорифму £>i и «высекаю щим» алгорифмам В2, Вц (см. стр. 72), легко построить нормальный алгорифм Ф 2 (над Ах) так, что при любых словах Р и Q в А и любых натуральных т, п
I5D2 (PamaQan)
и
(59)3)2 (PamaQan) = Л == m = п.
Аналогично, нетрудно построить алгорифм Ф 3 так,
что
(60)2>3 (PamaQan) ~ РатаЪ (PanaQ) an |.
Построим теперь нормальный алгорифм 3?4 как ви доизмененное повторение 5)3 с управляющим алгориф мом ф 2 (теорема 10) и рассмотрим композицию Фв этого алгорифма с алгорифмом 2D5 таким, что
S)s (Pam) ~ Pamal (Р) a0
(несложное построение © 5 с помощью теоремы объеди нения предоставляется читателю).
Таким образом,
(61) |
£>6 (Рат) ~ |
© 4 |
(3)5 (Pam)) ~ 5Е)4 (РатаЭД (Р) аО). |
|
Ввиду |
(59) - |
(61) |
|
|
(62) |
© 6 |
(РаО) ~ |
Ф4 |
(РаОаЯ (Р) аО) ~ PaOal (Р) аО. |
При т > 0 применимость £>6 к слову Рат равно сильна существованию цепочки слов Р 0 , Р\, ..., Рт та кой, что
(63) |
Л,=г=я(Я), |
|
(64) |
p i + I == 33 (PaiaPi) |
(0 ^ i < m), |
82 |
АЛГОРИФМЫ |
И ПЕРЕЧИСЛИМЫЕ МНОЖЕСТВА |
[ГЛ. 1 |
|
причем в случае существования этой цепочки |
|
|||
|
Ф6 |
(Рат) = |
РатаРтат. |
|
Алгорифм Фб уже очень близок к искомому. В самом деле, по теореме композиции построим алгорифм g так, что
|
|
(E(Pam)~fi3 (D6 (Pam)), |
где |
В3 |
— такой алгорифм, что для любых слов 5 Ь 5 2 , |
.Ь'з, |
5 4 |
в A U{0|} |
|
|
В3 ( 5 , 0 5 2 0 5 3 0 5 4 ) = = 5 3 . |
Ясно тогда, что применимость алгорифма (5 к слову Рат равносильна существованию указанной выше це почки Р0, ..., Рт, причем в случае существования та кой цепочки
(65) |
S (Рат) = Рт. |
Из (62) — (65) получаем
К (PaO) ~ 1 (Р),
6 (Pam + 1) ~ 23 (PamaS (Pam)),
что и требуется.
Предлагаем читателю в качестве упражнения по
строить с помощью теоремы повторения |
нормальный |
алгорифм, умножающий натуральные числа. |
|
8. Изображение и запись нормального |
алгорифма. |
Теорема об универсальном алгорифме. В ряде случаев возникает необходимость привлекать одни нормальные алгорифмы в качестве исходных данных других алго рифмов. В таких случаях оказывается необходимой ко дировка схем нормальных алгорифмов словами неко торых специальных типов. Мы приведем здесь, следуя
монографии М а р к о в а |
[2], два |
простых способа та |
кой кодировки. Каждый |
из них |
обеспечивает возмож |
ность однозначного восстановления схемы нормального
алгорифма по его коду. |
А, и пусть а, |
||
Пусть |
фиксирован |
некоторый алфавит |
|
Р, у —Т РИ |
различные |
буквы, отличные от |
стрелки и от |
точки и не принадлежащие А. Обозначим через Б ал фавит A U {офу}-
|
НОРМАЛЬНЫЕ |
АЛГОРИФМЫ |
83 |
Пусть |
% — произвольный |
нормальный |
алгорифм в |
алфавите |
А. Изображением |
91й алгорифма |
21 назовем |
слово в алфавите Б, получаемое следующим образом: выписываются в порядке очередности формулы подста
новок |
21, причем справа |
от |
каждой |
формулы |
ставится |
|
буква |
у. а |
в с е стрелки |
и |
точки заменяются |
соответ |
|
ственно на |
буквы а и р . |
Например, |
изображением тож |
|||
дественного |
алгорифма |
{-• |
|
|
является слово аРу, а изображением алгорифма со схе мой
Р^Р2 Рз^-Р4
(где Pi, Р2, Рз, Pi — какие-то слова) является слово
Р1аР2уР3а^Р4у.
Одним из важнейших фактов теории нормальных алгорифмов (равно как и других общих концепций ал горифма) является существование универсального нор мального алгорифма, т. е. алгорифма, выполняющего в некотором смысле работу любого нормального алго рифма в данном алфавите. В качестве исходных данных этот алгорифм, естественно, использует, кроме подле жащего обработке слова, и код выполняемого алго рифма.
Имеет место следующая теорема, утверждающая су ществование универсального алгорифма при кодирова
нии нормальных алгорифмов их изображениями |
(в этой |
||||||||||||
теореме |
б — некоторая |
буква, |
не |
принадлежащая |
алфа |
||||||||
виту |
Б). |
|
|
|
|
|
|
|
|
|
Может |
||
|
Т е о р е м а |
13 ( М а р к о в |
[2; |
гл. |
4, § |
2]). |
|||||||
быть |
построен |
такой |
нормальный |
алгорифм |
23 над |
ал |
|||||||
фавитом |
Б, что |
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
23(21И 6Р)~2ЦР) |
|
|
|
|
||||
для |
любого |
нормального |
алгорифма |
21 в |
алфавите |
А |
|||||||
и любого |
слова |
Р в А. |
|
|
|
|
|
|
|
||||
|
Кодирование |
нормальных |
алгорифмов |
посредством |
|||||||||
их |
изображений иногда |
оказывается |
неудобным |
(ср. |
|||||||||
§ |
2) |
из-за |
большого |
количества |
используемых |
в |
нем |
84 АЛГОРИФМЫ И ПЕРЕЧИСЛИМЫЕ МНОХ<ЕСТВА [ГЛ. I
букв. В таких случаях прибегают к более сложным спо
собам |
кодирования, обходящимся |
меньшим числом |
букв. |
Следуя М а р к о в у [2; гл. 4, |
§ 3], мы будем при |
менять способ кодирования, использующий всего две буквы. Именно, каждому нормальному алгорифму 21 в алфавите А будет сопоставляться некоторое слово в
двухбуквенном |
алфавите |
{ 0 | } * ) , называемое записью % |
||
и обозначаемое |
посредством |
£ ^ 3 - Это |
сопоставление |
|
осуществляется |
следующим |
образом. |
Определяется |
|
операция перевода (п. 5) |
из |
алфавита Б |
изображений |
нормальных алгорифмов в алфавит {0|}, использующая кодирующие буквы 0 и | (сохраняемый алфавит в дан ном случае пуст), и записью данного нормального ал
горифма |
объявляется |
перевод его |
изображения**). |
По записи каждого нормального алгорифма в алфа |
|||
вите А |
может быть |
однозначно |
восстановлена его |
схема. |
|
|
|
Приведем два примера записей алгорифмов. В каче стве алфавита А возьмем в этих примерах двухбуквенный алфавит {ab}, а в качестве букв а, р\ у соответ
ственно буквы с, d и е. |
|
|
|
|
У1\ |
|
|
|
|||||
{ab} |
Запись |
тождественного |
алгорифма |
в алфавите |
|||||||||
(его схема {->• )такова: |
E^i3 |
|
0[ | 100] | | 1001 | | | |0. |
||||||||||
|
Пусть |
21 — нормальный |
|
алгорифм |
в |
алфавите |
{ab} |
||||||
со |
схемой |
|
|
|
|
|
|
|
|
|
|
|
|
(21 аннулирует любое слово в этом |
алфавите). |
|
|
||||||||||
|
Очевидно, |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
21й == acebce |
|
|
|
|
|
|
|
||
|
*) Марков использует алфавит {ab}. |
|
|
|
|
|
|
|
|||||
|
**) |
Более подробно: выписываются |
в |
каком-нибудь |
порядке |
||||||||
буквы |
г|1, |
г]п+з |
алфавита |
Б |
(положим |
r | „ + i = = o c , |
г|„+2==р, |
||||||
г|п+8=?=у). |
Переводом |
буквы r|j |
|
(1 ^ i |
^ |
п + 3 ) |
считается |
слопо |
|||||
|
|
|
|
0 | J _ ^ J 0. |
|
|
|
|
|
|
|
||
|
|
|
|
i |
раз |
|
|
|
|
|
|
|
|
Наконец, перевод слова в алфавите Б получается |
одновременной |
||||||||||||
заменой всех его букв их переводами. |
|
|
|
|
|
|
|
||||||
|
Таким образом, при определении записей |
алгорифмов |
в |
алфа |
|||||||||
вите А надлежит как-то фиксировать порядок |
букв в этом алфа |
||||||||||||
вите. В дальнейшем мы опускаем |
детали |
этого |
рода. |
|
|
|