Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Кушнер, Б. А. Лекции по конструктивному математическому анализу

.pdf
Скачиваний:
19
Добавлен:
22.10.2023
Размер:
14.87 Mб
Скачать

62

АЛГОРИФМЫ

I I ПЕРЕЧИСЛИМЫЕ МНОЖЕСТВА

[ГЛ. 1

со схемой

 

 

 

(16)

 

 

 

(17)

 

а —>

 

(18)

ь\->\ь

 

(19)

| ,

0 - > , 0а

 

(20)

00 — 0

 

(21)

,

о - о ,

 

(22)

,

1-*,

 

(23)

.

6 - 1 ,

 

(24)

 

 

 

и

покажем, что

Ям (m, п)~ т

 

 

 

 

Условимся для краткости при произвольном нату­ ральном k обозначать через к слово, получающееся из k выбрасыванием буквы «0», а через къ, к'ъ слова, полу­ чающиеся из к заменой всех букв «|» соответственно на

букву

«6»

и слово

«|6».

Например,

если

& = 0 | | | ,

то

* = Н I I . кь=^ЬЬЬ,

 

 

к'ь^\Ь\Ь\Ь.

 

 

 

 

 

 

Рассмотрим сначала случаи обращения в нуль ка­

кого-нибудь из сомножителей.

 

 

 

 

 

 

а) т = 0. Формулы

(16) — (19)

применяться не

мо­

гут. Используется

формула

(21), затем

(20):

 

 

 

 

Я „ :

0,

п

b

00,

п

НО,

п.

 

 

Далее,

очевидно

((22),

(24)),

 

 

 

 

 

Итак,

 

 

Ю,,: 0,

 

rtf=0,

 

Н О .

 

 

 

 

 

 

%i

(0, п)==0.

 

 

 

 

 

 

 

 

 

 

 

 

 

б)

п =

0.

Поскольку

случай

т

=

0 уже разобран,

можно

считать,

что

т >

0.

Тогда

т

заканчивается

буквой

« | »

и ((19),

(17))

 

 

 

 

 

 

 

 

 

Я и : т, O h m - 1 , 0а H m — 1, О Н О . 0.

 

Наконец

((21)-(20), (24)),

 

 

 

 

 

 

 

 

 

Я „ :

0,

0 Н 0 0 ,

НО,

Н - 0 .

 

 

 

НОРМАЛЬНЫЕ АЛГОРИФМЫ

63

Итак,

и в этом случае

 

 

 

 

«R,,(m, 0) =

m-0 =

0.

 

в) т >

0, п > 0. Очевидно

((19)),

 

 

ЭДП: т,

п\-т—\,

Оап.

Далее

((16) — (17))

«а» «проходит» через п, оставляя

у каждой буквы «|» букву «6»:

 

 

9tn : т — \,0ап\=

т — \,0nrba

\-т

— \,0п'ь.

Затем

буквы «Ь» «проходят» вправо

((18)):

 

91п : т — 1,0п'ь \= т — 1 ,ппь.

После т таких циклов получим

 

 

 

ЭТП: т,

n\=r0,nnbnb . . .

пь.

 

 

 

т раз

 

Обозначим последнее слово через Q. Чтобы получить искомый результат, достаточно выбросить из Q слово «, п» и заменить всюду букву «Ь» на «|». Именно это и происходит. По формулам (20) — (24)

