Файл: Кушнер, Б. А. Лекции по конструктивному математическому анализу.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 15.10.2024
Просмотров: 136
Скачиваний: 0
НОРМАЛЬНЫЕ АЛГОРИФМЫ |
49 |
|
с этим запись Р е Л |
(где Р — слово, А — алфавит) |
озна |
чает, что Р является |
словом в алфавите Л. |
|
Применительно к словам общее интуитивное понятие алгорифма переходит в понятие алгорифма в данном ал фавите. Именно, под алгорифмом в данном алфавите А
мы понимаем точное предписание, определяющее дис кретный детерминированный процесс преобразования слов в этом алфавите, допускающий в качестве исход ных данных произвольные слова в Л и дающий в каче стве результатов (разумеется, в тех случаях, когда соот ветствующий процесс оканчивается) также слова в Л. Упомянутое предписание должно обладать характерны
ми чертами алгорифма, указанными |
в п. 5 введения. Вво |
|
димое ниже понятие |
«нормального |
алгорифма» (М а р- |
к о в [2]) направлено |
на уточнение описанной только что |
расплывчатой интуитивной концепции «алгорифма в дан ном алфавите».
Условимся о некоторых обозначениях.
Если 21 — алгорифм в алфавите А, Р — слово в этом алфавите и процесс применения алгорифма 21 к слову Р заканчивается, то мы пишем !?l (Р) . Результат работы в этом случае обозначается через 2t(P). Таким образом, запись
21 (P) = Q
(или
Q=p3l(P))
выражает то обстоятельство, что Q является результа том работы алгорифма 21 над словом Р. В этой ситуации мы будем также говорить, что 21 перерабатывает слово Р в слово Q.
Мы будем использовать также знак условного ра венства «~»: два выражения, соединенные этим знаком, означают одно и то же слово, если хотя бы одно из них имеет смысл. Таким образом, запись
2t(P)~93(Q)
выражает то обстоятельство, что !2t(P) равносильно !23(Q) и в случае выполнения хотя бы одного из этих ус ловий алгорифмы 21 и 33 дают одинаковый результат на словах Р и Q.
50 |
АЛГОРИФМЫ И |
ПЕРЕЧИСЛИМЫЕ МНОЖЕСТВА |
[ГЛ. 1 |
|
Алгорифм 91 будем |
называть алгорифмом над |
алфа |
витом Л, если он является алгорифмом в некотором рас
ширении алфавита |
А. |
|
|
А. Будем |
|||
Пусть |
91ь |
912 — алгорифмы над алфавитом |
|||||
говорить, что эти алгорифмы |
эквивалентны относительно |
||||||
алфавита |
А, |
если выполнены |
условия |
|
|||
1) |
всякий |
раз, |
когда |
911 перерабатывает |
какое-ни |
||
будь |
слово Р в алфавите А |
в некоторое слово Q в том |
|||||
же алфавите, алгорифм 912 также перерабатывает Р в Q; |
|||||||
2) |
то же с переменой |
ролей 91[ и 912. |
|
||||
Алгорифмы $1 |
и 9t2 называются вполне |
эквивалент |
|||||
ными |
относительно |
алфавита |
А, если |
|
|||
1) всякий раз, когда 9ii применим к какому-нибудь |
|||||||
слову |
Р |
в А, |
912 также применим к этому слову и дает |
||||
тот же самый результат, что и 9li; |
|
||||||
2) |
то |
же |
с переменой |
ролей 9U и 91г. |
|
С помощью знака условного равенства свойство полной
эквивалентности алгорифмов 9li, 912 относительно |
алфа |
|||||
вита Л, очевидно, выражается так: |
|
|
|
|||
|
|
91, (Р)с±%(Р) |
|
|
|
|
для любого слова Р в алфавите |
А. |
|
|
|
||
Пусть Ли |
Мг — множества |
слов |
в |
некотором |
алфа |
|
вите А. Алгорифм |
91 будем называть |
алгорифмом |
типа |
|||
(Ж\~г>- JCi), |
если |
91 перерабатывает |
всякое слово |
из Ли |
к которому он применим, в слово из Л?.. Если, сверх того,
91 применим к любому слову из |
Ли то |
мы |
будем |
гово |
рить, что 91 является алгорифмом |
типа |
(Л\-+ Л%). |
От |
|
метим, что в соответствии с принятым нами |
соглашением |
обозначать множество всех слов в данном алфавите так
же, как и сам алфавит, |
утверждение «алгорифм |
91 |
яв |
ляется алгорифмом типа |
( Л т * Л ) » означает, что |
91 |
пе |
рерабатывает всякое слово в алфавите А, к которому он применим, в слово в алфавите А.
Очевидно, что для алгорифмов |
типа |
( Л т * Л ) |
эквива |
|
лентность относительно |
алфавита |
Л |
равносильна пол |
|
ной эквивалентности относительно |
А. |
|
|
|
Ясно, что в тех случаях, когда |
нас интересует |
работа |
||
данного алгорифма не |
на всех словах |
его алфавита * ) , |
*) Как увидит читатель, в большинстве случаев именно гак и обстоит дело,
НОРМАЛЬНЫЕ АЛГОРИФМЫ |
51 |
а лишь на словах более узкого алфавита А, можно дан ный алгорифм заменить любым алгорифмом, вполне эк вивалентным ему относительно Л. Если, сверх того, мы интересуемся лишь теми результатами работы исход ного алгорифма, которые являются словами в Л, то при упомянутой замене можно удовлетвориться алгориф
мами, |
эквивалентными |
данному относительно А. |
|
|||||||||
2. |
Будем |
говорить, |
что слово Р входит в слово |
Q, |
||||||||
если существуют слова R] и R2 |
такие, что *) |
|
|
|
||||||||
(2) |
|
|
|
|
Q == |
R,PR2. |
|
|
|
|
|
|
Например, слово «ба» входит в слово «баобаб». |
Из |
|||||||||||
этого примера видно, что при фиксированных Р и Q |
||||||||||||
слова R\, R2 в представлении (2) определяются, вообще |
||||||||||||
говоря, неоднозначно. |
Чтобы различать |
|
возникающие |
|||||||||
здесь |
возможности, поступим |
следующим |
образом |
(ср. |
||||||||
М а р к о в |
[2]). |
|
|
|
|
|
|
|
|
|
||
Пусть |
мы |
рассматриваем |
слова |
в некотором |
алфа |
|||||||
вите А. Обозначим через |
ос какую-нибудь |
букву, |
не при |
|||||||||
надлежащую Л, и рассмотрим слова вида |
|
|
|
|
||||||||
(3) |
|
|
|
|
|
RtaPaR2, |
|
|
|
|
|
|
которые |
будем |
называть |
вхождениями |
в |
алфавите |
А. |
||||||
При этом слова Ri и |
Р |
называются соответственно |
ле |
|||||||||
вым крылом |
и |
основой |
вхождения |
(3). Вхождения |
(3), |
|||||||
для которых имеет место |
|
|
|
|
|
|
|
|||||
|
|
|
|
|
Q = |
R{PR2, |
|
|
|
|
|
мы называем вхождениями в слово Q, или, более под робно, вхождениями слова Р в слово Q.
Совершенно очевидно, что слово Р тогда и только
тогда |
входит в слово Q, когда существует по крайней |
|
мере одно вхождение Р в Q. |
|
|
Возвращаясь к приведенному выше примеру, напи |
||
шем |
все вхождения слова «ба» в слово «баобаб». Этих |
|
вхождений два, именно: |
|
|
(4) |
абаао |
баб |
и |
баоа |
бааб. |
|
*) Если Р и Q — слова, то PQ означает слово, получающееся приписыванием к Р справа слова Q.
52 АЛГОРИФМЫ И ПЕРЕЧИСЛИМЫЕ МНОЖЕСТВА [ГЛ. I
В качестве другого примера рассмотрим вхождения пу стого слова в слово «ба». Таких вхождений имеется три: ааба, бааа и бааа. Вообще, число вхождений пустого слова в слово длины п равно п -f- 1.
Вхождение (3) слова Р в слово Q будем называть первым вхождением Р в Q, если длина левого крыла любого вхождения Р в Q не меньше длины Ri. Напри мер, вхождение (4) является первым вхождением слова
«ба» |
в слово |
«баобаб». |
|
|
|
|
|
|
||
Пусть |
R\aPaR2 |
— вхождение |
и |
S — слово. |
Слово |
|||||
R1SR2 будем называть результатом подстановки |
слова S |
|||||||||
вместо вхождения R\aPccR2. Например, |
слово |
«баркас» |
||||||||
есть результат |
подстановки |
слова |
«бар» вместо |
вхож |
||||||
дения |
«акаракас» |
(которое |
является |
первым |
вхожде |
|||||
нием |
слова |
«кар» |
в слово «каркас»), |
а |
слово |
«переход» |
||||
есть результат подстановки слова «пере» |
вместо |
первого |
||||||||
вхождения пустого слова в слово |
«ход». |
|
|
|
||||||
3. |
В основе |
определения |
нормального |
алгорифма |
ле |
жит та идея, что любой алгорифмический процесс над словами может быть сведен к выполнению локальных преобразований слов, т. е. к замене вхождений одних слов в другие некоторыми третьими словами. При этом в описании алгорифма должен быть указан список раз решенных преобразований такого типа, т. е. должно быть указано, какие слова и на какие можно заменять. Кроме того, поскольку одни слова могут входить в другие не сколькими различными способами, нужно уточнить, вме сто каких именно вхождений следует выполнять подста новки из упомянутого только что списка. Наконец, для однозначной определенности процесса применения алго рифма надлежит как-то фиксировать очередность, в ко торой выполняются разрешенные подстановки. Опреде ление нормального алгорифма, к которому мы перехо дим, предлагает некоторый естественный вариант такого рода уточнений.
Условимся, что буквы «—*•» и «•» не принадлежат |
рас |
|||||
сматриваемым алфавитам. Пусть Р и |
Q — слова |
в |
не |
|||
котором алфавите А. Слова P-+Q |
и P-*--Q |
|
мы |
|||
называем |
соответственно |
простой |
и |
заключительной |
||
формулой |
подстановки в |
алфавите |
А |
(при этом Р |
и |
Q |
называются левой и правой частью соответствующей формулы подстановки). Нормальный алгорифм в алфа-