9?п: Q I - OO.nrtj . . . гц (- 0,п/ц . . .

«jj =

 

 

m раз

т раз

 

 

 

f= 0,% . . . ПЬ |= 0Я . . . Я,

г- • ОД . . . П-

 

 

т раз

/п раз

т раз

Последнее натуральное число, очевидно, и есть m-n.

Итак,

всегда

(т, п)~т

• п,

 

 

9?п

 

что и требовалось.

 

 

 

5.

Регламентация

использования вспомогательных

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

64

АЛГОРИФМЫ И ПЕРЕЧИСЛИМЫЕ МНОЖЕСТВА

[ГЛ. 1

в алфавите Л, содержащем не менее двух букв, обра­ щающий все слова в А (ср. Н а г о р н ы й [2]). В связи со сказанным возникает вопрос: как сильно нужно расши­ рять исходный алфавит, чтобы получать всевозможные преобразования слов в этом алфавите, вообще доступ­ ные нормальным алгорифмам. Этот вопрос решается теоремой А. А. Маркова о переводе ( М а р к о в [2]), по­ казывающей, что всегда можно обойтись (если нас инте­ ресуют преобразования слов в данном алфавите) всего двумя вспомогательными буквами, т. е. двухбуквенным расширением исходного алфавита*).

Пусть

А — некоторый алфавит (возможно,

пустой),

буквы

а,

р,

уь

• • •

I Уп не входят в А, а отлична от Р

и все

\{,

у,

(i ф

])

различны.

(Однако буквы

а,

р мо­

гут, вообще

говоря,

совпадать

с некоторыми

из у\.)

Рас­

смотрим

алфавиты

 

 

 

 

 

 

 

(25)

 

 

 

Л, =

Л [Дар},

 

 

 

 

(26)

 

 

 

Л2

=

Ли{у,У2

••• УпЬ

 

 

 

Сопоставим

каждой

 

букве

у<

( 1 ^ ' ^ я )

слово

вида

(27)

 

 

 

 

 

ар

. . _ Р а

 

 

 

tраз

иназовем это слово переводом буквы yt. Переводом про­ извольной буквы алфавита А назовем саму эту букву.

Перевод буквы г\ (алфавита А2) будем обозначать по­ средством [т]т. Пусть теперь

Р=f= 4l • • • Л*

— произвольное (непустое) слово в алфавите Л2 . Под переводом Р мы будем понимать слово

К• • • Не­

очевидно, являющееся словом в алфавите А\. Перевод Р будет обозначаться через х. Переводом пустого слова считается пустое слово (т. е. [ Л т =т= Л ) .

*) Как показал Н а г о р н ы й [1]—[2], всегда достаточно даже одной вспомогательной буквы, т. е. однобуквенного расширения ис­ ходного алфавита.

§1]

НОРМАЛЬНЫЕ

АЛГОРИФМЫ

65

 

Отметим, что для любого слова Р в алфавите А

 

(28)

Т =

Р,

 

и обратно, если для Q е А2

выполняется [ Q T e / l ,

то

Q e

А.

 

 

Описанный только что способ кодирования слов в ал­ фавите Аг словами в алфавите А\ обладает, как можно

показать (М а р к о в [2; гл. 1, § 6]), свойством

однознач­

ности:

[PX=^[QX

для

произвольных

слов Р

и Q

в А2

тогда

и только тогда,

когда Р — Q.

В приводимой

ниже

теореме о переводе по существу и используется это об­ стоятельство, позволяющее заменить каждую вспомога­ тельную букву некоторым словом вида (27).

Про изложенный способ перевода мы будем гово­ рить, что он есть перевод из алфавита А2 в Аи исполь­ зующий кодирующие буквы а и р и сохраняющий алфавит А.

Пусть 21— нормальный алгорифм в алфавите (26). Заменим в схеме 21 левую и правую часть каждой фор­ мулы подстановки на ее перевод. В результате полу­ чится некоторый нормальный алгорифм в алфавите А\ ((25)), который мы назовем переводом 21. Оказывается, перевод 21 работает над переводами слов в алфавите А2 точно так же, как 21 работает над самими этими сло­

вами, точнее говоря, имеет место

 

 

 

 

Т е о р е м а

1 (теорема

о переводе: М а р к о в

[2; гл. 3,

§ 7]). Пусть

21 — нормальный

алгорифм

в алфавите

An

((26))

и

21 — перевод

этого

алгорифма.

Тогда

для

лю­

бого слова

Р в алфавите Ач

 

 

 

 

 

 

 

 

 

Й ( | р т ) ~ [ 2 1 ( Р ) т .

 

 

 

В

частности,

когда

Р — слозо

в А и

21 перерабаты­

вает Р в слово в А, то

((28))

 

 

 

 

 

 

 

 

 

21 (Я) =

21 (Р).

 

 

 

Таким образом, имеет

место

 

 

 

 

Т е о р е м а

2

(теорема

приведения: М а р к о в [2; гл. 3,

§ 7]). Пусть а и

р — две

различные

буквы,

не

принадле­

жащие алфавиту

А. Тогда

всякий

нормальный

алгорифм

3 Б. А. Кушнер

66

АЛГОРИФМЫ

И

ПЕРЕЧИСЛИМЫЕ

МНОЖЕСТВА

[ГЛ. 1

над А

эквивалентен

относительно

А

(см.

п.

1)

некото­

рому

нормальному

 

алгорифму

в

алфавите

A

U {ар}.

Отметим следующий важный частный случай тео­

ремы

приведения.

 

 

 

 

 

 

 

 

 

 

Т е о р е м а 3.

При

условиях

теоремы

2

всякий нор­

мальный алгорифм

над А типа

(Л-г* А)

вполне

эквива­

лентен

относительно

А

(см.

п.

1)

некоторому

 

нормаль­

ному алгорифму

в алфавите

A U {оф}.

 

 

 

 

Для доказательства теорем 2—3 достаточно опреде­ лить перевод из алфавита рассматриваемого нормаль­ ного алгорифма (являющегося расширением алфавита Л) в Л U {ар}, использующий кодирующие буквы а и р и сохраняющий алфавит Л. В качестве искомого алго­ рифма в алфавите Л U {ар} можно, ввиду теоремы 1, взять перевод исходного нормального алгорифма. Из

теоремы о переводе, очевидно, также

вытекает

 

 

 

С л е д с т в и е

1. При

условиях

теоремы 2

для

вся­

кого нормального

алгорифма над

алфавитом

А

может

быть построен нормальный

алгорифм

в

A

U {ар},

приме­

нимый

к тем и

только тем словам

в

А,

к

которым

при­

меним

исходный

алгорифм.

 

 

 

 

 

 

 

Теоремы 2—3 показывают, что любое алгорифмическое преобразование слов в алфавите Л, которое может быть выполнено нормальным алгорифмом над Л, может быть выполнено также и нормальным алгорифмом в

двухбуквенном

расширении Л. Таким образом, если

нас интересуют

нормальные алгорифмы, определен­

ным образом перерабатывающие слова в алфавите Л снова в слова в Л, то достаточно рассматривать нор­ мальные алгорифмы в каком-нибудь фиксированном (стандартном) двухбуквенном расширении алфавита А. Для этого расширения мы будем обычно использовать

обозначение

Аа.

 

 

 

6.

Распространение нормального алгорифма на более

широкий

алфавит. Пусть

91нормальный

алгорифм

в

алфавите

А{

и алфавит Л2 является расширением

А\.

Тогда

можно

рассмотреть

нормальный

алгорифм

91'

в алфавите Л 2

с той же самой схемой, что и 91. Очевидно,

для

любого слова Я в Л]

(29)

 

21 (Р) ~ %' (Р),

т. е. 91 и 91' вполне эквивалентны относительно А\. Нор-

 

НОРМАЛЬНЫЕ АЛГОРИФМЫ

67

мальный

алгорифм

51' будем

называть естественным

распространением 51 на алфавит

Л2 .

 

 

В некоторых случаях оказывается удобным, чтобы

алгорифм

5Г, удовлетворяющий

(29)

(всякий такой

ал­

горифм называется

распространением

51 на Л 2 ) , был

не­

применим к тем словам в Л2 , которые не являются сло­

вами в Л ь Этой цели легко достичь, приписав

к схеме 91

сверху группу формул вида т) —>• ц, где т } е Л 2

\ Л 1 . По­

лучившийся нормальный алгорифм, называемый фор­

мальным

распространением

51 на алфавит Л2 , очевидно,

вполне

эквивалентен 51

относительно

At и не

приме­

ним

к

тем словам в Л2 ,

которые не

являются

слова­

ми

в Ль

 

 

 

Использование возможности распространения

нор­

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

7. Теоремы сочетания нормальных алгорифмов. При практическом построении алгорифмов часто применяются приемы, состоящие во включении в искомый алгорифм в тех или иных сочетаниях уже известных ранее алго­ рифмов.

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

3'

68

АЛГОРИФМЫ И ПЕРЕЧИСЛИМЫЕ МНОЖЕСТВА

ГГЛ. ]

упрощать задачи

построения тех или иных конкретных

нормальных алгорифмов.

 

 

Доказательства приводимых ниже теорем сочетания

(за

исключением

теорем 11 —12) можно найти

в моно­

графии М а р к о в а

[2]. Отметим, что эти доказательства

сводятся к построению схемы искомого нормального ал­

горифма, исходя из схем подлежащих

сочетанию

нор­

мальных

алгорифмов. Таким

образом,

в

тех случаях,

когда построение нормального

алгорифма

выполняется

с помощью теорем сочетания, мы всегда

имеем принци­

пиальную

возможность явно выписать схему этого

алго­

рифма.

1) Композиция нормальных алгорифмов. Одним из наиболее часто встречающихся способов комбинирова­

ния

двух

алгорифмов

является их композиция, т. е. вы­

полнение

одного

алгорифма

непосредственно

вслед за

Р

31

И(Р/

 

э

mip))

другим

(рис. 3).

Имеет

 

место

следующая

теоре­

 

 

 

 

 

 

 

 

 

 

ма

композиции

нормаль-

Рис.

3. Композиция

нормальных

н ы х

алгорифмов.

Каковы

 

 

алгорифмов.

 

 

 

Т е о р е м а

4.

 

 

 

 

 

 

 

бы

ни

были

нормальные

алгорифмы

91 и 53, может быть построен

такой

нормаль­

ный

алгорифм

(S

над

объединением

А

их

алфавитов,

что

 

 

 

( Ц Р ) ~

23 (91 (Р))

 

 

 

 

 

 

 

 

 

 

 

 

(при

произвольном

слове

Р

в алфавите

А)*).

 

Чтобы дать

читателю

некоторое

представление, о том,

как доказываются

теоремы сочетания, мы наметим

дока­

зательство теоремы 4 в случае, когда

91 и 23 являются

алгорифмами в одном

и том же алфавите А (для пере­

хода к общему случаю достаточно воспользоваться фор­ мальными распространениями (см. п. 6) 21 и 23 на объ­ единение их алфавитов).

Итак, пусть 91 и 23 нормальные алгорифмы в алфа­ вите А. Сопоставим каждой букве п этого алфавита не­ которую новую букву fj, не принадлежащую Л, таким образом, чтобы разным буквам Л отвечали разные бук-

*) Если Ш — нормальный алгорифм в алфавите А{ н Н не является словом в этом алфавите, то выражение Ш(Р) считается лишенным смысла.

НОРМАЛЬНЫЕ АЛГОРИФМЫ

69

вы. Букву fj назовем двойником г). Двойники букв алфа­ вита Л, очевидно, образуют новый алфавит, который мы обозначим через А. Обозначим далее через а и $ две различные буквы, отличные как от всех букв Л, так и от всех букв А. Перейдем от алгорифма 21 к его замыка­ нию 2Г (см. п. 3 — напомним, что схема 2Г получается из схемы 21 присоединением снизу формулы -*-•) и за­ меним в схеме 21' каждую точку буквой а. Получив­ шуюся систему формул обозначим через 2Ха. Построим также систему формул 23а, получаемую из схемы 33" по­ средством замены всех букв алфавита А их двойниками, замены всех точек буквами р и после этого замены всех

формул вида -* Р (т. е. формул с пустой левой

частью)

на формулы а —• аР.

 

 

 

Рассмотрим теперь нормальный алгорифм & в алфа­

вите

Б = A U Л

U {ар} со схемой (в сокращенной

записи)

(30)

 

£ а - >а £

(£6= Л)

 

(31)

 

 

( £ е Л )

 

(32)

 

 

.(£> л е Л )

 

(33)

 

 

(Ее Л)

 

(34)

 

РЁ~*Р£

( £ е Л )

 

(35)

 

 

(С. Л ^ Л )

 

(36)

 

 

 

 

 

(37)

 

23а

 

 

 

(38)

 

21а

 

 

 

Пусть» Р произвольное

слово

в алфавите

Л. Ра­

бота

алгорифма

(Е над Р протекает в несколько

этапов.

а)

Формулы

групп (30) — (37) не

могут применяться

(заметим, что именно с этой целью — отличать формулы алгорифма 23 (им соответствуют формулы группы (37)) от формул 21 и вводились двойники). Далее, поскольку группа формул (38) содержит формулу с пустой левой частью (такова последняя формула этой группы), то применяется одна из формул группы (38). Алгорифм (5 воспроизводит работу алгорифма 21" (а следовательно, и 21). При этом, если

21:P K Q ,

70

АЛГОРИФМЫ И ПЕРЕЧИСЛИМЫЕ МНОЖЕСТВА

[ГЛ. 1

ТО

6: Р \=nQ,

и, таким образом, из неприменимости 9 к Р вытекает неприменимость 6 к Р. Пусть теперь 91 применим к Р и

(39)

 

 

% (Р) — Q.

 

 

В этом случае 91' заключительно переводит Р в Q. Из

построения

группы

формул (38) тогда

ясно, что (5

пере­

ведет Р в

некоторое

отличающееся

от Q лишь

при­

сутствием

одного экземпляра буквы а

(присутствие

этой

буквы и сигнализирует окончание работы 91). То

есть

при некоторых Q b

Q 2

таких, что

 

 

Q —Q,Q2 ,

выполняется

6:P\r=QlaQ2.

б) Применяются формулы группы (30), в резуль­ тате чего а «бежит» влево (при пустом Qi этот этап от­ падает) :

(Е: Qi<xQ2 h= ceQ,Q2.

Итак,

 

(40)

S: P H « Q .

в) Теперь нужно применять к Q, являющемуся ((39))

результатом работы

91 над словом Р, алгорифм 33. Пред­

варительно, однако, поскольку группа формул (37), представляющая алгорифм 93, записана в двойниках,

нужно перевести в

двойники и обрабатываемое слово.

Эта задача и решается

группами формул (31) — (32),

при помощи которых

 

*

(41)

S:

aQ\=aQ

(здесь через Q обозначен двойник слова Q, т. е. слово, получающееся из Q заменой всех его букв двойниками).

Описанный этап, очевидно, отпадает в случае

пу­

стого Q.

 

г) В слово aQ не входят левые части формул групп

(30) — (36). Поэтому применяются формулы группы

(37),

работа которых воспроизводит (в двойниках) работу ал­ горифма 93 над Q. Нетрудно убедиться (используя,

в частности, то обстоятельство, что при построении 93а

НОРМАЛЬНЫЕ АЛГОРИФМЫ

71

в формулы с пустой левой частью вставлялось а ) , что если

то

S:aQ\=naS.

Отсюда, ввиду (40) — (41), получаем, что если 53 не­ применим к Q, то (Е не применим к Р.

Пусть теперь S3 применим к Q и

(42)

 

 

 

 

53(Q) =

#.

 

 

 

 

 

Тогда

53" заключительно переводит

Q в R и так

же,

как

на этапе а), найдутся

#2 такие, что

 

 

 

(43)

 

 

 

 

R-RtRz

 

 

 

 

 

и

 

 

 

 

_

_

_

 

 

 

 

 

 

 

 

S: aQh=a/?,p/?2.

 

 

 

 

д)

Применяются

формулы

(33);

буква

«р»

«бежит»

влево

(этап отпадает

при пустом

R\):

 

 

 

 

 

 

 

G: a ^ p & h a P U

 

 

 

Итак

((40) —(41),

(42)),

 

 

 

 

 

 

 

 

 

 

 

G: PH=«P#-

 

 

 

 

е)

По

формулам

(34) — (35)

происходит

«очище­

ние»

слова R

от

двойников

(этот

этап

отпадает

при

пустом R):

 

 

6: аР^Иар/?.

 

 

 

 

 

 

 

 

 

 

 

 

 

ж)

По формуле

(36)

 

 

 

 

 

 

 

 

 

 

 

6: apfll--/?.

 

 

 

 

Итак,

ввиду

(39),

(42),

 

 

 

 

 

 

(44)

 

 

 

6 (Р) ~ 53 (51 (Р)),

 

 

 

что и требуется.

Заметим, что вполне строгое доказательство равен­

ства

(44) достаточно громоздко

( М а р к о в [2; гл. 3,

§ 3]).

 

 

Доказательство теоремы композиции

позволяет по схе­

мам

алгорифмов 91 и 53 построить

схему

их композиции,