Текст
                    математическая
логика
и основания
математики
А.А.Марков
Н. М. Нагорный
ТЕОРИЯ
АЛГОРИФМОВ
Ш МОСКВА «НАУКА»
ГЛАВНАЯ РЕДАКЦИЯ
ФИЗИКО-МАТЕМАТИЧЕСКОЙ ЛИТЕРАТУРЫ
1984


И> 22.12 M26 УДК 517 Марков А. А., Нагорный Н. М. Теория алгорифмов.—М.: Наука. Главная редакция физико-математической литературы, 1984.— Ао2 С. В книге на основе понятия нормального алгорифма излагается общая теория алгорифмов и некоторые ее применения. Значительное внимание уделяется логическим и, в частности, семантическим аспектам этой теории. Для математиков, интересующихся основаниями математики, матема- математической логикой и теорией алгорифмов. Рецензент: доктор физико-математических наук Н. А. Шанин Андрей Андреевич Марков Николай Макарович Нагорный ТЕОРИЯ АЛГОРИФМОВ Редакторы Б. А. Кушнер, В. В. Донч'.нко Техн. редактор В. Н. Кондакова Корректоры О. А. Сигал, И. Я- Кришталь ИБ № 12125 Сдано в набор 30.03.84. Подписано к печати 30.07.84. Формат 8 4X108»/и. Бумага тип. № 1. Литературная гарнитура. Высокая печать. Усл. печ. л. 22,79. Усл. ко.-отт. 22,77. Уч.-изд. л. 24.08. Тираж 7000 экз. Заказ№2864. Цена 3 р. 30 к. Издательство «Наука» Главная редакция физико-математической литературы 117071 Москва В-71, Ленинский проспект, 15 Набрано в Ордена Октябрьской Революции и ордена Трудового Красного Знамени Первой Образцовой типографий имени А. А. Жданова Союзполиграфпрома при Государственном комитете СССР по делам издательств, полиграфии и книжной торговли. 113054 Москва, Валовая, 28 Отпечатано во 2-й типографии издательства «Наука». 121099 Москва, Шубннскнй пер., 10. Зак. 582 1702020000—144 М 053@2)-84~40-84 © Издательство «Наука». Главная редакция физико-математической литературы, 19R4 ОГЛАВЛЕНИЕ Предисловие 6 Важнейшие обозначения 22 Глава I Введение. Основные принципы конструктивной семантики .... 23 § 1. Конструктивные процессы и конструктивные объекты . . 23 § 2. Слова 26 § 3. Языки. Высказывания 32 § 4. Абстракция потенциальной осуществимости 34 § 5. Абстракция отождествления 35 § 6. Существование конструктивного объекта 36 § 7. Дизъюнкции 37 § 8. Проблема построения конструкшвной математической ло- логики 38 § 9. Высказывания общности 39 § 10. Переменные. Предикаты 44 §11. Прямое отрицание. Разрешимые высказывания .47 §12. Полуразрешимые высказывания. Усиленное отрицание . . 52 § 13. Материальная импликация 54 § 14. Усиленная импликация 58 § 15. Дедуктивная импликация 61 § 16. Идея ступенчатой семантической системы . . ... 64 Глава II Семиотика линейно расположенных конструктивных объектов ... 66 § 17. Слова (продолжение §2) 66 § 18. Начала и концы слов 74 § 19. Длина слова. Проекция слова на алфавит 86 § 20. Умножение слова на натуральное число 88 §21. Теорема о наименьшем числе 89 § 22. Пары слов 93 §23. Вхождения 94 § 24. Системы слов 106 §25. Схемы П6 1»
4 ОГЛАВЛЕНИЕ Глава III Нормальные алгорифмы: определение и примеры 135 §26. Алгорифмы 135 §27. Нормальные алгорифмы. Принцип нормализации .... 138 § 28. Присоединяющие алгорифмы 146 § 29. Сокращающие алгорифмы 149 § 30. Разветвляющий алгорифм 153 §31. Удваивающий алгорифм 157 §32. Обращающий алгорифм 166 § 33. Алгорифмы побуквенного кодирования и двойного проекти- проектирования 171 §34. Некоторые арифметические алгорифмы 180 Глава IV Сочетания нормальных алгорифмов 187 §35. Распространения алгорифма 187 §36. Замыкание алгорифма 196 §37. Композиция алгорифмов 19 § 38. Объединение алгорифмов 219 §39. Разветвление алгорифмов 224 §40. Повторение алгорифма 230 §41. Перевод алгорифма 254 Глава V Универсальный алгорифм 280 §42. Формулировка теоремы об универсальном алгорифме . . 280 §43. Случай двухбуквенного алфавита 282 §44. Доказательство теоремы об универсальном алгорифме . . 291 §45. Видоизменение теоремы об универсальном алгорифме . . 296 Глава VI Основные теоремы невозможности алгорифмов 299 § 46. Понятие о массовой алгорифмической проблеме 299 §47. Самоприменимые и несамоприменимые алгорифмы . . . 302 §48. Проблема распознавания применимости алгорифма к ис- исходному данному 308 §49. Теоретико-множественный комментарий к §§ 47 и 48 . . . 312 §50. Конструктивный комментарий к §§ 47 и 48 313 §51. Проблема распознавания аннулирования 315 §52. Сложностной подход к проблеме распознавания примени- применимости 317 § 53. Непополнимый алгорифм 323 Г л а в а VII Вычислимые вербальные функции 330 § 54. Вычислимые вербальные функции 330 § 55. Теорема о неподвижной точке 335 § 56. Распознавание инвариантных свойств вычислимых вер- вербальных функций 338 1 ОГЛАВЛЕНИЬ 5 Глава VIII Проблема тождества для полугрупп (проблема Туэ) 343 § 57. Ассоциативные исчисления 344 § 58. Построение ассоциативного исчисления с неразрешимой проблемой эквивалентности 350 § 59. Проблема эквивалентности пустому слову 370 § 60. Метод вычислимых инвариантов 385 §61. Проблемы распознавания свойств ассоциативных исчисле- исчислений 389 Глава IX Алгорифмы и математический анализ 398 § 62. Конструктивные действительные числа и конструктивные действительные функции 399 § 63. Пример Шпеккера 402 § 64. Проблема распознавания равенства действительных чисел 405 § 65. Распознавание мажорирования. Арифметические дейст- действия. Кусочное задание функций 410 § 66. Теорема Коши о нуле знакопеременной непрерывной функ- функции 414 § 67. Принцип конструктивного подбора 417 § 68. Теорема Коши о нуле знакопеременной непрерывной функ- функции (продолжение § 66) 419 Литература 422 Именной указатель 427 Предметный указатель 42Е
ПРЕДИСЛОВИЕ Настоящая книга выходит в свет, когда ее главного автора, одного из крупнейших математиков нашего времени Андрея Андреевича Маркова A903—1979) уже нет в живых. По долгу памяти мне, его ученику и соавтору, следовало бы предпослать ей строки, в которых читателю хотя бы вкратце было рассказано о выдающемся вкладе, который А. А. Марков внес в развитые теории алгорифмов и в создание конструктивной математики. Кроме того, я, вероятно, должен был бы рассказать о его обще- общематематических взглядах, его творческой манере, о неповто- неповторимом своеобразии самой его личности. Однако сделать это нелегко. Тем более — в рамках пре- предисловия к книге. Нелегко уже хотя бы потому, что невозмож- невозможно просто и однозначно отнести деятельность А. А. Маркова к какой-нибудь одной конкретной области науки. Так, будучи математиком, он в последний, математико-логический период своей деятельности, длившийся более тридцати лет, создал соб- собственную концепцию конструктивизма — концепцию, заняв- занявшую ныне прочное место в основаниях математики и породив- породившую обширную научную проблематику. Его взгляды, продол- продолжившие и развившие на современной основе идеи таких блестя- блестящих мыслителей, как Л. Э. Я. Брауэр и Г. Вейль, подняли на новую ступень дискуссию об эффективности применяемых в математике средств и позволяют с полным правом охаракте- охарактеризовать его как глубокого, оригинально мыслящего филосо- философа и логика. В математике тоже невозможно связать деятельность А. А. Маркова с какой-нибудь одной научной дисциплиной. У него можно встретить почти одновременно опубликованные работы по аксиоматической теории множеств и по теории пла- пластичности. Занимаясь тончайшими проблемами конструктивной семантики, он в то же самое время создавал язык для описания работы вычислительных машин. Он с пристальным вниманием следил за развитием теоретической кибернетики и внес в этот раздел науки существенный вклад. Он проявлял также живой I ПРЕДИСЛОВИЕ 7 интерес к работам по математической экономике и по матема- математической лингвистике, к математической проблематике биоло- биологии. Круг занимавших его вопросов был настолько широк, что упоминания о его результатах можно встретить даже в учебни- учебниках по геофизике *). Сегодня большой известностью пользуются ставшие уже классическими работы А. А. Маркова его последнего перио- периода — периода занятий основаниями математики, теорией ал- алгорифмов и математической логикой. Но математики старше- старшего поколения особенно высоко ценят его работы 1940—1946 гг. по свободным топологическим группам. Так, П. С. Александ- Александров неоднократно отзывался о них как о лучшем достижении А. А. Маркова в математике. Еще раньше, в начале 30-х годов, А. А. Марков опубликовал серию глубоких работ по общей тео- теории динамических систем. Именно он,— что теперь, к сожале- сожалению, знают лишь немногие,— впервые дал независящее от дифференциальных уравнений общее определение динамиче- динамической системы **). А. А. Марков оставил непреходящий след во многих об- областях математики. Но первые опубликованные им циклы работ непосредственно к математике не относились — это были работы по теоретической физике и по небесной механике ***). Кроме того, в ранние студенческие годы, когда А. А. Марков намеревался стать химиком, им были выполнены и опублико- опубликованы работы по химии. Обладая огромным собственным научным опытом, А. А. Мар- Марков располагал обширными познаниями в самых разнообраз- разнообразных областях науки. По складу своего ума и по характеру науч- научной деятельности он был, как об этом говорил в своей прощаль- прощальной речи Н. А. Шанин, естествоиспытателем, и его подход к математике был подходом естествоиспытателя, стремящегося придать развитию теории такое направление, при котором ее результаты имели бы возможно более реальный и ощутимый смысл. В значительной мере этим и объясняется резкое неприя- неприятие А. А. Марковым теории множеств в качестве основы для *) Б у р с и а н В. Р. Теория электромагнитных полей, применяе- применяемых в электроразведке. T.I.— 2-е изд.— Л.: Недра, 1972. (См. с. 176, где излагается рассмотренный А. А. Марковым важнейший частный случай задачи о точечном электроде в слоистой среде.) **) См. Ю. В. Л и н н и к и Н. А. Ш а ни н [1]. •••) По образованию А. А. Марков—физик. В 1924 г. он окончил физи- физическое отделение физико-математического факультета Лениградского уни- университета, после чего непродолжительное время работал в Государствен- Государственном физико-техническом институте. С 1925 по 1928 г. он был аспирантом, а затем до 1935 г.— научным сотрудником Астрономического института.
8 ПРЕДИСЛОВИЕ построения математики, его стремление строить математику конструктивно. Нелегко в немногих словах объяснить и то, каким образом при тщательно подчеркиваемой неспешности, обстоятельности, выглядевшей иногда почти медлительностью, при его манере все делать самому, не прибегая к посторонней помощи даже в мелочах, А. А. Маркову удалось оставить такое огромное науч- научное наследие. Непросто рассказать и об истоках тех эстети- эстетических и стилистических норм, которых А. А. Марков при- придерживался в своих работах и соблюдения которых он требо- требовал и от своих учеников. Было бы интересно — хотя и непросто — рассказать о не- необычной манере поведения А. А. Маркова, о его наблюдатель- наблюдательности, тонком остроумии, о его неожиданных, порой парадок- парадоксальных, но неизменно метких и точных суждениях, которые часто бывали облечены в острую, незабываемую по своей арти- артистичности форму. Сын великого русского математика академика Андрея Ан- Андреевича Маркова A856—1922) А. А. Марков-младший по своему рождению принадлежал к высшему слою российской интеллигенции, давшей нашей стране многих замечательных людей. Лучшие традиции этой среды — вера в высокую мис- миссию культуры, самоотверженная любовь к науке, четкость мо- моральных принципов, ясная иерархия жизненных ценностей — нашли отчетливое выражение в характере и даже во внешнем облике А. А. Маркова, удивительно благородного, стойкого и в высшем смысле слова демократичного, каким его знали и любили его ученики и все, кто был к нему в той или иной мере близок. Более полный рассказ об А. А. Маркове требует того, что- чтобы к нему обратиться отдельно, и потому он должен быть отло- отложен на будущее. Наилучший же доступный мне в настоящее время способ почтить память моего учителя состоит в том, что- чтобы постараться с наибольшей тщательностью довести до конца начатый им труд. * * * Одним из самых существенных факторов, определяющих значение математики и место ее в современной науке, является точность и высокая степень универсальности изобразительных средств, которыми она располагает. Эти средства позволяют строить уточненные модели самых разнообразных по своей природе фундаментальных научных понятий, в том числе и математических. Такие модели, будучи однажды построены, I ПРЕДИСЛОВИЕ g затем становятся доступными рассмотрению с помощью точ- точных средств, и в изучении описываемых ими понятий, как пра- правило, наступает заметный прогресс. Разработка такого рода уточненной модели была произве- произведена во второй половине 30-х годов нашего столетия и для од- одного из важнейших и употребительнейших понятий математи- математики — а теперь и не только ее одной — понятия «алгорифма» *). В математическом обиходе под алгорифмом принято пони- понимать «точное предписание, определяющее вычислительный процесс, ведущий от варьируемых исходных данных к искомо- искомому результату» (А. А. М а р к о в [2], с. 3). При этом выраже- выражение «вычислительный процесс» должно, конечно, трактовать- трактоваться в широком смысле слова, а именно, как дискретный процесс преобразования знаковых комплексов определенных типов. В качестве типичного примера алгорифма в литературе обычно приводят пользующийся всеобщей известностью алго- алгорифм Евклида для разыскания наибольшего общего делителя двух натуральных чисел. Алгорифмами являются также из- известные еще из начальной школы правила арифметических действий над целыми числами, записанными в десятичной сис- системе. Читатель сам вспомнит другие встречавшиеся в его прак- практике примеры **). Используя понятие алгорифма, математика до определен- определенного времени может довольствоваться несколько расплывчатой, неуточненной формулировкой этого понятия, подобной той, которая была приведена выше. Во всяком случае, так дело может обстоять до тех пор, пока речь будет идти о построении конкретных алгорифмов для решения таких-то и таких-то кон- конкретных задач. Но как только мы, придя к предположению о возможной неразрешимости какой-либо интересующей нас алгорифмической проблемы ***), начнем пытаться доказывать, *) В сходном смысле в математике употребляются также термины «предписание», «метод», «способ» и т. п. Многие авторы пользуются озна- означающим то же самое понятие словом «алгоритм». **) Иногда, впрочем, в литературе к алгорифмам относят (чаще всего просто по недоразумению) и такие вычислительные рекомендации, которые при ближайшем рассмотрении алгорифмами не оказываются. Типичным примером может служить знаменитый «метод деления отрезка пополам», обычно применяемый в доказательстве теоремы Коши о нуле знакоперемен- знакопеременной непрерывной функции. Причины, по которым этот метод алгорифмом считаться не может, излагаются нами в § 64. Тем не менее он все-таки имеет некоторое алгорифмическое содержание, которое и выясняется нами в §68.2. **•) Неразрешимыми, как мы теперь знаем, оказались такие знамени- знаменитые алгорифмические проблемы, как проблема разрешимости для исчисле- исчисления предикатов, проблема тождества для полугрупп и для групп, проб- проблема гомеоморфии полиэдров, 10-я проблема Гильберта. Гипотеза о неразре-
10 ПРЕДИСЛОВИЕ что она действительно имеет место, мы в общем случае сразу же столкнемся с необходимостью уточнения понятия алгорифма, его стандартизации. В самом деле, чтобы иметь возможность доказывать несуществование алгорифма, решающего задачу, для решения которой алгорифм a priori мог бы существовать*), мы должны точно уяснить себе тип объекта, предположение о существовании которого будет опровергаться. Попытка осознания этой ситуации, с одной стороны, и ши- широкие исследования в области оснований математики и матема- математической логики — с другой, привели к тому, что к середине 30-х годов проблема уточнения общего понятия алгорифма стала „носиться в воздухе" и в 1936 г. были практически одно- одновременно (и независимо друг от друга) опубликованы работы А. Чё р ча[1], С. К. Клини [1] **), А. М. Т ьюр и н г а [1] и Э. Л. П о с т а [1], в которых эта проблема была решена. В техническом отношении полученные решения были различ- различными: ^-конверсии Чёрча, рекурсивные функции Эрбрана — Гёделя—Клини и машины Тьюринга ***) внешне не походили друг на друга. Но вскоре была установлена взаимная модели- руемость этих понятий, и А. Чёрчем было высказано и обосно- обосновано положение о том, что найденное уточнение является адек- адекватным, т. е. что оно правильно отражает сущность понятия эффективной вычислимости. Впоследствии это положение было С. К. Клини названо — в честь его автора — «тезисом Чёр- Чёрча» ****.). От этого момента и можно отсчитывать возраст тео- теории алгорифмов как точной математической дисциплины. Произведенное уточнение дало немедленный эффект: уже в том же 1936 г. А. Ч ё р ч е м [2] была доказана неразреши- неразрешимость знаменитой Entscheidungsproblem — проблемы разре- разрешимости данной конкретной алгорифмическои проблемы может возникнуть в результате систематических неудач при настойчивых попытках найтн решающий ее алгорифм, что в перечисленных случаях и имело место факти- фактически. Однако иногда ее неразрешимость может быть предугадана на осно- основе общих соображений (см., например, § 64.1). •) Тем самым мы подчеркиваем, что речь идет не о задачах типа «построить алгорифм, который по любым трем точкам на плоскости указы- указывал бы проходящую через них прямую». Неразрешимость такого рода задач, конечно, может быть установлена и без уточнения понятия алгорифма. В приведенном примере она вытекает из существования трех точек, не ле- лежащих на одной прямой. ••) Клини основывался при этом на более ранних идеях Ж- Эрбра- Эрбрана и К- Гёделя. ••*) Финитные комбинаторные процессы Поста имеют большое сход- сходство с машинами Тьюринга, хотя и были определены независимо от них. **••) Интересное изложение истории этого вопроса можно найти у С. К. Клини в [6]. ПРЕДИСЛОВИЕ 11 I I шимости для классического исчисления предикатов, которую в то время Д. Гильберт считал главной проблемой математи- математической логики. В 1947 г. А. А. М а р к о в ы м [5], [6] и Э. Л. П о с т о м [2] независимо друг от друга была установлена неразрешимость проблемы Туэ — проблемы тождества для полугрупп. Тем са- самым был указан первый пример неразрешимой алгорифмиче- алгорифмическои проблемы собственно математического (не математи ко-ло- ко-логического) характера. В 1945 г. С. К. К л и н и [3], используя уточненное понятие алгорифма, дал интерпретацию интуиционистской арифмети- арифметики, чем радикально продвинул разработку основ конструк- конструктивной семантики. Эта работа Клини внесла существенный вклад в развитие конструктивной логики. А. А. Марков от- отмечал, что она оказала сильное влияние на эволюцию его взгля- взглядов на проблемы обоснования математики *). С первых же шагов теории алгорифмов (Тьюринг [11, [2]) начались исследования, направленные на выяснение степе- степени эффективности ряда фундаментальных понятий и конструк- конструкций математического анализа. С течением времени эти иссле- исследования привели с созданию так называемого «конструктив- «конструктивного математического анализа», который в своем построена основывается не на отягощенных известными трудностями тра- традиционных концепциях теории множеств, а на значительно бо- более отчетливой (по крайней мере в принципиальном отношении основе — на уточненном понятии алгорифма и на конструктив ном понимании математических суждений **). С тех пор с понятием алгорифма в математике оказалиа связанными многие замечательные достижения. Наряду с полу ченными конкретными результатами были выработаны таюю некоторые важные общие представления. В частности, подтвер жденная Ю. В. Матиясевичем[2] гипотеза М. Девис! о совпадении рекурсивно перечислимых множеств с диофанто выми вскрыла особое положение, которое в математике зани мают полиномы, то есть, по существу говоря, первоначальны! арифметические действия — сложение и умножение. Особен но возросла роль понятия алгорифма в связи с появление]* электронных вычислительных машин и развитием вычисли тельной математики. Сознавая, однако, невозможность сколь •) Подробный анализ этих взглядов читатель найдет в юбилейно статье Н. М. Н а г о р н о г о и Н. А. III а н и н а [1]. **) Ряд результатов и характерных для конструктивного анализа пс становок задач излагается в специальной — девятой — главе нашей книги
12 ПРЕДИСЛОВИЕ ко-нибудь полного охвата *) относящейся к этому понятию проблематики, мы решили ограничиться в нашей книге изло- изложением лишь некоторых, наиболее важных фактов общей тео- теории алгорифмов, сопроводив его рядом приложений этой теории к конкретным математическим ситуациям. Значительное вни- внимание при этом мы уделяем логическому анализу применяемых средств. * * * В качестве основы изложения в данной книге приняты нор- нормальные алгорифмы Маркова**). Они представляют собой уточ- уточнение общего понятия алгорифма, найденное А. А. Марковым в ходе поисков возможно более простого изложения его уже упоминавшегося решения проблемы Туэ. Математик, знако- знакомящийся с опубликованным А. А. Марковым решением и не вполне осведомленный относительно того, каким образом оно было получено, часто бывает удивлен сравнительной просто- простотой, с которой этот результат достигается. Однако ощущение это обманчиво. Не следует забывать, что прозрачность и изя- изящество чрезвычайно глубокого по замыслу доказательства тео- теоремы о представлении нормальных алгорифмов ассоциативны- ассоциативными исчислениями ***), играющей в рассматриваемом круге вопросов центральную роль, явились следствием блестяще выбранного определения нормального алгорифма и что дока- доказательство ее первоначального варианта, основанное на исчис- исчислении Я-конверсий, было куда более громоздким и сложным. Как это и естественно было предполагать, нормальные ал- алгорифмы оказались эквивалентными рекусивным функциям (см. В. К. Детловс [1]), а потому и другим ранее произве- произведенным уточнениям. В развернутом виде теория нормальных алгорифмов впер- впервые была изложена А. А. Марковым в его теперь уже ставшей классической монографии [2] ****). Понятие нормального алго- алгорифма, обладающее многими достоинствами как принципиаль- •) Читателю можно рекомендовать обзор В. А. У с п е н- скогоиА. Л. Семенова [2], являющийся переработанной версией их же обзора [1]. **) Другие уточнения понятия алгорифма нами не рассматриваются. Читатель может познакомиться с ними по книгам Д. Гильберта и П. Бернайса [1], [2], С. К. К л и н и [5], А. И. Мальцева [1], Ю. И. М а н и н а [1], Э. Мендельсона [1], Р. П е т е р [1], X. Р о д- «ерса [1], В. А.? Уь"с"п е н с к о г о [2], [31. ***) В нашей книге это — теорема § 58.1.1. **•*) Определение нормального алгорифма, примеры и краткий очерк общей теории были опубликованы ранее в его статье [1]. ПРЕДИСЛОВИЕ 13 ного, так и методического характера, оказалось плодотворным и удобным. Выдержав испытание временем и доказав свою жизнеспособность, оно — наряду с понятиями рекурсивной функции и машины Тьюринга — прочно вошло в научный оби- обиход современной теории алгорифмов. В частности, оно стало основным рабочим инструментом большой научной школы, созданной и возглавлявшейся А. А. Марковым. Вскоре после опубликования монография [2] была пере- переведена на английский (дважды) и китайский языки. Однако русское ее издание, вышедшее небольшим тиражом, давно стало библиографической редкостью, и в практически доступ- доступной читателю научной и учебной литературе на русском языке теория нормальных алгорифмов в настоящее время имеется лишь в конспективном изложении, неизбежно не затрагиваю- затрагивающем многих важных обстоятельств. Таким образом, потреб- потребность в новой книге по теории нормальных алгорифмов стала ощущаться уже давно. Она еще более возросла, когда возник- возникла необходимость отразить некоторые новые появившиеся в этой теории подходы и результаты. Кроме того, со временем потребовалось перевести на язык нормальных алгорифмов ряд классических фактов общей теории, не нашедших в свое время отражения в монографии [2]. Проект написания книги, которая бы удовлетворяла эту потребность, обсуждался А. А. Марковым неоднократно, особенно в период его занятий ступенчатой семантической си- системой, которую теперь часто называют «башней Маркова». Критически анализируя общие проблемы возможного устройст- устройства конструктивной математики, А. А. Марков настойчиво под- подчеркивал свою неудовлетворенность тем обстоятельством, что конструктивная логика, с одной стороны, и конкретные теории конструктивной математики — с другой, обычно излагаются раздельно, в известном отрыве друг от друга. Он указывал на необходимость поиска таких путей изложения, когда теория алгорифмов, конструктивная логика и продвинутые разделы конструктивной математики (на первых порах конкретно имел- имелся в виду конструктивный математический анализ) излагались бы в рамках единой теории, основанной на едином языке и на единой семантике этого языка. Собственно говоря, башня Маркова и была задумана как основа такой теории, объединяю- объединяющая теорию алгорифмов с конструктивной логикой. Изложению башни, естественно, должно было предшество- предшествовать изложение соответствующим образом обработанной „об- „общедоступной" теории нормальных алгорифмов. Будучи на- написано, оно затем могло бы быть использовано и для других
ПРЕДИСЛОВИЕ 14 целей (дальнейший Материал можно было бы выбирать в зави- зависимости от собственных склонностей, запланированного объе- объема книги и т. Д.). Ь А. А. Марков трижды начинал работу над книгой, но тяже- f' лая болезнь не позволила ему в полной мере осуществить свой замысел. Один из вариантов рукописи был продвинут А. А. Марко- ж вым достаточно далеко. Своим глубоким замыслом и последо- I вательностью, которой этот замысел реализуется, он произ- производит поразительное впечатление. Поражает сложная и вместе с тем прозрачная идея башни. Поражает неожиданное стремле- ние А. А. Маркова сблизить — оставаясь в рамках конструк- конструктивной концепции — свою точку зрения со взглядами Л. Э. Я. Брауэра. Поражает блистательно, с подлинным ху- художественным мастерством выдержанный индуктивный стиль изложения (об этом впоследствии мы скажем более подробно). I: Этот вариант и положен мною в основу книги. Разумеется, . он допускал различные продолжения. Конкретные очертания книга, к сожалению, приобрела уже тогда, когда А. А. Марко- Маркова не было в живых. Окончательное решение относительно ее плана пришлось принять с учетом оставшихся рукописей, устных замечаний А. А. Маркова по поводу назначения и стиля | планировавшейся книги и соображений, высказывавшихся им | в связи с курсом теории алгорифмов, который я по его инициа- | тиве и пользуясь его советами более двадцати раз читал в МГУ |*в МФТИ *). я опирался также на ряд опубликованных работ ^ л, ^аРкова- и> разумеется, в первую очередь на его моно- монографию [2], с которой у данной книги много общего в строе- строении. Название этой монографии я, чтобы подчеркнуть преемст- Эенность, решил сохранить и за вновь написанной книгой. Каждому, Кто изучал работы А. А. Маркова, известна их строгая продуманность и тщательность, с которой он подходил к их написанию, и в этом смысле книга, если бы она вышла при его жизни, во многом оказалась бы иной, чем она предстает перед читателем теперь. Можно, однако, надеяться, что и в та- таком ее варианте она тоже не вызвала бы с его стороны слишком серьезных нареканий. * * * Теперь следует сказать о некоторых существенных отли- отличиях данной книги от монографии fe]. Одно из них заключается в том, что в ней уделяется значи- тельно большее, чем в [2], внимание логическому аспекту из- •) Материал этих декций частйЧЦ0 использован при написании книги. предисловие 15 ложення. В частности, в книгу введен ряд специальных пара- параграфов (§§ 1—16 *), 50, 67), посвященных чисто семантической стороне вопроса. Особенное внимание уделяется семантике импликации и отрицания — связок, понимание которых, как читатель будет иметь возможность убедиться, вызывает дейст- действительные трудности. Поскольку, однако, семантика в данной книге играет подчиненную роль, число семантических разъяс- разъяснений по мере удаления от начала книги (и, значит, по мере возрастания опытности читателя) мы постепенно сводим „на нет", оставляя рутинные детали читателю. Параграф 67 посвящен рассмотрению чрезвычайно важного логического принципа конструктивной математики — так на- называемого «принципа конструктивного подбора». Принцип этот, впервые отмеченный и обоснованный А. А. Марковым (см. например, [7]), специфичен для его конструктивизма. В оценке допустимости этого принципа между представителями различ- различных направлений в основаниях математики имеются опреде- определенные расхождения. Поэтому мы помещаем его в книге там, где он впервые, фактически потребовался (предшеству- (предшествующее изложение, таким образом, от этого принципа не зависит). Отдельные замечания и комментарии (§ 37.5, § 47.2, § 54.1.3°, § 56.2.5°, §64.1, §64.5—64.7и др.), по своему характеру отно- относящиеся к проблемам логики и оснований математики, включе- включены мною в текст основного материала. Особо следует сказать о теоретико-множественных коммен- комментариях в тексте книги (§ 49 и далее), которые я ввел в изложе- изложение под личную ответственность, понимая их полезность для определенной категории читателей. Позиция А. А. Маркова состояла в последовательном неупотреблении теоретико-мно- теоретико-множественных представлений, и, вероятно, он не согласился бы с введением этих комментариев, чтобы у читателя не возникло мысли о их существенности. Поступая указанным образом, я специально подчеркиваю, что эти комментарии носят чисто эвристический характер, что в основную ткань изложения они не входят (и могут быть пропущены при чтении) и что никако- никакого отступления от принципиальной позиции А. А. Маркова здесь, таким образом, не происходит. Еще одной важной особенностью книги является принятый в ней индуктивный стиль изложения. Внимательный читатель заметит полное отсутствие в книге многоточий и оборотов типа *) Параграфы 1 и 4—16 в основном следуют тексту брошюры Л. Л. М а р к о в а [4].
16 ПРЕДИСЛОВИЕ «и т. д.», столь характерных для математической литературы. С другой стороны, обращает на себя внимание наличие большо- большого количества индуктивных определений и доказательств по индукции. Такой характер изложения был запланирован А. А. Марковым с целью подчеркнуть особую роль метода индукции в элементарной семиотике. Последовательно прово- проводя этот замысел в жизнь, я счел правильным и целесообразным распространить его и на самые первоначальные понятия семио- семиотики —на понятие слова, на отношения графического равенства и различия, а также на операцию соединения слов. В сочета- сочетании с проведенным исследованием соотношения между правым и левым методами индукции (см. § 17.3) это привело к удобной и единообразной системе изложения элементарной семиотики, исключающей ряд методических осложнений, возникающих, например, при противоположно направленных индукциях в построении, с одной стороны, и в рассуждении об этом построении — с другой. Тому, кто сталкивался с необходи- необходимостью тщательного изложения теории слов, эти трудности хорошо известны. Кроме того, при таком подходе становится особенно естественной семантическая мотивация принципа индукции. Роль индукции хорошо также видна в доказательствах пра- правильности работы ряда приведенных в книге конкретных нор- нормальных алгорифмов (см. §§ 28—34). Эти доказательства про- проведены с большой степенью детализации. Но считать их чрез- чрезмерно подробными было бы поверхностным: суть их не только в том, чтобы убедить читателя (который сам по себе может ока- оказаться склонным к торопливости и доверчивости), а еще и в том, чтобы провести, как теперь говорят, «верификацию» по опре- определенным правилам — фактически в виде вывода в рамках некоторого исчисления. При минимальных навыках такие выводы могут быть получены на основе наших доказательств без особых усилий. В монографии [2] из-за наличия переменных индексов и многоточий ситуация менее прозрачна, но, несомненно, идея верификации присутствует уже и в ней, так что эта моногра- монография может, по-видимому, считаться первой в литературе ра- работой, где проблема верификации разрабатывается хотя и в частном случае, но отчетливо и в достаточно подробном виде. Особенно поучительными с точки зрения проблемы верифи- верификации в нашей книге представляются §§ 31 и 32. Приведенные в них доказательства правильности работы удваивающего и обращающего нормальных алгорифмов, стилистически по срав- сравнению с монографией [2] более выдержанные, демонстрируют, ПРЕДИСЛОВИЕ 17 в частности, любопытную специфику применения метода ин- индукции (см. замечание в конце п. 2 § 31). Что касается изменений в техническом аппарате общей тео- теории нормальных алгорифмов, то для данной книги написаны но- новые доказательства теорем о разветвлении (§ 39) и о повторении (§40). Теорема о приведении (§ 41.7.1) и ее усиление (§41.8.1) доказаны для отношения сильной эквивалентности алгориф- алгорифмов, которое в монографии [2] не рассматривалось. Заново, с учетом достижений Д. А. Остроухова и В. Г. Жарова, напи- написана глава об универсальном алгорифме. Здесь мне существен- существенную помощь оказал мой ученик Виктор Гаврилович Жаров, которому я считаю своим приятным долгом выразить мою приз- признательность. Несколько расширен мною раздел, касающийся принципа нормализации. Материал, отвечающий гл. V монографии [2], пополнен мною §§ 49—50 и 52—56. Внесенные добавления содержат ряд комментариев и необходимых дополнений к тем основным тео- теоремам о невозможности алгорифмов, которые в свое время были изложены в гл. V монографии [2]. Гл. IX посвящена рассмотрению ряда вопросов конструк- конструктивного анализа, интенсивное развитие которого А. А. Марков предсказывал еще в период создания монографии [2]. Это пред- предсказание, как мы теперь знаем, впоследствии полностью оправ- оправдалось. К сожалению, за недостатком места изложение в этой главе мне пришлось сделать несколько фрагментарным и го- гораздо более беглым, чем в остальных. По той же причине сжат почти до минимума материал гл. VI монографии [2]. Я довел изложение лишь до примера ассоциа- ассоциативного исчисления с неразрешимой проблемой эквивалентно- эквивалентности пустому слову и добавил к нему разработанный А. А. Мар- Марковым метод вычислимых инвариантов. Проблема распозна- распознавания инвариантных свойств ассоциативных исчислений из- изложена в конспективном виде. К сожалению, в книге не нашел отражения один из самых замечательных результатов А. А. Маркова, в свое время от- отмеченный Академией наук СССР премией им. П. Л. Чебыше- ва,— доказательство неразрешимости проблемы гомеоморфии полиэдров. Однако восполнение этого пробела потребовало бы значительно большего места и времени, чем имелось в моем распоряжении. Задача систематического изложения теории алгорифмов перед любым берущимся за ее решение aBTOjj^jfi'jjBgflgjpj'jiHip- 1И. A.M. Горьип МГУ
18 ПРЕДИСЛОВИЕ ных проблем и принципиального, и методического характера. Не вдаваясь в подробный разбор всей возникающей здесь проб- проблематики, мы все же отметим, что ему придется так или иначе решить вопрос о том, в каких терминах будут излагаться основ- основные понятия теории алгорифмов, будет ли при этом вовлекать- вовлекаться в рассмотрение аппарат теории множеств, а также какие он будет допускать способы умозаключений. После серьезного анализа традиционных теоретико-множественных основ ма- математики, которому они подверглись со времен Л. Э. Я. Брауэ- ра и Д. Гильберта, и после критики, которой в связи с этим подвеглась традиционная аристотелевская логика, такого рода способ подхода к решению упомянутой задачи представляется отнюдь не праздным. Трудности, связанные с использованием теоретико-множественных представлений, хорошо известны. Мы знаем, что, несмотря на всю проделанную специалистами работу, так называемая „наивная" теория множеств не может считаться избавленной от угрозы появления дальнейших па- парадоксов. Трудно игнорировать и то обстоятельство, что по- попытка уточнения этой теории путем ее аксиоматизации также не может считаться удавшейся из-за отсутствия доказательства непротиворечивости предложенных систем аксиом. И как бы ни были неприятны эти факты, главная трудность теории мно- множеств кроется даже не в них, а в более простом и фундаменталь- фундаментальном обстоятельстве: неясен субстрат самого понятия множе- множества. Не имея возможности получить четкий ответ на вопрос о том, что же такое множество, математик вынужден довольст- довольствоваться тем, что ему это понятие разъясняют на примерах. Но, разумеется, никто не удовольствовался бы арифметикой, в которой натуральные числа тоже вводились бы только на примерах! Поднятые вопросы приобретают дополнительное значение в связи с тем, что понятие алгорифма занимает одно из самых центральных мест в исследованиях по основаниям матема- математики. Поэтому при выборе средств, с помощью которых стро- строится теория алгорифмов, естественно проявлять максимальную сдержанность. Принимая сказанное во внимание, мы еще более тщательно, чем в монографии [2], следим за тем, чтобы наше из- изложение не содержало теоретико-множественных вкраплений и оставалось в рамках конструктивных процессов и конструк- конструктивно приемлемых способов рассуждений. Вместе с тем мы так- также следим и за тем, чтобы у нас не применялись специфически конструктивные, не приемлемые с теоретико-множественной точки зрения способы умозаключений, так что в итоге мы оста- остаемся работающими „на нейтральной почве". ПРЕДИСЛОВИЕ 19 Такой подход к построению теории алгорифмов делает ее не зависящей от традиционной теории множеств, или даже луч- лучше сказать — от традиционного учения о множествах (Mengen- lehre*)). И, может быть, со временем это обстоятельство, а так- также накапливающийся в процессе реализации такого подхода опыт будут содействовать перерастанию упомянутого учения в настоящую теорию множеств (Mengentheorie) с точным, а не вводимым на примерах определением своего основного поня- понятия. Во всяком случае, уже на данном этапе развития основа- оснований математики возникло понимание того, как может быть точ- точно определено хотя и стандартизованное, но все-таки достаточ- достаточно гибкое понятие множества: множествами мы можем усло- условиться считать однопараметрические условия, формулируемые в рамках какого-либо точного языка, имеющего точную семан- семантику **). Если не смотреть на теорию множеств как на некую самоцель, то, несколько пофантазировав, можно себе предста- представить, что со временем удастся создать достаточную для потреб- потребностей математики стандартизованную, но зато точную теорию множеств, как в свое время удалось построить стандартизо- стандартизованную, но точную теорию алгорифмов. Возможно, что такой теории множеств удастся сохранить методические достоинства, присущие этой теории в ее современном состоянии,— они не- несомненны и их никто и никогда не отрицал. * * * Тематически книга распадается на девять глав. Главы со- состоят из параграфов. Параграфы делятся на пункты, которые иногда имеют подпункты. Нумерация параграфов в книге сквозная. В книге принята система ссылок, аналогичная той, которая использовалась в монографии [2]. В каждом пункте (подпунк- (подпункте) отдельно нумеруются предложения и отдельно — формулы. Номера формул выписываются слева от них в круглых скоб- скобках. При номере утверждения повторяется отделяемый точ- точкой номер пункта (подпункта). Полная ссылка на утверждение состоит из указания па- параграфа, номера пункта (а также подпункта, если он имеется) *) Классики теории множеств отчетливее, чем в наше время, понимали, что развиваемая ими система взглядов не есть простая совокупность опре- определений, лемм, теорем и т. д., а что она представляет собой определенное миропонимание, учение. Знаменитая книга Ф. Хаусдорфа, переведенная на русский язык под названием «Теория множеств», в подлиннике называ- называется именно «Mengenlehre». Этим же термином пользовался и сам Г. Каитор, *¦) 00 этом см., например, Н. А", Щ а н и н [1], § 7.
20 ПРЕДИСЛОВИЕ и номера утверждения, которые отделяются друг от друга точ- точками, а вся ссылка заключается в прямые скобки. Например, [§ 18.9.3] означает ссылку на утверждение 3 пункта 9 парагра- параграфа 18; при ссылке на утверждение того же параграфа номер па- параграфа опускается. Аналогично делаются ссылки на пара- параграфы, пункты и на формулы, с той лишь разницей, что точка перед заключенным в скобки номером формулы не ставится и что при ссылке на формулу того же пункта (подпункта) опу- опускается его номер. Несколько одновременно делаемых ссылок отделяются друг от друга запятыми и заключаются в общие прямые скобки. Литературные источники нумеруются для каждого автора (или группы авторов) отдельно. * * * Н. А. Шанин и Б. А. Кушнер внимательно прочли рукопись книги и сделали большое количество критических замечаний, в основном мною учтенных и способствовавших устранению многих недочетов изложения. Я имел с ними продолжительные беседы, в результате которых у меня устоялось окончательное мнение по ряду важных для книги вопросов. Я сердечно благодарю Николая Александровича и Бориса Абрамовича за их дружескую помощь. Мне хотелось бы особо подчеркнуть, что фактическое воз- воздействие Н. А. Шанина на окончательную редакцию книги носит гораздо более значительный характер, чем это следует из сказанного выше. В свое время Н. А. Шанин принимал не- непосредственное участие в формировании многих представлений, нашедших отражение в книге. Что же касается меня как одно- одного из ее авторов, то, начиная еще с тех пор, когда я был студен- студентом, я многое узнал от Николая Александровича и многому у него научился. В том или ином виде это нашло отражение в части текста, написанной мною. Отдельные части рукописи прочли и сделали существенные замечания В. И. Хомич и И. Д. Заславский. Я дружески бла- благодарю их за это. Ряд деталей общего плана книги я обсуждал с С. И. Адя- ном, В. К. Детловсом, А. Г. Драгалиным и Б. А. Кушне- ром. Всем им я выражаю глубокую признательность за их советы, которые оказались для меня в высшей степени полез- полезными. Особого упоминания и благодарности заслуживает деятель- деятельная инициатива Сергея Ивановича Адяна, которая немало ПРЕДИСЛОВИЕ 21 ;пособствовала тому, что книга была дописана до конца и опуб- опубликована. Работа над книгой совпала для меня с завершением работы над переводом «Оснований математики» — великого труда Гильберта и Бернайса. Два эти дела, переплетаясь во времени и по существу, взаимодействовали между собой и оказали друг на друга благотворное влияние. В целом это составило боль- большой период моей жизни. Семье, близким друзьям, коллегам по работе и всем остальным, кто в это время оказывал мне под- поддержку, я выражаю мою горячую и глубокую благодарность. Н. М. Нагорный
ГЛАВА I ВВЕДЕНИЕ. ОСНОВНЫЕ ПРИНЦИПЫ КОНСТРУКТИВНОЙ СЕМАНТИКИ ВАЖНЕЙШИЕ ОБОЗНАЧЕНИЯ л P&Q [Р, Q] (P-^Q) [рА [Рд [рх [Р° [Р- 1 P*Q*R S(P,Q,/?) Ас'б' (A U Б) (А\Б) А. At А2 ЭГ:Я[—- Q 3l.Pl—Q 25 29 29 66 31 84 84 88 86 291 69 200 111 111 97 105 73 73 73 282 305 308 119, 139 119, 139 9Г:Р~| %:P\=Q Ш.:Р(—Q 3T:P|=Q1 ЗГ(Р) Ш(Р) (ЗГ:Р) Ж' (Ж о 58) CIYS3IG) ого©) 9СЭ Яр St:PJ_Q St:Pjj Q P\-Q P\=Q P\=Q [Гв Г ч~* П I -. 119, 126, 128, 128, 128, 140 129, 131, 197 217 224 230 244 281 297 334 345 346 353 353 353 372 372 139 139 139 139 139 139 139 § 1. Конструктивные ироцессы и конструктивные объекты 1. Простым примером конструктивного процесса является построение ряда вертикальных черточек путем писания одной такой черточки, приписывания к ней справа ее копии — другой черточки, приписывания к полу- полученным черточкам еще одной черточки, затем еще одной чер- черточки, затем еще одной и еще одной. Результатом этого кон- конструктивного процесса является конструктивный объект, изображенный шестью строками выше. Сам этот конструктив- конструктивный объект представляет собой материальное тело, состоящее из бумаги и засохших чернил, а приведенный выше рисунок есть состоящая из бумаги и засохшей типографской краски копия этого конструктивного объекта. Она тоже есть конст- конструктивный объект, поскольку изготовление копии можно считать конструктивным актом. Ряды вертикальных черточек вроде нашего рисунка, включая и „пустой" ряд, в состав которого не входит ни одна черточка (его можно представить себе в виде чистого листа бумаги), мы будем называть натуральными числами. Введенные таким образом натуральные числа суть конст- конструктивные объекты. Натуральное число, представленное нашим рисунком, назы- называется «шесть» и иногда изображается арабской цифрой «6». Натуральное число, представленное пустым рядом черточек, называется «нулем» и изображается цифрой «0». 2. Натуральные числа строятся из одинаковых элементар- элементарных знаков — вертикальных черточек. Вместо них можно аналогичным образом использовать элементарные знаки не- нескольких типов. Конструктивный процесс будет тогда состоять в написании некоторого элементарного знака, в приписыва- приписывании к нему справа другого элементарного знака, затем еще одного и т. д. до конца процесса. Результирующий конструк- конструктивный объект будет в этом случае рядом элементарных зна- знаков. Как и в предыдущем случае, будет удобно включить в
24 ВВЕДЕНИЕ [ГЛ. 1 рассмотрение „пустой" ряд знаков, т. е. ряд, не содержащий в своем составе ни одного знака. Элементарные знаки, участвующие в такого рода построе- построениях, мы будем называть буквами. Такое определение буквы, конечно, не может претендовать на точность. Но своеобразие нашей ситуации как раз и будет заключаться в том, что мы не станем определять это понятие каким-либо традиционным способом, например «через ближай- ближайший род и видовое отличие». Просто всякий раз, начиная то или иное конкретное рассмотрение, мы будем договариваться считать такие-то и такие-то знаки элементарными, имея в виду, что остальные требующиеся нам выражения будут строиться из них как из составных частей. Соответствующие соглашения обычно достигаются без труда. Что же касается вопроса «что такое буква вообще?», то ответа на него, пригод- пригодного на все могущие представиться воображению случаи, мы за ненадобностью не предлагаем. Ситуация несколько смягчается тем обстоятельством, что на самом деле можно обойтись использованием всего лишь двух различных букв, кодируя остальные с их помощью. Впос- Впоследствии читатель убедится в этом, ознакомившись с материа- материалом, изложенным в пп. 1—4 § 41. Однако по чисто техническим соображениям удобства мы бы не хотели заниматься этим с самого начала. Для осуществления конкретного конструктивного процесса может потребоваться заранее не оцениваемое количество экземпляров одной и той же буквы. Ввиду этого обстоятель- обстоятельства мы уславливаемся считать, что в начале всякого рас- рассмотрения у нас будут фиксироваться некоторые „эталоны" участвующих в нем букв и что с этих эталонов по мере надоб- надобности будут сниматься копии. Снятие копии мы всякий раз будем считать конструктивным актом. Обыкновенно в качестве букв используются буквы каких- нибудь распространенных алфавитов (латинского, греческого, русского и т. п.), а также знаки научной символики. По-ви- По-видимому, не встретило бы возражений предложение считать буквами знаки |, а, Ь, -*, П, (,). +. #. Щ (здесь запятая отделяет буквы одну от другой и сама буквой не считается; круглые скобки, напротив, выступают в роли букв). При выборе букв мы всегда будем следить за тем, чтобы, рассматривая любые две из них, можно было с уверенностью констатировать, что они одинаковы или различны. Разумеется, КОНСТРУКТИВНЫЕ ПРОЦЕССЫ И ОБЪЕКТЫ 25 одинаковость и различие букв тоже условны и тоже зависят от принятых на этот счет соглашений. Тем не менее в дальней- дальнейшем мы, несколько идеализируя обстоятельства, будем счи- считать эти условия строго выполненными. 3. Используя буквы, мы, как правило, имеем дело с конеч- конечным (и даже не очень большим) их набором. Этот набор может быть задан в виде некоторого, специальным образом устроен- устроенного списка, который мы будем называть алфавитом. Можно, например, условиться писать буквы алфавита „в строку", отделяя их друг от друга запятой и заключая всю запись в це- целом в какие-нибудь специально для этого выделенные скобки — например, фигурные. Примером алфавита мог бы служить следующий, уже рассматривавшийся нами список букв: {|, а, Ь, *, П, (,). +. #. Щ}- 4. Буквы, входящие в состав какого-либо алфавита, мы будем называть буквами этого алфавита. Ряды букв данного алфавита мы будем называть словами в этом алфавите. В част- частности, пустой ряд букв мы будем называть пустым словом и будем обозначать его заглавной буквой Л греческого алфавита. Пустое слово есть слово в любом алфавите. Мы специально подчеркиваем, что слова в алфавитах, вво- вводимые нами как конструктивные объекты, т. е. как результаты некоторых построений, только так и будут трактоваться в дальнейшем. Мы не будем позволять себе — считая их слишком сильными — таких актов воображения, когда процесс построе- построения всех слов в данном алфавите (принципиально незавершае- мый!) считается, тем не менее, протекшим „до конца", завершив- завершившимся, в результате чего возникает новый объект рассмотре- рассмотрения — множество всех слов в данном алфавите, так что слова в данном алфавите суть элементы этого множества. Это шло бы вразрез с нашей основной целью — изложить теорию алгориф- алгорифмов в терминах конструктивных процессов. 5. В обыденной жизни словами данного языка принято на- называть „осмысленные" ряды букв этого языка. В нашем опре- определении какое-либо требование осмысленности отсутствует. Так, ряд букв русского алфавита папагиглемма, пока не являющийся словом русского языка, является словом в русском алфавите в смысле нашего определения. 6. Натуральные числа, как мы убедились, могут быть охарактеризованы как слова в алфавите, единственной бук- буквой которого является вертикальная черточка J. Присоединяя
26 ВВЕДЕНИЕ [ГЛ. к этому алфавиту в качестве дальнейших букв горизонтальную черточку «—» и наклонную черточку «/», мы получаем возмож- возможность естественно строить рациональные числа как слова в трехбуквенном алфавите II.-. П- Действительно, целые числа могут быть получены путем до- добавления к натуральным числам слов вида -N, где N — натуральное число, отличное от Л, а рациональные — путем добавления к целым числам слов вида M/N, где М — целое число, а N — натуральное, отличное от Л. Определенные таким образом рациональные числа суть конструктивные объекты. 7. Как конструктивные объекты могут быть также опре- определены полиномы с рациональными коэффициентами, матрицы, элементами которых являются такие полиномы, разного рода уравнения и системы уравнений, разнообразные таблицы и схемы. Большое разнообразие конструктивных объектов и порож- порождающих их конструктивных процессов может вызвать желание иметь общие определения тех и других. Тем не менее в таких определениях нет действительной надобности, так как каждая математическая теория имеет дело не с конструктивными объектами вообще, а с конструктивными объектами некоторого определенного вида, например со словами в некотором алфа- алфавите. Этот вид во всех случаях, с которыми приходится иметь дело, может быть точно охарактеризован, равно как и тип конструктивных процессов, порождающих такие объекты. Таким же образом будем поступать и мы: говоря о конст- конструктивных объектах, мы будем подразумевать конструктив- конструктивные объекты определенного точно охарактеризованного типа. Прилагательное «конструктивный» мы при этом часто будем опускать. § 2. Слова 1. Линейность расположения знаков в конструктивных объектах, с которыми мы имеем дело в математике, может на- нарушаться. Такие нарушения возникают уже тогда, когда мы начинаем пользоваться индексами и показателями степени. $21 СЛОВА 27 Еще большие отклонения от линейности возникают при записи матриц в виде таблиц. Тем не менее все такие нарушения обыч- обычно удается устранить без всякого изменения существа дела. Так, например, составленную из слов Р, Q, R, S, T, U систему слов (Р, Q, R, S, T, U) можно условиться записывать в виде слова aPaQaRaSa.Tot.Ua, а таблицу в виде слова $PaQ$RaS$TaU$, где ос и fi обозначают какие- нибудь две различные, ранее не использовавшиеся буквы. Такое присоединение „новых" букв к алфавиту дает возмож- возможность записывать в строку более сложные фигуры, составлен- составленные из объектов, уже записываемых словами в этом алфавите. Приемы подобного рода дают возможность переходить к изображению рассматриваемых объектов словами. Поэтому мы не сделаем существенного ограничения общности, если ус- условимся для дальнейшего считать, что слова в алфавитах яв- являются конструктивными объектами общего вида. 2. Учитывая эту особую роль слов, мы остановимся на их определении несколько более подробно. Прежде всего, процесс порождения слов представляется целесообразным организовать так, чтобы случай пустого слова оказался включенным в общую схему. Для этого мы будем считать, что первый шаг построения слова всегда состоит в написании пустого слова (не пишется ничего; берется чистый лист бумаги), затем к нему справа приписывается первая буква слова (собственно говоря, пишется сама эта буква), затем к полученному приписывается (справа) очередная буква и т. д. до конца процесса. Кроме того, определению слова следует, конечно, придать „рабочий" характер, который в дальнейшем обеспечивал бы удобное его использование в разного рода формулировках и конструкциях. С учетом сказанного мы сформулируем это определение в следующем виде, в котором и будем использовать его впредь. Пусть А — какой-либо алфавит. Словами в алфавите А мы будем называть конструктивные объекты, получающиеся в
28 ВВЕДЕНИЕ [ГЛ. I S2J СЛОВА 2У результате развертывания конструктивных процессов, веду- ведущихся на основании следующих правил: а) пустое слово Л мы считаем словом в алфавите А; б) если конструктивный объект Р уже оказался словом в алфавите А, то словом в алфавите А мы считаем также и конструктивный объект Р\, где ? — любая буква алфа- алфавита А (здесь Р\ означает объект, получающийся в результате при- приписывания к Р справа буквы ?; в частности, Л? означает ?). Слова, получающиеся в результате процессов, заканчи- заканчивающихся применением правила б), мы называем непустыми. В дальнейшем мы убедимся, что всякое непустое слово в А единственным образом представляется в виде Р?, где Р — слово, а | — буква. 3. Определения, подобные только что сформулированно- сформулированному, принято называть индуктивными. Как правило, индук- индуктивное определение используется для задания какого-либо типа конструктивных объектов. Обычно оно имеет следую- следующую структуру: одни пункты определения объявляют объек- объектами данного типа такие-то и такие-то конкретные конструк- конструктивные объекты (в нашем случае это пункт а)), а в остальных пунктах говорится о том, как п© уже имеющимся объектам данного типа строить новые (в нашем случае это пункт б)). Часто применяется другой, немного отличающийся от дан- данного, способ описания конструктивных процессов. Мы имеем в виду способ, в основе которого лежит понятие исчисления. В современной математике это понятие является одним из важнейших, и подобно тому, как уточненное понятие алгориф- алгорифма используется для стандартизации представления о пред- предписании, понятие исчисления, будучи надлежащим образом уточнено, может быть использовано для стандартизации имею- имеющегося у нас неточного, расплывчатого представления о разрешении. Не вдаваясь в детали этого уточнения, мы отметим лишь, что обычно конкретное исчисление бывает устроено следующим образом. Фиксируются некоторые конструктивные объекты — аксиомы этого исчисления. Указываются правила вывода, позволяющие по уже полученным объектам строить некоторые новые. Разрешается, исходя из аксиом и пользуясь правилами вывода, осуществлять выводы. Выводом в данном исчислении называется упорядоченный список объектов, каж» дый член которого либо является одной из аксиом исчисления, либо получается из какого-либо числа предшествующих членов по одному из правил вывода. Вывод, имеющий данный объект в качестве своего последнего члена, называется выводом этого объекта. Объект считается выводимым в данном исчислении, если может быть построен его вывод в этом исчислении. Вывод данного объекта может рассматриваться как его построение. Поскольку любой начальный отрезок вывода также является выводом, всякий вывод наряду с построением воего „основного" объекта (заключительного члена вывода) содержит в себе построения всех использовавшихся в нем по ходу дела „вспомогательных" объектов. Иногда возникает потребность в рассмотрении так назы- называемых выводов с анализом, т. е. выводов, содержащих допол- дополнительные сведения о „происхождении" своих членов. Если какой-либо член вывода берется в качестве аксиомы исчисле ния, то в анализе указывается, в качестве какой именно. В противном случае указывается правило вывода и предшест- предшествующие члены, к которым оно применяется. Условившись писать выводы „в столбик", мы можем записывать выводы с анализом „в два столбика", приводя против каждого члена вывода требующиеся пояснения. В ряде случаев бывает удобно рассматривать выводы с теми или иными ограничениями. Так, оформляя в виде исчисления данное нами определение слов, естественно рассматривать такие выводы, в которых аксиома (пустое слово) встречается только один раз (и, значит, на первом месте), а все остальные члены вывода получаются применением правила вывода (пере- (переход от Р к Р1) к непосредственно предшествующим. Выводы, обладающие этим свойством, как раз и описывают построения, развертывающиеся согласно нашему первоначальному индук- индуктивному определению. 4. Сравнивая между собой слова в каком-либо фиксирован- фиксированном алфавите А, мы можем встретиться с двумя словами, состав- составленными из одинаковых букв, одинаковым образом располо- расположенных. Но может случиться и так, что одно из сравнивае- сравниваемых слов окажется длиннее другого или что при равной длине эти слова будут различаться на некоторых местах буквами. В первом случае мы будем называть слова графически равны- равными, а во втором — графически различными. С целью уточнения этих определений мы введем два бинарных отношения между словами в А — отношение 51а графического равенства слов в А и отношение ^!а графического различия слов в А, считая, что: Р.1. Высказывание является истинным.
30 ВВЕДЕНИЕ [ГЛ. I СЛОВА 31 P.2. Высказывания где Р—слово в А, а ?—буква этого алфавита, являются ложными. Р.З, Высказывание где Р и Q—слова в Л, а ? и г) — буквы этого алфавита, является истинным, если буквы | и i| одинаковы и выска- высказывание РЖА<2 истинно, и ложным, если ? и г) различны или высказывание Р ЗЕА Q ложно. Р. 4. Высказывание является истинным, если высказывание P-2-aQ ложно, и, наоборот, ложным, если это последнее истинно. Нетрудно понять, что отношения эти можно было бы определить и независимо друг от друга, но технически удобнее сначала определить отношение SA, а затем отно- отношение ^:А выразить через него. В случае, если ясно или безразлично, о каком алфави- алфавите А идет речь, индекс А у знаков жА и :^А будет опу- опускаться. Заметим, что в силу п. Р.З вопрос о графическом равен- равенстве двух непустых слов сводится к аналогичному вопросу для слов меньшей длины, так что у нас в наличии имеется способ, позволяющий для любых двух слов Р и Q в алфа- алфавите А выяснить, какое из высказываний v pilaq, p^aq является истинным. 5. Важную роль в дальнейшем изложении будет играть операция соединения слов. Ее применение к словам Р и Q в алфавите А будет состоять в приписывании справа к слову, графически равному Р, слова, графически равного Q, в резуль- результате чего получается слово, называемое соединением слов Р и Q. Соединение слов Р и Q мы временно будем обозначать символом [Р, Q]A. Впоследствии, когда для этой операции будет установлен сочетательный закон, мы заменим обозначе- обозначение [Р, Q]A более простым. Мы дадим сейчас удобное для использования (и несколько более точное) определение этой операции, учитывающее индуктивный характер определения слов. Именно, зафиксировав алфавит А, мы для любых двух слов Р и Q в А и для любой буквы ? этого алфавита по- положим [Р, [Р, ¦¦Р. (знак =?ь здесь означает равенство по определению). Из этого определения операции соединения мы и будем исходить в дальнейшем. Первое равенство позволяет найти соединение слова Р и пустого слова при любом Р. Второе однозначным образом сводит нахождение соединения слова Р со словом Q? к нахож- нахождению соединения слова Р с „предшествующим" Q? словом Q. Таким образом, соединение Р и Q может быть построено при любых Р и Q. Как и выше, условимся в случаях, не вызывающих сомне- сомнений, опускать индекс у знака операции. 6. Внимательный читатель уже заметил, что в пп. 4 и 5 мы существенным образом пользуемся некоторой исходной элементарной операцией — операцией правого присоединения буквы к слову. В дальнейшем [§ 17.31 роль этой операции будет проанализирована более подробно. 7. Алфавиты мы определили выше [§ 1.31 как наборы зна- знаков, которые мы соглашаемся считать буквами. Такой набор удобно изображать словом, составленным из букв алфавита, взятых в определенном порядке, например в порядке их следо- следования. В дальнейшем мы часто будем поступать именно таким образом. Тем не менее порядок букв в алфавите нас, как правило, интересовать не будет. Имея это в виду, мы два алфавита, состоящие из одних и тех же букв, будем называть равносо- ставленными и все наши рассмотрения, связанные с алфави- алфавитами, будем проводить с точностью до равносоставленности фигурирующих в них алфавитов. 8. Мы ввели ряд основных понятий семиотики объектов, имеющих линейную структуру,— теории слов. Эта теория рассматривает слова как знаковые комплексы, взятые сами по себе, безотносительно к тому, что эти комплексы означают (как правило, в математике знаки что-нибудь да означают). Сейчас мы прервем изложение теории слов до § 17 и займемся обсуждением ряда принципиальных вопросов, которым в дальнейшем предстоит играть чрезвычайно важную роль.
32 ВВЕДЕНИЕ [ГЛ. 1 §3] ЯЗЫКИ. ВЫСКАЗЫВАНИЯ 33 § 3. Языки. Высказывания 1. Мы передаем друг другу информацию, пользуясь опре- определенным „языком". Язык — это способ передачи информации. Филологи, говоря о языке, большей частью имеют в виду язык устный — речь. Мы же в этой книге под языком будем понимать графический способ передачи информации — пись- письменность. При таком способе информация передается в виде набора слов в некотором определенном алфавите — в виде текста. Таким образом, язык является способом передачи инфор- информации с помощью конструктивных объектов. 2. Информация на данном языке, передаваемая отправите- отправителем адресату, должна быть понята последним, желательно однозначно. Этому обычно служит членение текста на куски, называемые «высказываниями». Понятие «высказывания» определяется в каждом языке по- своему. 3. Проще всего обстоит дело с этим понятием в некоторых искусственных языках. В таких языках точно формулируются правила построения высказываний. Некоторые из этих пра- правил непосредственно квалифицируют определенные слова как высказывания. Другие правила дают возможность строить новые высказывания из уже построенных. Высказываниями считаются те и только те объекты, которые могут быть построе- построены по данным правилам. Правила построения высказываний образуют синтаксис рассматриваемого искусственного языка. На основе синтаксиса определяется далее наше понимание высказываний. Мы ведь хотим, чтобы высказывания что-то выражали, чтобы они о чем-то повествовали. (Мы сейчас исключаем из рассмотрения высказывания повелительные и вопросительные. Они не рассматриваются нами как высказы- высказывания.) Это достигается путем определенных соглашений о по- понимании высказываний — путем так называемых семантиче- семантических соглашений. Выяснив с помощью семантических соглашений, о чем по- ветствует данное высказывание, мы можем поставить вопрос о его истинности, вопрос о том, действительно ли имеет место то, о чем высказывание повествует. Этот вопрос может решить- решиться по-разному, а может и не решиться вовсе при современном состоянии наших знаний. Высказывание верно (истинно), если то, о чем оно повествует, действительно имеет место *); •) Сказанное, разумеется, требует уточнений. Эти уточнения в разных ситуациях могут выглядеть по-разному. оно неверно (ложно), если то, о чем оно повествует, не имеет места. Семантические соглашения образуют семантику данного языка. Сам этот язык можно рассматривать как состоящий из двух частей — синтаксиса и семантики. Рассмотренная схема построения искусственного языка не исчерпывает всех случаев. Имеются «повествовательные» ис- искусственные языки, построенные по более сложным схемам. Например, построение грамматической категории конструк- конструктивных объектов, называемых высказываниями, может осу- осуществляться одновременно с построениями некоторых других категорий объектов. Характерным для всех этих языков является наличие четкого определения высказывания, незави- независимого от понимания высказываний. Во всех языках этого рода высказывания оказываются конструктивными объектами. 4. Значительно хуже обстоит дело с высказываниями в так называемых „естественных" языках. Такой язык может иметь „грамматику", пытающуюся навести порядок в речи и письме. Эта грамматика тоже имеет свой синтаксис и свою семанти- семантику, однако и тот и другая обычно бывают очень запутанными и неточными. Семантика часто вмешивается в синтаксис, что далеко не способствует ясности понятий. Мы вынуждены, тем не менее, пользоваться естественными языками, которым нас учат с детства. В частности, в этой книге мы пользуемся русским языком, лишь несколько расширен- расширенным специальными обозначениями и терминами. Мы применя- применяем и изучаем некоторые высказывания этого языка. Здесь термин «высказывание» применяется в не очень точном смысле. Слово «высказывание» — это синоним слова «утверждение». Высказывание о чём-то повествует. Оно бывает истинным, а бывает и ложным. Впрочем, понятие высказывания рус- русского языка, вероятно, может быть определено посредством более или менее точного синтаксиса, после чего посредством более или менее точных семантических соглашений может быть определено наше понимание высказываний. Таким образом, „естественные" языки можно, по-видимому, рассматривать как плохие „искусственные" языки *). 5. К счастью, для построения теории алгорифмов естест- естественный язык нам понадобится не в полном его объеме. Доста- Достаточно будет воспользоваться сравнительно узким, ограничен- *) Кавычки здесь оправданы тем, что „естественные" языки искусствен- искусственны: ведь их грамматику тоже кто-то придумал, т. е. создал искусственно. С другой стороны, многие искусственные специализированные языки воз- возникли довольно естественно ради нужд практики. 2 А. А. Марков, Н. М. НагорныЦ
ВВЕДЕНИЕ [ГЛ. I $5) АБСТРАКЦИЯ ОТОЖДЕСТВЛЕНИЯ 35 ным фрагментом этого языка, имеющим благодаря своей огра- ограниченности относительно четкую логическую структуру, что в свою очередь позволит нам разработать относительно четкие принципы понимания высказываний, формулируемых сред- средствами этого фрагмента. Принципы эти будут разрабатываться с учетом особой, конструктивной природы рассматриваемых объектов. При желании этот фрагмент можно было бы превратить в искусственный язык с точным синтаксисом и точной семанти- семантикой. Фактически такая работа даже была проделана и резуль- результаты ее изложены А. А. Марковым в [18] — [27]. Однако обу- обучение читателя этому языку потребовало бы значительных усилий, и мы откладываем его на будущее. § 4. Абстракция потенциальной осуществимости 1. Осуществляя конструктивные процессы, мы часто натал- наталкиваемся на препятствия, связанные с нехваткой времени, места и материала. Эти препятствия обычно удается так или иначе обойти. Однако наши конструктивные возможности действительно ограничены, и нет оснований полагать, что обусловленные их ограниченностью препятствия всегда будут устранимы. Скорее наоборот, современные физика и космоло- космология как будто свидетельствуют о принципиальной неустрани- неустранимости таких препятствий. Тем не менее мы в дальнейшем не будем считаться с этими препятствиями в наших рассуждениях о конструктивных про- процессах и конструктивных объектах. Мы будем рассуждать так, как если бы этих препятствий не существовало, т. е. как если бы в каждый момент в нашем распоряжении были и простран- пространство, и время, и материал, потребные для осуществления очередного шага рассматриваемого конструктивного процесса. Поступая так, мы будем отвлекаться от ограниченности наших возможностей в пространстве, времени и материале. Это отвлечение принято называть абстракцией потенциальной осуществимости. 2. Абстракция потенциальной осуществимости позволяет нам рассуждать о сколь угодно длинных конструктивных процессах и сколь угодно больших конструктивных объектах. Их осуществимость потенциальна: они были бы осуществимы практически, располагай мы достаточными пространством, временем и материалом. Привлекая абстракцию потенциаль- потенциальной осуществимости, мы считаем верным следующее высказы- высказывание: 2.1. Ко всякому слову в данном алфавите может быть при- приписана справа (слева) любая буква этого алфавита, и это дает другое слово в том же алфавите. В частности, 2.2. Ко всякому натуральному числу может быть прибав- прибавлена единица, и это дает другое натуральное число. 3. Применения абстракции потенциальной осуществимо- осуществимости в дальнейшем большей частью будут неявными. Имея в виду потенциальную осуществимость процесса или объекта, мы обычно будем просто говорить, что этот процесс или объект осуществим, опуская слово «потенциально». 4. Абстракция потенциальной осуществимости, как и вся- всякая абстракция, вносит туда, куда она привлекается, элемент фантазии. Он неизбежно присутствует во всякой абстрактной науке, в том числе и в математике. Классическая *) математика привлекает абстракции, идущие гораздо дальше абстракций конструктивной математики. В частности, она пользуется аб- абстракцией актуальной бесконечности, т. е. позволяет себе рас- рассуждать о „бесконечных множествах" как о законченных некон- неконструктивных „объектах". Различие между „классиками" и „конструктивистами" состоит в том, что они привлекают раз- разные абстракции, т. е. фантазируют по-разному. § 5. Абстракция отождествления 1. При рассмотрении двух букв какого-нибудь алфавитами констатируем, что они одинаковы или что они различны. Например, мы видим, что пятая и седьмая буквы слова «кон- «констатируем» одинаковы, а первая и последняя буквы этого слова различны. Одинаковость и различие букв мы определяем при этом „на глаз". Для приемлемого алфавита распознавание одинаковости или различия букв проходит легко. Для этого требуется лишь, чтобы различия неодинаковых букв значительно превосходили мелкие различия букв одинаковых. 2. Рассуждая о буквах какого-нибудь алфавита, мы обычно привлекаем абстракцию отождествления, т. е. пoзвoляe^ себе говорить о двух одинаковых буквах как об одной и той же букве. Например, мы можем сказать, что буква «т» дважды входит в слово «констатируем», вместо того чтобы сказать, что в это слово входят две буквы, одинаковые с буквой «т». •) Так для краткости мы называем математику, основывающуюся в сво- своем построении на теоретико-множественных представлениях. 2*
36 ВВЕДЕНИЕ [ГЛ. I $71 ДИЗЪЮНКЦИИ 37 3. Абстракция отождествления применима, разумеется, не только к буквам какого-нибудь алфавита, но и к конструктив- конструктивным объектам других видов, лишь бы только можно было осмысленно говорить о какой-то одинаковости этих объектов и лишь бы было естественно рассматривать эти объекты с точ- точностью до одинаковости, т. е. пренебрегая различиями между одинаковыми объектами. В частности, эта абстракция приме- применима при рассмотрении слов в данном алфавите, так как одинаковость слов определяется естественным образом как их графическое равенство. Обычно мы будем применять абстракцию отождествления к буквам и к словам, не оговаривая этого. Наоборот, мы будем отмечать те случаи, когда эта абстракция не применяется к буквам или к словам. 4. Применяя в дальнейшем абстракцию отождествления, мы будем рассматривать ее только как удобный способ выра- выражения, сокращающий формулировки. По этим сокращенным формулировкам всегда без труда могут быть восстановлены более длинные формулировки, обходящиеся без абстракции отождествления. Привлекая абстракцию отождествления, можно утверж- утверждать, что число «шесть» единственно. 5. Построением конструктивного объекта мы называем всякий конструктивный процесс, результат которого одина- одинаков с этим объектом. Рассматриваемые конструктивные процессы мы всегда будем считать состоящими из последовательных элементарных конструктивных актов — шагов процесса. В качестве шага конструктивного процесса может при этом фигурировать не только написание нового элементарного знака, но и уничтоже- уничтожение старого знака (например, путем стирания с доски). Шаг может также состоять в сравнении каких-нибудь двух ранее осуществленных элементарных знаков на предмет установления их одинаковости или различия. Результатом такого шага может быть осуществление третьего элементарного знака в зависимости от того, одинаковы или различны два сравни- сравниваемых. § 6. Существование конструктивного объекта Результаты, связанные с нашей способностью осуществ- осуществлять конструктивные процессы, в математике часто формули- формулируются в виде теорем существования, утверждающих сущест- существование объектов, удовлетворяющих таким-то требованиям. В конструктивной математике под этим подразумевается, что построение таких объектов потенциально осуществимо, т, е. что мы владеем способом их построения. Это конструктивное понимание теорем существования расходится с тем, как их понимают в классической математике. Правда, „классики" не любят объяснять свое понимание таких теорем. Однако из того, как они обходятся со словом «сущест- «существует», следует, что их понимание этого слова отлично от кон- конструктивного. Они, например, считают возможным утверж- утверждать, существование конструктивного объекта, удовлетворяю- удовлетворяющего данному требованию, уже тогда, когда им удается путем «приведения к нелепости» опровергнуть предположение о том, что ни один объект не удовлетворяет этому требованию. Способ построения искомого объекта может при этом и не быть известен. Таким образом, конструктивное понимание высказываний о существовании отлично от классического. § 7. Дизъюнкции 1. Конструктивная математика отличается от классической также пониманием дизъюнкций, т. е. высказываний, образуе- образуемых из двух высказываний, соединяемых союзом «или», как, например: «существует простое число, меньшее двух, или существует простое число, большее двух». Высказывания, соединяемые союзом «или» при построении дизъюнкции, называются первым и соответственно вторым членами этой дизъюнкции. В конструктивной математике дизъюнкция понимается как осуществимость указания ее верного члена, т. е. как потен- потенциальная осуществимость конструктивного процесса, дающего один из членов дизъюнкции, который будет верным. Так, в приведенном примере второй член дизъюнкции может быть указан как верный, и потому данная дизъюнкция верна. 2. Описанное только что конструктивное понимание дизъ- дизъюнкций отлично от их понимания в классической математике. Правда, „классики" не объясняют свое понимание дизъюнк- дизъюнкций. Однако они считают дизъюнкцию верной уже тогда, когда им удается опровергнуть предположение о том, что ни один из ее членов не верен. Умения находить верный член дизъюнкции при этом не требуется. 3. Аналогично двучленным дизъюнкциям могут строиться и пониматься дизъюнкции трехчленные, четырехчленные и
38 ВВЕДЕНИЕ Сгл. 1 т. д. Например, четырехчленная дизъюнкция строится из четы- четырех высказываний, соединяемых тремя союзами «или». Эти высказывания называются членами дизъюнкции. Такая дизъ- дизъюнкция тоже понимается как осуществимость указания ее верного члена. В случае, когда в нашем распоряжении имеется список всех конструктивных объектов интересующего нас вида, причем этот список содержит более одного названия, высказы- высказывание о существовании конструктивного объекта, удовлетво- удовлетворяющего данному требованию, оказывается, как нетрудно видеть, равнозначным многочленной дизъюнкции, каждый член которой утверждает, что один из объектов списка удовлетво- удовлетворяет выдвинутому требованию, причем все объекты .списка фигурируют в этом смысле в дизъюнкции. § 8. Проблема построения конструктивной математической логики 1. Из сказанного в §§ 6 и 7 следует, что конструктивная математика нуждается в особой логике, отличной от логики классической математики. В самом деле, по крайней мере две из обычных шести логических связок «и», «или», «если..., то», «неверно, что» *), «при всяком», «существует... такой, что» понимаются в конструктивной математике иначе, чем в клас- классической. Другое понимание логических связок, естественно, требует и другого обращения с ними, других правил действия, одним словом, другой логики. 2. В идее неединственности логики, разумеется, нет ничего удивительного. В самом деле, с какой стати все наши рассуж- рассуждения, о чем бы мы ни рассуждали, должны управляться од- одними и теми же законами? Для этого нет никаких оснований. Впервые настойчиво подчеркивать эту идею стал один из крупнейших математиков нашего века Л. Э. Я. Брауэр, который в противовес теоретико-множественной концепции Кантора предложил свой особый подход к построению математики, названный им «интуиционистским». Брауэр убедительно пока- показал, что для построения интуиционистской математики требу- требуется особая, интуиционистская логика, отличная от класси- классической. Об этом подробно пишет А. Рейтинг в гл. I книги [1]. 3. Задачу построения конструктивной математической логики (т. е. логики конструктивной математики) мы будем •) Точнее было бы говорить о связке «ие». Однако систематическое использование этого оборота приводит к неудобочитаемым речевым кон- конструкциям. J9J ВЫСКАЗЫВАНИЯ ОБЩНОСТИ 39 пытаться решить путем надлежащего истолкования традицион- традиционных логических словосочетаний, т. е. высказываний, образуе- образуемых с их помощью. Это истолкование должно соответствовать цели конструктивной математики — изучению конструктивных процессов и конструктивных объектов. Этой задачей для связок «или» и «существует... такой, что» мы уже занимались в §§ 6 и 7. Связка «и» не представляет в этом отношении никаких трудностей. Самое обычное ее пони- понимание пригодно для конструктивной математики. Высказывания, образуемые из двух высказываний, соеди- соединяемых союзом «и», называются конъюнкциями. Два высказы- высказывания, соединяемые союзом «и» при построении конъюнкции, называются первым и вторым членами этой конъюнкции. Конъюнкцию мы будем понимать как утверждение об истин- истинности обоих ее членов. Аналогично трактуются многочленные конъюнкции. Остается указать приемлемые конструктивные истолкова- истолкования для остальных трех связок: «при всяком», «если..., то» и «неверно, что». § 9. Высказывания общности 1. В математике большую роль играют высказывания общ- общности, т. е. высказывания, начинающиеся словами «всякий», «всякая», «для всякого», «каков бы ни был» и т. п. Каким мо- может быть их конструктивное понимание? 2. Проблема решается просто, когда имеется список всех объектов того вида, к которому относится высказывание общ- общности. В этом случае высказывание о том, что всякий объект этого вида удовлетворяет данному требованию, можно пони- понимать как многочленную конъюнкцию, каждый член которой утверждает это об одном объекте списка, причем все объекты списка фигурируют в этом смысле в конъюнкции. При этом молчаливо предполагается, что список объектов рассматриваемого вида содержит более одного названия. Если же этот список содержит лишь одно название, то, разу- разумеется, мы будем понимать наше высказывание общности как высказывание: «единственный объект, названный в списке, удовлетворя- удовлетворяет данному требованию». Наконец, желательно условиться определенным образом понимать высказывания общности об объектах данного вида и в том случае, когда их список пуст, т. е. когда нет объектов
40 ВВЕДЕНИЕ [ГЛ. I §9] ВЫСКАЗЫВАНИЯ ОБЩНОСТИ 41 этого вида. Мы будем тогда понимать наше высказывание общности как тривиальную истину AlA (независимо от того, в чем состоит требование, которому должен удовлетво- удовлетворять объект). При таком понимании высказываний общности в тех слу- случаях, когда имеется список объектов рассматриваемого вида, имеет место следующее. При добавлении к этому виду одного нового объекта высказывание о том, что всякий объект расши- расширенного вида удовлетворяет поставленному требованию, оказывается равносильным конъюнкции прежнего высказы- высказывания общности (относящегося к первоначальному виду) и высказывания о том, что добавленный объект удовлетворяет этому требованию. 3. Все сказанное в п. 2 относилось к случаю, когда имеется список объектов рассматриваемого вида. Такого списка может, однако, не быть, и он даже может быть неосуществим из-за того, что этих объектов „слишком много". К счастью, имеется иная возможность конструктивного понимания общих высказываний. Для некоторых объектов рассматриваемого вида может быть установлено путем над- надлежащих рассуждений, что эти объекты удовлетворяют постав- поставленному требованию. Эти рассуждения могут иметь такой характер, что будет ясна возможность провести аналогичные рассуждения для любого другого объекта рассматриваемого вида. Тогда у нас сложится убеждение в том, что, какой бы нам ни был предъявлен объект этого вида, мы сумеем доказать (сделать очевидным путем рассуждений), что этот объект удов- удовлетворяет предъявленному требованию. Именно эту ситуацию мы и констатируем, говоря, что всякий объект данного вида удовлетворяет данному требованию. Итак, мы пришли к следующему пониманию высказываний о том, что всякий конструктивный объект данного вида удов- удовлетворяет данному требованию. Это высказывание констати- констатирует нашу способность доказать для любого данного нам объек- объекта рассматриваемого вида, что этот объект удовлетворяет предъявленному требованию. Источником нашей уверенности в том, что мы сумеем про- провести требуемое доказательство, каков бы ни был предъяв- предъявляемый нам объект, может быть наш ограниченный опыт по таким доказательствам, если нам в результате этого опыта ста- станет ясно, как действовать в любом случае. Эту нашу способ- способность убеждаться в инстинности общих высказываний на основании ограниченного опыта мы будем в дальнейшем назы- называть интуицией общности. 4. В случае, когда утверждается, что данному требованию удовлетворяет любое слово в некотором алфавите А, можно широко пользоваться методом, основанным на особом, индук- индуктивном характере определения слов. Он заключается в следую- следующем. Сначала мы показываем, что 1) пустое слово Л удовлетворяет данному требованию. 'Затем показываем, что 2) если какое-нибудь слово Р в А удовлетворяет данному требованию, то, какова бы ни была буква | алфавита А, слово Р\ также удовлетворяет этому требованию. Тогда можно утверждать, что всякое слово в А удовлетворяет поставленному требованию. В самом деле, прослеживая процесс построения какого- нибудь слова, мы видим, что на каждом шаге этого процесса строится некоторое слово, удовлетворяющее поставленному требованию. В частности, это относится и к последнему шагу, когда получается интересующее нас слово. Этот метод мы будем называть методом правой индукции по построению слова или просто правой индукцией. 5. Правая индукция в случае, когда алфавит А состоит из одной буквы |, представляет собой обычный арифметический «метод полной индукции». В этом случае слова в алфавите А суть натуральные числа, число нуль совпадает с пустым словом, а сам метод состоит в следующем. Пусть мы хотим доказать, что всякое натуральное число удовлетворяет некоторому условию F с натуральной перемен- переменной N. Для этого мы-доказываем, что: 1) нуль удовлетворяет F, 2) для всякого /V имеет место импликация: если N удов- удовлетворяет F, то и Af| удовлетворяет F. Тогда всякое натуральное число удовлетворяет F. В качестве примера на применение этого метода мы докажем с его помощью высказывание A) «каково бы ни было натуральное число N, имеет место графическое равенство [|, ЩЩЫ, |]». В самом деле, при л] in SA| A ГА, Л, ЗЕ 1С п. и. *) См. первый абзац п. 5 § 2.
42 ВВЕДЕНИЕ [ГЛ. I i 9] ВЫСКАЗЫВАНИЯ ОБЩНОСТИ 43 B) [|, Л]ЗЦЛ, |]. Пусть теперь N—произвольное натуральное число, и пусть имеет место равенство C) [|, N]1L[N, |J. Тогда П. л^ИзеП. л^]1 ЩН, |]| [C)] Следовательно, если имеет место равенство C), то имеет место и равенство D). В сочетании с равенством B) это позволяет нам заключить об истинности высказывания A). В качестве еще одного примера мы установим истинность высказывания E) «каково бы ни было натуральное число N, имеет место графическое равенство [I. [N, \]]Щ[\, N], |>. При этом мы воспользуемся истинностью высказывания A). Действительно, при N31А [I. [Л, |]]ЗЕ[|, [Л, Л]|] Ш. ], |], F) ' Ц, [Л, |]]2[[|, Л], |]. Пусть теперь N—произвольное натуральное число, и пусть имеет место равенство G) [|, [N, |]]2[[|, N], |]. Тогда [|. [П , I] D. т. е. (8) П. [П |]]*[[l. N\], |]. Снова, принимая во внимание F) и учитывая, что из G) выте- вытекает (8), мы, пользуясь правой индукцией, заключаем, что высказывание E) истинно. 6. Только что изложенный метод правой индукции требу- требует некоторых пояснений. Прежде всего, мы должны объяснить, какой смысл мы вкла- вкладываем в термин «требование, предъявляемое к слову». Остав- Оставляя детальное обсуждение этого вопроса на будущее, мы в сле- следующем параграфе дадим разъяснения, достаточные для первоначального понимания. Кроме того, как мы убедимся в дальнейшем в § 13, специаль- специального анализа требует пункт 2) нашего метода, трактующий об индукционном шаге. В каком смысле должен пониматься фи- фигурирующий в этом пункте словооборот «если ..., то» (импли- (импликация)? Не должен ли он в разных ситуациях пониматься по* разному? Откладывая обсуждение данной проблемы до §§ 13 — 15, мы отметим, что в обосновании нашего метода было исполь- использовано следующее свойство импликации: 6.1. Возможность, исходя из истинности двух высказываний А и «если А, то В», заключить об истинности высказывания В (так называемое «правило modus ponens»). 7. Метод полной индукции мы будем применять и в других, часто употребляемых в математике формах. Например, чтобы показать, что всякое натуральное число N удовлетворяет условию F, мы иногда будем доказывать, что при произволь- произвольном натуральном N верна следующая импликация: «если все числа, меньшие N, удовлетворяют F, то N также удовлетворяет F». Доказав эту импликацию, мы будем вправе считать доказан- доказанным и интересующее нас утверждение.'что всякое натуральное N удовлетворяет F. Обоснование этой формы метода полной индукции обычное. Здесь нам потребуется свойство импликации, заключающееся в том, что
44 ВВЕДЕНИЕ [ГЛ. Г i 10] ПЕРЕМЕННЫЕ. ПРЕДИКАТЫ 45 7.1. Всякая импликация с ложной посылкой является истин- истинной. Проводя конкретные доказательства по индукции, мы для начала, как правило, будем указывать, в каком именно смысле в данном рассуждении употребляется импликация. Однако по мере того, как у читателя будет накапливаться опыт, мы все более и более будем перекладывать эту работу на него, не ого- оговаривая этого особо. . .. 8. У нас нет достаточных оснований считать метод индукции исчерпывающим. Отметим., однако, что с его помощью удается установить практически все интересующие нас высказывания общности, встречающиеся в элементарной теории слов. § 10. Переменные. Предикаты 1, Рассмотрению двух оставшихся логических связок «не- «неверно, что» и «если..., то» целесообразно предпослать несколько слов о «переменных» и «предикатах». Как известно, в математике удобно пользоваться буквен- буквенными обозначениями. Мы также будем их применять. Некоторые, выделяемые в тексте буквы будут обозначать произвольные конструктивные объекты определенного вида; какого именно — это должно быть ясно из контекста. При этом обычно такая буква на всем протяжении некоторого текста будет сохранять свою индивидуальность в том смысле, что во всех ее появлениях она будет обозначать один и тот же объект (тогда как различные такие буквы могут обозначать как один и тот же объект, так и различные объекты). Так используемые буквы мы называем свободными переменными. Применение свободных переменных является некоторым расширением обы- обыденного языка. Когда свободная переменная будет употребляться для обоз- обозначения произвольного объекта данного вида, сами объекты этого вида будут называться допустимыми значениями этой свободной переменной. В частности, допустимыми значениями свободной перемен- переменной могут быть высказывания какого-нибудь фиксированного языка. Такие свободные переменные мы будем называть пропозициональными. Допустимыми значениями свободной переменной могут быть слова в данном алфавите А. Такие свободные переменнее мы будем называть вербальными переменными в алфавите А. Вербальные переменные в алфавите | мы будем называть натуральными. ¦ ; Допустимыми значениями свободной переменной могут быть буквы данного алфавита. Такие свободные переменные будут называться литеральными. В дальнейшем, как правило, заглавные латинские буквы А, В, С будут фигурировать в качестве пропозициональных свободных переменных; заглавные латинские буквы М, N — в качестве натуральных свободных переменных; заглавные латинские буквы Р, Q, R — в качестве вербальных свобод- свободных переменных; строчные греческие буквы ?, т), ? — в каче- качестве литеральных свободных переменных. 2. Применение свободных переменных порождает такие тексты, как A) «W нечетно», B) «М совершенно»*), C) «Af меньше, чем jV». Заменив в них натуральные свободные переменные их допустимыми значениями — натуральными числами,— полу- чим, в частности, высказывания нечетно», совершенно», меньше, чем D) E) F) Тексты, дающие высказывания в результате замены сво- свободных переменных их допустимыми значениями, называются предикатами. Тексты A), B) и C) могут служить примерами предикатов. В зависимости от того, сколько различных свободных пере- переменных входит в предикат, различают предикаты одноместные, двуместные, трехместные и т. д. Предикаты A) и B) одноместны, а предикат C) двуместен. Предикаты, все переменные которых суть вербальные и литеральные переменные в алфавите А, мы будем называть вер- вербальными предикатами в алфавите А. Имея одноместный предикат, мы можем заменить в нем все (одинаковые) свободные переменные их одинаковыми допустимыми значениями, что даст высказывание. *) Читатель, вероятно, помнит, что совершенным называется натураль- натуральное число, равное сумме своих делителей, отличных от него самого. Напри- Например, число 6 совершенно, так как делителями его являются числа 1, 2, 3 и 6, причем 6=1+2+3. К настоящему времени найдено 24 совершенных числа. Все они оказались четными. Десятичная запись большего из них содержит свыше 12 тысяч знаков. Существуют ли нечетные совершенные числа, в настоящее время неизвестно.
46 ВВЕДЕНИЕ [ГЛ. ill! ПРЯМОЕ ОТРИЦАНИЕ 47 Например, взяв одноместный предикат B) и заменив в нем натуральную переменную натуральными числами |, ||, ||| и" т. д., мы получим высказывания «| совершенно», «| | совершенно», «|(| совершенно»... Некоторые из них оказываются верными, как, например, высказывание *1111И совершенно». Таким образом, данный одноместный предикат выделяет среди натуральных чисел некоторые натуральные числа и может быть рассматриваем как требование, предъявляемое к натуральному числу. Числа, удовлетворяющие этому требо- требованию, в данном случае — совершенные числа. Ясно, что одноместные предикаты вообще можно рассмат- рассматривать как требования, предъявляемые к конструктивному объекту данного вида. Аналогичным образом двуместный предикат можно рас- рассматривать как требование, предъявляемое к паре объектов данных видов; трехместный предикат — как требование, предъявляемое к тройке объектов данных видов, и т. д. Свободными предикатными переменными в данном алфавите мы будем называть свободные переменные, допустимыми значениями которых являются вербальные предикаты в данном алфавите. В дальнейшем заглавные латинские буквы F и G, как правило, будут применяться в качестве свободных преди- предикатных переменных. 3. Для формулировки высказываний общности и высказы- высказываний о существовании применяются переменные иного рода— так называемые связанные переменные. Например, чтобы выра- выразить тот факт, что прибавление единицы к натуральному числу всегда дает число, отличное от взятого, мы пишем A) «каково бы ни было N, N Ф N+U; чтобы выразить, что существует совершенное число, мы пишем B) «существует N такое, что N совершенно». Оба эти текста суть высказывания, но они не являются преди- предикатами со свободной переменной N. Заменив в этих текстах букву N каким-нибудь натуральным числом, мы получили бы не высказывание, а бессмысленный текст такой, как «каково бы ни было 5, 5=^=5+1», «существует 6 такое, что 6 совершенно». В текстах A) и B) буква N называется связанной перемен- переменной. Связанные переменные появляются в высказываниях общ- общности и в высказываниях о существовании. Первые могут иметь вид C) «каково бы ни было X, имеет место /•"», где F — вербальный предикат со свободной переменной X; вторые могут иметь вид D) «существует X такое, что F» с таким же F. Высказывание C) утверждает, что всякое допустимое зна- значение переменной X удовлетворяет предикату F; высказыва- высказывание D) утверждает, что может быть построено допустимое значение переменной X, удовлетворяющее F. Переменная X свободна в предикате F, но все ее появления в высказываниях C) и D) связаны. С применением связанных переменных высказывание «существует нечетное совершенное число» может быть формулировано так: E) «существует N такое, что N нечетно и N совершенно»; высказывание же «всякое натуральное число четно или несовершенно» может быть формулировано так: F) «каково бы ни было N, N четно или N несовершенно». §11. Прямое отрицание. Разрешимые высказывания 1. Изучая нашу способность осуществлять конструктив- конструктивные процессы, мы формулируем результаты этого изучения в виде некоторых высказываний, утверждающих, что мы в на- настоящее время умеем строить такие-то объекты, что мы владеем гакими-то общими методами и т. п. Естественно спросить, как могут выглядеть отрицания высказываний этого рода. Ведь эти отрицания тоже будут что-то говорить о наших конструктив- конструктивных способностях. Наивный ответ гласит, что отрицанием высказывания A) «в настоящее время мы умеем строить объект, удовлет- удовлетворяющий требованию...»
48 ВВЕДЕНИЕ [ГЛ. I §11] ПРЯМОЕ ОТРИЦАНИЕ 49 является высказывание B) «в настоящее время мы не умеем строить объект, удов- удовлетворяющий требованию...»; что отрицанием высказывания C) «в настоящее время мы владеем общим методом для...» является высказывание D) «в настоящее время мы не владеем общим методом для...». Этот ответ приходится, однако, отвергнуть по той причине, что высказывания вида B) и D) вполне могут оказаться верными сегодня и ложными завтра. Сегодня мы действительно можем не уметь решать данную конструктивную задачу, а завтра научимся. Между тем к математическим истинам уместно предъявлять требование сохранности: установленная в дан- данный момент истина должна оставаться таковой завтра, после- послезавтра и т. д. Этому требованию удовлетворяют верные вы- высказывания видов A) и C) *), тогда как о верных высказыва- высказываниях видов B) и D) этого, вообще говоря, нельзя сказать. Поэтому верные высказывания видов B) и D) не всегда можно считать математическими **). Мы видим, таким образом, что наивная трактовка отрицания может вывести нас за пределы математики. Желая оставаться в этих пределах, мы должны позаботиться о надлежащем положительном понимании отрицания, т. е. о таком его по- понимании, при котором отрицание высказывания тоже свиде- свидетельствовало бы о какой-то нашей способности. При этом мы, естественно, будем требовать, чтобы отрицание высказывания всегда оказывалось несовместимым с ним, т. е. чтобы конъюнк- конъюнкция высказывания со своим отрицанием была ложной. 2. Проблема положительного понимания отрицания в не- некоторых случаях решается просто. Например, так обстоит дело с высказываниями об одинаковости и различии букв данного алфавита. Отрицать, что % и т) одинаковы, это зна- значит утверждать, что % и т) различны; отрицать, что % и т) различны, это значит утверждать, что ? и т] одинаковы. Оба эти высказывания повествуют о нашей способности осуществить некоторые конструктивные акты. Требование несовместимости *) Придирчивый читатель усмотрит здесь излишний оптимизм. Ведь бывало, что люди разучивались что-то делать. Пусть читатель вообразит себе, что против такого забвения достигнутого приняты эффективные меры. **) В § 12.1 читатель найдет некоторую конкретизацию этих рассмот- рассмотрений. высказывания со своим отрицанием здесь, очевидно, соблю- соблюдено. Кроме того, соблюден закон исключенного третьего, т. е. верна дизъюнкция, второй член которой есть данное,высказы- данное,высказывание, а первый — его отрицание. Эта дизъюнкция должна, разумеется, пониматься конструктивно. Она означает, что мы в состоянии указать, какое из высказываний — данное либо его отрицание является истинным. Таким образом, мы в со- состоянии выяснить, верно ли данное высказывание. Вообще, в том случае, когда высказывания А и В таковы, что их конъюнкция ложна, а дизъюнкция истинна, мы будем говорить, что В есть прямое отрицание А. Мы будем гово- говорить о высказывании А, что оно разрешимо, когда нам уда- удалось подобрать к нему прямое отрицание. В случае разрешимости высказывания А у нас имеется способ распознавать, верно ли А. Мы распознаем это при установлении истинности дизъюнкции «Л или В», где В — прямое отрицание А. 3. Легко доказываются следующие теоремы о разрешимых высказываниях и их прямых отрицаниях: 3.1. Конъюнкция двух разрешимых высказываний есть раз- разрешимое высказывание. Дизъюнкция прямых отрицаний двух высказываний есть прямое отрицание их конъюнкции. 3.2. Дизъюнкция двух разрешимых высказываний есть раз- разрешимое высказьюание. Конъюнкция прямых отрицаний двух разрешимых высказываний есть прямое отрицание их дизъюнк- дизъюнкции. 3.3. Прямое отрицание всякого разрешимого высказывания есть разрешимое высказывание. Всякое разрешимое высказывание есть прямое отрицание своего прямого отрицания. 4. Хорошим примером разрешимого высказывания явля- является высказывание, получаемое из предиката § 10.2 B) путем замены натуральной переменной каким-либо натуральным числом. Прямым отрицанием этого высказывания является высказывание, получаемое из предиката A) «Af несовершенно» путем замены натуральной переменной тем же натуральным числом. Несовместимость этих двух высказываний очевидна, а их дизъюнкция основана на том, что у нас имеется способ распознать, является ли данное натуральное число совершен- совершенным: для этого надо составить список всех его собственных
50 ВВЕДЕНИЕ [ГЛ. I $11} ПРЯМОЕ ОТРИЦАНИЕ 51 делителей (что, очевидно, возможно), взять их сумму и срав- сравнить с данным натуральным числом. Будем говорить об одноместном предикате G со свободной переменной X, что он есть прямое отрицание одноместного предиката F с той же переменной, если при замене X любым допустимым значением этой переменной из F и G возникают высказывания, являющиеся взаимными прямыми отрицаниями. Предикат A) есть прямое отрицание предиката § 10.2 B). Предикат B) «Af четно или М несовершенно» есть прямое отрицание предиката C) *М нечетно и М совершенно» 13.11. Мы будем говорить, что одноместный предикат F разрешим, если имеется его прямое отрицание. Предикаты A) — C) и § 10.2 B) разрешимы. Допустим, что одноместный предикат F со свободной пере- переменной X разрешим и что G есть его прямое отрицание. Тогда верно высказывание «при всяком X имеет место F или G». Оно означает, что мы способны доказать любую дизъюнкцию «Л или 5», где А и В получаются соответственно из F и G путем замены переменной X любым допустимым значением этой перемен- переменной. Но доказательство этой дизъюнкции дает способ распоз- распознавать одно из высказываний А и В как верное. При этом в силу несовместимости А и В высказывание А будет верным лишь в том случае, когда именно оно будет распознано как верное. Таким образом, в случае разрешимости предиката F со свободной переменной X мы владеем общим методом, рас- распознающим для любого допустимого значения свободной пере- переменной X, верен ли результат замены в F переменной X этим ее допустимым значением. 5. Ясно, что разрешимое высказывание ложно, если нам удалось построить верное прямое отрицание этого высказы- высказывания. Легко доказываются следующие теоремы: 5.1. Всякое верное высказывание разрешимо. Всякое ложное высказывание есть его прямое отрицание. 5.2. Всякое ложное высказывание разрешимо. Всякое верное высказывание есть его прямое отрицание. 5.3. Всякое разрешимое высказывание верно или ложно. 6. Теоремы 5.1—5.3 показывают, что во всяком достаточно богатом языке разрешимое высказывание имеет очень много прямых отрицаний. Иногда бывает желательно иметь простой формальный способ, строящий по любому данному разреши- разрешимому высказыванию данного языка одно из его прямых от- отрицаний. Во многих случаях такой способ действительно име- имеется. 7. Примерами разрешимых предикатов являются двумест- двуместные предикаты одинаковости букв данного алфавита и графи- графического равенства слов в данном алфавите. Применяя знак ЗЕ для выражения графического равенства слов (и, в частности, букв), мы можем записать эти предикаты в виде где допустимыми значениями литеральных переменных ? и г\ являются буквы данного алфавита, а допустимыми значениями вербальных переменных Р и Q являются слова в нем. Их прямыми отрицаниями являются двуместные предикаты графического различия букв и слов. С применением знака различия ^t они записываются в виде Для предикатов графического равенства и различия имеют место законы исключенного третьего: 7.1. Каковы бы ни были буквы ? и ц алфавита А, верна дизъюнкция I'S или 7.2. Каковы бы ни были слова Р и Q в алфавите А, верна дизъюнкция «.PS.Q или Верны также следующие высказывания. 7.3. Каковы бы ни были буквы | и г\ алфавита А, ложна конъюнкция ?i и
52 ВВЕДЕНИЕ [ГЛ. I 7.4. Каковы бы ни были слова Р и Q в алфавите А, ложна конъюнкция ^i.± -2_ \j а ^ $ 12] УСИЛЕННОЕ ОТРИЦАНИЕ 53 Высказывания 7.1—7.4 выражают тот факт, что преди- предикаты ?31т) и ?^т] являются прямыми отрицаниями друг друга, равно как и предикаты Р2 Q и P^?Q. § 12. Полуразрешимые высказывания. Усиленное отрицание 1. Рассмотрим теперь высказывание о существовании слова в данном алфавите, удовлетворяющего данному требованию, выраженному разрешимым, предикатом, т. е. высказывание вида A) «существует X такое, что F», где X — свободная вербальная переменная, a F — разреши- разрешимый одноместный предикат с этой переменной. Высказывания этого вида мы будем называть полуразреши- полуразрешимыми . Примером полу разрешимого высказывания является вы- высказывание § 10.3E): B) «существует N такое, что N нечетно и совершенно» *). Если бы в нашем распоряжении было его прямое отрицание, то мы имели бы способ, с помощью которого можно было вы- выяснить, верно ли это высказывание. Однако такого способа у нас нет. В настоящее время мы не только не знаем, существует ли нечетное совершенное число, но даже не знаем, каким обра- образом мы могли бы это узнать. Это означает, что в настоящее время мы не умеем строить прямое отрицание этого высказы- высказывания и, значит, не можем утверждать, что оно существует. Какой же смысл можно придать отрицанию рассматривае- рассматриваемого высказывания B)? Вспомним, какой смысл имеет само это высказывание. Оно означает, что мы в настоящее время владеем способом построения нечетного и совершенного натурального числа. Казалось бы, что отрицание этого высказывания должно по- пониматься как высказывание C) «в настоящее время мы не владеем способом построе- построения нечетного и совершенного натурального числа». *) Вопрос об истинности этого высказывания представляет собой одну из самых древних математических проблем. Так понимаемое отрицание нашего высказывания B) верно в момент, когда пишутся эти строки: в настоящее время A984 г.) мы действительно не умеем строить нечетное и совершенное натуральное число. Однако у нас нет гарантии того, что через некоторое время, например к 2084 г., не будет найден способ построения такого числа, и тогда высказывание C) перестанет быть верным. Таким образом,- предлагаемое понимание отрица- отрицания высказывания B) заставило бы нас заниматься высказы- высказываниями, верными в данный момент, но. не гарантированными от последующего опровержения. Такого рода высказывания едва ли следует относить к математике. Оставаясь же в обла- области математики, мы вынуждены отвергнуть понимание отри- отрицания высказывания B) как высказывания C). Заметим теперь, что высказывание C) было бы гарантиро- гарантировано от опровержения, если бы было доказано высказывание § Ю.З F): D) «каково бы. ни было N, N четно или несовершенно», В самом деле, тогда при подстановке любого натурального числа вместо свободной натуральной переменной в предикат § 11.4 B) получилось бы верное высказывание, и так как этот предикат есть прямое отрицание предиката § 11.4 C), то при подстановке любого натурального числа вместо свободной переменной в предикат §11.4 C) получилось бы ложное вы- высказывание. В этом случае мы никогда не имели бы способа построения нечетного и совершенного натурального числа. Это наводит на мысль считать отрицанием высказывания B) высказывание D), гарантирующее истинность высказыва- высказывания C) „на веки вечные" и само оказывающееся истинным на веки вечные, коль скоро его истинность будет установлена. Именно так мы и предлагаем понимать отрицание высказы- высказывания B). Рассмотрения, аналогичные только что проведенным, оче- очевидно, могут быть проведены для любого полуразрешимого высказывания. Они наводят нас на мысль рассматривать в ка- качестве отрицания полуразрешимого высказывания A) выска- высказывание E) «при всяком X имеет место G», где G—прямое отрицание F. Мы будем называть высказывание E) усиленным- отрица- отрицанием высказывания A). В частности, высказывание.D) есть усиленное отрицание высказывания B). . .
ВВЕДЕНИЕ [ГЛ. I 5 13] МАТЕРИАЛЬНАЯ ИМПЛИКАЦИЯ 55 2. Для так определенного усиленного отрицания полураз- полуразрешимого высказывания естественно возникает вопрос о зако- законе исключенного третьего, т. е. вопрос, всегда ли верна дизъ- дизъюнкция A) «Л или В», где А — полуразрешимое высказывание, а В — его усиленное отрицание. Для положительного ответа на этот вопрос у нас нет никаких оснований. Нетрудно видеть, что в случае истин- истинности дизъюнкции A) В есть прямое отрицание А, так как А и В, очевидно, несовместимы. В этом случае А разрешимо. Мы же видели, что разрешимость высказывания 1B) не уста- установлена. Установление истинности дизъюнкции A) в том слу- случае, когда роль А играет высказывание 1B), утверждающее существование нечетного совершенного натурального числа, пока представляет собой нерешенную проблему *). 3. Термин «полуразрешимое высказывание» оправды- оправдывается следующим соображением. Имеется общий метод, уста- устанавливающий истинность всякого верного полуразрешимого высказывания A). Он состоит в последовательном система- систематическом переборе слов в данном алфавите, причем для каж- каждого из них выясняется с помощью общего метода, указанного в § 11.4, верно ли высказывание, получаемое из F путем замены X этим словом. В случае, когда высказывание A) верно, т. е. когда может быть построено слово, для которого результат замены верен, мы в ходе перебора натолкнемся на такое слово и тогда оборвем процесс. § 13. Материальная импликация 1. Импликациями называются высказывания, образуемые из двух высказываний, соединяемых связкой «если..., то», причем первое высказывание, называемое посылкой имплика- импликации, ставится между «если» и «то», а второе, называемое заклю- заключением импликации, ставится после «то». Примером имплика- импликации может служить высказывание A) «если существует нечетное и совершенное натуральное число, то существует нечетное и совершенное натураль- натуральное число, большее десяти». 2. Наивное объяснение смысла импликации состоит в следующем. *) Для сравнения см. Д. Гильберт и П. Б е р н а й с [1], гл. II, §3.1. Всякая импликация утверждает, что, признав посылку верной, мы должны будем признать верным заключение. Это объяснение порождает следующие вопросы. Как можно предполагать посылку верной (а вдруг она неверна, что, на- например, пока не исключено для импликации 1 A))? Какая сила заставит нас признать верным заключение (а вдруг оно нам настолько не по вкусу, что мы уж лучше возьмем назад наше признание посылки, чем согласимся с заключением)? Не можем ли мы все же как-то сопротивляться этой силе? Так как отве- ответить на эти вопросы нелегко, то приходится признать данное объяснение смысла импликации недостаточным. 3. В классической математической логике принято следую- следующее объяснение смысла импликации: импликация утверждает то же, что дизъюнкция, первый член которой есть отрицание посылки импликации, а второй — ее заключение. Например, импликация 1A) при этой трактовке понимается как дизъюнк- дизъюнкция «неверно, что существует нечетное и совершенное нату- натуральное число, или существует нечетное и совершенное натуральное число, большее десяти». Понимание импликации сводится, таким образом, к понима- пониманию дизъюнкции и отрицания. О конструктивном понимании дизъюнкции говорилось выше [§ 71. Что же касается отрица- отрицания, то мы рассмотрели две его трактовки, успешно приме- применяемые в соответствующих случаях [§§ 11 и 121. Какое же понимание отрицания следует избрать, если мы остановимся на только что указанной трактовке импликации? В случае, когда посылка импликации есть полуразрешймое высказывание, представляется естественным понимать ее от- отрицание как усиленное. Но тогда пришлось бы понимать импликацию A) «если существует нечетное и совершенное натуральное число, то существует нечетное и совершенное натураль- натуральное число» как дизъюнкцию B) «при всяком N N четио или N несовершенно или существует N такое, что N нечетно и N совершенно»
56 ВВЕДЕНИЕ [ГЛ. I [§ 12.1, § 11.4], истинность которой пока не установлена. Та- Таким образом, ,нам пришлось бы считать неустановленной ис- истинность импликации A), у которой заключение совпадает с посылкой. Так как это слишком резко расходится с обы- обыденным употреблением связки «если..., то», то мы не можем признать данную трактовку импликации универсально при- пригодной. Имеются, однако, случаи, когда рассматриваемое сведение импликации к отрицанию и дизъюнкции не ведет к резкому расхождению с обыденным словоупотреблением и когда это сведение представляется естественным. Это случаи импли- импликации с разрешимой посылкой. Мы и будем в этих случаях понимать импликацию как дизъюнкцию, первый член которой есть прямое отрицание посылки импликации, а второй — ее заключение. Так по- понимаемую импликацию мы будем называть материальной им- импликацией. Итак, материальной импликацией с посылкой Л и заклю- заключением В, где А — разрешимое высказывание, мы называем импликацию «если А, то В», понимаемую как дизъюнкция «С или В», где С — прямое отрицание А. Согласно этому определению материальная импликация всегда имеет разрешимую посылку. 4. Для материальной импликации действуют, как нетрудно видеть, правило modus ponens и правило силлогизма: 4.1. Имея верную материальную импликацию с верной по- посылкой, мы можем заключить об истинности заключения этой импликации. 4.2. Имея верные материальные импликации: «если А, то В», и -.¦¦•¦ «если В, то С», можно заключить об истинности материальной импликации «если А, то С». Легко доказываются также следующие теоремы о мате- материальных импликациях: из] МАТЕРИАЛЬНАЯ ИМПЛИКАЦИЯ 57 4.3. Имея верное высказывание А и разрешимое высказыва- высказывание В, можно заключить об истинности материальных им- импликаций . ¦¦ ¦ ¦ «если В,- то Л и В», и «если В, то В и Л». 4.4. Имея верные материальные импликации A) «если А, то В», и B) «если С, то D», можно заключить об истинности материальных импликаций «если Л и С, то В и D», и «если А или С, то В или D». 4.5. Имея верную материальную импликацию A), где В разрешимо, можно заключить об истинности материальной импликации B), где С — прямое отрицание В, a D — прямое отрицание А. 4.6. Верна материальная импликация «если А, то Л», где А — любое разрешимое высказывание. Непосредственно из определения материальной имплика- импликации вытекает истинность следующих утверждений: 4.7. Всякая материальная импликация с истинным за- заключением верна. 4.8. Всякая материйльная импликация с ложной посылкой верна. 5. Ввиду неединственности прямого отрицания [§ 11.6] материальная импликация с данными посылкой и заключе- заключением также не единственна. В языках, в которых синтакси- синтаксически выделено стандартное прямое отрицание, материальная импликация также может быть синтаксически стандартизо- стандартизована. 6. Следующее очевидное достаточное условие разреши- разрешимости материальной импликации будет использовано в даль- дальнейшем: 6.1. Для разрешимости материальной импликации до- достаточно, чтобы ее заключение было разрешимо.
58 ВВЕДЕНИЕ [ГЛ. I Докажем следующее предложение, также используемое в дальнейшем: 6.2. Для установления истинности материальной импли- импликации достаточно доказать истинность ее заключения в пред- предположении истинности ее посылки. В самом деле, пусть мы умеем доказывать истинность заключения В материальной импликации 4 A) в предполо- предположении, что истинна ее посылка А. А — разрешимое выска- высказывание, т. е. мы владеем методом распознавания истинности или ложности А. Применим этот метод. Если в результате окажется, что А истинно, то мы сумеем доказать истинность В. Если же окажется, что А ложно, то истинным будет от- отрицание А. Таким образом, мы всегда найдем верный член дизъюнкции «отрицание А или В», т. е. установим истинность материальной импликации 4 A). § 14. Усиленная импликация 1. Рассмотрим теперь импликации с полуразрешимой по- посылкой, т. е. высказывания вида A) «если существует X такое, что F, то А», где F — разрешимый предикат со свободной переменной X, a A — высказывание. Как понимать такие импликации? Посылка импликации A) означает, что в настоящее время мы владеем способом построения слова в рассматриваемом алфавите, удовлетворяющего предикату F. Попробуем ис- истолковать импликацию A) в духе материальной импликации как дизъюнкцию B) «в настоящее время мы не владеем способом построения слова в данном алфавите, удовлетворяющего предикату F, или Л». Обнаруживается, что эта дизъюнкция может быть верной в данный момент, но не застрахованной от опровержения в дальнейшем. Так будет, когда А ложно и мы не будем уметь строить искомое слово сейчас, но сумеем впоследствии. Как мы уже отмечали, высказывания этого рода едва ли стоит относить к математике. Таким образом, истолкование импли- импликации A) как дизъюнкции B) приходится отвергнуть. 114] усиленная импликация 59 Заметим, однако, что высказывание B) было бы застрахо- застраховано от. опровержения, если бы было доказано высказывание C) «при всяком X, если F, то Л», где импликация, возникающая из текста D) «если F, то Л» после замены переменной X любым словом в нашем алфавите, должна пониматься как материальная. В самом деле, допустим, что высказывание C) доказано. Это значит, что мы умеем доказывать всякую материальную импликацию, получаемую из D) заменой переменной X про- произвольным словом в нашем алфавите. Выясним, известен ли в настоящее время метод построения слова, удовлетворяюще- удовлетворяющего предикату F. Если нет, то будет верен первый член дизъюнк- дизъюнкции B). Если же искомый метод будет известен, то применим его для лостроения искомого слова. Подставим это слово вме- вместо X в предикат F, что даст верное высказывание В. Верна и материальная импликация «если В, то Л», возникающая из текста D) в результате замены переменной X найденным словом. Следовательно, в данном случае верно Л [§ 13.4.11. Таким образом, у нас есть способ, указывающий верный член дизъюнкции B), т. е. эта дизъюнкция верна. Этим доказано, что установление истинности высказывания C) обеспечивает истинность высказывания B) на все времена. Само высказывание C) при этом не „портится" с течением времени. Все это наводит нас на мысль рассматривать именно вы- высказывание C) как истолкование импликации A). Так по- понимаемую импликацию A) мы будем называть усиленной им- импликацией с посылкой «существует X такое, что F» и заключением Л. Согласно этому определению усиленная импликация всег- всегда имеет полуразрешимую посылку. 2. Для усиленной импликации действует правило modus ponens: 2.1. Имея верную усиленную импликацию с верной посылкой, мы можем заключить об истинности заключения этой импли- импликации.
60 ВВЕДЕНИЕ [ГЛ. 1 ; 15] ДЕДУКТИВНАЯ ИМПЛИКАЦИЯ 6.1 В самом деле, истинность усиленной импликации A) озна- означает истинность высказывания C). Предполагая истиннр.й также посылку этой импликации и рассуждая, как выше, убеждаемся в истинности заключения усиленной имплика- импликации A). Нетрудно видеть, что для усиленной импликации дейст- действует правило силлогизма, т. е. что имеем теорему: 2.2. Имея верные усиленные импликации «если Л, то В» и «если В, то С», можно заключить об истинности усиленной импликации «если Л, то С». 3. Высказывание может одновременно быть материальной импликацией и усиленной импликацией. Так обстоит дело в том и только в том случае, когда оно имеет вид: «если существует X такое, что F, то Л», где предикат F разрешим и таков, что высказывание «сущест- «существует Xтакое, что F»также разрешимо. В этом случае возникает два понимания данного высказывания: первое понимание, когда высказывание понимается как материальная имплика- импликация; второе понимание, когда оно понимается как усиленная импликация. К счастью, эти два высказывания согласованы друг с другом в следующем смысле: коль скоро рассматри- рассматриваемое высказывание верно при одном его понимании, оно верно и при другом понимании. Докажем это. Обозначим через В высказывание «если существует X такое, что F, то Л». Пусть В оказалось верным при его рассмотрении как ма- материальной импликации. Пусть X — какое-нибудь допусти- допустимое значение фигурирующей здесь переменной. Выясним, удовлетворяет ли оно предикату F, что возможно ввиду раз- разрешимости этого предиката. Если окажется, что X удовлетворяет F, то существует X такое, что F, и в силу истинности материальной импликации В верно А [§ 13.4.П, и потому верна материальная импли- импликация «если X удовлетворяет F, то Л». Эта материальная импликация верна и в том случае, когда X не удовлетворяет F, так как ее посылка в этом случае ложна. Таким образом, каково бы ни было X, верна материальная импликация «если F, то Л». Это означает, что В верно при его рассмотрении как усилен- усиленной импликации. Допустим с другой стороны, что высказывание В верно при его рассмотрении как усиленной импликации, т. е. что верно высказывание «каково бы ни было X, если F, то Л». Выясним, верно ли разрешимое высказывание A) «существует X такое, что F». Если оно окажется верным, то, взяв X так, чтобы F удовлет- удовлетворялось, мы увидим, что верны оба высказывания: F и «если F, то Л». Поэтому в данном случае верно Л [§ 13.4.1] и верно высказы- высказывание В, рассматриваемое как материальная импликация. Оно верно в этом смысле и в том случае, когда высказыва- высказывание A), являющееся посылкой высказывания В, ложно. Та- Таким образом, высказывание В верно при его рассмотрении как материальной импликации, что и требовалось доказать. § 15. Дедуктивная импликация 1. Рассмотренные случаи импликаций — импликации с разрешимыми и полуразрешимыми посылками,— очевидно, не исчерпывают всех возможностей. Поэтому уместно продол- продолжать поиск возможных трактовок импликации. Обычное объяснение смысла импликации, упомянутое в § 13.2, показалось нам недостаточно ясным из-за того, что оно было связано с предложением „предположить" нечто вер- верным и тогда „быть вынужденными" признать верным нечто другое. Нельзя ли, однако, все это уточнить? Нельзя ли счи- считать, что' импликация «если Л, то В» выражает возможность вывести В из Л по определенным фик- фиксированным формальным и вместе с тем разумным правилам? Тогда при установлении истинности импликации нам не нужно было бы заботиться ни о смысле, ни об истинности ее посылки и ее заключения. Конечно, для этого было бы необходимо, чтобы посылки и заключения рассматриваемых импликаций формулировались на некотором формальном языке, имеющем точный синтаксис. Естественно также требовать, чтобы этот язык имел четкую семантику, т. е. чтобы осмысленные
ж 62 ВВЕДЕНИЕ [ГЛ. I $15] ДЕДУКТИВНАЯ ИМПЛИКАЦИЯ 63 выражения этого языка —их можно называть высказыва- высказываниями или формулами — имели ясно определенный смысл. Разумеется, следует разрешить привлекать в процессе вывода В из А любые верные высказывания даннбго языка в соответствии с обычной практикой математического рас- рассуждения. Это, однако, равносильно тому, что всякое верное высказывание данного языка будет считаться выводимым из А. Таким образом, в числе правил вывода естественно иметь правило всякое верное высказывание (данного языка) считается выводимым из А. Естественно также иметь правило А считается выводимым из А. Другие правила вывода могут иметь вид A) в случае, когда С выводимо из А, а Е так-то и так-то связано с С, Е считается выводимым из А, или B) в случае, когда С uD выводимы из А, а Е так-то и так-то связано с С и D, Е считается выводимым из А, или еще более сложный аналогичный вид. Здесь под связями между высказываниями подразумеваются чисто формальные синтаксические связи, для обнаружения которых надо лишь исследовать эти высказывания как некоторые тексты, не апел- апеллируя к их смыслу. Правила вывода могут, однако, иметь и следующий более сложный вид: C) в случае, когда из А выводимо всякое высказывание тако- такого-то вида ©, считается выводимым из А и высказы- высказывание Е, так-то и так-то связанное с высказываниями вида <2. Для применения правил этого вида бывает необходимо знать, что всякое высказывание данного вида выводимо из А. Уве- Уверенность в этом как в истинности высказывания общности мы можем приобрести, например, на основании ограниченного опыта вывода некоторых высказываний этого вида [ср. §9] с помощью других правил вывода. Правила вывода характеризуют вывод из А как процесс. Они дают возможность получать все новые высказывания, выводимые из А, Порядок применения правил вывода, ко- нечно, зависит от нас. Поэтому процесс вывода из А не оп- определен однозначно. На некоторых стадиях этого процесса может потребоваться наша уверенность в осуществимости любого из некоторых других процессов вывода из А. Эта уве- уверенность может быть основана на нашей интуиции общности. 2. Выше мы потребовали, чтобы правила вывода были „разумными". Этому требованию целесообразно придать сле- следующий смысл. Каждое из правил вывода должно быть та- таким, что, будучи применено к верным формулам, оно дает верные формулы. Например, во всяком правиле вида 1 A) связь между С и Е должна гарантировать истинность Е в случае истинности С; во всяком правиле вида 1 B) связь между D, С и Е должна гарантировать истинность Е в случае истинности О и С; во всяком правиле вида 1 C) связь между © и Е должна гаран- гарантировать истинность Е в случае истинности всякого выска- высказывания вида <&. При соблюдении этого требования разумности (или се- семантической пригодности) всякое высказывание, выводимое из истинного высказывания, будет истинным. 3. Имея формальный язык, на котором формулируются рассматриваемые высказывания, и достаточно мощную сис- систему семантически пригодных правил вывода, мы можем сле- следующим образом определить смысл импликации: импликация выражает выводимость своего заключения из своей посылки при данной совокупности правил вывода. Так понимаемую импликацию мы будем называть дедуктивной импликацией *). Недостаток определения дедуктивной импликации можно усмотреть в том, что оно связано с определенной системой правил вывода и зависимо от этой системы. Однако некоторые рассмотренные первым из авторов ([151, [211) системы правил вывода являются в этом отношении естественными. Основан- Основанные на них понятия дедуктивной импликации, во всяком случае, заслуживают внимания. 4. Через дедуктивную импликацию может быть определе- определено еще одно понимание отрицания. Это понимание соответст- соответствует тому, что в математике принято называть «приведением к нелепости». Имея надлежащий формальный язык и семан- семантически пригодную систему формальных правил вывода для высказываний, формулируемых на этом языке, мы можем определить приведение высказывания А к нелепости как *) Возникающие здесь трудности обсуждаются Д. Гильбертом и П. Бернайсом [2J. См., в частности, с. 437, 438.
64 ВВЕДЕНИЕ [ГЛ. 1 ; 16] ИДЕЯ СТУПЕНЧАТОЙ СЕМАНТИЧЕСКОЙ СИСТЕМЫ 65 выведение определенного высказывания — „стандартной не- нелепости" — из А. Какое именно высказывание считается при этом стандартной нелепостью, бывает при этом довольно без- безразлично. Важно лишь, чтобы его ложность была очевидна. Отрицание высказывания А (формулированного на дан- данном языке) будет тогда пониматься как дедуктивная импли- импликация «если А, то J», где через Л обозначена стандартная нелепость. Так понимае- понимаемое отрицание мы будем называть редукционным отрица- отрицанием (от латинского reductio ad absurdum). Поскольку редукционное отрицание определено через де- дедуктивную импликацию, многое из сказанного выше о дедук- дедуктивной импликации может быть сказано и о редукционном отрицании. Установление истинности редукционного отрицания ка- какого-нибудь высказывания не требует вникания в смысл этого высказывания. Высказывание, для которого установлена ис- истинность редукционного отрицания, ложно. Конечно, пони- понимание редукционного отрицания зависит от избранной сис- системы правил вывода. Но это не мешает нам интересоваться редукционным отрицанием, соответствующим определенной естественной системе правил вывода. § 16. Идея ступенчатой семантической системы 1. Трактовка импликации как дедуктивной вынуждает нас строить для конструктивной математической логики спе- специальные формальные языки. При этом недостаточно одного такого языка. В самом деле, имея формальный язык, пригодный для по- построения высказываний определенного вида, мы сможем ока- оказаться в состоянии ввести, как описано выше, дедуктивные, импликации с посылками и заключениями этого вида. Од- Однако сами эти дедуктивные импликации уже не будут вь1- ражаться формулами этого языка. Мы же, естественно, поже- пожелаем рассматривать эти дедуктивные импликации тоже как высказывания, которые можно комбинировать с помощью логических связок. В частности, мы можем пожелать рассмат- рассматривать импликации, посылками и заключениями которых бу- будут уже построенные дедуктивные импликации. Если мы и такие импликации пожелаем трактовать как дедуктивные, то нам, очевидно, понадобится новый формальный язык, спо- способный выразить дедуктивные импликации, связывающие высказывания нашего прежнего языка. Это приводит нас к следующей идее ступенчатого построе- построения конструктивной математической логики. Нужные нам формальные языки строятся друг за другом путем последовательных расширений. Применение логиче- логической связки к формулам какого-либо из этих языков не всегда дает формулу этого же языка, но всегда — формулу языка следующей ступени. Осуществление этого плана вкратце описано в заметках А. А. Маркова [181 — [24]. Очень существенную роль играет в нем понятие нормального алгорифма и другие поня- понятия, связанные с рассмотрением слов в данном алфавите. В этой монографии, могущей служить введением по отноше- отношению к данному плану, мы, в частности, изложим и этот ввод- вводный материал. Он в значительной степени покрывается моно- монографией А. А. Маркова [2]. Однако изложение является теперь более строгим и систематическим, а также более при- приспособленным к построению ступенчатой семантической сис- системы конструктивной логики. В начале книги мы будем стараться тщательно анализи- анализировать смысл применяемых импликаций и отрицаний. По мере того, как у читателя будет накапливаться опыт, мы, чтобы не загромождать изложение, будем уменьшать число семанти- семантических разъяснений. В каждом отдельном случае, однако, чи- читатель, если он того пожелает, извлечет из доказательства интересующие его детали. Иногда читатель, вероятно, захочет остановиться на соображениях „здравого смысла". Мы не будем мешать ему в этом, так как в конце концов семантика должна уточнять здравый смысл, но не отменять его, а те места, где здравый смысл может подвести, мы более или ме- менее полно „оградили" соответствующими разъяснениями. i 3 А. А. Марков, Н. М. Нагорный
ГЛАВА II «171 СЛОВА (ПРОДОЛЖЕНИЕ §2) 67 СЕМИОТИКА ЛИНЕЙНО РАСПОЛОЖЕННЫХ КОНСТРУКТИВНЫХ ОБЪЕКТОВ § 17. Слова (продолжение § 2) 1. На протяжении §§ 17—21 мы будем считать фиксиро- фиксированным некоторый алфавит А *). Слова в нем мы будем назы- называть просто словами, а его буквы — просто буквами. Слова мы будем обозначать вербальными переменными Р, Q, R, S, буквы — литеральными переменными |, г\, ?. 2. В § 2.5 мы ввели операцию соединения слов. Результат применения этой операции к словам Р и Q мы условились обозначать посредством [Р, Q]. Естественно ожидать, что введенная операция подчиняется сочетательному закону, т. е. что для любых слов Р, Q и R выполняется графическое j - венство (!) [Р, [Q, Л]\Щ[Р, Q], R]. Покажем, что это действительно так. С этой целью зафиксируем слова Р и Q, рассмотрим свой- свойство слов R «удовлетворять графическому равенству A)» и правой индукцией по R [§ 9.41 установим, что этим свойством обладает любое слово R. Действительно, пустое слово Л им обладает, так как [Р, [Q, Л]]1[/>, Q] Щ[Р, Q]. Л]. Пусть теперь R — произвольное слово, удовлетворяющее ра- равенству A), и пусть I — произвольная буква. Тогда [P. [Q, Rt]]?L[P, [Q, R]l] ЩР, [Q, R]]l Щ[Р, Q], R]l [A)] Щ[Р, Q], Щ, т. е. (?) [P. [Q, , Q], RI]. *) В качестве переменных для обозначения алфавитов мы будем поль- пользоваться прямыми прописными буквами русского алфавита А, Б, В и т. п., прибегая, когда это будет удобно, к индексам. Таким образом, пустое слово обладает указанным свойст- свойством, и если им обладает какое-либо слово R, то, какова бы ни была буква |, им обладает и слово /?|. Значит, указанным свойством обладает любое слово R, и потому при любых Р, Q и R имеет место равенство A), что и требовалось доказать. Заметим, что предикат графического равенства разрешим [§ 11.7], и поэтому импликация «если A), то B)» при любых Р, Q, R и | может пониматься как материальная. Принимая во внимание установленный сочетательный за- закон, мы теперь — как обычно — будем писать PQ вместо [Р, Q], PQR вместо [Р, [Q, /?]] и т. д. Очевидно, что PQR есть слово, получаемое написанием подряд слова, (графически) равного Р, слова, равного Q, и слова, равного R. Слово PQR мы будем называть соедине- соединением слов Р, Q и R, слово PQRS — соединением Р, Q, R и 5 и т. д. Мы видим, таким образом, что сочетательный закон сло- сложения натуральных чисел является частным случаем общего сочетательного закона соединения слов. 3. Формулируя наше определение слов в данном алфавите [§ 2.2], мы существенным образом пользовались наличием в нашем распоряжении некоторой исходной элементарной операции — операции «правого присоединения» букв этого алфавита к словам. Ее наличие давало нам возможность раз- развертывать конструктивные процессы построения слов в на- направлении «слева направо». Метод правой индукции обосно- обосновывался нами со ссылкой на такой именно способ порожде- порождения. Естественно спросить: что будет, если операцию правого присоединения заменить аналогичной операцией «левого при- присоединения» или пользоваться обеими этими операциями совместно, чередуя их применение произвольным образом? Что будет, если метод правой индукции дополнить (или заме- заменить) аналогичным ему «методом левой индукции»? 3.1. Чтобы ответить на первый из поставленных вопросов, мы рассмотрим одно связанное с алфавитом А исчисление Sa- Объекты, выводимые в этом исчислении, мы будем называть лп-словами в алфавите А. В качестве единственной аксиомы Sa мы возьмем „пустое" лп-слово, которое тоже будем обозна- обозначать Л. Правил вывода у нас будет два: П) от лп-слова U разрешается перейти к лп-слову U%; Л) от лп-слова U разрешается перейти к лп-слову \U (здесь 5 — произвольная буква алфавита A, a U\ и %U озна- означают соответственно результаты приписывания к лп-слову V буквы ? справа и слева).
68 СЕМИОТИКА [ГЛ. И «17] СЛОВА (ПРОДОЛЖЕНИЕ §2) 69 Вывод с анализом в SA мы будем называть нормальным, если аксиома встречается в нем только однажды (на первом месте) и если всякое являющееся его членом лп-слово выво- выводится из непосредственно предшествующего. Вывод с анали- анализом в Sa мы будем называть правосторонним, если в его анализе нет ссылок на правило Л). Индукцией подлине вывода легко показать, что члены лю- любого правостороннего нормального вывода в SA являются словами в А. Пусть | — произвольная буква. Рассмотрим операцию Ф| над правосторонними нормальными выводами, определен- определенную следующим образом. Взяв произвольный вывод W ука- указанного типа, мы к каждому его члену слева припишем бук- букву | и над полученным таким образом списком слов напишем пустое слово Л. Обозначим полученный список через W. Индукцией по его длине легко показать, что он является вы- выводом в Sa и что переход от любого его члена к непосредст- непосредственно следующему может быть осуществлен по правилу П). Кроме того, аксиома встречается в W' только один раз. Сле- Следовательно, придав W соответствующий анализ, мы можем превратить его в правосторонний нормальный вывод. Этот вывод мы и возьмем в качестве (pg(W). Легко видеть, что если заключительный член W есть Р, то заключительным членом ф|(№) будет \Р. Имеет место следующее утверждение: 3.1.1. Для всякого вывода в Sa может быть пост- построен некоторый правосторонний нормальный вывод в Sa с гпем же самым заключительным членом. Действительно, взяв произвольный вывод W в Sa, уст- устроив какой-либо его анализ и двигаясь в соответствии с этим анализом от заключительного члена вывода вспять, мы по- получим некоторый нормальный вывод Wx с тем же самым за- заключительным членом. Если при этом окажется, что в ана- анализе вывода Wx отсутствуют ссылки на правило Л), то этот вывод и будет искомым. Если же такие ссылки будут иметься, то мы возьмем начальный отрезок вывода Wx до первой из них (включительно). Этот отрезок будет иметь вид W2 • ?Я (по правилу Л) из предыдущей формулы), где W2 — правосторонний нормальный вывод, а % — буква, присоединяемая по правилу Л) к заключительному члену вывода W2, который, таким образом, есть Р. Применим к W2 операцию ф|. Согласно сделанному выше замечанию заклю- заключительным членом правостороннего нормального вывода Ф|(й7а) будет \Р, и, заменив рассматриваемый начальный от- отрезок вывода Wx выводом ф|(И^2), мы уменьшим число ссы- ссылок на правило Л) в выводе Wi на единицу. Повторяя указан- указанную процедуру нужное число раз, мы придем к правосторон- правостороннему нормальному выводу W3 в Sa с заключительным членом, совпадающим с заключительным членом вывода Wx, а тем са- самым — и W, что и требовалось доказать. Принимая во внимание, что объекты, выводимые право- правосторонними нормальными выводами, суть слова, мы можем утверждать, что 3.1.2. Всякое лп-слово является словом. 3.2. Как уже отмечалось, наряду с методом правой индук- индукции может быть сформулирован аналогичный ему метод левой индукции по построению слов, состоящий в следующем. Пусть мы хотим доказать, что всякое слово в алфавите А удовлетво- удовлетворяет некоторому предикату F. Для этого мы доказываем, что: 1) Л удовлетворяет F и 2) каково бы ни было слово Р, если Р удовлетворяет F, то и всякое слово \Р, где | — какая-нибудь буква, удов- удовлетворяет F. В ряде случаев бывает удобно пользоваться именно этим методом левой индукции. Представляет известный интерес вопрос о взаимоотноше- взаимоотношении методов правой и левой индукции. Можно ли, например, всякое доказательство, проведенное с использованием ме- метода левой индукции, заменить соответствующим доказатель- доказательством, использующим одну только правую индукцию? Ответ на этот вопрос оказывается утвердительным. Однако для получения его нам предварительно требуется рассмотреть одну операцию над словами — операцию их обращения. Результат применения этой операции к слову Р мы будем обозначать посредством [Р^. Значения этой операции мы за- зададим следующими определяющими равенствами: [Л- ^Л, [Р^^ЦР^ (здесь =^= означает знак равенства по определению, а Я и g — произвольное слово и произвольную букву алфавита А соответственно). Замечание. Такого рода определения операций в ма- математике называются рекурсивными. Первое из определяющих равенств позволяет найти обращение пустого слова. Второе
70 СЕМИОТИКА [ГЛ. II СЛОВА (ПРОДОЛЖЕНИЕ §2) 71 однозначным образом сводит нахождение обращения непус- непустого слова Я? к нахождению обращения „предшествующего" ему слова Р, так что оба равенства в совокупности естествен- естественным образом дают нам способ, детерминированный процесс, позволяющий по любому слову Я в А получать такое слово [Р^ в А, что будут выполняться равенства произволь- произволь(здесь Р означает произвольное слово в А, а ? ную букву этого алфавита). Позже, когда мы в § 26 познакомимся с понятием вербаль- вербального алгорифма, мы поймем, что этот способ представляет собой некоторый вербальный алгорифм в алфавите А. Чита- Читатель, знакомый с рекурсивными функциями, увидит в нашем определении простой пример «вербальной» примитивной ре- рекурсии. Определение, аналогичное только что приведенному, уже встречалось выше (см. § 2.5). В дальнейшем мы встретимся с другими рекурсивно определяемыми операциями. При этом всякий раз мы будем иметь в виду только что сделанное разъ- разъяснение. Имеют место следующие утверждения: 3.2.1. [?wSg. 3.2.2. 3.2.3. [[ Действительно, Тем самым 3.2.1 доказано. 3.2.2 мы докажем следующим образом: зафиксируем Р и правой индукцией по Q покажем, что для любого Q вы- выполняется графическое равенство [PQ^^.[QW[P^. Действи- Действительно, оно выполняется при Q3LA: Пусть теперь Q—любое, и пусть выполняется указанное равенство. Тогда для любой буквы ? что и требовалось доказать. 3.2.3 мы также докажем, пользуясь методом правой ин- индукции. В самом деле, при РЖА равенство [[PWWSP соблю- соблюдается: 1Л. Пусть оно соблюдается при каком-либо Р. Тогда для любой буквы I ЖР1 [3.2.2] [3.2.3,3.2.1], что и требовалось доказать. Пусть теперь F — какое-либо свойство слов, и пусть ме- методом левой индукции мы доказали, что любое слово обладает этим свойством. Покажем, что это утверждение может быть доказано методом правой индукции, примененным к некото- некоторому другому свойству слов. В самом деле, рассмотрим свойство G, определенное сле- следующим образом: G {P)^=F ([P"). Тогда, так как [[PUUSP, наличие F у Р равносильно на- наличию G у [Р^. Кроме того, так как [Ли1Л, наличие F у Л равносильно наличию G у А. По предположению, мы доказали, что для любого слова Р имеет место импликация «если Р обладает свойством F, то им обладает и вся- всякое слово IP, где | — какая-нибудь буква». Следовательно, для любого Р имеет место импликация «если [Р^ обладает свойством F, то им обладает и вся- всякое слово ?[Я^, где ? —какая-нибудь буква (т. е. вся- всякое слово [Piw)».
§17] СЛОВА (ПРОДОЛЖЕНИЕ § 2) 73 72 СЕМИОТИКА [ГЛ. II А тогда для любого Р верна импликация «если Р обладает свойством G, то им обладает и вся- всякое Я?, где ? — какая-нибудь буква». Так как Л обладает свойством G, то, пользуясь методом правой индукции, мы заключаем, что любое слово Р обла- обладает свойством G, а значит, им обладает и слово [Pw, что равносильно наличию у Р свойства F, что и требовалось доказать. Таким образом, метод левой индукции сводится к методу правой индукции. 4. Непосредственно из определения графического равен- равенства слов [§ 2.4] вытекает следующее предложение: 4.1. Если PllLQy], то P2Q и g^rj. Верно также и аналогичное предложение 4.2. Если ЪРЖг\<2, то f°i Q и ^ЗЕт). Действительно, пусть ?,РЖг\B. Тогда [?PwS[tjQw. Но тогда [Pwg Ж [Q^t, [3.2.2, 3.2.1] и, значит, [Р^ Ж [Q^ и | S т]. Но из [P^s:[Qw следует, что [[PWWS[[QWW и, значит, PSQ [3.2.3], что и требовалось доказать. Таким образом, всякое непустое слово допускает единст- единственное представление в виде Р% и единственное представле- представление в виде \Р. Букву ? в единственном представлении непус- непустого слова Q в виде Р\ мы будем называть последней буквой слова Q; букву ? в единственном представлении непустого слова Q в виде %Р мы будем называть первой буквой слова Q. 4.3. Всякое непустое слово имеет единственную первую букву и единственную последнюю букву. 5. Высказывание PR Ж QR разрешимо [§ 11.7]. Докажем материальную импликацию 5.1. Если PRslQR, то PsLQ. Фиксируем слова Р и Q. О слове R условимся говорить, что оно сокращаемо справа, если верна материальная импли- импликация A) «если PR^QR, то PSQ». Покажем, что всякое слово сокращаемо справа. Слово Л обладает этим свойством [§ 13.4.6, § 2.5]. Дока- Докажем материальную импликацию B) «если R сокращаемо справа, то и RI сокращаемо спра- справа». Действительно, предположим, что R сокращаемо справа, т. е. что верна материальная импликация A). Имеем верную материальную импликацию C) «если PRl&QRl, то PR^QR» [4.1]. Поэтому верна материальная импликация «если PRtlLQRt, то P2Q» [C), A), § 13.4.2], означающая, что RZ, сокращаемо. Тем самым мы доказали истинность материальной импликации B). Применяя метод правой индукции, убеждаемся в истинности теоремы 5.1. Аналогично, верна материальная импликация 5.2. Если RPsiRQ, то P°IQ. В самом деле, пусть RPS1RQ. Тогда [RP^^[RQ^, т. е. [Г[^г[<Зи[^ [3.2.2]. Но тогда [PWS[QW [5.1] и, зна- значит, [[PWWS[[QWU/, т. е. PSQ [3.2.3], что и требовалось доказать. Теоремы 5.1 и 5.2 мы называем законами сокращения. 6. Следующие теоремы очевидны: 6.1. PlQjtk. 6.2. Если Р%А, то PR^A и RPjt^ [6.1]. 6.3. Если PR Ж А, то РЖ А и RЖA [6.2]. 7. Наконец, еще следует ввести несколько полезных для дальнейшего понятий, относящихся к алфавитам. Прежде всего, мы условимся говорить, что алфавит Б является расширением алфавита А, если всякая буква А яв- является также и буквой Б. В этом случае мы иногда будем пользоваться записью Ас Б. Введем, кроме того, разность алфавитов А и Б, которую будем обозначать посредством (А\Б). Определение (А\Б) мы сформулируем индуктивно. Пусть А и Б — какие-либо алфавиты, а | —¦ буква, не являющаяся буквой алфавита А. Тогда положим [ (А\Б), если ? есть буква Б, \ (А\Б) |, если | не есть буква Б. Нетрудно показать, что (А\Б) состоит из тех и только тех букв, которые являются буквами А и не являются бук- буквами Б. После этого можно ввести объединение (А и Б) алфавитов А и Б, положив (АиБ)^А(Б\А). Легко проверить, что (А и Б) состоит из тех и только тех букв, которые являются буквами хотя бы одного из алфавитов А и Б.
74 СЕМИОТИКА [ГЛ. II = 18] НАЧАЛА ^ КОНЦЫ СЛОВ 75 Знаки с, \ и и содержат в себе намек на имеющуюся теоретико-множественную аналогию. Однако понимать их мы должны, конечно, в соответствии с только что сформули- сформулированными определениями, без всякого апеллирования к тео- теории множеств. § 18. Начала и концы слов 1. Мы говорим, что слово Р есть начало слова Q, если существует слово X такое, что Q3IPX; мы говорим, что слово Р есть конец слова Q, если существует слово X такое, что Q^XP. Имеем согласно этим определениям: 1.1. Двуместные предикаты «Я — начало Q» и «Р — конец Q» полу разрешимы. Докажем усиленную импликацию 1.2. Если Q—начало Р\, то Q—начало Р или Q2P?. Ввиду 1.1 высказывание 1.2 можно действительно рас- рассматривать как усиленную импликацию, т. е. как высказы- высказывание общности: «при всяком X, если PgsQX, то Q—начало Р или QPi Для его доказательства достаточно уметь доказывать для любых слов Р, Q и R и любой буквы ? материальную импликацию A) «если P^^QR, то Q—начало Р или Q2lPg» [§ ИЛ, §9.3]. Предположим, что B) Pl^QR. Имеем R^:A или Я г Л [§ 11.7.2]. Если R^lA, to имеются S и г\ такие, что C) RjLSr\. Мы имеем тогда PZ&QS4, [B), C)] и потому PsiQS [§ 17.4.1]. Таким образом, в данном слу- случае Q есть начало Р. Если же «гА, то Q S/>|, [B)]. Таким образом, в обоих случаях имеет место дизъюнкция D) «Q—начало Р или QSP|». Мы доказали ее, предполагая верным равенство B). Следо- Следовательно, имеет место материальная импликация A) [§ 13.6.2], что и требовалось доказать. 2. Истинность следующих утверждений легко усматри- усматривается: 2.1. Всякое слово есть начало и конец самого себя. 2.2. Пустое слово есть начало и конец всякого слова. 2.3. Пустое слово есть единственное начало (единствен- (единственный конец) пустого слова [2.1, 2.2, § 17.6.3]. 2.4. Всякое начало слова Р есть начало слова PQ; всякий конец слова Р есть конец слова QP. Последнее следует из сочетательного закона соединения слов. 2.5. Слово Q тогда и только тогда есть начало слова Р%, когда имеет место дизъюнкция 1D) [1.2, 2.4, 2.1]. В силу 2.5 при наличии списка всех начал слова Р мы, присоединяя к этому списку слово Р\, получаем список всех начал слова Р\. Пользуясь этим и принимая во внимание, что список слов, единственным элементом которого является Л, есть список всех начал слова Л [2.3], убеждаемся в воз- возможности построения списка начал любого слова, т. е. в ис- истинности утверждения 2.6. Для всякого слова может быть построен список всех его начал. Аналогично доказывается 2.7. Для всякого слова может быть составлен список всех его концов. В силу 2.6 имеем 2.8. Двуместный предикат «Р — начало Q» разрешим. В самом деле, чтобы узнать, является ли слово Р началом слова Q, достаточно, построив список всех начал слова Q, сравнить Р с каждым элементом этого списка, выясняя сов- совпадение слова Р с этим элементом. Аналогично утверждению 2.8 может быть доказано ут- утверждение 2.9. Двуместный предикат «Р — конец Q» разрешим.
76 СЕМИОТИКА [ГЛ. II 1181 НАЧАЛА "К КОНЦЫ СЛОВ 77 3. Теперь можно строить и доказывать материальные им- импликации, посылками которых являются высказывания ви- видов: «X — начало У», «X — конец У» и конъюнкции выска- высказываний этих видов. 3.1. Если X — начало У, a Y — ночало Z, то X —• на- начало Z. 3.2. Если X — конец Y, a Y — конец Z, то X — конец Z. 3.3. Если X — начало (конец) Y, aY — начало (конец) X, то X1F. Теоремы 3.1 и 3.2 доказываются на основе определения предикатов «X — начало У» и «X — конец У» с помощью сочетательного закона соединения слов. Докажем первую из материальных импликаций 3.3 (ту, которая относится к на- началам). Предположим, что X — начало У, а У — начало X. Тогда осуществимы слова Р и Q такие, что A) YSLXP и B) XSLYQ. Имеем C) Y1LYQP [A), B)], D) ASQP [C), § 17.5.2], E) Q2A [D), § 17.6.3], ХгУ [B), E)]. Это равенство доказано в предположении, что X — начало У, а У — начало X. Следовательно, имеет место материальная импликация «если X — начало У, а У — начало X, то X Ж У». Аналогично доказывается вторая часть теоремы 3.3 (от- (относящаяся к концам). Докажем теорему 3.4. Если X и У — начала Z, то X — начало У или У —¦ начало X. Условимся на протяжении данного доказательства го- говорить, что Z стройно, если, каковы бы ни были его начала X и У, одно из них является началом другого. Требуется до- доказать, что всякое слово стройно. Пустое слово А стройно [2.3, 2.1]. Пусть Z— стройное слово, % — буква. Докажем, что слово Z\ стройно. Пусть X и У — начала Z\. Тогда имеют место дизъюнкции: F) «X — начало Z или XlEZg», G) «У—начало Z или YiLZ\». Если имеют место первые членк обеих дизъюнкций F) и G), то X — начало У или У — началочХ, так как слово Z стройно. Если имеет место второй член диЦюнкции F), то У — на- начало X, так как У — начало Z\. Наконец, если имеет место второй член дизъюнкции G), то X — начало У, так как X — начало Z%. Таким образом, во всех случаях X — начало У или У — начало X, что и требовалось доказать. Мы называем теорему 3.4 теоремой о двух началах. Аналогично имеем теорему о двух концах 3.5. Если X uY — концы Z, то X — конец У или У — конец X. 4. Будем говорить, что X есть собственное начало У, если X — начало У и Х^:У; будем говорить, что X есть собствен- собственный конец У, если X — конец У и Х~?У. 4.1. X тогда и только тогда является началом У, когда X—собственное начало У или X~sLY [§ 11.7.2]. 4.2. X тогда и только тогда является концом У, когда X—собственный конец У или ХжУ [§ 11.7.2]. Докажем следующую лемму, понимая отрицание в ней как усиленное: 4.3. Р\ не есть начало Р. В самом деле, утверждение леммы означает, что не сущест- существует слова X такого, что A) PTLPIX. Предикат графического равенства разрешим, и его прямым отрицанием является предикат графического различия [§ 11.7]. Поэтому усиленным отрицанием нашего утверждения яв- является высказывание: каково бы ни было X, B) PjtPlX. Докажем его. Действительно, пусть Р, ?, X произвольны, и пусть A) истинно. Тогда А [§ 17.5.1], что неверно в силу определения графического равенства [§ 2.4]. Следовательно, A) ложно, и потому, в силу опре- определения графического различия [§ 2.4], B) истинно, что и требовалось доказать. Теперь докажем теорему 4.4. X тогда и только тогда является собственным началом Р%, когда X — начало Р.
78 СЕМИОТИКА [ГЛ. II S 18] Пусть X—собственное начало слова Р%. Тогда X — на- начало Р1 и X^Pg. Поэтому X—начало Р или XSLP\. Вто- Второй член последней дизъюнкции отпадает, и потому X — на- начало Р. Допустим теперь/с другой стороны, что X — начало Р. Тогда X-?P% [4.3}.' Вместе с тем X — начало Р\ [2.4]. Таким образом, X—собственное начало Р%. Имеют место следующие модификации теоремы о двух на- началах: 4.5. Если X и Y — начала Z, то X — начало Y или Y — собственное начало X [3.4, 4.1, 2.1]. 4.6. Если X иУ\ — начала Z, то X — начало Y или YI — начало X [4.5, 4.4]. Аналогично теоремам 4.3—4.6 могут быть доказаны сле- следующие четыре теоремы: 4.7. Слово IP не является концом слова Р. 4.8. Слово X тогда и только тогда является собственным концом %Р, когда X — конец Р. 4.9. Если X и Y — концы Z, то X — конец У или Y — собственный конец X. 4.10. Если X и IY — концы Z, то X — конец Y или ?У — конец X. 4.11. PQ — начало PR тогда и только тогда, когда Q — начало R. В следующих двух теоремах речь идет о началах соеди- соединения двух слов. 4.12. Всякое начало слова PQ либо является началом Р, либо имеет вид PR, где R — непустое начало Q [4.5, 4.11]. 4.13. Всякое начало слова PQ либо является собственным началом слова Р, либо имеет вид PR, где R — начало О [4.5, 4.11]. Аналогичные высказывания могут быть доказаны для кон- концов соединения двух слов. 4.14. Пустое слово является единственным собственным началом однобуквенного слова [4.4, 2.3, 2.2]. 4.15. Всякое непустое начало слова %Р имеет вид %Q, где Q —начало Р [4.13, 4.141. Очевидно имеем следующие два верных высказывания: 4.16. Слово Р является началом слова PQ. 4.17. Никакое слово не является собственным началом са- самого себя. Ледко доказывается 4. IS. Если Р — собственное начало Q, a Q — начало R, то Р — собственное начало R [§17.6.2, §17.5.2]. НАЧАЛА 4t КОНЦЫ СЛОВ 79 Р не является собственным 4.19. Если Q — начало Р, началом Q [4.18, 4.17]. 5. Просматривая списки начал )wyx слов, мы сможем вы- выяснить, имеют ли эти слова непустое общее начало. Мы будем говорить, что слова Р и Q взаимно просты слева, если не су- существует непустого слова, являющегося Началом как Р, так и Q. 5.1. Предикат «X и Y взаимно просты слева» разрешим. Вместо «X и Y взаимно просты слева» мы будем иногда говорить «X взаимно просто с Y слева». 5.2. Пустое слово взаимно просто слева со всяким словом [2.3]. 5.3. Если |^tj, то ~Е,Р взаимно просто с r\Q [4.15, § 17.4.2]. 5.4. Если ?2:т), то ?Р не является взаимно простым слева с t)Q. Это непосредственно следует из определения взаимной простоты слева. 5.5. Если X взаимно просто слева с Y и Y^tA, то X взаимно просто слева с Y~g [5.2, 5.4, 5.3]. Докажем теорему 5.6. Каковы бы ни были слова Р и Q, могут быть по- построены слова R, S и Т такие, что A) P°:rS, B) QJTRT и что S взаимно просто слева с Т. Фиксируем слово Р. Будем говорить (на время этого до- доказательства), что слово Q правильно, если осуществимы слова R, S и Т, удовлетворяющие условиям A) и B) и такие, что S взаимно просто слева с Т. Требуется доказать, что вся- всякое слово (в рассматриваемом алфавите) правильно. Пустое слово Л правильно, так как, полагая по определе- определению мы видим, что условия, налагаемые на R, S и Т, выпол няются при QSA [5.2]. Допустим, что слово Q правильно, и докажем, что тогда правильным будет и всякое слово QI, где |—какая-нибудь буква.
80 СЕМИОТ1 [ГЛ. II По определению правильности могут быть построены слова R, S и Т, удовлетворяющие условиям A) и B) и такие, что 5 взаимно просто слева с Т. Если окажется, что Т^Л, то 5 взаимно просто слева с Т? [5.5], и, пола- полагая по определению C) Rt^R, D) 5Х^5, E) 7\^П, мы видим, что F) Р г^А [A), C), D)], G) Ql^R.T, [B), C), E)] и что Sx взаимно просто слева с 7\. Таким образом, в дан- данном случае слово QI правильно [F), G)]. Пусть теперь (8) ТЖА. Имеем тогда (9) Q^R [B), (8)]. Если БЖА, то 5 взаимно просто слева с I [5.2], и, пола- полагая по определению A2) Т^Б, мы видим, что имеют место равенства F) и G) ГО) A0) V11;» Wi (й). (l^)J и что Ьх взаимно просто слева с Тх. Таким образом, и в этом случае слово QI правильно. Наконец, если 5^Л, то существуют г\ и V такие, что A3) Slf Если здесь T)Sg, то имеем (и) Q^R [B), (8)], и, полагая по определению A5) R^Ql, A6) S^V, A7) 7\^Л, мы видим что соблюдаются условия F) и G) [A), A4), г 1-7 с¦ '' ^ '' ' ^ и чт0 ! взаимно просто слева с 7\ [A7), 5.2]. Следовательно, QI правильно. § 18J НАЧАЛА Ч« КОНЦЫ СЛОВ 81 Если же 11^:1, то также имеем A4) и, полагая по опре- определению \ A8) *i^<2,\ A9) Si^#, \ B0) 7\=^=g, мы видим, что соблюдаются условия F) и (?Х [A), A4), A3), A8) — B0)] и что Si взаимно просто слева с Тх [A9), B0), 5.3]. Следовательно, Q\ правильно, и теорема 5.6 доказана. 5.7. Если соблюдены условия A) и B) и S взаимно просто слева с Т, то всякое общее начало слов Р и Q есть начало сло- слова R [4.12, §17.5.2]. 5.8. Каковы бы ни были слова Р и Q, существует единствен- единственная тройка слов R, S и Т, удовлетворяющая условиям A) и B) и такая, что S взаимно просто слева с Т [5.7, 3.4, § 17.5.2]. Каковы бы ни были слова Р и Q, слово R в единственной тройке слов R, S и Т, удовлетворяющей условиям A) и B) и такой, что 5 взаимно просто слева с Т, мы будем называть наибольшим общим началом слов Р и Q. 5.9. Каковы бы ни были слова Р и Q, существует единствен- единственное наибольшее общее начало этих слов [5.8]. 5.10. Всякое общее начало слов Р и Q есть начало их наи- наибольшего общего начала [5.7]. 5.11. Всякое начало наибольшего общего начала двух слов есть их общее начало [2.4]. 5.12. Слово R тогда и только тогда есть общее начало слов Р и Q, когда оно есть начало их наибольшего общего на- начала [5.10, 5.11]. 6. Рассмотрим теперь тот случай, когда наш алфавит со- состоит из буквы |. Слова в этом алфавите суть натуральные числа [§ 1.1]. Будем говорить, что натуральное число М мажорируется натуральным числом ./V, если М есть начало ./V; будем гово- говорить, что натуральное число М меньше натурального числа ./V, если М есть собственное начало N. В дальнейшем запись будет означать, что М мажорируется ./V, а запись M<N будет означать, что М меньше ./V. Следующие высказывания являются частными случаями высказываний предыдущих пунктов (буквы М, N, К, L, Н употребляются как натуральные переменные).
82 СЕМИОТИКА [ГЛ. II $18] НАЧАЛА ИЧКОНЦЫ СЛОВ 6.1. 6.2. 6.3. 6.4. 6.5. Ms^M. Если Если М ^ <, то M^N, то M^NL *). V | тогда и только тогда, когда M^N или МЖЫ\. 6.6. Если М<Л\ a N^L, то ^ 6.7. Если M^N, a N^M, то МЖЫ. 6.8. М <; N тогда и только тогда, когда М < N или 6.9. М < N | тогда и только тогда, когда M^.N. 6.10. AfAf^AfZ. тогда и только тогда, когда N^L. 6.11. Если М<\, то MS.А. . 6.12. Неверно, что М<М [4.17J. 6.13. ?сл« N^.M, то неверно, что Л1 < ./V [4.19]. 6.14. Если М <N, a N^L, то М < Z. [4.18]. Следующие два высказывания касаются взаимной про- простоты слева натуральных чисел. 6.15. Если M^lA и Njt.A, то М и N не являются взаимно простыми слева [5.4]. 6.16. Если М и N взаимно просты слева, то М 31Л или N1LA. Очевидна лемма 6.17. Всякое начало натурального числа является натураль- натуральным числом, всякий конец натурального числа является нату- натуральным числом. Теперь легко доказывается 6.18. M^N или N^M [5.6, 6.17, 6.16]. Доказывается далее 6.19. M<N или N<M или Л* ЗЕМ [6.18, 6.8]. В дальнейшем мы будем также пользоваться тем фактом, что 6.20. Ms^MN [4.16]. 7. Мы будем иногда применять следующий метод индук- индукции по началам слова. Чтобы доказать, что всякое начало слова Р удовлетворяет одноместному вербальному предикату F, мы доказываем, что 1) Л удовлетворяет F, 2) для всякого слова X и всякой буквы ? имеет место им- импликация *) Обращаем внимание читателя на то, что NL означает здесь соедине- соединение слов N и L, т. е. по существу сумму натуральных чисел N и L. Относи- Относительно умножения натуральных чисел см. § 20. «если Х| — начало Р и X удовлетворяет F, то Х| удов- удовлетворяет F». \ Тогда всякое начало слова Р удовлетворяет F. В самом деле, построим одноместный вербальный преди- предикат G A) «если X — начало Р, то X удовлетворяет F». А удовлетворяет G, так как Л удовлетворяет F. Пусть X удовлетворяет G, | — буква. Пусть Х| — на- начало Р. Тогда X — начало Р [3.1]. Так как X удовлетворяет G, то X удовлетворяет F. А поэтому, согласно второму свой- свойству предиката F, слово Х\ удовлетворяет F. К этому заклю- заключению мы пришли, предположив, что Х| есть начало Р. Сле- Следовательно, имеет место импликация «если Х| — начало Р, то Х\ удовлетворяет F». Она означает, что Х| удовлетворяет С Мы пришли к этому заключению, предположив, что X удовлетворяет С Следо- Следовательно, верна импликация «если X удовлетворяет G, то Х? удовлетворяет G» [§ 13.6.2]. Здесь X — любое слово в рассматриваемом алфавите, | — любая его буква. Применяя метод правой индукции по пост- построению слова, убеждаемся в том, что всякое слово (в рассмат- рассматриваемом алфавите) удовлетворяет предикату G. Но это и означает, что всякое начало слова Р удовлетворяет преди- предикату F [A)]. В частном случае, когда рассматриваемый алфавит состоит из одной буквы |, метод индукции по началам слова перехо- переходит в следующий метод ограниченной арифметической ин- индукции. Чтобы доказать, что всякое натуральное число, мажори- мажорируемое натуральным числом N, удовлетворяет одноместному арифметическому предикату F, мы доказываем, что: 1) Л удовлетворяет F, 2) для всякого натурального числа М имеет место импли- импликация «если Л1|^С!Л^ и М удовлетворяет F, то М\ удовле- удовлетворяет F». Тогда всякое натуральное число, мажорируемое числом Af, удовлетворяет предикату F.
84 СЕМИОТИКА [ГЛ. II 8. Если слово X является началом слова Z, то слово Y такое, что XY~°-Z, единственно [§ 17.5.2]. Это единствен- единственное слово мы будем называть концевым дополнением слова X в слове Z и обозначать A) (X —2). Согласно этому определению имеем: 8.1. Если X—начало Z, то концевое дополнение X в Z есть конец Z. 8.2. Выражение A) осмыслено тогда и только тогда, когда X—начало Z. 8.3. (Х<-ХУ)ЖУ. 8.4. Если X—начало Z, то (•^) X (Л *— Z) о. Z. Докажем 8.5. Если XI,—начало Z, то C) (X *— Z)~S.% (Х% *— Z). В самом деле, тогда X—начало Z [3.1], и мы имеем равенство B) и аналогичное равенство В силу равенств B) и D) имеет место равенство C) [§ 17.5.2] Легко доказываются следующие высказывания: 8.6. (A-~2KCZ. 8.7. (Z — Z)TLk. 8.8. Если X—начало Z, то (X *-ZY) Sl(X<-Z) Y. 9. Если слово X является концом слова Z, то слово Y такое, что FXSZ, единственно [§ 17.5.1]. Это единствен- единственное слово мы будем называть начальным дополнением слова X в слове Z и обозначать E) (X-rZ). Имеем 9.1. Если X—конец Z, то начальное дополнение X в Z есть начало Z. 9.2. Выражение E) осмыслено тогда и только тогда, когда X—конец Z. 9.3. (X-rYX)SLY. 9.4. Если X—конец Z, то (X-,Z)XslZ. 18) НАЧАЛА И 1^ОНЦЫ СЛОВ 9.5. Если \Х—конец Z, то \ 9.6. (A^-Z)SZ. 9.7. (Z-t2)IA. 9.8. Если X—конец Z, то 85 10. Для натуральных чисел мы введем операцию вычита- вычитания как частный случай образования концевого дополне- дополнения. А именно, мы положим при Mt^LN Имеем ЮЛ. Если M^.N, то (N—М) есть натуральное число [8.1]. 10.2. Выражение (N—М) осмыслено тогда и только тогда, когда M^N [8.2]. 10.3. (MN—M) TlN [8.3]. 10.4. Если M^N, то [8.4]. 10.5. Если M\^N, то (N~MIL\(N—M\) [8.5]. [8- 10.6. (N- 10.7. (N- 10.8. Если M^N, то (NL—i M)L [8.8]. 10.9. N\sl\N [§ 9.5A)]. 10.10. Если Ms^N, то М(N-M)^(N-M)M. Доказательство. На время этого доказательства будем говорить, что ./V правильно, если для всякого М та- такого, что M^N, имеет месго равенство A) М (N—М) з: (ЛГ—М) М. Требуется доказать, что всякое натуральное число пра- правильно. Л правильно [6.3, 10.7]. Допустим, что N правильно, и докажем правильность Л'|.
86 СЕМИОТИКА 1ГЛ. II Пусть M^N\. Тогда M^N или M&N\ [6.5J. Если M^LN, то имеет место равенство A), в силу которого имеем М(Ы\—М)ЖМ(Ы—М)\ [10.8] з:(ЛГ—М)М\ [A)] ЩЫ—М)\М [Ю.9] SL{N\—M)M [10.8]. Таким образом, при М <! N имеет место равенство М (N \—М) Ж (N \—М)М. Оно имеет место и при M^N\ [Ю.7]. Следовательно, натуральное число N\ правильно. Мы тем самым доказали (материальную) импликацию «если N правильно, то N\ правильно» [§ 13.6.2]. Применяя теперь метод арифметической индукции, убеждаем- убеждаемся в истинности высказывания 10.10. Теперь докажем коммутативность сложения натураль- натуральных чисел. 10.11. MN^NM. MN^M(MN-M) [10.3] S.(MN—М)М [6.20, 10.10] S.NM [10.3]. И. Во многих случаях, особенно когда натуральные и рациональные числа будут выступать не в качестве основных объектов рассмотрения, а в качестве их числовых характе- характеристик, мы будем пользоваться общепринятой арифметиче- арифметической символикой, употребляя знак «=» для обозначения ра- равенства чисел, знаки «+» и «—» для обозначения операций сложения и вычитания и т. п. В тех случаях, когда это не будет вызывать каких-либо коллизий, мы специальных ого- оговорок делать не будем. § 19. Длина слова. Проекция слова на алфавит 1. Длина [Хд слова X может быть индуктивно опре- определена *) равенствами @ [Ла^=Л, B) [XV = [X*\. Методом индукции доказываются высказывания *) См. замечание в § 17.3.2 (с. 69—70). ДЛИНА СЛОВА. ПРОЕКЦИЯ СЛОВА НА АЛФАВИТ 87 .1. Длина всякого слова есть натуральное число. 2 ГХК'1 ЗЕГХЙ \Yd .3. \XYZdTL\X?>\Yd\Zd [1.2]. .4. Если Х-начало Y, то [Х<*<[Ка [1.2]. .5. Если Х^:А, то [Хд^.А [B)]. ..6. \Xd'S.A тогда и только тогда, когда ХгЛ [A), 1.5]. 1.7. Если X—собственное начало Y, то [Хд < [Yd [1.2, 1.6, § 17.5.2]. 2. Методом ограниченной арифметической индукции не- нетрудно доказать высказывание 2.1. Каковы бы ни были слово X и натуральное число М, мажорируемое длиной слова X, существует начало Y слова X такое, что A) [ГЙЖМ. Докажем также 2.2. Каковы бы ни были слово X и натуральное число М, меньшее [Хд, существует собственное начало Y слова X такое, что [ В самом деле, при этих условиях М ^ [Хд [§ 18.6.8], и потому существует начало Y слова X, удовлетворяющее условию A) [2.1]. Так как М < [Хд , имеем и потому, согласно определению собственного начала, и, следовательно, Y^lX. Таким образом, Y—собственное начало X, что и оставалось доказать. Докажем 2.3. Если XS.YXZ, то FSA и ZS.A. Пусть X S YXZ. Тогда [Yd[Xd[Zd [1.3] [Xe[F*[Ze [§ 18.10.11], откуда последовательно К Ж Л ZSLK [§ 17.5.2], [§ 17.6.3], [§ 17.6.3], [1.6], [1.6].
СЕМИОТИКА [ГЛ. II Имеем далее 2.4. Если Х;?Л, то XY не есть начало У [2.3]. 3. Проекцией слова Р в алфавите А на алфавит Б мы будем называть слово, получаемое из Р выбрасыванием всех букв, не являющихся буквами алфавита Б. Проекцию слова Р на алфавит Б мы будем обозначать символом [РБ. Более точно: §21] ТЕОРЕМА О НАИМЕНЬШЕМ ЧИСЛЕ 89 [PI j [РБЪ, если I—буква алфавита Б, \ [РБ, если I не есть буква алфавита Б. Эги равенства и будут служить индуктивным определением *) проекции слова на алфавит. С их помощью легко доказы- доказываются два следующих высказывания: 3.1. Проекция слова в алфавите А на алфавит Б есть слово в проекции алфавита А**) на алфавит Б. 3.2. [PQBS[PB[QB. 4. Длина проекции слова Р на алфавит Б выражается следующим образом: [[РБд. При любом Р значение этого выражения может быть най- найдено. Имеем высказывания: 4 4 4 4.4. 4.5. Если алфавиты А и Б не имеют общих букв, то [РБЖА для всякого слова Р в алфавите А [3.1]. § 20. Умножение слова на натуральное число 1. Определим индуктивно*) произведение (PxN) слова Р в алфавите А на натуральное число Л/ с помощью равенств A) B) *) См. замечание в § 17.3.2 (с. 69—70). **) Алфавит А при этом рассматривается как слово (см. § 2.7). Проекция его на алфавит Б снова является алфавитом. Легко доказываются следующие высказывания. 1.1. (PxN) есть слово в рассматриваемом алфавите А [индукция по ./V при фиксированном Р]. 1.2. (PxMN)^(PxM)(PxN) [A), B), индукция по N при фиксированных Р и М]. 1.3. (MNxL)-3:(MxL)(NxL) [A), B), § 18. 10.11, индук- индукция по L при фиксированных М и N]. 1.4. ((РxM)xN)^(Px(MхN))[A), B), 1.2, индукция по N при фиксированных Р и М\. 1.5. (ЛхЛОгЛ [индукция по N, A),B)]. 1.6. (|хЛ0гЛГ [индукция по N, A),B)J. 1.7. [(txN)dlLN [B), § 19.1B), индукция по N]. 1.8. (М х N) Ж (N х М) [индукция по Af при фиксирован- фиксированном М, 1.5, B), 1.6, 1.3]. 2. В дальнейшем вместо (?хЛ/), где I—буква, a Af — натуральное число, мы часто будем употреблять запись %N. § 21. Теорема о наименьшем числе 1. Докажем следующую лемму: 1.1. Всякое слово в алфавите 0| имеет вид RS, где R — слово в алфавите 0, a S либо пусто, либо имеет началом черточку |. Пусть W — слово в алфавите 0|. Построим слово V, определив его следующим образом: A) V^@x[Wd). V есть слово в однобуквенном алфавите 0 [§ 20.1.1]. При этом B) [Va?L[Wd [A), § 20.1.7]. Согласно теореме § 18.5.6 построим слова R, S и Т в алфа- алфавите 0| такие, что C) WS.RS, D) V&RT и что S и Т взаимно просты слева. Так как V—слово в алфавите 0, R и Т также суть слова в этом алфавите [D)]. Имеем [Rd [Sd S" [Ra [Тд [B)— D), § 19.1.2], откуда E) [SdlL[Td [§ 17.5.2]. Если ТЖК, то ЭЖА [§ 19.1.6,E)] и осуществляется ! первая из возможностей, предусмотренных в лемме 1.1.
90 СЕМИОТИКА [ГЛ. II Если же Г^Л, то 5^Л [§ 19.1.6,E).] В этом случае не- непустое слово Т в алфавите 0 имеет началом букву 0, а не- непустое слово 5 в алфавите 0| имеет началом букву, отлич- отличную от 0, ввиду взаимной простоты слева слов 5 и Г [§ 18.5.4]. Таким образом, в данном случае 5 имеет нача- началом букву | и осуществляется вторая из возможностей, указанных в лемме 1.1. Ввиду C) и того, что R есть слово в 0, лемма 1.1 доказана. 2. Пусть F — одноместный арифметический предикат, М — натуральное число. Будем говорить, что М есть наимень- наименьшее число, удовлетворяющее F, если М удовлетворяет F, а всякое натуральное число, меньшее М, не удовлетворяет F. Докажем следующую теорему о наименьшем числе: 2.1. Каковы бы ни были разрешимый одноместный ариф- арифметический предикат F и удовлетворяющее ему натуральное число, может быть указано наименьшее число, удовлетворяю- удовлетворяющее F. Пусть F — разрешимый одноместный арифметический пре- предикат, и пусть натуральное число ./V удовлетворяет F. По- Построим характеристический оператор предиката F, опреде- определив его следующими равенствами: . \ |> если М удовлетворяет F, L """ \ 0, если М не удовлетворяет F. Здесь [Мх означает результат применения *) характеристи- характеристического оператора предиката F к числу М. Построим далее развертку предиката F, определив ее следующими рекур- рекурсивными равенствами **): B) C) Здесь [МЕ означает результат применения развертки преди- предиката F к натуральному числу М. Характеристический опе- оператор предиката F, очевидно, применим ко всякому нату- натуральному числу и перерабатывает его в букву алфавита 01. Развертка предиката F также применима ко всякому нату- натуральному числу и перерабатывает его в слово в алфа- алфавите 0|. *) Разрешимость предиката F позволяет при заданном М найти значение этого результата. **) Снова см. замечание в § 17.3.2 (с. 69—70). Учитывая опыт, приобретенный читателем, мы в дальнейшем ограничим число ссылок на это замечание. $21] ТЕОРЕМА О НАИМЕНЬШЕМ ЧИСЛЕ Методом арифметической индукции легко доказывается равенство D) [[МедЖМ. Докажем, что для всякого натурального М и всякого начала Т слова [Ме имеет место равенство E) [[Тдг Ж Т. На время доказательства будем говорить, что натураль- натуральное число М правильно, если равенство E) имеет место для всякого начала Т слова [Ме. Предикат Ш правильно», оче- очевидно, разрешим. Докажем, что всякое натуральное число правильно. Пустое слово А правильно [§ 18.2.3, § 19.1A),B)]. До- Допустим, что слово М правильно, и докажем, что тогда и слово М\ правильно. Пусть Т — какое-нибудь начало слова [М\г, т. е. слова [МЕ[М*. Так как слово [Мх однобуквенно, слово Т либо является началом слова [Ме, либо совпадает с [Л1Е[Л15С [§ 18.1.2]. В первом случае равенство E) имеет место, так как М правильно. Во втором случае это равенство также имеет место, так как в этом случае [Tds:[[M*d[[M*0 [§ 19.1.2] ] 4 и потому I [C)] 4 Применяя метод арифметической индукции, заключаем, ? что всякое натуральное число правильно. ( Завершим теперь доказательство теоремы 2.1. i Так как |W|E есть слово в алфавите 0|, к нему приме- * нима лемма 1.1, в силу которой существуют слова R и 5 такие, что : F) [tfpitfS, причем R есть слово в алфавите 0, a S либо пусто, либо ' имеет началом букву |. Покажем, что длина слова R есть искомое наименьшее f число, удовлетворяющее предикату F. Так как Af удовлет-
92 СЕМИОТИКА воряет предикату F, имеем G) [Ы*Щ. Значит, (8) [ГЛ. П 1[ЛР| [G)]. Следовательно, RS не есть слово в алфавите 0 в отличие от R. Поэтому и, согласно альтернативе для S E1Л или 5 имеет нача- началом |), 5 имеет началом J, т. е. существует слово 0 та- такое, что (9) S*\U. Имеем поэтому [N\*JLR\U [F), (9)]. Таким образом, R | есть начало [N |Е. По доказанному выше отсюда следует, что С другой стороны, [[/?|дв г [[/?* |е [§ 19.1.2] з: [[#*[[#** [C)]. Таким образом, A2) /? |г[[/?*[[/?» [A0), A1)]. Здесь [[Rdx—однобуквенное слово. Следовательно, [[Я*з:| [§ 17.4.1], а это означает, что натуральное число [Rd удовлетворяет предикату F [A)]. Остается доказать, что никакое меньшее число не удовлетворяет F. Пусть натуральное число L таково, что L < [Rd. Тогда существует собственное начало Y слова R такое, что A3) [Y^L [§ 19.2.2]. Существует Т такое, что A4) RsLYT. §221 ПАРЫ СЛОВ 93 Т^?А, так как Y^R. Y и Т суть слова в алфавите 0, так как R—слово в этом алфавите. Так как Т^А, суще- существует слово U такое, что A5) ТЖОи. Имеем [N\*1LRS [F)] ¦31YTS [A4)] S Y0US [A5)]. Таким образом, КО есть начало слова [N |Е. Поэтому [§ 19.1B)] *:[[?**[[?** [C)]. Здесь [[Ydx—однобуквенное слово. Следовательно, [ртЗЕО [§ 17.4.1], т. е. | [LXS0 [A3)]. | Это означает, что L не удовлетворяет предикату F, что и ? требовалось доказать. I | § 22. Пары слов 1. В этом параграфе мы будем по-прежнему считать фик- фиксированным алфавит А и, если не оговорено противное, бу- будем подразумевать под «словами» слова в алфавите А. Кроме того, мы фиксируем букву а — произвольную букву, не яв- являющуюся буквой алфавита А. Буквы Р, Q, R и S мы будем применять как вербальные переменные в алфавите А, а бук- буквы X и У — как вербальные переменные в алфавите Аос. Докажем высказывание 1.1. Если PaXSLQaY, то P&.Q и XsF. Пусть РаХ з: QaY. Тогда Ра и Q суть начала одного и того же слова, и потому Ра есть начало Q или Q есть начало Р [§ 18.4.6]. Но Ра не есть начало Q, так как Q, будучи словом в алфавите А, не содержит букву а. Таким образом, Q есть начало Р. Аналогично усматриваем, что Р есть начало Q. Следовательно, РЖС}. Отсюда далее следует, что ХгГ [§ 17.5.2]. Аналогично доказывается 1.2. Если XaR-3lYaS, то RSiS и ХЖУ.
? 94 СЕМИОТИКА [ГЛ. И $23] ВХОЖДЕНИЯ Из высказывания 1.1 следует высказывание 1.3. Если PaR'SLQaS, то PSLQ и R^S. 2. Слово PaR в алфавите Аос мы будем называть парой слов Р и R в алфавите А. Слово Р будем называть первым эле- элементом пары PaR, а слово R — вторым элементом этой па- пары. В силу 1.3 и определения пары имеем 2.1. Две пары слов совпадают тогда и только тогда, когда совпадают их первые элементы и совпадают их вторые эле- элементы. 3. В нашем определении пары слов буква а играет роль «знака препинания», отделяющего первый элемент пары от второго. Разумеется, эту роль можно поручить и какой- нибудь другой букве е, лишь бы она не входила в алфавит А. Поступая таким образом, мы будем специально подчеркивать выделенный характер е и говорить не просто о парах, а об е-парах слов в алфавите А. § 23. Вхождения 1. Мы говорим, что слово Р входит в слово Q, если существует пара слов такая, что R — первый элемент этой пары, 5—второй и что Q^RPS. Мы говорим тогда также, что слово Q содержит слово Р. 1.1. Двуместный вербальный предикат A) «Я входит в Q» полу разрешим. Это очевидно из определения данного предиката. Ввиду 1.1 импликации с посылками вида A) могут быть рассматриваемы как усиленные. Докажем усиленную импликацию 1.2. Если Р входит в Q, то существует U такое, что Р есть начало U, a U — конец Q. Фиксируем Р и Q. В развернутом виде импликация 1.2 выглядит следующим образом: 1.2.1. Если существует пара слов RaS такая, что QS.RPS, то существует О такое, что Р есть начало U, a U— конец Q. В силу нашего соглашения о понимании усиленных импли- импликаций высказывание 1.2.1 означает то же, что и высказывание 1.2.2. Какова бы ни была пара слов RaS, если QsLRPS, то существует U такое, что Р — начало 0, a U — конец Q. 95 Высказывание 1.2.2 нам и надо доказать. Для этого нам надо уметь для любой пары слов RaS устанавливать истин- истинность материальной импликации «если QЖRPS, то существует U такое, что Р—нача- Р—начало U, a U—конец Q». Такое U мы действительно умеем строить: достаточно поло- положить U ==±= PS. Докажем обратную усиленную импликацию 1.3. Если существует U такое, что Р — начало U, a U — конец Q, то Р входит в Q. Фиксируем Р и Q. Нетрудно видеть, что импликация 1.3 означает то же, что и высказывание 1.3.1. Каково бы ни было U, если Р — начало U, a U — конец Q, то Р входит в Q. Для доказательства этого высказывания надо уметь для любого U доказывать истинность материальной импликации 1.3.2. Если Р — начало U, a U — конец Q, то Р входите Q. Предположим, что истинна посылка импликации 1.3.2. Тогда существуют слова R и 5 такие, что U1LPS и Q3LRU. Отсюда QsiRPS, и из слов R и S, разумеется, можно образовать пару RaS. Таким образом, Р входит в Q. Мате- Материальная импликация 1.3.2, таким образом, доказана и вместе с ней доказана теорема 1.3. Теоремы 1.2 и 1.3 могут быть переформулированы так: 1.4. Если Р входит в Q, то Р есть начало некоторого кон- конца Q. 1.5. Если Р есть начало некоторого конца слова Q, то Р входит в Q. Эти теоремы дают возможность следующим образом соста- составить список всех слов, входящих в данное слово Q. Составляем список всех концов слова Q [§ 18.2.7]. Для каждого элемента этого списка (т. е. для каждого конца сло- слова Q) составляем список всех его начал [§ 18.2.6]. Объединяем последние списки, что дает искомый список всех слов, входя- входящих в Q. В самом деле, всякое слово, входящее в Q, является элементом результирующего списка [1.4] и всякий элемент результирующего списка входит в Q [1.5]. Располагая списком всех слов, входящих в данное слово Q, мы сможем для всякого слова Р выяснить, входит ли оно в Q.
96 СЕМИОТИКА [ГЛ. II $23] ВХОЖДЕНИЯ 97 Для этого нам достаточно сравнить Р с каждым элементом списка [§ 11.7.2]. Если сравнение даст положительный резуль- результат для некоторого элемента списка, то Р входит в Q. Если же для всякого элемента сравнение даст отрицательный резуль- результат, то Р не входит в Q. В силу этого имеем 1.6. Двуместный вербальный предикат «Р входит в Q» разрешим. Ввиду этого импликации 1.4 и 1.5 можно рассматривать как материальные. Так как они взаимно обратны, их можно объе- объединить, что дает 1.7. Слово Р тогда и только тогда входит в слово Q, когда Р есть начало некоторого конца Q. Аналогично доказывается 1.8. Слово Р тогда и только тогда входит в слово Q, когда Р есть конец некоторого начала Q. 2. Легко доказываются следующие два высказывания: 2.1. Всякое начало и всякий конец слова Р входят в Р. В частности, во всякое слово входит оно само и пустое слово. 2.2. Если Р входит в Q, a Q входит в R, то Р входит в R. Докажем высказывание 2.3. Если Р входит в Q, a Q входит в Р, то Рл-Q. Пусть Р входит в Q, a Q входит в Р. Тогда сущест- существуют пары RaS и TaU такие, что A) QsZRPS B) PSLTQU. Имеем C) PTLTRPSU [B),A)], [Рд ЗЕ [TR3 [Рд [SUd [C), § 19.1.3] D) &[Pd[TRd[SUd [§18.10.11], E) \HL[TRd[SUd [§ 17.5.2,D)], F) [TR'^A [E), § 17.6.3], G) [SU»3LA [E), § 17.6.3], (8) 77? IA [F), § 19.1.6], (9) Sl/IA [G), §19.1.6], A0) R1LA [(8), § 17.6.3], A1) S1A [(9), § 17.6.3], p*Q [(l), A0), (li)], что и требовалось доказать. 3. Будем называть вхождениями (точнее, ^-вхождениями в алфавите А) слова вида #*P*S, где R, Р и 5—слова в алфавите А, а *—буква, не принадлежащая А. 3.1. Если вхождения R*P*S и T*U*V совпадают, то R^T, Ржи и БЖУ. Это легко доказывается с помощью § 22.1.2. Теорема 3.1 утверждает, что всякое вхождение представляется в виде R*P*S единственным образом. Слово R называется левым крылом вхождения R*P*S, слово Р—основой этого вхож- вхождения, слово 5—правым крылом этого вхождения. В силу 3.1 и определения вхождения имеем-; 3.2. Вхождения X и Y тогда и только тогда совпадают, когда совпадают их левые крылья, совпадают их основы и совпадают их правые крылья. Вхождения с основой Р мы будем называть вхождениями слова Р; вхождения #*P#S такие, что RPS'S.Q, мы будем называть вхождениями в слово Q; вхождения слова Р, являющиеся вхождениями в слово Q, будем называть вхож- вхождениями слова Р в слово Q. Имеем очевидно 3.3. Трехместный предикат «X есть вхождение Р в Q» разрешим. Имеет место материальная импликация 3.4. Если Р входит в Q, то существует вхождение X слова Р в слово Q. В самом деле, тогда существует пара RaS такая, что QsiRPS, и, полагая X^/?#P*S, мы видим, что X есть вхождение Р в Q. Обратная импликация «если существует вхождение Р в Q, то Р входит в Q» может быть рассматриваема как усиленная [3.31. Эта усилен- усиленная импликация утверждает то же, что и высказывание общ- общности: «каково бы ни было X, если X — вхождение слова Р в слово Q, то Р входит в Q». Последнее, очевидно, верно. Таким образом, имеем 3.5. Если существует вхождение слова Р в слово Q, то Р вхо- входит в Q. Ввиду 3.4, 3.5, а также правила modus ponens для матери- материальной импликации [§ 13.4.1] и для усиленной импликации 4 А. А. Марков, Н. М. Нагорный
98 СЕМИОТИКА [ГЛ. II [§ 14.2.1], мы можем использовать имеющийся метод распозна- распознавания истинности предиката «Р входит в Q» для построения метода распознавания истинности предиката «существует вхождение Р в Q». Таким образом, имеем 3.6. Двуместный предикат «существует вхождение Р в Q» разрешим. Это дает возможность рассматривать импликацию 3.5 как материальную. Объединяя ее с материальной импликацией 3.4, получаем 3.7. Слово Р тогда и только тогда входит в слово Q, когда существует вхождение Р в Q. Легко доказывается высказывание 3.8. Если R есть левое крыло некоторого вхождения слова Р в слово Q, то RP есть начало Q. Это высказывание мы понимаем как равнозначное следую- следующей усиленной импликации: 3.9. Если существует X такое, что X есть вхождение слова Р в слово Q и R есть левое крыло X, то RP есть на- начало Q. В качестве таковой 3.9 без труда доказывается. Также легко доказывается 3.10. Если RP есть начало Q, то R есть левое крыло некото- некоторого вхождения слова Р в слово Q. Эту импликацию мы можем понимать и как материальную [§ 18.2.81 и как усиленную. Она верна при обоих пониманиях [§ 14.3]. Объединяя материальные импликации 3.8 и 3.10, полу- получаем 3.11. Слово R тогда и только тогда является левым крылом некоторого вхождения слова Р в слово Q, когда RP является на- началом слова Q. Аналогично получаем 3.12. Слово S тогда и только тогда является правым крылом некоторого вхождения слова Р в слово Q, когда PS является кон- концом Q. 4. Вхождение с пустым левым крылом мы будем называть начальным вхождением. Вхождение с пустым правым крылом мы называем концевым вхождением. §23] ВХОЖДЕНИЯ 99 Следующие высказывания легко доказываются: 4.1. Начальное вхождение слова Р в слово Q существует тогда и только тогда, когда Р есть начало Q; концевое вхождение слова Р в слово Q существует тогда и только тогда, когда Р есть конец Q. В случае существования начального вхождения слова Р в слово Q такое вхождение Р e-Q единственно и имеет вид В случае существования концевого вхождения слова Р в слово Q такое вхождение Р в Q единственно и имеет вид (Р -^ Q) * Р *. 4.2. **Р есть начальное вхождение пустого слова в Р; Р## есть концевое вхождение пустого слова в Р. 5. Нас теперь будут интересовать различные вхождения слова Р в слово Q, где Р и Q фиксированы. Для краткости мы в данном пункте будем называть их просто «вхождениями», не упоминая Р и Q. 5.1. Вхождения X и Y тогда и только тогда совпадают, когда совпадают их левые (правые) крылья [§ 17.5.2, 3.2, § 17.5.1]. Будем говорить, что вхождение X предшествует вхожде- вхождению Y, если левое крыло X есть собственное начало левого крыла Y. 5.2. Для вхождений X и Y имеет место одно из трех: X предшествует Y, Y предшествует X, X^sLY [§18.4.5, § 18.4.1]. 5.3. Вхождение не предшествует самому себе [§ 18.4.17!. г 5.4. Если вхождение X предшествует вхождению Y, а У предшествует вхождению Z, то X предшествует Z [§ 18.4.18]. Докажем высказывание 5.5. Три возможности, указанные для вхождений X и Y в теореме 5.2, исключают друг друга. Иначе говоря, невозможно, чтобы X предшествовало Y и Y предшествовало X; невозможно, чтобы X предшествовало Y и совпадало с Y; невозможно, чтобы Y предшествовало X и совпадало с X. Действительно, второй и третий случаи сразу отпадают согласно 5.3. Если бы имел место первый случай, то вхождение X предшествовало бы самому себе [5.4], что невозможно в си- силу 5.3. Докажем высказывание 5.6. Если вхождение X предшествует вхождению Y, то правое крыло Y есть собственный конец правого крыла X. 4*
100 СЕМИОТИКА [ГЛ. II $23] ВХОЖДЕНИЯ 101 Пусть R, S, Т и U означают соответственно левое крыло'Х, правое крыло X, левое крыло Y и правое крыло Y. Имеем A) RPSJLQ, B) TPUS.Q. Так как X предшествует Y, R есть собственное начало Т и существует слово V такое, что C) TS.RV, D) VjtA, так как T^lR [C)]. Имеем E) RPSTLRVPU [(l)-C)], F) PS3LVPU [E), § 17.5.2]. Если бы слово 5 было концом U, то имелось бы слово W такое, что G) U3LWS, и мы имели бы (8) P-5-VPW [E), F), §17.5.1], откуда V3LA [(8), § 19.2.3] вопреки D). Таким образом, S не есть конец U, и потому в силу того, что S и U суть концы одного и того же слова [F)], U есть собствен- собственный конец S [§18.4.91, что и требовалось доказать. Аналогично доказывается 5.7. Если правое крыло вхождения Y есть собственный конец правого крыла вхождения X, то X предшествует Y. В силу 5.6 и 5.7 имеем 5.8. Вхождение X тогда и только тогда предшествует вхождению Y, когда правое крыло вхождения Y есть собствен- собственный конец правого крыла вхождения X. Будем называть глубиной вхождения X длину левого крыла вхождения X. 5.9. Если вхождение X предшествует вхождению Y, то глу- глубина X меньше глубины Y [§ 19.1.7]. 5.10. Если глубина вхождения X меньше глубины вхожде- вхождения Y, то X предшествует Y [5.2, 5.9, § 18.8.7, § 18.8.8, § 18.8.12]. 5.11. Если глубины вхождений X и Y совпадают, то ХЖУ [5.2, 5.9]. 6. Вхождение слова Р в слово Q, предшествующее всякому другому вхождению Р в Q, мы называем первым вхождением слова Р в слово Q. Имеем очевидно 6.1. Если слово Р является началом слова Q, то началь- начальное вхождение Р в Q [4.1] является первым вхождением Р в Q. 6.2. Вхождение ** Р есть первое вхождение пустого слова в Р [4.2, 6.1]. Докажем следующую теорему существования первого вхождения: 6.3. Если слово Р входит в слово Q, то существует первое вхождение слова Р в слово Q. Пусть Р входит в Q. Тогда имеется вхождение X слова Р в слово Q [3.4]. Обозначим буквой ./V глубину X. Построим следующий одноместный арифметический *) предикат F со свободной натуральной переменной М: «существует вхождение Р в Q с глубиной Л1» или, что то же самое, «М есть глубина некоторого вхождения Р в Q». Предикат F, как легко видно, разрешим. Натуральное чис- число ./V ему удовлетворяет. Поэтому к F и N применима теорема о наименьшем числе [§21.2.1], согласно которой может быть построено наименьшее число, удовлетворяющее F. Пусть это будет L. Число L удовлетворяет F, тогда как всякое число, меньшее L, не удовлетворяет F. Так как L удовлетворяет F, имеется вхождение Y слова Р в Q с глубиной L. Покажем, что Y есть искомое первое вхождение Р в Q. Пусть Z — какое-нибудь вхождение Р в Q, отличное от Y. Согласно построению предиката F глубина Z удовлетворяет F. Поэтому глубина Z не меньше L, т. е. глубины Y. Глубина Z отлична от глубины Y, так как Z~g_Y [5.11]. Следовательно, глубина Y меньше глубины Z[§ 18.6.8]. Поэтому Y предшест- предшествует Z [5.10]. Таким образом, Y предшествует всякому другому вхожде- вхождению слова Р в Q, т. е. Y есть первое вхождение Р в Q, что и требовалось доказать. *) Арифметическими мы называем предикаты с натуральными свобод- свободными переменными. Допустимыми значениями таких переменных являются натуральные числа. См. § 10.1.
102 СЕМИОТИКА [ГЛ. II $23] ВХОЖДЕНИЯ 103 Истинность следующего высказывания почти очевидна: 6.4. Если слово Р входит в слово Q, то первое вхождение сло- слова Р в Q единственно [5.5]. 7. Легко доказывается следующее высказывание: 7.1. Если X —вхождение слова Р в слово Q, то RX есть вхождение слова Р в слово RQ и XR есть вхождение слова Р в слово QR. Согласно 7.1, если X и Y — вхождения слова Р в слово Q, то RX и RY тоже суть вхождения слова Р в одно и то же слово RQ. Поэтому можно говорить о предшествовании вхождения RX вхождению RY. Можно также говорить о предшествовании вхождения XR вхождению YR. Легко доказываются следую- следующие высказывания: , 7.2. Если X и Y —¦ вхождения слова Р в слово Q, то RX тогда и только тогда предшествует RY, когда X предшест- предшествует Y. 7.3. Если X и Y — вхождения слова Р в слово Q, то XR тогда и только тогда предшествует YR, когда X предшест- предшествует Y. Докажем высказывание 7.4. Если X — первое вхождение слова Р в слово Q, то XR есть первое вхождение слова Р в QR. Пусть X есть первое вхождение слова Р в слово Q. Обо- Обозначая через 5 левое крыло X, через Т правое крыло X, имеем 0) B) XR Ж XR есть вхождение слова Р в слово QR [7.1]. Покажем, что XR предшествует всякому другому вхождению Р в QR. Пусть Y—вхождение Р в QR, и пусть C) Y^XR. Требуется доказать, что XR предшествует Y. Обозначая через U левое крыло Y, через V—правое крыло Y, имеем D) YsLU*P*V. Так как X — вхождение в Q, a Y—вхождение в QR, имеем E) SPTJLQ [A)], F) UPVslQR [B)], G) UPVSLSPTR [E), F)]. Если бы мы имели ?/SS, то имели бы также V °-TR, [G), § 17.5.2], и вхождения XR и Y совпадали бы [B), D)] вопреки C). Следовательно, (8) UjtS. Покажем, что U не -может быть собственным началом 5. Допустим, что U—собственное начало 5. Тогда имеется слово W такое, что [(9)]. (9) В силу (8) A0) Имеем A1) PVsLWPTR [G), (9)]. В силу A0) и § 19.2.3 WP не есть начало Р. Поэтому Р есть начало WP [A1), § 18.3.4] и существует слово К такое, что A2) WPS.PK. Имеем QTLUPKT [E), (9), A2)]. Таким образом, A3) U*P*KT есть вхождение слова Р в слово Q. Левое крыло этого вхожде- вхождения есть собственное начало левого крыла вхождения X. Следовательно, вхождение A3) предшествует вхождению X. Это противоречит тому, что X — первое вхождение Р в Q. К этому противоречию мы пришли, предположив, что U — собственное начало 5. Следовательно, U не есть собственное начало ?. Поэтому 5 есть начало U [§ 18.4.5, G)]. В силу (8) 5 есть даже собственное начало U. Поэтому вхождение XR предшествует вхождению Y, что и требовалось доказать. Докажем высказывание 7.5. Если X — первое вхождение слова Р в слово Q и Р не есть начало слова IQ, то ?Х есть первое вхождение слова Р в сло- слово IQ. Обозначая через U левое крыло X, через V — правое кры- крыло X, имеем A4) х ж и * р * V.
104 СЕМИОТИКА [ГЛ. П $ $23] ВХОЖДЕНИЯ 105 ?Х есть вхождение слова Р в слово |Q [7.1]. Требуется дока- доказать, что |Х предшествует всякому отличному от |Х вхожде- вхождению слова Р в слово |Q. Пусть Y — вхождение слова Р в слово |Х, и пусть Обозначая через R левое крыло Y, через 5—правое крыло Y имеем ' A6) и A7) Q Если бы слово R было пустым, слово Р было бы началом слова |Q вопреки предположению. Таким образом, Ri\ и существуют слово Т и буква г| такие, что A8) RHli)T. Имеем О9) ЦТРБЖЩ [A7), A8)], и потому B0) г\Я1 [A9)], B1) TPSlLQ [A9)], B2) tfSgT [A8), B0)]. Таким образом, Г*Р*5 есть вхождение слова Р в слово О [B1)]. Имеем V B3) \X1LIU*P*V [A4)], B4) Гзг?Г*Р*5 [A6), B2)]. Отсюда B5) Wt-IT [B3), B4), A5), 5.1], B6) U^LT [B5)], T*P*Sj?X [A4), B6), 5.1]. Таким образом, Г*Р*5 есть вхождение слова Р в слово Q, отличное от первого вхождения X слова Р в слово Q. Сле- Следовательно, X предшествует Г*Я*5. Поэтому gX пред- предшествует gT*P*S [7.2], т. е. gX предшествует Y [B4)], что и требовалось доказать. Из~соответствующих определений легко следуют высказы- высказывания: 7.6. Если слово Р входит в слово Q, то левое крыло первого вхождения слова Р в слово Q есть начало левого крыла всякого вхождения Р в Q. 7.7. Если слово Р входит в слово Q, то правое крыло всякого вхождения слова Р в слово Q есть конец правого крыла первого вхождения Р в Q. С помощью высказывания 3.11 легко доказывается 7.8. Слово R тогда и только тогда является левым крылом первого вхождения слова Р в слово Q, когда соблюдаются условия: а) RP есть начало Q; б) каково бы ни было начало S слова Q такое, что SP также есть начало Q, R есть начало S. Аналогично с помощью 3.12 доказывается высказывание 7.9. Слово Т тогда и только тогда является правым крылом первого вхождения слова Р в слово Q, когда соблюдаются условия: а) РТ есть конец Q; б) каков бы ни был конец U слова Q такой, что PU также есть конец Q, U есть конец Т. Легко доказывается высказывание 7.10. Если Р^Л и Р входит в Q, то Р не входит в левое крыло своего первого вхождения в Q. 8. Слово PSR мы будем называть результатом подста- подстановки слова S вместо вхождения Р * Q * R. Очевидно имеем 8.1. Для всякого вхождения X и слова S имеется однозначно определенный результат подстановки слова S вместо X. Он является словом в рассматриваемом алфавите. Имеем далее 8.2. Если слово Q входит в слово Т, то имеется однозначно определенный результат подстановки слова S вместо первого вхождения слова Q в слово Т. Он тогда является словом в рас- рассматриваемом алфавите [6.3, 6.4, 8.1]. Результат подстановки слова 5 вместо первого вхождения слова Q в слово Т мы будем обозначать символом 2 E, Q, Т). Таким образом, имеем 8.3. Выражение 2 (S, Q, Т) осмысленно тогда и только тогда, когда слово Q входит в слово Т. В этом случае оно озна- означает некоторое слово в рассматриваемом алфавите. Из определения результата подстановки слова вместо вхож- вхождения следует высказывание 8.4. Равенство W Ж 2E, Q, Т)
106 СЕМИОТИКА [ГЛ. II §24] СИСТЕМЫ СЛОВ 107 имеет место тогда и только тогда, когда имеются начало U слова W и конец V слова W такие, что: а) U есть левое крыло первого вхождения Q в Т; б) V есть правое крыло первого вхождения Q в Т; в) WJLUSV. Имеем, как легко видеть, 8.5. 2E, Л, T)TlST. § 24. Системы слов 1. В этом параграфе мы будем иметь дело с алфавитом А и двумя различными буквами * и у, не входящими в А. Под «словами» будем понимать слова в алфавите А, если не оговоре- оговорено иное; под «вхождениями» — ^-вхождения в алфавите А. Слова в алфавите Ау, начинающиеся буквой у и оканчиваю- оканчивающиеся этой буквой, мы будем называть у-системами в алфавите А или, короче,— системами. Буквы Р, Q, R, S будут применяться как вербальные пере- переменные в алфавите А; буквы X, Y, Z — как вербальные пере- переменные в алфавите Ау. Следующие высказывания очевидны: 1.1. Если X — система, то ХРу и уРХ суть системы. 1.2. Если X — система, то всякий конец X, начинающийся буквой у, есть система и всякое начало X, оканчивающееся бук- буквой у, есть система. 1.3. Вербальный предикат в алфавите Ау «X — система» разрешим. Легко доказывается высказывание 1.4. Одноместный вербальный предикат в алфавите Ау со свободной переменной Y «существуют система X и слово Р в алфавите А такие, что Y S ХРу» разрешим. Докажем высказывание 1.5. Всякая система, отличная от у, представима как уРХ, где Р —слово в алфавите А, X —система. Пусть Y—система и Y^y. Покажем, что Y можно пред- представить в виде уРХ. По определению у есть начало системы Y, и потому A) [§ 18.8.4], где (у*—Y)-?_h, так как Y~?_у [A)]. Поэтому (у *— Y) имеет последнюю букву [§ 17.4.3]. Ввиду A) она является также последней буквой системы Y, т. е. буквой у. Таким образом, у входит в (y*-Y), и потому существует первое вхождение буквы у в слово G"- Y) [§ 23.6.3]. Это вхождение имеет вид B) P*y*W, где Р и W — слова в алфавите Ау. Ввиду того, что вхож- вхождение B) является первым вхождением у в (у-К), у не входит в Р [§ 23.7.10]. Таким образом, Р есть слово в ал- алфавите А. Ввиду того, что B) есть вхождение в (y^-Y), имеем C) (y--Y)lLPyW, и потому [A), C)] ЖуРХ, где X^±yW. Будучи концом системы Y, начинающимся бук- буквой у [C)], X есть система [1.2], что и оставалось доказать. Докажем следующую теорему: 1.6. Пусть F — одноместный вербальный предикат в алфа- алфавите Ау. Пусть у удовлетворяет F, и пусть соблюдается сле- следующее условие: «каковы бы ни были система X и слово Р в ал- алфавите А, имеет место импликация если X удовлетворяет F, то уРХ удовлетворяет F». Тогда всякая система удовлетворяет F. Пусть G означает следующий одноместный арифметический предикат со свободной натуральной переменной N: «всякая система, длина которой не превышает N, удовлетворяет F». Число Л удовлетворяет G, так как не существует систем длины, не превышающей Л [1.5]. Пусть натуральное число N удовле- удовлетворяет G. Покажем, что N\ тоже удовлетворяет G. Пусть X—система и [Xd^Af|. Покажем, что X удов- удовлетворяет F. Если ХЖу,та X удовлетворяет F по условию теоремы. Пусть XzjLy. Тогда существуют слово Р в алфа- алфавите А и система Y такие, что D) ХЖуРУ [1.5]. Ввиду D) [Yd <[Xa [§ 19.1.2], и потому [Yd^N. Так как N удовлетворяет предикату G, Y удовлетворяет F. Поэтому . по условию теоремы и ввиду D) X также удовлетворяет F. Это мы доказали для всякой системы X, длина которой не превышает N\. Следовательно, N\ удовлетворяет предикату G. Итак, каково бы ни было натуральное число N, имеет место импликация «если N удовлетворяет G, то N\ удовлетво- удовлетворяет G». Таким образом, всякое натуральное число удовлет-
108 СЕМИОТИКА [ГЛ. II воряет G. Отсюда легко следует, что всякая система удов- удовлетворяет предикату F, что и требовалось доказать. С помощью теоремы 1.6 легко доказывается высказывание 1.7. Всякая система, отличная от у, представляется в виде ХРу, где X — система, а Р — слово в алфавите А. После этого аналогично 1.6 может быть доказана теорема 1.8. Пусть F — одноместный вербальный предикат в ал- алфавите Ау. Пусть у удовлетворяет F, и пусть соблюдается сле- следующее условие: «каковы бы ни были система X и слово Р в ал- алфавите А, имеет место импликация если X удовлетворяет F, то ХРу удовлетворяет F». Тогда всякая система удовлетворяет F. 2. Будем называть атомами слова вида уРу, где Р — слово в алфавите А. Будем называть элементами вхождения атомов в системы. Будем называть элементами системы X вхождения атомов в систему X. Верно высказывание 2.1. Всякий элемент является вхождением однозначно опре- определенного атома в однозначно определенную систему [§ 23.5.1]. Докажем следующую теорему: 2.2. Всякий элемент системы уРХ, где Р — еловое алфави- алфавите А, а X — система, имеет один из видов: а) *у/)-у*(у-Х); б) yPW, где W—элемент системы X. Пусть V—элемент системы уРХ, т. е. вхождение в уРХ некоторого атома yQy, где Q—слово в алфавите А. Обозна- Обозначая крылья этого вхождения буквами Y и Z, имеем A) l/sr*yQy*Z, B) FyQyZSyPX. Так как у — начало системы X, имеем C) XSy(y-X). Рассмотрим два возможных случая: случай 1), когда F2A, и случай 2), когда Т.~ В случае 1) имеем D) QyZ<3iPy(y^X) [B), § 17.5.2, C)], где Р и Q—слова в алфавите А, не содержащем буквы у. Поэтому E) Q1LP % $24J СИСТЕМЫ СЛОВ 109 | И '1F) ZI(T-X) [D), § 22.1.1] и, следовательно, Узг*уЯу*(у-Х) [A), E), F)]. Таким образом, в случае 1) V имеет вид а). Рассмотрим теперь случай 2). В этом случае Y имеет началом букву у, ввиду чего G) rSy(y-F). Имеем (8) (y^Y)yQyZlLPX [B), G), § 17.5.2]. (y-V)y не есть начало слова Р в алфавите А. Так как (у •*- Y) у и Р суть начала одного и того же слова [(8)], Р есть начало слова (y-F) [§ 18.4.6], и мы имеем (9) Р (Р - (у - Y)) ЗЕ (у - У) [§ 18.8.4]. Поэтому A0) (P-G-F))yQyZsX [(8), (9), § 17.5.2]. Полагая A1) r^(/>-(y-K))*7Qy*Z, мы видим, что W есть вхождение атома yQy в систему X [A0), A1)] и, следовательно, элемент системы X. Вместе с тем VSy(y-F)*yQy*Z [A), G)] SyP(P-(y-K))*yQy*Z [(9)] TLyPW [A1)]. Таким образом, в случае 2) V имеет вид б) и доказатель- доказательство теоремы 2.2 завершено. Аналогично имеем 2.3. Всякий элемент системы ХРу, где X—система, а Р — слово в алфавите А, имеет один из видов: а) (у -гХ)*уРу*. б) WPy, где W —элемент системы X. Докажем теорему 2.4. Всякая система, отличная от у, начинается атомом.
по СЕМИОТИКА ГГЛ. II §24] СИСТЕМЫ СЛОВ Щ Пусть X—система и Х^^. Тогда могут быть указаны слово Р в алфавите А и система Z такие, что XsryPZ [1.5]. Система Z имеет началом букву у, и потому ZlLy(y^Z) [§ 18.8.4]. Следовательно, причем уРу есть атом. Теорема тем самым доказана. Аналогично доказывается высказывание 2.5. Всякая система, отличная от у, оканчивается атомом [1.7]. 3. Будем называть членами системы X слова Р (в алфавите А) такие, что атом уРу входит в X. Будем говорить, что Р — первый член системы X, если уРу есть начало X; будем говорить, что Р — последний член системы X, если уРу — конец X. Будем говорить, что система X соединяет слово Р со словом Q, если Р — первый член X, а Q — последний член X. Имеем следующие верные высказывания: 3.1. Всякая система, отличная от у, имеет единственный первый член и единственный последний член [2.4, 2.5, § 24.1.1, § 17.5.1, § 17.5.2]. 3.2. Первый и последний члены системы, отличной от у, суть ее члены. 3.3. Если X — система, то Р есть первый член системы уРХ и последний член системы ХРу. 3.4. Если X — система, то всякий ее член есть член как системы уРХ, так и системы ХРу. 3.5. Если X — система, то всякий член системы уРХ либо совпадает с Р, либо есть член системы X [2.2, § 23.3.2, §23.7.1, § 17.5.1, § 17.5.2]. 3.6. Если X — система, то всякий член системы ХРу либо совпадает с Р, либо есть член системы X [2.3, § 23.3.2, § 23.7.1, § 17.5.1, § 17.5.2]. Систему у естественно называть пустой: никакое слово не является ее членом. Разумеется, следует отличать пустую сис- систему от пустого слова. 4. Какова бы ни была система X, имеет место неравен- неравенство [[Х?д:>| *), и потому осмысленно выражение ([[Х^а—|)» Число, являющееся его значением, мы будем называть объ- *) [Xv здесь означает проекцию слова X на однобуквенный алфавит у. емом системы X. Объем системы X мы будем обозначать символом [Х°. Согласно определению имеем A) {Х°Ж([[Х^-\) и, следовательно, [Х°|ЗГ[[Х*> [A)]. Здесь X — любая система. 4.1. Если система X отлична от у, то А < ГХ° [2.4, § 19.4.1, § 19.4.3]. 4.2. [у°Щ. 5. Каждому элементу Y припишем в качестве его номера натуральное число [[2V^|, где Z—левое крыло Y. Номер элемента Y будем обозначать символом 5.1. Номер всякого элемента X есть положительное нату- натуральное число. Это непосредственно следует из определения номера эле- элемента. 5.2. Номер всякого элемента системы X мажорируется объе- объемом системы X. Пусть Y — элемент системы X. Докажем, что A) [ГЛ<[Х°. Y есть вхождение в X однозначно определенного атома уРу, где Р—слово в алфавите А [2.1]. Обозначим буквой Z левое крыло Y. Имеем по определению номера элемента B) [FA°I[[ZV0|. Слово Zy Py является началом системы X [§ 23.3.8]. Поэтому [[ZTP7*9<[[X*> [§ 19.4.2], откуда C) [[Zve||<[[Xv* [§ 19.4.1, § 19.4.3]. Следовательно, D) [[Z*>|<[X° [C), 4A), § 17.5.1], т. е. имеем A) [D), B)], что и требовалось доказать. Докажем следующую теорему:
112 СЕМИОТИКА 1ГЛ. II 5 24] СИСТЕМЫ СЛОВ ИЗ 5.3. Каковы бы ни были система X и натуральное число N такое, что E) может быть указан элемент Y системы X такой, что F) [УАЖЫ. Доказательство проведем методом ограниченной арифме- арифметической индукции. Фиксируем систему X и рассмотрим следующий одноместный арифметический предикат F со сво- свободной переменной М: G) «может быть указан элемент Y системы X такой, что [Гд Ж М |». ¦ Если ХЖу, то [[Х?дЩ и [Х°з:Л [4A)]. Тогда не су- существует натуральных чисел N, удовлетворяющих усло- условию E), и тривиально верно, что для всякого такого N может быть указан элемент Y системы X, удовлетворяющий условию F) [§ 9.3]. В дальнейшем мы будем считать, что X^Ly. Тогда X начинается атомом [2.4], т. е. имеется слово Р в алфавите А такое, что атом уРу есть начало X. Имеется слово Z в алфавите ку такое, что (8) XlLyPyZ. Положим (9) Y^±*yPy*Z. Ввиду (8) и (9) Y есть вхождение атома в систему X, т. е. элемент этой системы. Левое крыло этого элемента пусто и потому, согласно определению номера элемента, [§ 19.4.4]. Таким образом, натуральное число Л удовлетворяет преди- предикату F. Ввиду (8) имеем [[Х*»>||, и потому [Х°>| [4A)], а (ГХ°—|) есть натуральное число. Пусть М—число, меньшее ([Х°—|). Докажем импли- импликацию A0) «если М удовлетворяет F, то М\ удовлетворяет F». Пусть М удовлетворяет F. Может быть указан элемент U системы X такой, что A1) [UA^M\. U есть вхождение однозначно определенного атома yQy в X. Здесь Q—слово в алфавите А. Обозначая буквами V и W левое и правое крылья вхождения U, имеем A2) XlLVyQyW. Так как V—левое крыло U, имеем по определению номера элемента A3) Имеем далее A4) MI[[FS [A3), A1), § 17.5.1], A5) [[X->*aM\\[[W*> [A2), § 19.4.1, A4), § 19.4.3, § 19.4.5], A6) [X°*:M\[[W*> [A5), § 18.10.11, 4A), § 17.5.1]. Так как, по предположению, М < ([Х°—|), имеем М \ < [Х°. Следовательно, [[Г*>^Л [A6), § 18.6.12], и потому Wj?A [§ 19.4.4] и A7) yW^Ly [§ 17.5.2]. yW является концом системы X [A2)] и, следовательно, системой [1.2]. В силу A7) yW начинается атомом, т. е. имеется слово R в алфавите А такое, что yRy есть начало слова yW [2.4]. Имеем A8) yWJZyRy{yRy*-yW) [§ 18.8.4], A9) XlLVyQyRyiyRy-yW) [A2), A8)]. Положим по определению B0) T^VyQ*yRy*(yRy<-yW). Т есть вхождение атома yRy в систему X [A9), B0)], т. е. элемент системы X. Левым крылом Т является слово VyQ, для которого имеем [[Уу(РдЩУ?д\ [§ 19.4.1, § 19.4.3, § 19.4.5] ЖМ\ [A4)]. Отсюда по определению номера элемента ЖМ\\.
114 СЕМИОТИКА [ГЛ. II §24] СИСТЕМЫ СЛОВ 115 Таким образом, число М| удовлетворяет предикату F. Им- Импликация A0) тем самым доказана [§ 13.6.2]. Применяя метод ограниченной арифметической индукции, мы видим, что каждое натуральное число М такое, что удовлетворяет предикату F. Если же число ./V удовлетворяет условию E), то и потому (./V—|) удовлетворяет предикату F. Это означает, что существует элемент системы X с номером N, что и тре- требовалось доказать. 5.4. Если Y и U — элементы одной и той же системы и\УАЩи^, то YSLU. Действительно, пусть Y и U—элементы системы X, и пусть B1) Y и U суть вхождения некоторых атомов уРу и yQy соот- соответственно в X. Р и Q являются здесь словами в алфавите А. Обозначая левое и правое крылья U через V и Т, левое и правое крылья Y через Z и W, имеем B2) B3) B4) XsLZyPyW, B5) XsiVyQyT, B6) [Г4 ЗЕ B7) [t/ B8) [[Z*> ЗЕ [[К*> [B1)—B7)]. Если бы слово Vy было началом слова Z, то мы имели бы [[KY*><[[Z*> [§ 19.4.2], т. е. B9) [[^|<[[РЙ [§ 19.4.1, § 19.4.3], откуда ПУ*Ч<[[1^ [B8), B9)] и, следовательно, [§ 17.5.2], что абсурдно. Таким образом, слово Vy не есть начало слова Z. А так как Vy и Z суть начала одного и того же слова X, то Z есть начало V [§ 18.4.6]. Аналогичным образом доказывается, что V—начало Z. Следовател ьно, C0) 2 ЗЕК [§ 18.3.3]. Имеем далее C1) ZyPyWlLVyQyT [B4), B5)], C2) PyWHQyT [C1), C0), § 17.5.2], C3) PSQ [C2), § 22.1.1], C4) WЖТ [C2), § 22.1.1], YS.U [B2), B3), C0), C3), C4)], что и требовалось доказать. 6. Мы будем говорить, что элемент Y предшествует элементу Z, если Y и Z суть элементы одной и той же си- системы и левое крыло Y есть собственное начало левого крыла Z. 6.1. Никакой элемент не предшествует самому себе [§ 18.4.17]. 6.2. Если элемент Y предшествует элементу Z, то [YA < [ZA. В самом деле, пусть элемент Y предшествует элементу Z (Y и Z суть элементы одной и той же системы). Обозначим буквой U левое крыло Y, буквой V—левое крылс^. U есть собственное начало К, так как Y предшествует Z. Поэтому U ^:V и, следовательно, Y'zjtZ. Так как U—начало К, имеем < ЦК?» [§ 19.4.2], и потому, согласно определению номера элемента, A) [FA<[ZA [§ 18.6.10, § 18.10.11]. Если бы имело место равенство [FAS[ZA, то мы имели бы равенство Y Ж Z [5.4], а мы видели, что Y ~j?_ Z. Таким образом, и, следовательно, B) что и требовалось доказать. 6.3. Если Y и Z — элементы одной и той же системы и [YA < [ZA, то Y предшествует Z.
116 СЕМИОТИКА [ГЛ. П Действительно, пусть Y uZ—элементы системы X, и пусть имеет место B). Y и Z являются тогда вхождениями в X. Обозначим через U левое крыло вхождения Y, через V — левое крыло вхождения Z. U и V являются началами слова X [§ 23.3.8], в силу чего V есть начало U или U есть собст- собственное начало V [§ 18.4.5]. Но если бы V было началом U, то мы имели бы [[V*>| <[[?/*> | [§ 19.4.2, § 18.6.10, § 18.10.11], т. е. [Z что несовместимо с B) [§ 18.6.13]. Следовательно, V не есть начало U, и потому U есть собственное начало V. Это озна- означает, что Y предшествует Z. Это и требовалось доказать. 6.4. Элемент Y тогда и только тогда предшествует элементу Z, когда Y и Z суть элементы одной и той же системы и [YA < [ZA [6.2, 6.3]. 6.5. Если элемент Y предшествует элементу Z, то Z не предшествует Y [6.4]. 7. Следующее высказывание непосредственно вытекает из определения элемента: 7.1. Всякий элемент есть слово вида A) Y*yPy*Z. Имеем также 7.2. Всякий элемент представляется в виде (I) единствен- единственным образом [§ 22.1.1, § 22.1.2]. В силу 7.1 и 7.2 законно следующее определение: Слово Р в представлении A) элемента X мы называем ядром элемента X. Следующее высказывание легко следует из определений. 7.3. Слово Р тогда и только тогда есть ядро некоторого элемента системы X, когда Р есть член X. 8. Пусть X—система, a N—натуральное число такое, что | ^ jV ^ [Х°. N-м членом системы X мы будем называть ядро такого элемента Y системы X, что [УАЖЫ. Если J < N < [Х°, то N-й член системы Х'"мы будем на- называть внутренним членом X. § 25. Схемы 1. В этом параграфе А означает некоторый алфавит, а, р, у и *—некоторые попарно различные буквы, не вхо- входящие в А. Мы введем в рассмотрение алфавит Б, положив | $ 251 по определению СХЕМЫ Б^Асф. 117 Буквы Р и Q будут применяться как вербальные переменные в алфавите А; буквы X, Y и Z —- как вербальные переменные в алфавите Бу; буквы Т, U, V, W — как вербальные перемен- переменные в алфавите Б. Буквой у мы будем пользоваться для построения у-систем в алфавите Б. Как и в § 24, мы будем называть их просто системами. Буквой * мы будем пользоваться для построения ¦-вхождений в алфавите Бу, которые мы будем называть про- просто вхождениями. 2. Слова вида P\Q, где ? — буква алфавита oc(J, мы будем называть формулами подстановок (в алфавите А); слова вида PaQ — простыми формулами подстановок, слова вида P$Q — заключительными формулами подстановок. Очевидным образом имеем 2.1. Всякая формула подстановки является простой или заключительной. 2.2. Никакая простая формула подстановки не является заключительной. 2.3. Всякая формула подстановки единственным образом представляется в виде P%Q, где ? — буква алфавита а$ [§22.1.3]. Слово Р будет называться левой частью формулы подста- подстановки PIQ; слово Q — правой частью этой формулы подста- подстановки. Имеем 2.4. Левая и правая части всякой формулы подстановки суть слова в алфавите А. Нетрудно видеть, что следующие вербальные предикаты разрешимы: «X есть формула подстановки», «X есть простая формула подстановки», «X есть заключительная формула под- подстановки», «X есть формула подстановки и Я — левая часть X», «X есть формула подстановки и Q — правая часть X». !¦ 3. Мы будем говорить, что формула подстановки F дейст- действует на слово Р, если левая часть F входит в Р. В этом случае мы будем под результатом действия F на Р подразумевать ре- результат подстановки правой части формулы подстановки F вместо первого вхождения ее левой части в слово Р. Имеем 3.1. Результат действия формулы подстановки F на слово Р определен тогда и только тогда, когда F действует на Р. Он является тогда словом в алфавите А [§ 23.8.2].
118 СЕМИОТИКА [ГЛ. II §25] СХЕМЫ 119 4. Мы будем говорить о у-системе X в алфавите Б, что она есть схема (точнее —у-схема в алфавите Б), если все ее члены суть формулы подстановок. Нетрудно видеть, что вербальный предикат «X — схема» разрешим. Мы будем говорить, что схема X действует на слово Р, если хотя бы один член схемы X действует на Р. Это определе- определение осмысленно ввиду того, что члены схемы X суть формулы подстановок. Мы будем говорить, что элемент Y действует на слово Р, если ядро этого элемента действует на Р. В этом случае резуль- результат действия ядра К на Р мы будем считать результатом действия Y на Р. 4.1. Если схема X действует на слово Р, то имеется единст- единственный элемент схемы X, действующий на Р и предшествую- предшествующий всякому другому элементу схемы X, действующему на Р. Действительно, допустим, что схема X действует на слово Р. Построим одноместный арифметический предикат G «N есть номер некоторого элемента схемы X, действую- действующего на Р», где X и Р фиксированы, a N—свободная натуральная пе- переменная. Этот предикат очевидно разрешим. Поскольку X действует на Р, имеется член Q схемы X, действующий на P. Q является ядром некоторого элемента Y схемы X [§ 24.7.3]. [Кд есть положительное натуральное число [§ 24.5.1]. Y действует на Р, так как ядро Q элемента Y действует на Р. Таким образом, [YA удовлетворяет преди- предикату G. По теореме о наименьшем числе может быть указано наименьшее число, удовлетворяющее С Пусть это будет М. Так как М удовлетворяет G, М является номером некото- некоторого элемента Z схемы X, действующего на Р. Покажем, что Z предшествует всякому другому элементу схемы X, действующему на Р. В самом деле, пусть W—элемент схемы X, действующий на Р, и пусть W^lZ. Имеем [WA^[ZA [§ 24.5.4], т.е. [WA^M. [WA есть номер элемента схемы X, действую- действующего на Р, т. е. [WA удовлетворяет предикату G. А так как М есть наименьшее число, удовлетворяющее G и [WAj?M, имеем М < [WA, т. е. [ZA < [W\ Следовательно, Z предшествует W [§ 24.6.3]. Таким образом, Z предшест- предшествует всякому другому элементу схемы X, действующему на Р. Единственность элемента схемы X, действующего на Р и предшествующего всякому другому элементу схемы X, дейст- действующему на Р, вытекает из высказывания § 24.6.5. Мы будем говорить, что элемент Y активен на слове Р в схеме X, если Y — элемент схемы X, Y действует на Р и предшествует всякому другому элементу схемы X, действую- действующему на Р. Следующее высказывание является перефразировкой вы- высказывания 4.1: 4.2. Если схема X действует на слово Р, то имеется единст- единственный элемент, активный на Р в X. Результатом действия схемы X на слово Р мы будем счи- считать результат действия на Р элемента, активного на Р в X. Легко доказывается высказывание 4.3. Результат действия схемы X на слово Р определен тог- тогда и только тогда, когда X действует на Р. Он тогда является словом в алфавите А. Мы будем говорить, что схема X переводит слово Р в слово Q, если Q есть результат действия схемы X на слово Р. В даль- дальнейшем запись A) X: будет означать, что X есть схема и X переводит слово Р в слово Q. Как нетрудно видеть, трехместный вербальный предикат A) разрешим. Очевидно следующее высказывание: 4.4. Если X: Р [f- Q и X: Pfr-R, то Q&.R. Мы будем говорить, что схема X просто переводит слово Р в слово Q, если X переводит Р в Q и ядро элемента, активного на Я в X, есть простая формула подстановки; мы будем говорить, что схема X заключительно переводит слово Р в слово Q., если X переводит Р в Q и ядро элемен- элемента, активного на Р в X, есть заключительная формула подстановки. В дальнейшем X: P\-Q будет означать, что X просто переводит Р в Q; X: Py-.Q будет означать, что X заключительно переводит Р в Q. Ввиду того, что ядро всякого элемента схемы X есть ее член и, следовательно, является формулой подстановки, имеем
120 СЕМИОТИКА СГЛ. II 4.5. Если X: PH-Q, то X: P\-Q или X: P\-'Q [2.1]. Имеем также 4.6. Если X: P\-Q, то неверно, что X: Р\— -Q. [2.2]. В дальнейшем запись B) X: Р~[ будет означать, что схема X не действует на слово Р. 4.7. Каковы бы ни были схема X и слово Р, имеет место одно и только одно из следующих трех утверждений: а) существует единственное слово Q такое, что X:P[-Q; б) существует единственное слово Q такое, что X: Ph-Q; в) X: PI. Имеем далее 4.8. Если Y—единственный действующий на Р член схемы X, то Y активен на Р в X. 5. Будем говорить о у-системе X в алфавите А, что она есть переводная система схемы Z, если для любых Р и Q имеет место материальная импликация «если yPyQy входит в X, то Z: Р (— Q». Нетрудно видеть, что предикат «X—переводная система схемы Z» разрешим. Тривиально верно высказывание 5.1. уРу является переводной системой схемы Z, соеди- соединяющей Р с Р [§ 24.3]. Легко доказывается 5.2. Если Z: P\— Q, то yPyQy—переводная система схемы Z, соединяющая Р с Q. Докажем теорему 5.3. Если переводная система X схемы Z соединяет Р с Q, а переводная система Y схемы Z соединяет Q с R, то переводная система A) (yQy -, X) yQy (yQy -7) схемы Z соединяет Р с R. Действительно, пусть соблюдены условия теоремы. Тогда Р есть первый член X, Q—последний член X и первый член Y, R — последний член Y. Это означает, что уРу есть начало X, yQy—конец X и начало Y, yRy—конец Y. Ввиду этого осмыслены начальное дополнение (yQy —r X) и концевое дополнение (yQy—Y). Они, как и системы X ;25] СХЕМЫ 121 и Y, являются словами в алфавите Ау. Кроме того, имеем B) (yQy -* X) yQy Ж X [§ 18.9.4], C) yQy(yQy*-YKLY [§18.8.4], в силу чего X есть начало, a Y—конец слова A). Поэтому слово уРу есть начало слова A), а слово yRy—конец слова A). Отсюда следует, что буква у есть как начало, так и конец слова A). Следовательно, слово A) является у-системой в алфавите А, Р есть первый член этой у-си- стемы, a R — ее последний член. Иначе говоря, у-система A) соединяет Р с R. Остается доказать, что эта система яв- является переводной системой схемы Z, т. е. что для всяких слов 5 и Т в алфавите А таких, что слово ySyTy входит в слово A), имеем Z: S\—T. Итак, пусть ySyTy входит в слово A), причем S и Т суть слова в алфавите А. Имеем (yQy ^ X) yQy (yQy - Y) Ж UySyTyV, где U и V—слова в алфавите Ау. Слова UySyTy и X суть начала одного и того же слова [B)]. Поэтому UySyTy есть начало X или X есть собственное начало UySyTy [§ 17.4.5]. В первом случае ХЖ11у5уТуУ, где V—слово в Ау. Но тогда у5уГу входит в переводную систему X схемы Z, и потому Z: 5 j— Т. Во втором случае UySyTy Ж XV", где V"—непустое слово в Ау. Следовательно, слова X и UySy суть начала одного и того же слова, и потому X есть начало UySy или UySy есть собственное начало X. Кроме того, в этом случае У'ЖУ'у, где V"—некоторое слово в Ау, и, значит, UySyTlzXV'". Допустим, что UySy есть собственное начало X. Тогда X^UySyU', где U' — непустое слово в Ау. Так как послед- последней буквой системы X является у, то U' Ж U"y, где U" — слово в Ау. Таким образом, X Ж UySyU"y, и потому UySyT^UySyU"yV". Отсюда Тжи'уУ", что невозможно, так как Т—слово в А. Следовательно, X есть начало UySy, и потому D) UySy Ж XW для некоторого W. Следовательно, иуЗуТуУЖ XWTyV. Но UySyTyV есть наша система A). Значит, (yQy -г X) yQy (yQy - Y) Ж XWTyV.
122 СЕМИОТИКА [ГЛ. II Ввиду B) это равенство может быть записано следующим образом: X(yQy^Y)lLXWTyV> и потому E) (yQy*-Y)iLWTyV [§ 17.5.2]. ySy и W суть концы одного и того же слова [D)]. Поэтому у5у есть конец W или W—конец Sy. В первом случае имеется слово Q в алфавите Ау такое, что F) W. Имеем тогда YTLyQyWTyV ^LyQyuySyTyV [C), E)] [F)] и, таким образом, ySyTy входит в переводную систему Y схемы Z. Поэтому имеем в данном случае Z: 5 |— Т. Рассмотрим второй случай, когда W—конец Sy. Если 1Р1Л, то G) XHLUySy [D)] и (8) (yQy^-Y)lLTyV [E)]. Поэтому имеем (9) UySylL(yQy-rX)yQy [G), B)], и потому A0) SEQ [(9), §17.5.1, § 22.1.2]. Имеем, следовательно, YlLySy(yQy^Y) [C), A0)] ILySyTyV [(8)]. Таким образом, в данном случае слово ySyTy входит в пе- переводную систему Y схемы Z, в силу чего Z: S\— Т. Пусть теперь Wz^A. Тогда ввиду D) у есть последняя буква слова W, т. е. имеется слово в в алфавите Ау та- такое, что A1) WSiQy. §25] Имеем A2) СХЕМЫ 123 UySJLXQ [D), A1)] Ж(у-^Х)ув [§ 18.9.4], ввиду чего ув есть конец 5 или 5 есть конец в [§ 18.4.10]. Но ув не есть конец слова S в алфавите А. Таким обра- образом, 5 есть конец 9, т. е. имеется слово Г в алфавите Ау такое, что A3) 9ЖГ5. Имеем UyTLXT [A2), A3), § 17.5.1], в силу чего слово Г пусто или имеет последнюю букву у. Имеем далее [E), (И)] [A3)] и, следовательно, A4) YlZyQyTSyTyV [C)]. В силу равенства A4) слово у5уГу входит в Y в обоих возможных здесь случаях: когда Г Ж Л и когда у—послед- у—последняя буква слова Г. Следовательно, Z: S\—T и в данном случае. Теорема 5.3 доказана. Докажем теорему 5.4. Если первые члены переводных систем X и Y схемы Z существуют и совпадают, то X есть начало Y или Y — на- начало X. Пусть выполнено условие теоремы, и пусть Р — общий пер- первый член переводных систем X и Y схемы Z. Тогда уРу есть общее начало систем X п Y. Пусть W — единственное наиболь- наибольшее общее начало систем X и Y, которое существует согласно § 18.5.9. Пусть U и V —• взаимно простые слева слова в алфа- алфавите Ау такие, что A5) X1LWU и A6) Y^LWV. Они существуют согласно § 18.5.8 и определению наиболь- наибольшего общего начала. Слово уРу есть начало W [§ 18.5.10]. у входит в W, и потому существует последнее вхождение у в W. Пусть это будет вхождение 2*у*А, где 2 и А —
124 СЕМИОТИКА [ГЛ. II S 26] СХЕМЫ 125 слова в алфавите Ау. Имеем A7) 2уАг№. При этом у не входит в А, так как 2#у#А—последнее вхождение буквы у в слово W. Следовательно, А есть слово в алфавите А. Если f/SA, то X есть начало Y [A5), A6)] и доказы- доказывать больше нечего; если VSA, то Y есть начало X [A5, A6)]. Остается предположить, что A8) Uj?A A9) VjtA. Однако это предположение мы приведем к абсурду. Так как системы X и Y оканчиваются буквой у, слова U и V также оканчиваются ею [A5), A6), A8), A9)]. Таким образом, буква у входит как в 0, так и в У. Поэтому имеются первые вхождения буквы у в слова U и V [§ 23.6.3]. Пусть это будут вхождения Q*y*F—первое вхождение буквы у в слово U и 6#у#3 — первое вхождение буквы у в слово V. Имеем B0) и B1) Буква у не входит ни в Q, ни в в, которые, таким обра- образом, являются словами в алфавите А. Имеем B2) Хж2уЛОуГ [A5), A7), B0)], B3) ГЗЕ2уАвуЗ [A6), A7), B1)]. Здесь AQ и А0 суть слова в алфавите А. Если 2 3ЕЛ, то имеем B4) уАЗЕГ [A7)], [B2)], [B3)]. Отсюда ввиду того, что AQ и Дв суть слова в алфавите А, следует, что AQ есть первый член системы X, тогда как Ав есть первый член системы Y. Но первые члены этих систем совпадают, в силу чего AQSAe, и, следовательно, yAQy является общим началом систем X и Y. Поэтому есть начало наибольшего общего начала W этих I систем. Таким образом, в случае, когда'ГзгА, yAQy есть начало уА [B4)] и, следовательно, Qy есть начало А, что абсурдно. Пусть, наконец, 2;? А. Так как у является первой буквой системы X, эта же буква является первой буквой непустого слова 2 [B2)-], а потому и первой буквой слова 2у. При этом, как мы знаем, 2 является словом в алфавите Ау. Отсюда следует, что слово 2у является системой. При этом 2у^у, так как 2^: А. Система 2у оканчивается атомом, т. е. существуют слово К в алфавите Ау и слово Q в алфа- алфавите А такие, что B5) 2у Имеем B6) B7) [B2), B5)], [B3), B5)]. Таким образом, слово yQyAQy входит в переводную си- систему X схемы Z, а слово yQyA6y входит в переводную систему Y схемы Z. Здесь Q, AQ и AG—слова в алфавите А. Имеем поэтому Z: Z: Qh-Дв, откуда AQlEAe [4.7]. Следовательно, слово /CyQyAQy яв- является общим началом систем X и Y. Оно является поэтому началом их наибольшего общего начала W, т. е. слова /(yQyA [A7), B5)]. Отсюда следует, что Qy есть начало Л, что абсурдно. Теорема доказана. Имеем 5.5. Всякая у-система в алфавите А, входящая в пере- переводную систему схемы Z, есть переводная система схемы Z [§ 23.2.2]. Докажем высказывание 5.6. Если X—переводная система схемы Z, соединяющая Q с R, и Z: Q~\, то XSyQy и Q^R. Пусть имеет место посылка материальной импликации 5.6. Тогда Q—первый член системы X, a R—ее последний член. yQy есть начало X, т. е. имеется слово U в алфавите Ау такое, что B8)
126 СЕМИОТИКА [ГЛ. II >25] СХЕМЫ 127 yU есть конец системы X [B8)], начинающийся буквой у и потому являющийся системой [§ 24.1.2]. Если U^:A, то yU^ty и система yU имеет первый член [§ 24.3.1]. Пусть это будет слово S в алфавите А. Имеем B9) yUsiySyV, где V—некоторое слово в алфавите Ау. Тогда X TLyQySyV [B8), B9)] и, таким образом, слово yQySy, где Q и S—слова в алфа- алфавите А, входит в переводную систему X схемы Z. Следо- Следовательно, Z: Q\~S вопреки нашему предположению о том, что Z:Q~] [4.7]. К этому противоречию мы пришли, предполагая, что U^lA. Следовательно, (/SA, и потому X^LyQy [B8)]. Отсюда следует, что Q—последний член системы X. А так как единственным последним членом этой системы является R [§ 24.3.1], имеем Q^R, что и оставалось доказать. Аналогично доказывается высказывание 5.7. Если X—переводная система схемы Z, соединяющая Q с R, и Z: Q\--P, то XsLyQy и Q^R. 6. Мы будем говорить, что схема Z просто преобразует слово Р в слово Q, если существует переводная система схемы Z, соединяющая Р с Q. Запись A) Z: P\=Q будет означать, что схема Z просто преобразует слово Р в слово Q. Как нетрудно видеть, высказывание A) при любых данных Z, Р и Q является полуразрешимым. Имеют место следующие высказывания, в которых Z — схема, а Р и Q—слова в алфавите А: 6.1. Z: Р\=Р [5.1]. 6.2. Если Z: РУ-Q, то Z\ P\=Q [5.2]. 6.3. Если Z: P\=Q и Z: Q\=R, то Z: P}=R [5.3, § 14.3]. 6.4. Если Z: P^Q, то если z- <?г-#, rno Z: P\=R [6.2, 6.3]. 6.5. Если X—переводная система схемы Z, соединяющая слово Р со словом Q, a Y—переводная система схемы Z, соединяющая слово Р со словом R, то Z: Q^=R или Z: R\=Q. Действительно, пусть X — переводная система схемы Z, соединяющая слово Р со словом Q, и пусть Y — переводная система, соединяющая слово Р со словом R. Тогда Р есть пер- первый член как X, так и Y, Q — последний член X, a R — по- последний член Y. Ввиду того, что первые члены переводных систем X и Y совпадают, X есть начало Y или Y — начало X [5.4]. Допустим, что X — начало Y. Тогда B) УЪХ(Х<-У) [§ 18.8.4]. yQy есть конец X, и потому C) XlL(yQy-rX)yQy [§ 18.9.4]. Имеем поэтому D) YJL(yQy-rX)yQy(X*-Y) [B), C)]. Таким образом, yQy (X *— Y) есть конец Y. yRy также есть конец Y, так как R — последний член Y. Поэтому yRy есть конец yQy (X <- Y) или yQy (X <- Y) есть конец Ry [§ 17.4.10]. Последнее, однако, невозможно, так как [[yQy (X ¦*-' Yya :> ||, а [[^утдз:]. Следовательно, уРу—конец yQy(X<-Y). у есть конец слова y(X*-Y) как при ХгК, так и при X -JL Y. Поэтому слово yQy (X*-Y) в алфавите Ау есть у-система в алфавите А. А так как эта система входит в переводную систему Y схемы Z [D)], она сама есть пере- переводная система схемы Z. Ее первым членом является Q, а последним—R, т. е. она соединяет Q с R. Таким образом, имеем в данном случае Z:Q\=R. Аналогично усматриваем, что в случае, когда Y есть начало X, будет Z: R\=Q. Таким образом, имеем Z: Q\=R или Z: R\=Q, что и требовалось доказать. Используя обозначение A), высказывание 6.5 можно сформулировать следующим образом: 6.6. Если Z: P\=Q и Z: P\=R, то Z: Qh=R или Z: R\=Q. Имеем 6.7. Если Z: Q\=R, то если Z: Q ~], то Q^iR. Это высказывание мы рассматриваем как усиленную импликацию с полуразрешимой посылкой «Z: Q\=R» и раз- разрешимым заключением. Раскрывая смысл этой усиленной импликации согласно § 14.1, убеждаемся в ее истинности [5.6]. Аналогичным образом имеем 6.8. Если Z: Q\=R, то если Z: Q |—Я, то [§ ИЛ, 5.7].
128 СЕМИОТИКА [ГЛ. II 7, Мы говорим, что Z естественно преобразует Р в Q, и пишем Z: Р (= Q ~], если Z: P^Q и Z: Q"|. Мы говорим, что Z заключительно преобразует Р в Q, и пишем Z: P^=.Q, если существует слово R такое, что Z: Р^=7? и Z: /? |— «Q. 7.1. Если Z: P|=.Q, mo существует единственное слово R такое, что Z: P\=R и Z: R\—-Q. Действительно, пусть слова R и S таковы, что Z: P\=R и Z: R\--Q, а, с другой стороны, Z: P\=S и Z: S\—Q. Тогда Z: 7? (=5 или Z: 5 [=7? [6.6]. Пусть, например, Z: i?H=S- Но по предположению также Z: 7?|— .Q, так что #3:5 [6.8]. Случай Z: S\=R трактуется аналогично. Будем говорить, что R есть предпоследнее слово для Р u Q, если Z: P\=R и Z: /? 1—Q. Мы говорим, что Z перерабатывает Р в Q, и пишем если Z: P}=Q~| или Z: P|=.Q. 7.2. ?слм Z: P\=Q1 u Z: P\=R, то Z: Rh=Ql [6.6, 6.7, 6.1]. Условимся писать вместо Z: P\=Q и Z:QH-/?. Докажем 7.3. Неверно, что A) Z: Предположим, что оба высказывания A) верны. Тогда верны следующие высказывания: B) Z: Pf=Q, C) Z: Q~| 5 25] СХЕМЫ и существует 5 такое, что D) Z: P\=S 129 и что E) Z: S\-.R. Фиксируем такое S. Имеем Z: S\=Q или Z: Qh=S [B), D), 6.6]. Если Z: 5^=Q, то ввиду E) SSQ [6.8]. Если Z: Q\=S, то ввиду C) также SSQ [6.7]. Итак, SSQ. Но тогда Z: Q ~| и Z: Q 1— •/?, что невозможно [4.7]. Теорема доказана. Мы будем говорить, что схема Z применима к слову Р, и писать \Z(P), если существует слово Q такое, что Z: P=$>Q. Докажем 7.4. Если \Z(P), то существует единственное слово Q такое, что Z: P^Q. Существование Q такого, что Z: P=$>Q, следует из оп- определения \Z(P). Покажем, что такое Q единственно. Дей- Действительно, пусть Z: P=>Q ги Z: P^-R. Тогда ввиду 7.3 Z: P\=Q "I и Z: P\=R 1 или Z: В первом случае Z: P(=Q и Z: P]=R. Следовательно, Z: Q\=R или Z: R }= Q [6.6]. Но Z: Q1 и Z: /? ^ , так что <ЭзгЯ [6.7]. Во втором случае Z: P^Sb-Q и Z: Р^ГЬ'Я для некоторых S и Т. Но тогда Z: S f= T или Z: T\=S [6.6]. Если Z: 5^= Г, то, так как Z: S|-.Q, 5ST [6.8]. То же самое равенство получается и тогда, когда Z: T\=S. Следова- Следовательно, Z: 5 |— -Q и Z: S (- .7?. Но отсюда следует, что QS/? [4.4]. Теорема доказана. 8. Докажем следующее высказывание: 8.1. Если Z: P\=Q, mo существует единственная пере- переводная система X схемы Z, соединяющая Р с Q и такая, что X есть начало любой переводной системы схемы Z, со- соединяющей Р с Q. Действительно, пусть Z: P|=Q. Тогда существует пере- переводная система схемы Z, соединяющая Р с Q [6]. Предикат «X есть переводная система схемы Z, соединяющая Р с Q» разрешим. Поэтому в силу теоремы о наименьшем числе 5 А. А. Марков, Н. М. Нагорннй
130 СЕМИОТИКА [ГЛ. II [§ 21.2.1] существует переводная система X схемы Z, соеди- соединяющая Р с Q, с наименьшей длиной. Пусть теперь U — произвольная переводная система схемы Z, соединяющая Р с Q. Первые члены систем X и U совпадают. Поэтому X есть начало U или U есть начало X [5.4]. В силу выбора X U не может быть собственным началом X. Поэтому X яв- является началом U, что и требовалось доказать. Пусть Z: P\=Q. Переводную систему X, о которой гово- говорится в 8.1, мы будем называть естественной переводной системой, соединяющей Р с Q. Докажем 8.2. Если Z: Р (== Q ~] и X—переводная система схемы Z, соединяющая Р с Q, то X—естественная переводная си- система схемы Z, соединяющая Р с Q. Действительно, пусть Z: P\=Q~\, и пусть X—перевод- X—переводная система схемы Z, соединяющая Р с Q. Тогда, в част- частности, Z: P\=Q и, значит, можно построить естественную переводную систему Y схемы Z, соединяющую Р с Q [8.1]. Покажем, что X~S.Y. В самом деле, Y соединяет Р с Q, и, значит, Y'SiUyQy для некоторого U. Кроме того, Y—начало X, и потому ХЕУУ для некоторого V в алфавите А7. Предположим, что V^lA. Тогда, так как X—система, последней буквой V является у, и, значит, 7 входит в V. Пусть R*y*W— первое вхождение у в V. Тогда R— слово в А и V^RyW. Отсюда XI UyQyRyW, и, значит, в X входит слово yQyRy, где Q и R — слова в А. Так как X—переводная система схемы Z, Z: Q f— R [5], что противоречит Z: Q~] [4.7]. Сле- Следовательно, V~?.k и XSF, что и требовалось доказать. Аналогично 8.2 может быть доказано высказывание 8.3. Если Z: P\=R\- -QuX—переводная система схе мы Z, соединяющая Р с R, то X—естественная переводная система схемы Z, соединяющая Р с R. Мы будем говорить, что схема Z просто преобразует Р в Q за N шагов, если Z: P\=Q и объем естественной пере- переводной системы, соединяющей Р с Q, равен N\. Мы будем говорить, что схема Z естественно преобра- преобразует Р в Q за N шагов, если Z: P\=Q~\ и Z просто пре- преобразует Р в Q за N шагов. Мы будем говорить, что схема Z заключительно преоб- преобразует Р в Q за N "шагов, если Z: P\=-Q и Z за (N—J) шаг просто преобразует Р в то единственное [7.1] слово R, для которого Z: P\=R\-.Q. I §25] СХЕМЫ 131 Мы будем говорить, что схема Z перерабатывает Р в Q за N шагов, если Z естественно преобразует Р в Q за N шагов или Z заключительно преобразует Р в Q за N шагов. Легко могут быть доказаны следующие четыре утверж- утверждения: 8.4. Если Z: P\=Q, то число N такое, что Z просто преобразует Р в Q за N шагов, единственно [8.1]. 8.5. Если Z: P |= Q ~|, то число N такое, что Z естест- естественно преобразует Р в Q, единственно [8.4]. 8.6. Если Z: P\=.Q, то число N такое, что Z заклю- заключительно преобразует Р в Q за N шагов, единственно [7.1, 8.4]. 8.7. Если Z: P=$>Q, то число N такое, что Z перера- перерабатывает Р в Q за N шагов, единственно [7.1, 7.3, 8.5, 8.6]. Пусть \Z(P). Символом (Z:P) мы будем обозначать то однозначно определенное натуральное число iV, за которое Z перерабатывает Р в некоторое слово Q. Число (Z: Р) мы будем называть числом шагов работы схемы Z над словом Р. Докажем следующие два высказывания: 8.8. Если Z: Р~], то Z перерабатывает Р в Р за нуль шагов. Действительно, пусть X—переводная система схемы Z, соединяющая Р с каким-либо словом R. Тогда R~oLP и ХЖуРу [5.6]. Х-—естественная переводная система схемы Z, соединяющая Р с Р, и объем X равен единице. Так как Z: Р~], Z естественно преобразует и, значит, перерабаты- перерабатывает Р в Р за нуль шагов, что и требовалось доказать. 8.9. Если Z: P\-Q и Z\ Q=Z>R, то Z: P=Z>R и {Z:P)SL Действительно, пусть выполнена посылка этой импли- импликации. Тогда, в частности, Z: P\=Q. Кроме того, Z: Q=i>R. Следовательно, Z: «2|=#^ или Z: Q\=-R. В первом случае Z: P\=R~], причем если X—переводная система схемы Z, соединяющая Q с R, то уРХ—переводная система Z, соеди- соединяющая Р с R. Системы X и уРХ суть естественные пере- переводные системы, соединяющие Q ц Р соответственно с R [8.2]. Поэтому Случай Z: Q\=-R трактуется аналогично со ссылкой на 8.3. Утверждение 8.9 доказано. 9. Мы будем иногда применять следующий метод индук- индукции по переводной системе. Пусть Z—схема и F — некото- некоторый одноместный вербальный предикат в алфавите А^у. Чтобы 5*
132 СЕМИОТИКА [ГЛ. II доказать, что всякая переводная система X схемы Z удо- удовлетворяет предикату F, мы доказываем, что: 1) всякая переводная система схемы Z, имеющая вид уРу, удовлетворяет F; 2) для всякой переводной системы X схемы Z и всякого слова Q имеет место следующая импликация: «если X удовлетворяет F, Р— последний член X и Z: P\- Q, то система XQy удовлетворяет F». Тогда всякая переводная система X схемы Z, отличная от у, удовлетворяет F. В самом деле, пусть нам даны схема Z и предикат F. Пусть выполняются посылки 1) и 2). Построим одномест- одноместный вербальный предикат G в алфавите Ау: «всякое начало X слова Y, являющееся переводной системой схемы Z и отличное от у, удовлетворяет F». Докажем, что всякое слово Y в алфавите Ау удовлетворяет G. Для этого мы воспользуемся методом правой индукции по построению слова Y. Прежде всего, пустое слово Л удовлетворяет G, так как всякое начало X пустого слова не является переводной си- системой. Пусть затем слово Y удовлетворяет G, а ?—какая- либо буква алфавита Ау. Покажем, что Y% тоже удовлет- удовлетворяет G. Пусть X — начало слова YI, являющееся пере- переводной системой Z, и пусть X^Ly. Тогда XSXjQy, где Xt является переводной системой, a Q—слово в А. Покажем, что X удовлетворяет F. Если Х^Жу, то это вытекает из посылки 1) метода индукции по переводной системе. Пусть Xx^Ly. Тогда X,ЗЕХ2Яу, где Х2 само является переводной системой. Далее, X есть начало F?. Значит, X есть начало Y или X Ж YI,. Если X есть начало Y, то X удовлетворяет F, так как Y удовлетворяет G. Рассмотрим случай, когда X 2 Г?. Тогда XxQy S. Y%. Отсюда ?Жу и Х& есть начало Y. Поэтому Xt есть начало Y. Хг есть переводная система, отличная от у. Так как Y удовлетворяет G, то Хх удовлет- удовлетворяет F. X'S.X^PyQy и X—переводная система. Значит, Z: P j— Q. В силу посылки 2) слово XjQy также удовлетво- удовлетворяет F, т. е. X удовлетворяет F. Тем самым YI, удовлетво- удовлетворяет G. Следовательно, любое У удовлетворяет G. Теперь уже нетрудно показать, что имеет место утвержде- утверждение, сформулированное в заключении описываемого нами мето- метода индукции по переводной системе. В самом деле, пусть X — переводная система схемы Z, отличная от у. Тогда X удовле- $25] СХЕМЫ 133 творяет G и, следовательно, всякое отличное от у начало X, являющееся переводной системой схемы Z, удовлетворяет F. В частности, в качестве этого начала можно взять и само слово X. Таким образом, изложенный нами метод обоснован. 10. Другой вариант индукции, который в дальнейшем бу- будет нам полезен,— это метод индукции по шагам работы схемы Z. Он заключается в следующем. Пусть Z — схема, F — неко- некоторый одноместный вербальный предикат в алфавите А и Р — слово в алфавите А. Мы доказываем, что: Г) Р удовлетворяет F; 2') для любых двух слов R и 5_в алфавите А таких, что Z: P[=R и Z: R \- S, имеет место импликация «если R удовлетворяет F, то и S удовлетворяет /*"». Тогда всякое слово R такое, что Z: P\=R, удовлетворяет F. В самом деле, пусть заданы Z, F и Р, для которых выполняются посылки Г) и 2'). Построим следующий одно- одноместный вербальный предикат G со свободной переменной X для слов в алфавите Ау: «если X — переводная система схемы Z, начинающаяся словом уРу и оканчивающаяся словом у5у, где S — слово в алфавите А, то S удовлетворяет F». Мы докажем, что всякая переводная система X схемы Z, отличная от у, удовлетворяет G. С этой целью восполь- воспользуемся методом индукции, изложенным в п. 9. Если X имеет вид уРу, то X удовлетворяет G, так как Р удовлетворяет F в силу условия Г). Далее, если ХЗЕХ^^у, X удовлетво- удовлетворяет G и Z: R (— S, то Х5у удовлетворяет G. Действительно, если X начинается словом уРу, то R удовлетворяет F, так как X удовлетворяет G. А тогда S удовлетворяет F в силу 2'). Это и означает, что XSy удовлетворяет G. Теперь докажем утверждение, сформулированное в за- заключении описываемого нами метода индукции по шагам работы схемы. Пусть Z: P\=R. Тогда существует перевод- переводная система X схемы Z, соединяющая Р с R. X начинается словом уРу и оканчивается словом yRy. Так как X удо- удовлетворяет G, то R удовлетворяет F. 11. Рассмотрим простой пример. Пусть Q — какое-нибудь слово в алфавите А. Слово p*Q является тогда заключительной формулой подстановки с пус- пустой левой частью и с правой частью Q. yPQy является системой с единственным членом p*Q, т. е. схемой. Пусть Р — какое- нибудь слово в алфавите А. Формула p*Q действует на Р, так как пустое слово входит в Р. Результатом действия p*Q на Р
134 СЕМИОТИКА [ГЛ. И ГЛАВА III является результат подстановки слова Q вместо первого вхождения пустого слова в Р, т. е. слово QP. Поэтому ..О ЛО. Г» 1 у-\ Г\ и, следовательно, ил. yfiQy. P=s>QP- (Здесь Р и Q — любые слова в алфавите А.) Аналогично, слово aQ является простой формулой подста- подстановки с пустой левой частью и с правой частью Q. yaQy являет- является схемой. Пусть снова Р — слово в алфавите А. Формула aQ действует на Р, так как пустое слово входит в Р. Результатом действия и на этот раз является слово QP. Но теперь 11.2. yaQy: P\-QP, так как формула aQ является—в отличие от 0Q—простой. Докажем 11.3. Если yaQy: P\=R, mo существует натуральное число N такое, что R^.(QxN)P. Воспользуемся методом индукции по шагам работы схемы [10]. В качестве F возьмем разрешимый предикат «существует натуральное число N такое, что RJl(QxN)P». Легко видеть, что Р удовлетворяет F (при JV2A). Пусть, далее, yaQy: P\=R, yaQy: R\-S и R&(QxM)P. Тогда SlZQR [11.2], и, значит, S3LQ(QxM)РЖ(QxM|)P [§20], т. е. 5 также удовлетворяет F, что и требовалось доказать. 11.4. Схема yaQy не применима ни к какому слову Р в алфавите А. Действительно, пусть Р—произвольное слово в А и пусть \yaQy(P). Тогда для некоторого R yaQy: P=&R, т.е. yaQy: P^=R~] или yaQy: P\=-R. В первом случае уаОу: Р |= R и yaQy: R ~\, что невозможно, так как схема yaQy действует на любое слово R в А [11.2]. Во втором случае существует слово 5 такое, что yaQy: P\=S \--R. Но yaQy: S(—•/? невозможно, так как схема yaQy не содер- содержит заключительных формул подстановок. Итак, предполо- предположение, что lyaQy(P), ведет к противоречию, что и требо- требовалось доказать. Замечание. Это утверждение доказано нами методом «приведения к нелепости» и, стало быть, фигурирующее в нем отрицание мы должны понимать как редукционное (см. § 15.4). Однако мы могли бы понимать его и как усиленное (см. § 12.1). Мы предлагаем читателю самому привести доказательство, которое соответствовало бы такому подходу к пониманию формулировки нашей теоремы. НОРМАЛЬНЫЕ АЛГОРИФМЫ: ОПРЕДЕЛЕНИЕ И ПРИМЕРЫ § 26. Алгорифмы 1. Существенную роль в дальнейшем играют алгорифмы. Понятию алгорифма может быть дано следующее предвари- предварительное определение, которое в дальнейшем будет уточнено: Щ Алгорифм есть предписание, однозначно определяющее ход некоторых конструктивных процессов. 2. Слово «предписание» в определении алгорифма указы- указывает на наличие некоторого адресата — субъекта, о котором предполагается, что он будет выполнять это предписание. В частности, это может быть человек или какая-нибудь его хорошая модель. Выполняя предписание, его адресат будет осуществлять некоторый процесс, однозначно определенный этим предписанием. Этот процесс будет идти в некоторой систе- системе (например, в системе: «доска, мел, тряпка»), состояние кото- которой будет в ходе процесса изменяться. Все эти изменения долж- должны полностью определяться предписанием и осуществляться адресатом-исполнителем, который, разумеется, должен пони- понимать предписание. Иногда предписание может потребовать окончания процесса. 3. В нашем определении алгорифма о процессах говорится во множественном числе. Алгорифм может, вообще говоря, определять много процессов, отличающихся друг от друга начальным состоянием системы. (В частном случае, однако, алгорифм может фиксировать начальное состояние, и тогда мы будем иметь только один процесс.) 4. Слово «однозначно» в определении алгорифма не должно пониматься слишком буквально. Для состояний системы мо- может быть установлено то или иное отношение одинаковости. Например, для системы «доска, мел, тряпка» состояниями мо- могут считаться слова, написанные мелом на доске. В этом случае будет естественно считать состояния одинаковыми, если оди- одинаковы соответствующие слова. Процесс, определяемый алгорифмом при задании началь- начального состояния*системы, должен определяться однозначно лишь „с точностью до одинаковости" получаемых в его ходе со-
136. НОРМАЛЬНЫЕ АЛГОРИФМЫ [гл. ш §26] АЛГОРИФМЫ 137 стояний. Потребовать, чтобы этот процесс был единственным, мы можем, лишь условившись естественным образом применять абстракцию отождествления [см. § 5] к состояниям нашей сис- системы и процессам, протекающим в ней. 5. Для формулировки и понимания алгорифма необходим тот или иной язык — язык данного алгорифма. Естественно потребовать, чтобы на этом языке можно было назвать любое состояние системы, с которой имеет дело алгорифм. Состояние должно при этом однозначно определяться своим названием. Не будет существенным ограничением общности, если мы условимся считать язык алгорифма письменным и линейным. Это означает, что язык имеет алфавит, состоящий из элемен- элементарных знаков — букв, причем выражения данного языка (вы- (высказывания, названия, предписания и т. п.) являются «слова- «словами», т. е. линейными рядами букв. Процесс осуществления алгорифма может быть тогда промоделирован некоторым дру- другим процессом, имеющим дело со словами — с названиями со- состояний. Таким образом мы сводим рассмотрение алгорифмов к рас- рассмотрению вербальных алгорифмов. Так мы будем называть алгорифмы, работающие над словами в каком-нибудь данном алфавите. Процесс работы вербального алгорифма в алфавите А со- состоит в последовательном порождении слов в алфавите А со- согласно сформулированному предписанию. Перед началом этого процесса выбирается некоторое исходное слово в алфавите А. Процесс может закончиться порождением некоторого слова, которое мы объявляем тогда результатом работы нашего ал- алгорифма над исходным словом. Мы будем также говорить, что наш алгорифм перерабатывает исходное слово в результат своей работы над ним. Мы будем говорить, что алгорифм применим к данному слову, если процесс его работы над этим словом заканчивается, т. е. если имеется результат его работы над данным словом как исходным. В дальнейшем A) Ш(Р) будет означать, что алгорифм ЗГ применим к слову Р; B) 3t будет означать, что алгорифм St перерабатывает слово Р в слово Q. Очевиден следующий закон единственности результата работы алгорифма: 5.1. Если 21: P=>Q, то если 31: Я=?>/?, то Q&.R. 5.2. Ш (Р) тогда и только тогда, когда существует Q такое, что 21: P=$>Q. По определению алгорифм ЗЯ. в алфавите А при задании исходного слова Р в алфавите А последовательно порож- порождает слова в алфавите А. При определении предикатов Ш (Р) и 31: P=^Q мы молчаливо предполагали, что Я—слово в алфавите А. В наших дальнейших рассмотрениях будут встречаться другие алфавиты и слова в них. Условимся в таких случаях считать алгорифм Ж в алфавите А непри- неприменимым к слову Р, если Р не есть слово в алфавите А, т. е. если в Р входит буква, не входящая в А. Таким об- образом, мы в этом случае будем считать высказывание Ш (Р) ложным. Высказывание 91: P*=$>Q мы также будем считать тогда ложным, каково бы ни было Q. 6. Рассматривая какой-либо алгорифм 21 в алфавите А, мы часто будем интересоваться только результатами его работы над словами в более узком алфавите Б, составляю- составляющем часть алфавита А. Мы будем говорить, что вербальный алгорифм §1 в ал- алфавите А есть алгорифм над алфавитом Б, если А есть расширение Б, т.е. если всякая буква алфавита Б является также и буквой алфавита А. Пусть Б — алфавит, а 33 и (Е—вербальные алгорифмы над алфавитом Б. Мы будем говорить, что 33 и © эквивалентны относи- относительно Б, если для любых слов Р и Q в алфавите Б имеют место импликации: а) если 33: P=Z>Q, то (?: P=$Q, и б) если (?: P=>Q, то 33: P=>Q. Будем говорить, что 33 и © сильно эквивалентны отно- относительно Б, если они эквивалентны относительно Б, а, кроме того, для любого слова Р в алфавите Б имеют место импликации в) если IS (Я), то !(?(Р), и г) если Ш(Р), то !33(Р). Будем говорить, что 33 и © вполне эквивалентны отно- относительно Б, если они сильно эквивалентны относительно Б, а, кроме того, для любого слова Р в алфавите Б соблю- соблюдаются следующие условия:
138 нормальные алгорифмы 1гл. ш д) каково бы ни было слово Q в алфавите алгорифма 33, имеет место импликация если 33: P=4>Q, то (?: Я=Ф<2, и е) каково бы ни было слово Q в алфавите алгорифма 6, имеет место импликация если <?: P=S>Q, то 33: P=J>Q. Из определений видно, что сформулированные нами от- отношения эквивалентности перечислены в порядке их после- последовательного усиления. § 27. Нормальные алгорифмы. Принцип нормализации 1. Введенное только что понятие алгорифма в данном алфа- алфавите не является достаточно четким, чтобы дать возможность рассматривать алгорифмы как объекты математической тео- теории. Оно для этого подлежит уточнению, к которому мы сейчас и перейдем. Прежде всего, «общепонятность» предписания нельзя рас- рассматривать как вполне четкую характеристику. Постепенный переход от понятного предписания к совсем непонятному путем все большего и большего усложнения, очевидно, вполне возможен. Естественна поэтому мысль о той или иной регла- регламентации предписания путем его расчленения на правила опре- определенного стандартного типа, общепонятность которых не вы- вызывала бы никаких сомнений. Процесс применения алгорифма будет тогда состоять из отдельных элементарных шагов, каж- каждый из которых будет выполняться согласно одному из этих правил. Естественно добиваться возможно большей простоты этих шагов и правил. Процессы, ход которых определяется предписанием, раз- разнообразны. Выяснилось, однако, что если интересоваться ал- алгорифмами лишь с точностью до эквивалентности, то их плохо обозримое разнообразие, по-видимому, сводится к более про- простой идее. 2. Мы введем в рассмотрение вербальные алгорифмы специального типа—так называемые нормальные алгорифмы. Всякий нормальный алгорифм Ж будет задаваться указа- указанием следующих трех объектов: некоторого алфавита А, некоторого трехбуквенного алфавита ар^у. не имеющего букв, общих с алфавитом А, и некоторой -у-схемы Z в ал- #271 НОРМАЛЬНЫЕ АЛГОРИФМЫ 139 [фавите Аоф [§ 25]. Алфавит А мы будем называть алфави- \том нормального алгорифма Ж. Схему Z мы будем назы- \вать схемой этого алгорифма. Разумеется, введя какую-ни- какую-нибудь новую букву б, играющую роль разделительного знака, мы могли бы записать эту тройку в виде б-системы 6A6ocPy6Z6, так что в конечном счете всякий нормальный алгорифм определяется указанием одно го-единственно го слова. Формулы подстановок [§ 25.2], являющиеся членами Z, мы будем называть формулами подстановок алгорифма 21 (они, как мы помним, бывают простые и заключительные). Исходными данными для работы алгорифма 21 будут слу- служить слова в алфавите А. Применить алгорифм 21 к слову Р в алфавите А означает применить к Р схему алгорифма Ж, т. е. схему Z. Таков наш замысел. Детали определения мы оставляем до п. 4. 3. Алфавит аРу, как мы видим, играет здесь вспомогатель- вспомогательную роль. Его буквы являются как бы „знаками препинания" в схеме: у отделяет друг от друга формулы подстановок, а а и Р отделяют левые части этих формул от их правых частей, од- одновременно указывая на тип формулы подстановки (а у про- простых формул, р у заключительных). Буквы эти можно раз и навсегда каким-либо образом зафиксировать, потребовав, чтобы в дальнейшем рассматривались только алфавиты А, не содержащие этих букв. Тогда всякий нормальный алгорифм, по существу, будет определяться указанием двух объектов: алфавита, в котором он действует, и некоторой схемы ¦— схемы этого алгорифма. Нормальный алгорифм, алфавитом которого является ал- алфавит А, мы будем называть нормальным алгорифмом в алфави- алфавите А. Таким образом, при фиксированном алфавите А всякий нормальный алгорифм в А будет определяться указанием од- одной лишь его схемы. Это обстоятельство позволяет нам в из- известном смысле отождествить нормальные алгорифмы с опре- определяющими их схемами и перенести на нормальные алгорифмы всю терминологию и все обозначения, разработанные для схем в § 25. Так, например, если 21 — нормальный алгорифм, определяемый схемой Z, то записи %:P\=Q, «: P\=-Q, Я: PI, %: Ш(Р), (Ж:Р) будут означать то же самое, что и записи Z:P\=Q, Z: P\=.Q, Z: P~\, Z: \Z(P), (Z:P)
140 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III §27] НОРМАЛЬНЫЕ АЛГОРИФМЫ 141 соответственно. Сходным образом будут пониматься и другие аналогичные записи. В разного рода словесных формулиров- формулировках мы вместо «схем» часто будем говорить о «нормальных ал- алгорифмах», всякий раз производя необходимые грамматиче- грамматические согласования. Сказанное касается и методов индукции, обоснованных в пп. 9 и 10 § 25. В дальнейшем ссылки на § 25 следует понимать с учетом данного замечания. 4. Теперь дадим подробное определение нормального алго- алгорифма. Всякий нормальный алгорифм представляет собой предпи- предписание, однозначно определяемое объектами, указанными в п. 1, и в свою очередь однозначно определяющее течение некоторых конструктивных процессов специального типа. При фиксации нормального алгорифма 91 каждый из этих процессов опреде- определяется выбором начального слова, в качестве которопГможет быть взято любое слово Р в алфавите А. На первом шаге процесса, определяемого нормальным алгорифмом 31 в алфавите А и словом Р в этом 'алфавите, берется само слово Р. Если на некотором шаге процесса было взято слово Q и если 3t: Q I— R для некоторого R, то на следующем шаге берется слово R и процесс продол- продолжается. Если же ЗГ: Q~\ или ЗГ: Q [— -5 для некоторого^, то процесс обрывается и в первом случае результатом его 2Г(Р) считается слово Q, а во втором—слово S. Описанный процесс мы будем кратко называть процессом применения ЗГ к Р*). Читатель без труда убедится, что справедливы сле- следующие два высказывания: 4.1. Процесс применения ЗГ к Р обрывается тогда и только тогда, когда Ш(Р) Г§ 25.7]. 4.2. Если Щ(Р), то 21: Р=>Ш(Р) [§ 25.7.4]. 5. В дальнейшем мы, как правило, будем пользоваться другим, нелинейным способом записи схем нормальных алго- алгорифмов. Способ этот закрепился в литературе и имеет опреде- определенные методические преимущества. Состоит он в следующем. Формулы подстановок, составляющие схему нормального алго- *) Некоторые естественные обобщения определения нормального ал- алгорифма были рассмотрены в работе Н. М. Н а г о р н о г о [3]. Одно из них заключается в том, что алгорифм определяется несколькими схемами и на каждом шаге процесса применения вырабатывается указание того, какая из схем должна быть применена на следующем шаге. В другом обоб- обобщении таких схем „бесконечно много" — они порождаются некоторым нормальным алгорифмом. В третьем „бесконечны" (в указанном смысле слова) и сами схемы.'В этой же работе было показано, что эти „обобщения" определений не приводят к расширению соответствующих понятий: каждый из „обобщенных" алгорифмов моделируется некоторым нормальным. рифма, выписываются „в столбик": сначала пишется первая формула подстановки (ядро первого элемента схемы [§ 24.7, § 24.51), под ней — вторая и т. д. вплоть до последней. Затем а в простых формулах подстановок и Р в заключительных заме- заменяются соответственно буквами -*¦ и -*¦ • (при этом мы, конечно, должны условиться, что эти буквы не входят в алфавит алго- алгорифма). Для большей отчетливости формулы, образующие схе- схему, объединяются слева фигурной скобкой. В целях единообра- единообразия скобку мы будем ставить даже тогда, когда формула подстановки будет всего одна. Так, схема yababayacacayaf>yaay в алфавите abc, состоящая из четырех формул подстановок ababa, асаса, aft, oux, идущих в указанном порядке, при этом запишется в виде "—*- ba \ас -+са а —->-• Мы хотели бы подчеркнуть, что такой способ записи схем нормальных алгорифмов не представляет собой самостоятель- самостоятельного их определения, а является лишь средством, делающим обращение с ними наглядным и удобным. Читатель должен помнить, что 7-схемы в алфавите Аоф суть слова в алфавите Аофу1§ 25] и все высказывания о них должны пониматься как высказывания о словах определенного типа. 6. Как мы увидим далее, понятие нормального алгорифма обладает большой степенью общности. Ввиду этого естественно возникает вопрос: в какой мере точное понятие нормального алгорифма соответствует более общему, но менее точному по- понятию вербального алгорифма в некотором алфавите [§ 25]? Этот несколько неопределенно поставленный вопрос должен быть уточнен. Какого соответствия можно здесь ожидать? Конечно, алгорифмы вообще значительно разнообразнее нор- нормальных алгорифмов. Естественно, однако, спросить, нельзя ли заменить всякий вербальный алгорифм в алфавите А нор- нормальным алгорифмом, вполне эквивалентным ему относительно А [§ 25.5]. Мы полагаем, что на этот вопрос следует ответить утвердительно, и формулируем следующий принцип нормализации алгорифмов:
142 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III Всякий вербальный алгорифм в алфавите А вполне эквива- эквивалентен относительно А некоторому нормальному алгорифму над А. Условимся говорить о вербальном алгорифме в алфавите А, что он нормализуем, если он вполне эквивалентен относитель- относительно А некоторому нормальному алгорифму над А. Принцип нор- нормализации можно тогда формулировать следующим образом: Всякий вербальный алгорифм нормализуем. Формулированный сейчас принцип нормализации требует пояснений. Прежде всего, это не есть математическая теорема, подлежа- подлежащая доказательству. Такого характера принцип нормализации не имеет уже потому, что одно из понятий, о которых идет речь в этом принципе,— общее понятие вербального алгорифма — не является точным математическим понятием. Принцип имен- именно и выражает уточнение этого понятия в понятии нормального алгорифма. Содержание принципа, однако, не ограничивается простым уточнением понятия вербального алгорифма. Принцип утверж- утверждает также пригодность этого уточнения. Хотя общее понятие алгорифма и не является достаточно четким, тем не менее это — сложившееся и употребляемое понятие. Обычно не вызывает затруднений решение вопроса о том, считать ли алгорифмом такое-то конкретное предписание. Принцип утверждает, что всякий раз, когда такого рода вопрос будет решаться положи- положительно — «да, это есть вербальный алгорифм в данном алфа- алфавите»,— будет возможно нормализовать предписание, т. е. за- заменить его эквивалентным относительно этого алфавита нор- нормальным алгорифмом. Формулируя принцип нормализации, мы тем самым делаем большой ряд предсказаний о нормализуе- мости алгорифмов, построение которых осуществится в буду- будущем. В этом отношении принцип нормализации подобен физиче- физическому закону. Всякий физический закон тоже ведь является основанием для огромного ряда предсказаний о будущих явле- явлениях. Например, закон сохранения энергии предсказывает сохранение общего количества энергии во всякой замкнутой физической системе. В отрицательной форме он утверждает невозможность изобретения perpetuum mobile — физической системы, неограниченно производящей работу без притока энергии извне. Аналогично этому принцип нормализации предсказывает нормализуемость всякого вербального алго- алгорифма, который будет изобретен, и, значит, невозможность изобретения ненормализуемого вербального алгорифма. $27] НОРМАЛЬНЫЕ АЛГОРИФМЫ 143 На чем же может быть основана уверенность в справедливо- справедливости принципа нормализации алгорифмов, т. е. в правильности тех предсказаний, которые делаются на его основании? В не- немалой степени на том же самом, на чем основана наша уверен- уверенность в правильности известных нам физических законов,— на опыте. А опыт, подтверждающий принцип нормализации, огромен. Ведь математикой люди занимаются довольно долго — не ме- менее 4000 лет. За это время было придумано немало различных алгорифмов. И среди них не известно ни одного ненормализуе- ненормализуемого. Как-никак, а это веский довод в пользу принципа нор- нормализации. Не менее веский, чем, скажем, опытное подтверж- подтверждение закона сохранения энергии. Другим важным доводом в пользу принципа нормализации является следующий. Известно много способов сочетания алгорифмов — построе- построения новых алгорифмов по нескольким заданным. Все эти спо- способы дают нормализуемые алгорифмы, если исходные алго- алгорифмы были нормализуемы. В отношении важнейших способов сочетания этот факт будет установлен в дальнейших парагра- параграфах. Он показывает, что для построения ненормализуемого вер- вербального алгорифма — если такое построение вопреки прин- принципу нормализации все-таки возможно — необходимо привле- привлечение каких-то совсем новых конструктивных средств таких, какие и не представляются современному математику. В настоящее время нет, однако, никаких признаков, позво- позволяющих ожидать изобретения таких средств. А, как известно, в истории не бывает скачков, не подготовленных предшествую- предшествующим развитием. Следует принять во внимание и аргументы исторического плана. В тридцатых годах нашего столетия появились осново- основополагающие работы К. Г ё д е л я [1], А. Чёрча [1], С. К. К л и н и Ш, [2], А. М. Тьюринга Ш, [21 и Э. Л. Поста [1], в которых были точно определены некото- некоторые специальные виды алгорифмов. Для каждого из этих видов возникла уверенность в том, что он с точностью до эквивалент- эквивалентности исчерпывает все алгорифмы. Иначе говоря, математики прониклись убеждением в том, что всякий алгорифм эквивален- эквивалентен некоторому алгорифму данного вида. Эта идея стандарти- стандартизации алгорифмов лежит в основе их современной теории. Вско- Вскоре после того, как были выработаны первые стандартные поня- понятия алгорифма, удалось установить, что все предложенные стандартизации эквивалентны друг другу, и когда в дальней-
144 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III §27] НОРМАЛЬНЫЕ АЛГОРИФМЫ 145 шем были предложены некоторые новые стандартизации *), они также оказались эквивалентными ранее определенным. Поэтому при рассмотрении алгорифмов „с точностью до экви- эквивалентности" безразлично, какой именно их стандартизацией пользоваться. Мы будем использовать наиболее знакомые нам «нормальные алгорифмы». Эквивалентность их рекурсивным функциям, а тем самым и другим стандартизациям, была уста- установлена В. К. Детловсом (см. [1]; подробное изложение в 121). В литературе принцип, утверждающий пригодность неко- некоторых конкретных уточнений понятия алгорифма, называется тезисом Чёрча — в честь выдающегося американского мате- математика Алонзо Чёрча, впервые провозгласившего этот принцип (применительно к ^-определимым функциям; см. его работу III). Принцип нормализации фактически представляет собой вариант тезиса Чёрча, относящийся к нормальным алгориф- алгорифмам. Особого внимания заслуживает вариант тезиса Чёрча, от- относящийся к машинам Тьюринга. В силу специфики определе- определения машины Тьюринга он обладает высшей степенью убеди- убедительности. В самом деле, читатель, знакомый с этим понятием, согласится, что в существенном работа машины Тьюринга адек- адекватно описывает поведение математика-вычислителя, занятого выполнением данного ему предписания: находясь в определен- определенном „умонастроении" и концентрируя свое внимание на опреде- определенной текстовой информации, вычислитель предписанным ему образом изменяет эту информацию, „смещает" центр своего внимания и переходит в новое „умонастроение". То же самое способна делать и машина Тьюринга. То обстоятельство, что ее шаги носят гораздо более локальный характер, чем действия реального вычислителя, на самом деле не слишком существен- существенно: каждый „интегральный" шаг работы вычислителя может быть промоделирован серией „локальных" шагов машины Тью- Тьюринга. Приведенные соображения ¦— с учетом эквивалентно- эквивалентности машин Тьюринга другим известным стандартизациям по- понятия алгорифма — являются, быть может, самым сильным аргументом в пользу тезиса Чёрча, а значит, и принципа нор- нормализации. Принимая, однако, во внимание, что читатель может не разделять уверенности авторов в правильности принципа нор- *) Наиболее общий подход к уточнению понятия алгорифма предложил А. Н. Колмогоров [1]. Относительно конкретизации этого подхода см. А. Н. Колмогоров и В. А. Успенский [1], а также А. Шёнхаге [1], [2]. мализации, авторы отнюдь не собираются навязывать читателю этот принцип. Поэтому в дальнейшем всякие применения принципа нормализации будут делаться явно. Каковы же возможные применения принципа нормализа- нормализации? Во-первых, он может быть использован для угадывания правильных формулировок тех или иных математических ^высказываний. Допустим, например, что имеется задача, для решения которой требуется построить алгорифм. Пусть эта задача „устойчива" в том смысле, что всякий алгорифм, экви- эквивалентный решающему ее, также ее решает. Предположим, что мы нашли какой-либо алгорифм, решающий эту задачу. Тогда с уверенностью можно утверждать, что существует и решаю- решающий ее нормальный алгорифм. Проблема сводится лишь к тому, чтобы фактически построить его. Зная принцип нормализации, мы не станем пытаться доказывать, что нормального алгорифма, решающего эту задачу, не существует. *щ Во-вторых, в аналогичной ситуации мы, может быть, суме- сумеем доказать теорему о том, что не существует нормального ал- алгорифма, решающего такую „устойчивую" задачу. Скептически настроенному оппоненту, считающему этот результат „слиш- „слишком узким и техническим", мы сможем тогда объяснить, что искать какой-либо другой (ненормализуемый) алгорифм, ре- решающий эту задачу, бесперспективно (хотя, разумеется, мы и не сможем доказать этого математически). В-третьих, принцип нормализации может быть использован для выработки точных определений тех математических понятий, которые в той или иной форме учитывают различные соображения эффективности (вычислимости, или, как мы предпочитаем говорить, конструктивности). Обычно в таких определениях естественно возникают ограничения, требующие наличия определенных алгорифмов. Учитывая принцип нор- нормализации, мы говорим тогда о нормальных алгорифмах, в ре- результате чего определение приобретает характер точной ма- математической формулировки. В приведенной выше формулировке принципа нормализа- нормализации фигурировало понятие полной эквивалентности алгориф- алгорифмов. Естественно спросить, что получится, если заменить это понятие в формулировке принципа понятием эквивалентности. На первый взгляд может показаться, что получится некоторый новый принцип, утверждающий нечто меньшее, чем принцип нормализации, а именно: Всякий вербальный алгорифм в алфавите А эквивалентен относительно А некоторому нормальному алгорифму над А.
146 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III 128] ПРИСОЕДИНЯЮЩИЕ АЛГОРИФМЫ 147 Мы увидим, однако, вскоре [§ 37.6], что этот „ослабленный" принцип нормализации в действительности является лишь другой формулировкой того же самого принципа. Принцип нормализации мы имеем один *). § 28. Присоединяющие алгорифмы 1. Возьмем алфавит А такой, что буквы —*¦ и —»¦• не входят в А. Пусть Q — какое-либо фиксированное слово в А. Обозначим символом 91д, q нормальный алгорифм в А со схемой {—Q. В линейной записи эта схема имеет вид Ранее [§ 25.11.1] мы показали, что 1.1. Для всякого слова Р в алфавите А 2. Пусть А—алфавит, состоящий из букв a, b и с; пусть е—буква, не входящая в А; пусть Q—какое-либо фикси- фиксированное слово в А. Обозначим символом 93д, q нормальный алгорифм в алфавите Ае со схемой A) га еЬ ее - е - ¦ аг -ее В линейной записи эта схема имеет вид уеаааеуеЬаЬеуесасЕуф Qyazy. До конца параграфа Р, R и S будут означать любые слова в алфавите А, а ?—любую букву этого алфавита. Докажем 2.1. 23д,д: Р\-гР. Действительно, левая часть последней формулы подста- подстановки (пустое слово) входит в Р, тогда как левые части всех предшествующих формул в Р не входят из-за присут- присутствия в них буквы е. Следовательно, алгорифм 33a,q дейст- действует на Р [§ 25.4], причем формулой подстановки, активной на слове Р, является последняя формула схемы. Результатом *) В точности такая же ситуация сложится и в том случае, если мы полную эквивалентность заменим сильной. действия алгорифма 93д, <? на слово Р является результат действия на Р активной формулы, т. е. результат под- подстановки в Р правой части этой формулы (слова е) вместо первого вхождения **Я ее левой части [§ 23.6.2], т. е. слово еР [§ 23.8.5], и, так как активная на Р формула"* подста- подстановки—простая, 23A,Q: P\-bP, что и требовалось доказать. 2.2. 93а, q: PbIR Ь PlfiP. В самом деле, алгорифм 93а, q действует на слово PbIR, так как на это слово действуют две формулы подстановки его схемы: одна из первых трех, имеющая вид е| —»- ?е, и последняя. Ясно, что активной на слове Pe^R будет фор- формула eg —>¦ ?е, так как она предшествует последней фор- формуле схемы. Имеется единственное вхождение Я*е?#R левой части формулы е|—»-|е в слово Pb?,R. Следовательно, оно и будет первым. Результат подстановки правой части активной формулы, т. е. слова ?е, вместо этого вхождения есть слово Pl,sR и, так как активная формула подстановки прветая, 33а, q: PbIR что и требовалось доказать. 2.3. «8а, q: bPS^PeS. Докажем это методом правой индукции по Р. При РЖА утверждение 2.3 верно тривиальным образом. Пусть теперь утверждение 2.3 верно для какого-либо Р при любом S. Тогда, в частности, для любой буквы | имеем 33а, Q: ePIS\=PbIS. Но в'силу 2.2 8а и потому что и оставалось доказать. Полагая в 2.3 531Л, получаем 2.4. «8А. Q:eP\=Pt. Согласно схеме алгорифма ЗЗд Q имеем 2.5. 93а, q:Pe\--PQ. ' ¦" Таким образом, 2.6. 33а, q:P\=-PQ [2.1, 2.4, 2.5] и, следовательно,
148 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III $29] СОКРАЩАЮЩИЕ АЛГОРИФМЫ 149 2.7. »А, Q(PILPQ. 3. Схему 2A) нормального алгорифма 23д, Q, первые три формулы подстановки которой имеют „общий вид" е|—>-|е, где ?—произвольная буква А, удобно записывать в следую- следующем сокращенном виде: B) Г \ дополнительно указывая, что | пробегает алфавит А. При расшифровке этой записи мы придаем | последовательно зна- значения а, Ь, с, соблюдая — для конкретности — порядок букв в А (что, впрочем, в данном случае не играет особой роли). Аналогичную сокращенную запись мы будем употреблять и в других случаях, делая по мере надобности необходимые пояс- пояснения. Просмотрев доказательства утверждений 2.1—2.7, читатель без труда убедится, что трехбуквенность алфавита А в них никак не используется. Алфавит А здесь можно считать произ- произвольным. Мы так и поступим, и будем считать, что алгорифм 35д, q окончательно определяется схемой B), где А — про- произвольный алфавит. Утверждения 2.1—2.7 мы будем считать доказанными именно для этого алгорифма. 4. Алгорифмы 2lA, Q и ©д. Q естественно называть присоединяющими алгорифмами; алгорифм 21а, q—левым присоединяющим (слово Q) алгорифмом над алфавитом А, алгорифм ЗЗд, q—правым присоединяющим (слово Q) алго- алгорифмом над алфавитом А. Частным случаем левого при- присоединяющего алгорифма над алфавитом А является тождественный нормальный алгорифм За в алфавите А, определяемый как Жа, а- Для него имеем для любого слова Р в алфавите А [1.1]. 5. Нормальный алгорифм ?А в алфавите А, определяе- определяемый схемой мы будем называть пустым нормальным алгорифмом в А. Фактически мы уже показали [§ 25.11.4], что ЙА не при- применим ни к какому слову в алфавите А. § 29. Сокращающие алгорифмы 1. Будем говорить о простой формуле подстановки, что она сокращающая, если длина ее правой части меньше длины ее левой части. Будем говорить о нормальном алгорифме, что он сокращаю- сокращающий, если все его простые формулы подстановок сокращаю- сокращающие. Следующая лемма очевидна: 1.1. Если Ж—сокращающий алгорифм и %:P\—Q, то [Qd < [Рд. Имеем далее 1.2. Любой сокращающий алгорифм Ж в алфавите А применим ко всякому слову Р в алфавите А, причем имеет место неравенство A) (Ж:Р)<[Ра\. Будем доказывать эту теорему методом индукции по длине слова Р, фиксируя сокращающий алгорифм 31. Алгорифм 21 применим ко всякому слову длины Л и для всякого такого слова Р имеет место неравенство A). В са- самом деле, если [Рд Ж Л, то PSA. Никакая простая фор- формула подстановки в этом случае не действует на Р, так как ее левая часть непуста. Если алгорифм Ж действует на Р, то формулой, активной на Р в Ж, является заключитель- заключительная формула подстановки. Тогда имеется слово Q такое, что 21: Р\—-Q, и мы имеем (Ж:Р)Щ [§ 25.8], откуда сле- следует, что алгорифм Ж применим к Р. Если же 81 не дейст- действует на Р, то E1: Я) ж Л [§ 25.8.8]. В обоих случаях алго- алгорифм Ж применим к Р и имеет место A). Предположим теперь, что для натурального числа N доказано, что алгорифм 21 применим ко всякому слову в А длины, не большей N, и что для всякого такого слова имеет место неравенство A). Пусть Я—слово в А длины iV |. Имеет место одно из трех: 1) Ж:Р~\; 2) имеется слово Q такое, что Ж:Р\—-(}; 3) имеется слово Q такое, что Ж: Р \— Q. В первых двух случаях алгорифм 21 применим к Р и B1:Я)<| [§ 25.8]. В третьем случае [Qd < [Рд [1.2] и потому [Q°s^N. По индуктивному предположению отсюда следует, что алгорифм Ж применим к Q и что (91: Q) ^ ^[Q5|. Следовательно, алгорифм Ж применим к Р и (Ж:Р)^ ЗЕ(Щ : Q)| [§ 25.8.9]. Но [Q* |<[Р5. Поэтому t что и требовалось доказать.
150 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. Ill §29] СОКРАЩАЮЩИЕ АЛГОРИФМЫ 151 2. Пусть А—алфавит и 6А—нормальный алгорифм в алфавите А с сокращенно записанной схемой Ц — . где ? пробегает алфавит А. Нормальный алгорифм (?А сокращающий. Имеем поэтому 2.1. Алгврифм 6д применим ко всякому слову в алфа- алфавите А [1.2]. Далее, очевидно 2.2. Алгорифм 6А действует на всякое непустое слово в алфавите А. Докажем теперь, что 2.3. Алгорифм (?А перерабатывает всякое слово в алфа- алфавите А в пустое слово. Пусть Р—слово в алфавите А. Имеется слово Q в А такое, что A) еА(Я)ж<2 [2.1]. Имеем поэтому @А : Р \='Q или 6А: Р |= Q ~]. Первая воз- возможность отпадает, так как заключительных формул под- подстановок в схеме 6А нет. Следовательно, @А: P)==Q~]. Отсюда следует, что B) QSA [2.2]. Таким образом, EA(P)SA[A), B)], что и требовалось до- доказать. Ввиду 2.3 мы будем называть алгорифм (?А аннулирую- аннулирующим алгорифмом в А. 3. Фиксируем слово С в алфавите А и обозначим (?д, с нормальный алгорифм в алфавите А со следующей сокра- сокращенно записанной схемой: I —С, где ? пробегает А. Алгорифм 6А, с сокращающий. Имеем поэтому 3.1. Алгорифм ©а, с применим ко всякому слову в алфа- алфавите А [1.2]. 3.2. Алгорифм ©д, с действует на всякое слово в алфавите А; если при этом слово Р в алфавите А непусто, то формула подстановки, активная на Р в ©А> с, простая. Из 3.2 следует 3.3. Невозможно естественное окончание процесса при- применения алгорифма (?А, с- 3.4. Если ©А< с: R\--Q, то #ЖЛ и Q В самом деле, если R непусто, то в силу 3.2 алгорифм 6А, с просто переводит R в некоторое слово S, что невоз- невозможно, так как по условию EА, C'R\—'Q- Поэтому ЯЖЛ. Единственной формулой подстановки, действующей на Л, является формула —+-С, ввиду чего 6А, с: &\—-С. Таким образом, Q^C, что и требовалось доказать. 3.5. Алгорифм (SA, c перерабатывает всякое слово в ал- алфавите А в слово С. Пусть Р—слово в алфавите А. Имеется слово Q в А такое, что [3.1]. A) ®а, c(P)^Q Имеем 6А, с: P^='Q или ©А, с: P^Ql- Вторая возмож- возможность отпадает [3.3]. Следовательно, 6А, с: P\=-Q, и потому имеется слово R такое, что (SA, C'- R\-~-Q- Отсюда следует, что B) [3.4]. Таким образом, (SA, C(P)^C [A), B)], что и требовалось доказать. 4. Фиксируем букву е алфавита А и обозначим Зд, 8 нормальный алгорифм в алфавите А со схемой где | пробегает алфавит А. Алгорифм 3А,е—сокращающий. Имеем поэтому 4.1. Алгорифм 8А, е применим ко всякому слову в алфа- алфавите А [1.2]. В следующих леммах буквы X, Y, Р будут означать слова в алфавите А. Имеем 4.2. 3А, 8: У1 тогда и только тогда, когда е не входит в У. Пусть Р — слово, не содержащее е. Будем говорить о слове X, что оно есть левое Р-слово, в следующих двух случаях: 1) когда е входит в X и Я есть левое крыло пер- первого вхождения е в X; 2) когда Х~5.Р. Легко доказывается следующая лемма: 4.3. Если X есть левое Р-слово и 3А> е: X[—Y, то У есть левое Р-слово. Отсюда индукцией по шагам работы Зд, е [§ 25.10, § 27.3] получаем
152 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. Ill ', то У 4.4. Если X есть левое Р-слово и Зд,г' Х^ есть левое Р-слово Докажем теперь 4.5. Алгорифм За, е перерабатывает всякое левое Р-слово в Р. Пусть X есть левое Р-слово. Алгорифм Зд,е применим к X [4.1]. Имеется слово У в алфавите А такое, что За, в(Х) ^ У¦ Так как схема алгорифма За, в состоит из простых формул подстановок, имеем За, е:Х\=У ~], и потому Зд,е: X |== У и За, е^ У1 • Следовательно, У есть левое Р-слово и е не входит в У [4.4, 4.2]. Поэтому F1P, что и требова- требовалось доказать. Принимая во внимание определение левого Р-слова, мы можем переформулировать утверждение 4.5 следующим об- образом: 4.6. Алгорифм Зд.е перерабатывает всякое еловое алфа- алфавите А, не содержащее е, в это самое слово; он перерабаты- перерабатывает всякое слово X в алфавите А, содержащее е, в левое крыло первого вхождения е в X. Обозначим ©а,е нормальный алгорифм в алфавите А со схемой где | пробегает алфавит А.] Последним вхождением слова Р в слово Q будем называть такое вхождение К слова Р в слово Q, что всякое другое вхождение Р в Q предшествует /С. Аналогично 4.6 доказывается 4.7. Алгорифм ©а, е перерабатывает всякое слово в ал- алфавите А, не содержащее е, в это самое слово; он перера- перерабатывает всякое слово X в алфавите А, содержащее е, в пра- правое крыло последнего вхождения е в X. Пусть теперь е не является буквой алфавита А. Возь- Возьмем алфавит Ае и для него построим нормальные алгорифмы Зде, в и ©ае, в- Вспоминая определение е-пары слов в алфа- алфавите А [§ 22.3], видим, что 4.8. Какова бы ни была е-пара слов в алфавите А, алгорифм Зде, е перерабатывает ее в первый элемент этой пары, а ал- алгорифм ©де, 8—во второй. Ввиду 4.8 мы называем алгорифмы Зде, е и ©д8, е в ал- алфавите Ае отсекающими алгорифмами для алфавита А. Пусть е и х—две различные буквы, не входящие в ал- алфавит А. Построим в алфавите Аеи нормальный алгорифм §зй РАЗВЕТВЛЯЮЩИЙ АЛГОРИФМ 153 д, в, и со схемой где | пробегает алфавит А. Алгорифм Яд, е, % сокращающий. Поэтому он применим ко всякому слову в Аех. Читатель без труда убедится, что 4.9. Каковы бы ни были слова Р, Q, R в алфавите А, алгорифм ^А, е> и перерабатывает слово PeQkR в слово Q. (Сначала е „съедает" Р, затем х „съедает" R, после этого е и х „уходят" и работа $д,е, и заканчивается естественным обрывом с результатом Q.) Ввиду 4.9 мы называем алгорифм йд, в, и высекающим алгорифмом для алфавита А. § 30. Разветвляющий алгорифм 1. Пусть а не является буквой алфавита А. Пусть С, D и Е—какие-либо фиксированные слова в А. Построим нор- нормальный алгорифм Ша, с, d, e в алфавите Аа*) с сокращенно записанной схемой A) |а а где | пробегает алфавит А. Покажем, что он применим ко всякому слову в алфавите А, причем B) 51а, c,d, я (С) ID и для всякого слова Р в А, графически отличного от С. *) Ввиду перехода на нелинейный способ записи схем буквы а, 0 и у высвобождаются, и мы в дальнейшем будем использовать их в качестве букв алфавитов тех или иных нормальных алгорифмов.
154 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III $30] РАЗВЕТВЛЯЮЩИЙ АЛГОРИФМ Чтобы установить B), мы заметим, что левые части формул подстановок алгорифма 21д. с. d, е, соответствующие первым пяти строкам схемы A), в С не входят, так как эти левые части либо содержат букву а, либо имеют длину, на единицу большую длины слова С. Левая часть следую- следующей формулы подстановки С—*-D входит в С. Таким обра- образом, эта формула активна на слове С в схеме A) и резуль- результат ее действия—а тем самым и результат действия схе- схемы A)—на слово С, как легко видеть, есть слово D, и так как в данном случае активная формула подстановки является заключительной, то Яа. cd, e:C\-.D, откуда непосредственно следует B). Для установления истинности утверждения C) мы до- докажем следующие восемь лемм 1.1 — 1.8. В них Р, Q и R будут обозначать произвольные слова в алфавите А, а ? — любую букву этого алфавита. 1.1. «д. с. о. в: Ql*R\-QaZR. В самом деле, на слово Q&R действует в точности одна из формул подстановок, представленных первой строкой схемы A): формула ?а—*-а|. Именно она и является в дан- данном случае активной. Вхождение Q#|a#R является един- единственным—а следовательно, и первым—вхождением ее ле- левой части в слово Q?,aR. Значит, результат действия схемы A) на слово Q&R есть QafcR. А так как активная формула простая, то что и требовалось доказать. Таким образом, лемма 1.1 говорит о том, что в резуль- результате одного простого шага буква а в слове вида Q?a/? „продвигается" на одно место влево. 1.2. 81а. с, D.E- QaR^=otQR. Это утверждение мы докажем правой индукцией по Q. Для этого мы рассмотрим свойство F слова Q, выражаемое условием «каково бы ни было R, Жа, с, d, e' QaR\=aQR», и покажем, что любое Q обладает этим свойством. В самом деле, пустое слово обладает свойством F [§ 25.6.1]. Пусть теперь Q обладает F, а ?—какая-либо буква. Тогда D) ЯА. с, о. е- Q&R Ь QalR [1.1]. 155 ft Но IR—слово в А, и потому по индукционному предполо- предположению E) Ша.с.о.е: QalR\=aQlR. Следовательно, Яа._с.о. е: QlaR\=aQlR [D), E), § 25.6.2, § 25.6.3] и, значит, QI обладает свойством F. Таким образом, дейст- действительно, любое Q обладает свойством F, а это и доказы- доказывает наше утверждение. 1.3. Яа. с. ли: о.\Р\-а.Р. В самом деле, ни одна из формул подстановок, пред- представленных первой строкой схемы A), не действует на а%Р. Вхождение *a|*Q есть единственное вхождение слова вида а? в а?Р. Таким образом, из рассмотрения схемы A) вытекает, что формула а? —>- а является активной на а|Я в схеме A), и потому что и требовалось доказать. 1.4. Яа. с. d.e: aP^=a. Докажем это утверждение левой индукцией поР[§ 17.3.2]. Для этого рассмотрим свойство G слова Р, выражаемое условием «31а, с, d, е'- аР|=а», и покажем, что этим свойством обладает любое слово Р. Действительно, пустое слово им обладает [§ 25.6.1]. Пусть теперь Р обладает G, а ?—какая-либо буква. Тогда F) Я а. со. в: <х1Р\-<хР [1.3]. 1 Но по индукционному предположению I G) Я а. с d.e: aP^=a, | и потому ) Яа. со. я: о6Я(=о [F), G)], ; т. е. ?Я обладает свойством G. Значит, любое Р обла- обладает этим свойством, а это и требовалось доказать. 1.5. Щд, с, d, е: а\—'Е. В самом деле, формулы подстановок, представленные первыми двумя строками схемы A), не действуют на а, а формула а—+-Е действует на это слово и, значит, она является в данном случае активной. Вхождение
156 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III является первым вхождением левой части этой формулы в слово а. Результат подстановки ее правой части вместо этого в*хождения есть Е, и так как эта формула является заключительной, то 31а, с, d, е: а\--Е, что и требовалось доказать. 1.6. Если С входит в Р и Р^:С, то существуют такие слова Q и R в А, что ЩА> с, d, е- P\—QaR. В самом деле, пусть Р — слово в А, отличное от С, и пусть С входит в Р. Тогда в Р входит либо одно из слов вида С1, либо одно из слов вида 1С. Иначе говоря, в Р входит левая часть хотя бы одной из формул, представлен- представленных четвертой и пятой строками схемы A). Левые же части выше стоящих формул, содержащие а, не входят в Р. По- Поэтому на Р активна одна из формул, представленных чет- четвертой или пятой строками схемы A). Эта формула имеет вид 5-—*ее, и требуется применить ее к первому вхождению слова 5 (равного С| или |С) в Р. Пусть Q*S*7? будет этим вхождением. Тогда Q и R суть, как и Р, слова в А, а ре- результат подстановки правой части формулы есть слово QaR. Так как активная формула простая, 21д, с, о, е- P\—Q&R, что и требовалось доказать. 1.7, Если С не входит в слово Р в алфавите А, то В самом деле, в этом случае из левых частей формул подстановок алгорифма 81а, с, d, e левая часть последней формулы—пустое слово—входит в Р, все же остальные не входят в Р, так как в них входит либо а, либо С. Следо- Следовательно, требуется подставить правую часть последней формулы, т. е. а, вместо первого вхождения пустого слова в Р, что дает аЯ. Так как активная формула простая, то 21а. с. р. е' Р \- «Я, что и требовалось доказать. 1.8. Если Р—слово в алфавите А, отличное от С, то могут быть указаны такие слова Q и R в А, что 8СА. с, d.e: Р В самом деле, если С входит в Р, то такие Q и R мо- могут быть указаны согласно 1.6. Если же С не входит в Р, то, согласно 1.7, в качестве Q можно взять А, а в ка- качестве R слово Р. Мы можем теперь доказать равенство C). В самом деле, пусть Р—слово в А, отличное от С. Возьмем слова Q и УДВАИВАЮЩИЙ АЛГОРИФМ J57 /? в А согласно 1.8 таким образом, что 2Ц, с d e: P\— QaR. Имеем тогда 21а, с, d. е'- Я (— QaR [1.2] [1.4] [1-5], и* г-? откуда 21А. с. d. е- Р\=-Е, и потому 2U. с. d,e(P)±E [§25.7], что и требовалось доказать. Таким образом, работа алгорифма 31А, с, о, ? над словом Я в А протекает следующим образом. Если РжС, то 21 А> с, о. ? за один шаг переводит Я в D и на этом его работа закан- чивается. Если же Я^1С, то 21А, с. d.e „вводит" в перера- перерабатываемое слово сигнализирующую об этом букву а [1.8], которая „выходит" затем в начало слова [1.2], „стирает" его [1.4] и „превращается" в Е [1.5], после чего работа 21а. с, d, е прекращается. Г t i § 31. Удваивающий алгорифм | 1. Пусть а, р и у означают различные буквы, не при- | надлежащие алфавиту А. Построим нормальный алгоритм $а ¦ в алфавите Аофу с сокращенно записанной схемой а где I и ri пробегают алфавит А (при n-буквенном алфавите А эта схема состоит из п24-п -\-4 формул подстановок). Покажем, что B) %к{Р)^РР Для всякого слова Я в А. Для установления истинности утверждения B) мы введем две операции Фи? над словами в А, а затем докажем леммы 1.1—1.14, из которых это утверждение будет вытекать. В даль- дальнейшем Я, Q, R, 5 будут обозначать произвольные слова в А, а ?, т] — любые буквы этого алфавита.
[ГЛ. III 158 НОРМАЛЬНЫЕ АЛГОРИФМЫ Положим (см. замечание в § 17.3.2) C) D) E) F) Легко видеть, что G) Ф(Е)з:ЕР [D), C)], (8) Т(Е)а:Ет [F), E)]. Кроме того, правой индукцией по Q нетрудно показать, что (9) Ф(Р<2)ШФ(Р)Ф((}) [C), D)] A0) VJLPQ)*.V{P)V(Q) [E), F)]. Имеем 1.1. &а: PY-aP. В самом деле, левые части всех формул подстановок схемы A), кроме последней, не входят в Р, так как буквы а,| и | не являются буквами алфавита А. Левая часть последней фор- формулы -*¦ а (пустое слово) входит в Я и, таким образом, эта фор- формула является активной на Р. **Р есть первое вхождение ле- левой части этой формулы в слово Р. Вместо этого вхождения требуется подставить правую часть активной формулы, т. е. а, что и дает нам слово аР. Так как активная формула является простой, &А: Р\-аР, что и требовалось доказать. 1.2. %к: Qa\--Q- Доказывается аналогично 1.1 рассмотрением схемы A). формулой подстановки, активной в A) на Qa, является формула а —*- •. 1.3. $A: Ф(Р)Р4&\-Ф(Р)Р1№яЦ- Доказывается рассмотрением схемы A). Легко видеть, что ни одна из формул, представленных первой строкой схемы A), не действует на слово Ф (P)PalQ. Между тем среди формул, представленных второй строкой, имеется формула a|-»-|fi^a с левой частью, входящей вФ (P)Pa\Q. Эта формула и является активной на данном слове. Единственное вхождение ее левой части в рассматриваемое слово имеет вид Ф(Р)Я*а|*(?. Вместо него подставляется правая часть формулы, т. е. слово ЕЧ |31] УДВАИВАЮЩИЙ АЛГОРИФМ 15д так как активная формула является простой, &А: ®(P)PaiQ\-O(P)Q№<xQ, рчто и требовалось доказать. 1.4. $А: Ф E) Rr\?,$P?,aQ \— ф (S) R%fii\P%aQ. Доказывается рассмотрением схемы A). Активной на [•слове Ф (S)Rr\l^PlaQ является формула т)!Р—«.^Рц, пред- :ставленная первой строкой схемы A)" 1.5. ^А: Ф(S)RPlfilaQ\=Ф(S)Ri$Pla.Q, Мы докажем это утверждение левой индукцией по Р. этой целью мы введем свойство F слов Р, выражаемое условием «каковы бы ни были Q, R, S и ?, f и обычным индуктивным рассуждением покажем, что любое Р обладает этим свойством. Действительно, пустое слово Л обладает свойством F [§25.6.1]. Допустим теперь, что им обладает слово Р, и по- покажем, что тогда им обладает и слово цР, какова бы ни была буква ц. В самом деле, Rr\ есть слово в А, и потому по индук- индукционному предположению A1) &А: Ф E) R4Pl№aQ f=* Ф (S) RrfflPfaQ. Но, согласно 1.4, A2) 8=А: ф E) ЯrgpPEaQ \- Ф E) и, следовательно, Q [A1), A2)], что и оставалось доказать. 1.6. %А: Ф (Р) P№<xQ |= ф (Р) ?pP|aQ. Это утверждение представляет собой частный случай 1.Г> при ЯЖЛ и 5SP. 1.7. &А: аРB\=Ф(Р)Ра<2. Докажем это утверждение правой индукцией по Р. С этой целью рассмотрим свойство G слов Р, выражаемое условием «каково бы ни было Q, g=A: aPQ \=Ф(Р)РаС}», .. и индуктивным рассуждением покажем, что этим свойством ! обладает любое слово в А. Действительно, пустое слово Л им обладает [C), § 25.6.1]. Предположим теперь, что им обладает слово Р, и пусть § —
160 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III произвольная буква. Тогда по индукционному предположению A3) $А: aPlQ\=O(P)PalQ. Но и потому »?PSaQ [A3), A4)] 3P?aQ [1.6] Следовательно, PI обладает свойством G. Тем самым лем- лемма 1.7 доказана. 1.8. $А: аРИФ(Р)Р«. Это утверждение представляет собой частный случай 1.7 при QSA. 1.9. 8rA: Y(P)SpO(Q)/?a|-V(P)S7<I>(Q)^a- Доказывается рассмотрением схемы A). Активна фор- формула, представленная третьей строкой схемы. 1.10. 8fA: <t>(PQ)PQa^4(P)<t>(Q)PQa. Доказательство проведем правой индукцией по Р. Для этого рассмотрим свойство Я слов Р, выражаемое условием «каково бы ни было Q, и, рассуждая, как обычно в таких случаях, покажем, что им обладает любое слово в А. Действительно, пустое слово А этим свойством обладает [E), § 25.6.1]. Пусть теперь им обладает слово Р, и пусть I—произвольная буква. Тогда 3E4r(P)gpO(Q)P|Qa [(9), G)] [1.9] [F)] и, значит, Р| также обладает свойством Я. Таким образом, действительно, любое слово в А обладает свойством Я, что и требовалось доказать. 1.11. f?A: Ф (Р) Pa\=W (P) Ра. (Частный случай 1.10 при Q 1.12. 8fA: Ply^(Q)PlQa\-V(Q)^ Доказывается рассмотрением схемы A). Активная фор- формула, представленная четвертой строкой схемы. $31] УДВАИВАЮЩИЙ АЛГОРИФМ 161 1.13. $А: xP(PQ)PQa\=Py?(Q)PQa. Доказательство проведем правой индукцией по Р. Для этого рассмотрим свойство /С слов Р, выражаемое условием «каково бы ни было Q, $А: V(PQ)PQa\=PV{Q)PQa», и обычным для таких случаев рассуждением покажем, что им обладает любое слово в А. Действительно, пустое слово им обладает. Пусть теперь им обладает слово Р, и пусть 5—любая буква. Тогда [инд. предпол.] [(Ю), (8)] [1.12], т. е. Р? также обладает свойством К- Значит, действительно, любое слово в А обладает этим свойством, что и требова- требовалось доказать. 1.14. $А: V (Р) Pa И РРч. _ (Частный случай 1.13 при QSA.) Теперь докажем утверждение B). Действительно, $А:РЬаР [1-1] [1.8] [1.11] t=PPa [1.14] \-.РР [1.2], откуда $А: Р\=> РР и, следовательно, что и требовалось доказать. Таким образом, нормальный алгорифм ^а может быть оха- охарактеризован как удваивающий алгорифм над алфавитом А. 2. Проведенное доказательство убедительно демонстрирует действенность метода индукции. Однако неискушенному чита- читателю оно может показаться недостаточно прозрачным. Ввиду этого целесообразно сопроводить его несколькими замечани- замечаниями. Прежде^всего следует в общих чертах описать работу алго- алгорифма ^А-'Она выглядит следующим образом. Вначале перед исходным словом Р „возникает" буква a [1.1]. Затем она „бе- „бежит" по слову Р слева направо, снимая с его букв „копии" [1.3]. Буквы-копии, „разбавленные" приклеившимися к ним буквами р\ бегут налево сквозь уже пройденную буквой a 6 А. А. Марков, Н. М. Нагорний
162 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. Ill $31] УДВАИВАЮЩИЙ АЛГОРИФМ часть слова Р [1.6] и, таким образом, перед Р накапливается в виде слова Ф (Р) „копия" слова Р. Когда а добегает до конца слова Р, результат, по существу, оказывается уже полученным [1.8]. Остается произвести лишь небольшую чистку: убрать „лишние" буквы р и а. Каждая р перед „уничтожением" превращается в у [1.11], затем все у „стираются" [1.141 и, на- наконец, на заключительном шаге „стирается" а [1.21. Здесь не- несколько парадоксальным выглядит промежуточное „переиме- „переименование" букв рву. Легко, однако, убедиться, что более про- простой нормальный алгорифм ®д в алфавите Аар с сокращенно записанной схемой 163 а - а (| и г] по-прежнему пробегают А) не эквивалентен $А отно- относительно А и потому не может заменить $А. Пусть, в самом деле, ? и % — разные буквы алфавита А. Тогда, как нетрудно видеть, в применении к слову ?х алгорифм ®А работает следующим образом: Ь 'г- Ь h h Таким образом, ©A^X^X^X^xSx^fMSx)- по сравне- сравнению с работой алгорифма $А здесь лишний раз пришлось применить формулу ?%Р —>¦ %Р?, отчего в окончательном результате произошла транспозиция первых двух букв. В алгорифме $А таким лишним перестановкам препятствует введение специального промежуточного этапа при устране- устранении вхождений р: сначала вместо этих вхождений ,fпод- ,fподставляются у. Основными в нашем доказательстве являются леммы 1.1, 1.2, 1.8, 1.11 и 1.14. Из них первые две тривиальны. Три по- последние первоначально доказываются в усиленном виде (лем- (леммы 1.7, 1.10 и 1.13), а затем ослабляются,— мы рекомендуем читателю обратить внимание на этот прием. Леммы 1.3, 1.9 и 1.12 подготавливают индукционные шаги в 1.7, 1.10 и 1.13 со- соответственно. Леммы 1.4—1.6 описывают механизм накопления копии исходного слова. 3. Удваивающий нормальный алгорифм дает типичный пример сведения перехода интегрального характера — удвое- удвоения слова — к нескольким переходам локального характера — подстановкам согласно схеме алгорифма. Число последних за- зависит при этом от удваиваемого слова. Можно подсчитать, что у алгорифма $д оно равно где k — длина удваиваемого слова. Вопрос о нижней оценке для числа шагов работы произвольного удваивающего нор- нормального алгорифма исследован Г. С. Цейтиным в [5]. Естественной мерой сложности нормального алгорифма яв- является длина его схемы (в линейной записи [§ 25]), характери- характеризующая „объем памяти", потребный для „запоминания" этого алгорифма. Такой подход к оценке сложности нормальных алгорифмов был впервые намечен А. А. Марковым *) в [16], [17] и затем разработан им и его учениками. Нетрудно подсчитать, что сложность $а, т. е. длина его схемы, равна 8п2+8п+14, где п — число букв алфавита А. Таким образом, она представляет собой квадратичную функ- функции от п. Оригинальная идея построения удваивающего алгорифма с линейной сложностью была предложена Д. А. Остроуховым в II] (см. также [2]). Сложность алгорифма, построенного по его методу, равняется 10п+С Отталкиваясь от этой идеи, Д. А. Остроухов пришел к установлению очень важной общей теоремы о линеаризации общих методов построения алгориф- алгорифмов. Впоследствии, путем чрезвычайно остроумного усовершен- усовершенствования конструкции Остроухова, В. Г. Жарову в [1] (см. также [2]) удалось построить удваивающий алгорифм со слож- сложностью 5n+Ci и показать, что дальнейшее улучшение мульти- мультипликативной константы при п здесь невозможно. Соответству- Соответствующее усиление получила при этом и общая теорема Остро- Остроухова. *) Аналогичный подход использован А. Н. К о л м о г о р о в ы м [2] для определения сложности конечного конструктивного объекта. 6*
164 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III 4. Удваивающий алгорифм ^д мы построили как нормаль- нормальный алгорифм в трехбуквенном расширении алфавита А. Впо- Впоследствии — в § 41 — мы покажем, что сравнительно простым приемом число „вспомогательных" букв здесь может быть уменьшено до двух (и — несколько сложнее — даже до еди- единицы: см. § 41.8.1). Однако в случае непустого А совсем обой- обойтись без них невозможно. Покажем это. Пусть 31—нормальный алгорифм в алфавите А. Если схема 31 содержит заключительные формулы подстановок, то для каждой такой формулы U —+-V мы вычислим раз- разность \Vd—[Ud и наибольшее из полученных таким обра- образом чисел обозначим символом s (SI). Если же схема алго- алгорифма 31 состоит только из простых формул подстановок, то определим s C1) „как-нибудь", например будем считать, что sCt) равняется нулю. sCl) представляет собой некоторую сложностную характеристику алгорифма 31. Пусть k — рациональное число. Нормальный алгорифм 31 в алфавите А мы будем называть k-растягивающим, если для всякого слова Р в алфавите А такого, что 31 (Р) опре- определено, A) [31 (P)d (Здесь и далее до конца параграфа ^, > и = будут озна- означать обычные отношения порядка и равенства для рацио- рациональных чисел.) Имеет место следующее утверждение (Н. М. Нагор- Нагорный [2], теорема 3.1): 4.1. Пусть k—рациональное число, большее единицы, и пусть 31—k-растягивающий нормальный алгорифм в алфа- алфавите А. Если 31 применим к непустому слову Р, то В самом деле, пусть k > 1 — рациональное число, и пусть /г-растягивающий нормальный алгорифм 31 в алфавите А применим к непустому слову Р. Тогда для некоторого слова W имеем B) Я(/ Одно из двух: либо C) Я: Р либо D) 3t: F § 31] УДВАИВАЮЩИЙ АЛГОРИФМ Если имеет место C), то -ф) Ш. (W) з: W 165 ¦j и, так как W—слово в А, } F) [Wa>k.\W* [E), A)]. Но % [Wd^k-[Pa>0 [B), A)], , и потому 1^/г [F)], чего, однако, быть не может, так как по условию k > 1. Итак, имеет место D), и, значит, существует слою Q % в А такое, что и G) Я: Q\--W. ¦ .;¦' Рассмотрим заключительную формулу ;. активную на слове Q в схеме алгорифма 31. Существуют такие слова R и S в алфавите А, что (8) Q 1HRUS, (9) W1LRVS. Так как [Vd—[?/a<, ), имеем [(9), (8)], и потому ;? С другой стороны, ' и потому Следовательно, A2) «(Q)ir [G)], [W>k.[Q> [A)]. + s(%) [A1), (Ю)]
166 так что A3) Но и потому A4) что дает НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III «32] ОБРАЩАЮЩИЙ АЛГОРИФМ 167 , A2)] k-S (Ж) k— I ' (P)TLW [B)],' [A4), A3)] что и требовалось доказать. Из 4.1 вытекает, в частности, невозможность построения в непустом алфавите А нормального алгорифма Щ, удваиваю- удваивающего любое слово в А. В самом деле, такой алгорифм был бы 2-растягивающим, и, значит, для любого непустого слова Р в А выполнялось бы неравенство [Pd^.s(ty) [4.1], что очевид- очевидным образом невозможно. § 32. Обращающий алгорифм 1. Построим нормальный алгорифм над алфавитом А, пере- перерабатывающий всякое слово в алфавите А в обращение этого слова [§ 17.3.2]. Пусть аир означают две различные буквы, не принадлежащие А. Зададим нормальный алгорифм §а в алфавите Аоф сокращенно записанной схемой A) где | и т) пробегают алфавит А. аа Р—• Этот алгорифм и является искомым обращающим алго- алгорифмом над алфавитом А, т. е. B) ®А(Р)ЩР» для всякого слова Р в А. Этот факт легко может быть доказан по образцу доказа- доказательства, проведенного в предыдущем параграфе. Поэтому мы лишь наметим здесь доказательство вкратце, предоставляя подробности читателю. Вообще, по мере того, как у читателя будет накапливаться опыт, мы будем делать доказательства менее подробными, не доходя, впрочем, в этом отношении до крайностей. Как и в предыдущем параграфе, Р, Q, R будут обозначать произвольные слова в А, а |, т| — любые буквы этого алфавита. Нам потребуется операция в над словами в А, которую мы определим равенствами C) в (Л) ^=Л, D) @(Pl) Легко видеть, что E) еFJа6 [D), C)]. Кроме того, правой индукцией по Q нетрудно показать, что F) @(PQ)?r&(P)&(Q) [C), D)]. Имеем 1.1. ?А: P6(Q)h«Pe(Q). В самом деле, на слово P6(Q) действует только послед- последняя строка схемы A). 1.2. §А: -РрЬ'-Р- В самом деле, первой действующей на РР формулой в схеме A) является формула р—»-•. 1.3. ,§А: QaE^Pe (R) \- Qi]a%P® (R). В самом деле, формулы, представленные первыми четырьмя строками схемы A), не действуют на слово фа|л..Рв (R). Активна формула a?r|—>-1]а| из пятой строки схемы. 1.4. ?А: alQPO (R) И <МРв (R). Доказывается правой индукцией по Q с использованием 1.3, 1.5. #А: alQS(R)^=Qal@(R). Частный случай 1.4 при Р.2.Л. 1.6. ?А: PQ^QS([P^). Доказывается правой индукцией по Р с использованием 1.1 и 1.5.
168 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III В самом деле, при РИА имеет место графическое равен- равенство слов PQ и QO ([Р") и тем более нужное нам утвержде- утверждение. Предположим, кроме того, что для какого-либо Р имеет место при любом Q, и пусть ?—произвольная буква. Тогда [инд. предпол.] ' [11] , [1.5] [E), F)] [§ 17.3.2], т. е. в этом случае для любого Q Таким образом, обе предпосылки применения метода пра- правой индукции выполнены. Частный случай 1.6 при QH.A. 1.8. Если P^iA, то ,fjA: «6 (Р) |-Рв (Р). В самом деле, пусть Р^Л. Тогда P3E|Q, e(PJ 3:e(|N(QK:aEe(Q) и ав(Р)Жаа1в(Р). Легко видеть, что Но page (Q) ж pe (|Q) s ре (Р). 1.9. фА: pe(PQ)H-PP©(Q). Доказывается праюй индукцией по Р. В самом деле, при PSA имеет место графическое равен- равенство слов ре (PQ) и Ррв (Q) и тем более нужное нам утверж- утверждение. Пусть, кроме того, для какого-либо Р имеет место при любом Q, и пусть ? — произвольная буква. Тогда i(==Ppe(|Q) [инд. предпол.] SPpa|e(Q) [F), E)] [A), строка 2] [A), строка 3] и, следовательно, в этом случае для любого Q $32] ОБРАЩАЮЩИЙ АЛГОРИФМ 169 Таким образом, обе предпосылки применения метода пра- правой индукции выполнены. 1.10. ?А: рв(Р)Н-РР [1.9, Q3EA]. 1.11. ?А: АН=-А. Действительно, %: А (- a [— aa hP« HP (-•A. Теперь докажем утверждение B). Пусть Р—произволь- Р—произвольное слово в А. Если Р пусто, то [Pv также пусто, и тогда справедливость B) вытекает из 1.11. Если же P^iA, то [1.7] [1.1] [1.8] |-осв([Р-) Ь [] [1.2], откуда и, следовательно, что и заканчивает наше доказательство. 2. Легко усмотреть, что работу алгорифма фд в примене- применении к исходному слову Р в А можно описать следующим об- образом. Сначала перед Р возникает буква а. Она „приклеивается" к первой букве слова и „протаскивает" ее направо сквозь все буквы алфавита А. Затем перед получившимся таким образом новым словом снова возникает а. Если слово Р еще не исчер- исчерпалось, то а „приклеивается" ко второй его букве и тоже про- проносит ее сквозь все буквы алфавита А до ближайшей буквы а. Этот цикл повторяется до полного исчерпания Р. Обращение слова Р к этому времени оказывается фактически уже полу- полученным [1.7], правда, в слегка закодированном виде. Раскодирование (выбрасывание „лишних" вхождений а) начинается с того, что перед обрабатываемым словом еще раз возникает буква а. Теперь их оказывается рядом две, и первая из них превращается в Р И.8]. После этого Р „бежит" по слову слева направо, перепрыгивая через буквы алфавита А [A),
170 НОРМАЛЬНЫЕ АЛГОРИФМЫ ГГЛ. III 33] АЛГОРИФМЫ ПОБУКВЕННОГО КОДИРОВАНИЯ 171 строка 3] и стирая буквы а [A), строка 2]. Добежав до конца слова и тем самым закончив чистку, р исчезает и на этом рабо- работа йд заканчивается. (Фактически в нашем комментарии рассматривался общий случай непустого слова Р. Случай пустого Р рассмотрен в лем- лемме 1.11.) Сложность, т. е. длина схемы алгорифма ,<г>А, как нетрудно подсчитать, равна 8п3+6/г+18, где п — число букв алфави- алфавита А. Обращающий алгорифм, построенный по методике Жарова *), имеет схему длины Ъп+С (у Остроухова соответст- соответственно 10n+Ci). 3. В схеме алгорифма ,§д используются две вспомогатель- вспомогательные буквы — аир. Легко понять, что роль второй из них можно поручить слову аа, взяв вместо схемы 1A) схему ' ааа—>- ста аа —>a, где 5 и т] пробегают алфавит А. Эта схема содержит всего одну вспомогательную букву и также определяет обращающий ал- алгорифм. Естественно возникает вопрос, нельзя ли здесь обой- обойтись совсем без вспомогательных букв, т. е. нельзя ли постро- построить такой нормальный алгорифм 31 в алфавите А, что для лю- любого слова Р в А будет 91 (Р) ЗЕ [Р". Ответ на этот вопрос оказывается, вообще говоря, отрица- отрицательным, как показывает следующее утверждение: 3.1. Если алфавит А содержит более одной буквы, то не существует никакого нормального алгорифма 31 в А, который для любого слова Р в А удовлетворял бы условию 91 (Р) Ж [Р^. В самом деле, пусть 31—такой нормальный алгорифм. Покажем, что 3.2. Если слово Р таково, что Р^:[Р^, то 31: Р\--[Р^. Действительно, пусть Р^[Р^. Тогда 9t: P|=[PW~] или 91: р \=-[Pw. В первом случае, с одной стороны, 31 ([Pv) Ж [Р^, а с другой стороны, 81 ([Р^)Ж[[Р^. Но [[Р^ЖР, и, таким *) См. §31.3. образом, Р ^[Р^, что противоречит условию. Следовательно, gt: P|==.[Pvyj и потому существует слово Q такое, что g: P(=Q и 31: Q \- -[Р^ [§ 25.7]. Возьмем такое Q. 3t: Qp=-[^ и, значит, 3i(Q)S[Pw. С другой стороны, 31—обращающий алгорифм, и поэтому 3i(QK:[Qw. Таким образом, [P^SfQ^, и, значит, РЖ(}, откуда ЗГ: Р\--[Р^, что и требовалось доказать. Продолжим теперь доказательство утверждения 3.1. Так как алфавит А содержит более одной буквы, то имеются слова Р в А такие, что P^:[PW. Отсюда следует, что в схеме 31 имеются заключительные формулы подста- подстановок. Возьмем первую из них. Пусть это будет формула U -*.V. Выберем в алфавите А две буквы | и г] такие, что U не начинается | и что | z?. т|. Рассмотрим слово %,Ux\. Легко видеть, что ^и^Жц^и^Ъ,, и потому \Wrf-?.1,11^, так что 31: if/т] [—•¦n[f/w|, причем активной на слове W4 является именно формула U —>¦•]/, так как ее левая часть входит в E^/ti, а все предшествующие формулы подстановок простые. Предположим, что U~?.A. Тогда ??/ti Ж Eti и 31: |ti |— -УЕт]. Отсюда tiE3lV?ti, и, значит, 1,Жц, что противоречит выбо- выбору | и ц. Следовательно, U ~^LA. Но если U^.А, то ?#•?/#• т]—-первое вхождение слова U в слово |?/ti, и потому 31: Wi] \- -Wr\- Следовательно, r\[U^l^.W^], и, значит, ESti, что снова противоречит вы- выбору Е и т]. Следовательно, неверно, что Uzt_A. Таким образом, мы, с одной стороны, доказали, что U ^А, а с другой стороны, опровергли предположение о том, что U^A. Значит, неверно, что для любого Р в А 3t (P) ЗЕ [Р^1, что и доказывает 3.1. Заметим, что если алфавит А однобуквенный или пустой, то тождественный нормальный алгорифм в А, определяемый схемой является обращающим. § 33. Алгорифмы побуквенного кодирования и двойного проектирования 1. Поставим в соответствие каждой букве | алфавита А определенное слово К\ в этом алфавите. Заменяя в произ- произвольном слове Р в А каждую букву | поставленным ей
172 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III в соответствие словом /С|, мы получим слово в алфавите А—результат замены букв | словами К$ в слове Р. Результат замены букв | словами /С| в слове Р мы будем обозначать символом Ф(Р). Более точное—„рабочее"—опре- точное—„рабочее"—определение этой операции мы дадим посредством равенств Ф(Л) ^Л, где Р означает произвольное слово в А, а ?—любую букву алфавита. Легко видеть (это доказывается методом правой индук- индукции), что для любых слов Р и Q в алфавите А Кроме того, Нетрудно построить нормальный алгорифм над алфави- алфавитом А, выполняющий замену букв | словами /С|, т. е. пере- перерабатывающий всякое слово Р в А в слово Ф(Р). В самом деле, пусть а не принадлежит А. Зададим нор- нормальный алгорифм ид в Аа сокращенно записанной схемой A) где ? пробегает А. Покажем, что для любого Р в А Из рассмотрения схемы A) имеем 1.1. $А: Р\-аР. 1.2. aA:<t>(P)a?Q 1.3. ЯА: Ра.\-'Р. Далее, имеем 1.4. tfA: Q|()Q Доказывается правой индукцией по Р с использова- использованием 1.2. 1.5. ЯА: аР\=Ф(Р)а. Частный случай 1.4 при QSA. Из 1.1, 1.5 и 1.3 следует B). Действительно, ЯА: Р\-аР [1.1] \=<Ъ{Р)а [1.5] [1.3], $33] т. е. откуда АЛГОРИФМЫ ПОБУКВЕННОГО КОДИРОВАНИЯ 173 ЯА(РIФ(Р), что и требовалось доказать. Рассмотрим случай, когда | есть буква алфавита А и любой букве 5 этого алфавита в качестве К% сопоставляется слово |. Очевидно, что в этом случае для любого слова Р в А Тот же результат дает более простой нормальный алго- алгорифм в А, определяемый сокращенно записанной схемой в которой | пробегает алфавит А\|. 2. Важным частным случаем замены букв словами яв- является выбрасывание некоторых букв. Это—тот частный случай, когда К% ^ Л для некоторых букв | и К% 3? | для остальных |. В связи с этой операцией в дальнейшем будет приме- применяться следующая терминология. Пусть А—расширение алфавита Б. Результат выбрасы- выбрасывания букв алфавита А\Б из слова Р в А мы называем проекцией слова Р на алфавит Б и обозначаем через [РБ (см. § 19.3). Построение проекций слов в А на Б мы будем называть операцией проектирования из А на Б. ^Соответствующим частным случаем алгорифма 5?д яв- является нормальный алгорифм в Аа с сокращенно записан- записанной схемой <%? —»-?« а • ос. где I пробегает алфавит Б, а ц—алфавит А\Б. Однако более простой нормальный алгорифм в А с сокра- сокращенно записанной схемой
174 НОРМАЛЬН Ы Е АЛГОРИФМЫ [ГЛ. III где | пробегает А\Б, очевидно, достигает той же цели — он перерабатывает всякое слово в алфавите А в проекцию этого слова на алфавит Б и, следовательно, вполне экви- эквивалентен $А относительно А. 3. Пусть А и Б—алфавиты без общих букв. Для вся- всякого слова Р в объединении этих алфавитов возможно построить как проекцию [РА на алфавит А, так и проек- проекцию [РБ на алфавит Б. Покажем, что нормальный алго- алгорифм SAj Б в алфавите АБ с сокращенно записанной схемой где I пробегает А, а т) пробегает Б, перерабатывает вся- всякое слово Р в алфавите АБ в слово [РА[Р^. Для этого условимся прежде всего называть высотой слова Р в алфавите АБ число вхождений в Р слов вида r\Ql, где ?—буква А, ч\—буква Б, a Q—любое слово в АБ. Высоту слова Р будем обозначать символом [Рв. Докажем некоторые леммы. 3.1. Если R—слово в АБ, ?—буква Б, то A) В самом деле, соотнесем всякому вхождению B) S*riQg*r слова вида r\Ql (?—буква А, т)—буква Б) в R вхождение C) того же слова в Rt,. Вхождение C) будем называть обра- образом вхождения B). Очевидно, что разные вхождения слов вида y\Qi (I—буква А, г|—буква Б) в R имеют разные образы. Рассмотрим, с другой стороны, какое-нибудь вхождение D) U*i\Qt*V слова вида r\Q?, (I—буква А, г\—буква Б) в Rt,. Имеем E) F) Здесь ?;^?, так как ?—буква А, ?—буква Б. Поэтому и V оканчивается буквой ?, т. е. *) Относительно применяемой ниже арифметической символики см. § 18.10. ¦ ¦ Г $33] АЛГОРИФМЫ ПОБУКВЕННОГО КОДИРОВАНИЯ 175 Имеем U^QIWTLR [E), F)], откуда следует, что G) U*t\Qt*W есть вхождение t]Q| в R. В силу F) вхождение D) есть образ вхождения G). Таким образом, всякое вхождение слова вида riQg (?—буква А, \\—буква Б) в Rt, есть образ некоторого вхождения того же слова в R. Следовательно, соотнеся каждому вхождению слова вида r\Ql (?—буква A, Ti—буква Ъ) в R его образ, мы тем самым установили взаимно однозначное соответствие между вхождениями таких слов в R, с одной стороны, и их вхож- вхождениями в Rt,—с другой. Поэтому имеет место равенство A), что и требовалось доказать. 3.2. Если R—слово в АБ, t,—буква А, то (8) [Я?в = [Яв-Н[ЯБа. В самом деле, определим образ вхождения слова вида i\Ql (?—буква A, ti—буква Б) в R, как в доказательстве предыдущей леммы. Вхождения слов этого вида в Rt,, являющиеся образами вхождений таких слов в R, будем называть вхождениями 1-го рода. Они находятся во взаимно однозначном соответствии со вхождениями слов вида t)Q| (?—буква A, ti—буква Б) в R, и число их поэтому равно [RB. Поставим далее в соответствие каждому вхождению (9) 5*х*Г какой-нибудь буквы % алфавита Б в слово R вхождение A0) 5*ХП* слова %Tt, в Rt,. Вхождение A0) также будем называть образом вхождения (9). Так как t,—буква А, образ всякого вхождения буквы алфавита Б в R есть вхождение слова вида y\Ql (|—буква А, т]—буква Б) в Rt,. Разные вхож- вхождения букв алфавита Бв^, очевидно, имеют разные образы, т. е. соответствие между этими вхождениями и их образами взаимно однозначно. Будем называть вхождениями 2-го рода образы вхождений букв алфавита Б в слово R. Число вхождений 2-го рода равно числу вхождений букв алфа- алфавита Б в R, т.е. оно равно [[R™. Ни одно вхождение 1-го рода не может быть вхожде- вхождением 2-го рода, так как вхождения 1-го рода имеют непустое правое крыло, а вхождения 2-го рода—пустое правое крыло.
176 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. Ill Всякое вхождение слова вида т)()? (?—буква А, т) — буква Б) в Rt, является вхождением 1-го или 2-го рода. Действительно, рассмотрим какое-нибудь вхождение D) слова этого вида в R?. Если VzgLА, то, рассуждая, как в доказательстве предыдущей леммы, убеждаемся, что D) есть образ некоторого вхождения того же слова в R, т. е. вхождение 1-го рода. Если КЖЛ, то D) является, очевидно, образом вхождения ?/#r|#Q буквы т) алфавита Б в R, т. е. вхождением 2-го рода. Таким образом, число вхождений слов вида t]Q| (| — буква А, т)—буква Б) в Rt, равно сумме чисел вхождений 1-го рода и 2-го рода, т. е. сумме чисел [RB и [[R39, что и выражается равенством (8). 3.3. Если R—слово в АБ, а ?—буква этого алфавита, то В самом деле, [[?Аа есть 1, если ?—буква А, и 0 если Z,—буква Б. В силу этого 3.3 следует из 3.1 и 3.2. 3.4. Если Р и R—слова в АБ, то A1) [Р#В~[РВ + [#В+ ([[*"* Х[[#Ад)- Фиксируем Р и докажем правой индукцией по R, что всякое слово R в АБ удовлетворяет равенству A1). Пустое слово удовлетворяет ему, так как, очевидно, Чтобы доказать лемму, нам поэтому надо лишь дока- доказать, что соблюдение равенства A1) для какого-нибудь слова R в АБ влечет соблюдение равенства [PR? = [Рв + [#?в + ([[Рвд X [[#?Аа) для любой буквы ? алфавита АБ. Итак, допустим, что равенство A1) соблюдается, причем R есть слово в АБ. Пусть также ?—буква АБ. Имеем A2) A3) [PRZ? ш. [PR* + ([[PR™ x [[?Ад) [3.3] = [Рв + [R* + ([[Р™ X [[RM) + (([[РБд + [[ЯБа)х[[?Аа) [A1), A3)] - [Рв + [RB + №Бд X [[?АЗ) + ([[РБЗ х ([[RM + [[?Аа)) = [PB + [R? + ([[PBdx[[RZAd) [3.3, A2)], что и требовалось доказать. ЩJ33] АЛГОРИФМЫ ПОБУКВЕННОГО КОДИРОВАНИЯ 3.5. Для любых слов Р, Q и R в АБ f [PQR* - [рв + [Qb + [/?в + ([[РБд X [[QAa) + 177 ([[РБд х х [[RAd). It В самом деле, имеем [3.4] i [RB + ([[PB[Q™x[[RAd) [3.4] [Рв+[QB + [RB+([[Рвд х [[ QAd) + [PB + [ QB+[ RB + ([[PBd x [[QAd 3.6. Если [Рв = 0, то существуют такие слова Q и R в алфавитах А и Б соответственно, что Р~5. QR. Пусть, в самом деле, [Рв«*0 для некоторого слова Р В алфавите АБ. Если в это слово не входят буквы алфа- алфавита Б, то Р есть слово в А и можно положить Q&P, /?ЖЛ. Допустим, что в Р входят буквы алфавита Б. Пусть тогда Q*t]*S—первое вхождение буквы алфа- алфавита Б в P. Q есть тогда слово в А, у\—буква Б. Если бы T"*g*f/ было вхождением буквы ? алфавита А в 5, то мы имели бы и слово х\Т1, где |—буква А, т)—буква Б, входило бы в Р вопреки тому, что [Рв = 0. Следовательно, никакая буква алфавита А не входит в 5 и S есть слово в Б. Остается положить R^r\S, чтобы иметь P^.QR, где Q—слово в А, R—слово в Б. 3.7. Если Q—слово в A, R—слово в Б, то Это очевидно из определения проекций. 3.8. Если [Рв = 0, то РЩРА[РЪ. Это следует из двух предыдущих лемм. 3.9. Если [Рв = 0, то ЙА. б: Р~|. В самом деле, если [Рв = 0, то никакие слова вида Б), т. е. —буква А, т)—буква никакие левые части фор-
178 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III мул подстановок алгорифма йд, Б, не входят в Р. Это слово тогда не поддается Йа, б. ЗЛО. Если [Рвф0, то существует такое слово Q, что Йа, б: P\-Q. Пусть, в самом деле, Р—слово в АБ и [Р*фО. Тогда в Р входит слово вида л/?|, где ?—буква A, ti—буква Б. Пусть S*T]i?|*r будет вхождением такого слова в Р. В слово t\RI входит буква алфавита А. Пусть U*Z,*V — первое вхождение буквы алфавита А в r\R%. Тогда U^A, так как ?^т]. U есть слово в алфавите Б. Следовательно, U имеет вид W%, где %—буква Б. Имеем поэтому S SWj&VT. Таким образом, в Р входит слово %?, где ?—буква А, %—буква Б, т. е. в Р входит левая часть одной из формул подстановок алгорифма Йа, б. Так как все формулы под- подстановок этого алгорифма простые, алгорифм просто пере- переводит Р в некоторое слово Q, что и требовалось доказать. 3.11. Если йа, б: Ph-Q, то [QB = [PB—I, [QAS[PAj [Q[ В самом деле, пусть йд, б"- P\—Q- Тогда первый шаг применения алгорифма Йа, б к слову Р состоит в подста- подстановке правой части ?п. одной из формул подстановок алго- алгорифма вместо первого вхождения ее левой части т)| (| — буква А, т)—буква Б). Пусть /?*т)|*5—первое вхождение цЕ, в Р. Тогда Q Ж #?tiS. Принимая во внимание, что по определению высоты и что получаем, согласно 3.5, х x {>j|f83] АЛГОРИФМЫ ПОБУКВЕННОГО КОДИРОВАНИЯ 179 Принимая далее во внимание, что получаем Аналогичным образом убеждаемся, что [Pb3l[Qb. 3.12. Алгорифм 2а, б применим к любому слову в АБ. В самом деле, согласно 3.9 он применим к любому слову высоты нуль. Пусть теперь Af—какое-либо натураль- натуральное число. Предположим, что Йа, б применим ко всякому слову Q в АБ такому, что [QB = N, и пусть Р—слово в АБ такое, что [PB = N'-\-l. Покажем, что йд, б применим к Р. Действительно, [Яв=^0, и, значит, существует такое слово Q, что ЙА, б: P\-Q [3.10]. Согласно 3.11 [QB = N, и потому алгорифм Йа, б применим к Q. Но тогда он применим и к Р [§ 25.8.9]. Следовательно, Йа, б применим к любому слову в АБ, что и требовалось доказать. Покажем теперь, что (И) йа. ъ(Р)±[РА[РБ для всякого слова Р в АБ. .;- Пусть, в самом деле, Р—слово в АБ. Алгорифм йд, б ^применим к Р [3.12]. Следовательно, существует Q в АБ ; такое, что Йа, b(-PKEQ- Ясно, что 6) Йа, б: P\=Q1 и что Q—слово высоты нуль [3.10]. Индукцией по шагам работы алгорифма Йа, б с использованием 3.11 легко пока- показать, что A6) [PA2:[QA; A7) Так как имеем A8) Таким образом, [A6), A7)]. Следовательно, Йа, b(P)^[Pa[Pb, что и требовалось до- доказать, откуда [QB = [PB—1.
180 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III Формулируем здесь одно следствие, применяемое в даль- дальнейшем. 3.12. Если Q—слово в A, R—слово в Б, то A9) 8А> В самом деле, при этих условиях и потому A9) следует из A4). Соотношение A4) позволяет нам охарактеризовать ?А, б как алгорифм двойного проектирования. § 34. Некоторые арифметические алгорифмы 1. Построим теперь некоторые нормальные алгорифмы, работающие над натуральными числами и системами нату- натуральных чисел. Отсюда до конца параграфа М, N, Q, R, S означают переменные для натуральных чисел, представлен- представленных как слова в алфавите |. Зададим нормальный алгорифм Щ в алфавите | * схемой Этот алгорифм перерабатывает пару натуральных чисел N*M в абсолютную величину разности этих чисел, т. е. B) $L1(N*M)S:\N—M\ для любых натуральных чисел Л/ и М. Действительно, из рассмотрения схемы A) имеем 1.1. %х: Л1|*|Л/|-Л1*ЛГ. 1.2. Щ: М*\-М. 1.3. Я^ *М[-М. 1.4. Я(: М~\. Кроме того, правой индукцией по N с использованием 1.1 и равенства Л/121 Л/ могут быть доказаны следующие ут- утверждения: pi.5. Я,: MN*N\=M*. 1.6. Я{! iVH^iVAl [=ss|cAl. А теперь утверждение B) доказывается следующим образом, |34] НЕКОТОРЫЕ АРИФМЕТИЧЕСКИЕ АЛГОРИФМЫ Если Д/<Л1, то Л/*Л13:Л/*Л/|Л/—М\ и Ш±: N*N\ N—М|Н=*|#—М\ [1.6] \-\N-M\~\ [1.3,1.4]. Если же N>M, то Ы*МЖ\ N—М \ М*М %: \N—M\M*M\=\N—Л! |* В обоих случаях, следовательно, 181 [1.5] [1.2, 1.4]. что и требовалось доказать. В частности, Щ (М * N) SЛ тогда и только тогда, когда MS Л/. 2. Зададим далее нормальный алгорифм Я, в алфавите | схемой A) {IIIII-- Покажем, что он перерабатывает всякое натуральное f число в остаток от деления этого числа на 5. В самом деле, из рассмотрения схемы A) непосредственно усматривается справедливость следующих лемм: 2.1. Я,: N + 5[- N. 2.2. Если N<5, то Яа: ЛП • Из 2.1 вытекает Пусть теперь W—произвольное натуральное число. | Представим его в виде R + bxQ, где R—остаток, Q — частное от деления iV на 5. Так как N>=sR + bxQ и R < 5, алгорифм Sla в применении к слову Л/ работает следующим ^ образом: | Я,: Nt=R~\ [2.3, 2.2], i? откуда что и требовалось доказать. В частности, 312(Л^)з:Л тогда и только тогда, когда W делится на 5. 3. Зададим теперь нормальный алгорифм Я( в алфавите * схемой *11Ш-Ч* A)
182 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. III Покажем, что он перерабатывает всякое натуральное число N в неполное частное от деления N на 5, т. е. ¦ [т] *>¦ В самом деле, из рассмотрения схемы A) легко усмат- усматривается справедливость следующих лемм: 3.1. Я,: N*(M + 5)\-(N+l)*M. 3.2. Если 0 < М < 5, то %3: N*M\- N*(M — 1). 3.3. Я,: N*\—N. 3.4. 21,: N\-*N. Из 3.1 вытекает 3.5. Я,: N*(R+5xQ)\=(N+Q)*R. Из 3.2 вытекает 3.6. Если R < 5, то Я,: Q*R\=Q*. Пусть теперь N—произвольное натуральное число. Представим его в виде R-{-5xQ, где R—остаток, Q — частное от деления N на 5. Так как W =s#-f-5x Q и R < 5, алгорифм St3 в применении к слову N работает следующим образом: Я,: N\-*(R + 5xQ) [3.4] \=Q*R [3.5] HQ* [3.6] h-Q. [3.3] Таким образом, Ж3: N^=-Q, откуда 5ls (JV) ЗЕТ Q, что и требовалось доказать. 4. Легко также построить нормальный алгорифм в |#, перерабатывающий всякое натуральное число N в пару Q*/?, где Q—частное от деления N на 5, R—остаток от этого деления. Зададим, в самом деле, нормальный алго- алгорифм 214 в | * схемой $34] НЕКОТОРЫЕ АРИФМЕТИЧЕСКИЕ АЛГОРИФМЫ 183 I [ -*. Этот алгорифм работает указанным только что образом, как читатель без труда докажет. *) Прямоугольные скобки применяются здесь для обозначения целой части. > Делитель 5 в трех предыдущих примерах взят только для " определенности. Такие же нормальные алгорифмы можно, очевидно, построить для деления на любое другое, отличное {" от нуля натуральное число. Для этого надо только заменить v пять черточек в левой части первой формулы каждой из трех ;, только что рассмотренных схем соответствующим другим чис- числом черточек. Если бы мы, однако, попытались построить | ¦ аналогичные алгорифмы для деления на нуль, совсем отбрасы- | вая черточки в левой части первых формул этих схем, то, как р нетрудно видеть, мы получили бы алгорифмы, не применимые ни к какому натуральному числу, что, разумеется, вполне соответствует сущности дела. 5. Построим теперь два несколько более сложных нормаль- нормальных алгорифма. Первый из них — алгорифм отыскания наи- наибольшего общего делителя — будет перерабатывать всякую па- пару натуральных чисел в наибольший общий делитель этих чисел; второй — алгорифм умножения — будет перерабаты- перерабатывать всякую пару натуральных чисел в произведение этих чисел. Оба алгорифма будут алгорифмами над алфавитом | *, но не в этом алфавите. Зададим нормальный алгорифм Ш5 в алфавите |*аЬс схемой A) Покажем, что §16 перерабатывает всякую пару чисел Af*M в наибольший общий делитель этих чисел. Следующие леммы непосредственно получаются из рас- рассмотрения схемы A): 5.1. Щ5 QNM* 5.2. ЩБ: a9N*R\-cfl(N—l)a*(R—l) (ЛГ>0, ff>0). 5.3. Я,: a«JV*&K|-aQ(W— 1)*6Л+1 (ЛГ>0). 5.4. Щ5: aQ*M>«(-aQ*(#+!)б*-1 (#>0). 5.5. Я,: сма9*Ы\-см+1а9-**М (Q>0).
НЕКОТОРЫЕ АРИФМЕТИЧЕСКИЕ АЛГОРИФМЫ 185 184 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. П1 [5.2, 5.9]. —R)* —N) (N<R) [5.3]. [5.4]. [5.5]. [5.6]. 5.6. §l6: QcM*N\-(Q+l)cM-1*N (M > 0). 5.7. %5: *N\-N. 5.8. Ш5: N~\. С их помощью далее могут быть доказаны следующие леммы: 5.9. $8: a<*Na*Rt=aQ+*N*R [5.1]. 5.10. St5 QN (tf > 0, R > 0) [, ] 5.11. $Б: #*#h=a«(JV—R)* (N^R) [5.10]. 5.12. 2l6: ] 5.13. §iB: 5.14. §i6: 5.15. 2t6: 5.16. §l5: 5.17. $5: [5.11, 5.13, 5.14, 5.15, 5.16]. 5.18. $6: N*R\=N* (R—N) (N < R) [5.12, 5.15, 5.16]. 5.19. $5: *#|=#1 [5-7. 5.8]. 5.20. §lB: A^*(=JV-| [5.17, 5.19]. Условимся теперь говорить о парах натуральных чисел */? и M*Q, что они эквивалентны, если [всякий общий делитель чисел N я R есть общий делитель] чисел MJyi Q и наоборот. При W ^ ^ пара N*R, очевидно, эквивалентна паре R*(N—R), а при N<R она эквивалентна паре N*(R—#). Леммы 5.17 и 5.18 показывают поэтому, что всякая пара N*R отличных от нуля чисел просто преобра- преобразуется алгорифмом St5 в такую эквивалентную пару чисел M*Q, что M + Q<N + R. Отсюда следует далее, что всякая пара чисел просто преобразуется алгорифмом Ж5 в эквивалентную пару чисел, содержащую нуль в качестве одного из элементов, т. е. в пару вида * Q или Q*. Для пар этого вида число Q является, очевидно, наи- наибольшим общим делителем, т. е. общим делителем, деля- делящимся на всякий общий делитель. В силу эквивалентности исходной пары чисел и получаемой из нее пары этого вида, Q является также наибольшим общим делителем чисел ис- исходной пары. С другой стороны, согласно 5.19 и 5.20, §t6 естественно преобразует всякую пару вида *Q или Q * в Q. Таким образом, St6 естественно преобразует исходную пару [чисел в наибольший общий делитель этих чисел. Следова- Следовательно, §К5 перерабатывает всякую пару чисел N*R в наи- Щ: больший общий делитель этих чисел, что и требовалось доказать. Алгорифм Щ.в задается в алфавите \*ab схемой (Ь\-+\Ь B) * ъ Покажем, что Ste перерабатывает всякую пару чисел M*R в произведение этих чисел. Справедливость следующих лемм непосредственно усма- усматривается из схемы B). 5.21. %: M^Nb(^\b^P\-M*Nb(i-1\b^ + 1P (Q > 0, Р—слово в \if.ab). М*NbQaRtts (- M*NbQ\ba(R— 1)bs М* NbQ \- (М—1)*а№ *b<i\- 5.22. Шя (R 5.23. 916 5.24. Щв 5.25. Я, 5.26. Я, 5.27. $6 5.28. $„ Из них 5.29. §te *ab) [5.21]. 5.30. В самом деле, при R > О 5.31. «.: яг вытекают следующие леммы: М * NbQ\bP\= M * (N +l)bQ+1P (P—слово в 1=Л1 [5.22] [5.29]. [5.30].
186 НОРМАЛЬНЫЕ АЛГОРИФМЫ [ГЛ. Ill 5.32. Я,: M*aRbs^=M*RbRabs [5.31]. 5.33. Я,: M*Rbs\=(M—l)*Rt>K+s (M > 0). В самом деле, при М > 0 Я,: M*#&S|-(A1 —1)*а#^ [5.24] МЛ1—1)##&*ай* [5.32] Ь(М—l)*i?&*+s [5.23]. 5.34. Я,: Л1*#й5^=(Л1—Q) ###«*«>+s (Q<^M). В самом деле, лемма тривиальна при Q =s0. Допустим, что она установлена при Q = N, где N < М, и докажем её тогда при Q = tf-|-1. Имеем [5.33] ГЛАВА IV СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ S (M—(JV + 1)) * откуда следует доказываемое. 5.35. Я,: *Я&5^=*^ [5.25]. 5.36. Я.: frS|=S [5.27]. 5.37. Я,: Л1^/?[=(Л1х/?)"). В самом деле, Я,: М * # |= * Я&<« х«> В силу 5.37 что и требовалось доказать. [5.34] [5.35] [5.26] С5-36. 5.28]. В §§ 35—41 указывается ряд конструкций, позволяющих строить новые нормальные алгорифмы, исходя из данных. Наличие таких конструкций показывает, что естественные способы сочетания алгорифмов — такие, как последователь- последовательное применение двух алгорифмов, повторное применение од- одного алгорифма вплоть до получения результата, известным образом „удовлетворяющего" другому алгорифму, и т. п.,— ведут от нормализуемых алгорифмов к нормализуемым же ал- алгорифмам. Составляя аппарат общей теории алгорифмов, ре- результаты, изложенные в этих параграфах, служат также серьезным доводом в пользу принципа нормализации. § 35. Распространения алгорифма В дальнейшем мы часто будем пользоваться знаком услов- условного равенства «~». Ставя такой знак между двумя выражения- выражениями, мы тем самым будем утверждать, что выражения эти озна- означают одно и то же слово, коль скоро хотя бы одно из них имеет смысл. Обычно в скобках мы будем при этом писать те или иные дополнительные условия, налагаемые на составные части рассматриваемых выражений. В этих обозначениях полная эквивалентность алгориф- алгорифмов §1 и 33 относительно алфавита А выражается так: Я (Р) ~ © (Р) (Р—слово в А). Условное равенство, очевидно, рефлексивно, симметрично и транзитивно. 1. Пусть 31—алгорифм в алфавите А, Б—расширение этого алфавита. Условимся говорить об алгорифме 33 в ал- алфавите Б, что он есть распространение алгорифма SI на алфавит Б, если A) Я (Р) са S3 (Р) (Р—слово в А), т. е. если 33 вполне эквивалентен §1 относительно А [§ 26.6]. Ясно, что алгорифм в алфавите А может, вообще го- говоря, иметь несколько распространений на алфавит Б, так
188 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV 1381 РАСПРОСТРАНЕНИЯ АЛГОРИФМА 189 как условие A) не налагает никаких ограничений на работу алгорифма 35 над словами в Б, не являющимися словами в А. Мы рассмотрим сейчас два специальных вида распро- распространений нормальных алгорифмов. 2. Пусть Щ—нормальный алгорифм в алфавите А, Б — расширение этого алфавита. Зададим нормальный алгорифм 8 в Б, взяв в качестве его схемы схему алгорифма 8t, что, конечно, допустимо, так как всякое слово в А есть вместе с тем слово в Б. Тогда, как мы скоро увидим, имеет место условное ра- равенство A) 33 (PR) ~ Ш (Р) R (Р—слово в А, R—слово в Б\А), из которого, в частности (при R'SLA), следует 1A). Фиксируем прежде всего слово Р в А и слово R в Б\А и условимся называть образом вхождения B) S*T*U в слово Р вхождение C) S*T*UR. Докажем некоторые леммы. 2.1. Образ всякого вхождения слова Т в Р есть вхожде- вхождение Т в PR. В самом деле, если B)—вхождение в слово Р, то D) STU1HP, STURIZPR [D)], откуда следует, что C), т. е. образ вхождения B), есть вхождение в слово PR. 2.2. Всякое вхождение непустого слова Т в алфавите А в слово PR есть образ некоторого вхождения Т в Р. В самом деле, пусть Т—непустое слово в алфавите А, TxV—его вхождение в PR. Тогда E) STVsLPR. Так как Т^А, Т можно представить в виде W\, где Ё—буква алфавита А. Имеем F) Таким образом, IV и R суть концы одного и того же Белова. Поэтому R оканчивается словом W или V—словом R. рПервое невозможно, так как буква 1 алфавита А не входит |;в слово R в Б\А. Следовательно, V оканчивается словом ~ т. е. существует такое слово U, что SWIV7LPR [E), F)]. i Имеем теперь ?"<8) STUR1ZPR [E), G)], STUJLP [(8)], S*T*V3LS*T*UR [G)]. Следовательно, B) есть вхождение Т в Р, а рассма- рассматриваемое вхождение S * Т #• V есть его образ. Этим лемма доказана. 2.3. Если V и W—вхождения одного и того же слова в Р, то образ V тогда и только тогда предшествует об- образу W, когда V предшествует W. Согласно определению предшествования [§ 23.5] это непосредственно следует из совпадения левых крыльев вхождений в Р с левыми крыльями образов этих вхождений. 2.4. Если Т входит в Р, то образ первого вхождения Т в Р есть первое вхождение Т в PR. В самом деле, пусть V—первое вхождение Т в Р, W — образ V. Если ТЖА, то К?*-*Р, откуда W?**PR. Следовательно, в этом случае W есть первое вхождение Т в PR. Пусть теперь Г^Л. Рассмотрим какое-нибудь отличное от W вхождение Wt слова Т в PR. Согласно 2.2 оно есть образ некоторого вхождения Vt слова Т в P. V^V, так как Wt^.W. Так как V есть первое вхождение Т в Р, V предшествует Vt. Поэтому W предшествует Wt [2.3]. Следовательно, W пред- предшествует всякому отличному от него вхождению слова Т в PR, т. е. является первым вхождением Т в PR, что и требовалось доказать. 2.5. Слово Т в алфавите А тогда и только тогда вхо- входит в Р, когда оно входит в PR. Это верно при Т1Л, так как Л входит и в Р и в PR; при T^lA это непосредственно следует из лемм 2.1 и 2.2. 2.6. Если V—вхождение слова Т в Р, Q—результат подстановки слова W вместо V, то QR есть результат подстановки слова W вместо образа V.
190 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ В самом деле, пусть (9) V?lS*T*U. [ГЛ. IV Тогда A0) (И) QTLSWU [(9)], QRXSWUR [A0)]. Таким образом, QR есть результат подстановки W вместо S*T*UR [A1)], т. е. вместо образа V[(9)], что и тре- требовалось доказать. 2.7. Если 91: Р j- Q, то 33: РЯ (- QR. В самом деле, пусть 91: Я f- Q. Пусть F—формула, ак- активная на Р в схеме 81. Левые части формул, предшествую- предшествующих F в схеме 51, не входят в Р, а значит, и в PR, так как они являются словами в А [2.5]. Левая же часть F входит в PR, так как она входит в Р. Ввиду совпадения схем алгорифмов 31 и 33, F является, таким образом, фор- формулой схемы S3, активной на слове PR. Пусть V—первое вхождение левой части F в Р. Тогда образ V есть первое вхождение левой части F в PR [2.4]. Алгорифм S3 в применении к слову PR предписывает по- поэтому подставить правую часть формулы F вместо образа V. Но результатом подстановки правой части F вместо V яв- является слово Q, так как 31: Р \-Q. Следовательно, резуль- результатом подстановки правой части F вместо образа V является QR [2.6]. При этом формула F простая, так как 91: Р \- Q. Сле- Следовательно, S3: PR \— QR, что и требовалось доказать. 2.8. Если 31: P\~-Q, то S3: PR\-QR- Это доказывается совершенно аналогично предыдущему. 2.9. Если 31: Р~\, то 33: PR~\. Это легко доказывается с помощью 2.5. До сих пор слова Р и R были у нас закреплены, что имело существенное значение при определении образа вхож- вхождения. В доказанных леммах 2.7—2.9 понятие образа вхождения, однако, не фигурирует. Эти леммы применимы поэтому к любым словам Р, Q, R таким, что Р есть слово в A, a R—в Б\А. В дальнейшем они и будут применяться таким образом. В леммах 2.10—2.20 мы также предполагаем, что Р есть слово в A, R — в Б\А. 2.10. Если 33: PR[— S, то существует такое слово Q в А, что SSiQR и 91: Р \- Q. РАСПРОСТРАНЕНИЯ АЛГОРИФМА 191 В самом деле, пусть 33: PR \— S. Имеет место одно из едующих трех утверждений: или существует такое слово что 31: P[-Q> или существует такое слово Q, что Ш: Ph-Q, или 3t: P~\ [§ 25.4.7]. Во втором слу- случае мы имеем, однако, 33: PR\— -QR [2.8], в третьем — jB PR~\ [2.9]. Так как ни то, ни другое не совместимо 'с предположением, что 33: PR \— S, эти случаи отпадают. Таким образом, существует такое слово Q, что 3t: P\—Q. Q есть слово в А, так как 81 — нормальный алгорифм в А. ¦|Так как 81: Р \- Q, имеем S3: PR |— QR [2.7]. А так как, по предположению, 33: PR \— S, то SsLQR, что и оставалось доказать. Аналогичным образом доказываются следующие две леммы: 2.11. Если 23: PR\--S, то существует такое слово Q в А, что SSLQR и %.: P\--Q. 2.12. Если 33: PR~\, то 31: Р~]. Докажем 2.13. Если 3t: P\=Q, то 33: PR\=QR. Это утверждение легко доказывается—с использованием леммы 2.7—методом индукции по шагам работы алгорифма Ж [25.10]. Ввиду типичности этого рассуждения мы для [ первого раза проведем его, несмотря на всю простоту си- 'туации, с максимальной тщательностью. : Итак, рассмотрим, зафиксировав Р и R, свойство F слов 1Q в алфавите А, выражаемое условием «S3: PR \= QR». Наша задача заключается в том, чтобы показать, что, во-первых, Р обладает свойством F и что, во-вторых, для любых Q и 5 таких, что ЗС: P\=Q\- S, из наличия свойства F у Q вытекает наличие его у S. Покажем это. Слово Р обладает свойством F тривиальным образом [§ 25.6.1]. Пусть теперь Q и 5—слова такие, что 3t: P\=Q и 91: Q Ь 5> и пусть 33: PR \= QR. Покажем, что S3: PR^=SR. Но это действительно так, потому что из St: Q |— 5 следует S3: QR\-SR [2.7], а это в сочетании с 33: PR\=QR дает 33: PR\=SR [§ 25.6.2, § 25.6.3]. Таким образом, оба условия применимости метода ин- индукции в нашем случае выполнены. Заключение индукции в рассматриваемой ситуации утверждает, что при фиксиро- фиксированных Р и R импликация 2.13 верна для любого Q. Но Р и R были фиксированы произвольно, так что 2.13 име- имеет место при любых Р, Q и R, что и требовалось дока- доказать. 2.14. Если 91: P\=-Q, то 33: PR^-QR.
192 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV В самом деле, пусть 31: P\=-Q. Тогда существует 5 та- такое, что 31: Р|=5 и 21: S\-.Q. Но тогда 93: PR\=SR [2.13] и 23: SR\-.QR [2.8], откуда 33: PR^=.QR, что и требовалось доказать. 2.15. ЕслиШ: P\=Q~\, то Ъ: PR\=QR~\. В самом деле, пусть 31: P|=Q^. Это значит, что Я: PHQ и Я: Q"|. Но тогда 33: PR\=QR [2.13] и 33: Q7? ~| [2.9], следовательно, 93: PR\=QR~], что и требовалось доказать. 2.16. Если S3: Р/?^=5, то существует слово Т такое, что SSLTR и 21: Р\=Т. Зафиксируем Р и R и докажем это утверждение мето- методом индукции по шагам работы алгорифма 93. С этой целью рассмотрим свойство F слов S в алфавите А, выражаемое условием A2) «существует слово Г в А такое, что SS1TR и 31: РЫТ». Покажем, что всякое слово 5 такое, что S3: PR\=S, обла- обладает этим свойством. В самом деле, слово PR обладает свойством F, так как в качестве Т в A2) можно взять Р. Пусть теперь S и Q таковы, что A3) 93: P#H=SbQ и S обладает свойством F. Покажем, что тогда им обла- обладает и Q. Действительно, существует Т такое, что S~5.TR и 31: Р|=7\ Но тогда существует U такое, что Q^LUR yi$L:T\-U [A3), 2.10]. Следовательно, QSLURn 21: P\=U. Тем самым лемма 2.16 доказана. 2.17. Если 93: PR\=-S, mo алгорифм 31 применим к Р. В самом деле, пусть S3: PR\=»S. Тогда существует слово Т такое, что 93: PR\=T\--S. Но тогда существует слово U такое, что T1ZUR и 31: P\=U [2.16]. Если бы сущест- существовало слово V такое, что 3t: U |— V, то было бы 93: UR [- VR [2.7], что противоречит 93: UR\--S. Аналогично, невоз- невозможно 91: U ~] [2.9]. Следовательно, для некоторого W имеет место 31: u\-'W. Но тогда 3t: Р|=«№, и, значит, !3t(P), что и требовалось доказать. Аналогичным образом доказывается и следующая лемма: 2.18. Если 93: Р/?[=5^, то алгорифм 31 применим к Р. Докажем теперь 2.19. Если алгорифм 31 применим к Р, то j35] РАСПРОСТРАНЕНИЯ АЛГОРИФМА 193 Допустим, в самом деле, что алгорифм 91 применим к Р, - й пусть имеет место равенство /A4) 3t(PKLQ. Тогда 31: Р\= -Q или 31: Pj=Q~|. В первом случае 33: PR\=-QR [2.14], во втором 23: PR[=QR~] [2.15]. В обоих случаях 23 (PR) Ж QR 3131 (Я) Я, что и требовалось доказать. 2.20. Если алгорифм 23 применим к PR, то алгорифм 31 применим к Р. В самом деле, если алгорифм 23 применим к PR, то существует такое слово 5, что 23: PR \=-S или 23: PR \=S~]. В обоих случаях алгорифм 31 применим к Р [2.17, 2.18], что и требовалось доказать. Из лемм 2.19 и 2.20 непосредственно следует интере- ; сующий нас результат, а именно условное равенство A). !¦ Из него вытекает условное равенство 1A). Этим доказано, » что 23 есть распространение 31 на Б. К 3. Распространение нормального алгорифма 3( на алфавит ; Б, получаемое как только что указано, мы будем называть естественным распространением этого алгорифма на алфа- алфавит Б. Предыдущее мы резюмируем следующим образом: 3.1. Естественное распространение нормального алго- алгорифма есть нормальный алгорифм. 3.2. Схема естественного распространения нормального алгорифма совпадает со схемой этого алгорифма. 3.3. Каковы бы ни были нормальный алгорифм 91 в ал- алфавите А и расширение Б этого алфавита, существует естественное распространение алгорифма 31 на алфавит Б. 3.4. Если 23—естественное распространение на алфавит Б нормального алгорифма 91 в алфавите А, то имеет место условное равенство 2A). 4. Пусть 31—нормальный алгорифм в алфавите А. Если Б—собственное расширение этого алфавита, то естественное распространение алгорифма 31 на алфавит Б может ока- оказаться применимым не только к словам в алфавите А. Оно будет, например, применимо и ко всякому слову в Б\А, если схема алгорифма 91 не содержит формул под- подстановок с пустой левой частью. 1 А. А. Марков, Н. М. Нагорный
194 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV РАСПРОСТРАНЕНИЯ АЛГОРИФМА 195 В самом деле, в этом случае левые части всех формул подстановок алгорифма 91 суть непустые слова в алфавите А и, как таковые, не входят в слово в алфавите Б\А. В силу совпадения схем алгорифма 9Х и его естественного распространения 93 на алфавит Б это означает, что 23: Р~[ для любого слова Р в Б\А. Отсюда следует, однако, что 23 (Р) 2 Р для всякого такого слова Р. В некоторых случаях оказывается желательным так по- построить нормальный алгорифм в алфавите Б, чтобы он был распространением алгорифма 9( па этот алфавит и чтобы вместе с тем он был применим только к словам в алфавите А (и, значит, к тем и только тем словам, к которым при- применим 31). Это достигается следующим образом. Присоединим к схеме алгорифма % сверху всевозможные формулы вида где I—произвольная буква алфавита Б\А. Зададим нор- нормальный алгорифм 6 в Б схемой, получаемой таким обра- образом. Тогда, как нетрудно видеть, 6 также есть распрост- распространение 31 на Б. В самом деле, присоединение формул вида A), очевидно, никак не отразится на первом шаге применения алгорифма к слову в алфавите А, так как левые части этих формул не входят в такое слово. Поэтому будут иметь место сле- следующие леммы: 4.1. Если St: Р Ь Q, то &.P\~Q. 4.2. Если 9t:P|-.Q, то &:P\--Q. 4.3. Если 8С:Р"], где Р—слово в А, то 6: Я"]. На их основе с помощью леммы § 25.4.7 легко доказы- доказываются следующие леммы: 4.4. Если Р—слово в А и &:P\-Q, то Ж: Р \- Q и Q есть слово в А. 4.5. Если Р—слово в А и &.P\-.Q, то %:Р \-.Q и Q есть слово в А. 4.6. Если Р—слово в А и &.Р~], то Щ.:Р~\. Далее доказываются следующие леммы: 4.7. Если %:P\=.Q, то ©:P}=.Q [4.1 4 2] 4.8. Если SiiP^CH, то &:P\=Q-] [4.1, 4.3]. 4.9. Если %(Р)жЯ, то &(Р)ж<2 [4.7, 4 8] 4.10. Если алгорифм 91 применим к слову Р, то алго- Ьм (X также применим к Р и 91 (P) ж. © (Р) [4-9]. '4.11. Если Р—слово в Аи &.P\=-Q, mo$l:P\=-Q [4.4, р.5]. 4.12. Если Р—слово в А и &:P\=Q~\, mo^l:P\=Q~\ 1.4, 4.6]. 4.13. Если Р—слово в А и (S,(P)^Q, то $\(Р)ж<2 [4.11, 1.12]. 4.14. Если алгорифм 6 применим к слову Р в алфавите Ж А, то алгорифм 9( также применим к Р и 91(Р)з;6(Р) Из лемм 4.10 и 4.14 вытекает условное равенство B) 9t (/>) ~ 6 (Я) (Р — слово в А), означающее, что 6 есть распространение 91 на Б. Попробуем, с другой стороны, применить алгорифм (S ¦к какому-нибудь слову Р в алфавите Б, не являющемуся ¦ словом в алфавите А, т. е. содержащему вхождения букв алфавита Б \ А. В Р входит по крайней мере одна из ле- левых частей формул A), стоящих вверху схемы алгорифма 6. Пусть —первая из тех формул A), левые части которых входят в Р. Тогда C) будет, очевидно, и первой формулой под- становки алгорифма G, действующей на Р. Алгорифм G в применении к слову Р предписывает подставить правую часть этой формулы вместо первого вхождения ее левой части в Р, что, разумеется, дает опять Р. Так как приме- ненная формула простая, имеем откуда следует невозможность окончания процесса приме- нения алгорифма 6 к слову Р. Следовательно, этот алго- алгорифм неприменим к Р. Мы видим, таким образом, что наше распространение алгорифма представляет собой своего рода „формальную отписку": алгорифм © применим к тем и только тем сло- словам, к которым применим алгорифм 91. В условном равен- равенстве B) можно поэтому отбросить дополнительное условие: Р—слово в А. В самом деле, если Р не есть слово в А, то ни символ 91 (Р), ни символ 6(Р) не имеют смысла. 5. Распространение нормального алгорифма 91 на алфа- алфавит Б, получаемое как только что было описано, мы бу- 7*
196 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV дем называть формальным распространением этого алго- алгорифма на Б. В том случае, когда алфавит Б\А содер- содержит более одной буквы, фиксируя тот или иной порядок выписывания формул A), мы будем получать различные формальные распространения 31 на Б. Однако различие их будет носить чисто внешний характер: результаты работы различных формальных распространений при одном и том же исходном слове всегда будут совпадать. Следующие утверждения резюмируют предыдущее: 5.1. Всякое формальное распространение нормального алгорифма есть нормальный алгорифм. 5.2. Схема всякого формального распространения нор- нормального алгорифма 31 получается из схемы этого алгорифма путем присоединения сверху формул подстановок вида 4A), где | пробегает буквы алфавита формального распростра- распространения, не принадлежащие алфавиту алгорифма 3(. 5.3. Каковы бы ни были нормальный алгорифм 31 в ал- алфавите А и расширение Б этого алфавита, существует формальное распространение алгорифма 31 на алфавит Б. 5.4. Для всякого формального распространения © нор- нормального алгорифма 31 имеет место условное равенство Я (Я) ?*©(/>). Изложенная методика в известном смысле позволяет „приводить к общему алфавиту" два любых нормальных алгорифма. В самом деле, пусть 31 и S3—нормальные ал- алгорифмы в алфавитах А и Б соответственно. Строим ал- алфавит А и Б, являющийся расширением обоих алфавитов А и Б, и формально распространяем алгорифмы Ш и 33 с ал- алфавитов А и Б соответственно на алфавит А и Б. Получа- Получаемые при этом алгорифмы суть алгорифмы в одном и том же алфавите A U Б. Что же касается результатов их ра- работы, то в этом отношении полученные алгорифмы ничем не отличаются от исходных. § 36. Замыкание алгорифма 1. Будем говорить о нормальном алгорифме, что он замкнут, если его схема содержит формулу с пустой ле- левой частью. 1.1. Если нормальный алгорифм 31 в алфавите А замк- замкнут, то 31 действует на всякое слово в А. В самом деле, схема замкнутого алгорифма содержит формулу с пустой левой частью, действующую на всякое слово в алфавите алгорифма. ЗАМЫКАНИЕ АЛГОРИФМА 197 1.2. Если нормальный алгорифм 31 замкнут, то невоз- невозможен естественный обрыв процесса применения алгорифма^.. Это следует из предыдущей леммы. 1.3. Если нормальный алгорифм 31 замкнут, то $L{P)^Q тогда и только тогда, когда $i:P\=-Q. В самом деле, если нормальный алгорифм 31 замкнут, то, согласно 1.2, 31 не может естественно преобразовывать р в Q. Согласно § 25.7 отсюда следует 1.3. 2. Пусть 31—нормальный алгорифм в алфавите А. Нор- Нормальный алгорифм в А со схемой 31 | будем называть замыканием алгорифма 31. >;. Здесь и в дальнейшем мы применяем следующую сим- :'1 волику: символ нормального алгорифма (в данном слу- "! чае ЗГ), написанный после фигурной скобки, означает схему .',', этого алгорифма, написанную без своей фигурной скобки. t Схема замыкания алгорифма 31 получается, таким обра- образом, из схемы 31 путем присоединения формулы снизу. 2.1. Замыкание всякого нормального алгорифма замкну то. Это очевидно из определений. Замыкание нормального алгорифма 31 мы будем обозна- обозначать через ЗГ. Из сравнения схем алгорифма 81 и его замыкания легко усматривается справедливость следующих лемм: 2.2. Если $L:P\-Q, то W:P\-Q. 2.3. Если 3i:P|--Q, то 3T:P|--Q- 2.4. Если 31:Р~|, то %.':Р[-.Р. Из них вытекают следующие леммы: 2.5. Если W:P\-Q, то m:P\-Q [2.2, 2.3, 2.4, § 25.4.7]. 2.6. Если 3T:P|--Q. то либо 3t: Pf-'Q. тб° %'-рЛ и P^Q [2.2, 2.3, 2.4, § 25.4.7]. Индукцией по шагам работы алгорифма 81 с использова- использованием леммы 2.2 получается 2.7. Если %:P\=Q, то W:P\=Q. Индукцией по шагам работы алгорифма ЗГ с использо- использованием леммы 2.5 получается 2.8. Если ЗГ: Р t=Q, то 3t: P HQ-
198 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV 37] КОМПОЗИЦИЯ АЛГОРИФМОВ 199 [2.7, 2.3J. [2.7, 2.4J. или $L:P\=Q~\ [, 2.10, § 25.7]. то Э1(Р)з:0 [2.11, 1.3, 2.1. § 25.7J. [2.12, 2.13J. Далее имеем 2.9. Если $L:P\=.Q, то ^Q 2.10. EcAu^:P\=Q~],moW:P\=-Q 2.11. Если W:P\=-Q, то 9X:P|=-Q [2.8, 2.6J. 2.12. Если 4l(P)irQ, то 2.13. EcauW(P)^Q 2.14. Щ(Р)~9Г(Р) [ J Мы доказали, таким образом, следующую теорему: 2.15. Всякий нормальный алгорифм вполне эквивалентен своему замыканию относительно своего алфавита. В силу теорем 2.15 и 2.1 рассмотрение произвольных алгорифмов сводится по существу к рассмотрению замкну- замкнутых алгорифмов, что во многих случаях оказывается удоб- удобным ввиду теоремы 1.3. § 37. Композиция алгорифмов 1. Два алгорифма часто приходится сочетать следующим об- образом. Предписывается, исходя из произвольных начальных данных, сначала применить первый алгорифм, а затем к ре- результату его работы — второй. Это предписание составляет новый алгорифм —¦ «композицию» двух данных алгорифмов. Естественно спросить, является ли композиция нормали- нормализуемых алгорифмов также нормализуемым алгорифмом? Прин- Принцип нормализации подсказывает утвердительный ответ на этот вопрос, и, действительно, в этом параграфе мы докажем сле- следующую теорему: 1.1. Теорема композиции. Каковы бы ни были нормальные алгорифмы Щ и 23, может быть построен та- такой нормальный алгорифм © над объединением А их алфа- алфавитов, что для любого слова Рек имеет место условное равенство A) Доказательство этой теоремы *) и составляет главное содержание настоящего параграфа. 2. Мы начнем с того частного случая теоремы компози- композиции, когда оба данных алгорифма % и 23 суть нормальные алгорифмы в одном и том же алфавите А. Будем доказы- доказывать следующую теорему: 2.1. Каковы бы ни были нормальные алгорифмы Э( и 2J алфавите А, может быть построен нормальный алгорифм над А, удовлетворяющий условию 1A). Пусть, в самом деле, Щ и 23—нормальные алгорифмы в алфавите А. Поставим в соответствие каждой букве | этого ^алфавита новую букву, причем разным буквам алфавита А — [разные новые буквы. Букву, поставленную в соответствие гбукве ?, будем называть двойником этой буквы и обозна- обозначать символом I. _Двойники букв алфавита А составляют алфавит двойников А, содержащий столько же букв, сколько |: А, и не имеющий с А общих букв. Пусть, далее, а и Р означают две дальнейшие новые | буквы, отличные друг от друга, от букв алфавита А и их ? двойников. _ Составим алфавит Б^ААоф. Построим систему формул 3(а путем замены в схеме алгорифма 9Г всех точек бук- буквами а. Построим систему формул S3& путем замены в схеме алгорифма 23" всех букв алфавита А их двойниками, всех точек — буквами Р с последующей заменой всех формул вида A) -В формулами | B) а-*аВ „ с теми же В. |>: Зададим нормальный алгорифм С в алфавите Б сокра- щенно записанной схемой (Ы •1л •pi" C) *) См. комментарий к доказательству в п. 5. где % и 1] пробегают алфавит А. Покажем, что он удовлетворяет условию 1A).
137] КОМПОЗИЦИЯ АЛГОРИФМОВ 201 200 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV Для этого заметим прежде всего, что между схемой алгорифма ЗГ и системой формул 31а имеется естественное взаимно однозначное соответствие, при котором формула системы 31а, соответствующая данной формуле F схемы ЗГ, получается из F тем же путем, каким вся система ЗГ* по- получается из схемы ЗГ —заменой точек буквами а. Прини- Принимая во внимание, что простые формулы вовсе не содержат точек, а заключительные содержат ровно по одному вхож- вхождению точки —между стрелкой и правой частью, —убежда- —убеждаемся в справедливости следующих утверждений: 2.2. Все формулы системы Жа простые. 2.3. Всякая формула системы ЗГ*, соответствующая простои формуле схемы ЗГ, совпадает с этой формулой. 2.4. Левая часть всякой формулы системы ЗГ* совпа- совпадает с левой частью соответствующей формулы схемы ЗГ. 2.5. Правая часть всякой формулы системы ЗГ*, соот- соответствующей заключительной формуле F схемы ЗГ, получа- получается из правой части формулы F приписыванием слева буквы а. Учитывая, что схема алгорифма ЗГ содержит формулу « —*-•», получаем 2.6. Система ЗГ* содержит формулу с пустой левой частью. Принимая, далее, во внимание схему C) алгорифма (S, заключаем отсюда, что 2.7. Алгорифм © замкнут. Условимся, далее, называть двойником слова Р в алфа- алфавите А слово, получаемое из Р заменой каждой буквы ее двойником. Двойник слова Р будем обозначать символом Это есть слово в алфавите А. Очевидно, что D) [Л-тгЛ, E) [PQ~3l[P~[Q~ для любых слов Р и Q в А и для любой буквы I этого алфавита. Очевидна также следующая лемма: 2.8. Всякое слово в алфавите А есть двойник одного и только одного слова в А. Заметим теперь, что между схемой алгорифма IV и сис- системой формул 5!3g также имеется естественное взаимно од- нозначное соответствие. Формула системы 23?, соответствую- соответствующая данной формуле F схемы S3', получается из F заменой точек буквами р, букв алфавита А их двойниками и, на- наконец,—если при этом получается формула вида A)—за- ' меной ее формулой B). Принимая во внимание, что правые и левые части формул схемы 23' суть слова в алфавите А, убеждаемся в сираведливоспГеледующих утверждений: 2.9. Все формулы системы si>& простые. 2.10. Левая часть всякой формулы системы i^ есть двойник левой части соответствующей формулы схемы 33' или равна а. Последнее имеет место тогда и только тогда, когда левая часть соответствующей формулы схемы 93' пуста. _ 2.11. Правая часть всякой формулы системы ЭЗ&, соот- соответствующей простой формуле F схемыШ, есть двойник пра- правой части формулы F или получается из этого двойника при- приписыванием слева а. Последнее имеет место тогда и только тогда, когда левая часть формулы F пуста. _ 2.12. Правая часть всякой формулы системы Э3|, соот- соответствующей заключительной формуле F схемы 33', полу- получается из двойника правой части формулы F приписыванием слева слова Р или слова оф. Второе имеет место тогда и только тогда, когда левая часть формулы F пуста. Имеем далее следующую лемму: 2.13. Левая часть всякой формулы системы 33& содержит букву алфавита Аа. Это непосредственно следует из 2.10. Мы выясним теперь, что в применении к какому-нибудь слову Р в алфавите А алгорифм S работает следующим образом: 1-й этап. © работает „за алгорифм §1'". Выполняются последовательно все преобразования, требуемые алгориф- алгорифмом 31. При этом применяются формулы системы ЗГ*. Этап заканчивается, если алгорифм 31 применим к Р, причем, однако, в результате имеем не 31 (Р), а слово, получаемое из 31 (Р) посредством вставки буквы а, „выскакивающей" на последнем шаге 1-го этапа. 2-й этап. Буква а „бежит" влево к началу слова. При- Применяются формулы, представляемые 1-й строкой схемы C). В результате получается а31 (Р). 3-й этап. Буква а „переводит" соседнюю с ней первую букву слова 31 (Р) в двойник этой буквы. Применяется
202 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV одна из формул, представляемых 2-й строкой схемы C). (Этап отпадает, если Ш(Р)^А.) 4-й этап. Слева направо распространяется процесс замены букв алфавита А их двойниками. Применяются формулы, представляемые 3-й строкой схемы C). В резуль- результате получается слово а [31 (Р) ~~, (Этап отпадает, если Е37] КОМПОЗИЦИЯ АЛГОРИФМОВ 203 5-й этап. 6 работает „за алгорифм 23'", но в алфавите хвойников А и с буквой а, приставленной к преобразуе- преобразуемому слову слева. Применяются формулы системы 23?. Этап заканчивается, если алгорифм 23 применим к слову 31 (Я), причем в результате имеем слово, получаемое из [23 C1 (Р))~~ путем вставки буквы р и присоединения слева буквы а. 6-й этап. Буква р „бежит" влево до буквы а. Приме- Применяются формулы, представляемые 4-й строкой схемы C). В результате получается оф [23 C1 (Р)) ~. 7-й этап. Буква f> „переводит" соседнюю с ней первую букву слова [23 C1 (Я))" в первую букву слова 23 C1 (Я)). Применяется одна из формул, представляемых 5-й строкой схемы C). (Этап отпадает, если 23 B{ (Р)) ж Л.) 8-й этап. Слева направо распространяется процесс за- замены двойников букв алфавита А самими этими буквами. Применяются формулы, представляемые 6-й строкой схемы C). В результате получается слово ар23 C1 (Р)). (Этап от- отпадает, если [23 C1 (Р))д < 1.) 9-й и последний этап. Слово ар исчезает. При- Применяется 7-я строка схемы C), являющаяся заключительной формулой. Весь процесс на этом заканчивается, и его ре- результатом является слово 23 C1 (Р)). Из этого описания работы алгорифма (? видно, в чем состоит смысл введения двойников букв алфавита А. Они понадобились для того, чтобы, переводя схему алгорифма 23' в алфавит двойников, получить возможность так объе- объединить в одну схему схемы обоих данных алгорифмов, чтобы они при этом не мешали друг другу. Последующие леммы составляют точное математическое оформление сде- сделанного только что наглядного описания процесса примене- применения алгорифма (S. 2.14. Если ЗГ: Р \- Q, то & Р \- Q. Пусть, в самом деле, ЗГ:Р|— Q. Левые части формул подстановок алгорифма (?, представляемых первыми семью строками схемы C), не входят в Р, так как каждая из них содержит букву алфавита Аа. Не входят в Р и левые рчасти формул системы 23?, также содержащие буквы этого 1'алфавита [2.13]. ' Ниже в схеме C) стоят формулы системы 31™, идущие в |, том же порядке, что соответствующие формулы схемы ал- I; горифма ЗГ. Рассмотрим формулу F схемы ЗГ, активную | на слове Р. Эта формула простая, так как ЗГ: Р \~ Q. Со- Согласно 2.3, F встречается и в системе 31" как формула, -, соответствующая самой себе. Выше нее в схеме алгорифма f; ST стоят формулы, левые части которых не входят в Р. \ Согласно 2.4 отсюда следует, что и в системе 31а левые Г части формул, стоящих выше F, не входят в Р. Принимая : во внимание, что левая часть формулы F входит в Р, тогда ¦, как левые части формул подстановок алгорифма E, пред- * ставленных первыми восемью строками схемы C), не вхо- входят в Р, заключаем, что F есть первая формула подста- ; новки алгорифма (S с левой частью, входящей в Р. Алго- 1 рифм (S в применении к слову Р предписывает поэтому ¦' подставить правую часть формулы F вместо первого вхож- ; дения ее левой части в Р, т. е. он предписывает то же самое, что и алгорифм 31'. Следовательно, (?: Р \~ Q, что и требовалось доказать. 2.15. Если ЗГ: Р (— -Q, то существуют такие слова R и S, что F) QilRS, G) К: Р \- RaS. Пусть, в самом деле, W: Р \~ • Q. Как в доказательстве щ предыдущей леммы, мы убеждаемся тогда, что левые части |. формул подстановок алгорифма 6, представленных первыми восемью строками схемы C), не входят в Р. ,_ Рассмотрим формулу F схемы алгорифма ЗГ, активную Ц на слове Р. Эта формула заключительная. Она, следова- следовательно, имеет вид U-+.V, где U и V — слова в А. Пусть G означает соответствующую формулу системы 31а. Тогда G есть формула U-+aV. Как в доказательстве предыдущей леммы, убеждаемся, что G есть первая формула подстановки алгорифма <? с левой частью, входящей в Р.
204 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV Пусть (8) — первое вхождение U в Р. Алгорифм @ в применении к Р предписывает подставить правую часть формулы G, т. е. оУ, вместо этого вхождения. Так как G—простая формула, имеем @: Р h RaVT. С другой стороны, алгорифм ЗГ в применении к Р пред- предписывает подставить вместо вхождения (8) правую часть формулы F, т. е. V. Так как ЗГ: Р\- «Q, имеем Q izRVT. Полагая StlVT, будем, следовательно, иметь F) и G), что и требовалось доказать. 2.16. &:RaSt=aRS. Здесь удобно воспользоваться приемом, уже применяв- применявшимся в §§ 31 и 32. Сначала левой индукцией по R мы доказываем более общее утверждение (i.:QRaSt=QaRS, а затем полагаем в нем QirA. 2.17. Если W:P\-'Q, то ®:P[=aQ. В самом деле, пусть Щ.': Р \—-Q. Тогда существуют слова R и S, удовлетворяющие условиям F) и G) [2.15]. Q есть слово в А, так как ЗГ—алгорифм в А и Ш.':Р\- -Q. По- Поэтому, согласно F), R и S также суть слова в А и при- применима лемма 2.16. Имеем, таким образом, 6: Р h RaS [G)] [2.16] [F)]. Следовательно, (?: P)==aQ, что и требовалось доказать. 2.18. Если ЗГ: />|=Q, ^ К: Pt=Q. Доказывается индукцией по шагам работы алгорифма ЗГ с использованием леммы 2.14. 2.19. Если ЗГ :РИ- Q, ^o &: P[=ocQ. В самом деле, пусть ЗГ: P\=-Q. Тогда существует такое слово R, что (9) SI': РН#. (Ю) ЗГ: R\--Q. КОМПОЗИЦИЯ АЛГОРИФМОЕ 205 Имеем поэтому \ 31: [N, 2.18] [(Ю), 2.17]. Таким образом, 6: P\=aQ, что и требовалось доказать. 2.20. Если Р и Q — такие слова в алфавите А, что (?: P\-Q, то ЗГ: Р h Q. ; В самом деле, пусть Р и Q—слова в А, и пусть (И) &.PhQ. ' В силу замкнутости алгорифма ЗГ [§ 36.2.1], существует такое слово Т, что ЗГ: Р |— Г или ЗГ: Р\--Т. Во втором случае имелись бы, однако, слова R и S такие, что A2) 6: Ph#aS [2.15]. Мы имели бы тогда QJLRaS [A1), A2)], что невозможно, так как Q—слово в А. Таким образом, A3) ЗГ: PhT, (И) &:Р[-Т [A3), 2.14], A5) TJLQ [(И), A4)], 3T:PbQ [A3), A5)], что и требовалось доказать. 2.21. Если Р—слово в А, то © просто переводит Р в некоторое слово. В самом деле, пусть Р — слово в А. Рассуждая, как в доказательстве предыдущей леммы, убеждаемся в суще- существовании такого слова Т, что ЗГ: Р \— Т или ЗГ: Р\—-Т. В обоих случаях © просто переводит Р в некоторое слово [2.14, 2.15]. 2.22. Если алгорифм © применим к слову Р в А, то алгорифм ЗГ также применим к Р. В самом деле, пусть алгорифм 6 применим к слову Р, и пусть (§,(Р)~Ш.О. Тогда в силу замкнутости алгорифма 6 [2.7] имеем 6: Р\=- U [§ 36.1.3]. Поэтому существует слово V такое, что 6: P[=V\- • U, и, значит, существует перевод- переводная система X схемы алгорифма 6, соединяющая Р с V. Легко видеть, что V не является словом в А, так как ©: V \-• U [2.21]. Таким образом, первый член системы X является словом в алфавите А, а последний ее член им не является. Арифметический предикат «член системы X с но- номером N не является словом в А» очевидно разрешим. По- Поэтому на основании теоремы о наименьшем числе [§21.2.1]
206 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV существует член W системы X такой, что W не есть слово в А, а все члены X с меньшими номерами суть слова в А. Тогда система X имеет вид YWZ, где Y—переводная сис- система схемы алгорифма 6, все члены которой суть слова в А. Первым членом У является слово Р. Обозначим последний член Y посредством Q. Тогда 6: Q (— W. Ясно, что Y является переводной системой и для схемы алгорифма ЗГ [2.20]. Поэтому 3t: P\=Q. Существует такое R, что 31': Q |- R или 9Г: Q\--R. Первый случай, однако, невозмо- невозможен, так как тогда было бы (S: Q j— R [2.14] и R^W. Между тем R—слово в A, a W им не является. Следова- Следовательно, ЗГ: Q\~'R. Но тогда ЗГ: P\=Q\-- R, и, значит, ЗГ применим к Р, что и требовалось доказать. Условимся теперь в следующей терминологии. Если R, Т, S—слова в А и Г^А, то образом вхождения в алфавите А будем называть вхождение a[R-*[T-*[S~ в алфавите Аа. Кроме того, образом вхождения в алфавите А будем называть вхождение *a*[S~ в алфавите Аа. Тем самым, образ определен для вхождений в алфавите А с непустой основой, а также для первых вхождений пустого слова в слова в этом алфавите. 2.23. Образ вхождения в слово Р есть вхождение в сло- слово а[Р~. 2.24. Образ вхождения непустого слова Т есть вхож- вхождение слова [Т~. Это непосредственно следует из определения образа. 2.25. Если Р—слово в алфавите А, то всякое вхождение двойника непустого слова Т в алфавите А в слово а[Р~ есть образ некоторого вхождения слова Т в слово Р. В самом деле, пусть Р—слово в А, A6) U*[T~*W — вхождение двойника непустого слова Т в алфавите А в слово а[Р~. Тогда A7) U[T- КОМПОЗИЦИЯ АЛГОРИФМОВ 207 |откуда следует, что непустое слово U \Т~ начинается бук- Гвой а. Так как [Т~—слово в алфавите А, не содержащее -букву а, этой буквой начинается U\ Таким образом, суще- существует такое слово X, что \ A8) USLaX. Имеем теперь A9) aX[T~WS.a[P- [A7), A8)], B0) X[T-WsL[P- [A9)]. Так как [Р~—слово в А, X н f также суть слова в А [B0)]. Поэтому существуют такие слова R и 5 в А, что B1) XJL[R-, B2) ri[S-. Следовательно, [/*[Г*Ц71а[^-*[Г* [S- [A8), B1), B2)], а это означает, что рассматриваемое вхождение A6) есть образ вхождения R*T*S непустого слова Т. Наконец, [B0), B1), B2)], [B3), E)], [B4), 2.8], т. е. i?#T#S есть вхождение в Р. Таким образом,' рас- рассматриваемое вхождение есть образ некоторого вхождения Т в Р, что и оставалось доказать. 2.26. Непустое слово Т в алфавите А тогда и только тогда входит в слово Р в этом алфавите, когда его двой- двойник входит в слово а[Р~. В самом деле, если Т входит в Р, то существует вхож- вхождение Т в Р. Так как T^jLS., образом этого вхождения является некоторое вхождение [Т~ в а[Р~ [2.23,2.24]. Следовательно, двойник Т входит в а[Р~. Обратно, если [Т~ входит в а[Р~, то существует вхож- вхождение [Т~ в а[Р~. Согласно 2.25 это вхождение есть образ некоторого вхождения Т в Р. Следовательно, Т входит в Р, что и требовалось доказать. 2.27. Если Р — слово в алфавите А и вхождение К не- непустого слова Т в Р предшествует вхождению L слова Т в Р, то образ К предшествует образу L. В самом деле, пусть R и U означают соответственно левые крылья вхождений К и L. Если К предшествует L, B3) B4) [#-[T-[S-:E[/>- [RTS-ЩР RTSoiP
208 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV то R есть собственное начало U. Поэтому существует такое непустое слово X, что B5) UTLRX. Имеем а [У-2 а [#-[Х- [B5),E)], где [Х~^А. Следовательно, a[R~ есть собственное начало a[U~. Но, по определению образа, a[R~ и a[U~ суть соответственно левые крылья образов вхождений К и L. Следовательно, образ К предшествует образу L, что и тре- требовалось доказать. 2.28. Если непустое слово Т входит в слово Р в алфа- алфавите А, то образом первого вхождения Т в Р является первое вхождение [Т~ в а[Р~. В самом деле, пусть К—первое вхождение Т в Р. Тогда образ К есть вхождение [Т~ в а[Р~ [2.23,2.24]. Рассмот- Рассмотрим теперь произвольное, отличное от образа К вхождение М слова [Т~ в слово а[Р~. М есть образ некоторого вхождения L слова Т в слово Р [2.25]. Lr?.K, так как образ L отличен от образа К. Так как К—первое вхожде- вхождение Т в Р, К предшествует L. Поэтому образ К предше- предшествует образу L [2.27], т. е. М. Следовательно, образ К предшествует всякому отличному от него вхождению [Т~ в а[Р~, т. е. является первым вхождением [Т~ в а[Р~, что и требовалось доказать. 2.29. Пусть F—формула подстановки алгорифма 33", G—соответствующая формула системы 23&, Р—слово в А. Левая часть F тогда и только тогда входит в Р, когда левая часть G входит в а[Р~. В самом деле, если левая часть F есть непустое слово, то левая часть G есть двойник этого слова [2.10], и утверж- утверждение леммы вытекает из 2.26. Если же левая часть F есть пустое слово, то левая часть G есть слово а [2.10]. Утверж- Утверждение леммы верно и в этом случае, так как Л входит в Р, а а—в а[Р~. 2.30. Если в условиях предыдущей леммы левая часть F входит в Р, то первое вхождение левой части G в а[Р~ есть образ первого вхождения левой части F в Р. В самом деле, пусть соблюдены условия предыдущей леммы, и пусть левая часть F входит в Р. Если левая часть F—непустое слово, то левая часть G есть двойник этого слова, и утверждение леммы вытекает из 2.28. Если же левая часть F—пустое слово, то левая часть G есть § 37] КОМПОЗИЦИЯ АЛГОРИФМОВ 209 |слово а [2.10]. Первым вхождением левой части F в Р !вляется вхождение **Я, а первый (и единственным) вхож- вхождением левой части G в а[Р~ — вхождение *а*[Р~. Так как *а*[Р~ есть, согласно определению, образ **Я, лемма доказана. Докажем теперь некоторые леммы, связывающие работу алгорифма (? с работой алгорифма 23'. 2.31. Если®': P\-Q, то 23: a[P~\-a[Q-. В самом деле, пусть 23': Р \- Q. Среди формул подста- подстановок алгорифма 23' имеются формулы с левой частью, вхо- входящей в Р. Пусть F—первая из них. Она простая, так как 23': Р \— Q. Пусть U и V означают соответственно левую и правую часть формулы F. Пусть R*U*S—первое вхож- вхождение U в Р. Так как алгорифм 23' в применении к Р предписывает подставить V вместо /?*t/*5 и 23': Р\- Q, имеем B6) Q Ж RVS. г Пусть, далее, G—формула системы 23|, соответствую- соответствующая F. Ее левая часть входит в а[Р~, так как левая часть F входит в Р [2.29]. С другой стороны, левые части формул системы 33|, стоящих выше G, не входят в а[Р~, так как эти формулы соответствуют формулам схемы 23', стоящим выше F, а левые части последних не входят в Р '' [2.29]. Таким образом, G есть первая формула системы Ш% с левой частью, входящей в а[Р~. Левые части формул, представленных первыми семью строками схемы C), также не входят в слово а[Р~, так как каждая из этих левых частей содержит букву алфа- алфавита Ар, не входящую в а[Р~. Следовательно, G есть пер- первая формула подстановки алгорифма © с левой частью, входящей в а[Р~. В применении к этому слову алгорифм © предписывает поэтому подставить правую часть формулы G вместо первого вхождения ее левой части. Это вхожде- вхождение есть образ первого вхождения левой части F в Р [2.30], т. е. вхождения /?*i/*S. Таким образом, алгорифм 6 в применении к слову а[Р~ предписывает подставить пра- правую часть G вместо образа вхождения /3*f/*5. В даль- дальнейшем будем различать два случая: U^lA и VS.А. a) U^lA. В этом случае образом R * U * 5 является вхождение a{R~ * [U~ *[S", а правой частью формулы G является двойник правой части формулы F [2.11], т. е. слово \У~. Принимая во внимание, что формула G простая [2.9],
210 имеем СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ G: a[P~[-a[R-[V-[S- JLa[RVS~ [E)J " [B6)]. [ГЛ. IV [37] КОМПОЗИЦИЯ АЛГОРИФМОВ 6) U Ж А. В этом случае B7) /?1Л, так как ##{/*S—первое вхождение U в Р. Образом вхождения i?*t/*S является поэтому вхождение #a#[S~, а правой частью формулы G является слово a[V~ [2.11]. Принимая во внимание, что формула G простая [2.9], имеем <S: a[P-\-a[V-[S- lZa[RVS- [E)] [B7)] [B6)]. Таким образом, в обеих случаях G: а\Р |— a[Q~, что и требовалось доказать. 2.32. Если 23': Р [-• Q. то существуют такие слова R и Т, что Q-ZRT, 6: a[P-\-a[R~P[T-. В самом деле, пусть 23': Р j— • Q. Как и в доказатель- доказательстве предыдущей леммы, рассмотрим первую среди формул подстановок алгорифма 23', имеющих левые части, входя- входящие в Р. Пусть F означает эту формулу. На этот раз F — заключительная формула, так как 23': P\--Q. Пусть U и V означают соответственно ее левую и правую части. Пусть ##?/*S—первое вхождение U в Р. Как и в дока- доказательстве предыдущей леммы, Q~SLRVS. Пусть G—формула системы 23?, соответствующая F. Как и в доказательстве предыдущей леммы, убеждаемся, что в применении к слову а[Р~ алгорифм © предписывает подставить правую часть формулы G вместо образа вхож- вхождения R*U*S. Опять различаем два случая: U "tA и U si А. а) U^LA. В этом случае образом /?*t/*5 является вхождение a[R~ #[{/" *JS~, а правой частью формулы G—слово P[V~ [2.12]. Принимая во внимание, что фор- лула G простая [2.9], имеем E: a[P~ \-a[R- 211 [E)]. б) ?/з:Л. В этом случае имеем равенство B7), так как t/*S—первое вхождение U в Р. Образом вхождения #?/#S является поэтому вхождение #a#[S~, а правой частью формулы G—слово оф[У~ [2.12]. Принимая во вни- внимание, что формула G простая [2.9], имеем 6: а [Р- \- оф [V- [S- [E)] [B7), D)]. a[R~fi[T-, Доказательство —обычное для такого рода утверждений. i Сначала мы обнаруживаем, что Таким образом, в обоих случаях B8) 6: a[P-\-a[R-p\VS-. Согласно B6) и B8) имеем Q'S.RT, 6: а[Р~ где Т^-VS, что и доказывает лемму. 2.33. Если R и S—слова в А, то а затем проводим правую индукцию по R. 2.34. Если S3': Р \-• Q, то 6: а[Р~ \=a$[Q-. Доказательство опирается на леммы 2.32 и 2.33. Оно проводится аналогично доказательству леммы 2.17. 2.35. Если 23': ^HQ. m° ®: a[P~\=a[Q-. Доказывается с помощью леммы 2.31 индукцией по шагам работы алгорифма 23'. 2.36. Если 23': />(=• Q, то 6: a[P" |==ap[Q~- Доказательство опирается на леммы 2.35 и 2.34. Оно проводится аналогично доказательству леммы 2.19. Следующие три леммы касаются одного алгорифма 6. 2.37. Если Q—слово в А, то 6: aQ\=a[Q~. Для доказательства замечаем сначала, что B9) 6: 6:
212 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ (ГЛ. IV (эти утверждения получаются непосредственно из рассмот- рассмотрения схемы C)). Затем с помощью B9) и C0) правой индукцией по Q доказываем, что C1) 6: aQR\=a[Q-R, после чего, положив в C1) R'&A, получаем требуемое. 2.38. Если Q—слово в А, то 6: a$[Q~ \=afiQ. Доказательство аналогично доказательству леммы 2.37. Сначала рассмотрением схемы C) убеждаемся, что И C3) 6: aPQTJ|[/?- \- apQ^E [#"• Затем с помощью C2) и C3) правой индукцией по Q по- показываем, что C4) 6: после чего, положив в C4) RlLA, получаем требуемое. 2.39. Если Q—слово в А, то Ё: aPQ |—. Q. Получается непосредственным рассмотрением схемы C). Активной в данной ситуации формулой является формула единственная заключительная формула алгорифма 6. 2.40. Если аЭ-: P\=-Q, то 6: aP\=-Q. В самом деле, пусть S3': P\=.Q. Тогда &:аР\=а[Р- [2.37] h=ap[Q" [2.36] Н=°Ф<2 [2.38] H-Q [2.39] и, следовательно, ©: aP|=.Q, что и требовалось доказать. 2.41. ?сш Р и Q—такие слова в алфавите А, что 6: а[Р~ ha[Q~, mo 93': Р \- Q. Пусть, в самом деле, C5) ©: a[P~\-a[Q-, где Р и Q — слова в А. Так как алгорифм 23' замкнут [§ 36.2.1], слово Р поддается ему [§ 36.1.1]. Поэтому суще- существует такое слово R, что имеет место одно из следующих двух утверждений: C6) »•: р |_ /? |37] 1-ИЛИ КОМПОЗИЦИЯ АЛГОРИФМОВ 213 Если бы имело место второе из них, то, согласно 2.32, ; существовали бы такие слова S и Т, что SC7) 6:o[P-ha[S-p[r-, I и мы имели бы C8) a[Q-°Ia[S-p[7- [C5), C7)], [C8)], что невозможно, так как Р не входит в [Q~. к Следовательно, имеет место C6) и 1 6: a[P~\-a[R- [C6), 2.31], 1C9) i<40) 1D1) ? D2) a[Q-lLa[R [Q-3E[/? QJ?R %-:P\-Q [C5), C9)], [D0)], [D1), 2.8], [C6), D2)], что и требовалось доказать. Условимся теперь слова вида а[Р~, где Р — слово в А, называть специальными. Системы, все члены которых суть специальные слова, мы также будем называть специальными. Для специальных систем X мы введем следующую опера- ?." цию [Xv: :; [yv^Y> , (Здесь X—специальная система, а Р—слово в А.) Ясно, что если X — специальная система, то [Xv—си- [Xv—система слов в А, причем X соединяет а[Р~ с a[Q~ тогда и только тогда, когда [Xv соединяет Р с Q. 2.42. Всякое специальное слово алгорифм 6 просто пе- переводит в некоторое слово. В самом деле, пусть а[Р~ — специальное слово. Рас- Рассмотрим слово Р. В силу замкнутости нормального алго- алгорифма 23' в алфавите А [§ 36.2.1], этот алгорифм просто или заключительно переводит Р в некоторое слово [§ 36.1.1]. Согласно леммам 2.31 и 2.32 как в первом, так и во вто- втором случае (? просто переводит а[Р~ в некоторое слово, что и требовалоеь доказать.
214 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV 7] КОМПОЗИЦИЯ АЛГОРИФМОВ 215 2.43. Если слово Р в А таково, что алгорифм G при- применим к а[Р~, то алгорифм 23' применим к Р. В самом деле, пусть Р—такое слово в А, что алгорифм G применим к Р, и пусть (&(а[Р~)жи. Тогда в силу зам- замкнутости алгорифма G [2.7] имеем G: a[P~\=- U. Поэтому существует слово V такое, что 6: а[Р~ \=V\— • U, и, зна- значит, существует переводная система X схемы алгорифма G, соединяющая специальное слово а[Р~ со словом V. Лег- Легко видеть, что V не является специальным словом, так как G: V\—-U [2.42]. Таким образом, первый член систе- системы X является специальным словом, а последний ее член таким словом не является. Арифметический предикат «член системы X с номером N не является специальным словом», очезидно, разрешим. Поэтому на основании теоремы о наи- наименьшем числе [§ 21.2.1] существует член W системы X такой, что W не является специальным словом, а все чле- члены X с меньшими номерами являются специальными сло- словами. Система X имеет вид YWZ, где Y—специальная пе- ревэдная система схемы алгорифма G. Первым членом Y является слово а[Р~. Пусть слово R таково, что <x[R~ является последним членом Y. Тогда G: <x[R~ \- W. Система [У^ является переводной системой алгорифма 23' Г2.41]. Она соединяет слово Р со словом R. Поэтому 23': P\=R. Существует слово Q такое, что 33': R \- Q или 23': RJ--Q. Пусть 23': R (- Q. Тогда G: a[R~\-a[Q- [2.31] и lFSa[Q~, что невозможно в силу выбора W. Таким образом, 23": R\- -Q и 23': P\=-Q, т. е. 23' применим к Р, что и требовалось доказать. 2.44. Если слово Р в алфавите А таково, что алгорифм G применим к аР, то алгорифм 23' применим к Р. В самом деле, пусть алгорифм 6 применим к аР. Тогда алгорифм G применим к а[Р~ [2.37], откуда следует, что алгорифм 23' применим к Р [2.43]. 2.45. Если имеет смысл выражение 23 C1 (Р)), то алго- алгорифм G применим к слову Р и G (Я) 2 33 C1 (Я)). В самом деле, пусть выражение 23 C1 (Р)) осмысленно. Тогда алгорифм 91 применим к слову Р, а алгорифм 33—к слову 91 (Р). Положим D3) Q=^3l(P), D4) tf^23 (SI (P)). Имеем D5) D6) D7) D8) D9) 23(QJfl 91' (Р) г Q 23"(Q)s:# щ-: P|=.Q 23': Q\=-R С<: p\=o.Q н-я Следовательно, E0) G: P|= G(P)s [D3), [D3), [D5), [D6), [D7), [D8), [D9), ¦-R, R D4)], § 36.2. § 36.2. § 36.2. § 36.2. 2.19] 2.40]. [(f 14], 14], 1, § 36.1.3], 1, § 36.1.3], Ю)] 23 C1 IP)) [D4)], что и требовалось доказать. Для завершения доказательства теоремы нам остается теперь доказать, что выражение 23 (91 (Р)) имеет смысл для слова Р в алфавите А, коль скоро имеет смысл G (Р), т. е. коль скоро алгорифм G применим к слову Р. 2.46. Если алгорифм G применим к слову Р в алфавите А, то имеет смысл выражение 23 C1 (Р)). В самом деле, пусть алгорифм G применим к слову Р в А. Тогда алгорифм ЗГ применим к Р [2.22]. Положим E1) Q=^W(P). Тогда Q есть слово в А, так как 31'—алгорифм в А. Имеем, далее, E2) ЗГ: P\=-Q [E1), § 36.2.1, § 36.1.3], E3) G: P\=aQ [E2), 2.19]. Так как, согласно предположению, алгорифм G применим к Р, он применим и к aQ [E3)]. Отсюда следует, что ¦ алгорифм 23' применим к слову Q [2.44]. Положим ;<54) i?--^23'(Q). Тогда |<55) 9l(P)SQ [E1), § 36.2.11], М56) аЗ(<?)з:# [E4), § 36.2.11], 23 C1 (Р))Si? [E5), E6)]. Следовательно, 23 (91 (Р)) имеет смысл, что и требовалось | доказать.
216 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV Доказательство последней леммы завершает доказатель- доказательство теоремы 2.1. 3. Докажем теперь теорему композиции в общей форме. Пусть 3( и 23—произвольные нормальные алгорифмы. Пусть Б и В означают соответственно их алфавиты, и пусть 0) А^БиВ. А является расширением каждого из алфавитов Б и В. Поэтому существуют формальные распространения алго- алгорифмов 31 и 23 на алфавит А [§ 35.5.3]. Пусть 31Х означает формальное распространение 31 на А, 23!—формальное рас- распространение 23 на A. Stj и SSj суть нормальные алго- алгорифмы в А [§ 35.5.1]. К ним применима доказанная теоре- теорема 2.1, согласно которой может быть построен такой нор- нормальный алгорифм (S над А, что B) 6 (Р) ~ 23Х C1 х (Р)) (Р—слово в А). Покажем, что так построенный нормальный алгорифм @ над А удовлетворяет условию 1A). В самом деле, так как Щх и 3?х суть соответственно фор- формальные распространения нормальных алгорифмов §1 и 23, имеем, согласно § 35.5.4, C) 3lx (P) ~ 31 (Я), D) 23,(Q)~23(Q). Следовательно, для слов Я в А 6(Р)~23(§11(^)) [B), D)] ~ 23 C1 (Я)) [C)], и, таким образом, условие 1 A) выполнено, что и требова- требовалось доказать. 4. Проведенное только что [2, 3] построение дает для любых двух данных нормальных алгорифмов §1 и 23 нор- нормальный алгорифм 6 над объединением А их алфавитов, удовлетворяющий условию 1A). Единственный и, очевидно, несущественный элемент произвола в этом построении—это „новые" буквы, т. е. буквы, принадлежащие алфавиту алгорифма 6, но не принадлежащие А. Эти буквы, т. е. буквы, играющие роль а, р и двойников, могут быть вы- выбраны произвольно, лишь бы они были отличны друг от друга и не принадлежали алфавиту А. Роль же их в по- построении алгорифма (S вполне определяется схемой 2C), где только роль 9( и 23 играют формальные распростране- распространения 91 х и 23Х этих алгорифмов. 1;37] КОМПОЗИЦИЯ АЛГОРИФМОВ 217 I Нормальный алгорифм E, построенный как только что 'описано и в существенном однозначно определяемый нор- нормальными алгорифмами 31 и 23, мы будем называть нормаль- нормальной композицией алгорифмов 31 и 23. Нормальную компози- композицию алгорифмов 31 и 23 мы будем обозначать символом B3°31). В соответствии с этим равенство ©°:B3о31) будет означать, что (S есть нормальная композиция алго- алгорифмов 31 и 23. Следующие утверждения резюмируют предыдущее: 4.1. Для любых двух нормальных алгорифмов % и 23 су- существует нормальная композиция B3о31). 4.2. Нормальная композиция нормальных алгорифмов 31 и 23 есть нормальный алгорифм над объединением алфавитов этих алгорифмов, определенный в существенном однозначно. 4.3. Для любых двух нормальных алгорифмов 31 и 23 B3о31) (Р) ~ 23 C1 (Р)) (Р—слово в А), где А означает объединение алфавитов алгорифмов 31 и 23. 5. Приведенное доказательство теоремы 1.1 представляет собой типичный пример конструктивного доказательства: утверждая существование нормального алгорифма (?, опре- определенным образом связанного с заданными нормальными алгорифмами 31 и 23, мы указали способ *), позволяющий потенциально осуществить этот алгорифм, коль скоро за- заданы исходные алгорифмы 31 и 23. Типичным примером неконструктивного доказательства этой теоремы было бы доказательство по следующей схеме: предположив, что каким-нибудь образом доказано несу- несуществование искомого алгорифма Gt, привести это предпо- предположение к противоречию, не проводя построения 6 („чистое, доказательство существования" методом «от противного»). Во многих случаях такие неконструктивные доказательства оказываются в техническом отношении более простыми, чем соответствующие конструктивные. И это понятно — в них не требуется построения. Однако это не должно вводить нас в со- соблазн. В принципиальном отношении конструктивное доказа- доказательство существования все-таки проще: здесь не надо задумы- задумываться над тем, почему существование должно пониматься столь косвенным образом, что существующим может оказаться *) Более подробно об этом см. § 54.5.
218 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV ОБЪЕДИНЕНИЕ АЛГОРИФМОВ 219 и объект, к разысканию которого не видно никаких подступов. Что же касается понимания существования как потенциальной осуществимости, то оно представляется нам естественным и в принципиальном отношении — простым. Впрочем, в техническом отношении проблема нахождения конструктивного доказательства тоже может оказаться более простой, чем соответствующая проблема нахождения „чистого доказательства существования". Например, мы не видим, как опровергнуть предположение о несуществовании нормального алгорифма 6 из теоремы 1.1, не построив его фактически. Мы специально хотели бы обратить внимание читателя на это об- обстоятельство. 6 *). Покажем теперь, что принцип нормализации алгориф- алгорифмов [§ 27.6] равносилен следующему высказыванию: 6.1. Всякий алгорифм в алфавите А эквивалентен относи- /пельно А некоторому нормальному алгорифму над А. Допустим, что утверждение 6.1 верно, и рассмотрим какой-нибудь алгорифм 91 в алфавите А. Покажем, что 91 вполне эквивалентен некоторому нормальному алгорифму над А. Согласно 6.1 имеется нормальный алгорифм 25 над А, эквивалентный 91 относительно А. Обозначим через Б его алфавит. Имеем A) АсБ. Построим нормальный алгорифм © в Б со схемой где I пробегает алфавит Б\А. Очевидно, что B) &(Р)ЖР (Я—слово в А) и что E не применим ни к какому слову в Б, не являю- являющемуся словом в А. Построим алгорифм 35 как нормальную композицию алгорифмов 53 и ©: C) 35 ..-* F о 39). *) Этот пункт является естественным продолжением §27. Высказыва- Высказывание 6.1, как и принцип нормализации, не может рассматриваться как имею- имеющее точный математический смысл. То же самое можно сказать и относи- относительно утверждения о их равносильности. Тем не менее это последнее можно считать достаточно понятным. есть нормальный алгорифм над Б и 4) 35 (Я) са <? B3 (P)) (Я—слово в Б) [C)]. Отсюда следует, что 5) 35 (Я)~? (Я), |йсли Р и 23 (Р) суть слова в А [D), B)]. Покажем, что 35 есть искомый нормальный алгорифм §Ьад А, вполне эквивалентный 9Х. 35 есть алгорифм над А ввиду A). Если алгорифм 91 применим к слову Я в А, то Я и 91 (Я) |суть слова в А, так как 91— алгорифм в А. Поэтому тогда |н 23 применим к Я, и мы имеем 31 (Я) Ж 23 (Я). силу E) отсюда следует, что 1F) 91 (Я)-35 (Я). ¦Таким образом, равенство F) имеет место, коль скоро |алгорифм 9Х применим к слову Я в А. Допустим теперь, что алгорифм 35 применим к слову Я |в А. Тогда и алгорифм 23 применим к Я [D)], а алгорифм I—к 23 (Я). Поэтому и 23 (Я) есть слово в А. Но тогда и 1горифм 91 применим к Я ввиду эквивалентности алго- алгорифмов 9J и 23 относительно А. Следовательно, алгорифм применим к слову Я в А, коль скоро к нему применим влгорифм 35. Мы доказали таким образом, что алгорифм 55 вполне экви- иентен алгорифму 91 относительно алфавита А. Тем самым |мы доказали, что принцип нормализации вытекает из утверж- |дения 6.1. Обратное очевидно. Следовательно, принцип норма- нормализации равносилен утверждению 6.1, что и требовалось |доказать. § 38. Объединение алгорифмов 1. Часто приходится совместно рассматривать результаты работы двух или нескольких алгорифмов над одними и теми Ке исходными данными. В этом случае полезным может ока- аться построение системы всех этих результатов. Она может, например, сама служить в качестве исходного данного при работе какого-нибудь другого алгорифма. Так, если нам уже даны алгорифмы вычисления значений /нкций (х+2) и (х+3) для натуральных значений перемен-
220 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV ОБЪЕДИНЕНИЕ АЛГОРИФМОВ 221 ной х, алгорифм вычисления значений функции A) (х+2) X (х+3) можно построить как следующее предписание: исходя из про- произвольно данного натурального числа N, вычислить числа (jV+2) и (N-\-3) с помощью двух данных алгорифмов, построить пару этих чисел и применить к ней алгорифм умножения. Первые два этапа этого предписания образуют алгорифм, пере- перерабатывающий всякое натуральное число в пару чисел (JV+2) * (Af+З). Композиция этого алгорифма с алгорифмом умноже- умножения составляет искомый алгорифм вычисления значений функ- функции A). Таким образом, если даны вербальные алгорифмы 31 и 33, то может оказаться целесообразным построить следу- следующее предписание: «исходя из произвольного слова Р в объединении А алфавитов этих алгорифмов, развернуть процессы применения к нему алгорифмов 31 и 23. Если оба эти процесса закончатся, то построить слово 31 (РK3(Р) и считать его результатом». Это предписание, как мы видим, составляет некоторый алгорифм в алфавите А — «объедине- «объединение» данных алгорифмов SX и 23. Естественно спросить, является ли объединение норма- нормализуемых алгорифмов также нормализуемым алгорифмом? Принцип нормализации подсказывает утвердительный ответ на этот вопрос, и, действительно, в этом параграфе мы до- докажем следующую теорему: 1.1. Теорема объединения. Пусть 31 и 33—нор- 33—нормальные алгорифмы, к—объединение их алфавитов. Тогда может быть построен такой нормальный алгорифм (Е над А, что для любого слова Рек имеет место условное ра- равенство B) <ВД~21(ЯK3(/>). 2. Доказательство этой теоремы составляет главное со- содержание данного параграфа. Мы начнем с доказательства следующей теоремы: 2.1. Каковы бы ни были нормальные алгорифмы 31 и 33 в алфавите А, может быть построен такой нормальный алгорифм (S над А, что для любого слова Рек имеет место условное равенство A) 6(Я) ~31 (Я) 33 (Я). Для доказательства введем алфавит А двойников букв алфавита А, как в доказательстве теоремы § 37.2.1. Двой- jhk буквы ? будет по-прежнему обозначаться через |, двой- |ник слова Р—через [Р~ ¦ Положим Б=^=АА. Введем следующие нормальные алгорифмы над А: алгорифм $х побуквенного кодирования (см. § 33.1) та- такой, что для любой буквы ? алфавита А «код» ее /С| есть |слово ?|: алгорифм ,^2 побуквенного кодирования такой, что для [ любой буквы ? алфавита А 5 алгорифм 2t двойного проектирования (см. § 33.3) такой, '¦ что для любого слова Я в Б ^ — алгорифм ?2 двойного проектирования такой, что для любого Я в Б 31 — нормальный алгорифм в А, схема которого полу- получается из схемы алгорифма 31 путем замены каждой буквы ее двойником; 31Х—естественное распространение алгорифма 31 на алфавит Б; 33,—естественное распространение алгорифма 33 на ал- алфавит Б. Построим нормальный алгорифм (S как нормальную ком- композицию % Так как уже й2 есть алгорифм над А, то © и подавно t есть нормальный алгорифм над А [§ 37.1.1]. Покажем, что * для (S имеет место условное равенство A). Предварительно '^докажем некоторые леммы. Я означает в них произволь- • >ное слово в алфавите А. : Сначала методом правой индукции показываем, что для 1 любого Я в А G) [Й!(Я)А31Я, ¦(8) [Я11(Я)хз:[Я-.
222 Затем СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV ОБЪЕДИНЕНИЕ АЛГОРИФМОВ 223 [G), (8)], что и требовалось доказать. 2.3. 33, (S, ($, (Я))) ~ 23 ( В самом деле, так как 23г — естественное распростране- распространение 23 на Б, имеем [2-2] ~23(Я)[Я" [§ 35.2A)]. 2.4. 22 B3Х (fix (,f?x (Я)))) ~ [Я~23 (Я). В самом деле, S, B3, (?, (й\ (Я)))) ~ «, B3 (Я) [Р-) [2.3] ~[Я3(Я) [E)]. 2.5. 9Т([Я-)~[91(Я)-. _ Это непосредственно следует из определения алгорифма 9(. 2.6. Жt (S, EВ, (S?, (Йх (Я))))) ~ [8t (Я)3 (Я). В самом деле, так как 9{х—естественное распростране- распространение 9Х на Б, имеем 3li (*, («I (»i (^i (P))))) ^ % ([Я"» (Я)) [2.4] ~§1 ([/>-) 23 (Я) [§35.2A)] ~|Ж(Я)-23(Я) [2.5]. 2.7. .ft,([Q-#K:Q# (Q, Я—слова в А). Это непосредственно следует из определения C) алго- алгорифма ^2. 2.8. ^ (Ш, («2 е-Ь\ (&х (Я\ (/>)))))) ~ Ж (Р) 93 (Я). В самом деле, Я. $i (», (Six (»i (Р)) [2.6] [2.7]. Условное равенство A) следует теперь из F) и 2.8. 3. Теорема 1.1 может быть доказана следующим образом. Пусть, в самом деле, 91 и 23—какие-либо нормальные алгорифмы, и пусть А—объединение их алфавитов. По- Построим формальные распространения 5ЙХ и 23Х алгорифмов % и 23 на алфавит А. Алгорифмы §ХХ и 23j суть нормальные алгорифмы в одном и том же алфавите А, и потому к ним может быть применена теорема 2.1. Согласно этой теореме ,ожет быть построен такой нормальный алгорифм (? над \, что для любого Р в А имеет место условное равенство 1ринимая во внимание, что г{х{Р)^%{Р), 23Х (Я) ~ 23 (Я) 35.5.4], получаем отсюда условное равенство 1 B). 4. С помощью теоремы 1.1 может быть доказано сле- следующее утверждение: 4.1. Пусть $( и 23—произвольные нормальные алгорифмы, |А—объединение их алфавитов, а у—какая-либо буква. "д может быть построен нормальный алгорифм © над витом А и {у} такой, что для любого слова Рек бу- ет выполняться условное равенство В самом деле, пусть 1) означает нормальный алгорифм Au{y}> перерабатывающий всякое слово в этом алфавите слово у. Как строится такой алгорифм, нам известно § 29.3]. Применив теорему 1.1 сначала к алгорифмам 91 5), а затем к получаемому в результате этого алгорифму алгорифму 23, мы получим нормальный алгорифм 6 над лфавитом A (J \у\ такой, что для любого слова Я в А бу- выполняться условное равенство С(Я)~9((ЯM)(ЯJ3(Я), е. что и требовалось доказать. 5. Формулируем некоторые следствия из доказанных зрем. 5.1. Каков бы ни был нормальный алгорифм 91 над Алфавитом А, могут быть построены такие нормальные агорифмы 6 и Т) над А, что для любого слова Рек имеют есто условные равенства 1) 6 (Я) ~ 91 (Я) Я, 2) ?>(Я)~Я91(Я). Для доказательства воспользуемся тождественным нор- 1альным алгорифмом в алфавите А [§ 28.4]. Применяя тео- ему 1.1 к алгорифму 91 и тождественному алгорифму в А
224 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ 1ГЛ. IV (в роли 33), получаем нормальный алгорифм 6 над А, для которого справедливо условное равенство A). Подобным же образом, с переменой ролей алгорифма iH и тождествен- тождественного алгорифма, получаем нормальный алгорифм 5) над А, для которого имеет место B). 5.2. Каковы бы ни были нормальный алгорифм 31 над алфавитом А и буква у, существуют такие нормальные алгорифмы G и 5) над алфавитом А и {у}. что ^ля любого Рек имеют место условные равенства 6 (Я) ~ 91 (Я) уР, ®(Я)~Я-уЗ((Я). Это доказывается аналогично 5.1 с применением 4.1 вместо 1.1. 6. Нормальный алгорифм ©, построенный способом, указанным в доказательстве теоремы 1.1, в существенном однозначно определяется нормальными алгорифмами 31 и 23. Мы будем называть его нормальным объединением алгориф- алгорифмов 31 и 23. Нормальное объединение алгорифмов 31 и S3 мы будем обозначать символом (ЗГ~23). Следующие утверждения резюмируют предыдущее: 6.1. Для любых двух нормальных алгорифмов 31 и 23 су- существует *) нормальное объединение C1' "S3). 6.2. Нормальное объединение нормальных алгорифмов % и 23 есть нормальный алгорифм над объединением алфави- алфавитов этих алгорифмов. 6.3. Для любых двух нормальных алгорифмов 31 и S3 имеет место условное равенство где Р—любое слово в объединении алфавитов этих алгориф- алгорифмов. § 39. Разветвление алгорифмов 1. Иногда приходится строить предписания следующего типа: «применить к исходным данным алгорифм Ж или алго- алгорифм 23 в зависимости от того, обладают ли эти данные каким- то свойством». Для того чтобы такое предписание можно было рассматривать как алгорифм, необходимо, разумеется, чтобы *) См. § 54.5. ||39] РАЗВЕТВЛЕНИЕ АЛГОРИФМОВ 225 .существовал конструктивный метод распознавания свойства исходных данных, о котором идет речь. Этот метод может, например, состоять в применении к исходным данным некото- некоторого специально подобранного распознающего алгорифма, пе- перерабатывающего исходные данные в пустое слово тогда н : только тогда, когда они обладают интересующим нас свойст- I вом. Чтобы узнать, обладают ли этим свойством исходные данные, нужно будет тогда применить к ним распознающий алгорифм и посмотреть на результат этого применения. Свойст- Свойство имеет место, если этот результат есть пустое слово, и не имеет места, если он есть непустое слово. В первом случае предписание требует применить к исходным данным алго- алгорифм 31, во втором — алгорифм 23. Переходя от алгорифмов вообще к вербальным алгорифмам, т. е. к алгорифмам в неко- некоторых алфавитах, мы приходим к предписаниям следующего типа. Даны вербальные алгорифмы 31, 23 и © в алфавите А. Предписывается, исходя из произвольного слова Р в этом алфавите, применить к нему алгорифм (?. Если в результа- результате получится пустое слово, то надлежит применить к Р алгорифм 31; если же получится непустое слово, то надле- надлежит применить к Р алгорифм 23. Это предписание можно рассматривать как некоторый вербальный алгорифм в А. Для его применимости к слову Я в А, разумеется, необходимо, чтобы алгорифм (? был применим к Р. Мы приходим, таким образом, к некоторому сочетанию трех вербальных алгорифмов 91, 23 и @ в А, являющемуся новым вербальным алгорифмом в А. Это сочетание есте- естественно называть разветвлением алгорифмов 31 и 23, управ- управляемым алгорифмом (S. Естественно спросить, является ли разветвление двух нормализуемых алгорифмов, управляемое третьим норма- нормализуемым алгорифмом, также нормализуемым алгорифмом. Положительный ответ на этот вопрос подсказывается прин- принципом нормализации. Он вытекает из следующей теоремы: 1.1. Теорема разветвления. Каковы бы ни были нормальные алгорифмы 31, 2) и E, может быть построен нормальный алгорифм 35 над объединением А их алфавитов такой, что для любого слова Рек выполняются следующие три условия: A) если ®(Р)ЗЕЛ, то 2) (Я) ~ 91 (Я), B) если 6 (Р) -? Л, то © (Р) ~ 33 (Р), C) если определено 2)(Р), то определено и ©(Я). 8 А. А. Марков, Н. М. Нагорный
226 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV РАЗВЕТВЛЕНИЕ АЛГОРИФМОВ 227 Здесь и в дальнейшем знак «^t», когда он связывает выражения, могущие оказаться не определенными, надле- надлежит понимать следующим образом: оба выражения, связы- связываемые этим знаком, имеют смысл, и их значения явля- являются графически различными словами. Доказательство теоремы разветвления составляет глав- главное содержание этого параграфа. 2. Докажем некоторые леммы. 2.1. Каковы бы ни были нормальный алгорифм (S в ал- алфавите А и буква а, может быть построен такой нормаль- нормальный алгорифм @ над А и {а}, что 1а для слов Рек таких, что ^ ' ^ \Л для слов Рек таких, что и что (S применим к тем и только к тем словам в А, к которым применим 6. Воспользуемся разветвляющим нормальным алгорифмом StAU{a},A,a,A над алфавитом А и {«}, перерабатывающим Л в а, а всякое непустое слово в алфавите A (J \а\—в Л [§ 30.1]. Для сокращения письма обозначим его через @0. Имеем B) е.(Л)]Еа, C) g,(/>)lA (Я — слово в A, Pjtk). Построим искомый алгорифм (g как нормальную компо- композицию алгорифмов (S и @0: D) gS(g0o6). Алгорифм @, как и (g0, есть нормальный алгорифм над A U {«} и E) @(Я)~@0((?(Я)) (Я—слово в А) [D), § 37.4.3]. Если Р—слово в А и (?(Р)-а.к, то ®(Я)~(?0(Л) №)] 2 а [B)]. Если же Р—слово в А и 6(Р)~$LЛ, то ©(Я) есть слово E (Я) 2 Л [E), C)]. Таким образом, алгорифм (g удовлетворяет условию A). В силу E) алгорифм (§ применим лишь к тем словам в А, к которым применим (S. С другой стороны, согласно уже доказанному, он применим ко всем таким словам. Лемма, таким образом, доказана. 2.2. Каковы бы ни были нормальный алгорифм (S в ал- алейте А и буква а, может быть построен такой нор- ьный алгорифм $ над Аи {а}, что I аЯ для таких слов Рек, что (? (Я) 31 Л, ' VK \ Я для таких слов Рек, что 6(Я)^Л, что 5 будет применим к тем и только к тем словам А, к которым применим (?. В самом деле, построим алгорифм @ согласно предыду- предыдущей лемме. Построим затем, согласно § 38.5.1, такой нор- |мальный алгорифм % над к\}{а), что \G) $(Р)~(&(Р)Р (Я—слово в Аи {«}). Он, очевидно, применим к тем и только к тем словам в А, к которым применим @, т. е. к тем и только к тем ^-словам в А, к которым применим (?. Соблюдение условия F) для ^ непосредственно следует из соблюдения условия A) для © в силу условного равенства G). 3. Докажем теперь теорему 1.1. Пусть 31, 93 и (S—нормальные алгорифмы; А—объеди- I нение их алфавитов. Пусть 311? 39Х и (?х означают соответст- \ венно формальные распространения алгорифмов Ж, 33 и © на алфавит А. Фиксируем буквы а и Р, не принадлежа- ¦ щие А. Построим нормальный алгорифм ^ над Аа согласно лемме 2.2 таким образом, чтобы этот алгорифм был при- применим к тем и только к тем словам в А, к которым при- I меним ©!, и чтобы соблюдалось условие _ [аЯ для таких слов Я в А, что Q ' ' \ Я для таких слов Я в А, что Q Построим нормальный алгорифм 312 в алфавите Ар, оп^ ределив его схемой B) |Р^' Построим нормальный алгорифм 93\—замыкание алго- алгорифма 2?! [§ 36.2], затем нормальный алгорифм 93'^ в ал- | фавите АР со схемой, получающейся из схемы алгорифма 93i I в результате замены каждой правой части Q заключитель- I ных формул подстановок словом PQ, и, наконец, нормаль- нормальный алгорифм 932 в алфавите Aaji со схемой C) 8* а
228 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV Искомый алгорифм 55 мы определим как нормальную композицию D) №*°Ъ*)°%)- Непосредственное рассмотрение схем B) и C) позволяет формулировать приводимые ниже леммы 3.1—3.7. Неболь- Небольшие детали в доказательствах этих лемм мы оставляем читателю, полагая, что к настоящему времени у него нако- накопился достаточный для этого опыт. 3.1. Если R и S—слова в А, то Действительно, в этом случае St2: R$S\->RS, откуда и вытекает справедливость нашего утверждения. 3.2. Если §lx: P|-Q. то §l2: P j- Q. 3.3. Если %: P\--Q, то Шг: P\~'Q- 3.4. Если Я,,: Р~], то Ш2: Р~]. 3.5. Если Р в А, то $}2(аР)ЖР. 3.6. Если »,: PhQ, то 232: Р \- Q. 3.7. Если 33j: P\--Q, то существуют слова R и S в А такие, что RS^Q и 232: P\-'RfiS. Из 3.2 — 3.4 вытекает 3.8. Для любого Рек Ж2(Р) ~ 31Х (Я). Из 3.6 и 3.7 вытекают следующие два утверждения: 3.9. Для любого Рек \Ъг(Р) тогда и только тогда, когда !23Х(Р). 3.10. Если №i(P), то существуют слова R и S такие, что RSJH^l(P) и %t(P)?:RfiS. Покажем теперь, что выполняются условия 1A)—1C). Действительно, пусть E) (ЭДЖЛ. Тогда F) ^(Р)ЖА [§ 35.5.4, E)], G) %{Р)ЖаР [A), F)], Ф (Р) ~ (St2o332) C= (/>)) [§ 37.4.3, D)] ~&,o®J(aP) [G)] ~Ш2Ш<*Р)) [§37.4.3] ^«.(^) [3-5] ^ЗМЯ) [3.8] -Sl(P) [§35.5.4], т.е. ?> (Р) ~ $1 (Я), так что условие 1A) соблюдается. 139] РАЗВЕТВЛЕНИЕ АЛГОРИФМОВ 229 Проверим теперь условие 1B). Предположим, что Р в А !,и что [§ 35.5.4, (8)], [A), (9)], [§ 37.4.3, D)] |Тогда (9) A0) (И) [§ 37.4.3]. I Покажем, что I A2) $2B32(Я))~23(Р). Действительно, пусть осмыслена левая часть этого равен- |; ства, т. е. пусть " A3) !И, (»,(/>)). Тогда A4) !232(Р) [A3)], A5) Шг(Я) [3.9, A4)], A6) 133 (Р) [§35.5.4, A5)], т. е. осмыслена правая часть равенства A2). Кроме того, существуют слова R и 5 в А такие, что A7) и A8) так что [3.10], [A8)] [3.1] [A7)] [§ 35.5.4], т.е. 1аC32(Я)J:аЗ(Р). Осталось показать, что из осмысленности правой части равенства A2) следует осмысленность его левой части. Итак, пусть A9) №(Р). Тогда B0) !»,(/>) [§35.5.4], B1) 232(Я)
230 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ для некоторых слов R и 5 в алфавите А. А тогда B2) Slf(/?PSK:/?S [3.1], [ГЛ. IV т.е. 312 (932 (^)) осмыслено [B1), B2)]. Таким образом, ус- условное равенство A2) соблюдается, так что имеем 35(Я) са ЩР) [(И)]. Итак, условие 1B) проверено. Осталось проверить условие 1C). Оно также соблюдается. Действительно, пусть для некоторого Р в А !35(Я). Тогда Щ{Р) [DХ1> и> значит, \^{Р) [2.2], а потому и Ш{Р) [§ 35.5.4]. Таким образом, теорема 1.1 доказана. 4. Нормальный алгорифм 2), построенный только что описанным способом и в существенном однозначно опреде- определяемый нормальными алгорифмами §1, 33 и 6, мы будем называть нормальным разветвлением алгорифмов Ж и 23, управляемым алгорифмом 6. Мы будем обозначать этот алгорифм символом 1L0] ПОВТОРЕНИЕ АЛГОРИФМА 231 § 40. Повторение алгорифма 1. В математике часто бывает нужно строить предписа- предписания следующего типа: «применить к исходным данным за- заданный алгорифм 31; если результат применения не обла- обладает таким-то свойством 9$, применить к этому результату алгорифм 31; если и этот результат не обладает свойством ty, применить и к нему алгорифм 31 и т. д., до тех пор, пока не получится объект, обладающий свойством $». Для того чтобы такое предписание можно было рассматривать как алгорифм, необходимо, конечно, наличие конструктивного метода распознавания свойства ^3. Этот метод может, напри- например, состоять в применении к рассматриваемому объекту „распознающего" алгорифма, тогда и только тогда перера- перерабатывающего этот объект в пустое слово, когда он обла- обладает свойством $р. Переходя теперь от алгорифмов вообще к вербальным алгорифмам, т. е. к алгорифмам в некоторых алфавитах, мы приходим к предписаниям следующего типа. Даны вербальные алгорифмы Ж и 6 в алфавите А. Пред- Предписывается, исходя из произвольного слова Я в А, при- применить к нему алгорифм 31, что (в случае применимости) даст слово Рг; к Рг надлежит применить алгорифм (? и, если в результате получится непустое слово, предписывается лрименить к Рг алгорифм 31, что (в случае применимости) даст слово Р2; с ним надлежит поступать так же, как с Plt я т. д.; этот процесс следует оборвать, когда получится слово Рп, перерабатываемое алгорифмом (S в пустое слово. Мы пришли, таким образом, к некоторому сочетанию алгорифмов 31 и @ в А, сочетанию, являющемуся вербаль- вербальным алгорифмом в А. Это сочетание мы будем называть [повторением алгорифма 31, управляемым алгорифмом (S. I Естественно спросить, является ли нормализуемым по- евторение нормализуемого алгорифма, управляемое норма- \ лизуемым алгорифмом. Положительный ответ на этот вопрос ^подсказывается принципом нормализации. Он и в самом деле будет вытекать из теоремы 3.1, к формулировке кото- г рой мы сейчас перейдем. Однако перед этим нам потре- потребуется провести небольшую подготовительную работу, свя- связанную с тем, что в приведенной выше пока еще не уточ- уточненной постановке задачи мы воспользовались переменным индексом и словооборотом «и т. д.», чего ранее не случалось. Мы хотели бы показать читателю, что это было всего лишь данью привычке и что точное изложение легко и удобно укладывается в рамки принятого нами индуктивного стиля. 2. Пусть 31—нормальный алгорифм в алфавите А, не содержащем знака у в качестве буквы. Итерационной цепью алгорифма Ж мы будем называть всякую v-CHCTeMy S в алфавите А, удовлетворяющую сле- следующему условию: всякий раз, когда слово Р соседствует в 5 слева со словом Q, т. е. когда слово yPyQy входит в S, имеет место равенство 31 (Я) 31Q. Легко видеть, что 2.1. Всякая у-система в алфавите А, входящая в итера- итерационную цепь алгорифма 31, сама является итерационной цепью алгорифма Ж. 2.2. Если S—итерационная цепь алгорифма 31 с послед- последним членом Р и Ж(Р)ЖС}, то SQy является итерационной цепью алгорифма 31 с последним членом Q. Итерационную цепь 5—как, впрочем, и любую vCH" стему—мы будем называть многочленной, если [5° > 1. 3. Целью настоящего параграфа является доказательство следующей теоремы: 3.1. Теорема повторения. Коковы бы ни были нормальные алгорифмы Ж и 6, может быть построен нор- нормальный алгорифм 93 над объединением А их алфавитов со следующим свойством: 93 тогда и только тогда перераба- перерабатывает слово Р в алфавите А в слово Q, когда (S(Q)SA и существует многочленная итерационная цепь S алгорифма 31,
232 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV [МО] ПОВТОРЕНИЕ АЛГОРИФМА 233 соединяющая Р с Q и такая, что © перерабатывает в не- непустое слово всякий внутренний *) член S. Начнем с доказательства следующей леммы. 3.2. Если 31—нормальный алгорифм в алфавите А и Р—буква этого алфавита, то моокет быть построен нор- нормальный алгорифм © над А со следующим свойством: © тогда и только тогда перерабатывает слово Р в алфавите А в слово Q, когда Q есть слово в А, начинающееся буквой Р, и существует многочленная итерационная цепь S алгорифма 31, соединяющая Р с Q и такая, что всякий ее внутренний член не начинается буквой р. Пусть, в самом деле, 31— нормальный алгорифм в алфа- алфавите А, Р—буква А. Введем букву а, не принадлежащую А, и построим нормальный алгорифм @ в Аа с сокращенно записанной схемой A) где ? пробегает А, а §1" имеет тот же смысл, что и в до- доказательстве теоремы § 37.2.1. © есть нормальный алгорифм над А. Покажем, что он обладает требуемым свойством. Для этого заметим прежде всего, что все, сказанное в доказательстве теоремы § 37.2.1 о системе формул 31", сохраняет силу и сейчас. В частности, справедливы леммы § 37.2.2—§ 37.2.6. Принимая это во внимание, легко убе- убедиться в справедливости формулируемых ниже лемм 3.3—3.6. Доказательства этих лемм мы опускаем, так как они повто- повторяют—с небольшими изменениями в сторону упрощения-- доказательства лемм § 37.2.7 и § 37.2.14—§ 37.2.16 соот- соответственно. Итак, имеем 3.3. Алгорифм © замкнут. 3.4. Если ЗГ: Р\- Q, то ®: Р\- Q. 3.5. Если ЗГ: P\--Q, то существуют такие слова R и S, что QeLRS и ®: Р \- RaS. 3.6. Если R и S—слова в А, то ®: RaS^aRS. Отсюда, как в доказательстве теоремы § 37.2.1, получаем 3.7. Если ЗГ: P^=-Q, то @: P\=aQ (см. § 37.2.19). *) См. § 24.8. 3.8. Если Р—слово в А и алгорифм © применим к Р, по алгорифм W также применим к Р (см. § 37.2.22). Рассматривая схему A), убеждаемся в справедливости . следующих двух лемм: 3.9. Если Q—слово в А, начинающееся буквой Р, то @: aQh-Q. 3.10. Если Q—слово в А, не начинающееся буквой р*, то ®: aQh-Q. Докажем, далее, 3.11. Если 31(PKlQ и Q начинается буквой Р, то @: P\=-Q. Пусть, в самом деле, Ж(Р).я-С1, где Q начинается бук- буквой р. Тогда Ш'(Р)Ж<2 [§ 36.2.10], и потому 31': P\=-Q [§ 36.2.1, § 36.1.3]. Поэтому B) ®: P^=aQ [3.7]. Q является при этом словом в алфавите А, так как 31 (Р) 2 Q и 31—алгорифм в А. Так как Q начинается буквой р, имеем C) ©: aQH-Q [3.9], ®: P|=-Q [B), C)], что и требовалось доказать. 3.12. Если 3t(P)SQ и Q не начинается буквой р, то ©: P(=Q и существует такая переводная система X схемы алгорифма ®, соединяющая Р с Q, что [Х°^3. В самом деле, как и в случае предыдущей леммы, ЗГ: P\=-Q, и потому ®: Ph=aQ [3-7]. Кроме того, ©: aQ \- Q [3.10]. Следовательно, существует переводная система Y схемы алгорифма @, соединяющая Р с aQ. Так как Р — слово в А, а а не является буквой этого алфавита, [F°^2. Система X === YQy соединяет Р с Q и, кроме того, [Х° = =[F° + 1, т.е. [Х°^3, что и требовалось доказать. 3.13. Пусть S—многочленная итерационная цепь алго- алгорифма 31, соединяющая слово Р со словом Q и такая, что всякий ее внутренний член не начинается буквой р. Пусть Q начинается буквой р. Тогда (&(P)^?.Q. В самом деле, пусть соблюдены условия леммы. Тогда Р и Q являются словами в А, причем уРу есть начало 5, а yQy — конец 5. Существует 7"система Т в алфавите А такая, что D) SsiyPTQy. Из 2.1 следует, что Т есть итерационная цепь алгорифма 31. Всякий член системы Т является внутренним членом S и
234 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОЬ [ГЛ. IV 140] ПОВТОРЕНИЕ АЛГОРИФМА 235 потому не начинается буквой р. Рассмотрим случай, когда T^Ly. Тогда Т имеет первый и последний члены. Пусть и— первый член Т, а V—ее последний член. U и V суть слова в А. Существуют слова X и Y в алфавите ку такие, что E) и F) Имеем и TSLyilyX TlZYyVy. SlLyPyUyXQy [D), E)] SlLyPYyVyQy [D), F)]. Поэтому в 5 слово Я соседствует слева с U, а слово V—с Q. Покажем, что ®: P\=W для всякого члена W системы Т. Имеем 21 (Р)ЖЦ, так как S—итерационная цепь 21. U не начинается буквой Р, так как U—член Т. Поэтому ©: P\=U [3.121. Пусть теперь для члена W системы Т установлено, что ©: P\=W, и пусть W соседствует слева с R в Т. Тогда %(W)siR, так как Т—итерационная цепь 31. R есть член Т и потому не начинается буквой р. Следовательно, @: W\=R [3.12], и потому ®: P\=R. Применяя метод индукции вдоль системы [§ 24.1.6], видим, что каждый член W ^-системы Т удовлетворяет условию ©: P\=W. В частности, ему удо- удовлетворяет последний член Т, т. е. имеем G) ®: P\=V. С другой стороны, ty.(V)^Q, так как S—итерационная цепь Ш. А так как Q начинается буквой р, то (8) Поэтому ©: [3.11]. [G), (8)], и, следовательно, ()Q Итак, мы убедились, что если Т^1у,то ®(PK:Q. Если же Т~?.у, то SlLyPyQy [D)] и Р соседствует слева с Q в 5. Поэтому 2((P)SQ, и так как Q начинается буквой р, имеем ®: P\=-Q [3.11], откуда опять следует, что @(PJ:Q. Лемма 3.13 доказана. f 3.14. Пусть N—натуральное число, Я—слово в алфа- алфавите А. Пусть также 9) !© (Я) Ы |(Ю) (@:Я)<#. ^. „гда ©(Я)—слово в А, начинающееся буквой Р, и суще- существует многочленная итерационная цепь S алгорифма Ш., { соединяющая Я с © (Я) и такая, что всякий ее внутренний ' член не начинается буквой р, а объем не превосходит N+1. [Доказательство будем вести методом арифметической индукции. С этой целью обозначим буквой F следующий одноместный арифметический предикат со свободной нату- натуральной переменной N: «Каково бы ни было слово Я в А, если оно удовлет- удовлетворяет условиям (9) и A0), то © (Я)—слово в А, на- начинающееся буквой р, и существует многочленная ите- итерационная цепь 5 алгорифма 31, соединяющая Я с ©(Я), такая, что [5°^jV-|-1 и что никакой внутрен- внутренний член 5 не начинается буквой р». Лемма 3.14 будет доказана, если мы докажем, что вся- всякое натуральное число удовлетворяет F. Число 0 тривиальным образом удовлетворяет F. В самом деле, если слово Я в алфавите А удовлетворяет условию (9), то в силу замкнутости алгорифма© [3.3] имеем©: Я[=•©(Я), и потому (@:Я)>0, что при N = 0 противоречит условию A0). Таким образом, при JV = 0 не существует слов Я в ал- алфавите А, удовлетворяющих условиям (9) и A0), а потому [§ 9.2] верно всякое общее высказывание о таких словах. В том числе для всякого такого слова Я верно высказывание «® (Я) есть слово в А, начинающееся буквой Р, и су- существует многочленная итерационная цепь 5 алгориф- алгорифма 31, соединяющая Я с ©(Я), такая, что [5°^1 и что никакой внутренний член 5 не начинается бук- буквой Р». Пусть теперь для какого-нибудь N мы убедились, что оно удовлетворяет предикату F. Покажем, что N-\-\ также удовлетворяет F. Пусть Я—слово в алфавите А, удовлет- удовлетворяющее условию (9) и условию A1) (®:Я)<
236 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV Из (9) следует, что Ш (Я) [3.8]. Значит, существует слово R в алфавите А такое, что A2) Щ(Р)а:#. Выясним, начинается ли R буквой р. Возможны два слу- случая: a) R начинается буквой Р; б) R не начинается буквой р. a) R начинается буквой р. В этом случае @: P\=-R [3.11], и потому @(ЯK1/?. Следовательно, имеем A3) ®(Р)ЖЩР) [A2)] и @ (Я) есть слово в А, начинающееся буквой р. Положим A4) S |'$40] ПОВТОРЕНИЕ АЛГОРИФМА ее внутренний член не начинается буквой р и что Так как Р и 0 (Р) суть слова в алфавите А, 5 есть у-си- стема в алфавите А, соединяющая слово/3 со словом ©(Я). Если какое-нибудь слово X соседствует слева с каким-ни- каким-нибудь словом Y в 5, то ХЖР и УЖ@(Р) [A4)], откуда следует, что §((ХK?К[A3)]. Следовательно, 5 есть итера- итерационная цепь алгорифма 31. 5 не имеет внутренних членов. Следовательно, всякий внутренний член S не начинается буквой р. 5 многочленна, так как [S° = 2. Отсюда, в част- частности, следует, что [S°s^jV + 2. Таким образом, в рассмат- рассматриваемом случае 5 есть искомая итерационная цепь. б) R не начинается буквой р. В этом случае су- существует переводная система U схемы алгорифма ©, соеди- соединяющая Р с R и такая, что [U°^3 [3.12]. Имеем поэтому A5) ©: P\=R, и так как в силу замкнутости © [3.3] A6) @: Р\=. то : R\=.®(P) [A6), A5)], ©(Я)!® (Я), и, значит, A7) причем A8) (©:#)<(@:Я) — 2 <N. Воспользуемся теперь тем, что N удовлетворяет предика- предикату F. Так как слово R в алфавите А удовлетворяет ус- условиям A7) и A8), то ©(Я) есть слово в А, начинающееся буквой Р, и существует многочленная итерационная цепь Т алгорифма 31, соединяющая R с ©(Я), такая, что никакой 237 ^Положим 1B0) S= ^'и покажем, что 5 есть многочленная итерационная цепь ¦ алгорифма 91, соединяющая Я с © (Я), такая, что никакой ее внутренний член не начинается буквой р и что B1) [S°<yV + 2. Этим лемма 3.14 будет доказана. Так как Я — слово в алфавите А, а Т—7"система в А, S есть 7-система в А. Я является первым членом 5. Так как Т соединяет R с ©(Я), последним членом Т является ®(Я). Последним членом 5 также является ©(Я). Таким образом, 5 соединяет Я с © (Я). Число вхождений буквы у в 5 очевидно больше двух, т. е. система 5 многочленна. Так как у не входит в слово Я в алфавите А, число вхождений у в 5 на единицу больше числа вхождений у в Т [B0)], и потому B2) [S° = [71°-fl. Следовательно, имеет место B1) [B2), A9)]. Если X — внутренний член системы 5, то X есть либо первый, либо внутренний член системы Т. Первым членом системы Т является слово R, не начинающееся буквой р. Никакой внутренний член системы Т также не начинается буквой р. Таким образом, никакой внутренний член систе- системы 5 не начинается буквой р. Остается доказать, что 5 есть итерационная цепь алго- алгорифма St. Пусть слово X соседствует слева со словом Y в системе 5. Тогда имеем одно из двух: 6J XSP и Y^.R\ б2) X соседствует слева с Y в Т. В случае 6t) 9t(X)SF [A2)]. В случае б2) также имеем 91(ХK:К, так как Т—итерационная цепь алгорифма 91. Таким образом, 91 (X) Ж Y всякий раз, когда X соседствует слева с Y в S, т. е. 5 есть итерационная цепь алгорифма 91, что и оставалось доказать. 3.15. Пусть Я—слово в алфавите А, и пусть !©(Я). Тогда ©(Я)—слово в А, начинающееся буквой р, и сущест- существует многочленная итерационная цепь алгорифма 31, соеди-
238 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV «40] ПОВТОРЕНИЕ АЛГОРИФМА 239 няющая Р с <&(Р) и такая, что никакой ее внутренний член не начинается буквой р. Это следует из леммы 3.14. Из лемм 3.13 и 3.15 следует, что нормальный алгорифм © удовлетворяет условию, поставленному в лемме 3.2. Лемма 3.2, таким образом, доказана. Докажем теперь теорему 3.1. Рассмотрим сначала тот случай, когда Ж и (S суть нор- нормальные алгорифмы в одном и том же алфавите А. Пусть Р—-буква, не входящая в А; E—нормальный ал- алгорифм в алфавите Ар со схемой {Р —• Построим нормальный алгорифм $ над алфавитом Ар согласно § 39.2.2 таким образом, что будут соблюдены сле- следующие условия: 1°. Алгорифм $ применим к тем и только к тем словам в алфавите А, к которым применим алгорифм (L ¦ Й W) 5 № для всякого слова X в А такого, что (&(X)jo.A. 3°. $(Х)ЖХ для всякого слова X в А такого, что (Е перерабатывает X в непустое слово. Пусть B3) Пусть Д—алфавит алгорифма 2). Ясно, что р есть буква алфавита Д. Построим нормальный алгорифм © над алфа- алфавитом Д согласно 3.2 таким образом, что будет соблюдено условие: равенство B4) ®(P)XQ, где Я—какое-нибудь слово в алфавите Д, имеет место тогда и только тогда, когда Q—слово в Д, начинающееся бук- буквой р, и существует многочленная итерационная цепь 5 ал- алгорифма 2), соединяющая Р с Q, такая, что всякий ее внут- внутренний член не начинается буквой р. Пусть <25) аМ<5о@). 93 есть нормальный алгорифм над алфавитом А. Докажем что л удовлетворяет условию, сформулированному в тео- теореме 61. Предварительно докажем некоторые леммы. <J.I6. Пусть Р и Q—слова в алфавите А. Пусть&@)ЖА и пусть Ь—многочленняя итерационная цепь алгорифма 31* соединяющая Р cQ и такая, что 6 перерабатывает в не- [пустое слово всякий внутренний член S. Тогда имеет, место [равенство 23 (Я) 31Q. В самом деле, так как 5 есть итерационная цепь алго- i рифма Ш. в алфавите А, то 5 есть у-система в алфавите А. |Так как 5 многочленна и соединяет Р с Q, то существует ,у-система Т в алфавите А такая, что B6) SJLyPTQy. Т есть итерационная цепь алгорифма Ш. [2.1]. Q есть (как и Р) слово в алфавите А. Положим B7) W^yPTfiQy. Так как у, Р, Т и Q суть слова в алфавите Ay, W есть слово в алфавите Ару. Так как W начинается и оканчива- оканчивается буквой у, W есть у-система в алфавите Ар. Так как Т начинается и оканчивается буквой у, Р есть первый, a PQ — последний член W, т. е. W соединяет Р с PQ. Так как Т содержит y> W многочленна. Покажем, что W есть итера- итерационная цепь алгорифма 35. Пусть X соседствует с Y слева в W. Имеет место одно из двух: а) X есть последний член у-системы уРТ, a Y spQ; б) X соседствует слева с Y в уРТ. Рассмотрим эти два случая. а) В этом случае X соседствует слева с Q в S [B6)], и так как 5 есть итерационная цепь алгорифма Ш., то B8) Sl(XK:Q. X есть слово в алфавите А. В силу того, что 6(Q)SA, имеем B9) S(Q)SpQ [2°]. Следовательно, 2)(X)SpQ [B8), B9), B3)], т. е. C0) © (X) Ж Y. б) В этом случае X соседствует слева с Y в 5 и потому C1) §I(XJF. Y — член Т, и потому Y—внутренний член 5 [B6)]. Сле- Следовательно, алгорифм © перерабатывает Y в непустое слово. При этом Y есть слово в алфавите А [C1)]. Поэтому C2) %(YILY [3°]; равенство C0) имеет место и в данном случае [C1), C2), B3)].
240 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [Гл. IV 40] ПОВТОРЕНИЕ АЛГОРИФМА 241 Таким образом, W есть итерационная цепь алгорифма ^ Т ЧТ° НИКакой в"УтРенний член W не начинается Г-внутренний член W. Тогда Y есть член Т Ц 01, и потому, так как Т есть у-система в А, К есть слово в А. Следовательно, Y не начинается буквой 6 „„* & 6СТЬ многочленная итерационная цепь'алго- цепь'алгорифма 2), соединяющая слово Р в алфавите А со словом № в алфавите АC и такая, что никакой ее внутренний член аНл4НавиИтГлТСЯ буКВ°Й Р' Р ЯВЛЯеТСЯ "РИ Э™словом в вхо^дит в п'иС0ДерЖаЛеМ ЗЛфаВИТ А fB3^; бУ*ва Р "кже входит в Д и слово PQ есть слово в алфавите Д, а значит я в алфавите алгорифма ®; слово 0Q начинается буквой 6 '^Г6110 аЛГ°РИфШ @ ЗЗКЛ © (Я) Ж pQ. Согласно схеме алгорифма (? имеем Поэтому выполняется равенство 33(P)SQ [C3) C4) что и требовалось доказать. LV У' { >' 3.17. Если X—-слово в алфавите A, JlffilF и слово Y не начинается буквой р, т0 Г от d '. алфавите А, Л (А) о. г ы g перерабатывает Y в непустое слово HMeJTc^ToRo1/6' ПРьИ соблГеНИИ УСЛОВИЙ этой леммЬ1 имеется слово Z в алфавите А такое, что C5) %(X)siZ и C6) %(ZILY [B3)] & применим к Z [C6)], и потому © применим к Z 14, те имеется слово ?/ такое, что 6(ZJf/ Если бы слово U было пустым, то мы имели бы бЫ C7> &(Z)o:pz [2е], откуда FSPZ [C6), C7)], что невозможно, так как Y не начинается буквой р. Следовательно, t/*A, и потому откуда C9) C6), C8)]. Таким образом, Y есть слово в алфавите А и 'ЛIУ [C5), C9)], что и требовалось доказать. 3.18. Если X—слово в алфавите А и 2}(X)spV", то Y есть слово в алфавите А, $1(Х)ЖУ и Е(КIЛ. В самом деле, при соблюдении условий этой леммы су- чествует слово Z в алфавите А такое, что имеет место C5) и что D0) &B)з:рк [B3)]. $ применим к Z, и потому 6 применим к Z [1°],т. е. существует слово U такое, что Q(Z)~a.U. Если бы U было непустым, то мы имели бы D1) %(Z)ilz [3°], откуда ZspK [D0), D1)], что невозможно, так как Z — слово в алфавите А, не содержащем р. Следовательно, С/Ж\ и (?(Z)!5lA, в силу чего D2) ^(Z)spZ [2°]. Поэтому рГ spz [D0), D2)] и, значит, 7 2IZ. Таким обра- образом, Y есть слово в алфавите А, 21 (X) 2 Y [C5)] и E (Y) ЖА, что и требовалось доказать. 3.19. Если имеет место равенство -&(P)?iQ, где Р в А, \ то Q—слово в алфавите А, (?(ф)ЖЛ и существует много- многочленная итерационная цепь S алгорифма 31, соединяющая Р с Q и такая, что 6 перерабатывает в непустое слово вся- всякий внутренний член S. В самом деле, пусть соблюдено условие леммы. Тогда существует слово R такое, что D3) I D4) (Р) Ж R [B5)]. Согласно построению нормального алгорифма ©, R— слово в Д, начинающееся буквой р, и существует много- многочленная итерационная цепь W алгорифма 2), соединяющая Р с R и такая, что никакой ее внутренний член не начи- начинается буквой p. W есть у-система в алфавите Д алгориф- алгорифма 25. Ввиду многочленности W существует y-cwcieua T В алфавите Д такая, что D5)
242 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV Система Т есть итерационная цепь алгорифма 3)[2.1]. Ввиду D4) R есть слово в алфавите Ар алгорифма @. Вви- Ввиду того, что R начинается буквой р\ существует слово U в алфавите Ар такое, что D6) $ 40] ПОВТОРЕНИЕ АЛГОРИФМА 243 Ясно, что всякий член у-системы Т есть внутренний член W и, следовательно, не начинается буквой р. Докажем, что всякий член Т является словом в алфавите А и что алго- алгорифм © перерабатывает всякий член Т в непустое слово. Это верно, когда ТЖу, так как в этом случае не сущест- существует членов Т [§ 9]. Пусть Т^:у. Тогда имеется единствен- единственный первый член V системы Т. V есть также первый член Y-системы TRy. Поэтому Р соседствует слева с V в W. Так как W — итерационная цепь алгорифма ?), D7) ?) (Р) Ж V. Здесь Р—слово в алфавите А, а V не начинается буквой р. Поэтому V есть слово в алфавите А и (? перерабатывает V в непустое слово [3.17]. Пусть теперь X есть слово в алфавите А, пусть (? пере- перерабатывает X в непустое слово, и пусть X соседствует слева с Y в Т. Тогда Y, как член Т, не начинается буквой р и X соседствует слева с Y в W, ввиду чего D8) Поэтому Y есть слово в А и 6 перерабатывает Y в непус- непустое слово [3.17]. Применяя метод индукции по построению системы, за- заключаем, что всякий член Т есть слово в алфавите А и что алгорифм © перерабатывает всякий член Т в непустое слово. Таким образом, Т есть у-система в алфавите А. Покажем, что Т есть итерационная цепь алгорифма Ш. В самом деле, пусть X соседствует слева с Y в Т. Тог- Тогда X соседствует слева с Y в W [D7)], ввиду чего имеем D8). Здесь X и Y—члены Т и, значит, слова в алфавите А. Y не начинается буквой р. Поэтому D9) Я(ХIУ [3.17]. Положим теперь E0) S^yPTQy. Здесь Р—слово в А, Т—у-система в A, Q—слово в алфа- алфавите Ар алгорифма (В [D4)]. Поэтому S есть у-система в Покажем, что 5 есть итерационная t алфавите Ар |цепь алгорифма St. Пусть X соседствует слева с Y в S. Тогда имеет место эдно из четырех: 1°. ХЖР, Y—первый член Т. 2°. X соседствует слева с К в Г. 3°. X—последний член Т, FSQ. 4°. XIP, K2IQ, ТЖу. При осуществлении п. 1° X соседствует слева с Y в W, потому имеем D8). При этом X—слово в алфавите А и ^слово Y, как член Т, не начинается буквой р. Поэтому имеем D9) [3.17]. При осуществлении п. 2° также имеем D9), так как Т, как мы видели, есть итерационная цепь алгорифма SL Допустим, что осуществляется п. 3°. Тогда X соседст- соседствует слева с R в W D5), и потому E1) ®(X)JLR, E2) ?)(Х)гр?/ [D6)], откуда E3) Ж(Х)жи [3.18], т. е. D9), так как, согласно схеме (S, D4) и D6), имеем Пусть, наконец, осуществляется п. 4°. Тогда W Ж yPyRy, где Р и R суть слова в алфавите Ар. Следовательно, Р соседствует с R в W, и потому имеем E1), т. е. E2). От- Отсюда, как выше, получаем E3), т. е. D9). Этим завершено доказательство того, что 5 есть итера- итерационная цепь алгорифма St. Таким образом, Q есть слово в алфавите А. Покажем, что <&(О)ЖЛ. Возможны два случая: T^iy и ТЖу. В первом случае пусть V—последний член Т. Тогда V соседствует слева с Q в 5 и, полагая Х=^=К, Y=^Q, имеем для X и Y п. 3°, рассмотренный выше. Как мы видели, тогда имеет место равенство E2), откуда с учетом равен- равенства U^Q следует, что ®(QJ:A [3.18]. Во втором случае, полагая Х=?^Р и Y^=±Q, имеем для X и^ Y п. 4°. Тогда также осуществляется E2), откуда снова
244 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV ПОВТОРЕНИЕ АЛГОРИФМА 245 Итак, 5—итерационная цепь алгорифма 31. Она соеди- соединяет Р с Q и многочленна. Всякий внутренний член 5 яв- является членом Т, и поэтому алгорифм E перерабатывает в непустое слово всякий внутренний член 5. Наконец, имеем 6(QK:A Q) Лемма 3.19, таким образом, доказана. Из лемм 3.16 и 3.19 вытекает лемма 3.20. Равенство 23(PK:Q, где Р—какое-нибудь слово в алфавите А, имеет место тогда и только тогда, когда 6(QJ:A и существует многочленная итерационная цепь S алгорифма 31, соединяющая Р с Q и такая, что (S пере- перерабатывает в непустое слово всякий внутренний член S. Здесь 31 и ©—любые нормальные алгорифмы в алфави- алфавите А, а 23—нормальный алгорифм, построенный с помощью 31 и 6, как описано выше. Тем самым теорема 3.1 доказана при условии, что 31 и (S суть нормальные алгорифмы в одном и том же алфавите. Чтобы доказать теорему о повторении в общем случае, можно воспользоваться уже неоднократно примененным приемом перехода к формальным распростране- распространениям рассматриваемых нормальных алгорифмов. Подробное доказательство предоставляется читателю. Результирующий нормальный алгорифм 33 мы будем называть нормальным повторением алгорифма 31, управляе- управляемым алгорифмом @. Мы будем обозначать этот алгорифм посредством ) Отметим два простых, но важных следствия теоремы 3.1. 3.21. Если (?C1(Р))ЗСЛ, то ($Ю<$)(Р)Я.Ш(Р). В самом деле, пусть (? C1 (Р)) sl Л. Тогда 31 (Р) осмыс- осмыслено. Положим Как легко видеть, усистема 5 соединяет Р с 31 (Р) и яв- является итерационной цепью алгорифма 31. Действительно, Р является первым членом 5, а 31 (Р)—ее последним членом. Кроме того, если X соседствует слева с Y в 5, то X Ж Р и ГжЗЦР), и потому 31(Х)э:К. Итерационная цепь 5 является многочленной, так как [5° = 2. Все ее внутренние члены (их попросту нет) алгорифм (? перерабатывает в не- непустое слово [§ 9]. Последний член цепи 5 алгорифм (? по условию перерабатывает в пустое слово. Поэтому на осно- основании теоремы 3.1 C1О^) (Р) — 91 (?) > что и требовалось доказать. 3.22. Если 6C1 (Р))Х-Л> то C1О@) (Р) ^ (ЗЮ®) (Я (Я)). В самом деле, в предположении ©Cl(P))^tA нетрудно (показать, что: 1°. Если слово Q таково, что (S(Q)HIA, а 5—много- шенная итерационная цепь алгорифма 31, соединяющая Л (Р) с Q и такая, что алгорифм (? перерабатывает всякий ее внутренний член в непустое слово, то у-система yPS является многочленной итерационной цепью алгорифма 9t, , соединяющей Р со словом Q и обладающей тем свойством, t, что алгорифм © перерабатывает всякий ее внутренний член [• в непустое слово. (Заметим, что по сравнению с 5 система yPS обладает еще одним внутренним членом 31 (Р), но ал- алгорифм ©, по предположенному, перерабатывает этот член в непустое слово.) 2°. Если слово Q таково, что © (Q) SA, а 5—много- 5—многочленная итерационная цепь алгорифма 31, соединяющая Р с Q и такая, что алгорифм © перерабатывает всякий ее внутренний член в непустое слово, то 5 имеет вид уРуЩР)ТС}у, где Т—некоторая у-система, и потому ^-система y%(P)TQy является многочленной итерационной цепью алгорифма §1, соединяющей 31 (Р) со словом Q и обладающей тем свой- свойством, что алгорифм © перерабатывает всякий ее внутрен- внутренний член в непустое слово. (Легко видеть, что всякий внутренний член „урезанной" системы уШ. (Р) Т Qy является внутренним членом 5.) Исходя из 1° и 2°, нетрудно доказать интересующее нас условное равенство C1О®) (Я) с* (§Ю@) (® (р))- Детали рассуждения мы оставляем читателю. 4. В теореме 3.1 речь идет о повторном применении данного нормального алгорифма до тех пор, пока не полу- получится слово с желаемым свойством, причем само исходное слово не испытывается на это свойство. Может, однако, оказаться нужным начать испытания на желаемое свойство уже с самого исходного слова. Процесс заканчивается в этом случае на исходном слове, если оно обладает этим свойством. Если же оно им не обладает, то к нему применяется алгорифм 31 и далее процесс идет, как описано выше. Этому видоизменению повторения алгориф- алгорифма 31, управляемого ©, соответствует следующее видоизме- видоизменение теоремы 3.1: 4.1. Каковы бы ни были нормальные алгорифмы 31 и ©, может быть построен нормальный алгорифм 35 над объе- объединением А их алфавитов со следующим свойством: 35 тогда и только тогда перерабатывает слово Р в алфавите А
246 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV в слово Q, когда (§,(Q)°.A и существует итерационная цепь S алгорифма 31, соединяющая Р с Q и такая, что d перерабатывает в непустое слово все члены S, за исключе- исключением последнего. Теорема 4.1 может быть доказана следующим образом. Пусть 31 и © — произвольные нормальные алгорифмы; А—объединение их алфавитов. Построим нормальный ал- алгорифм 23 над А согласно теореме 3.1 таким образом, чтобы он обладал свойством, указанным в этой теореме. Построим тождественный нормальный алгорифм За в алфа- алфавите А [§ 28.4]. К алгорифмам За, 93 и Ё применим теорему разветвления [§ 39.1.1]. Построим, согласно этой теореме, нормальный алгорифм ?) над объединением алфавитов этих алгорифмов, т. е. над алфавитом Б алгорифма 23, таким образом, чтобы для любого Я в Б соблюдались следующие условия: A) если 6 (Р) Ж А, то ?)(Р)~3А(Р), B) если @(Р)^Л, то ?(Р)~23(Р), C) если 3) применим к Р, то и g применим к Р. Тогда ?) является искомым алгорифмом. В самом деле, Б является расширением А, так как Ш есть алгорифм над А и вместе с тем алгорифм в Б. Поэтому ?> как алгорифм над Б есть алгорифм над А. Пусть Р в А, и пусть Ф (Р) Ж Q. Тогда Ф применим к Р, и потому (? применим к Р [C)] Пусть 6(P)SA. Тогда <?)(Р)ЖР\П), S 28.4]. Поэтому Р 2 Q, и так как <?(Р) ж л, имеем $40] ПОВТОРЕНИЕ АЛГОРИФМА 247 гл. Положим S есть ч>-система в алфавите А с первым членом Р и по- последним членом Q. Никакое слово вида yXyYy не входит в 5, в силу чего 5 есть итерационная цепь алгорифма §1 [§ 9]. с> не имеет членов, не являющихся ее последним членом. Поэтому алгорифм & перерабатывает всякий такой член 5 в непустое слово [§ 9]. Пусть теперь (S(P)^A. Тогда Ф(Р)~23(Р) [B)], и по- потому Я(И)ЖB. Согласно построению алгорифма 33 имеет место равенство ©(Q) ж А и существует многочленная ите- итерационная цепь алгорифма 31, соединяющая Р с Q и такая, что & перерабатывает в непустое слово всякий ее внутрен- внутренний член. Но (S перерабатывает в непустое слово и первый [член 5—слово Р. Следовательно, 6 перерабатывает в не- ^пустое слово все члены 5, за исключением последнего. Таким образом, мы доказали, что коль скоро для слова Р (х> А имеет место равенство 5) (Р) Ж Q, соблюдается условие "(?(QKlA и существует итерационная цепь 5 алгорифма 31, соединяющая Р с Q и такая, что (S перерабатывает в не- непустое слово все члены 5, за исключением последнего. Допустим теперь, что для слов Р и Q в алфавите А соблюдается равенство (?(QKEA и существует итерацион- итерационная цепь 5 алгорифма 31, соединяющая Р с Q и такая, что @ перерабатывает в непустое слово все члены 5, за исклю- исключением последнего. Докажем, что тогда имеет место равен- равенство 3)(PK:Q. Так как всякий внутренний член системы 5 не является последним членом этой системы, то алгорифм © перераба- перерабатывает в непустое слово всякий внутренний член 5. Найдем объем [5° системы 5. Так как 5 соединяет Р с Q, [S° ^ 1. Рассмотрим два случая: [5°=1 и [5° > 1. В первом случае очевидным образом РЖС}, и потому <$,(Р)ЖА. Так как $А(Р)ЖР [§ 28.4], имеем ®(Р)ЖР [A)], и так как РЖС}, 3)(P)SQ. Во втором случае система S многочленна. Согласно по- построению алгорифма 93 имеет место равенство 23 (Р) Ж Q. Система S имеет первый член Р, который не является ее последним членом. Поэтому (? перерабатывает Р в непустое слово и мы имеем 'ЗЗ^ЖС} [B)]. Это завершает доказательство теоремы 4.1. 5. В теоремах 3.1 и 4.1 шла речь о доведении итерацион- итерационных цепей до члена, удовлетворяющего некоторому алго- рифмически проверяемому условию. Аналогичным образом в теореме 5.1 речь пойдет о доведении итерационной цепи до данного объема. В этой теореме будут фигурировать слова вида iV*P, где N—натуральное число, а Р—слово в данном алфавите А (мы будем предполагать, что * не является буквой А). Слова этого вида можно рассматривать как пары, пер- первым членом которых является натуральное число, а вторым — слово в данном алфавите. Буква С в теореме 5.1 означает двухбуквенный алфавит |*. 5.1. Каков бы ни был нормальный алгорифм 31 в алфа- алфавите А, может быть построен нормальный алгорифм 23 над алфавитом A U С такой, что равенство A) 23 (Ы*Р)ЖС}
248 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV тогда и только тогда имеет место для слова Р в А и на- натурального числа N, когда существует итерационная цепь объема N-\-1 алгорифма 21, соединяющая Р с Q. Докажем эту теорему. Пусть B) Б^АиС, а—буква, не входящая в Б, C) В^Ба. Построим нормальные алгорифмы (S, @ и g= в алфавите В со схемами а * | а* - а* CV. (|*_* где литеральная переменная g пробегает алфавит Б. Легко доказываются следующие пять лемм, в которых N означает произвольное натуральное число, Р — произвольное слово в алфавите Б. 5.2. <?((#- 5.3. &(*/>) ж'л. 5.4. (?(#*Р)о;, 5.5. %(N*PIlP. Построим нормальные композиции ((?о(?) и BЬ$). Это нормальные алгорифмы над алфавитом В. Пусть D) .$^((@обГ(Яо$)) [§ 38.6]. •Ь—нормальный алгорифм над В [§ 38.6.2]. Докажем 5.6. Если E) 21(/>JQ, то для любого натурального числа N В самом деле, пусть имеет место равенство E). Тогда Р есть слово в алфавите А, и мы имеем i 40] ПОВТОРЕНИЕ АЛГОРИФМА 249 цля любого натурального числа N[5.2, 5.4]. Далее, имеем (8) %((N+l)*P)ZiP [5.5], N9) <&°%)((N+l)*P)JLQ [(8), E)] и равенство F) [G), (9)]. Имеет место также 5.7. Если \$g)(N*R), где N—натуральное число, a R— слово в алфавите А, то m(R) [D), § 38.6.3, §37.4.3, 5.5]. Пусть теперь Г означает алфавит алгорифма §. Построим нормальный алгорифм 2) согласно теореме 4.1 таким обра- образом, что равенство 25(P)SQ, где Р—какое-нибудь слово в алфавите Г, будет иметь место тогда и только тогда, когда и существует итерационная цепь Т алгорифма §, соединяю- соединяющая Р с Q и такая, что (S перерабатывает в непустое слово все члены Т, за исключением последнего. Построим нор- нормальный алгорифм 93 как нормальную композицию 2) и $: A1) аЗ^(^оТ)). Покажем, что 23 удовлетворяет условию, формулированному в теореме 5.1. Докажем для этого лемму 5.8. Если имеет место равенство A), где N'—натураль- N'—натуральное число, а Р—слово в алфавите А, то существует ите- итерационная цепь объема N-\-\ алгорифма 31, соединяю- соединяющая Р с Q. Пусть условие 5.8 выполнено для каких-либо фиксиро- фиксированных N, Р и Q. Ввиду A1) и A) существует слово R такое, что A2) ?)(ЛГ*/>)згЯ и A3) 3F(/?KEQ. Согласно построению алгорифма 25 имеем A4) (?(Я)гЛ и существует итерационная цепь Т нормального алгорифма §, соединяющая N*Р с R и такая, что алгорифм (? перера- перерабатывает в непустое слово все члены Т, за исключением последнего [A2)]. Докажем, что всякое натуральное число К, меньшее или вное N, удовлетворяет следующему условию F:
250 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV «существует итерационная цепь алгорифма Si с первым членом Р, с объемом К-\-1 и таким последним членом X, что слово (N—K)*X есть (/С-f- 1)-й член цепи Г». Число 0 удовлетворяет условию F. В самом деле, слово уРу является итерационной цепью алгорифма 31 тривиаль- тривиальным образом; Р является первым членом этой итерационной цепи, объем которой равен 1, последний член цепи уРу есть Р и N*P есть первый член цепи Т. Допустим теперь, что некоторое число К, меньшее N, удовлетворяет условию F. Покажем, что /С+1 также удов- удовлетворяет F. Имеется итерационная цепь 5 нормального алгорифма 91 с первым членом Р, с объемом /С -f-1 и с таким последним членом X, что (N—K)*X есть (К+1)-й член Т. Так как K<N, число N—/С положительно. X есть член итерацион- итерационной цепи 5 алгорифма 31 в алфавите А, в силу чего X есть слово в алфавите А. Имеем A5) &((N—K)*X)?L((N—/C)-1)*X [5.2]. Таким образом, алгорифм E перерабатывает (N—K)*X в непустое слово и в силу A4) имеем (Щ (N— ПОВТОРЕНИЕ АЛГОРИФМА 251 Следовательно, (N—K)*X не есть последний член цепи Г, ввиду чего (N—К)*Х соседствует слева в Г с некоторым членом Z цепи Т. Так как Т—итерационная цепь алго- алгорифма $, A7) ®((N—K)*XIlZ и, следовательно, $)) Поэтому Ш(Х) [A8), 5.7] и имеется слово Y такое, что (Щ Построим B0) y U есть итерационная цепь алгорифма 31 с последним членом Y. Имеем B1) &((N—K)*XIL(N—(K+l))*Y [A9), 5.6], в силу чего Y [A7), B1)]. Гаким образом, (N—(/С+1))#Г есть член итерационной 1епи Т алгорифма §. Объем цепи U очевидно на единицу 1ьше объема цепи 5 [B0)], т. е. он равен /С+ 2. Первый |член цепи U совпадает с первым членом цепи S [B0)], т. е. |первым членом цепи V является слово Р. Последним чле- |ном цепи U является слово Y [B0)] такое, что слово [(W—(/С+1))*Г есть член Т. Мы доказали таким образом, что число /С+1 удовлет- удовлетворяет предикату F, коль скоро число К, меньшее N, удов- удовлетворяет ему. Тем самым доказано, что всякое натураль- гное число, не превосходящее N, удовлетворяет этому пре- [дикату. В частности, ему удовлетворяет #, т. е. существует i итерационная цепь W нормального алгорифма 21 с первым членом Р, с объемом N+1 и с таким последним членом К, гчто слово *К есть член Т. Будучи членом итерационной цепи алгорифма 31 в алфавите А, V есть слово в А. По- Поэтому [5.3]. Отсюда следует, что * V является последним членом цепи Т. Следовательно, B2) *К2Я. Отсюда B3) %(R)*:V [5.5, B2)]. Поэтому V3LQ [B3), A3)]. Таким образом, W есть искомая итерационная цепь алго- алгорифма 31, соединяющая Р с Q и имеющая объем Af-)-l. Лемма 5.8 доказана. Теорема 5.1 будет доказана, если мы докажем лемму 5.9. Если N—натуральное число, Р и Q—слова в алфа- алфавите А и существует итерационная цепь объема N-\-l ал- алгорифма St, соединяющаяР с Q,mo имеет место равенство A). В самом деле, пусть выполнены условия этой леммы. Пусть W—итерационная цепь объема N + 1 алгорифма 31, соединяющая Р с Q. Докажем, что всякое натуральное число К, меньшее или равное N, удовлетворяет следующему условию G: «существует итерационная цепь алгорифма б объема К+ 1, соединяющая слово W# Р со словом (N—К)*Х, где X является (/С+1)-м членом W».
252 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV ° удовлетворяет условию G. В самом деле, слово yl\l*Py есть итерационная цепь алгорифма ф объема 1, соединяющая слово N*P с самим собой, причем Р есть 1-й член W. Допустим, что число К, меньшее N, удовлетворяет G Тогда имеется итерационная цепь Т алгорифма ? объема л + 1, соединяющая слово N*P со словом (N—/О*Х где X — (Л* + 1)-й член W. Так как К < N, то Л' + 2< N+ \\ т. е. /C + 2=^[U7°. Поэтому существует член Y цепи W с но- номером К+ 2. Так как X есть член W с номером К+1 X соседствует слева с Y в W. Так как W—итерационная цепь алгорифма 21, имеем а (X) г г, в силу чего B4) ®((N—K)*X)Zi(N—(K+l))*Y [5.6]. Ira^ г?ак Т~итеРаЦионная цепь алгорифма ?, соединяющая N*Pc(N—K) *Х, еловой—/С)* X есть последний член Г 1 юэтому есть итерационная цепь # объема /< + 2 с последним членом тш ,t H* FtB4)]- Первый же член итерационной цепи V (/V — (д--{-1))# Ку совпадает с первым членом Т т е с #*Р. Таким образом, T(N — (K+\))*Yy есть итераци- онная Цепь алгорифма ? объема /(+1, соединяющая N*P с (W—(/С+1))*К, где Г—член цепи W с номером /С + 2. Мы доказали, что коль скоро натуральное число К, меньшее N, удовлетворяет условию G, натуральное число /(+! также удовлетворяет ему. Следовательно, вся- всякое натуральное число, меньшее или равное N, удовлетво- удовлетворяет условию G. В частности, N удовлетворяет усло- условию О. Это означает, что существует итерационная цепь 5 алгорифма ф объема N+1, соединяющая N*P со словом *Л, где X—член W с номером N+1. Так как объем W равен N+1, X—последний член W. Вместе с тем послед- последним членом цепи W является слово Q, так как W соеди- соединяет Р с Q. Поэтому имеем X±Q. Таким образом, итера- итерационная цепь 5 алгорифма § соединяет слово N*P со словом *Q. Докажем, что, каково бы ни было натуральное число К меньшее или равное N, член цепи S с номером Л*+1 имеет вид (N—К)*Х, где X—член цепи W с номером К+\ 140] ПОВТОРЕНИЕ АЛГОРИФМА 253 [5.6]. При/С = 0 это так ввиду того, что первым членом цепи S является слово N*P, где Р—первый член цепи W. Пусть теперь /С < N, и пусть известно, что член цепи 5 с номером /С+ 1 имеет вид (N—/С) *Х, где X—член цепи W с номером /С+1. Имеем /С + 2^Л^ + 1, и потому имеются ?член цепи W с номером /С + 2 и член цепи 5 с тем же номером. Пусть Y—член цепи W с номером /С + 2, Z—член 5 с номером /С + 2. Тогда X соседствует слева с Y в W, и потому B5) §1 (X) г У; (N—/С)*Х соседствует слева с Z в 5, и потому B6) М^—/С)*Х) гг. Ввиду B5) имеем B7) %((N-K)*XIl(N-(K+1))*Y Следовательно, Z:o (JV-(/C+l))*y [B6), B7)], где Z—член 5 с номером /С + 2, а У—член ТС номером. Пользуясь методом арифметической мы усматриваем, что при K^N член цепи 5 /С+1 имеет вид (N—/С)*Х, где X—член цепи ром /С + 1. Поэтому при /С < N алгорифм (S перерабатывает член цепи 5 с номером /С+1 в непустое слово [5.2]. Пусть теперь U—член 5, не являющийся последним. Существует номер М члена U в цепи 5, меньший объема 5, т. е. меньший N + 1. Он положителен и, следовательно, имеет вид /С+1, где /С—натуральное число. Имеем /С+ 1 < <iV+l, и потому K<.N. Таким образом, U есть член цепи 5 с номером /С+1, где K<N. Как мы только что видели, отсюда следует, что алгорифм © перерабатывает U в непустое слово. Таким образом, этот алгорифм пере- перерабатывает в непустое слово всякий непоследний член цепи S, соединяющей слово N*P со словом *Q. При этом Q—слово в алфавите А и @(*Q)SA [5.3]. Согласно построению алгорифма 2) мы усматриваем, что B8) ?) (N ¦ Кроме того, с тем же индукции, с номером W с номе- номеB9) [5.5].
254 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ ?ГЛ. IV Следовательно, 23(W*P) 2Q [(И), B8), B9)], что и требовалось доказать. Лемма 5.9 доказана. Вместе с нею доказана и теорема 5.1. § 41. Перевод алгорифма Строя нормальные алгорифмы, выполняющие в заданном алфавите ту или иную интересующую нас работу, мы часто бы- бываем вынуждены по ходу дела вводить „дополнительные" бук- буквы. Эти буквы отсутствуют в исходных данных и результатах работы алгорифма. Они на время появляются в „текущем" слове процесса и, выполнив определенную вспомогательную работу, перед обрывом процесса исчезают. Такова, например, буква а в алгорифме правого присоединения [§ 28.3B)], буквы а, р* и у в удваивающем алгорифме [§31.1 A)] и т. д. Количе- Количество дополнительных букв меняется от алгорифма к алгориф- алгорифму. Совсем обойтись без них невозможно, как показывает, на- например, теорема § 32.3.1. Естественно, однако, спросить, мож- можно ли обойтись каким-нибудь фиксированным (желательно, небольшим) количеством дополнительных букв. При естест- естественном уточнении этого вопроса ответ на него оказывается ут- утвердительным (А. А. М а р к о в 12], III. § 7.4.2; Н. М. Н а- горный [1]). Данный параграф посвящен рассмотрению этого вопроса. Основное содержание его заключено в п. 6. В предшествующих пунктах излагается общая теория перевода слов. 1. Пусть А — алфавит, не содержащий букв а, Ь и *. Будем называть к-лшпероидами буквы алфавита А и слова вида аВа, где В — непустое слово в однобуквенном алфавите Ь. Очевидно, что 1.1. Всякий А-литероид есть непустое слово в алфавите kab. Легко также показать, что 1.2. Если А-литероид X входит в А-литероид Y, то X'S.Y. В частности, 1.3. Если А-литероид X начинается или оканчивается А-ли- тероидом Y, то ХНУ. 1.4. Никакой А-литероид не может быть собственным началом или собственным концом другого А-литероида. Ясно также, что 1.5. Если L — А-литероид, а Р — слово в Аа такое, что д, то Р не входит в L. ПЕРЕВОД АЛГОРИФМА 255 Докажем 1.6. Всякое вхождение А-литероида L в слово RMS, где — А-литероид, a R и S — слова в Aab такие, что R не тчивается, a S не начинается буквой Ь, имеет один из сле- ощих трех видов: К MS, где К—вхождение L в R; RMK, где К—вхождение L в S; R*L*S, причем M2L. В самом деле, пусть 0) вхождение А-литероида L в слово RMS, где М — А-лите- А-литероид, a R и 5 — слова в Aab, удовлетворяющие перечисленным формулировке леммы требованиям. Тогда X и У суть слова 1в Aab и выполняется равенство fB) XLY^IRMS. В силу B) слова X и R суть начала одного и того же слова. Поэтому имеет место одно из трех: Г. X есть собственное начало R. 2°. R есть собственное начало X. 3.R^X. Пусть имеет место Г. Тогда X есть слово в Aab и су- существует непустое слово W такое, что C) R 2 XW. Но тогда D) XLY1LXWMS [B), C)] и, значит, E) LYH.WMS [{4)]. В силу E) L и W суть начала одного и того же слова. Поэтому либо L есть начало W, либо W есть собственное, начало L. Предположим, что W—собственное начало L. Тогда существует непустое слово V такое, что L ~°. WV. Но тогда WVYSLWMS [E)] и, значит, VY^MS. Обозначив первую букву слова V через т|, мы видим отсюда, что она является первой буквой А-литероида М и, следовательно, отлична от Ь. Из C) мы усматриваем, что последняя буква слова W также отлична от Ь. Обозначим ее посредством |. Тогда для некоторых V' и W будет LSiF'^V", что, очевидно, невозможно [1.5].
256 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [гл- Iv Значит, L есть начало W, и потому существует слово Z такое, что F) W^LZ. Но тогда G) LYS1LZMS [E), F)] и, значит, (8) Y^ZMS [G)]. Таким образом, (9) X*L*Ys:X*L*ZMS [A), (8)]. Но A0) XLZHR [C), F)], так что, положив RWLYHRMS [B), A1)], видим, что в случае Г вхождение A) имеет вид KMS [(9I, где К — вхождение L в R [A0)]. Рассмотрим теперь случай 2°. В этом случае существует непустое слово W такое, что A1) Но тогда A2) и потому A3) WLY^MS [A2)]. В силу A3) W и М суть начала одного и того же слова. Поэтому либо М есть начало слова W, либо W есть собственное начало М. В первом случае A4) WsiMZ для некоторого Z, и потому A5) MZLY^MS [A3), A4)], откуда A6) ZLF25 [A5)]. Таким образом, A7) X*L*YsLRMZ*L*Y [A1), A4)] 41] i if и, положив ПЕРЕВОД АЛГОРИФМА 257 видим, что при данном предположении X*L*Y1LRMK [A7), A8)], где К — вхождение L в 5 [A6)]. Покажем, что W не может быть собственным началом М. В самом деле, допустим, что существует непустое слово 7 такое, что A9) МЖ. WT. Тогда B0) WLYHWTS [A3), A9)], и потому B1) LY^TS [B0)]. L не может быть началом Т, так как в этом случае сущест- существовало бы слово U такое, что B2) ТЖШ, и тогда было бы MTZ-WLU [A9), B2)], что ввиду непу- непустоты W противоречит 1.2. Таким образом, остается пред- предположить, что Т является собственным началом L, т. е. что существует непустое слово V такое, что B3) LS.TV. Но тогда B4) TVY^TS [B1), B3)] и, следовательно, B5) VY1LS [B4)]. Слова Т и V непусты, и, значит, L, будучи А-литероидом, имеет вид аВа. Равенство B3) показывает, что последней бук- буквой слова К является а, т. е. V~3LV'a для некоторого V. Анало- Аналогично из A9) заключаем, что ТЖТ'а для некоторого 7". Но тогда ЬЖТ'аУ'а [B3)] и, значит, 7"ЖД, а V есть непустое слово в алфавите Ь. Следовательно, 5 начинается буквой b [B5)], что противоречит условию^леммы. Это завершает рассмотрение случая 2°. В случае 3Q, когда X~?.R, имеем B6) XLY[S.iXMS [B)],' 9 А. А. Марков, Н.^М. Нагорный
258 и потому B7) СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ LYS.MS ИГЛ. IV [B6)]. Следовательно, L начинается М или М начинается L. Отсюда по 1.3 ЬжМ, а значит, B8) K1S [B7)], и потому X*L*Fs:tf *M*S [(I), B8)]. Таким образом, все случаи 1°—3° рассмотрены. Утверж- Утверждение 1.6 доказано. Отсюда легко следует 1.7. Всякое вхождение А-литероида L в слово RM, где М—А-литероид, a R—слово в АаЪ, не оканчивающееся бук- буквой Ь, имеет один из видов: КМ, где К—вхождение L в R; 7?*L*, причем МЖЬ. 1.8. Всякое вхождение А-литероида L в слово MS, где М—А-литероид, a S—слово в Aab, не начинающееся бук- буквой Ъ, имеет один из видов: МК, где К—вхождение L в S; *L*S, причем M~S.L. 2. Мы определим некоторую „грамматическую категорию" слов в алфавите Aab, называемых «А-вербоидами». Опреде- Определяться эти слова будут двумя следующими правилами построе- построения. Вд 1. Пустое слово считается А-вербоидом. Вд 2. Всякий раз, когда построен А-вербоид X, всякое слово, построенное как XL, где L — любой А-ли- А-литероид, считается А-вербоидом. Слово X будет лишь тогда считаться А-вербоидом, когда об истинности высказывания «X считается вербоидом» можно будет заключить на основании правил Вд 1 и Вд 2, ко- которые мы будем называть правилами построения А-вербоидов. Согласно определению А-вербоидами являются, например, следующие слова: Л, abba, abbbba, abbbaabbba. Процесс построения А-вербоидов естественно распадается на шаги; на каждом из них строится некоторый А-вербоид, причем применяется одно из правил Вд 1 или Вд 2. Mil ПЕРЕВОД АЛГОРИФМА 259 Ввиду такого «индуктивного» характера определения по- аятия А-вербоида — определения путем описания процесса jix построения — для доказательства общих высказываний об |А-вербоидах применим метод индукции по построению, состоя- |щий в следующем. Пусть мы хотим доказать, что всякий А-вербоид удовлетво- удовлетворяет некоторому одноместному вербальному предикату F. [Для этого мы доказываем: во-первых, что Л удовлетворяет F; во-вторых, что всякий раз, когда какой-нибудь А-вер- А-вербоид X удовлетворяет F, всякий А-вербоид XL, где L — какой-нибудь А-литероид, тоже удовлетворяет F. Тогда мы вправе заключить, что всякий А-вербоид удовлетво- : ряет F. В самом деле, прослеживая процесс построения какого-нибудь А-вербоида, мы видим, что на каждом шаге этого процесса строится некоторый А-вербоид, удовлетворяю- удовлетворяющий F. В частности, это относится к последнему шагу процес- процесса, когда получается интересующий нас А-вербоид. Методом индукции по построению легко доказывается сле- следующее высказывание: 2.1. Всякий А-вербоид либо пуст, либо начинается и окан- оканчивается А-литероидом. Иначе говоря, имеем 2.2. Всякий непустой А-вербоид начинается и оканчивается А-литероидом. Методом индукции по построению также легко доказы- доказывается 2.3. Всякое слово вида XY, где X и Y — А-вербоиды, есть А-вербоид. Докажем 2.4. Оба крыла всякого вхождения А-литероида в А-вербоид суть А-вербоиды. Условимся на время доказательства говорить об А-вербоиде X, что он правилен, если оба крыла всякого вхождения А-литероида в X суть А-вербоиды. Требуется доказать, что всякий А-вербоид правилен. А-вербоид Л правилен, так как не существует вхождений А-литероидов в Л. Пусть X — пра- правильный А-вербоид, М — любой А-литероид. Покажем, что А-вербоид ХМ правилен. Пусть Н — какое-нибудь вхождение А-литероида L в ХМ. Согласно 1.7 имеет место одно из двух: 9»
260 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV Г. имеется вхождение К литероида L в X такое, что A) 2°. ПЕРЕВОД АЛГОРИФМА 261 В случае 1° пусть Р—левое крыло К, Q—правое крыло К- Имеем Hs:P*L*QM [A)], и потому крыльями Я являются Р и QM. Здесь Р и Q суть А-вербоиды в силу правильности X. QM также есть А-вербоид согласно Вд 1. Таким образом, оба крыла Я суть А-вер- А-вербоиды. В случае 2° крыльями Я являются X и Л. Оба эти слова суть А-вербоиды. Таким образом, А-вербоид ХМ правилен, что и требовалось доказать. Докажем 2.5. Оба крыла вхождения непустого А-вербоида в А-вербоид суть А-вербоиды. Пусть Я — вхождение непустого А-вербоида Y в А-вер- А-вербоид X. Согласно 2.2 Y оканчивается А-литероидом, т. е. су- существуют слово Z и А-литероид L такие, что B) Y2LZL. Обозначая через Р и Q соответственно левое и правое крылья Я, имеем C) X Ж PYQ 1LPZLQ [B)], откуда следует, что PZ*L*Q есть вхождение А-литероида L в А-вербоид X. Q есть правое крыло этого вхождения, и потому, согласно 2.4, Q есть А-вербоид. Мы доказали таким образом, что правое крыло Я есть А- вербоид. Аналогично усматривается, что левое крыло Я есть А-вербоид. Итак, теорема 2.5 доказана. 2.6. Если X есть А-вербоид, а слово Y таково, что XY есть А-вербоид, то Y есть А-вербоид. В самом деле, #Х#Г есть вхождение X в XY и Y — правое крыло этого вхождения. Если X^lA, to Y есть А-вербоид согласно 2.5. Если же ХЖА, то FsXK, и, следовательно, Y есть А-вербоид, так как XY есть А-вербоид. Аналогично доказывается 2.7. Если Y есть А-вербоид, а слово X таково, что XY есть А-вербоид, то X есть А-вербоид. Методом индукции по построению слова доказывается с по- помощью 1.1 высказывание 2.8. Всякий А-вербоид есть слово в алфавите Aab. 3. Пусть Б — какой-нибудь алфавит, не имеющий общих букв с алфавитом А. Занумеруем его буквы слева направо, начиная с первой, которой припишем номер 1. Ввиду того, что для всякой буквы алфавита Б имеется единственное ее вхож- вхождение в этот алфавит, каждая буква алфавита Б получит един- единственный номер. Номер буквы 1 обозначим v(g). v(g) может быть охарактеризовано как натуральное число, на единицу большее длины левого крыла вхождения | в Б. Каждой бук- букве \ алфавита Б поставим в соответствие слово A) Н(Ъ)^аЬ*®а в двухбуквенном алфавите аЬ. Это слово будем называть Б-пе- реводом буквы |. Кроме того, Ъ-переводом всякой буквы г\ алфавита А будем считать эту самую букву тр где ^б Сп) означает Б-перевод буквы ц алфавита А. Мы таким образом определили Б-перевод всякой буквы алфавита АБ. Очевидно имеем следующие верные выска- высказывания: 3.1. Б-перевод всякой буквы алфавита АБ есть А-ли- А-литероид. 3.2. Б-переводы двух различных букв алфавита АБ раз- различны. Таким образом, имеем верное высказывание 3.3. Если ? и %—буквы алфавита АБ, то ?3?% тогда и только тогда, когда ^б@^б(%). Обозначение ?Б можно рассматривать как знак некото- некоторой операции над буквами алфавита АБ. 4. Операцию tB, определенную до сих пор для букв алфавита АБ, мы теперь распространим на слова этого алфавита, положив A) ?а,б(Л)^Л, B) ZA,B(Pl)^ZA,b(P)tb(t) для любого слова Р в алфавите АБ и для любой буквы ? этого алфавита.
262 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV Очевидно, что C) ?a.b№)s:M? для любой буквы I алфавита АБ; D) ?а, б (PQ) 2 SA. б (Р) (Q) для любых слов Р и Q в алфавите АБ. Результат применения операции !SAi Б к слову Р в алфави- алфавите АБ мы будем называть (А, Ъ)-переводом слова Р. В силу C) это определение согласуется с определением Б-перевода буквы алфавита Б (см. п. 3). Согласно § 33 имеется нормальный алго- алгорифм, перерабатывающий всякое слово в алфавите АБ в (А, Б)-перевод этого слова. Там, где это не будет вызывать не- недоразумений, мы будем писать просто «перевод» вместо «(А, Б)-перевод». Мы будем также опускать индексы Аи Б у букв % и t. 4.1. Перевод всякого слова в алфавите АБ есть А-вербоид. Это доказывается индукцией по построению слова в алфа- алфавите АБ с помощью A), B) и 3.1. 4.2. Переводы всяких двух различных слов в алфавите АБ различны. Для любого натурального числа N обозначим через BN высказывание «каковы бы ни были слова Р и Q в алфавите АБ такие, что [Рд< N и [Qa<N, если %(Р)Ж%@), то P&Q». Через Вр, q обозначим импликацию «если ?(Р) 2 ?((?), то PsQ». Кроме того, введем условие E) «[Р^<# и [<?Й<ЛГ». Высказывание Во верно, так как при [Ра^0 и [Qd^0 имеем РЖ Л и QSA, и потому PSQ. Пусть мы уже убедились в истинности высказывания BN для некоторого натурального числа N. Докажем истинность высказывания BN+1. Пусть слова Р и Q в алфавите АБ удовлетворяют условию F) «[Pa<iV+l и [#><#+Ь. Если эти слова удовлетворяют условию E), то в силу истинности высказывания BN истинно высказывание Вр, q. $41] ПЕРЕВОД АЛГОРИФМА 263 Допустим, что условие E) не удовлетворено. Тогда [Рд = = N+1 или [Qd = N-\-\. He ограничивая общности рас- рассуждения, допустим, что G) [/»=ЛГ + 1. Тогда P^tA, и потому существуют слово R в алфавите АБ и буква ? алфавита АБ такие, что (8) PXRL Имеем (9) %(P)lL%(R)t(l) [(8), B)], A0) [R*=N (И) ?(/>)? Л Допустим теперь, что A2) ? Тогда и потому [() [(8), G)], [(9)]. [A1), A2)] [A)]. Поэтому существуют слово 5 в алфавите АБ и буква г{ алфавита АБ такие, что A3) QJLSi\. Имеем A4) Z(Q)H:Z(S)t(n) [A3), B)]. В силу (9), A4) и A2) t (|) и t (ц) суть концы одного и того же слова. Одно из слов t (?) и / (ц) есть поэтому конец другого. А так как эти слова—А-литероиды [3.1], они совпадают [1.3]. Поэтому A5) &з:.] [3.2]. Имеем A6) Z(R)t(t)-oiZ(S)t(n) [(9), A4), A2)], и, так как ?(?):E^(ri), имеем A7) . %(R)JZ%(S) [A6)]. Ввиду A3) и F) A8)
264 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV Таким образом, соблюдено условие E) с заменой Р и Q на R и 5 соответственно. Ввиду истинности BN отсюда следует истинность высказывания fi«, s- В силу A7) имеем, наконец, A9) B0) [(8), A3), A9), A5)]. Последнее равенство имеет место, коль скоро соблюдено равенство A2). Это означает, что истинна импликация Bp,q. Здесь Р и Q—любые слова в алфавите АБ, удовлетворя- удовлетворяющие условию A2) и условию F). Следовательно, имеет место высказывание BN+ \. Оно верно, коль скоро верно BN. Метод арифметической индукции позволяет нам заключить об истинности всякого высказывания BN. Поэтому равен- равенство B0) имеет место для всяких слов Р и Q в алфавите АБ, для которых имеет место равенство A2). Следовательно, в случае несоблюдения равенства B0) не соблюдается и равенство A2), т. е. слова %(Р) и ?(Q) различны, что и требовалось доказать. Равенство, аналогичное D), имеет место для трех слов: где Р, Q и R—любые слова в алфавите АБ. Это равенство очевидным образом доказывается с помощью D). 5. Как выше, будем предполагать, что звездочка * не является буквой алфавита АБ. Вхождения в алфавите АБ будем по-прежнему трактовать как слова в алфавите АБ* вида /?*P*S, где R, Р и S—слова в АБ. Переводом вхождения i?*P*5 будем называть слово 5.1. Перевод вхождения слова Р в слово Q есть вхожде- вхождение перевода слова Р в перевод слова Q. В самом деле, пусть /?#/>#S, где R, Р и S суть слова в алфавите АБ, есть вхождение слова Р в слово Q. Тогда RPS где и потому A) %(R)Z(P)%(S)H:%(Q), где Z(R), Х(Р), S (S) и X(Q) суть слова в алфавите kab, не содержащем звездочки. Поэтому 2 (R) * А. (Р) * ? (S) яв- i'$41] ПЕРЕВОД АЛГОРИФМА 265 ляется вхождением в алфавите kab с основой д (Р), т. е. вхождением слова 1(Р). & (R)*Z (P)*? (S) есть вхождение в слово %(Q) ввиду A). Докажем высказывание 5.2. Всякое вхождение А-литероида в перевод слова Q в алфавите А Б есть перевод вхождения некоторой буквы алфа- алфавита АБ в слово Q. Доказательство проведем методом индукции по построению слова в алфавите АБ. На время доказательства условимся го- говорить о слове Q в этом алфавите, что оно правильно, если вся- всякое вхождение А-литероида в 3" (Q) является переводом вхож- вхождения некоторой буквы алфавита АБ в Q. Требуется доказать, что всякое слово в алфавите АБ правильно. Пустое слово правильно, так как нет вхождений А-лите- роидов в ?(Л). Пусть для некоторого слова Q в алфавите АБ выяснено, что оно правильно, и пусть г| — буква алфавита АБ. Докажем, что слово Qt] также правильно. Пусть К — какое-нибудь вхождение А-литероида L в %(Qy\). Имеем Z(Q)t{vi) [4B)], где j?(Q)—А-вербоид [4.1], tD\)—А-литероид [3.1]. Согласно 1.7 имеет место одно из двух: Г. Имеется вхождение Н А-литероида L в слово % (Q) B) такое, что K.~5.Ht (ц). 2°. /CS:?(Q)*L*, причем Ь^И(ц). В случае \° Н есть перевод вхождения некоторой буквы % алфавита АБ в слово Q, так как Q правильно. В этом случае, следовательно, C) H3LZ(R)*5( где слова R я S таковы, что /?* буквы ? в слово Q. Имеем RIS1LQ, *5 есть вхождение и, следовательно, /?#|*Sri есть вхождение буквы ? в слово Qr\. Переводом этого вхождения является слово ?(/?)*a(S)*'2:(Sti), т.е. слово К [4B), C), B)]. Таким образом, в случае 1° К является переводом вхождения некоторой буквы алфавита АБ в слово Qx\.
266 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV В случае 2° К есть перевод вхождения Q*r|* буквы ц ал- алфавита АБ в слово Qr\. Мы доказали таким образом, что слово Qr] правильно. Итак, коль скоро правильно слово Q, правильно и всякое слово Qj], где т] — любая буква алфавита АБ. Тем самым вы- высказывание 5.2 доказано. Из 5.2 вытекает 5.3. Всякий А-литероид, входящий ejiepeeod слова Q, есть перевод некоторой буквы слова Q. Докажем 5.4. Если всякий А-литероид, входящий в А-вербоид Q, есть перевод буквы алфавита АБ, то Q есть перевод слова в ал- алфавите АБ. Будем говорить об А-вербоиде Q, что он правилен, если вер- верна импликация «если всякий А-литероид, входящий в Q, есть перевод буквы алфавита АБ, то Q — перевод слова в алфавите АБ». Требуется доказать, что всякий А-вербоид правилен. А-вербоид Л правилен в силу 4A). Пусть Q — правильный А-вербоид и L — А-литероид. Докажем, что А-вербоид QL правилен. Допустим, что всякий А-литероид, входящий в QL, есть перевод некоторой буквы алфавита АБ. Тогда, в частности, всякий А-литероид, входящий в Q, есть перевод буквы алфа- алфавита АБ. Так как Q правильно, Q есть перевод некоторого слова Р в алфавите АБ: D) Q*Z(P). Так как А-литероид L входит в QL, L есть перевод некоторой буквы | алфавита АБ: E) L°:S(g). Следовательно, QLZlZ(Pt) [D), E), 4D)], и мы видим, что QL есть перевод некоторого слова в алфавите АБ. Этим доказана правильность слова QL. Применяя метод индукции, заключаем, что всякое слово в алфавите АБ правильно, что и требовалось доказать. Из высказываний 5.3 и 5.4 вытекает 5.5. Для того чтобы А-вербоид Q был переводом слова в ал- алфавите АБ, необходимо и достаточно, чтобы всякий А-литеро- 1$411 ПЕРЕВОД АЛГОРИФМА 267 Ьид, входящий в Q, был переводом некоторой буквы алфави* fma АБ. Докажем ,: 5.6. Всякий А-вербоид, входящий в перевод какого-нибудь .слова в алфавите АБ, сам есть перевод некоторого слова в алфа- алфавите АБ. В самом деле, пусть А-вербоид Q входит [в ?(Р), где Р—слово в алфавите АБ. Всякий А-литероид, входящий в Q, входит тогда в ?(Р) и потому является переводом некоторой буквы алфавита АБ [5.3]. Отсюда следует, что Q есть перевод слова в алфавите АБ [5.5]. 5.7. Если Q и S—слова в алфавите АБ и QjtA, то всякое вхождение перевода Q в перевод S есть перевод неко- некоторого вхождения Q в S. Пусть выполнены условия теоремы 5.7. Рассмотрим какое-нибудь вхождение К перевода Q в %(S). Пусть Т и U суть соответственно левое и правое крыло К- Имеем F) /C3:r*S;(Q)*t/. ?(S) и ?(Q) суть А-вербоиды [4.1], причем %(Q)^A, так как Q^lA [4.2, 4A)]. Поэтому Т и U также суть А-вер- А-вербоиды [2.5]. Ввиду F) имеем Следовательно, Т и U входят в А-вербоид j?(S), а поэтому являются переводами некоторых слов в алфавите АБ [5.6]. Пусть G) (8) где Р и R—слова в алфавите АБ. Имеем /C3:2;(P)*3:(Q)*3;(tf) [F), G), (8)], т. е. К является переводом вхождения P#Q*# и теорема доказана. Докажем 5.8. Если Q и S—слова в алфавите АБ, то &(Q) тогда и только тогда входит в %(S), когда Q входит в S. Заметим, что при QjlA формулировка теоремы 5.8 ста- становится тривиальной, так как тогда j?(Q)I?A [4A)] и Q входит в S; a ?(Q) в ?(S). Пусть теперь Q^A. Если Q входит в S, то имеется вхождение К слова Q в слово S и перевод К является вхождением перевода в перевод 5 [5,1]. Следовательно, 5 (Q) входит тогда в ?( Q Q
268 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV Обратно, если % (Q) входит в ? E), то имеется вхожде- вхождение Я слова %(Q) в слово %(S). H является переводом некоторого вхождения слова Q в слово 5 [5.7]. Следова.- тельно, Q входит тогда в 5. Теорема 5.8, таким образом, доказана. Докажем теорему 5.9. Если Q и S—слова в АБ, то перевод слова S тогда и только тогда начинается переводом слова Q, когда слово S начинается словом Q. Это высказывание также тривиально при Q3TA. Пусть ?A Если S начинается словом Q, то имеется слово R в ал- алфавите АБ такое, что (9) S1LQR. Имеем тогда [4D)] и, следовательно, слово %.(S) начинается словом S(Q). С другой стороны, пусть слово j?(<S) начинается словом ?(Q). Тогда имеется слово Г [в алфавите kab такое, что Поэтому есть вхождение слова %(Q) в слово %{S). Так как это вхождение является переводом некоторого вхождения К слова Q в слово 5 [5.7]. Переводом левого крыла К является левое крыло вхождения #?(Q)#7, т. е. А. Отсюда следует, что левое крыло К пусто [4B)], т. е. что К. имеет вид *Q*7?. Так как К—вхождение Q в S, имеет место равенство (9). Следовательно, 5 начинается словом Q, что и требовалось доказать. Докажем теорему 5.10. Пусть Q и S—слова в алфавите АБ, К и Я— вхождения Q в S. Если К предшествует Я, то ?(/С) пред- предшествует ? (Я). Пусть Р и Т—левые крылья вхождений К и Я соот- соответственно. Тогда Р есть собственное начало Т, так как К предшествует Я. Поэтому имеется непустое слово R та- такое, что A0) T&PR. Имеем SG)ЗЕ?(/>)$(*) [A0), 4D)]. $41] ПЕРЕВОД АЛГОРИФМА 269 Здесь ?G?):/: А, так как R^lA [4.2, 4A)]. Следовательно, %(Р) есть собственное начало ?G"). Но, по определению перевода вхождения, & (Р) есть левое крыло перевода К, а %{Т)—левое крыло перевода Я. Вместе с тем переводы К и Я суть вхождения перевода Q в перевод S [5.1]. Таким образом, перевод К предшествует переводу Я, что и требовалось доказать. Отсюда вытекает 5.11. Если Q и S—слова в алфавите АБ, то разные вхождения Q в S имеют разные переводы. Докажем теперь 5.12. Если Q и S—слова в алфавите АБ, К и Н—вхож- Н—вхождения Q в S, то перевод К тогда и только тогда предше- предшествует переводу Н, когда К предшествует Н. В самом деле, если К предшествует Я, то перевод К предшествует переводу Я [5.10]. Обратно, пусть %{К) пред- предшествует % (Я). Тогда %(К)~?.%{Н), и потому Kj?H. Сле- Следовательно, К предшествует Я или Я предшествует К- Однако вторая возможность отпадает, так как тогда %{Н) предшествовал бы %(К) [5.10] вопреки предположению о том, что % (К) предшествует ?(Я). Следовательно, К предшествует Я, что и оставалось доказать. Теоремы 5.1, 5.11 и 5.12 показывают, что при Q 5 и ?(Q) Теоремы 5.1, 5. и , между вхождениями Q в 5 и вхождениями е (S) между вхождениями Q д () имеется взаимно однозначное соответствие, сохраняющее порядок. Оно сопоставляет всякому вхождению слова Q в слово 5 перевод этого вхождения. 5.13. Если S—слово в алфавите АБ и Q входит в S, то первое вхождение перевода Q в перевод S есть перевод первого вхождения Q в S. В самом деле, пусть выполнены условия этой теоремы. Тогда имеется первое вхождение Q в S. Обозначим его буквой К и покажем, что перевод К является первым вхождением ?(Q) в ?(S). Перевод К является вхождением %{Q) в %{S) [5.1]. Если QSA, то ?(Q):SA [4.1], #2:**S и переводом К является вхождение #*&(S). Следовательно, перевод К есть первое вхождение %{Q) в %{S). Пусть теперь Q^A. Пусть Я — какое-нибудь вхождение перевода Q в перевод S, отличное от перевода К- Я есть пере- перевод некоторого вхождения G слова Q в слово 5 [5.7]. G отлично от К, так как перевод G отличен от перевода К- Поэтому, так как К — первое вхождение Q в S, К предшествует G, а пере- перерод К — переводу G [5.10], т. е. И. Таким образом, перевод /С
270 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV ПЕРЕВОД АЛГОРИФМА 271 предшествует всякому отличному от К вхождению перевода Q в перевод S, т. е. перевод К есть первое вхождение перевода Q в перевод S, что и требовалось доказать. 5.14. Пусть S, Q и U суть слова в алфавите АБ. Если Q входит в S, то перевод результата подстановки U вместо пер- первого вхождения Q в S совпадает с результатом подстановки перевода U вместо первого вхождения перевода Q в перевод S. В самом деле, пусть Q входит в S и К—первое вхож- вхождение Q в S. Перевод К есть тогда первое вхождение 2; (Q) в ?(S) [5.13]. Пусть IC?.P*Q*R. Тогда перевод К есть вхождение Z(P)*1(Q)*%(R), результат подстановки V вместо К есть слово PUR, а пере- переводом результата подстановки U вместо первого вхождения Q в S является слово &(P)%(U)%(R), совпадающее с ре- результатом подстановки & (U) вместо перевода К- 5.15. Ж(Р)ЖР для всякого слова Р в алфавите А. Это доказывается методом индукции по построению слова с помощью 4B) и 3B). 5.16. Перевод всякого слова в алфавите АБ есть слово в алфавите Aab [4.1, 2.8]. 6. Пусть А и Б—алфавиты без общих букв, не содер- содержащие звездочки, стрелки и точки. Пусть, кроме того, А не содержит букв а и Ъ. Тогда, как указано выше, может быть определена операция перевода % слов в алфавите АБ. Результатом ее применения к слову Р в алфавите АБ явля- является «перевод» % (Р) слова Р, являющийся некоторым А- вербоидом [4.1]. Будем называть слово %.(Р) -^l?(Q), где Р и Q—слова в алфавите АБ, переводом простой формулы подстановки Р —<- Q в алфавите АБ. Будем называть слово & (Р) —*- • % (Q), где Р и Q—слова в АБ, переводом заключительной фор- формулы подстановки P-+-Q. Перевод формулы подстановки F будем обозначать ?(/*"), распространяя, таким образом, область действия операции ? на формулы подстановок. 6.1. Перевод простой формулы подстановки в алфавите АБ есть простая формула подстановки в алфавите Aab; перевод заключительной формулы подстановки в алфавите АБ есть за- заключительная формула подстановки в алфавите Aab [5.16]. 6.2. Формула подстановки F в алфавите АБ тогда и только тогда действует на слово Р в алфавит? А Б, когда ее перевод действует на перевод Р [5.8]. ¦ 6.3. Если формула подстановки F в алфавите АБ действует I на слово Р в этом алфавите, то перевод результата действия F на Р есть результат действия %{F) на %{Р) [6.2, 5.14]. Заменяя в схеме 5 алгорифма Щ, каждую формулу подста- подстановки ее переводом, мы получаем фигуру, являющуюся схе- схемой некоторого нормального алгорифма в алфавите Aab [6.1]. Этот однозначно определенный нормальный алгорифм мы бу- будем ^называть переводом нормального алгорифма §1. 6.4. Перевод нормального алгорифма 91 есть нормальный алгорифм в алфавите Aab. Перевод алгорифма §1 мы будем обозначать буквой 33, его схему — буквой Т. Между строками схемы 5 и строками схемы Т имеет место очевидное взаимно однозначное соответствие, сохраняющее порядок. Строку схемы Т, соответствующую данной строке С схемы S, мы будем обозначать знаком С. Имеем, по определению перевода нормального алгорифма, следующие верные высказывания: 6.5. Всякий раз, когда в строке С схемы S записана формула подстановки F, в соответствующей строке С схемы Т записан перевод F. 6.6. Строка D схемы S расположена выше строки С этой схемы тогда и только тогда, когда строка D схемы Т располо- расположена выше строки С схемы Т. Докажем высказывание 6.7. Всякий раз, когда формула подстановки F схемы S активна на слове Р в схеме S, формула подстановки Z(F) активна на слове %(Р) в схеме Т. В самом деле, пусть формула подстановки F схемы S активна на слове Р в схеме 5. Тогда F действует на Р и имеется строка С схемы 5 такая, что в ней записана фор- формула подстановки F и что ни в какой выше стоящей строке схемы 5 не записана формула подстановки, действующая на Р. В строке С схемы Т записана формула подстановки ?(F) схемы Т [6.5], действующая на % (Р) [6.2]. Пусть Е— какая-нибудь строка схемы Т, расположенная в Т выше С. Е соответствует некоторой строке D схемы 5, т. е. Е есть D. В D записана некоторая формула подстановки G схемы S. В D, т. е. в Е, записана формула подстановки % (G) схемы Т [6.5]. Строка D расположена в схеме 5 выше строки С, так как строка Е расположена выше строки С в схеме Т [6.6]. Формула подстановки G схемы 5, записанная в строке D,
272 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV ПЕРЕВОД АЛГОРИФМА 273 не действует на слово Р, так как строка D, в которой записана формула G, расположена выше С. Поэтому фор- формула 2: (G) не действует на 3: (Р) [6.2]. Мы доказали, таким образом, что в каждой строке, расположенной в схеме Т выше С, записана формула подстановки, не действующая на Ж (Р). Этим завершено доказательство активности фор- формулы подстановки 3; (F) на слове % (Р) в схеме Т. Докажем 6.8. Всякий раз, когда формула подстановки F схемы S такова, что формула Ж (F) активна на слове Ж (Р) в схемё(Г, F активна на слове Р в схеме S. (Здесь Р—любое слово в АБ.) В самом деле, пусть Р—слово в алфавите АБ, F—фор- F—формула подстановки схемы S, и пусть формула Ж (F) активна на слове Ж (Р) в схеме Т. Покажем, что F активна на Ръ S. Так как Z(F) активна на Ж(Р) в схеме Т, 5?(F) дейст- действует на Ж (Р), и потому F действует на Р. Имеется строка Е схемы Т такая, что в ней записана формула X(F) и что во всякой строке схемы Т, расположенной выше Е, запи- записана формула, не действующая на & (Р). Строка Е соответ- соответствует некоторой строке С схемы S. Для этой строки С строка Е есть С. Пусть в какой-нибудь строке D, распо- расположенной в схеме 5 выше С, записана формула подстановки G. Тогда в D записана формула 3;(G) [6.5]. Строка D распо- расположена в схеме Т выше строки Е, так как в схеме S стро- строка D расположена выше С [6.6]. Поэтому формула, записан- записанная в строке D, не действует на 3; (Р) и потому формула, записанная в строке D, т. е. G, не действует на Р [6.2]. Мы доказали, таким образом, что во всякой строке, рас- расположенной в схеме 5 выше С, записана формула подста- подстановки, не действующая на Р. Этим завершено доказатель- доказательство активности формулы F на слове Р в схеме 5. Тем самым теорема 6.8 доказана. 6.9. Если 31: P\-Q, mo 23: %(P)l-%(Q). В самом деле, пусть 31: Р \— Q. Тогда существует про- простая формула подстановки F схемы 5, активная на Р в S и такая, что Q есть результат действия F на Р. Ж (F) есть простая формула подстановки схемы Т [6.1], актив- активная на Ж(Р) в Т [6.7]. X(Q) есть результат действия &(Л на Ж(Р) [6.3]. Поэтому 23: %(P)\-?(Q). 6.10. Если 31: PH--Q, то 23: Ж(Р)\--Ж(С}). Это доказывается аналогично предыдущему. 6.11. Если 23: Ж(Р)\-Ж@), где Р и Q—слова в алфа- алфавите АБ, то 21: "' " ! В самом деле, пусть S3: 1 (Р) \-- & (Q), где Р и Q — слова в алфавите АБ. Тогда существует простая формула подста- подстановки G схемы Т, активная на &(Р) в Т и такая, что ? (Q) есть результат действия G на д (Р). Согласно построению Схемы Т формула G есть перевод некоторой формулы под- подстановки F схемы 5. F также есть простая формула под- подстановки [6.1]. Так как X(F), т. е. G, активна на %{Р) в Т, F активна на Р в 5 [6.8]. F действует на Р. Пусть Н — результат действия F на Р. % (Н) есть результат дей- действия ~Z(F), т. е. G, на Х(Р). Следовательно, X (Н) Ж J(Q) и H~§:Q [4.2]. Таким образом, Q есть результат действия формулы F на Р. При этом, как мы видели, F активна на Р в 5. Следовательно, 31: P\--Q, что и требовалось доказать. 6.12. Если 23: Ж (Р) \- ¦ % (Q), где Р и Q—слова в алфа- алфавите АБ, то St: P[-~Q. Это доказывается аналогично предыдущему. 6.13. 31: Р~] тогда и только тогда, когда 23: ?(РI [6.2]. 6.14. Если 21: P\=Q, то 93: %(P)\=Z(Q). Это доказывается методом индукции по шагам работы алгорифма 31 с помощью 6.9. 6.15. Если 93: Ж. (Р) \— X, то существует слово Q в алфа- алфавите АБ такое, что XS^(Q) u$l: P\--Q. Пусть, в самом деле, 93: & (Р) [— X. Р является здесь словом в алфавите АБ. Схема Т действует на слово Ж(Р). Поэтому схема S действует на Р [6.2]. Обозначим буквой Q результат действия 5 на Р. Имеем 3t: P\—Q или 31: Р (— Q. Однако в случае ЗС: P^--Q мы имели бы 93: Z(P) \— -1(Q ) [6.10], что несовместимо с нашим исходным предположе- предположением. Таким образом, 3l: P\—Q, и потому 93: 3;(Р) (— &(Q) [6.9]. Так как при этом 93: 5(Р)\—Х, имеем X 2 ? (Q), что и оставалось доказать. 6.16. Если 93: %(Р)\—-Х, то существует слово Q в ал- алфавите АБ такое, что XS1%(Q) и Щ,: P\--Q. Это доказывается аналогично предыдущему. 6.17. Если 93: %(Р)\=Х, то существует слово Q в ал- алфавите АБ такое, что XsJ;(Q) и 31: P\=Q. Это доказывается с помощью высказывания 6.15 методом индукции по шагам работы алгорифма 93. 6.18. Если 93: 2 (Р) \= Ж (Q), то 31: P\=Q. Это следует из высказываний 6.17 и 4.2. 6.19. 21: P\=Q тогда и только тогда, когда 93: ? (Р)\=Ж (Q) [6.14, 6.18].
274 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV 6.20. 21: P|=Q~] тогда и только тогда, когда 23: Z(P)\=±(Q)-\ [6.19, 6.13]. 6.21. 21: Pj=-Q тогда и только тогда, когда 23: %(P)\=-Z(Q) [6.19, 6.10, 6.12]. 6.22. 2l(PJQ тогда и только тогда, когда 23 ('?(/>)) 2 3E2:(Q)[6.20, 6.21]. 6.23. Если Р и Q—слова в алфавите А, то 2C(P)s:Q тогда и только тогда, когда 23(P)SIQ [6.22, 5.15]. 6.24. Если 23: 3:(Р)^=-Х, то существует слово Q в ал- алфавите АБ такое, что XS3;(Q) и 21: P|=-Q- В самом деле, в этом случае существует слово R в алфа- алфавите Aab такое, что 23: %(P)\=R и что 23: R \—-Х. Сущест- Существует слово W в алфавите АБ такое, что R1L%(W) и что 21: Р \= W [6.17]. Имеем 23: %(W)\-- X. Поэтому существует слово Q в алфавите АБ такое, что X3E&(Q) и что 21: W \— Q [6.16]. Имеем 2t: P\=Q, что и оставалось дока- доказать. 6.25. Если 23: % (Р) (= X ~], то существует слово Q в алфа- алфавите АБ такое, что X2?(Q) мчто21:Р)=<2 [6.17, 6.13]. 6.26. Если 23(&(Р)JХ, то существует слово Q в алфа- алфавите АБ такое, что X~3i?(Q) и что 21 (РJQ [6.24, 6.25]. 6.27. Алгорифм 21 тогда и только тогда применим к слову Р в алфавите А, когда к этому слову применим ал- алгорифм 23 [6.22, 5.15]. 6.28. Алгорифмы 21 и 23 сильно эквивалентны относи- относительно алфавита А [§ 26.6, 6.23, 6.27]. 7. В высказывании 6.28 21 и 23 суть нормальные алго- алгорифмы, причем 21 есть алгорифм в алфавите АБ, а 23 стро- строится определенным образом по данным А, Б и 21 как нор- нормальный алгорифм в алфавите Aab. Относительно букв а и b при этом предполагается, что они не входят в алфа- алфавит А. Алгорифм 23 оказывается сильно эквивалентным алгорифму 21 относительно алфавита А. Очевидно, что в этой конструкции буквы а и Ъ могут быть заменены любыми двумя различными буквами. Это дает следующую теорему приведения: 7.1. Каков бы ни был нормальный алгорифм Ж над алфа- алфавитом А и каковы бы ни были отличные друг от друга буквы аир, не входящие в А, может быть построен нор- нормальный алгорифм 23 в алфавите Аар\ сильно эквивалент- эквивалентный алгорифму 21 относительно алфавита А. 8. Путем усложнения операции перевода алгорифма одну дополнительную букву в теореме 7.1 можно сэконо- сэкономить. Действительно, имеет место следующая усиленная ПЕРЕВОД АЛГОРИФМА приведения (см. Н. М. 275 Нагорный [1], теорема [2]*)): 8.1. Пусть А —непустой алфавит, а а —буква, не при- принадлежащая А. Всякий нормальный алгорифм 21 над алфа- алфавитом А сильно эквивалентен относительно А некоторому нормальному алгорифму 23 в Аа. В самом деле, пусть 21—нормальный алгорифм в алфа- алфавите АБ, где А и Б не имеют общих букв. Пусть а—буква, не принадлежащая А. Обозначим через а,- и b: i-e буквы алфавитов А и Б соот- соответственно и определим следующую операцию перевода алфавита АБ • в алфавит Аа: [а|^аа,а A^/^[Ад), [b]^aa{+ia Г • * -^= оса^а, (здесь Р обозначает произвольное слово в АБ-, а ?—про- ?—произвольную букву этого алфавита). Пусть F=^P—>-6Q—формула подстановки в алфавите АБ (здесь ба:- или б&А). Перевод F определим так: ( [Рх —¦¦ [6QT , если L "~\аа?а—*aaJa[6QT, если Построим 21'—замыкание алгорифма 21. Пусть S означает схему, получающуюся в результате поформульного пере- перевода схемы алгорифма ЗГ. Определим теперь в алфавите Аа нормальный алго- алгорифм 23 следующей сокращенно записанной схемой: [1хаа\а — \х\хаа\а — аа\(ша\а — 6 - aajaaaja, *) В этих работах утверждение, соответствующее нашей теореме 8.1, формулируется для отношения эквивалентности относительно А. Однако приводимая там конструкция фактически годится и для наших целей. Мы Воспроизводим ее с необходимыми изменениями и с небольшим упрощением,
276 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV где переменные |, г\ и ? пробегают алфавиты А, Б и АБ соответственно. Покажем, что алгорифм 21 сильно эквивалентен 33 отно- относительно А. Предполагая, что у читателя накопился необ- необходимый опыт, мы в основном ограничимся формулиров- формулировками требующихся здесь лемм и не будем вдаваться в де- детали доказательств. 8.2. Перевод любого непустого слова Р в АБ есть соеди- соединение слов вида аар. A<г<[Ад) и аа{+4а A</<[Бд), и потому слова аа\а, сш\а и аа{а в [Р1 не входят. 8.3. Первым вхождением аа*а? в слово aafa[Qxaafab,R является вхождение aa\a[Qx-kaalal,* R (Q, R— слова в А, ?—буква этого алфавита). 8.4. Первым вхождением <ш\а в слово аа\а [Qxaafa явля- является вхождение aaia[QT*aa*a* (Q — слово в А). 8.5. Первым вхождением aala[t,T в слово аа\а [Qxaa\a[ttRx является вхождение aa?a[QT#aafa[?T#[#T (Q, R — слова в АБ, Z,—буква этого алфавита). 8.6. Первым вхождением [gTaa?a в слово а,а\а [Qt^aafaR является вхождение оиг\а [Qx*[?xaala-*.R (Q, R—слова в АБ, ?—буква этого алфавита). Пусть R, Т и S—слова в АБ и Г JA. Образом вхож- вхождения R*T*S будем называть вхождение 8.7. Непустое слово Т в алфавите АБ тогда и только тогда входит в слово Р в этом алфавите, когда [Тх входит в аа\а [Рх. 8.8. Если непустое слово Т входит в слово Р в алфа- алфавите АБ, то образом первого вхождения Т в Р является первое вхождение [Тх в аа(а[Рх. Из рассмотрения схемы алгорифма 23 следует, что 8.9. Алгорифм 23 замкнут. 8.10. В левую часть любой формулы подстановки схемы алгорифма 23, кроме последней, входит а. Сформулируем, далее, следующие утверждения: 8.11. Если Р—слово в А, то 23: Р h аа\(ша\(хР. 8.12. Если Р—слово в А, то 23: аа\<жа\<хР |= aafa [Pxaa\a. 8.13. Если Р—слово в К, то $: аа\а[Рхаа\а\-аа\а\Рх [8.4], ;$41] ПЕРЕВОД АЛГОРИФМА 8.14. Если Р—слово в А, то 23: P^aala^ [8.11, 8.12, 8.13]. 8.15. Если R и S—слова в АБ, то 23: aala[Rxaala[Sx \=aa\a[RSxaa\a. 8.16. Если Q—слово в АБ, R—слово в А, то 23: aa\a\Qx [Rxaa\a\=aa\a[QxauiiaR. 8.17. Если Q, R—слова в АБ, ц—буква Б, то 23: aa?a[QT [r]xaaiaR \-'aa\a[Qx [v\xaalaR. 8.18. Если Q—слово в АБ и [QB^:A*), то 277 определено и не является словом в А. В самом деле, пусть выполнено условие леммы. Тогда QJLRr\S, где т]—буква Б, а 5—слово в А. Но тогда аа\а [ Q х аа\а ^ аа\а [Rx [r\x [Sx aa\a, 23: aala[Rx[r\x[Sxa^,\=(wla[Rx[r\xaataS [8.16], [- • аа\а[Rx [rf aalaS [8.17], откуда и вытекает утверждение леммы. 8.19. Если Q—слово в А, то 23: aa\aaa\aQ \—-Q. Сформулируем теперь некоторые леммы, связывающие работу алгорифма 23 с работой алгорифма §1'. 8.20. Если ЗГ P[-Q, то 23: aala[Px\- aa\a[Qx. 8.21. ЕслиЩ.': P\=Q, то 23: аа\а[Рх\= aa\a[Qx [8.20]. 8.22. Если Ж: P\--Q, то существуют слова R и S та- такие, что RSQ 23: aa\a [Px \- aa\a [Rx aa\a [Sx. 8.23. Если ЗГ: P\--Q, mo 33: aa\a\Px ^= aa\a[Qxaa\a [8.22, 8.15]. 8.24. Если 31": P\=-Q, mo 33: <xa\a\Px ^= aa\a[Qxaa\a [8.21,8.23]. 8.25. Если P—слово в А и 31': P\=-Q, mo 23: P\=aa\a[Qxaa\a [8.14, 8.24]. *) Напоминаем, что [QB означает проекцию слова Q на алфавит Б,
278 СОЧЕТАНИЯ НОРМАЛЬНЫХ АЛГОРИФМОВ [ГЛ. IV ЗГ 8.26. Если Р, Q—слова в A u%l{P)X.Q, mo%(P)&Q. В самом деле, пусть выполнены условия леммы. Тогда p|=.Q и, следовательно, 23: />|=aaJa[Q*ea;a h-Q [8.25] [8.16] [8.19], откуда и вытекает утверждение леммы. 8.27. Если Р—слово в А и алгорифм 31 применим к Р, то 23 также применим к Р. В самом деле, пусть выполнены условия леммы. Тогда 3l(PJQ для некоторого Q в АБ. Допустим, что Q — слово в А. Тогда утверждение леммы вытекает из 8.26. Предположим теперь, что Q не есть слово в А. Тогда [QB^A, и так как ЗГ: P\=-Q, то 33: [8.25]. Но 33 (aala[Qxаа\а) определено [8.18], а это означает, что 23 применим к Р и в этом случае. Тем самым лемма 8.27 доказана. 8.28. Если Р—слово в А и 33 применим к Р, то 81 также применим к Р. В самом деле, пусть выполнены условия леммы. Так как 33: P|=aa?a[P* [8.14], то Обозначим через N число шагов, за которое 23 перераба- перерабатывает aala [Рх в 23 (Р). В силу леммы 8.20 ЗГ не может совершить, исходя из Р, более N простых шагов. Значит, ЗГ, а потому и 31, применим к Р, что и требовалось дока- доказать. 8.29. Если Р, Q —слова в А и 23 (Р) Ж Q, то 31 (Р) 2 Q. В самом деле, пусть Р, Q—слова в А, и пусть Ъ(Р)Ж Q. Тогда 21 применим к Р. Пусть 31 (Р) гR. Тогда ЗГ: Р(=•/?. Но тогда 33: аа?а|7*|=аа}а[Л'аа?а [8.24]. Предположим теперь, что [7?Б^Л. Тогда в силу 8.18 ( $ 41] ПЕРЕВОД АЛГОРИФМА определено и не является словом в А. Но 279 и, значит, Q не является словом в А, что противоречит условию леммы. Таким образом, [^БдЛ, т. е. R есть слово в А. Но тогда в силу 8.26 23 (Р)SIR. Значит, 31 (РJ 23(Р), что и оставалось доказать. 8.30. ЗХ сильно эквивалентен 23 относительно А [8.26, 8.29, 8.27, 8.28]. Таким образом, теорема 8.1 доказана. Дальнейшее усиление теоремы приведения в направле- направлении дальнейшего уменьшения числа дополнительных букв, как уже отмечалось в начале параграфа, невозможно. 9. Теорема 6.22 доказана нами для некоторой конкрет- конкретной операции 'J перевода слов. Г. И. Сыркин [1] нашел необходимые и достаточные условия, которые нужно нало- наложить на произвольную операцию 3: побуквенного кодиро- кодирования слов в алфавите АБ для того, чтобы она сохраняла формулировку этой теоремы.
ГЛАВА V 142] ФОРМУЛИРОВКА ТЕОРЕМЫ 281 УНИВЕРСАЛЬНЫЙ АЛГОРИФМ В этой главе мы построим нормальный алгорифм над дан- данным произвольным алфавитом А, способный в известном смыс- смысле выполнить работу любого алгорифма в А,— «универсаль- «универсальный алгорифм» для алфавита А. Универсальный алгорифм, как и любой другой нормальный алгорифм, будет допускать в качестве исходных данных произ- произвольные слова в своем алфавите. Однако мы будем интересо- интересоваться лишь тем, как он работает над словами специального типа, являющимися комбинациями слов в А с линейно запи- записанными [§ 25.4] схемами нормальных алгорифмов в А. Здесь применяется тот же самый метод, что и в современных вычис- вычислительных машинах дискретного действия: не только исход- исходные данные, но и предписания, устанавливающие последова- последовательность применяемых действий, записываются в виде слов в надлежащем алфавите и вводятся в машину, способную „раз- „разбираться" в записанных предписаниях и выполнять их. Воз- Возможность такой записи предписаний обеспечивается их стан- стандартизацией, чему соответствуют у нас схемы нормальных ал- алгорифмов. Существование универсального алгорифма является цент- центральным фактом общей теории алгорифмов — читатель вскоре сумеет оценить его важность. Разумеется, факт этот не яв- является специфической особенностью теории нормальных алго- алгорифмов: теоремы, аналогичные нашей теореме §42.1.1, были известны для машин Тьюринга и для рекурсивных функций практически с момента выработки соответствующих понятий. § 42. Формулировка теоремы об универсальном алгорифме 1. Перейдем теперь к точной формулировке теоремы об универсальном алгорифме. Мы будем считать фиксированным некоторый непустой *) алфавит А такой, что попарно различные буквы а, р, у и *) Случай, когда алфавит А пуст, малоинтересен, и мы его не рассмат- рассматриваем. В пустом алфавите имеется лишь два неэквивалентных друг другу нормальных алгорифма, и оба они тривиальны. 8 не входят в А. Говоря о схемах нормальных алгориф- алгорифмов в А, мы будем иметь в виду ¦у-схемы в алфавите Асф [§ 25.4] с обычным изображением формул подстановок. Схему нормального алгорифма 31 в алфавите А мы будем [называть изображением алгорифма Ж. Изображение алго- * рифма мы будем обозначать символом 31й. Слово в алфавите Аоф-уб вида A) ЗО6Р, где 31—нормальный алгорифм в А, Р—слово в А, изобра- изображает пару «алгорифм 31 и слово Р» в том смысле, что оно этой парой однозначно определяется и само ее однозначно определяет. Первое очевидно, а второе ясно из того, что Р есть правое крыло единственного вхождения б в ЗО8Р, §0—левое крыло этого вхождения, а алгорифм 31 опреде- определяется однозначно по 90. К парам вида A) естественно применять предписание: «построив по паре ЗО6Р слово Р и алгорифм 31, применить затем 31 к Р». Это предписание само составляет некоторый алгорифм, перерабатывающий ЗО6Р в 31 (Р), если алгорифм Ж применим к Р, и неприменимый к этому слову, если алгорифм Ж неприменим к Р. Возникает вопрос о возмож- возможности оформления такого алгорифма как нормального. Положительный ответ на этот вопрос дает следующая теорема. 1.1. Теорема об универсальном алгорифме. Может быть построен такой нормальный алгорифм Ц над Аа$у8, что условное равенство B) ¦ U CO6P) ~ 3t (P) имеет место для любых слов Реки нормальных алгориф- алгорифмов Ж в к. Доказательство этой теоремы составляет главное содержа- содержание настоящей главы. В настоящее время может быть предложено несколько раз- различных доказательств этой теоремы, опирающихся на пред- предшествующие доказательства ее аналогов, в которых понятие изображения нормального алгорифма определялось чуть-чуть иначе. Первое по времени доказательство принадлежит А. А. Маркову A951 г.). Подробное изложение его составляет IV главу его монографии [2]. В нем указывается основанный на теоремах сочетания прозрачный способ построения схемы универсального алгорифма, но сама схема в явном виде не вы- выписывается и сложность ее (см. § 31.3 данной книги) не~оцени-
282 УНИВЕРСАЛЬНЫЙ АЛГОРИФМ [ГЛ. V СЛУЧАЙ ДВУХБУКВЕННОГО АЛФАВИТА 283 вается. Второе по времени A958 г.) доказательство принадле- принадлежит Э.С.ОрловскомуШ.В нем приводится явная конструк- конструкция схемы универсального алгорифма, причем сложность схе- схемы оказывается квадратично зависящей от п, где п — число букв алфавита А. Впоследствии A973 г.) Д. А. О с т р о у х о в [2] построил универсальный алгорифм со сложностью 10я+ -|-const, а В. Г. Ж а р о в [2] — со сложностью 5n+const A974 г.). В последних двух доказательствах, рассчитанных на первоначальное определение изображения, аддитивные кон- константы подсчитаны: они равны 426 и 296 соответственно. При переходе к определению изображения, принятому в данной книге, значения констант несколько изменились бы, однако это не затронуло бы значений коэффициентов при п. Конструкция и доказательство, приводимые ниже,— с точ- точностью до деталей, ответственность за которые берет на себя второй из авторов книги,—¦ восходят к В. Г. Жарову. Сначала в § 43 строится вспомогательный алгорифм Ш, являющийся легкой модификацией универсального алгорифма для двух- буквенного алфавита ab, а затем в § 44 с его помощью путем надлежащего кодирования строится универсальный алгорифм для произвольного алфавита. § 43. Случай двухбуквенного алфавита 1. Мы введем буквы а, Ь, к, X, \i, v, л, a, ф, op, и, попарно различные и отличные от букв алфавита Асф-уб* Мы введем также «двойники» *) а, Ь, р, X, ц, л, ф, тоже попарно различные и отличные от всех упоминав- упоминавшихся предшествующих букв. Кроме того, нам будет удобно положить а ==ь а. Алфавит'аЬ мы обозначим^буквой Ао, а алфавит Aop^fwp— буквой Б. Посредством S3 мы обозначим нормальный алгорифм в алфавите ББауу<тл:г|хок со следующей сокращенно записан- эй схемой: *) Ср. §37.2. cpv vcp Ф Xv Xxy Ф ¦ or т,Ь фг|}—+к фй) —->- Я X—>V Р —> vct Си —>¦ Л'СОфОр <20> <22> <23> <24> <25> <26>, где I пробегает алфавит Ао, т)—алфавит Аооф, g—алфавит А0офу, 6—алфавит Аоар><°. i—алфавит Аоаруфю, a %—ал- %—алфавит оф. Строки схемы алгорифма $ мы для удобства ссылок нумеруем, и в дальнейшем индекс i в записи Ш: X \- Y будет указывать на номер строки, представляющей фор- формулу подстановки, активную на слове X.
284 УНИВЕРСАЛЬНЫЙ АЛГОРИФМ [ГЛ. V 2. Мы стремимся показать, что имеет место следующая теорема. 2.1. Для любого нормального алгорифма 31 в алфавите Ао и для любого слова Q в этом алфавите имеет место условное равенство (Здесь ЭГ означает замыкание алгорифма 31 [§ 36.2].) Следующие ниже леммы 2.2—2.5 в общих чертах прояс- проясняют работу алгорифма 33. 2.2. Если 31—нормальный алгорифм в Ао, a Q—слово в Ао, то 58: 2.3. Если U—слово в Aoaffycpi|xo, то 33: 2.4. Если L и N—слова в алфавите &<р$у, М—слово в А0оф, a Q и S—слова в Ао такие, что Q не входит в S, то 23: 2.5. Если L и N—слова в А0офу, Q, R и S—слова в Ао и если Q входит в S, то а) 33: LX\iQaRyN(>)q>tyS\=LQaRyNu)l,(R, Q,S); б) 23: Llk\iQ^RyNoxp^S\=nI,(R, Q,S). Теорема 2.1 следует из лемм 2.2—2.5. В самом деле, пусть 31 — нормальный алгорифм в алфа- алфавите Ао. Тогда ЗГИ имеет вид yFW, где F—первая фор- формула подстановки алгорифма 31', а W—-остальная часть схемы ЭГ. Пусть слова Р и Q таковы, что 31": Р \- Q. Тогда 33: ЗГиюР )= Кц^шр^Р [2.2] [2.3] [2.4,2.5а], при этом одному простому шагу работы алгорифма 31 над словом Р соответствует не менее трех простых шагов работы алгорифма 33 над словом 31'исоЯ, так что если ISfSTW3), то !3i (P) () Если же ЗГ: Р то СЛУЧАЙ ДВУХБУКВЕННОГО АЛФАВИТА^ 285 Таким образом, если Ш(Р), то ЭГ: Р\=Ш.(Р), и тогда 3. Итак, мы показали, что теорема 2.1 следует из лемм 2.2—2.5. Перейдем теперь к доказательству этих лемм. Предварительно установим вспомогательные утверждения 3.1—3.8. 3.1. Пусть W — слово в алфавите А^р-усроо, В и С — слова в алфавите AoaPYxA,[wrcp\|xi>|3^[icp, g—буква алфавита Ао. Тогда A) 33: B\WC\=BWIC. Доказывается правой индукцией по W. Действительно, для №з:Л утверждение A) тривиально. Пусть теперь для какого-либо слова W в алфавите А0оф7Ф«> утверждение A) справедливо для любых В, С и I, удов- удовлетворяющих перечисленным в формулировке леммы усло- условиям. Пусть i—любая буква алфавита А^р^ф»- Тогда 8S: Ь 1 т- е. 33: [2.2, 2.3, 2.4, 2.56]. что и оставалось доказать. 3.2. Пусть Т—слово в алфавите А^р^ю, а В и С — слова в алфавите АоаР7кХ[хстфг|хор К [Хф. Тогда B) SB: BTvC\=BvTC. Доказывается правой индукцией по Т. Действительно, при ГЗ:Л утверждение B) тривиально. Пусть теперь для какого-либо Т в алфавите A0aP7w утверж- утверждение B) справедливо для любых В и С, удовлетворяю- удовлетворяющих указанным в формулировке условиям. Пусть 0—любая буква алфавита AoapYa>. Тогда 23: BTQvC h BTvQC 5 (= BvTQC, что и оставалось доказать. 3.3. Пусть М—слово в алфавите Аооф, a D и Е — снова в алфавите А0аРу|л.фг|хо. Тогда 3) Ъ: DkME\=DM%E.
286 УНИВЕРСАЛЬНЫЙ АЛГОРИФМ [ГЛ. V Доказывается правой индукцией по М. Для индукцион- индукционного шага надлежит воспользоваться формулой подстановки, представленной 15-й строкой схемы алгорифма 23. 3.4. Пусть N—слово в алфавите Аоофу, a F и G—слова ч алфавите Аоофу1?<Ф|-1- Тогда D) % Доказывается правой индукцией по N. Для индукцион- индукционного шага надлежит воспользоваться формулой подстановки, представленной 20-й строкой схемы алгорифма 23. 3.5. Пусть L—слово в алфавите АоаРу, Q и S—слова в алфавите Ао, а Т—слово в алфавите А0оф7<*>. Тогда Доказывается правой индукцией но Q. При пустом Q утверждение E) тривиально. Пусть теперь для какого-либо Q в алфавите Ао утверждение E) верно для любых L, Т и S, удовлетворяющих перечисленным в формулировке леммы условиям. Тогда для любой буквы | алфавита Ао 9*: [3.1J 18 2 т. e. что и оставалось доказать. 3.6. Пусть L—слово в алфавите А0ар7, Q и S—слова в алфавите Ао, Т—слово в алфавите А0а|3у(о. Если Q не является началом S, то F) 8S: В самом деле, пусть выполнены условия леммы. Тогда существуют слова R, Qx и Sj в алфавите Ао и буква I этого алфавита такие, что Q^.RIQ1} S^:RS1 и слово 5t не начинается буквой |. Имеем «: СЛУЧАЙ ДВУХБУКВЕННОГО АЛФАВИТА h 18 287 [3.5] [3.1] [3.2] [3.2] 10 ,^ S LXQTyS, Ho и потому что и требовалось доказать. Положим теперь для произвольных слов Q и 5 в ал- алфавите Ао шп «л-Л21^^ Q-5)*). если Q входит в 5, ^' '^~ \5ф\р, если Q не входит в 5. 3.7. Пусть L—слово в алфавите А0офу. Q " ^—слова в Ао, Т—слово в Ацсфую. Тогда G) Щ: LXtiQT^S^LkiiQTUiQ,^. Доказывается левой индукцией по 5. При пустом 5 утверждение G) тривиально, так как для любого Q U(Q, Л)Жсрг|;. Пусть для какого-либо 5 в Ао утверждение G) спра- справедливо при любых L, Т и Q, удовлетворяющих перечис- перечисленным в' формулировке леммы условиям. Покажем, что оно будет справедливо и'при замене S на ?S, где |—любая буква алфавита Ао. Если IS начинается словом Q, то 1I(Q, IS) s: ytylS, и в этом случае утверждение 95: LXnQTq>№S\=Ll\iQTn(Q, IS) тривиально. *) Результат подстановки qn|)Q вместо первого вхождения Q в S (см. §23.8, с. 105).
288 УНИВЕРСАЛЬНЫЙ АЛГОРИФМ [ГЛ. V Рассмотрим теперь случай, когда |5 не начинается сло- словом Q. Если Q не входит в IS, то Q не входит также и в S, и потому n(Q, lS)JLlScpip, U(Q,S)^S^. Если же Q входит в ?S, то первое вхождение Q в ?S имеет вид ^ # Q # S2, где Sj и 52—слова в алфавите А„. Но тогда St*Q*S2—первое вхождение Q в S, так что n(Q,SK:S1qn|)QS1. Следовательно, если %S не начинается словом Q, то 93: ZA|iQTqN|) 12 [3.6] [3.2] , 5). Но Ш (Q, 5) г П (Q, ?S) и, следовательно, что и оставалось доказать. 3.8. Пусть Н—слово в алфавите каа$$у, R и S—слова в Ао, а Т—слово в А0аР7«. Тогда (8) Ъ: HilRTkS^=HRilTRkS. Доказывается правой индукцией по R. При пустом R утверждение (8) тривиально. Пусть для какого-либо R в алфавите Ао утверждение (8) справедли- справедливо для любых Н, Т и S, удовлетворяющих условиям, пере- перечисленным в формулировке леммы. Тогда для любой буквы 5 алфавита Ао 33: [3.1] \- 18 4 т. е. Ж: что и оставалось показать. §43] СЛУЧАЙ ДВУХБУКВЕННОГО АЛФАВИТА Теперь докажем леммы 2.2—2.5. Доказательство леммы 2.2. Пусть 91— нормальный алгорифм в алфавите Ао слово в этом алфавите. Тогда 93: WaQ Ь 8Г"\юмр\|><г 26 [3.2] 289 a Q- | li т. е. 93: что и требовалось доказать. Доказательство леммы 2.3 получается непосред- непосредственным рассмотрением схемы алгорифма 93. Доказательство леммы 2.4. Пусть выполнены условия леммы. Тогда (9) Q^A S) [3.7] [3.6, (9)] [3.3] [3.2] \-LXQMyNaS 13 Ь LkQMyNaS 19 26 9 т. е. 93: что и требовалось доказать. Доказательство леммы 2.5. Пусть х—буква алфавита ар, L и W—слова в алфавите Аоафу, Q,R,S—слова в алфавите Ао и Q входит в 5. Пусть SjHcQ*^^ где 5? и 52—слова в алфавите Ао,— первое вхождение Q в S. Тогда Q,S) 10 Д. А. Марков, Н. М. Нагорный
290 УНИВЕРСАЛЬНЫЙ АЛГОРИФМ [ГЛ. V 444] ДОКАЗАТЕЛЬСТВО ТЕОРЕМЫ 291 i» 16 93: LX\iQ1RyN(aq>qS^=L'kiiQxRyNa>Il(Q, S) [3.7] [3.3] [3.4] [3.8] [3-2] h- 21 \-LQwRyNaSf 23 h 24 h LQxRyNaS.RS, 10 , Q,S). Так как а .о. а, то утверждение а) леммы 2.5 доказано (достаточно в предыдущем рассуждении в качестве х взять а). Завершим теперь доказательство утверждения б) (здесь Ш: , Q, 5) h LQvoRyNaS (R, Q, S) 25 \=vLQoRyN<oZ(R, Q, S) 1,Q,S) ,Q,S) '. Q.5) H yLQRyNaZ (R, Q, S) (R, Q,S) 1 4 [3.2] [3.2] [3.4] 22 при этом слово nZ(R, Q, S) не поддается алгорифму 93. Таким образом, доказательство теоремы 2.1 закончено. § 44. Доказательство теоремы об универсальном алгорифме 1. Перейдем теперь к доказательству теоремы § 42.1.1. Пусть длина рассматриваемого нами алфавита А равна п. Символом at A<л<!п) мы условимся обозначать его i-ю букву. Введем операцию [Рх перевода слов в алфавите А, определив ее следующими равенствами: [Ра] =* [Pxab'a (здесь Р означает произвольное слово в алфавите A, i удовлетворяет условию 1 ^ i ^ п, а а и b суть буквы введенного нами в начале § 43 алфавита Ао). Условимся далее для любого нормального алгорифма 51 в алфавите А обозначать посредством %х его перевод [§ 41.6] в двухбуквенный алфавит Ао в соответствии с только что описанной операцией перевода слов. ¦ Введем две новые буквы е и р, отличные от букв алфа- алфавита А и от всех букв, введенных в п. 1 § 43. Рассмотрим нормальный алгорифм @ в алфавите АА0офу6ергах со сле- следующей сокращенно записанной схемой: bat+1-^a, <1> па nb рагп рах abpb apt, арб Р nab baap -Руеар -bpb где 1 ^ i < n, a Z, пробегает алфавит офу. Мы стремимся доказать следующее утверждение: 1.1. Пусть §1—нормальный алгорифм в алфавите а Р — слово в А. Тогда: А, а) 6: б) (?: п[Рх[=Рп. ю*
292 УНИВЕРСАЛЬНЫЙ АЛГОРИФМ ГГЛ. V «441 ДОКАЗАТЕЛЬСТВО ТЕОРЕМЫ 293 2. Для этого мы предварительно докажем следующие леммы 2.1—2.6. 2.1. Пусть каждое из слов X, Y является словом в одном из алфавитов Аофуб, А„офуея. Пусть l^t'^/г. Тогда A) ©: XbJ+'pajY [инд. предпол.], Доказывается арифметической индукцией по г. Действительно, для г=1 утверждение A) тривиально. Пусть теперь для какого-либо i A<л<п) утверждение A) справедливо для любого / и для любых X и Y, удовлетво- удовлетворяющих перечисленным в формулировке леммы условиям. Тогда 6: Xb'pai+lY \- 9 т. е. что и оставалось доказать. 2.2. Пусть Р—слово в алфавите A, U—слово в алфа- алфавите А0офуе, V—слово в алфавите Аофуб. Тогда B) 6: UapPV\=U[PhipV. Доказывается правой индукцией по Р. Действительно, для пустого Р утверждение B) три- тривиально. Пусть теперь для какого-либо Р утверждение B) справедливо для любых U и V, удовлетворяющих перечис- перечисленным в формулировке леммы условиям. Пусть 1 ^ i Гогда [инд. предпол.] [2.1] 6: UapPa,V \= U [ \= U [ \- U [PWaapV Ж U [PafapV, т. е. : UapPaiV\=U[Pa]apV, что и оставалось доказать. 2.3. Пусть SI—нормальный алгорифм в алфавите A,V — слово в алфавите Аофуб. Тогда C) 6: Доказывается индукцией вдоль схемы *) алгорифма 81. В самом деле, для алгорифма SI с «пустой» схемой [§ 24.3] утверждение C) верно: 6: apyV \- yapV. Пусть теперь утверждение C) верно для алгорифма Ш при любом V, удовлетворяющем указанному в формули- формулировке леммы условию. Покажем, что оно будет верно и для нормального алгорифма Жг в алфавите А, схема которого получается из схемы алгорифма 91 присоединением еще одной формулы подстановки. Обозначим посредством Рх и р\ соответственно левую и правую части этой формулы. Поло- Положим, кроме того, со Ж а, если эта формула простая,. и coSf}, если она заключительная. Тогда ЩЖ^Р^ыР^у и, следова- следовательно, 6: арЩУ з: aptl "P^P^yV У [инд. предпол.] У [2.2] [Pico [PlapyV [2.2] т. е. что и оставалось доказать. 2.4. Пусть W—слово в алфавите Ар, Q—слово в алфа- алфавите Ао. Тогда D) 6: W~nbfQ\==Wb'~nQ. Доказывается индукцией по /. В самом деле, при /«.О утверждение D) тривиально. Пусть теперь утверждение D) верно для какого-либо / при любых W и Q, удовлетворяющих перечисленным в форму- формулировке леммы условиям. Тогда (S: WlibJ+1Q\=WbJnbQ [инд. предпол.] \-Wbf+1nQ, з что и оставалось доказать. •) То есть по построению схемы.
294 УНИВЕРСАЛЬНЫЙ АЛГОРИФМ [ГЛ. V 2.5. Пусть W—слово в алфавите Ар, Z—слово в алфа- алфавите Аоя и j < п. Тогда E) е Доказывается индукцией по /. В самом деле, при / = 0 утверждение E) тривиально. Пусть теперь утверждение E) верно для какого-либо / (]'<п— 1) при любых W и Z, удовлетворяющих перечис- перечисленным в формулировке леммы условиям. Тогда S: Ь [инд. предпол.] что и оставалось доказать. 2.6. Пусть Р—слово в алфавите A, Q—слово в алфа- алфавите А„. Тогда F) 6: Доказывается правой индукцией по Р. В самом деле, при РгЛ утверждение F) тривиально. Пусть теперь утверждение F) верно для какого-либо Р при любом Q в Ао. Пусть 1^/^п. Тогда 6: n \- Ppnb'^aQ ю \- 4 [инд. предпол.] [2.4] [2.5] [2.1] [2.5], что и оставалось доказать. 3. Закончим теперь доказательство теоремы 1.1. Утвер- Утверждение б) этой теоремы непосредственно следует из леммы 2.6. Таким образом, оставалось доказать утверждение а). ДОКАЗАТЕЛЬСТВО ТЕОРЕМЫ 295 Если 91 — нормальный алгорифм в алфавите А, а Р — слово в алфавите А, то [2.3] <?: ор?1и6Р|=9Мар5/> [2.2] 4. Завершим теперь доказательство теоремы об универ- универсальном алгорифме. Покажем, что условию этой теоремы удовлетворяет нормальный алгорифм U в алфавите АББау6егрстлт|хо [§ 43.1] со схемой 35 6 е - я - ар. Пусть §1 — нормальный алгорифм в алфавите А, Р — слово в алфавите A, V1 и V2—слова в алфавите АА0офу6ерял (т. е. в алфавите алгорифма ©). Все левые части формул подстановок из схемы алгорифма 25 не являются словами в алфавите АА0офу6еряя [см. § 43.1] и, значит, не входят в Vx. Поэтому, если 6: Vt |— V2, то U: Vx \- V2, и, следова- следоваE VH^ VI' V\V в x у, тельно, если E: i Таким образом, U: т. е. и потому Vt | 2, . то VI:' V1\=Vi. 5 [1.1а)]
296 УНИВЕРСАЛЬНЫЙ АЛГОРИФМ Кроме того, [ГЛ. V I4 45J ВИДОИЗМЕНЕНИЕ ТЕОРЕМЫ 297 П: я[Рх\=Рл [1.16)] Щ[)Р, так что П(л[Ш(Р)х)~Щ.(Р). Поэтому для доказательства теоремы об универсальном алгорифме теперь достаточно показать, что Но так как в схеме алгорифма 33 нет заключительных формул подстановок, имеем 11 (ЗГТ яа[Рх) ~ П (Ш (9t'T "се[Рт)). Отсюда по теореме § 43.2.1 U (91 ¦* ии [Рх) ~ П (лШх ([Рх)). Это завершает доказательство теоремы об универсаль- универсальном алгорифме, так как по теореме о переводе [§ 41.6.22] Жх ([Рх) ~ [91 (Р)х. 5. Приведенное доказательство теоремы об универсальном алгорифме основано на уже упоминавшейся в п. 3 § 31 методи- методике В. Г. Жарова. Основной тенденцией доказательства являет- является стремление к экономии: сложность схемы алгорифма U равна, как нетрудно подсчитать, 5/г+349; обоснование пра- правильности схемы также представляется нам достаточно ком- компактным. § 45. Видоизменение теоремы об универсальном алгорифме 1. Принятый нами способ изображения нормальных алго- алгорифмов является простым и удобным, но требует введения но- новых букв. В дальнейшем нам понадобится иной способ изобра- изображения нормальных алгорифмов, способ несколько более слож- сложный, однако обходящийся лишь двумя буквами. В тех случа- случаях, когда исходный алфавит содержит более одной буквы, этот способ даст нам возможность записывать схемы нормальных алгорифмов в исходном алфавите в виде слов в этом же алфа- алфавите, что имеет существенное значение, как мы увидим ниже. 2. Наряду с алфавитом Аофу, используемым нами для построения изображений нормальных алгорифмов в А, мы I рассмотрим двухбуквенный алфавит A0°-ab и определим, [как в § 41.3—4, операцию перевода слов в алфавите Аофу таким образом, чтобы все буквы этого алфавита переводи- переводились Л-литероидами, т. е. словами вида аВа, где В—не- В—непустое слово в однобуквенном алфавите Ь. (Следовательно, роль алфавита А из § 41.3 у нас играет пустой алфавит Л, в.а роль алфавита Б — алфавит ка$у.) Мы при этом не предполагаем, что буквы алфавита Ао отличны от букв алфавита Аофу. Может быть построен нормальный алгорифм ? над ал- алфавитом Ао U Аофу, перерабатывающий всякое слово в алфавите Аофу в перевод этого слова [§ 33]. Легко также построить нормальный алгорифм 2^ над Ао и Аофу, перера- перерабатывающий перевод всякого слова в Аофу в само это слово. Этими алгорифмами мы будем пользоваться в даль- дальнейшем. 3. Будем теперь рассматривать нормальные алгорифмы в алфавите А и их изображения. Перевод изображения нор- нормального алгорифма в алфавите А мы будем называть записью этого алгорифма. Запись алгорифма 9Х мы будем обозначать символом 9t3. По определению записи IA) a '- для всякого нормального алгорифма 91 в алфавите А. С 3.1. Запись всякого нормального алгорифма в алфавите А есть слово в алфавите Ао. ^ 3.2. Всякий нормальный алгорифм в алфавите А вполне I определяется своей записью. t В самом деле, если дана запись 91s нормального алго- алгорифма 91 в алфавите А, то изображение 91й этого алго- алгорифма может быть получено в результате применения к 91* алгорифма 2^, а алгорифм 91 однозначно определяется его изображением. 4. Особенно интересен тот случай, когда буквы а и b при- принадлежат алфавиту А. Тогда запись всякого нормального ал- алгорифма в алфавите А есть слово в том же алфавите. Эта воз- возможность записывать схемы нормальных алгорифмов в ал- алфавите А в виде слов в том же алфавите, очевидно, связана не с тем, что А содержит именно буквы а и Ь, а только с тем, что этот алфавит содержит не менее двух букв. Тогда можно вы- выбрать произвольным образом какие-нибудь две из букв алфави-
298 УНИВЕРСАЛЬНЫЙ АЛГОРИФМ [ГЛ. V ГЛАВА VI та А и определить запись нормального алгорифма в А, за- заставляя эти буквы играть роли а и Ь. 5. Мы докажем теперь теорему, аналогичную теореме § 42.1.1, в которой роль изображения St" алгорифма Щ бу- будет играть его запись 91s. cfr-a «видоизмененная теорема об универсальном алгорифме» понадобится нам в даль- дальнейшем. 5.1. Пусть буква Ь не принадлежит алфавиту АиА0. Тогда может быть построен такой нормальный алгорифм Ш над алфавитом Аи Ао и б, что A) 2В (913бР) ~ 91 (Р) для любых слов Реки нормальных алгорифмов % в А. В самом деле, пользуясь какими-нибудь буквами а, р и у, не принадлежащими алфавиту Аб, построим универ- универсальный алгорифм U над алфавитом Аофуб согласно § 42.1.1 таким образом, чтобы имело место условное равенство § 42.1 B). Построим отсекающие нормальные алгорифмы Зг.в и ©г, в [§ 29.4], где Г^АоиАарТ- Построим нормальный алгорифм Ш как нормальную композицию (З^оЗт,в) алгорифмов Зг, в и 3"j. Ш есть нор- нормальный алгорифм над алфавитом Гб. Построим нормальный алгорифм © над алфавитом Гб согласно теореме объедине- объединения [§ 38.1.1] таким образом, чтобы для любого слова Q в Гб выполнялось условное равенство B) @(Q)~gt(QN@r,6(Q). Искомый алгорифм 28 построим как нормальную компози- композицию (И о 8) алгорифмов © и U. 28 есть нормальный алгорифм над алфавитом Гб и, следовательно, над A0(jA6. Покажем, что для него имеет место условное равенство A). Пусть, в самом деле, §(—нормальный алгорифм в А, Р—слово в этом алфавите. Тогда C) Зг,б(^3бЯ)з:?13 [§29.4.6], D) @r,6(SC36P)S/> [§ 29.4.7], dl (ШР) ~ &! (Зг б (Ш3Щ) [§ 37.4.3] E) ЗЩи [C)> 3A)], F) ®(913бР):°Щиб/> [B), E), D)], 2В (913бЯ) ~ Ц (© (Щ'бР)) [§ 37.4.3] ~ XX (Ж«8Р) [F)] ~2ЦР) [§42.1B)], что и требовалось доказать. ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ ,-,, § 46. Понятие о массовой алгоритмической проблеме | 1. Пусть А —• какой-либо алфавит, a F — одноместный вербальный предикат в нем. С каждым отдельным словом X в А естественным образом связывается следующая „единич- „единичная" проблема: «выяснить, удовлетворяет ли данное X предикату F», а со всем предикатом F в целом —¦ однопараметрическое се- семейство таких проблем. Каждая из этих единичных проблем требует утвердитель- утвердительного или отрицательного ответа на поставленный вопрос, так что возникает естественная проблема разыскания единого общего метода (алгорифма), позволяющего находить правиль- правильное решение любой из единичных проблем рассматриваемого семейства. Эта последняя и представляет собой то, что в ма- математике принято называть массовой алгорифмической пробле- проблемой. 2. Можно, например, в качестве А взять алфавит, состоя- состоящий из единственной буквы |, а в качестве F взять предикат «число X четно и совершенно». Тогда соответствующая алгорифмическая проблема будет состоять в разыскании единого общего метода, который по любому натуральному числу позволяет сказать, является ли это число четным и совершенным. Легко видеть, что в данном случае искомый алгорифм может быть указан — например, с помощью разложения X на простые множители. Легко также сообразить, что он даст утвердительный ответ по крайней мере в 24 случаях (в настоящее время известно 24 четных совер- совершенных числа). Если мы в качестве F возьмем новый предикат «число X нечетно и совершенно», то требующийся в этом случае алгорифм также будет возможен. Правда, в настоящее время мы не сможем сказать, ответит ли он
300 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ [ГЛ. VI МАССОВАЯ АЛГОРИФМИЧЕСКАЯ ПРОБЛЕМА 301 утвердительно на поставленный вопрос хотя бы когда-нибудь, потому что неизвестно ни одного нечетного совершенного числа. Но этого от нас и не требуется. Можно также, условившись записывать пары натуральных чисел в виде слов в алфавите | #, интересоваться единичными проблемами о взаимной простоте каких-нибудь двух данных натуральных чисел. Каждая из этих проблем формулируется как требование: «выяснить, являются ли данные натуральные числа X и Y взаимно простыми». Массовая алгорифмическая проблема, соответствующая семейству этих единичных про- проблем, будет состоять в разыскании единого общего метода, по- позволяющего узнавать для любых двух данных натуральных чисел X и Y, являются ли они взаимно простыми. Эта массо- массовая проблема, как известно, разрешима; ее решение может, например, состоять в применении алгорифма Евклида для ра- разыскания наибольшего общего делителя к данным натураль- натуральным числам X и Y; эти числа тогда и только тогда взаимно просты, когда их наибольший общий делитель, найденный в результате применения алгорифма Евклида, равен единице. 3. Ситуация существенно осложнится, если мы станем ин- интересоваться массовыми алгорифмическими проблемами сле- следующего типа. Фиксируется какой-либо алфавит А и нормаль- нормальный алгорифм 31 в нем, а в качестве F берется предикат «алгорифм 31 применим к слову X». В отдельных случаях мы, возможно, сумеем, основываясь на конкретных особенностях алфавита А и алгорифма Ш, разработать искомый метод, позволяющий распознавать те слова X, к которым алгорифм 31 применим. Однако в об- общем случае не приходит на ум никакого другого средства, кроме как пытаться выяснить, применим ли алгорифм 31 к слову X, путем прямого применения алгорифма к этому слову. Но этот „прямолинейный" метод, если алгорифм $ не применим к слову X, как раз и не приведет нас к цели: как бы далеко мы ни продвинулись в процессе примене- применения 31 к X, если этот процесс еще не оборвался, мы ни- ничего сказать не в состоянии: может быть, процесс оборвется на следующем шаге, а может быть, он не оборвется ни- никогда. Возникает вопрос: нельзя ли—поскольку „прямой" метод не дает желаемого результата—пытаться решить эту задачу каким-нибудь другим, „косвенным" способом? Один из основных результатов общей теории алгорифмов гласит — и мы это установим в § 48,— что при надлежащем выборе алгорифма 31 не только „прямой", но и никакой другой метод к желаемому результату не приводит: такой метод оказывается попросту невозможным. 4. Разумеется, чтобы получить такого рода результат, неточный, расплывчатый термин «единый общий метод», цстречающийся в формулировке массовой проблемы, должен быть надлежащим образом уточнен. Его естественно уточ- уточнить как «алгорифм». Алгорифм этот должен давать правиль- правильный ответ «да» или «нет» на всякий вопрос, составляющий содержание какой-либо из единичных проблем рассматривае- рассматриваемого семейства. Это требование естественно истолковывать так: алгорифм должен быть применим к любому значению пара- параметра, определяющего единичную проблему рассматриваемого семейства, и должен перерабатывать это значение в слово «да», если проблема решается в положительном смысле, и в слово «нет», если она решается в отрицательном смысле. При этом алфавит, используемый для записи значений параметра, дополняется русскими буквами а, д, е, н, т (нужными для со- составления слив «да» и «нет») и «алгорифм» понимается как ал- алгорифм над полученным таким образом алфавитом А. Нетрудно, однако, видеть, что в явном введении этих рус- русских букв в сущности нет надобности. Чтобы в этом убедиться, надо лишь принять во внимание наличие алгорифмов 31 и 33 в алфавите А, работающих следующим образом: 31 перераба- перерабатывает «да» в пустое слово, а «нет» в непустое слово; 93 перера- перерабатывает пустое слово в «да», а всякое непустое слово в алфа- алфавите А в слово «нет». Наличие этих алгорифмов дает возможность заменить формулированное выше требование, предъявляемое к искомо- искомому алгорифму, следующим требованием: алгорифм должен быть применим к любому значению параметра, определяю- определяющего единичную проблему рассматриваемого семейства, и должен тогда и только тогда перерабатывать это значение в пустое слово, когда единичная проблема решается в положи- положительном смысле. Принцип нормализации алгорифмов [§ 27.6] дает, наконец, возможность еще более уточнить формулировку массовой ал- горифмической проблемы. Согласно этому принципу искомый алгорифм, если существует, то нормализуем и, следователь- следовательно, вполне эквивалентен относительно рассматриваемого ал- алфавита значений параметра некоторому нормальному алго- алгорифму над этим алфавитом. При применении к значениям пара- параметра этот нормальный алгорифм работает так же, как перво- первоначальный: он тогда и только тогда перерабатывает значение
302 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ [ГЛ/ VI САМОПРИМЕНИМОСТЬ И НЕСАМОПРИМЕНИМОСТЬ 303 параметра единичной проблемы в пустое слово, когда пробле- проблема решается в положительном смысле. Таким образом мы приходим к следующей постановке массовой проблемы для данного семейства единичных проблем. Требуется построить нормальный алгорифм над алфавитом значений параметра рассматриваемых единичных проблем, применимый ко всякому значению параметра и тогда и только тогда перерабатывающий значение параметра единичной проблемы в пустое слово, когда эта проблема решается в по- положительном смысле. Так поставленные массовые алгорифмические проблемы мы будем называть нормальными массовыми проблемами. Прин- Принцип нормализации, очевидно, дает возможность утверждать, что всякая массовая алгорифмическая проблема сводится к нормальной массовой проблеме. Нормальная массовая проблема называется разрешимой, если фигурирующий в ее формулировке нормальный алгорифм может быть построен. Ряд нормальных массовых проблем естественно возникает в самой теории алгорифмов. Это в первую очередь проблемы, связанные с применимостью нормального алгорифма к слову. В настоящей главе мы докажем неразрешимость некоторых проблем этого рода — невозможность искомых в них нормаль- нормальных алгорифмов. § 47. Самоприменимые и несамоприменимые алгорифмы 1. Если алфавит А содержит более одной буквы, то, как уже было выяснено [§ 45], имеется простая возможность записывать схемы нормальных алгорифмов в А в виде слов в этом же алфавите. К записи St3 какого-нибудь нормаль- нормального алгорифма 91 в алфавите А можно тогда попытаться применить этот же самый алгорифм 9L Мы докажем в этом параграфе одну простую и почти очевидную теорему невоз- невозможности, связанную с применением нормальных алгориф- алгорифмов к их собственным записям. В дальнейшем она послужит нам основой многих менее тривиальных результатов. 2. Будем рассматривать алфавит А, являющийся расши- расширением алфавита Ао, т. е. содержащий латинские буквы а и Ъ. Определим, как выше [§ 45], запись произвольного нормального алгорифма в А. Она является словом в Ао и, значит, в А. Будем говорить о нормальном алгорифме Ш. в А, что он самоприменим, если он применим к своей записи. Будем говорить о нем, что он несамоприменим, если он не при- применим к своей записи. Легко могут быть построены как самоприменимые, так и несамоприменимые нормальные алгорифмы в А. Самоприме- Самоприменимым Является, например, тождественный алгорифм в ал- алфавите А [§ 28.4]. Он применим ко всякому слову в А, в част- частности к своей записи. Несамоприменимым является пустой алгорифм в А [§ 28.51. Он не применим ни к какому слову в А и, в частности, неприменим к своей записи. 2.1. Невозможен нормальный алгорифм в А, применимый к записи какого-либо нормального алгорифма ?! в А тогда и только тогда, когда sit несамоприменим. В самом деле, предположим, что может быть построен такой алгорифм JQ. Покажем, что тогда он будет и само- самоприменим, и несамоприменим. А это по принципу reductio ad absurdum *) и будет означать, что он невозможен. Докажем сначала, что .§ несамоприменим. С этой целью допустим, что ,§ самоприменим. Тогда $ применим к §\ и, значит, по условию §3 есть запись несамоприменимого алгорифма, т. е. & несамоприменим. Итак, из допущения о самоприменимости S$ вытекает, что <?> несамоприменим. Но из этого допущения вытекает, разумеется, и самопри- самоприменимость ,§. Эти два следствия противоречат друг другу, и, значит, по принципу reductio ad absurdum допущение о самоприменимости .<о неверно, т. е. алгорифм $ действи- действительно несамоприменим. Но отсюда немедленно получается, что {$ самоприменим. В самом деле, по условию он применим к записи любого неса- несамоприменимого нормального алгорифма в А, а значит, и к собственной записи. Тем самым теорема 2.1 доказана. Замечание. Невозможность алгорифма ¦§ здесь, разумеется, означает его несуществование. Возникает вопрос: какой смысл мы должны вложить в это отрицание? Рассмотре- Рассмотрение приведенного доказательства показывает, что данное отрицание естественно трактовать как редукционное [см. § 15.4]. Читатель, искушенный в математической логике, видит, что на заключительном этапе рассуждения мы, по существу, воспроизводим вывод (средствами интуиционистско- интуиционистского исчисления высказываний) противоречия & ~ *) Приведение к нелепости (лат.). См. § 15.4.
204 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ [ГЛ./vi из ранее полученного утверждения §47j\ САМОПРИМЕНИМОСТЬ И НЕСАМОПРИМЕНИМОС'ГЬ 305 Проведенное рассуждение повторяет схему так назы- называемого „парадокса Рассела" *) и по существу представляет собой его теоретико-алгорифмическую версию. Более из- известна первоначальная—теоретико-множественная—версия парадокса. Она заключается в следующем. Пусть R озна- означает множество всех множеств, не являющихся элементами самих себя. Это значит, что для каждого множества X имеет место утверждение: X ? R тогда и только тогда, когда Х(?Х. Следовательно, R?R тогда и только тогда, когда R(fcR- А отсюда, как и в нашем случае, получается про- противоречие: одновременно и R?R, и R^R. (Отметим, что в обоих рассуждениях мы не пользовались законом исклю- исключенного третьего, и, значит, он за окончательный резуль- результат ответственности не несет.) Следует подчеркнуть, что обе рассмотренные версии „пара- „парадокса" ничего противоречащего здравому смыслу в себе не содержат, так что сам термин „парадокс" здесь должен пони- пониматься с надлежащей осторожностью. Правда, в обоих слу- случаях рассуждение в конце концов приводит к противоречию, но противоречие это извлекается из некоторого предположе- предположения: в первом случае — из предположения о существовании нормального алгорифма, а во втором — из предположения о существовании множества, удовлетворяющего определенному условию. В рассмотренных случаях „преодоление" парадокса состоит в констатации „неправомерности" этих предположе- предположений, т. е. их ложности. Первая констатация дает нашу теоре- теорему 2.1. Вторая показывает, что в рамках теоретико-множест- теоретико-множественной концепции при определении множеств, рассматривае- рассматриваемых затем в качестве единых объектов, недопустима слишком большая свобода, что нельзя, не впадая в противоречия, лю- любым образом объединять „объекты" в „множества", которые сами будут рассматриваться как „объекты". Запретив упот- употребление множества R, мы избавим теорию множеств от одной конкретной трудности, но не создадим никаких надежных гарантий на будущее. В самом деле, простой, хотя, может быть, и несколько вычурный способ задания множества R с виду не противоречит исходной позиции Кантора, и „недопусти- „недопустимость" R обнаруживается лишь a posteriori. 3. В доказанной только что теореме устанавливалась не- невозможность нормального алгорифма в алфавите А, обладаю- обладающего некоторым специальным свойством. Предполагая теперь, что алфавит А содержит не только буквы аи Ь, но также буквы cud, мы усилим теорему 2.1, утверждая невозможность обла- обладающих тем же свойством нормальных алгорифмов над ал- алфавитом Ао. Записи нормальных алгорифмов, о которых будет идти речь, по-прежнему определены лишь для нормальных алгорифмов в А. Алфавит, состоящий из четырех букв а, Ь, с, d, мы обозначим через А:*). 3.1. Если алфавит А является расширением Alt то не- невозможен никакой нормальный алгорифм Я1 над Ао, приме- применимый к записи нормального алгорифма 31 в А тогда и только тогда, когда 3( несамоприменим. В самом деле, допустим, что построен такой алго- алгорифм В!. Тогда к алфавиту Ао, буквам c,du алгорифму й при- применима теорема § 41.6.27. Согласно этой теореме может быть построен нормальный алгорифм ,§0 в алфавите Aj, применимый к тем и только тем словам в Ао, к которым применим алго- алгорифм Я:. Принимая во внимание, что А является расширением Aj, построим естественное распространение $ алгорифма ^0 на алфавит А [§ 35.3]. Для любого слова Р в Ах имеет место условное равенство показывающее, что алгорифм .'р применим к тем и только 1 к тем словам в Аъ к которым применим алгорифм -§„. Так '§ как Aj является расширением А„, алгорифмы § и Я при- i! менимы к одним и тем же словам в А, и, значит, к одним $. и тем же записям нормальных алгорифмов в А. Следова- Следовательно, .&, как и Я1, применим к записи нормального алго- алгорифма 91 в А тогда и только тогда, когда алгорифм 91 не- самоприменим. Вместе с тем ?q есть нормальный алгорифм в А. Такой алгорифм, однако, невозможен [2.1]. Невозмо- Невозможен, следовательно, и нормальный алгорифм й над А, со свойством, указанным в формулировке теоремы 3.1, что и требовалось доказать. i 4. Со свойствами самоприменимости и несамопримени- I мости нормальных алгорифмов естественно связать массо- массовые алгорифмические проблемы распознавания этих свойств. Этот парадокс был независимо открыт также Э. Цермело. *) Разумеется, вместо букв а, Ь, с, d можно было бы взять любые дру- гие четыре различные буквы.
306 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ trjj> VI Для каждого нормального алгорифма в алфавите А, задан- заданного своей записью, можно поставить единичную прйблему выяснения самоприменимости (несамоприменимости) этого алгорифма. Всякому данному алфавиту А, являющемуся расширением алфавита А„, соответствует класс таких еди- единичных проблем. Каждая единичная проблема этого класса характеризуется некоторым словом в алфавите Ао—записью нормального алгорифма, о котором идет речь в единичной проблеме. Соответствующая нормальная массовая проблема будет состоять в построении нормального алгорифма над алфавитом записей Ао, применимого к записи Ж3 любого нормального алгорифма §{ в А и перерабатывающего Ж3 в Л тогда и только тогда, когда 9t самоприменим (несамо- применим). Мы покажем сейчас, что эта массовая проблема неразрешима, если А является расширением Ах. 4.1. Если А является расширением А±, то невозможен нормальный алгорифм ф над Ао, удовлетворяющий следую- следующему условию: каков бы ни был нормальный алгорифм Ж в А, ,0 тогда и только тогда перерабатывает Ж3 в А, когда Ж несамоприменим. В самом деле, допустим, что построен нормальный алгорифм ф над Ао, удовлетворяющий этому условию^. Пусть Б—его алфавит. Построим нормальный алгорифм 33 в Б со схемой где I пробегает алфавит Б. Очевидно, что 33 применим к Л и не применим ни к какому непустому слову в Б. Определим алгорифм й как нормальную композицию алгорифмов 1q и 33: й есть нормальный алгорифм над Б [A), § 37.4.2] и, следовательно, над Ао. Для любого слова Р в Б & (Р\ ~ 93 ffS (PX\ \{\W и, в частности, B) Я (Ж3) ~ 33 (.§ (ЗХ3)) для любого нормального алгорифма §1 в А. Согласно B) для применимости й к записи Ж3 нормаль- нормального алгорифма Ж необходимо и достаточно, чтобы алго- алгорифм $ был применим к Ж3, а алгорифм 33—к § (Ж3). Но в случае применимости ,§ к Ж3 $(Ж3) есть слово в Б, так САМОПРИМЕНИМОСТЬ И НЕСАМОПРИМЕНИМОСТЬ 307 как $—алгорифм в Б. Поэтому 33 применим к $ (Ж3) тогда и только тогда, когда $(&3)ЖЛ. Таким образом, алгорифм Я тогда и только тогда применим к Ж3, когда ,§(?13)з:Л, т. е. когда алгорифм 9t несамоприменим. Такой алгорифм .$, однако, невозможен, так как А является расширением Aj[3.1]. Невозможен, следовательно, и нормальный алго- алгорифм ,§, удовлетворяющий формулированному в теореме 4.1 условию, что и требовалось доказать. В теореме 4.1 не требовалось даже, чтобы алгорифм Sj был применим к записи любого нормального алгорифма в А. Требовалось лишь, во-первых, чтобы он перерабатывал в пустое слово запись всякого несамоприменимого алгориф- алгорифма и, во-вторых, чтобы всякий нормальный алгорифм в А, запись которого $ перерабатывает в пустое слово, был не- несамоприменим. Теорема утверждала невозможность алго- алгорифма § над Ао, удовлетворяющего этим условиям. Тео- Теорема, разумеется, остается верной, если к условиям, на- налагаемым на $, добавить требование применимости к за- записи любого нормального алгорифма в А в соответствии с приведенной выше формулировкой нормальной массовой проблемы распознавания несамоприменимости. Мы полу- получаем, таким образом, следующее видоизменение теоремы 4.1. 4.2. Если А является расширением Alt то невозможен в нормальный алгорифм над Ао, применимый к записи Ж3 лю- I бого нормального алгорифма Ж в А и перерабатывающий % Ж3 в А тогда и только тогда, когда Ж несамоприменим. I Нетрудно, далее, видеть, что в теоре.ме 4.2 возможна Ж замена слова «несамоприменим» словом «самоприменим», i т. е. что имеет место и следующая теорема: i 4.3. Если А является расширением At, то невозможен нормальный алгорифм над Ао, применимый к записи Ж3 лю- любого нормального алгорифма Ж в А и перерабатывающий Ж3 в А тогда и только тогда, когда Ж самоприменим. В самом деле, допустим, что такой алгорифм Я: построен. Пусть Б—его алфавит. Тогда Б является расширением Ао, и потому а—буква Б. Построим разветвляющий нормаль- нормальный алгорифм 91б, л, о, л [§ 30.1] и определим алгорифм ^ как нормальную композицию алгорифмов Я1 и Жб, л, а, а' ' 3) #=И2*б.л.о.л°Я). ^ есть нормальный алгорифм над алфавитом Б [C)] и, следовательно, над Ао. Условное равенство ,?(<?) ~§( Б, Л,0|
308 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ [Гл' VI имеет место для любого Q в Б и, в частности, для любого нормального алгорифма St в алфавите А. С дру- другой стороны, E) SlB,A,a,A(^(St3))Sa it a, если ${ЩжА [§ 30.1B)], и F) 2(Б,Л,О> если ^(Щ^А [§ 30.1 C)]. Так как алгорифм fk применим к записи любого нор- нормального алгорифма в А, алгорифм {q также применим к записи любого нормального алгорифма в А, причем & (Ж3) SA тогда и только тогда, когда $ C1s) it A [D)—F)]. Но ЙCCJ:Л тогда и только тогда, когда алгорифм 21 са- самоприменим. Следовательно, $C13):^?Л тогда и только тогда, когда Ж несамоприменим. Значит, $(%3)ЖА тогда и только тогда, когда 2t несамоприменим. Невозможность нормального алгорифма & с этим свойством была, однако, только что установлена [4.2]. Следовательно, невозможен и нормальный алгорифм $ со свойством, указанным в тео- теореме 4.3, что и требовалось доказать. § 48. Проблема распознавания применимости алгорифма к исходному данному 1. В связи со всяким нормальным алгорифмом © над данным алфавитом Г естественно поставить проблему рас- распознавания применимости этого алгорифма к словам в Г, состоящую в следующем: требуется построить нормальный алгорифм над Г, применимый ко всякому слову в Г и пе- перерабатывающий в пустое слово те и только те слова в Г, к которым применим алгорифм ®. Мы покажем в этом па- параграфе, что алфавит Г и нормальный алгорифм @ в нем могут быть построены так, что проблема распознавания применимости алгорифма ® к словам в Г окажется нераз- неразрешимой: искомый в этой проблеме нормальный алгорифм будет невозможен. В основе построения будет лежать видо- видоизмененная теорема об универсальном алгорифме, которую мы будем сочетать с результатами § 47. 2. Пусть А2 =^ abcde. 1 §48]. ПРОБЛЕМА РАСПОЗНАВАНИЯ ПРИМЕНИМОСТИ 309 Докажем следующую теорему: 2.1. Может быть построен нормальный алгорифм 23 над алфавитом А,, удовлетворяюищй следующему условию: невозможен нормальный алгорифм $ над А2, перерабаты- перерабатывающий в А те и только те слова в А2, к которым 23 не применим. В самом деле, принимая во внимание, что буква е не принадлежит алфавиту Ах, т. е. abed, построим нормальный алгорифм 28 над Ахе, т. е. над А2, согласно § 45.5.1 та- таким образом, чтобы соблюдалось условие A) 2S(Sl3eP)~St(P). А1 играет при этом роль алфавита А из теоремы § 45.5.1, е—роль б; записи определяются для нормальных алгориф- алгорифмов в Ai, A) имеет место для слов Р в Ах и нормальных алгорифмов % в At. Покажем, что 28 удовлетворяет сфор- сформулированному в теореме условию. Допустим, в самом деле, что й есть нормальный алго- алгорифм над А2, перерабатывающий в Л те и только те слова в А2, к которым 28 не применим. Построим тождественный нормальный алгорифм За„ в алфавите Ао [§ 28.4]. Построим нормальный алгорифм 23 над алфавитом Аое согласно теореме объединения [§38.1.1] таким образом, что B) 23 (Р) ~ 3Ао (/>№„(/>) для любого слова Р в алфавите Ао. Построим, наконец, алгорифм $ как нормальную компо- композицию алгорифмов 23 и й': C) #^(?°23). § есть нормальный алгорифм над А2, так как St — нор- нормальный алгорифм над А2 [C), § 37.4.2]. Следовательно, ?> есть нормальный алгорифм над А„. Так как Зд0—тож- Зд0—тождественный алгорифм в Ао, имеем, согласно B), D) 23(?I3)S2l3e2l3 для любого нормального алгорифма St в Af. Поэтому и, следовательно, ,§(913)з:Л тогда и только тогда, когда 5l(Sl3e3l3)SA. С другой стороны, 23 (%3еЩ ~ 21 BC) для любого нор- нормального алгорифма St в Ai[(l)]. Поэтому нормальный ал-
310 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ [ГЛ. VI горифм 21 в Ах тогда и только тогда несамоприменим, ког- когда алгорифм 23 не применим к слову 3Cе9Г3. Но, согласно нашему допущению, касающемуся алгориф- алгорифма 5?, 23 тогда и только тогда не применим к 3t3eSl3, ког- когда ®($13еЩжА, т. е. когда $E'CIЕЛ. Таким образом, ¦§ (9С3) IS Л тогда и только тогда, когда алгорифм 31 неса- несамоприменим. Алгорифм Sb с этим свойством, однако, не- невозможен согласно теореме § 47.4.1, условие которой со- соблюдено, так как роль А играет Ах. Тем самым установлена невозможность нормального ал- алгорифма Si над А2, перерабатывающего в Л те и только те слова в А2, к которым алгорифм 28 не применим, что и требовалось доказать. Только что указанный алгорифм 23, удовлетворяющий условию, сформулированному в теореме 2.1, является нор- нормальным алгорифмом в алфавите, состоящем из большого числа букв. Мы покажем сейчас, что уже в двухбуквенном алфавите Ао может быть построен нормальный алгорифм с тем же свойством. 2.2. Может быть построен нормальный алгорифм 280 в алфавите Ао, удовлетворяющий следующему условию: невоз- невозможен нормальный алгорифм .6 над Ао, перерабатывающий в А те и только те слова в Ао, к которым 280 не приме- применим. Построим, в самом деле, нормальный алгорифм 2В над А2 согласно 2.1 и нормальный алгорифм 280 в Ао как пе- перевод алгорифма 23 [§ 41.6]. При этом роли А и Б пусть играют соответственно пустой алфавит и алфавит алгориф- алгорифма SB. Очевидно, что Б является расширением А2. Обозначая алгорифм перевода через %, будем для лю- любого Q в Б иметь 2B0(?(Q))~3:BB(Q)) [§41.6.26], причем Z есть нормальный алгорифм над Б. Так как ал- алгорифм % применим ко всякому слову в Б, это условное равенство показывает, что 2В0 тогда и только тогда приме- применим к переводу слова Q в Б, когда 28 применим к самому этому слову. 280 есть нормальный алгорифм в Ао. Покажем, что он удовлетворяет условию, формулированному в 2.2. Допустим, действительно, что .'о есть нормальный алго- алгорифм над Ао, перерабатывающий в А те и только те слова в Ао, к которым 230 не применим. $48] ПРОБЛЕМА РАСПОЗНАВАНИЯ ПРИМЕНИМОСТИ 311 I Построим алгорифм й как нормальную композицию ал- алгорифмов S и §: E) Я'^ШоЗ;). й есть, как и %, нормальный алгорифм над Б [E), § 37.4.2] и, значит, над А2. Для любого Q в Б ?(Q)~?C:(Q)) [E), § 37.4.3] и потому $(Q)I°:A для тех и только тех слов Q в А2, для которых F) $&(Q)ILA. Здесь %(Q) всегда является словом в Ао. Поэтому, согласно предположению об алгорифме ,<3, равенство F) имеет место для тех и только для тех слов Q в Аа, для которых слово %(Q) таково, что алгорифм 2В0 к нему не применим. Применимость же 280 к ? (Q), как отмечено вы- выше, равносильна применимости алгорифма 28 к Q. Таким образом, нормальный алгорифм ^ над А2 перерабатывает в Л те и только те слова в А2, к которым алгорифм 28 не применим. Такой нормальный алгорифм, однако, не- невозможен [2.1]. Невозможен, следовательно, и нормальный алгорифм S$ над Ао, перерабатывающий в Л те и только те слова в Ао, к которым алгорифм 280 не применим, что и требовалось доказать. Аналогично тому, как мы переходили от теоремы § 47.4.1 к теоремам § 47.4.2 и § 47.4.3, можно перейти от теоремы 2.2 к следующим результатам. 2.3. Может быть построен нормальный алгорифм 280 в алфавите Ао, удовлетворяющий следующему условию: невоз- невозможен нормальный алгорифм над Ао, применимый ко вся- всякому слову в Ао и перерабатывающий в А те и только те слова в Ао, к которым 280 не применим. 2.4. Может быть построен нормальный алгорифм 280 в алфавите Ао, удовлетворяющий следующему условию: невоз- невозможен нормальный алгорифм над Ао, применимый ко вся- всякому слову в Ао и перерабатывающий в пустое слово те и только те слова в А„ к которым 280 применим. Теорема 2.3 есть очевидное следствие теоремы 2.2, а теорема 2.4 легко доказывается на основе 2.3 с помощью разветвляющего алгорифма Шв, л, а. л, где Б—алфавит пред- предполагаемого алгорифма § [§ 30.1].
312 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ 1ГЛ. VI S 50] КОНСТРУКТИВНЫЙ КОММЕНТАРИЙ 313 Теорема 2.4 показывает, что для некоторого нормально- нормального алгорифма Шо в Ао проблема распознавания примени- применимости к словам в Ао неразрешима: искомый в этой пробле- проблеме нормальный алгорифм невозможен. § 49. Теоретико-множественный комментарий к §§ 47 и 48 Теорема § 48.2.4 является одним из самых принципиальных результатов общей теории алгорифмов. Из нее, в частности, могут быть извлечены отрицательные решения таких знаме- знаменитых массовых алгорифмических проблем математики, как проблема разрешимости для исчисления предикатов первой ступени (А. Ч ё р ч [2]; 1936 г.), проблема тождества для полугрупп (А. А. Марков [5], [6] и Э. Л. Пост [2]; 1947 г.), проблема тождества для групп (П. С. Новиков [1]; 1952 г.), проблема гомеоморфии полиэдров (А. А. Марков [121, [13]; 1958 г.), 10-я проблема Гильберта (Ю. В. М а т и fl- flee в и ч [21; 1970 г.). Она выражает некий важный факт тео- теории алгорифмов, обнаружившийся в 1936 г. в работах А. Ч ё р- ч а [1], [2], С. К. К л и н и Ш и А. М. Т ь ю р и н г а [1], [21. Мы изложили этот факт на языке нормальных алгорифмов. Теперь, учитывая интересы теоретико-множественно настро- настроенного читателя, мы изложим его и на языке теории множеств. При этом читателя, критически относящегося к концепциям теории множеств, мы просим иметь в виду, что мы придаем этому изложению лишь чисто эвристическое значение и что на приводимые ниже формулировки мы ни в каких доказа- доказательствах ссылаться не будем. Данный комментарий, равно как и аналогичные комментарии в других параграфах (все они оговариваются особо), может быть механически изъят из книги без каких-либо последствий для остального ее содер- содержания. 1. Множество М слов в алфавите А называют разре- разрешимым в А, если существует нормальный алгорифм §1 над А, проверяющий принадлежность слов в А к М. Эту фор- формулировку можно уточнить следующим образом: требуется, чтобы алгорифм Ш. был применим ко всякому слову в А и чтобы он перерабатывал в пустое слово те и только те слова в А, которые принадлежат М. Множество М слов в алфавите А называют перечисли- перечислимым в А, если существует нормальный алгорифм Щ. над А такой, что для любого Р в A I (P) определено тогда и только тогда, когда Р?М. Приняв эти определения, читатель без труда заметит, что если М есть множество слов в А, а алфавит Б есть расширение А, то М разрешимо (перечислимо) в Б тогда и только тогда, когда оно разрешимо (перечислимо) в А. Таким образом, свойства множества быть разрешимым и быть перечислимым, по существу, не зависят от того, в каком алфавите это множе- множество рассматривается, так что указание алфавита часто может быть опущено. Нетрудно показать, что 1.1. Всякое разрешимое множество слов является перечи- перечислимым. Теорема § 48.2.4 означает, что 1.2. Существует пгречислимое, но не разрешимое множество слов в алфавите Ао. То, что фигурирующий в 1.2 алфавит состоит из двух букв, диктуется не существом дела, а лишь техническими деталями доказательства. Аналогичная теорема могла бы быть доказана и для однобуквенного алфавита, так что 1.3. Существует перечислимое, но не разрешимое множество натуральных чисел. 2. А теперь посмотрим, как в данных терминах выглядят другие результаты §§ 47 и 48. Теорема § 47.3.1 утверждает, что если алфавит А является расширением алфавита Аь то множество записей несамопри- менимых нормальных алгорифмов в А неперечислимо. Тем более оно неразрешимо (теорема § 47.4.2). Неразрешимо и мно- множество записей самоприменимых нормальных алгорифмов в А (теорема § 47.4.3). Мы предлагаем читателю показать, что оно тем не менее перечислимо. Теорема § 48.2.1 фактически*) утверждает (читатель убедится в этом самостоятельно), что множество слов в А2, к которым неприменим алгорифм 9В, неперечислимо. Тем более оно неразрешимо. То же самое утверждается и о множестве слов в Ао, к которым неприменим алгорифм 2В„ (теоремы § 48.2.2 и § 48.2.3). О теоретико-множественной интерпретации теоремы § 48.2.4 мы уже говорили. § 50. Конструктивный комментарий к §§ 47 и 48 1. Пусть F — какой-либо одноместный вербальный преди- предикат в алфавите А, Р — слово в этом алфавите. Рассмотрим дизъюнкцию *) См. для сравнения чеорему §51.2,1.
314 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ [ГЛ. VI A) «Р обладает свойством F или неверно, что Р обладает этим свойством». Предположим, что эта дизъюнкция неверна. Тогда неверны оба ее члена, т. е., с одной стороны, неверно, что Р обладает свойством F, а с другой стороны, неверно, что это неверно. Следовательно, при любом Р наше предположение ведет к про- противоречию, и это означает, что 1.1. Каково бы ни было Р, неверно, что дизъюнкция A) неверна. Это одна из форм одного из важнейших принципов так называемой интуиционистской логики — «закона двойного отрицания „закона исключенного третьего"». Обычно этот принцип связывают с именем выдающегося голландского ма- математика Л. Э. Я. Брауэра A881—1966), впервые подверг- подвергшего в работе 11] острой и принципиальной критике взгляд на „закон исключенного третьего" как на логический принцип, имеющий универсальную применимость *). В самом деле, в общем случае (т. е. когда предикат F про- произволен) мы не умеем указывать верный член дизъюнкции A). А ведь именно это и требуется для того, чтобы признать ее истинной [см. §7.1]! Если же принять во внимание еще и параметрический ха- характер этой дизъюнкции (она зависит от Р), то станет ясно, что для установления истинности высказывания B) «каково бы ни было Р, верна дизъюнкция A)», представляющего собой высказывание общности [см. § 9], требуется разыскать общий способ (алгорифм), указываю- указывающий по Р верный член дизъюнкции A). Если конструктивную семантику высказываний общности мы построим так, чтобы искомый алгорифм требовалось предъявлять в уточненном виде (например, в виде нормального алгорифма), то при впол- вполне определенном, конкретном предикате F такой алгорифм может оказаться невозможным. Тогда мы должны будем при- признать отрицание высказывания B) истинным, а высказывание B) ложным. Четыре примера таких предикатов мы можем почерпнуть в §§ 47 и 48. Это следующие предикаты Fi—Ft со свободной вербальной переменной Р для слов в алфавите Ао: ПРОБЛЕМА РАСПОЗНАВАНИЯ АННУЛИРОВАНИЯ 315 *) Подробное изложение позиции Брауэра читатель найдет в книге А. Рейтинга [1]. 1°. Fx: «Р есть запись несамоприменимого нормального алгорифма в алфавите Аг» (см. теорему § 47.4.2); 2°. F2: «Р есть запись самоприменимого нормального ал- алгорифма в алфавите Ах» (см. теорему § 47.4.3); 3°. F3: «Нормальный алгорифм 28„ неприменим к слову Р» (см. теорему § 48.2.3); 4°. Ft: «Нормальный алгорифм Шо применим к слову Р» (см. теорему § 48.2.4). Дальнейшие примеры читатель сможет найти в последую- последующем изложении. Читателю, не искушенному в конструктивной логике, кон- конструктивно верные отрицания высказываний типа B) пока- покажутся, вероятно, „слишком экзотическими" (хотя на самом де- деле в них нет ничего парадоксального). Поэтому мы не будем упо- употреблять их в данной монографии, предпочитая вместо них пользоваться их расшифровками — утверждениями о невоз- невозможности соответствующих алгорифмов. Тем не менее сам факт наличия таких высказываний является для конструктив- конструктивной логики принципиальным. § 51. Проблема распознавания аннулирования 1. Будем говорить, что алгорифм й аннулирует слово Р, если он перерабатывает Р в пустое слово. Аналогично проблеме распознавания применимости нор- нормального алгорифма [§ 48.1] может быть поставлена про- проблема распознавания аннулирования слов нормальным алго- алгорифмом, состоящая в следующем. Пусть дан нормальный алгорифм E) над алфавитом Г. Требуется построить нор- нормальный алгорифм над Г, применимый ко всякому слову в Г и аннулирующий те и только те слова в Г, которые аннулирует @. Мы покажем в этом параграфе, что алфавит Г и нормальный алгорифм @ в нем могут быть построены так, что проблема распознавания аннулирования слов в Г алгорифмом © будет неразрешимой. 2. Докажем прежде всего следующую лемму: 2.1. Каков бы ни был нормальный алгорифм % над ал- алфавитом А, может быть построен нормальный алгорифм 23 над А, аннулирующий те и только те слова в А, к ко- которым применим алгорифм §1. Пусть, в самом деле, Щ— нормальный алгорифм над ал- алфавитом А. Пусть Б —его алфавит. Построим нормальный алгорифм @б в Б, аннулирующий всякое слово в этом ал- алфавите [§ 29.2]. Определим алгорифм )8 как нормальную
316 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ [ГЛ. VI композицию алгорифмов St и ©б: A) аэ^(©Б°21) и покажем, что он является искомым нормальным алгориф- алгорифмом над А, аннулирующим те и только те слова в А, к которым применим алгорифм 31. Действительно, 23 есть нормальный алгорифм над Б [A), § 37.4.2], а так как Б очевидным образом является расширением А, то 33 есть нормальный алгорифм над А. Для любого Р в Б имеем, далее, B) %(Р)~&ъ( I > 52] сложностной подход Здесь 21 (Р) есть слово в Б, коль скоро алгорифм Ш при- применим к Р. Следовательно, ©Б C1 (Р)) SA при том же усло- условии. Условное равенство B) показывает, таким образом, что алгорифм ЭД тогда и только тогда применим к слову Р в Б, когда алгорифм 23 аннулирует это слово. Так как Б является расширением А, это и подавно справедливо для слов в А, что и требовалось доказать. 3. Теорема § 48.2.2 и лемма 2.1 дают следующий ре- результат: 3.1. Может быть построен нормальный алгорифм Ш^ над алфавитом Ао, удовлетворяющий следующему условию: невозможен нормальный алгорифм над Ао, аннулирующий те и только те слова в Ао, которые алгорифм 28Х не ан- аннулирует. В самом деле, построим нормальный алгорифм 2В0 со- согласно § 48.2.2 и применим к алфавиту Ао и алгорифму 2В0 лемму 2.1. Согласно этой лемме построим нормальный алгорифм 28*, аннулирующий те и только те слова в А0) к которым применим алгорифм 2В0. Согласно построению Ш1 тогда и только тогда не аннулирует какое-нибудь сло- слово в Ао, когда алгорифм 2$0 не применим к этому- слову, откуда и следует, что Шг есть искомый алгорифм. Теорема 3.1 допускает следующее усиление: 3.2. Может быть построен нормальный алгорифм 28 2 в алфавите А„, удовлетворяющий следующему условию: невоз- невозможен нормальный алгорифм над Ао, аннулирующий те и только те слова в Ао, которые алгорифм 282 не аннулирует. По сравнению с 3.1 усиление состоит в том, что 282 строится как алгорифм в Ао, тогда как 23Х строился как алгорифм над Ав. Переход от 3.1 к 3.2 аналогичен пере- переходу от § 48.2.1 к § 48.2.2; он осуществляется посредством построения перевода алгорифма 28Х в алфавит А„ что и 317 дает искомый алгорифм 282. Подробное проведение дока- доказательства теоремы 3.2 мы предоставляем читателю. Аналогично переходу от теоремы § 47.4.1 к теоремам § 47.4.2 и § 47.4.3 осуществляется переход от 3.2 к сле- следующим результатам: 3.3. Может быть построен нормальный алгорифм 28а в алфавите Ао, удовлетворяющий следующему условию: невоз- невозможен нормальный алгорифм над Ао, применимый ко вся- всякому слову в Ао и аннулирующий те и только те слова в Ао, которые Ш2 не аннулирует. 3.4. Может быть построен нормальный алгорифм 282 в алфавите Ао, удовлетворяющий следующему условию: невоз- невозможен нормальный алгорифм над Ао, применимый ко вся- всякому слову в Ао и аннулирующий те и только те слова в Ао, которые аннулирует 28а. Теорема 3.3 есть очевидное следствие теоремы 3.2, а теорема 3.4 легко доказывается на основе 3.3 с помощью разветвляющего алгорифма 31 б, л, о, л [§ 30.1], где Б — ал- алфавит предполагаемого алгорифма. Теорема 3.4 показывает, что для некоторого нормального алгорифма 282 в Ао проблема распознавания аннулирова- аннулирования слов в Ао неразрешима. Теорема 3.2 послужит нам основой для доказательства некоторых дальнейших теорем невозможности алгорифмов. 4. Теоретико-множественный комментарий. Теорема 3.2 фактически означает, что множество слов в алфавите Ао, не аннулируемых алгорифмом 2В2, непере- числимо. Тем более оно неразрешимо (теорема 3.3). Мно- Множество слов в Ао, аннулируемых алгорифмом 282, также неразрешимо (теорема 3.4). Но оно перечислимо. § 52. Сложностной подход к проблеме распознавания применимости 1. Учитывая важность теоремы § 48.2.4, мы дадим в этом параграфе еще одно ее доказательство, которое в известном смысле выявляет причину неразрешимости рассматриваемой в этой теореме проблемы. Доказательство будет основываться на особом подходе, развитом А. А. Марковым в его исследова- исследованиях *) по сложности алгорифмов. Подход этот заключается в следующем. Пусть мы хотим доказать неразрешимость некоторой нор- нормальной массовой проблемы 5\ определяемой вербальным пре- *) Основные результаты изложены в работах [16] и [17].
318 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ [ГЛ. VI дикатом F в алфавите А. Берем произвольное натуральное число N и рассматриваем слова в А с длиной, не превосходя- превосходящей N. Таких слов имеется конечное число, и потому, как нетрудно сообразить, предположение о том, что не существует нормального алгорифма над А, распознающего среди этих слов те из них, которые удовлетворяют предикату F, ведет к противоречию. Вполне возможно, что мы не будем знать, как построить такой алгорифм (ведь в общем случае всего лишь опровергается предположение о его несуществовании, а это, вообще говоря, не дает никакого способа его построе- построения). Но, может быть, нам удастся доказать, что всякий такой алгорифм имеет сложность, т. е. длину изображения *), не меньшую f(N), где /¦— некоторая неограниченная, т. е. при- принимающая сколь угодно большие значения, вычислимая арифметическая функция. Тогда можно будет утверждать, что рассматриваемая проблема неразрешима. В самом деле, если бы существовал нормальный алгорифм, решающий эту проблему, то он, в частности, при любом N решал бы ее для слов с длиной, не превосходящей N. А тогда сложность этого алгорифма была бы больше f(N) при любом N, что невозможно ввиду неограниченности /. Таким образом, идеяэтого подхода заключается в том, что- чтобы пытаться аппроксимировать исходную нормальную мас- массовую проблему З3 последовательностью „урезанных" проблем З3N (каждая из которых не может быть неразрешимой ввиду ее «конечности») так, чтобы минимальная сложность решения частичных проблем З3N оценивалась снизу некоторой неогра- неограниченной вычислимой функцией аргумента N. Если этот план действий удастся реализовать, то тем самым будет установлена неразрешимость проблемы З3. Намеченный подход мы теперь проиллюстрируем на про- простом примере рассмотренной в § 48 проблемы распознавания применимости алгорифма к исходному данному. Впервые при- пример алгорифма с линейной нижней оценкой сложности решения проблемы распознавания применимости опубликован в рабо- работе Я. М. Барздиня [1]. План нашего изложения восхо- восходит к дипломной работе В. А. Илюшкина, выполненной в МФТИ под руководством А. А. Маркова и доложенной осенью 1967 г. на работавшем в то время под руководством авторов семинаре по конструктивной математике МГУ и ВЦ АН СССР. 2. Как и в предыдущих параграфах, Ао и А1 будут озна- означать соответственно алфавиты ab и abed. Для нормальных §62] сложностной подход 319 алгорифмов St в Aj мы определим их изображения St" [§ 42.1] и записи §Х3 [§ 45.2]. Сложностью нормального алгорифма Щ. в At мы будем называть обозначаемое в дальнейшем сим- символом compl (Щ натуральное число [91и3 [ср. § 31.3]. Подобно утверждению § 47.2.1, легко доказывается сле- следующее утверждение: 2.1. Пусть N—натуральное число, а 33—нормальный алгорифм в А1 такой, что для всякого нормального алго- алгорифма Ш, в Ах с compl (Щ ^ N выполняется следующее усло- условие: 33 применим к Ж3 тогда и только тогда, когда Щ несамоприменим. Тогда compl C3) > N. В самом деле, если compl B3) ^ Л^, то 33 самоприменим тогда и только тогда, когда он несамоприменим. А отсюда, как мы уже видели это в доказательстве леммы § 47.2.1, легко выводится противоречие, что и дает compl C3) > ./V. Читатель видит, что в данном случае снова моделируется «парадокс Рассела». Пожалуй, еще большие ассоциации вызывает известный житейский «парадокс деревенского бра- брадобрея»: парикмахер, бреющий в данной деревне тех и только тех, кто сам себя не бреет, не живет в этой деревне. 3. Пусть теперь @—какой-либо нормальный алгорифм в Alt и пусть е—буква, не являющаяся буквой алфавита А^. Рассмотрим в алфавите Ахе нормальный алгорифм 35, опре- определенный следующей сокращенно записанной схемой: A) где литеральная переменная Епробегает алфавит Aj, а кон- конструкция & имеет тот же самый смысл, что и в доказа- доказательстве теоремы о композиции *). Легко может быть дока- доказано (мы предоставляем это читателю) следующее утверж- утверждение: 3.1. Если Р—слово в Aj, то 35 (Р) определено тогда и только тогда, когда ®(Р)^Л**). Пусть теперь 33 означает перевод алгорифма 3) в алфа- алфавит Аг [см. § 41.6], определенный таким образом, что роли алфавитов А и Б играют соответственно Ао и cde, а роль А0-литероидов, поставленных в соответствие буквам с, d и е, *) См. §31.3. *) См. с. 199. **) Как обычно, ($,(Р отлично от пустого слова. означает здесь, что 6 (Р) определено и
320 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ [ГЛ. VI играют слова cdc, cddc и cdddc. Оценим сверху compl C3) через compl (S). Пусть схема алгорифма (? состоит из k формул подста- подстановок. Тогда число букв алфавита Ау в схеме S равняется compl F) — ( Схема алгорифма (?8 содержит столько же букв алфавита Ах. Но число формул подстановок по сравнению со схемой ал- алгорифма (? у нее увеличилось на единицу. Кроме того, в схеме©8 появились вхождения буквы е, число которых может доходить до k -\-1. При переходе к переводу алгорифма (?s буквы алфа- алфавита Ах будут заменяться словами длины, не превосходя- превосходящей 4. Буквы 8 заменятся словами длины 5. Таким образом, сложность перевода алгорифма ©Е оценивается сверху числом 4[compl(G)-B*+ т. е. числом 4 compl F)— Нетрудно, кроме того, проверить, что первые три строки схемы A) дают в сложность 33 вклад, равный 86. Таким образом, compl C3) < 4 compl (©) —k + 90, и, значит, B) compl C3) < 4 compl F) + 89. 4. Покажем теперь, что 4.1. Если натуральное число N и нормальный алгорифм © в Ах таковы, что для всякого нормального алгорифма ?( eA,c compl CI)< N: 1) ©(ЭР) определено и 2) 6 C1s) S Л тогда и только тогда, когда 31 самоприменим, то compl ((?)> В самом деле, пусть N и E таковы, как указано в фор- формулировке. Построим 2) и 33 способом, указанным в п. 3. Тогда для нормального алгорифма 31 в Ах такого, что compl C1) < N, ?)C13) —а потому в силу § 41.6.27 и 33 (Я3) — определено тогда и только тогда, когда 31 несамоприменим [3.1]. Так как 33—нормальный алгорифм в Ах, то A) compl C3) >N [2.1]. Но тогда N < 4 compl ((?) + 89 [A), 3B)] $52] и сложностной подход compl 321 что и требовалось доказать. 5. Пусть @—нормальный алгорифм над алфавитом А, N—натуральное число. Будем говорить, что нормальный алгорифм © над А решает N-ограниченную проблему распо- распознавания применимости алгорифма @ к словам в алфавите А, если для любого слова Я в А такого, что [Рд ^ N, выпол- выполнены следующие два условия: 1) алгорифм 6 применим к Я и 2) (? (Р) Ж Л тогда и только тогда, когда @ приме- применим к Р. [ Возьмем теперь алфавит At и согласно видоизмененной теореме об универсальном алгорифме [§ 45.5.1] построим I такой нормальный алгорифм Ш над Ахе, чтобы для любого нормального алгорифма 31 в А± и для любого слова Р в этом алфавите выполнялось условное равенство A) 2ВC13еЯ)~31(Я). \ Согласно теореме об объединении построим такой нормаль- нормальный алгорифм й над алфавитом Аае, чтобы для любого слова Р в Ао выполнялось графическое равенство B) 5? (Р) г РеР. Определим теперь алгорифм ^ как нормальную композицию алгорифмов й и 2$: C) ^^=B8 ой). Тогда 5"—нормальный алгорифм над Аое и для любого слова Р в Ао D) ?(/>)~2В (.№(/>)) [C)] ~ 28 (РеР) [B)]. В частности, для любого нормального алгорифма 91 в At E) gf C13) ~ 28 C13е313) [D)] ~31C13) [A)]. Согласно теореме § 41.6.27, может быть построен нормаль- ный^алгорифм @ в двухбуквенном расширении алфавита Ао (т. е., например, в алфавите Ах) такой, что для любого слова Р в Ао ?у(Я) определено тогда и только тогда, когда определено W (Р), так что, в частности, алгорифм © при- применим к слову i't3, гдеЭ1—нормальный алгорифм вАх,тогда 11 А. А. Марков, Н. М. Нагорный
322 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ [ГЛ. VI и только тогда, когда определено 21 (Э13), т. е. когда 31 самоприменим. Покажем теперь, что справедливо следующее утверж- утверждение: 5.1. Пусть N—произвольное натуральное число. Каков бы ни был нормальный алгорифм (? в алфавите Alt решаю- решающий N-ограниченную проблему распознавания применимости алгорифма ® к словам в алфавите Ао, com !#-221. Действительно, если нормальный алгорифм (? в Ах ре- решает Af-ограниченную проблему распознавания применимо- применимости алгорифма @ к словам в Ао, то, в частности, для любого нормального алгорифма 31 в Ах такого, что [${3d^.N, 1) К CI3) определено и 2) @C13)з:Л тогда и только тогда, когда 31 самоприменим. Изображения нормальных алгорифмов в алфавите At суть слова в семибуквенном алфавите. Поэтому для любого такого алгорифма 31 [313<?<9-[31Н1Э, т. е. [ЗО3 < 9 compl C1). Пусть теперь 31 — нормальный алгорифм в Aj такой, что Тогда и, значит, complCl)<[-J]*). 9 compl C1) < N, N. Тогда: 1) (?Cl3) определено и 2) (§C13)з:Л тогда и только тогда, когда 31 самоприменим. Следовательно, 1.[?]-5 [4.1], и потому com >Ит-'Ь? что и требовалось доказать. 6. Таким образом, действительно, если бы проблема распознавания применимости алгорифма © к словам в ал- *) Квадратные скобки означают здесь целую часть заключенного в них числа. §53] НЕПОПОЛНИМЫЙ АЛГОРИФМ 323 фавите Ао была разрешимой, она решалась бы при помощи некоторого нормального алгорифма над алфавитом Ао. А тогда, согласно теореме приведения [§ 41.7.1], нашелся бы решаю- решающий ее нормальный алгорифм G в А^ Сложность этого алгорифма, согласно 5.1, была бы больше любого из чисел J_ . а/ 92— 36 " ZZ2 ' что очевидным образом невозможно. Замечание. Функция /(W) = ™.yv—22-^- является, таким образом, „нижней оценкой" сложности проблемы рас- распознавания применимости алгорифма @. Интересен вопрос о „верхней оценке" сложности этой проблемы для произ- произвольного нормального алгорифма. Характер ее усматривается из следующего предложения: 6.1. Каков бы ни был нормальный алгорифм ® над алфа- алфавитом Ао, может быть указано такое натуральное число С, что для всякого натурального N можно привести к проти- противоречию предположение о несуществовании нормального алгорифма 6 в алфавите Alt решающего N-ограниченную проблему распознавания применимости @ к словам в алфа- алфавите Ао и такого, что По поводу доказательства этого утверждения см. Я. М. Барздинь [1] и Н. В. Петри [1]. § 53. Непополнимый алгорифм 1. Пусть А—какой-либо алфавит. Нормальный алгорифм 21 над алфавитом А мы будем называть полным относи- относительно А, если он применим ко всякому слову в А. Пусть 31 и 23—два нормальных алгорифма над А. 23 мы будем называть пополнением 31 относительно А, если: 1) 23 полн относительно А и 2) всякий раз, когда Э( применим к какому-либо слову Я в А, имеет место графическое ра- равенство 23 (Р) Ж 81 (Р). Нормальный алгорифм 31 над А мы будем называть пополнимым относительно А, если существует его попол- пополнение относительно А. Рассмотрим следующие два примера: 1°. Пусть 31 — нормальный алгорифм над А, не примени- применимый ни к какому слову в А (иначе говоря, алгорифм, не и»
324 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ [ГЛ. VI принимающий на словах в А ни одного значения). Легко видеть, что 31 пополним относительно А: его пополнением является любой полный относительно А нормальный алго- алгорифм над А. 2°. Пусть 33—нормальный алгорифм над А, принимаю- принимающий на словах в А в точности одно значение, т. е. такой, что всякий раз, когда 93 применим к какому-либо слову Я в A, 33 (Я) S Q, где Q—некоторое фиксированное слово в А. Легко видеть, что 23 также пополним относительно А: его пополнением является всякий нормальный алгорифм над А, перерабатывающий любое слово Я в А в слово Q (такой «алгорифм-константу» нетрудно построить; см. § 29.3). Естественно возникает вопрос: сколь долго будет сохра- сохраняться описанная в этих примерах ситуация? Ответ на него дает приводимая ниже теорема 1.1: оказывается, что уже среди алгорифмов, принимающих всего лишь два различных значения, имеются непополнимые. Итак, 1.1 *). Может быть построен такой нормальный алго- алгорифм © над алфавитом Ао, что: 1) всякий раз, когда © применим к какому-либо слову Я в Ао, © (Р) Ж а или © (Р) з: b и 2) © непополним относительно Ао. Доказательство. Построим, как это уже делалось в § 52.5, нормальный алгорифм $ над алфавитом А1 так, чтобы для любого нормального алгорифма 31 в А^ выполня- выполнялось условное равенство A) ~ 31C1*). Пусть Ф—алфавит алгорифма $\ Легко видеть, что а и b являются буквами Ф. Обозначим символом ©х разветв- разветвляющий нормальный алгорифм 31ф, а, а, ь [§ 30.1]. Согласно построению B) <М«)га и C) ^(Р)ЖЬ для любого слова Р в Ф, Искомый алгорифм © композицию алгорифмов D) © отличного от а. мы определим как и G^: нормальную *) См. комментарий в п. 3, §53] НЕПОПОЛНИМЫЙ АЛГОРИФМ 325 © — нормальный алгорифм над Ф и тем самым над А„, и для любого Р в Ао имеет место условное равенство E) ®(Р)^^(^(Р)) [D)], так что, действительно, если © (Я) определено, то или @(Я)гЬ [E), B), C)]. Покажем теперь, что алгорифм © непополним относи- относительно Ао. В самом деле, предположим, что © пополним относительно Ао, и пусть ?—пополнение © относительно Ао. Тогда й—нормальный алгорифм над Ао, полный относи- относительно Ао и такой, что если для какого-либо Я в Ао ©(Я) определено, то ?(Я)Ж@(Я). Пусть Л—алфавит алгорифма ?. Буквы а и b входят в Л. Обозначим символом ©2 разветвляющий алгорифм 21л, a, ft, a [§ 30.1]. Согласно построению F) 0L (с и G) . ©2(J для любого слова Я в Л, отличного от а. Построим нормальный алгорифм Эг, определив его как нормальную композицию алгорифмов ? и (?2: (8) М^(?2о8). fft—нормальный алгорифм над Л и, значит, над Ао, и по- потому для любого слова Я в Ао имеет место условное ра- равенство (9) ЩР)~Ъг(Ъ(Р)) [(8)]. Так как ? полн относительно Ао, а (?2 применим к любому слову в Л, условное равенство в (9) может быть заменено графическим: A0) ЗД з:®, (8 (/>)), так что алгорифм SR также полн относительно Ао. В силу A0), F) и G) его значениями являются слова а и Ь, так что может быть построен вполне эквивалентный ему отно- относительно Ао нормальный алгорифм fRx в алфавите Ах. Рас- Рассмотрим слово 9i? и покажем, что (И) ®(Эф-Ё8 №)*). *) Напоминаем, что графическое различие выражений предполагает их осмысленность.
326 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ [ГЛ. VI §53] НЕПОПОЛНИМЫЙ АЛГОРИФМ 327 Тем самым будет опровергнуто предположение о том, что й является пополнением @. В самом деле, &(Ш1) определено, так как SR?—слово в алфавите Ао, а й, по предположению, полн относительно А„. Кроме того, A2) ©(Офг-еЛЗЧЙ!)) [E)] -(МЗМЗФ) [0I и, по построению 9ц, A3) эмето^ядоо, так что A4) © (8«f) ~ e2 Eft (SH?)) [A2), A3)]. Как уже отмечалось, 9i (910 определено, причем 91 (910 г о или 9tCRiKE6. Таким образом, в A4) знак «~» может быть заменен знаком «5> и, кроме того, в силу B) и C) ©C^K:31(910 [A4), A5)] так что имеем A6) и, значит, A7) или A8) Но A9) и потому B0) Пусть теперь B1) Тогда Но это равенство невозможно ни при ®(8Ц)^а [6], ни при © C10 з: Ь [G)]. Следовательно, имеем A1), [A7), A8)], что и оставалось доказать. 2. Теорема 1.1 выражает существенно более сильный факт теории алгорифмов, чем теорема § 48.2.4. Именно, имеет место следующее утверждение: 31(9103:6,(8 010) [A0)], ®(SR02:.6.(8(rR0) [A6), A9)]. © C1?) з: 8 (Э10- 2.1. Пусть 31—нормальный алгорифм над алфавитом А такой, что проблема распознавания применимости 21 к сло- словам в А разрешима. Тогда 31 пополним относительно А. В самом деле, пусть выполнены условия нашего утверж- утверждения. Тогда может быть указан такой нормальный алго- алгорифм ? над алфавитом А, что для любого слова Р в А будут выполняться условия A) ЩР) B) (?(Р)ЖА тогда и только тогда, когда Ш(Р). Возьмем какой-либо такой нормальный алгорифм 35 над А, что для любого Р в А будет C) !33(Р), и по теореме о разветвлении построим нормальный алгорифм который обозначим буквой 25. 25 является нормальным алго- алгорифмом над А и для любого Я в А D) 25 (Р) ~ 21 (Я), если (?(P)SA, и E) 25(Р)~33(Я), если (); _ Заметим, что если Р—слово в А и ®(/))ЖЛ, то F) 2>(/ Действительно, в этом случае !21(/>) [B)], и потому, в силу D), имеет место F). Покажем, что 25 полн относительно А. В самом деле, пусть Р —произвольное слово в А. Тогда в силу A) !К(Р). Если 6'(РIЛ, то !25(Я) в силу F). Если же 6(Р)^Л, то 125 (Я) в силу E) и C). _ Покажем теперь, что если Р в А и !21 (Р), то 25 (Р) ?.21 (Р). В самом деле, пусть Р в А и !2l (P). Тогда, согласно B), E(РK1Л, а тогда имеет место F). Таким образом, алгорифм 25 является пополнением 21 относительно А, что и доказывает 2.1. Отсюда следует 2.2. Если нормальный алгорифм 2( над алфавитом А непополним относительно А, то проблема распознавания применимости 21 к словам в А неразрешима.
328 ОСНОВНЫЕ ТЕОРЕМЫ НЕВОЗМОЖНОСТИ АЛГОРИФМОВ [ГЛ. VI Существенность усиления усматривается из того, что 2.3. Могут быть указаны алфавит А и нормальный алгорифм Si над А такие, что проблема распознавания при- применимости 31 к словам в А неразрешима, но 91 пополним относительно А. Для доказательства достаточно взять какой-либо нор- нормальный алгорифм 23 в алфавите Б с неразрешимой про- проблемой распознавания применимости 23 к словам в некото- некотором подалфавите А алфавита Б и построить нормальную композицию SI этого алгорифма с «аннулирующими нормаль- нормальным алгорифмом в Б. Легко видеть, что для любого Р в А выполняется условие: Ш (Р) тогда и только тогда, когда !33(Я). Кроме того, если Р в А и Ш(Р), то $1(Р)Ж\. Отсюда следует, что 31 пополним относительно А [1.2°], что и оставалось доказать. 3. Теоретико-множественный комментарий к теореме 1.1. Пусть А — алфавит, а М и N—какие- либо непересекающиеся множества слов в нем. Мы будем говорить, что М и N отделимы разрешимыми множествами, если существуют непересекающиеся разрешимые множества Мг и Nx слов в А такие, что М^М1 и Af s N1. Нетрудно показать, что для нормального алгорифма @, построенного в доказательстве теоремы 1.1, множества Ма и Мь всех слов в алфавите Ао таких, что &(Р)Жа и ®(Р)ЖЬ соответственно, перечислимы. Вместе с тем они не отделимы разрешимыми множествами. Покажем это. В самом деле, пусть Na и Nb—непересекающиеся разре- разрешимые множества слов в алфавите Ао такие, что Ма s Na и Мъ s Nb. Пусть нормальный алгорифм E над Ао прове- проверяет принадлежность слов в А, к множеству Na. Это зна- значит, что для любого Р в Ао: 1) ©(Р) определено и 2) (?(/>K?Л тогда и только тогда, когда P?Na. Пусть За и Зь—нор- Зь—нормальные алгорифмы, для любого Р в Ао удовлетворяющие условиям 2A) и 2B). Построим нормальный алгорифм 8 как нормальное разветвление алгорифмов -За и Зь, управ- управляемое алгорифмом (?: Покажем, что S является пополнением ® относительно Ао. В самом деле, S полн относительно А„, так как алгорифмы 6, За и Зь применимы к любому слову в Ао. Пусть теперь Р—слово в Ао и &(Р) определено. Тогда &(Р)Жа или &(Р)ЖЬ. В первом случае Р?Ма, а значит, P?Na, и потому ($, (Р) Ж Л. Следовательно, в этом случае 2 (Р) Ж За (Р), §53] НЕИСПОЛНИМЫЙ АЛГОРИФМ 329 т. е. Q(P)&.a. Во втором случае Р?МЬ и, значит, Р ? Afb. Но Nu и Nb не пересекаются, и потому P(?Na. Следова- Следовательно, E(/>);?Л и тогда %(Р)Ж$Ь(Р), т. е. &{Р)ЖЬ. Итак, действительно, S является пополнением @, что про- противоречит теореме 1.1. Значит, множества Ма и Мь не от- отделимы разрешимыми, что и требовалось доказать. Таким образом, теорема 1.1 дает пример двух непересекаю- непересекающихся перечислимых множеств слов в алфавите Ао, не отде- отделимых разрешимыми множествами. То обстоятельство, что эти множества у нас оказались множествами слов в двухбук- венном алфавите, обусловлено не существом дела, а техниче- техническими деталями доказательства: аналогичные множества мо- могут быть построены и в однобуквенном алфавите, и тогда их можно рассматривать как обладающие соответствующими свойствами множества натуральных чисел. Именно в таком виде этот результат и опубликован впервые в 1950 г. С. К. К л и ни [3]. Результат является аналогом известной теоремы П. С. Но- Новикова о существовании двух В-неотделимых С А -множеств, и в 1946/47 учебном году, ведя специальный семинар, посвя- посвященный выяснению аналогии между дескриптивной теорией множеств и теорией перечислимых множеств, П. С. Новиков излагал, в частности, и пример двух перечислимых множеств натуральных чисел, не отделимых разрешимыми. К сожалению, относящиеся к этому кругу вопросов результаты П. С. Но- Новикова остались неопубликованными (см. об этом на 277-й странице книги В. А. Успенского [2] и примечание ре- редактора русского перевода В. А. Успенского на 277-й же стра- странице книги С. К. К л и н и [5]).
ГЛАВА VII ВЫЧИСЛИМЫЕ ВЕРБАЛЬНЫЕ ФУНКЦИИ В этой главе мы изложим некоторые факты общей теории алгорифмов, наиболее естественным образом формулируемые в терминах „алгорифмов от нескольких аргументов". Достаточ- Достаточно удобным техническим средством здесь может служить вве- введенное в § 24 понятие у-системы слов в алфавите А. Буква у, однако, играет в у-системах двоякую роль: с одной стороны, она отделяет члены систем друг от друга, а с другой — заме- заменяет „внешние скобки", и в сочетании с традиционной функци- функциональной нотацией, где система аргументов функции заклю- заключается в скобки, употребление такого понятия системы при- привело бы к непривычной для глаза системе обозначений. Поэтому мы условимся отбрасывать у непустых у-систем окаймля- окаймляющие их буквы у. Таким образом, вместо одночленной у-сис- темы уЯу у нас будет фигурировать слово Р, вместо двучлен- двучленной у-системы уЯуфу — слово PyQ и т. д. § 54. Вычислимые вербальные функции 1. Мы будем считать фиксированным некоторый алфавит А, содержащий буквы а и Ь. Системы слов в этом алфавите мы будем рассматривать как слова в алфавите Ау с учетом только что сделанного замечания. Кроме того, мы добавим к Ау еще какие-нибудь две новые буквы а и р\ чтобы иметь возможность произвольные нормальные алгорифмы над Ау трактовать как нормальные алгорифмы в алфавите Асфу, который мы будем обозначать символом А+. Записи нормальных алгорифмов мы (обычным образом) определим именно для этого алфавита, так что, в частности, нормальные алгорифмы в А+ тоже смогут фигурировать в качестве значений аргументов вводимых ни- ниже функций. Вычислимой вербальной функцией N переменных (N^1) в алфавите А мы будем называть любой нормальный алгорифм в алфавите А+, перерабатывающий всякую Af-членную систе- систему слов в алфавите А, к которой он применим, в какое-либо слово в алфавите А, которое и будет считаться значением функ- функции на данной системе. §54] ВЫЧИСЛИМЫЕ ВЕРБАЛЬНЫЕ ФУНКЦИИ 331 Поскольку алфавит А фиксирован, упоминания о нем в дальнейшем часто будут опускаться. Проиллюстрируем это определение на нескольких про- простых примерах. Г. Нормальный алгорифм в А+ со следующей сокращенно записанной схемой: (| пробегает алфавит Ау) при любом N^1 является вычисли- вычислимой вербальной функцией N переменных. Ее значение на лю- любой Af-членной системе слов равно пустому слову. 2°. Нормальный алгорифм в А+ со схемой при любом N~^\ является вычислимой вербальной функцией N переменных. Это — „нигде не определенная" функция. 3°. Нормальный алгорифм в А+ со схемой является вычислимой вербальной функцией одной переменной („тождественная функция"), но при W>1 этот алгорифм не является вычислимой вербальной функцией N переменных (из-за того, что при Af> 1 в слове, являющемся результатом применения этого алгорифма к Af-членной системе, всегда будет присутствовать буква у). Говоря о вычислимых вербальных функциях (а в дальней- дальнейшем — и о вычислимых операторах над ними), мы иногда, в случаях громоздких словосочетаний, будем пользоваться эллиптизированной терминологией, сокращая часть употребля- употребляемого термина. Так, вместо «вычислимых вербальных функ- функций» мы иногда будем говорить просто о «функциях». В связи с этим мы хотели бы особо подчеркнуть, что вычислимая вер- вербальная функция не есть функция, удовлетворяющая таким-то и таким-то условиям. Вычислимая вербальная функция — это нормальный алгорифм, подчиненный определенным ограничениям. Понятие это мы вводим без ссылки на какое-либо общее понятие функции, и обозначающий его термин должен восприниматься как единое слитное словосоче- словосочетание, а не «через ближайший род и видовое отличие». Мы специально отмечаем это обстоятельство ввиду того, что в литературе можно встретиться и с другим подходом, в рамках которого вычислимая вербальная функция одной пере- переменной будет определяться как «такое отображение множе- множества слов в себя, что его значения вычисляются при помощи
332 ВЫЧИСЛИМЫЕ ВЕРБАЛЬНЫЕ ФУНКЦИИ [ГЛ. VII некоторого алгорифма». Мы хотели бы четко отграничить наш подход от упомянутого ввиду тесной связи последнего с тео- теоретико-множественной концепцией. Есть и еще один довод в пользу нашего определения. Мы хотели бы, чтобы вычислимую функцию можно было (хотя бы в принципе) вычислять, чтобы было известно, как это де- делать. Наше определение удовлетворяет этому требованию: вычислить значение вычислимой функции в какой-либо точ- точке — значит применить соответствующий нормальный ал- алгорифм к подходящему исходному данному. Что же касается только что сформулированного определения, то здесь дело обстоит не так просто. В самом деле, пусть Ф — высказыва- высказывание, вопрос об истинности которого представляет собой нере- нерешенную математическую проблему (мы возьмем для конкрет- конкретности проблему Ферма). Определим арифметическую функцию /, положив для любого натурального N j 1, если Ф верно, \0, если Ф неверно. Математик, принимающий «закон исключенного третьего», должен отнести эту функцию к вычислимым. Между тем ясно, что уже нахождение значения /@) равносильно решению про- проблемы Ферма. Аналогичную функцию можно определить и для любой другой „трудной" проблемы (неисчерпаемый источ- источник таких проблем дает любая неразрешимая нормальная массовая проблема). Нам представляется парадоксальным считать вычислимой всюду определенную функцию-констан- функцию-константу (ее значение равно 0 или 1), у которой не видно никаких подступов уже, например, к вычислению /@). Разумеется, формального противоречия здесь нет, но есть известное рас- расхождение с обычным словоупотреблением, в рамках которого суффикс «-им» несет определенную смысловую нагрузку. Занимая такую позицию, приходится игнорировать естест- естественный, „обиходный" смысл этой языковой конструкции. Описанная ситуация носит общий характер. С аналоги- аналогичными определениями мы встретимся в дальнейшем, когда бу- будем рассматривать конструктивные действительные числа, конструктивные функции действительной переменной и т. д Все эти понятия будут вводиться самостоятельно, без каких- либо ссылок на соответствующие традиционные понятия. 2. Рассмотрим один стандартный способ представления вы- вычислимых вербальных функций. Пусть Б—какой-либо алфавит, являющийся расшире- расширением алфавита Ау, Рассмотрим „фильтрующий" нормальный §54] алгорифм схемой ВЫЧИСЛИМЫЕ ВЕРБАЛЬНЫЕ ФУНКЦИИ 333 б, а в алфавите Б с сокращенно записанной Ц где ? пробегает алфавит Б\А. Легко видеть, что $б. а при- применим к слову Q в Б тогда и только тогда, когда оно есть слово в А, причем в этом случае выполняется графи- графическое равенство 3? Пусть теперь 33—какой-либо нормальный алгорифмов Б. Рассмотрим нормальную композицию ($Б, а °23) алгориф- алгорифмов 33 и ?Уб, а ¦ Для любой Af-членной системы S слов в А 33S так что в случае определенности выражения (^б, a °33)(S) значение его есть слово в А. С другой стороны, если алгорифм 33 перерабатывает всякую Af-членную систему слов, к которой он применим, в слово в А, то для любой такой системы S имеет место условное равенство Переведем теперь алгорифм @Б, а °Щ в алфавит А+» взяв в качестве ..базового" алфавита, т. е. алфавита, кото- который при переводе не затрагивается, алфавит Ау. Результи- Результирующий „приведенный" алгорифм мы обозначим символом 33'. Описанную процедуру можно, в частности, применить и к нормальным алгорифмам 33 в^алфавите А+. При этом всякий алгорифм 33' при любом N^\ будет вычислимой вербальной функцией N переменных и, если алгорифм 33 уже сам был такой функцией, для любой Af-членной сис- системы S слов в А будет выполняться условное равенство 33'(S)~43(S), так что среди „приведенных" функций вида 33' будут иметься (с точностью до эквивалентности) все вычислимые вербаль- вербальные функции любого числа переменных. 3. В дальнейшем будет удобен следующий способ фикса- фиксации значений первого аргумента функции рассматриваемого нами типа. Пусть Р — какое-либо слово в А. Рассмотрим в Ау нор- нормальный алгорифм $р со с хемой
334 ВЫЧИСЛИМЫЕ ВЕРБАЛЬНЫЕ ФУНКЦИИ 1ГЛ. VII Всякое слово Q в алфавите Ау этот алгорифм перерабаты- перерабатывает в слово PyQ и, значит, всякую Af-членную систему слов 5 — в {N-\- 1)-членную систему PyS. Пусть теперь &—какой-либо нормальный алгорифм над алфавитом Ау. Рассмотрим нормальную композицию (91 о$р) алгорифмов $р и §{. Она представляет собой нормальный алгорифм над алфавитом Ау такой, что для любого слова Q в Ау §55] ТЕОРЕМА О НЕПОДВИЖНОЙ ТОЧКЕ 335 Приведем алгорифм ($1о$р) в алфавит А+ так, чтобы роль „базового" алфавита играл алфавит Ау. Полученный таким образом нормальный алгорифм мы, следуя Г. С. Цейтину [3], будем обозначать символом ЖР. Если 91— вычислимая вербальная функция W+1 пере- переменной, то для любой Af-членной системы 5 A) $Lp(S)~9l(PyS). Значит, всякую jV-членную систему слов, к которой алго- алгорифм Ш.Р применим, он перерабатывает в некоторое слово в алфавите А, и потому ШР представляет собой вычислимую вербальную функцию N переменных. В понятном смысле слова эта функция получается из функции 91 путем фикса- фиксации первого аргумента. 4. Проанализировав способ построения схемы алгорифма (9(°$>) [§ 37.1], а затем и Щ.р [§ 41.6], читатель без труда убедится, что может быть построен нормальный алгорифм й: над алфавитом Ау такой, что для любого нормального алго- алгорифма 9( в А+ и для любого слова Я в А будет иметь место графическое равенство A) &( Легко сообразить, что с использованием процедуры, ука- указанной в п. 2, алгорифм й может быть задан даже в виде вычислимой вербальной функции двух переменных в алфа- алфавите А. 5. Замечание. Наличие нормального алгорифма $, реализующего конструкцию $.р, разумеется, не представ- представляет собой какого-либо исключения. Аналогичные (нормаль- (нормальные) алгорифмы могут быть построены и для других рас- рассмотренных нами сочетаний нормальных алгорифмов. Так, например, при фиксации алфавитов компонируемых алго- алгорифмов может быть построен нормальный алгорифм, пере- рабатывающий пару записей любых двух нормальных алго- алгорифмов 21 и 53 в запись их нормальной композиции E3°91), при фиксации алфавитов объединяемых алгорифмов может быть построен нормальный алгорифм, перерабатывающий пару записей нормальных алгорифмов 21 и 53 в запись их нормального объединения (Щ^53), и т. д. Существование таких алгорифмов подсказывается принципом нормализации, и схемы их действительно могут быть осуществлены. При надлежащей регламентации понятия «буквы» («буквами» можно, например, согласиться считать слова вида ab'a, i > 0) можно построить и нормальный алгорифм, который всякое натуральное N будет перерабатывать в запись уни- универсального для Af-буквенного алфавита нормального алго- алгорифма. Фактическое построение таких алгорифмов пред- представляло бы собой известное усиление теорем, доказанных нами в гл. IV и V. § 55. Теорема о неподвижной точке В этом параграфе мы изложим один из самых замечатель- замечательных результатов общей теории алгорифмов — теорему Клинио неподвижной точке. Несмотря на относительную простоту доказательства, теорема эта вскрывает весьма неожиданный факт и имеет многочисленные и важные-применения. К сожа- сожалению, в данной монографии мы не сможем в достаточной мере коснуться их за недостатком места (тем не менее см. теорему § 56.1.1). 1. Пусть 91 и 53—вычислимые вербальные функции одной и двух переменных соответственно. Мы будем говорить, что S3 вычисляет 91, если для любого Q в А имеет место условное равенство 23( Рассмотрев под углом зрения сказанного в предыдущем пара- параграфе формулировку видоизмененной теоремы об универсаль- универсальном алгорифме [§ 45,5,1], мы без труда увидим, что 1.1. Может быть построена вычислимая вербальная функ- функция двух переменных 2В, вычисляющая любую вычислимую вер- вербальную функцию одной переменной. Построение такой „универсальной" функции, как мы в свое время убедились, требует определенных усилий. Замечатель- Замечательным образом оказывается также (ср. К л и ни 15], с. 314, тео- теорема XXVII), что
336 ВЫЧИСЛИМЫЕ ВЕРБАЛЬНЫЕ ФУНКЦИИ [ГЛ. VII 1.2. Всякая вычислимая вербальная функция двух перемен- переменных вычисляет некоторую вычислимую вербальную функцию одной переменной. В самом деле, пусть 53—произвольная вычислимая вер- вербальная функция двух переменных. Используя вычислимую вербальную функцию й из § 54.4, а также отсекающие нормальные алгорифмы За* v и ®av. v [§ 29.4] и применяя теоремы объединения и композиции, построим вычислимую вербальную функцию двух переменных 6 такую, что для любых слов Р и Q в алфавите А имеет место условное равенство Тогда, в частности, для любого Q в А ~23((S|sYQ) [§54.4A)]. Но 6(©3YQ)~Se3(Q) [§ 54.3A)] и, значит, Таким образом, 33 действительно вычисляет вычислимую вербальную функцию одной переменной (lg3. Теорема до- доказана. Заметим, что функция &ц3 эффективно строится по 93, и мы смогли бы даже построить нормальный алгорифм, перерабатывающий запись любой такой функции 23 в запись соответствующей функции ©е3, так что доказательство тео- теоремы 1.2 вполне конструктивно. 2. Мы будем говорить, что нормальный алгорифм @ в алфавите А+ является вычислимым оператором над вы- вычислимыми вербальными функциями одной переменной, если: 1) @ является вычислимой вербальной функцией одной переменной и 2) запись всякой вычислимой вербальной функции одной переменной © перерабатывает в запись не- некоторой другой функции того же самого типа. Если слово Р в алфавите Ао является записью некото- некоторого нормального алгорифма в А+, то символом </>> мы будем обозначать тот самый нормальный алгорифм в А+, записью которого является Р. ; 551 ТЕОРЕМА О НЕПОДВИЖНОЙ ТОЧКЕ 337 Имеет место следующая теорема „о неподвижной точке": 2.1. Каков бы ни был вычислимый оператор Ш над вы- вычислимыми вербальными функциями одной переменной, может быть указана такая вычислимая вербальная функция (? одной переменной, что для любого слова Р в алфавите А имеет место условное равенство В самом деле, пусть @—произвольный вычислимый опе- оператор над вычислимыми вербальными функциями одной переменной. Пусть 2В—„универсальная функция", сущест- существование которой утверждается в 1.1. Аналогично тому, как это делалось в доказательстве теоремы 1.2, построим вы- вычислимую вербальную функцию двух переменных 23 такую, что для любых Р и Q в А будет выполняться условное равенство Согласно теореме 1.2 может быть указана вычислимая вер- вербальная функция одной переменной 6 такая, что для лю- любого Р в А 23 (®3уР) ~ 2В Но и потому что и требовалось доказать. Таким образом, всякий вычислимый оператор над вычисли- вычислимыми функциями одной переменной имеет неподвижную точку. 3. Замечания. Г. Читатель без труда сформулирует и докажет соответствующие утверждения для случая функций N переменных. 2°. Неподвижная точка оператора @ строится эффективно. На самом деле может быть построен даже нормальный алго- алгорифм, перерабатывающий запись произвольного оператора рассматриваемого типа в запись его неподвижной точки. 3°. Любопытно отметить, что в приводимом нами определе- определении оператора отсутствует какое-либо требование „согласо- „согласованности": не требуется, чтобы „равные" (в смысле совпадения значений) функции оператор снова переводил в „равные".
338 ВЫЧИСЛИМЫЕ ВЕРБАЛЬНЫЕ ФУНКЦИИ [ГЛ. VII 4. Проиллюстрируем теорему 2.1 следующим примером. Рассмотренный в § 54.2 способ представления вычислимых вербальных функций позволяет „расположить" записи при- приведенных функций одной переменной в эффективную последо- последовательность. Например, мы можем упорядочить записи по их длине, а при равной длине — лексикографически. Можно, конечно, взять и какой-нибудь другой, „более хитрый" способ выписывания членов этой последовательности, лишь бы он допускал реализацию в виде нормального алгорифма. Утверж- Утверждается, что в любой такой последовательности можно будет найти рядом стоящие записи двух равных (т. е. принимающих при равных аргументах одинаковые значения) функций. В самом деле, без труда может быть построен вычислимый оператор @, переводящий всякую запись из этой последова- последовательности в соседнюю и распространенный на записи осталь- остальных вербальных функций с учетом равенства их приведенным функциям. Согласно теореме 2.1 этот оператор имеет неподвиж- неподвижную точку, а тогда она найдется и среди функций построенной нами последовательности, что и требовалось доказать. Легко видеть, что записи равных функций найдутся не только рядом, но и на любом заданном расстоянии. Читатель, без сомнения, найдет и другие любопытные примеры. § 56. Распознавание инвариантных свойств вычислимых вербальных функций В настоящем параграфе мы изложим теорему Успенского — Раиса о неразрешимости проблемы распознавания нетриви- нетривиальных инвариантных свойств вычислимых вербальных функ- функций. Для конкретности мы снова будем рассматривать функции только одной переменной, иногда не оговаривая этого спе- специально. Перенос на общий случай не составляет труда. 1. Говоря о свойствах вычислимых вербальных функций, мы будем иметь в виду свойства их записей, т. е. факти- фактически одноместные вербальные предикаты для слов в алфа- алфавите Ао. Выражения «функция 91 обладает свойством F» и «запись функции 91 обладает свойством /•"» мы будем счи- считать синонимичными. Пусть 31 и S3—вычислимые вербальные функции (одной переменной). Мы будем говорить, что Ш и 23 эквивалентны, и писать 9( « 33, §56] РАСПОЗНАВАНИЕ ИНВАРИАНТНЫХ СВОЙСТВ 339 если для любого Р в А имеет место условное равенство 91 (Р) ~ 23 (Р). Пусть F—свойство вычислимых вербальных функций. Мы будем называть его инвариантным, если из того, что 91 им обладает, а 23 да 91, следует, что 23 также обладает F. Мы будем называть F нетривиальным, если могут быть указаны две такие вычислимые вербальные функции, что одна из них им обладает, а другая не обладает. Имеет место следующее утверждение (В. А. Успен- Успенский [1]*)—Г. Райе [1]). 1.1. Всякое нетривиальное инвариантное свойство F вычислимых вербальных функций одной переменной неразре- неразрешимо в том смысле, что не существует нормального алго- алгорифма (S над алфавитом Ао, применимого к записи всякой вычислимой вербальной функции одной переменной 91 и пере- перерабатывающего эту запись в пустое слово тогда и только тогда, когда 9Х обладает свойством F. В самом деле, пусть F—указанное в формулировке тео- теоремы нетривиальное инвариантное свойство. Покажем, что из предположения о существовании нормального алго- алгорифма (? с указанными в формулировке теоремы свойствами вытекает противоречие. Действительно, пусть (S — нормальный алгорифм над алфавитом Ао, проверяющий (в указанном выше смысле слова) наличие свойства F у произвольной функции Ш. Пусть функция 9lt обладает свойством F, а функция 912 им не обладает, так что B) gE Построим два нормальных алгорифма 3t и 32 в алфа- алфавите Ао так, чтобы для любого Р в Ао выполнялись гра- графические равенства C) \(Р)^т и D) $ЛР)жШ- Затем по теореме разветвления построим нормальный алго- алгорифм E) @^C *) См. также В. А. Успенский [2], с. 310, теорема 9.
340 ВЫЧИСЛИМЫЕ ВЕРБАЛЬНЫЕ ФУНКЦИИ [ГЛ. VII Непосредственно очевидно, что для любого слова Р в Ао (Ь) © (/) j Ш1 если и если © применим к Я, то 6 также применим к. этому слову. Таким образом, слова в алфавите Ао алгорифм ® в случае применимости снова перерабатывает в слова в Ао. С учетом процедуры, изложенной в § 54.2, можно счи- считать, что алгорифм © является вычислимой вербальной функцией одной переменной. Так как алгорифм © приме- применим к записи любой вычислимой вербальной функции одной переменной 91, тем же самым свойством обладает и @ [F)]. Кроме того, @C13) всякий раз представляет собой запись некоторой вычислимой вербальной функции (З^ или 9t2), так что @ является вычислимым оператором над вычисли- вычислимыми вербальными функциями одной переменной. Согласно теореме § 55.2.1 этот оператор имеет некоторую неподвиж- неподвижную точку 33. Очевидным образом G) 33»<@B33)>. ¦ Поэтому в силу инвариантности F 33 обладает этим свойст- свойством тогда и только тогда, когда им обладает <@B33)>. Предположим теперь, что S3 обладает свойством F. Тогда ®(«э)гЛ. Но тогда 0C33)зг91![F)] и, значит, <@ (933)> есть 9l2, a 912 не обладает F. Поэтому 23 не обладает F. С другой стороны, предположим, что 23 не обладает F. Тогда EB33)^Л. Но тогда ®(ЩъЩ [F)] и, значит, <©C33)> есть Sllt a 9tx обладает F. Поэтому неверно, что 33 не обладает F. Полученное противоречие —«33 не обладает F', и неверно, что 33 не обладает F»—и доказывает теорему 1.1. Заметим, что, несколько изменив рассуждение, мы могли бы получить другое, „более сильное" и в определенном отношении более естественное противоречие «33 обладает F, и неверно, что 23 обладает F». Но для нашей цели это не- несущественно, и мы этим заниматься не будем. 2. Рассмотрим следующие примеры. Г. Свойство Fp вычислимой вербальной функции «быть применимой к заданному фиксированному слову Я» при любом Р является инвариантным и нетривиальным. Следовательно, оно неразрешимо *). (Этот пример является любопытным допол- дополнением к теореме § 48.1.4.) *) В примерах 1°—5° неразрешимость понимается в смысле, указанном в формулировке теоремы 1.1. i 56] РАСПОЗНАВАНИЕ ИНВАРИАНТНЫХ СВОЙСТВ 341 2°. Свойство функции «иметь разрешимую проблему распоз- распознавания применимости к словам в алфавите А» является инва- инвариантным и, как нетрудно видеть [§ 48.1.4], нетривиальным. Следовательно, оно неразрешимо. 3°. Свойство функции «быть полной относительно А» ин- инвариантно и очевидным образом нетривиально. Следовательно, оно неразрешимо. 4°. Свойство функции «быть пополнимой относительно алфавита А„» очевидным образом инвариантно и нетривиально [§ 53.1.11. Следовательно, оно также неразрешимо. В заключение мы рассмотрим еще один пример, требующий, как нам кажется, известной осторожности в рассуждении. 5°. Пусть S3 — произвольная вычислимая вербальная функция одной переменной. Рассмотрим свойство G® «быть функцией, эквивалентной 23» и покажем, что оно неразре- неразрешимо. Это свойство очевидным образом инвариантно. Поэтому возникает естественное желание применить к нему теорему 1.1, тем более, что функция, обладающая свойством G<g. имеется: это функция 23. Более сложно, однако, обстоит дело с функцией, не обладающей этим свойством, т. е. с функцией, неэквива- неэквивалентной 23. В самом деле, рассчитывать на разработку эффективного способа нахождения такой функции в общем случае мы не можем из-за теоремы § 55.2.1: такой способ порождал бы вычислимый оператор над вычислимыми вер- вербальными функциями без неподвижной точки. И все-таки здесь может быть применено следующее рас- рассуждение: Если 23(Л) определено, то функция, не обладающая свойством Gsg, может быть указана: в качестве такой функ- функции можно взять, например, нигде не определенную функ- функцию из примера § 54.1.2°. И в том случае, когда 23 (Л) не определено, такая функция тоже может быть указана: например, можно взять функцию из примера § 54.1.1°. Таким образом, если бьГсвойство G^ было проверяемым, то в силу теоремы 1.1 не существовало бы вычислимой вербальной функции, не обладающей свойством G®.^ А это в силу только что проведенного рассуждения означало бы, что: 1) 23 (Л) не определено и 2) неверно, что 23 (Л) не определено. Полученное противоречие показывает, что GB неразрешимо, что и требовалось доказать. Математик, разделяющий веру в незыблемый характер „закона исключенного третьего", разобрав случаи «23 (Л)
342 ВЫЧИСЛИМЫЕ ВЕРБАЛЬНЫЕ ФУНКЦИИ [ГЛ. VII определено» и «93 (Л) не определено», вероятно, следующим образом закончил бы доказательство неразрешимости свой- свойства Gsb: «Итак, если 33 (Л) определено или 33 (Л) не .опре- .определено, то существует функция, не обладающая свойством GB. Но посылка этой импликации в силу закона исключенного третьего истинна. Следовательно, истинно и ее заключе- заключение. Таким образом, существует функция, не обладающая свойством Gsb. Значит, это свойство нетривиально, и потому в силу теоремы 1.1 оно неразрешимо». Но с какой стати мы так уж должны верить в незыбле- незыблемость этого „закона"? Казалось бы, напротив, пример 1° показывает, что не существует способа, позволяющего по функции 33 выяснять, какой именно из членов дизъюнкции A) «33 (Л) определено или 33 (Л) не определено» имеет место *), а ведь в точности это и требуется по нашему соглашению (см. § 7.1) для признания дизъюнкции A) истин- истинной. Правда, в примере 1° утверждается невозможность нормального алгорифма, распознающего свойство FA. Но принцип нормализации [§ 27.6] не оставляет нам надежд на существование какого-либо другого эффективного спо- способа решения этой задачи. В свете сказанного рассужде- рассуждение, проведенное нами, представляется нам более осторож- осторожным, а потому и более убедительным, чем рассуждение воображаемого коллеги. *) Конечно, оба они не могут быть ложными одновременно, так как тогда была бы истинной конъюнкция, у которой второй член является от- отрицанием первого. ГЛАВА VIII ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП (ПРОБЛЕМА ТУЭ) В гл. VI была установлена неразрешимость некоторых нормальных массовых проблем, естественно возникающих внутри теории алгорифмов. Эти результаты открывают воз- возможность перейти к установлению неразрешимости целого ряда массовых алгорифмических проблем, относящихся к традиционным разделам математики таким, как алгебра, топология, математический анализ. Рассматриваемые при этом проблемы, естественно, должны пониматься как нормальные массовые проблемы, т. е. как проблемы разыскания нормаль- нормальных алгорифмов, позволяющих распознавать те или иные свойства изучаемых объектов. В этой главе мы рассмотрим одну из наиболее известных и естественных проблем такого рода в алгебре — проблему тождества для полугрупп. Центральный результат главы фактически будет заключаться в построении примера конечно определенной (т. е. заданной конечным числом образующих элементов и определяющих соотношений) полугруппы с неразрешимой проблемой тождества. Понятие конечно определенной полугруппы допускает простую и естественную конструктивизацию в виде понятия ассоциативного исчисления. Рассматриваемая нами проблема тождества при этом трансформируется в проблему эквивалент- эквивалентности для ассоциативных исчислений. Проблема эта была сформулирована еще в 1914 г. норвежским математиком Акселем Т у э [1]. Самому Туэ удалось решить ее лишь в весь- весьма частных случаях. Дальнейшие попытки найти общее реше- решение этой проблемы, несмотря на усилия известных математи- математиков, не привели к успеху, и причина этого обстоятельства впоследствии стала ясна: оказалось, что могут быть построены конкретные примеры ассоциативных исчислений, для которых эта проблема неразрешима. Первые примеры таких исчислений были одновременно и независимо опубликованы в 1947 г. А. А. Марковым [5], [6] и Э. Л. П о с т о м [2]. Тем самым был указан первый пример „внутриматематической" неразре- неразрешимой массовой алгорифмической проблемы. С течением вре- времени была установлена неразрешимость и других известных проблем этого рода. В первую очередь упомянем проблему
344 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII тождества для групп (П. С. Новиков [1], [2]), проблему гомеоморфии полиэдров (А. А. Марков [12], [13]), 10-ю проблему Гильберта A0. В. Матиясевич [2]). В настоящей главе решение упомянутой выше проблемы тождества осуществляется на основе излагаемой в этой книге теории нормальных алгорифмов. Исторически, однако, дело обстояло несколько иначе. А именно, понятие нормального алгорифма как раз и возникло в процессе поисков возможно более простого изложения решения этой проблемы. § 57. Ассоциативные исчисления 1. Допустим, что знак «<-»» не является буквой алфа- алфавита А. Соотношением в алфавите А будем тогда называть всякое слово в алфавите А«-> вида A) T*+U, где Т и U—слова в А. В частности, B) ¦-> есть соотношение в А. Слово Т мы будем называть левой частью соотношения A), слово U—его правой частью. 2. Определим теперь понятие «ассоциативного исчисления». Это понятие будет иметь много общего с понятием нормального алгорифма. Существенное различие будет, однако, состоять в том, что в то время, как всякий алгорифм является некоторым предписанием действовать в точности так-то и так-то и в такой-то последовательности, ассоциативное исчисление будет не предписанием, а лишь разрешением производить такие-то действия. При этом таких разрешенных действий будет обыч- обычно несколько и на выбор того или иного из них не будет нак- накладываться никаких ограничений. 3. Аналогично нормальному алгорифму всякое ассоциатив- ассоциативное исчисление будет связано с некоторым алфавитом. Подобно тому, как существенной составной частью нормального алго- алгорифма является его схема, т. е. система его формул подстано- подстановок, существенной составной частью всякого ассоциативного исчисления будет являться его «определяющая система» —• некоторый список соотношений в алфавите исчисления. В от- отличие от того, что имеет место для формул схемы нормального алгорифма, порядок соотношений в определяющей системе § 57] АССОЦИАТИВНЫЕ ИСЧИСЛЕНИЯ 345 ассоциативного исчисления не будет иметь существенного значения. 4. Пусть имеем некоторый (быть может, пустой) список соотношений © в алфавите А. Будем называть допустимыми относительно © действиями следующие действия над сло- словами в А: 1) подстановку вместо любого вхождения левой части од- одного из соотношений, принадлежащих ©, правой части того же соотношения; 2) подстановку вместо любого вхождения правой части од- одного из соотношений, принадлежащих ©, левой части того же соотношения. Ассоциативным исчислением в алфавите А, определяемым системой ©, будем называть разрешение последовательно производить, исходя из любого слова Я в А, любые дей- вия, допустимые относительно ©. Обо всех словах, которые будут при этом получаться, включая само исходное слово Я, будем говорить, что они эквивалентны Я в рассматриваемом ассоциативном исчислении. Всякое ассоциативное исчисление определяется, таким образом, некоторым алфавитом—алфавитом этого исчисле- исчисления— и некоторой (быть может, пустой) системой соотно- соотношений в этом алфавите—определяющей системой этого ис- исчисления. Мы будем говорить об ассоциативном исчисле- исчислении 21, что оно есть ассоциативное исчисление над алфави- алфавитом А, если алфавит этого исчисления есть расширение А. 5. Пусть 21—ассоциативное исчисление в алфавите А, определяемое системой соотношений ©. Будем говорить, что слово Q в А смежно со словом Я в исчислении Щ, если Q может быть получено из Я в результате одного действия, допустимого относительно ©. Предполагая, что знак «X» не есть буква алфавита А, будем пользоваться этим знаком для обозначения смежности слов в ассоциативных исчисле- исчислениях в этом алфавите. В дальнейшем запись Щ: Я J_ Q будет означать, что^Тсмежно с Я в ассоциативном исчисле- исчислении 21. Следующие утверждения непосредственно вытекают из определения смежности: 5.1. Если Я и Q—слова в алфавите ассоциативного исчи- исчисления 21, то 21: Я J_ Q тогда и только тогда, когда су- существуют такие слова R, S, T, U, что A) B)
346 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIH и что хотя бы одно из соотношений C) T<->U, D) U <-> Т принадлежит определяющей системе исчисления 91. 5.2. Если 21: P±Q, то 21: Q±P. 5.3. Если 31: Р ±Q, то 21: RP±RQ и 91: PR ±QR для всякого слова R в алфавите исчисления 31. 6. Пусть 21—ассоциативное исчисление в алфавите А, и пусть у—буква, не входящая в А. у-систему 5 слов в алфавите А мы будем называть %-рядом, если всякий раз, когда слово X в алфавите А соседствует в S слева со словом Y в этом же алфавите, т. е. когда слово yXyYy входит в S, имеет место смежность 91: X J_Y. Пусть Р и Q—слова в алфавита А. Мы будем говорить, что Р эквивалентно Q в исчислении 91, если может быть построен Э(-ряд S, соединяющий Р с Q, т. е. такой, что Я есть первый, a Q — последний член S. Предполагая, что знак «_Ц_» не является буквой алфави- алфавитов рассматриваемых ассоциативных исчислений, мы будем пользоваться этим знаком для обозначения эквивалентности в этих исчислениях. В дальнейшем запись A) 21: P±Q будет обозначать, что Q эквивалентно Р в ассоциативном исчислении 21. Следующие утверждения очевидны: 6.1. Если 21: P±Q, то 91: P±Q. 6.2. 91: PJ Р для всякого слова Р в алфавите ассоциа- ассоциативного исчисления Ш. 6.3. Если 91: />J Q, то 31: Q±P. 6.4. Если 21: P?Q и 8С: Q±R, mo$i: P±R. С помощью 5.3 легко доказывается следующее утверж- утверждение: 6.5. Если 31: P±Q, то U: RP±RQ и 31: PR±QR для всякого слова R в алфавите исчисления ЗХ. С помощью 6.4 и 6.5 доказывается 6.6. Если 21: P±Q и 9t: R±S, то 21: PR±QS. 7. В литературе встречается другое определение ассо- ассоциативного исчисления, по существу равносильное сформу- сформулированному выше. Оно состоит в следующем. Будем опять рассматривать систему соотношений 2> в алфавите А. Ассоциативным исчислением в алфавите А, оп- определяемым системой ©, будем называть разрешение после- §57] АССОЦИАТИВНЫЕ ИСЧИСЛЕНИЕ 347 довательно производить, исходя из соотношений системы © и соотношения 1 B), следующие действия, порождающие новые соотношения в А: 1) переход от какого-либо уже имеющегося соотношения 1 A) к соотношению A) ?7 «->??/, где I—любая буква алфавита А; 2) переход от какого-либо уже имеющегося соотношения 1A) к соотношению B) n<r>Ut, где |—любая буква алфавита А; 3) переход от каких-либо уже имеющихся соотношений 1A) и C) T<r*V к соотношению D) U++V. В отличие от определения ассоциативного исчисления, дан- данного в п. 4, здесь фиксируется совокупность исходных слов. Таковыми являются соотношения системы © и соотношение 1B). Допустимыми действиями являются три действия над соотношениями в А, „порождающие" (т. е. позволяющие полу- 1 чать) новые соотношения, исходя из имеющихся. Два из них | дают возможность получить соотношения A) и B), исходя из имеющегося соотношения 1A). Третье применимо к паре имею- имеющихся соотношений 1A) и C) с равными левыми ча- частями. Его применение к этим соотношениям дает соотно- соотношение D). Будем говорить о соотношении, что оно выводимо в ассоциа- ассоциативном исчислении 91, если оно может быть получено в ре- результате последовательного применения указанных только что допустимых действий при указанных исходных словах. Будем тогда также говорить, что оно есть следствие из системы ©. Будем говорить о словах Т и U, что они эквивалентны в исчислении 21, если соотношение 1A) выводимо в 21. Для выражения эквивалентности слов Р и Q в исчислении 91 будем применять прежнюю запись 6 A). Мы имеем, таким образом, два различных определения ассоциативного исчисления в алфавите А, определяемого си- системой соотношений ©. Каждому из них соответствует свое
34Й ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП 1ГЛ. VIII понятие эквивалентности слов. Эти два понятия эквивалент- эквивалентности оказываются, однако, равносильными, что выражается следующей теоремой. 7.1. Пусть © — система соотношений в алфавите А; 21 — ассоциативное исчисление, определяемое системой ® в смысле п. 4; 25 — ассоциативное исчисление, определяемое системой <В в только что указанном смысле. Для того чтобы слова Р и Q были эквивалентны в 23, необходимо и достаточно, чтобы они были эквивалентны в 21. Доказательство мы предоставляем читателю. Поскольку понятие эквивалентности слов можно считать основным в теории ассоциативных исчислений, два сформули- сформулированных выше определения ассоциативного исчисления ока- оказываются в известном смысле равносильными. В дальнейшем мы, говоря об «ассоциативном исчислении, определяемом системой соотношений © в алфавите А», будем (при отсутствии соответствующих оговорок) понимать этот термин в смысле п. 4. v 8. Теорию ассоциативных исчислений можно рассматри- рассматривать как некоторый конструктивный подход к так называемым ассоциативным системам, которые в литературе часто назы- называют полугруппами. Действительно, пусть 21 — ассоциативное исчисление в алфавите А. В силу 6.2—6.4, мы имеем тогда возможность применить к словам в А абстракцию отождествления, отожде- отождествляя слова, эквивалентные в 21, т. е. рассматривая слова в А с точностью до эквивалентности в St. Так рассматриваемые классы слов в А будут играть роль элементов подлежащей построению ассоциативной системы. Будем для краткости называть их просто элементами. Мы можем далее определить умножение элементов как дей- действие, соответствующее построению соединения представляю- представляющих эти элементы слов. Однозначность так определенного умножения обеспечивается свойством эквивалентности 6.6; сочетательный закон умножения — сочетательным законом соединения слов. Мы получаем, таким образом, некоторую ассоциативную систему. Будем говорить, что она порождается ассоциативным исчислением St. Ассоциативные системы, порождаемые ассоциативными исчислениями, будем называть К-системами *). *) Буква К здесь происходит от термина «конечно определенная сис- система». $ 57J АССОЦИАТИВНЫЕ ИСЧИСЛЕНИЯ 349 Нетрудно видеть, что всякая К-система имеет единицу. В самом деле, роль единицы К-системы играет элемент ее, представляемый пустым словом. Нетрудно далее видеть, что всякая К-система имеет конеч- конечное множество производящих элементов. Пусть, в самом деле, К-система С порождается ассоциативным исчислением 21 в алфавите А. Как легко видеть, элементы системы С, пред- представляемые буквами алфавита А, образуют систему производя- производящих элементов системы С: всякий отличный от единичного элемент системы С может быть представлен в виде некоторого произведения (с возможными повторениями множителей) этих элементов. Элементы К-системы С, представляемые словами Т и U, тогда и только тогда тождественны, когда эти слова эквива- эквивалентны в 21. Понимая в данном случае термин «ассоциативное исчисление» в смысле п. 7, мы можем сказать, что эти слова тогда и только тогда тождественны, когда соотношение 1A) выводимо в нашем исчислении, т. е. когда оно является след- следствием из 3. Это положение дел можно коротко выразить, сказав, что система © есть полная система соотношений между производящими элементами ассоциативной системы С. 9. Ввиду того, что элементы К-системы представляются '. ловами в алфавите порождающего ее ассоциативного исчисле- исчисления, естественно возникает вопрос о распознавании тождества элементов, представленных двумя разными словами. Тождест- Тождественными эти элементы являются тогда и только тогда, когда представляющие их слова эквивалентны в порождающем ассо- ассоциативном исчислении. Таким образом, распознавание тож- тождества элементов К-систем сводится к распознаванию экви- эквивалентности слов в ассоциативных исчислениях. Для всяких слов Р и Q в алфавите ассоциативного исчис- исчисления 21 может быть поставлена единичная проблема распозна- распознавания эквивалентности этих слов в 21: верно ли, что 21: PJLQ? Всякому данному ассоциативному исчислению 21 соответст- соответствует класс единичных проблем этого рода. Массовая алго- рифмическая проблема, соответствующая этому классу, состоит в разыскании единого общего конструктивного ме- метода, позволяющего узнавать для любых двух данных слов Р и Q, являются ли они эквивалентными в 21. Эту пробле- проблему мы будем называть проблемой эквивалентности для ис- исчисления 21.
350 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII Ввиду того, что эквивалентность двух слов в ассоциативном исчислении %, порождающем К-систему С, равносильна тож- тождеству представляемых ими элементов системы С, проблему эквивалентности для % можно также рассматривать как проб- проблему тождества для С, т. е. как проблему построения единого общего конструктивного метода, позволяющего узнавать для любых двух элементов системы С, заданных представляющими их словами, тождественны ли эти элементы. Этим определяется роль проблемы эквивалентности для ассоциативного исчисле- исчисления 21 в исследовании порождаемой этим исчислением ассо- циативной_системы. Как всякая массовая проблема, проблема эквивалентности для ассоциативного исчисления 51 допускает уточнение в тер- терминах теории алгорифмов — она может быть поставлена как нормальная массовая проблема 1§ 46]. Для этого нам необхо- необходимо лишь условиться в определенном способе записи единич- единичных проблем эквивалентности слов в алфавите исчисления Щ. Всякая такая единичная проблема определяется парой слов в алфавите исчисления. Для этого может быть использован любой знак, не являющийся буквой этого алфавита. Мы будем пред- предполагать, что звездочка * является таким знаком, и будем записывать пару слов Р и Q в виде A) P*Q. Проблема эквивалентности для ассоциативного исчисления Щ, в алфавите А ставится тогда как нормальная массовая проблема следующим образом. Ищется нормальный алгорифм над алфавитом А*, при- применимый ко всякому слову вида A), где Я и Q—слова в А, и перерабатывающий слово A) в пустое слово тогда и только тогда, когда Ш: PJLQ. Эту проблему мы и будем в дальнейшем называть проблемой эквивалентности для ассоциативного исчисления 31. В следующем параграфе мы укажем построение ассоциатив- ассоциативного исчисления, для которого проблема эквивалентности неразрешима. § 58. Построение ассоциативного исчисления с неразрешимой проблемой эквивалентности 1. Для построения ассоциативного исчисления с неразре- неразрешимой проблемой эквивалентности мы свяжем ассоциативные исчисления с нормальными алгорифмами посредством следую- следующей теоремы (А. А. Марков [2], VI, § 2.1.1): § 58] НЕРАЗРЕШИМОЕ АССОЦИАТИВНОЕ ИСЧИСЛЕНИЕ 351 1.1. Пусть л, р, о—отличные друг от друга буквы, не принадлежащие алфавиту А. Тогда, каков бы ни был нормальный алгорифм 91 в алфавите А, может быть по- построено такое ассоциативное исчисление 33 над алфавитом Апро, что равенство S( (P) S Q будет иметь место для слов Р и Q в А тогда и только тогда, когда A) 33: лрЯлJjwQn. В самом деле, пусть алгорифм 31 имеет схему B) \U,^Vt (l<i<tf), где U',-—слова в А, а каждое V,- либо тоже есть слово в А, либо получается из слова в А посредством присоединения точки слева *). Пусть Б -^ Аяро. Введем буквы р, B ^ i ^ N), ст,- A < i < N), отличные друг от друга и от букв алфавита Б; положим Обозначим через Р и С алфавиты, состоящие из букв р,- A < i < N) и о,- (\ s^. i s^. N-\-\) соответственно. По- Положим затем В ^ АРСл и построим ассоциативное исчисление 23 в алфавите В, оп- определяемое следующей сокращенно записанной системой соотношений: 7?Х<->Ер,Х (l<t<W; l—буква А; X—слово в А; [?Х* = /,-; C) Хд Яв; <Г-> ; X—слово в А; ; V,—слово в А) ; ViSL-Vi) O ; I — буква А). *) Мы позволим себе такой не слишком точный способ говорить о заключительных формулах подстановок алгорифма 31.
352 Здесь ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII X в соотношениях первых двух групп — произвольное слово в алфавите А, удовлетворяющее записанным справа в скобках условиям. Так как эти условия ограничивают сверху длину X, первые две группы соотношений содержат конечное число соот- соотношений, причем все эти соотношения могут быть явно выпи- выписаны. Соотношения третьей группы соответствуют простым формулам подстановок алгорифма §1; соотношения четвертой группы — заключительным формулам подстановок. Всего 3-я и 4-я группы соотношений содержат вместе N соотношений. Последние две группы соотношений не нуждаются в поясне- пояснениях. Мы покажем, что так построенное ассоциативное исчисле- исчисление 33 удовлетворяет условию, сформулированному в теореме 1.1. Для этого введем некоторые вспомогательные термины и докажем некоторые леммы. Будем называть оперативными буквами буквы р,- A ^ i ^ N), о,- A <! i ^ N -\-1). Будем называть специаль- специальными словами слова вида где Q и R — слова в А, ц — оперативная буква. Иначе говоря, специальными словами мы будем называть слова в алфавите В, начинающиеся буквой л, оканчивающиеся буквой it, не содержащие других вхождений л и содержащие ровно одно вхождение оперативной буквы. Следующие свойства любого из соотношений системы C) усматриваются непосредственно: 1.2. Левая (правая) часть соотношения содержит одно и только одно вхождение оперативной буквы. 1.3. Буква л либо не входит ни в левую, ни в правую часть соотношения, либо входит по одному разу в обе части. В пос- последнем случае либо обе части начинаются этой буквой, либо обе оканчиваются ею. Из 1.2 и 1.3 вытекает 1.4. Всякое слово, смежное в 33 с каким-нибудь специаль- специальным словом, само есть специальное слово. Отсюда в силу § 57.6 следует 1.5. Всякое слово, эквивалентное в 33 какому-нибудь спе- специальному слову, само есть специальное слово. Пусть Р—слово в алфавите В. Условимся говорить, что слово Q смежно справа со словом Р, если Q может быть I 58] НЕРАЗРЕШИМОЕ АССОЦИАТИВНОЕ ИСЧИСЛЕНИЕ 353 получено из Я в результате подстановки правой части одного из соотношений системы C) вместо какого-нибудь вхождения левой части этого соотношения. Для обозначения смежности справа будем пользоваться знаком «)—». Запись P\-Q будет в дальнейшем означать, что Q смежно справа с Р. Из сравнения определений смежности слов в ассоциативном исчислении (§ 57.5) и смежности справа непосредственно оче- очевидна справедливость следующего утверждения: 1.6. 33: Р J_Q тогда и только тогда, когда имеет место одно из двух: P\-Q или Q\- P. Докажем следующую лемму: 1.7. Со всяким специальным словом смежно справа не более чем одно слово. Для доказательства, очевидно, достаточно установить, что во всякое специальное слово входит не более чем одна из левых частей соотношений системы C) и не более чем один раз. Рассмотрим какое-нибудь специальное слово Т. Согласно определению Т S nQr\Rn, где Q и R — некоторые слова в А, т) —оперативная буква. Возможны два случая.: ч) есть одна из букв Pi A<л<;Л0; Ц есть одна из букв о,- A<j<;A/+1). Рас- Рассмотрим их порознь. а) Пусть т^Жру. Так как о,-Э^Ру (\^.i^.N + \), ни одна из левых частей соотношений 5-й и 6-й групп не вхо- входит в Т. Так как р,-^ р/ при 1ф\, из числа левых частей соотношений первых четырех групп в Т могут входить лишь рДХ (|—буква А; X—слово в А; [?Х« =/,; lX-?Uj), р,Хл (X—слово в А; [Хд < lj), P/t/y. Слово рр, входит в Т лишь тогда, когда R начинается словом Uj. Слово вида рДХ(?—буква А; X—слово в А; ЦХд = If, |X^(/y) вхо- входит в Т лишь тогда, когда R не начинается словом Uj и [Rd ^ If, в этом случае лишь одно слово указанного вида входит в Т—то, для которого |Х есть начало длины lj слова R. Слово вида руХл (X—слово в А; [Хд < lj) входит в Т лишь тогда, когда [R^ < If, в этом случае лишь одно слово указанного вида входит в Т—то, для которого X1LR. Так как эти три случая попарно несовместимы, в Т входит не более чем одно слово рассмотренных видов. Единствен- Единственность его вхождения в Т очевидна. б) Пусть r\~5.Oj. Так как р;^!:ау (l^i^iV), ни одна из левых частей соотношений первых четырех групп не вхо- входит в Т. Что касается остальных соотношений, то при 12 А. А. Марков, Н. М. Нагорный
354 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII i 581 НЕРАЗРЕШИМОЕ АССОЦИАТИВНОЕ ИСЧИСЛЕНИЕ 355 и 1^/^^V в Т очевидным образом входит левая часть лоу /-го соотношения 5-й группы и только один раз, тогда как левые части соотношений 6-й группы и других соотношений 5-й группы не входят в Т; при Q3IA и js=N-\-l в Т вообще не входит ни одна из левых частей соотношений системы C); наконец, при Q^A в Т входит левая часть %Oj одного из соотношений 6-й группы, входит только один раз, левые же части других соотношений 6-й группы и левые части соотношений 5-й группы не входят в Т. Этим лемма доказана. 1.8. Если Q—слово в А, то никакое слово не смежно справа со словом ncsQn. В самом деле, ни одна из левых частей соотношений системы C) не входит в слово noN+1Qn, т. е. в naQn. 33-ряд S мы будем называть правильным, если правая смежность Х\-Y имеет место для любых X и Y таких, что X соседствует слева в S с Y. Будем говорить, что Р собственно преобразуемо в Q, если может быть построен правильный 23-ряд S, соединяю- соединяющий Р с Q и такой, что [5°>2*). Будем говорить, что Р преобразуемо в Q, если Р собст- собственно преобразуемо в Q или P~SLQ. В дальнейшем запись P\=Q будет означать, что Р собственно преобразуемо в Q; запись P\=Q будет означать, что Р преобразуемо в Q. 1.9. Если Р и Q—слова в алфавите А такие, что имеет место эквивалентность 33: ярРл J_ то прРп \- naQn. В самом деле, пусть выполнено условие леммы. Тогда существует 33-ряд S, соединяющий прРп с naQn. Так как сг^р, то [5°^ 2. Пусть X соседствует в 5 слева с naQn. Тогда, согласно 1.6, X \— naQn или naQn \— X. Но в силу 1.8 naQn \- X невозможно. Следовательно, D) X *) См. § 24.4. Если для любых слов Y и Z таких, что Y соседствует в S слева с Z, E) Y \- Z, то 5—правильный ЭЗ-ряд, и по определению собственной преобразуемости прРп \- naQn. Допустим, что в S имеют место не все правые смежно- смежности E). Используя теорему о наименьшем числе, мы без труда построим 33-ряды У и У и слова Z и Y такие, что F) SlLUYyZV, G) Z^Y и 33-ряд yZV является правильным. naQn является последним членом S, а потому и yZV. Кроме того, легко видеть, что Z^LnaQn [G), 1.8]. Следо- Следовательно, 33-ряд V непуст. Пусть Т—первый член V. Тогда VlLyTV, SsLUYyZyTV (8) (9) SlLUYyZyTV [F), (8)] и A0) Z\-T. Первый член 33-ряда S является специальным словом. Поэтому все члены S, в том числе и Z, специальны [1.5]. Отсюда, на основании 1.7, мы заключаем, что A1) Г Ж Г [G), A0)]. • Следовательно, SlLUTyZyTV' [(9), A1)], и потому система являющаяся, как легко видеть, 33-рядом, также соединяет прРп с naQn. Но [S°=[S? + 2. Таким образом, мы заменили 33-ряд S, соединяющий прРп с naQn, более коротким рядом 5Х. Если этот ряд еще не является правильным, то, действуя аналогично предыду- предыдущему, мы заменим его еще более коротким 33-рядом Sz, соединяющим лрЯл с naQn. Повторяя этот процесс после- последовательного сокращения ряда, мы, наконец, придем к пра- 12*
356 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII вильному 33-ряду, соединяющему прРп с noQn, и тем самым установим, что npPn\-noQn. Лемма доказана. Очевидным образом имеем 1.10. Если P[=Q, то 23: P±Q. 1.11. Пусть S—правильный Ъ-ряд, первым членом кото- которого является W, а последним—naQn, где Q—слово в А. Тогда всякий правильный Ъ-ряд с первым членом W явля- является началом S. В самом деле, пусть выполнено условие леммы. Тогда в силу 1.5 слово W специально и всякий 33-ряд, начинаю- начинающийся словом W, состоит из специальных слов. Для дока- доказательства заключения леммы мы воспользуемся методом индукции по построению правильного 35-ряда. База индукции тривиальна: ряд yWy действительно яв- является началом S. Z Пусть теперь S1—правильный 33-ряд с первым членом W и последним членом X; пусть A2) X\-Y. Покажем, что если Sf является началом S, то этим же свойством обладает и SjKy. ?Ф Итак, предположим, что St является началом S. Тогда A3) SSLStR для некоторого R. Кроме того, A4) S^S2Xy, где S2—некоторый правильный 35-ряд. Отсюда A5) S2lZS3y для некоторого S3, и потому A6) S3LS3yXyR [A3), A4), A5)]. Легко видеть, что так как в противном случае было бы SlLSayXy [A6)] §58] НЕРАЗРЕШИМОЕ АССОЦИАТИВНОЕ ИСЧИСЛЕНИЕ 357 yR есть 33-ряд. Пусть Z—первый член этого ряда. Тогда A7) yRlLyZyR, для некоторого Ri. Отсюда A8) S^S3yXyZyRt [A6), A7)], и, так как «S—правильный 35-ряд, X\-Z [A8)], что вместе с A2) в силу 1.7 дает A9) ZSK. Следовательно, SsLStyXyYyRt [A8)] ILS.YyR, [A5), A4)]. Таким образом, 33-ряд SjYy действительно является нача- началом ряда S, что и требовалось доказать. 1.12. Если слово U{ не входит в слово Р в алфавите А, то nptPn \- noi+1Pn. В самом деле, если [Рд < lit то соотношение принадлежит 2-й группе соотношений системы C). Следо- Следовательно, тогда лр,Рл 1- по1+1Рп, и потому что в силу 1.8 противоречит A2). nai+1Pn. Пусть теперь [Рд ^ /,-. Так как (У,- не входит в Р, имеем Ui^iА и, значит, /,->0. Поэтому в данном случае Р^:А. Возьмем слова Q и R такие, что B0) Р Ж QR и B1) [^ = /,-1. Пусть буква | и слова Y, Z таковы, что Q3EHZ. Тогда [B1)]
358 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII и %ZR не начинается словом Ut. Следовательно, в B2) nYp входит слово вида р,|Х, являющееся левой частью одного из соотношений 1-й группы системы C). Применяя к слову B2) допустимое действие исчисления Ъ, соответствующее этому соотношению, получаем B3) Теперь, используя B3) для индукционного перехода, мы без труда, обычным применением метода индукции можем показать, что B4) np,QRn\-nQpiRn. В силу B1) соотношение принадлежит 2-й группе соотношений системы C) и, значит, Принимая, наконец, во внимание соотношения послед- последней группы системы C), без труда индукцией получаем B6) nQoi+1Rn\-nai+1QRn. Таким образом, [B0), B4)] h nQq,+1Rn [B5)] [B6)] re [B0)], что и требовалось доказать. 1.13. Если ни одно из слов U; (l^.i^.k—l;&^Af-j-l) не входит в слово Р в алфавите А, то пр^п \— пакРп. В самом деле, при этом условии B7) лр;Рп[-ло1+1Рл A<1<?) [1.12]. Кроме того, в силу соотношений 5-й группы схемы C) B8) nai+1Pn\—npi+1Pn (lsg;i<&—1). Следовательно, яр,Ря У npi+iPn A < 1 < k— 1) [B7), B8)], 58] НЕРАЗРЕШИМОЕ АССОЦИАТИВНОЕ ИСЧИСЛЕНИЕ 359 и потому [B7)], откуда следует доказываемое. 1.14. Если Р — слово в А и 31: Р~\, то B9) прРп ^ паРп. В самом деле, в этом случае ни одно из слов U; A sg: i ^ W) не входит вР, и потому прхРп 1= naN+1Pn, что совпадает с B9), так как р^р, оК+1Жа. 1.15. Если 31: Р\- Q, то C0) В самом деле, пусть 31: P\—Q. Тогда на первом шаге работы алгорифма 31 в применении к слову Р действует одна из обычных формул схемы B). Пусть это будет фор- формула C1) ?/» — Vk. Тогда слова Ut (l<i<&—1) не входят вР и Учесть слово в алфавите А. При этом Р есть слово в А, так как g( — алгорифм в А. Применима, следовательно, лемма 1.13, согласно которой C2) лр^лУлОьРп. В силу применимости формулы C1) к слову Я ее левая часть Uk входит в Р. Пусть R *Uk*S—первое вхождение Uk в Р. Тогда C3) C4) Если Uk^, C5) npkRUkSn |= nRpkUkSn [применяются—при непустом R—соотношения, принадле- принадлежащие 1-й группе системы C)] и, значит, C6) npkPn^=nRpkUkSn [C5), C3)]. Если же G41Л, то Я ЕЛ, S2P, и потому пркРпЖ 3inRpkUkSn, откуда следует C6). Таким образом, C6) имеет место во всех случаях. то
360 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII Соотношение pkUk<r-*a1Vk принадлежит 3-й группе си- системы C), так как формула C1) простая. Поэтому C7) nRpkUkSn \- Пользуясь далее соотношениями 6-й группы системы C), получаем nROjYkSn (= па^УкБп C8) IraXiQn [C4)]. Наконец, соотношения 5-й группы системы C) дают C9) пакРп |— пркРп, D0) natQn I— npjQn. Таким образом, itp^itl- пакРп [C2)] h npkPn [C9)] \=nRPkUkSn [C6)] h nRa.V.Sn [C7)] (= гат^я [C8)] h jiPiQji [D0)], что и доказывает собственную преобразуемость C0), так как рхЖР- 1.16. Если 31: P\--Q, то D1) лрРл [- noQn. Рассуждая, как в предыдущем доказательстве, получаем C2), C9) и C6), где k, R и S имеют прежний смысл. В от- отличие от предыдущего доказательства, формула C1) теперь заключительная и потому 4-я группа соотношений системы C) содержит соотношение D2) PkUk^oN+1V'k, где V'k есть такое слово, что УкЖ-Ук. Равенство C3) имеет место по-прежнему, тогда как вместо C4) имеем теперь D3) Q Так как соотношение D2) принадлежит системе C), имеем D4) nRpkUkSn \- nRaN+1V'kSn. §58] НЕРАЗРЕШИМОЕ АССОЦИАТИВНОЕ ИСЧИСЛЕНИЕ 361 Соотношения 6-й группы системы C) дают, наконец, S ттп Лтт Г/43М Таким^образом, лр^Рл 1- nRpkUkSn [C2), C9), C6)] h nRaN+1V^Sn [D4)] Иттгг Лтт ГС45М что и доказывает собственную преобразуемость D1), так как Plp N+i 1.17. Если Щ.: P|=Q, то Это следует из 1.15. 1.18. ЕслиУН (Р) SQ, то имеет место эквивалентность A). Пусть, в самом деле, 31(P)jEQ. Тогда имеет место одно из двух: SI: P\=Q~\ или Щ: P\=-Q. .L В первом случае pQ naQn .17], .14], откуда D6) лрРл \- naQn. Следовательно, A) имеет место [1.10]. Во втором случае имеется такое слово R, что 9(: P\=R\-.Q. Для него имеем npPn\=npRn [1.17], npRn\-naRn [1.16], откуда также следует D6) и A). Для завершения доказательства теоремы 1.1 нам, оче- очевидно, остается доказать следующее утверждение, обрат- обратное лемме 1.18. 1.19. Если имеет место эквивалентность A), где Р и Q—слова в А, то Sl(P)SQ. Докажем его. Пусть эквивалентность A) имеет место для слов Р и Q в алфавите А. Тогда прРл\-naQn [1.9], т. е. может быть построен 33-ряд S, соединяющий прРп с noQn. При применении алгорифма Щ к слову Р возможны три случая: 31: Р ~|, $1: Р \- Рг для некоторого Ри Ш: P\--R для некоторого R.
362 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII Если 31: Р~\, то в силу 1.14 имеет место собственная преобразуемость ярРя 1- яаРя, и, значит, существует правильный 23-ряд Slt соединяющий ярРя с яаРя. В силу 1.11 5Х является началом 5, так что SsSjU?, где yW—правильный 33-ряд. Нетрудно видеть, что W^A, так как в противном случае правильный 23-ряд 5 имел бы вид что очевидным образом невозможно [1.8]. Следовательно, а значит, и потому ясгфяЗ яаРя, QS1P. Кроме того, 31 (P)SP, так как 31: Р~]. Следовательно, 31 (PK:Q, что и утверждается. Если 31: P\--R для некоторого R, то ярРя|- noRn, и, значит, существует правильный 33-ряд Slt соединяющий прРл с яа/?я. Как и в предыдущем случае, в силу 1.11 St является началом 5, так что SsLS^, где yW—правиль- yW—правильный 33-ряд. Снова f IA в силу тех же самых причин, и, значит, откуда R^Q. Кроме того, 3I(P)S/?, так как 31: Р (=•/?. Следовательно, 3l(P)SQ, что и утверждается. Пусть, наконец, 31: Р \- Рг для некоторого слова Рх. Тогда в силу 1.15 имеем лрРя|- и, значит, существует такой правильный 23-ряд Su соеди- соединяющий ярРя с лрРхя, что [5J^2. В силу 1.11 Sx является началом 5, так что S^StW, где yW — правильный 33-ряд. 5 соединяет ярРя с яафя, a St — лрРя с ярРхя. Поэтому t Ж yn §58] НЕРАЗРЕШИМОЕ АССОЦИАТИВНОЕ ИСЧИСЛЕНИЕ 363 для некоторых Z и Zt. Предположив, что 1^31 Л, т. е. что SsSj, мы получаем, что pSa, между тем как р^о по выбору этих букв. Следовательно, W^:A и, значит, объем 23-ряда yW, т. е. число его членов, больше нуля. Последний член ряда yW представляет собой последний член ряда 5, т. е. слово ттфя. Таким образом, для неко- некоторого Wt и потому !23-ряд соединяет слово прРгл со словом naQn. Легко видеть, что объем этого ряда строго меньше объема ряда 5. К этому ряду и к слову Рг применимо рассуждение, только что проведенное для ряда 5 и слова Р. Мы заклю- заключаем из этого утверждения, что возможно лишь одно из двух: либо 31 (P1)'S.Q, либо имеются слово Р2 такое, что Ш: Р1 Ь Р„ и правильный 33-ряд 7'2, соединяющий слово ярР2я со сло- словом яафя и такой, что В первом случае 31 (P)s:Q. так как 31: Р \- Рхи 3t (J^Q Во втором случае, рассуждая аналогично предыдущему, убеждаемся в том, что либо 3t(P2K:Q, либо имеются слово Р8 такое, что Я: Р2\-Р3, и правильный 33-ряд Т3, соединяющий слово ярР3я со сло- словом яаBя и такой, что [7-2 < [7-3. Это последовательное построение слов Р{ и правильных 23-рядов Т; должно не позже чем через [5°—1 шагов обо- оборваться на некотором слове Pk, для которого Щ (/>ft) 3C Q. Имеем тогда 31: Ph=ffe и, значит, что и требовалось доказать.
364 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII Теорема 1.1, таким образом, доказана. 2. Пусть, как обычно, Ао означает алфавит ab, а А2 означает алфавит abcde. Пользуясь теоремой 1.1, докажем следующую теорему: 2.1. Может быть построено ассоциативное исчисление 23 над алфавитом А2, удовлетворяющее следующему условию: невозможен нормальный алгорифм над алфавитом Ао, пере- перерабатывающий в пустое слово те и только те слова Р в Ао, для которых эквивалентность A) 23: dcPd±ded не имеет места. Построим, в самом деле, нормальный алгорифм 2В2 в ал- алфавите Ао согласно § 51.3.2, т. е. так, чтобы удовлетворя- удовлетворялось условие: невозможен нормальный алгорифм над Ао, аннулирующий, т. е. перерабатывающий в пустое слово, те и только те слова в Ао, которые 232 не аннулирует. При- Применим к алгорифму 282 теорему 1.1, полагая АдА0, р:ес, nSd, аЖе. Согласно этой теореме построим ассоциативное исчисление 23 над алфавитом Aocde, т. е. над А2, удовлет- удовлетворяющее условию: равенство имеет место для слов Р и Q в Ао тогда и только тогда, когда 23: dcPd±deQd. Это исчисление и является искомым. Действительно, согласно построению, 282 аннулирует те и только те слова Р в Ао, для которых имеет место A). Если теперь какой-нибудь нормальный алгорифм над Ао аннули- аннулирует те и только те слова в Ао, для которых A) не имеет места, то он аннулирует те и только те слова в Ао, которые 2В2 не аннулирует. Такой нормальный алгорифм над Ао, однако, невозможен по построению 2В2. Невозможен, сле- следовательно, нормальный алгорифм над Ао, перерабатываю- перерабатывающий в пустое слово те и только те слова в Ао, для кото- которых эквивалентность A) не имеет места, что и требовалось доказать. Пользуясь аналогичным образом теоремой § 51.3.4 вместо теоремы § 51.3.2, получаем следующий результат: 2.2. Может быть построено ассоциативное исчисление 23 над алфавитом А2, удовлетворяющее следующему условию: невозможен нормальный алгорифм над Ао, применимый ко §58] НЕРАЗРЕШИМОЕ АССОЦИАТИВНОЕ ИСЧИСЛЕНИЕ 365 всякому слову в Ао и перерабатывающий в пустое слово те и только те слова Р в Ао, для которых имеет место эквива- эквивалентность A). 3. Исходя из 2.1, докажем следующую теорему: 3.1. Может быть построено ассоциативное исчисление 23 над алфавитом de, удовлетворяющее следующему условию: невозможен нормальный алгорифм над алфавитом исчисле- исчисления 23, перерабатывающий в пустое слово те и только те слова в этом алфавите, которые не эквивалентны в 23 сло- слову ded. Построим, в самом деле, ассоциативное исчисление 23 над алфавитом А2 согласно 2.1, т. е. так, чтобы соблюдалось условие: невозможен нормальный алгорифм над Ао, пере- перерабатывающий в пустое слово те и только те слова Р в Ао, для которых эквивалентность 2A) не имеет места. Покажем, что исчисление 23 является искомым. Действительно, пусть Б означает алфавит исчисления 23. Тогда Б является расширением А2, и потому Б является расширением de, т. е. 23 есть исчисление над de. Допустим, что <§ есть нормальный алгорифм над Б, перерабатывающий в пустое слово те и только те слова в Б, которые не эквива- эквивалентны в исчислении 23 слову ded. Введем букву б, не принадлежащую алфавиту Б, и по- построим нормальный алгорифм © в алфавите Бб, задав его схемой (| пробегает Б). Нетрудно видеть, что A) ©(/ для всякого слова Р в Б. Построим теперь алгорифм й как нормальную компози- композицию алгорифмов (S и <§: й есть нормальный алгорифм над Б и, значит, над Ао. (Р—слове в Б) [B)] (Р—слово в Б) [A)]. Отсюда следует, что алгорифм & тогда и только тогда аннулирует слово Р в алфавите Ао, когда алгорифм § анну- аннулирует слово dcPd. Но § тогда и только тогда аннулирует
36R ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII это слово, когда оно не эквивалентно в исчислении 33 слову ded. Таким образом, нормальный алгорифм $ над алфави- алфавитом Ао перерабатывает в пустое слово те и только те слова в этом алфавите, для которых эквивалентность 2A) не имеет места. Такой алгорифм невозможен согласно построению ис- исчисления 33. Следовательно, невозможен и нормальный алгорифм § над Б, перерабатывающий в пустое слово те и только те слова в Б, которые не эквивалентны в 33 слову ded, что и требовалось доказать. Пользуясь аналогичным образом теоремой 2.2, получаем следующий результат: 3.2. Может быть построено ассоциативное исчисление 33 над алфавитом de, удовлетворяющее следующему условию: невозможен нормальный алгорифм над алфавитом исчисле- исчисления 33, применимый ко всякому слову в этом алфавите и перерабатывающий в пустое слово те и только те слова в нем, которые эквивалентны в 33 слову ded. 4. Установленная только что теорема 3.2 утверждает воз- возможность построения ассоциативного исчисления 33 и некото- некоторого слова В в его алфавите таким образом, что окажется не- неразрешимой следующая нормальная массовая проблема: по- построить нормальный алгорифм над алфавитом исчисления 33, применимый ко всякому слову в этом алфавите и перера- перерабатывающий в пустое слово те и только те слова в нем, которые эквивалентны в 33 слову В. Эту проблему мы будем называть проблемой эквивалентности слову В в исчислении 23. Следующая почти очевидная теорема устанавливает простую связь между проблемами этого типа и ранее опре- определенными проблемами эквивалентности для ассоциативных исчислений [§ 57.9]. 4.1. Если разрешима проблема эквивалентности для ассо- ассоциативного исчисления 31, то, каково бы ни было слово R в его алфавите, разрешима и проблема эквивалентности этому слову в исчислении 31. В самом деле, пусть А — алфавит исчисления Ш., R — слово в А, ф — нормальный алгорифм над А*, применимый ко всякому слову вида P*Q, где Р и Q—слова в А, и перерабатывающий такое слово в пустое слово тогда и только тогда, когда Я: PJLQ. Построим в алфавите А* нормальный алгорифм 33 пра- правого присоединения слова *R. Имеем A) §58] НЕРАЗРЕШИМОЕ АССОЦИАТИВНОЕ ИСЧИСЛЕНИЕ 367 Построим алгорифм й как нормальную композицию алго- алгорифмов 33 и i§: B) ?^(?оЗЗ). й есть нормальный алгорифм над А, причем для любого слова Р в А Я (Р) ~ % C3 (/>)) (Р—слово в А) [B)] (Р—слово в А) [A)]. C) Так как алгорифм § применим ко всякому слову вида Р * Q, где Р и Q—слова в А, алгорифм й применим ко всякому слову в А [C)]. Из C) следует далее, что й тогда и только тогда аннулирует слово Р в А, когда § аннулирует слово P*R. А это имеет место тогда и только тогда, когда 31: P^R. Таким образом, й есть нормальный алгорифм над А, применимый ко всякому слову в этом алфавите и перера- перерабатывающий в пустое слово те и только те слова в нем, которые эквивалентны в 31 слову R. Тем самым проблема эквивалентности слову R в исчислении 31 решена и теорема доказана. Как непосредственное следствие из 4.1 получаем 4.2. Пусть ассоциативное исчисление 31 таково, что для некоторого слова в его алфавите неразрешимй проблема эквивалентности в 31 этому слову. Тогда проблема эквива- эквивалентности для SX неразрешима. Как следствие из 3.2 и 4.2 получаем 4.3. Может быть построено ассоциативное исчисление, для которого проблема эквивалентности неразрешима. Эта теорема допускает следующее уточнение: 4.4. Может быть построено ассоциативное исчисление 33 в некотором, не содержащем звездочку алфавите Б, удовлет- удовлетворяющее следующему условию: невозможен нормальный алго- алгорифм над Б *, перерабатывающий в пустое слово те и только те слова вида P#Q (P и Q—слова в Б), для ко- которых эквивалентность 33: PJLQ не имеет места. Эта теорема доказывается совершенно аналогично 4.3. Надо лишь воспользоваться 3.1 вместо 3.2 и применить алго- алгорифм правого присоединения слова *ded, связывающий ал- алгорифмы, о которых говорится в 4.4, с алгорифмами, о которых говорится в 3.1. Имея в виду истолкование проблемы эквивалентности для ассоциативного исчисления как проблемы тождества для поро-
368 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII ждаемой им К-системы [§ 57.9], мы можем истолковать теоре- теорему 4.3 как теорему о возможности построения К-системы с не- неразрешимой проблемой тождества. 5. В теореме 4.3 лишь утверждается возможность построе- построения ассоциативного исчисления, но не выписывается опреде- определяющая система такого исчисления в явном виде. Теоретически такая система соотношений может быть, правда, получена на основе всего предыдущего. Для этого нам пришлось бы, прос- проследив весь ход рассуждений, приведший нас к теореме 4.3, кон- конкретизировать его в том смысле, что схемы всех применявших- применявшихся нормальных алгорифмов выписывались бы в явном виде. В частности, нам пришлось бы конкретизировать схему видо- видоизмененного универсального алгорифма 2В для алфавита Aj в роли А и буквы е в роли б [§ 48.2.1]; мы затем должны были бы построить схемы нормальных алгорифмов 2В0 [§ 48.2.2], Ж$! [§ 48.3.1] и Шг [§ 51.3.2]. Исходя, наконец, из схемы алго- алгорифма 2В2 и применяя построение, указанное в доказательстве теоремы 1.1, мы получили бы схему искомого ассоциативного исчисления. Ясно, что в результате получилось бы нечто весь- весьма громоздкое. А так как проблема явного и возможно более простого задания ассоциативного исчисления с неразрешимой проблемой эквивалентности представляет несомненный инте- интерес, хотя бы в качестве возможной основы для проведения других построений, следует искать другие пути ее решения. Один из таких путей был пройден в гл. VI монографии А. А. Маркова [21, где было построено ассоциативное и исление @х в тринадцатибуквенном алфавите abcdefghijklm со следующей сокращенно записанной схемой: df^dh fd<r+gd hcirtcg. Здесь | пробегает двухбуквенный алфавит ab, ? — четырех- четырехбуквенный алфавит abed, a ti — пятибуквенный алфавит fijkl, §58] НЕРАЗРЕШИМОЕ АССОЦИАТИВНОЕ ИСЧИСЛЕНИЕ 369 причем В этом исчислении неразрешима проблема эквивалентно- эквивалентности некоторому фиксированному (правда, очень длинному) слову, способ построения которого указан. Определяющая система исчисления @i состоит из 33 соотношений: первая строка охватывает 20 соотношений, следующие пять — по два. Там же А. А. Марков показал, что если к определяющей системе исчисления ©х добавить четыре соотношения t,feam ч-> feam (? пробегает алфавит abed), то это даст новое ассоциативное исчисление S2, у которого будет неразрешима проблема эквивалентности слову feam. 6. Приведем следующие „рекордные" результаты: 1°. Г. С. Ц е й т и н [1] (подробное изложение в [2]) дока- доказал неразрешимость проблемы эквивалентности некоторому фиксированному слову для ассоциативного исчисления в пяти- буквенном алфавите abcde со следующей простой определяю- определяющей системой соотношений: ad*-* da bc*-*cb еса <-> се edb <-> de v сса*-*ссае. У ассоциативного исчисления (в том же алфавите) с не сколько более сложной определяющей системой ас *-*[са 'bc<rJcb bd*-*db cdca ч-> cdcae сааа++ааа неразрешима проблема эквивалентности слову ааа. 13 А. А. Марковен. М. Нагорный
370 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII 2°. Ю. В. Матиясевич 11] построил пример ассоциа- ассоциативного исчисления в двухбуквенном алфавите с определяющей системой из трех соотношений, имеющего неразрешимую проблему эквивалентности некоторому фиксированному слову. У этого исчисления два соотношения из трех просты. Длины левой и правой частей третьего соотношения равны соответ- соответственно 304 и 608. Вопрос о возможности дальнейшего уменьшения числа соотношений пока остается открытым. 3°. Соотношение Т <-> U называется несократимым, если наибольшее начало и наибольший общий конец слов Т и U яв- являются пустыми. С. И. А д я н [3] построил алгорифм, решаю- решающий проблему эквивалентности для любого ассоциативного исчисления, определяемого одним несократимым соотноше- соотношением. Аналогичная задача для случая одного соотношения общего вида до сих пор остается нерешенной. 7. Ассоциативное исчисление 21 называется групповым, если может быть построен нормальный алгорифм @ над алфавитом А исчисления 21 такой, что для любого слова Р в алфавите А (?(Р) определено и является словом в этом же самом алфавите, причем имеют место эквивалентности Я: РЩР)±А и 21: <?(/>) Я_|_л- Это понятие дает конструктивизацию понятия конечно определенной группы, т. е. группы, заданной конечным чис- числом образующих элементов и определяющих соотношений. Фигурирующий в определении алгорифм S играет роль об- обратной операции. П. С. Н о в и к о в [1], [2] построил первый пример груп- группового ассоциативного исчисления с неразрешимой проблемой эквивалентности. Тем самым была решена знаменитая пробле- проблема тождества для групп, сформулированная еще в 1912 г. М. Дэном [1]. Впоследствии аналогичные примеры были построены В. В. Буном [1], Дж. Л. Бриттоном [1] и другими. Рекордный в отношении числа соотношений резуль- результат принадлежит В. В. Борисову [II. § 59. Проблема эквивалентности пустому слову 1. Частным случаем проблемы эквивалентности данному слову в данном ассоциативном исчислении [§ 58.4] является проблема эквивалентности пустому слову в этом исчислении, $591 ПРОБЛЕМА ЭКВИВАЛЕНТНОСТИ ПУСТОМУ СЛОВУ формулируемая так: построить для данного ассоциативного исчисления 51 „нормальный алгорифм, применимый ко всякому слову в алфавите исчисления и перерабатывающий в пустое слово те и только те слова в этом алфавите, которые эквива- эквивалентны в 91 пустому слову. Мы увидим, что ассоциативное исчисление Ж может быть построено таким образом, что эта проблема окажется неразрешимой. Чтобы установить этот результат, мы покажем, что всякая проблема эквивалентности какому-либо данному слову С в каком-либо данном ассоциативном исчислении @ всегда мо- может быть определенным образом сведена к проблеме эквива- эквивалентности пустому слову в некотором другом ассоциативном исчислении. Мы докажем следующую теорему: 1.1. Пусть 6 — ассоциативное исчисление в алфавите Г, С — слово в этом алфавите, а и р — отличные друг от друга буквы, не принадлежащие Г, Д^Гсф. Построим ассоциативное исчисление 25 в алфавите Д, опре- определяя его системой соотношений, получаемой путем при- присоединения к определяющей системе исчисления (? соотношения A) аСр«-к Тогда для всякого слова Р в алфавите Г эквивалентность B) 6: PJC равносильна эквивалентности C) 25: аРРЛ_Л. Прежде всего^легко усмотреть, что эквивалентность C) имеет место для слова Р в Г, коль скоро для него имеет место эквивалентность B). В самом деле, так как все соотношения определяющей системы исчисления © принадлежат определяющей системе исчисления 25, имеем D) 25: Р±С, E) 25: aPpJjxCp [D), § 57.6.5], а так как соотношение A) принадлежит определяющей си- системе исчисления 25, имеем F) 25: В силу E) и F) имеем C) [§ 57.6.4]. 13*
372 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII Остается доказать обратное, т. е. что B) имеет место для слова Р в Г, коль скоро имеет место C). Для этого введем некоторые вспомогательные понятия и обозначения. Условимся называть высотой слова Q число вхождений буквы а в это слово, высотой ^)-ряда ?1—наибольшую из высот членов этого ряда. Высоту слова Q будем обозначать символом [QB; высоту ряда ?1—символом [?)в. Условимся называть протяжением ряда \1 число тех членов W этого ряда, для которых [№в = [?>в. Протяжение ряда слов ?1 будем обозначать символом [?)". Очевидно, что высота всякого ряда слов есть натуральное число, а протяжение всякого ряда слов — положительное натуральное число. В следующей лемме мы пользуемся терминологией, вве- введенной в § 57.6. 1.2. Если ?} есть 3)-/шЭ, соединяющий V с W, и G) [У» < [Ов, (8) [W* < [?1В, то может быть построен такой &-ряд Ш, соединяющий V с W, что либо (9) [Ш° < [?1В, либо [?RB = [?iB и [гЯп <[?>". В самом деле, пусть Ф-ряд ?1 соединяет V с W и удов- удовлетворяет условиям G) и (8). Пусть N—объем ряда ?}, т. е. число его членов. Обозначим посредством Q,- A ^ i^N) i-й член *) ряда ?}. Тогда A0) Q^V, (И) Qtr^W, так как ?1 соединяет V с W. Положим A2) п^[п». По определению высоты ряда найдутся такие числа i, что [Q* = h. Все они отличны от единицы и от Af, так как A3) [Ql<h [Q%<h [G), A0), A2)], [(8), A1), A2)]. *) См. § 24.8. §59] ПРОБЛЕМА ЭКВИВАЛЕНТНОСТИ ПУСТОМУ СЛОВУ 373 Пусть / означает наименьшее из этих чисел. Тогда 1 < / < Af и, так как A4) [QKh A<1<Л0 [A2)], имеем A5) [Q/B-i<fc, в то время как A6) [Q] = h. В силу A3) имеются числа i такие, что / < i ^ N и что [Q1 < h. Пусть k означает наименьшее из этих чисел. Тогда A7) A8) Имеем [A4), A6)]. 3): Q/-x±Qj, так как ?1 есть Ф-ряд. Это означает, что Q,- может быть получено из Qy-x в результате подстановки правой или левой части одного из соотношений определяющей системы исчисления 2D вместо некоторого вхождения другой части того же соотношения. Так как [QU<[Qi [A5), A6)], это соотношение не может принадлежать определяющей си- системе исчисления (S, и действием, переводящим Qy_x в Qj, является подстановка левой части осСр соотношения A) вместо вхождения правой части этого соотношения, т. е. вместо пустого слова. Таким образом, для некоторых слов R и S в алфавите Д A9) Qj-i^RS, B0) Qj Ж Слова Qi (j^i ^.k—1), имеющие одинаковую высоту h [A8)], являются членами 3)-ряда ?}. Имеем B1) 3): Qi.i±Qi U<i<k), А так как подстановка правой или левой части соотноше- соотношения A) вместо вхождения левой или соответственно правой части этого соотношения изменяет высоту, Q,- получается
374 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII из Qf_x в результате действия, соответствующего одному из соотношений определяющей системы исчисления (S (/ < i< k). Покажем индукцией по i, что каждое из слов Qt (j <I ^»<&) может быть представлено в виде Я,«/С,Р5,-, где Kg—слово в Г, Rt и S{—слова в Д, причем B2) [Я? = [Я». Для t = / это вытекает из B0): следует положить B3) Kj^C, B4) Rj^R, B5) S;^S. Допустим, что для некоторого i, удовлетворяющего усло- условиям / < i < k— 1, имеем B6) Qi-i2«,..M|..1pS1..I, где /С,-_1—слово в Г, Я/_х и Si_l—слова в Д, причем B7) [Я,4 = [ЯВ. Покажем, что тогда B8) где Ki—слово в Г, Я,- и S(—слова в Д, причем имеет место равенство B2). Qi получается из Qt^x в результате подстановки правой или левой части Y одного из соотношений определяющей системы исчисления © вместо некоторого вхождения другой части X того же соотношения. X есть слово в алфавите Г, и потому буквы а и Р не входят в X. Ввиду B6) Q,- имеет один из видов B9) (Т—результат подстановки Y вместо вхождения слова X В Ri-г), C0) Я^аЛЮ,., (Т—результат подстановки Y вместо вхождения слова X C1) Rt-iaKt-JT {Т — результат подстановки Y вместо вхождения слова X в S,_i)- §59] ПРОБЛЕМА ЭКВИВАЛЕНТНОСТИ ПУСТОМУ СЛОВУ 375 Положим C2) R^T, К^К,-» S^Si.,, если Q; имеет вид B9); C3) R.v^=Ri_1, Ki==±T, S,^S,-_i, если Q[ имеет вид C0), и C4) R^Rt-г, Kt^Kt-г, S,^T, если Qi имеет вид C1). Тогда во всех случаях будем иметь равенство B8). В этом равенстве /С,- либо равно /C,-_lt либо есть результат подстановки Y вместо вхождения слова X в /с. [C2)—C4), C0)]. Так как Y есть слово в Г, Kt есть, как и /С;_!, слово в Г. Аналогичным образом усматриваем, что Rh S; суть, как и Я,--!, S,-_i, слова в Д, причем [Rl= [RU = [#в [B7)]. Тем самым доказано наше утверждение о виде слов О/ (j<i<k). В этом виде каждое из слов Q,- (/ <Ii < k), очевидно, представляется лишь единственным образом, причем прове- проведенное рассуждение показывает, что при всяком i, удовлет- удовлетворяющем условиям / < i < k, имеет место одно из трех: а) ех: Rl-l±R,, б) RtR & в) «, где 6j—ассоциативное исчисление в алфавите Д, опреде- определяемое той же системой соотношений, что и S. Допустим сначала, что для всякого t, удовлетворяющего условиям / < i < k, имеет место случай б). Тогда C5) C6) C7) j JLR [B4)], [B5)], [B8), C5), C6)]. Имеем так как D есть Ф-ряд. При этом [Q g < 1A7), A8)].
376 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII Это означает, что Qk получается из Qfe-1 в результате подстановки правой части соотношения C), т. е. пустого слова, вместо некоторого вхождения левой части этого соот- соотношения. Ввиду того, что а:^Р и ни а, ни Р не входят ни в слово Кк-Х в алфавите Г, ни в слово С в этом алфавите, Qk имеет один из видов (Т—результат подстановки Л вместо вхождения слова в R), RS, (Т—результат подстановки Л вместо вхождения слова в 5). Если C8) Qk^RS, то j^ [C8), A9)]. Пусть — начальный отрезок ряда ?)., соединяющий Qx с Qy^, а — концевой отрезок этого ряда, соединяющий Qk+1 с QN. Тогда ряд есть, как и ?}, 2>-ряд, соединяющий те же слова, что и ?}, т. е. соединяющий V с W. Этот ряд мы и примем за Ш. Ясно, что C9) [?ПВ <[?>« и что при D0) [?){* = [?в имеем D1) №¦ = [?¦-(*-/) [A8), A2), A7)], D2) [3t»<[?>" [D1)]. Таким образом, в этом случае ряд Ш обладает всеми тре- требуемыми свойствами. Допустим теперь, что D3) Q §59] ПРОБЛЕМА ЭКВИВАЛЕНТНОСТИ ПУСТОМУ СЛОВУ 377 где Т есть результат подстановки пустого слова вместо некоторого вхождения слова аСр в R. Положим тогда D4) Pj^TS, D5) P. ^TaKfiS- (j<i<k). Пусть ^—система слов объема k—/ + 1 такая, что ее i-й член есть слово Pj+i-2. Примем за Ш ряд Так как /> 1 и D6) [D5), D3)], ряд Ы соединяет (даже при k = N) те же слова, что и ?1, т. е. он соединяет V с W. Имеем далее D7) 3): Qr±Qr+l A D8) 3): />»_!_!_Q»+1, S):Q,±Q,+1 так как ?1 есть 35-ряд и имеет место равенство D6); D9) 35: R±T, так как Т есть результат подстановки правой части соот- соотношения A) вместо вхождения в R его левой части; E0) ?: Q/.1±PJ.1 [D9), A9), D4), § 57.5.3]. Имеем также, по предположению, <?:/(,-1±К/ (i<i<k), откуда E1) 35: Kl.1±Kl (j<i<k), E2) 35:Р,_1Х/>/ (j<i<k) [E1), D5), § 57.5.3]. Наконец, имеем [D5), B3)], откуда, согласно D4), E3) $>:Р/-1±Р/. Смежности D7), E0), E3), E2), D8) показывают, что Ш есть Ф-ряд. Сравнивая слова Q,- и Р{ при /<i<fe и замечая, что E4) [Гв < [Яв,
378 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII усматриваем, что [Р1<1<Я [D5), C7), E4)], откуда E5) [Pf<h (j<i<k) [A8)]. Имеем также [PU<iQU U44). A9). E4I E6) <h [A5)]. Таким образом, высоты всех членов ряда ty меньше h, т. е. меньше высоты ряда %. Следовательно, №B<[QB. Так как переход от ?} к Ш. состоит, согласно D6), в замене k—/ словф,- (/•<л<1&—1) высоты Л [A8)] словами Р{ (/—1<1 <С»^&—2) меньшей высоты [E5), E6)], имеем при [9tB=[DB неравенство D2). Это показывает, что ряд 9t обладает всеми требуемыми свойствами. Совершенно аналогичным образом строится искомый ряд 94 в том случае, когда где Т есть результат подстановки пустого слова вместо не- некоторого вхождения слова аС|3 в S. Мы завершили, таким образом, рассмотрение того случая, когда условия б) соблюдаются для всякого i такого, что Допустим теперь, что для некоторых таких i эти условия не все соблюдаются, и обозначим через m наименьшее из этих I. Тогда, согласно доказанному выше, для i=m соблюдаются либо условия а), либо условия в), в то время как для всякого i такого, что j<i<im, соблюдаются условия б). Случай, когда при i=tn соблюдаются условия а), и случай, когда при i=m соблюдаются условия в), рассматриваются совершенно анало- аналогичным образом. Будет поэтому достаточно провести построе- построение искомого ряда R для первого из этих случаев. Итак, пусть E7) 6i: Rm.1±RM, E8) Кя-^Кт, E9) S-ilS», тогда как для всякого i такого, что / < i < т, соблюдаются условия б). При этом т есть некоторое число такое, что k > 591 ПРОБЛЕМА ЭКВИВАЛЕНТНОСТИ ПУСТОМУ СЛОВУ 379 Имеем тогда F0) tj 3LR (/<t<m) [B4)], F1) 315 (/<*<m) [E9), B5)], F2) Q^RaKfiS (j<i<m) [B8), F0), F1)]. Положим F3) F4) m RmaK$S (I < I < m) и примем за 9t ряд такой, что его i-й член есть Qt при l<i</, Pi-i при /<t<m+l и Qi при m + l^i^N. Так как / > 1 и m<k^N, ряд Ш соединяет те же слова, что D, т. е. соединяет V с W Имеем F5) Ф: QiJ F6) ©:/>„_! _L Q.+1 так как D есть Ф-ряд и A [F4), E8), F1), B8)]. Имеем далее 6: откуда F7) ?>: K,-t±Kt (/<'<«), F8) ф: P,._j J. Pi (j <i<m) [F4), F7), § 57.5.3]. Имеем также F9) PjlHR^C^S [F4), B3)], G0) 3): Pj-i-Lpj К63)- F9I Наконец, имеем G1) ®i:R±Rm [E7), F0)], G2) 3): R±Rm [G1)]. G3) 35: Qj-г 1 Р,.г [G2), A9), F3), § 57.5.3]. Смежности F5), G3), G0), F8), и F6) показывают, что «Я есть Ф-ряд,
380 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII Имеем далее G4) G5) G6) [Jf <h [PI =[Q1 [B2)], [G4), F3), A9)] [A5)]. [G4), F4), F2)] [A8)]. Из сравнения рядов Ш и ?1 видно, что Ш получается из Й в результате замены слов Q,- (/ <I i ^ т) словами Pi (j — l^i^m— 1). Так как слова Q,- (/< i< т) имеют высоту h [A8)], а из слов Р( (/—l^i^m— 1) первое слово имеет высоту, меньшую h [G5)], а остальные—вы- остальные—высоту h [G6)], имеем неравенство C9), причем в случае равенства D0) имеем [91" = < [?>-. Таким образом, и теперь построенный ряд ЧЯ обладает всеми требуемыми свойствами. Доказательство леммы 1.2 этим завершено. 1.3. При соблюдении условий леммы 1.2 может быть построен ф-ряд Ш, соединяющий V с W и удовлетворяющий условию (9). Пусть, в самом деле, соблюдены условия леммы 1.2. Строим тогда, согласно этой лемме, Ф-ряд Шг, соединяющий V с W и удовлетворяющий либо условию G7) Щ < [?>в, либо паре условий G8) [гй? = [?2В, G9) [Я? < [?>". Если соблюдено условие G7), то полагаем 9t=^= 9tx; ряд Ш, очевидно, обладает требуемыми свойствами. Если же соблюдены условия G8) и G9), то применяем лемму 1.2 к словам V, W и ряду 3tx (в роли ?1). Это воз- возможно, так как W <\Щ [G), G8)], [Гв<[9е? [(8), G8)]. Строим, согласно 1.2, Ф-ряд Я2, соединяющий У с IF и удовлетворяющий либо условию (80) Щ §59] ПРОБЛЕМА ЭКВИВАЛЕНТНОСТИ ПУСТОМУ СЛОВУ 381 либо условиям (81) [3*5 = [9*!, (82) [91? < [9*?. Если соблюдено условие (80), то полагаем 9i =?^= Щ2; если же соблюдены условия (81) и (82), то применяем еще раз лемму 1.2. Продолжая таким образом действовать дальше, будем последовательно получать 25-ряды, соединяющие V с W и такие, что высоты их равны, тогда как протяжения строго убывают. Этот процесс, очевидно, должен оборваться (не более чем после [D" шагов), а оборваться он может лишь тогда, когда получится ?)-ряд, соединяющий V с W и имеющий высоту, меньшую высоты ряда ?). Такой Ф-ряд, следова- следовательно, может быть построен, что и требовалось доказать. 1.4. Если Ф: VJLW, то может быть построен Ф-ря<5 91, соединяющий V с W и удовлетворяющий хотя бы одному из неравенств (83) [Ув >\Ж», (84) [№B>[sftB. В самом деле, пусть 35: V J_ W. Тогда существует ф-ряд С, соединяющий V с W. Если он удовлетворяет условиям G) и (8), то строим, согласно 1.3, Ф-ряд Ох, соединяющий V с W и такой, что [?>?<[?>. Если [V <[?>? то строим, согласно 1.3, 35-ряд ?5.2, соединяющий V с W и такой, что [?i| < ?5.в. Этот процесс последовательного по- построения Ф-рядов, соединяющих V с W и имеющих строго убывающие высоты, должен, очевидно, оборваться (не более чем после [?5.в шагов), а это, согласно 1.3, произойдет лишь тогда, когда получится 35-ряд ?>„, соединяющий V с W и такой, что хотя бы одно из неравенств [VB <[JDS, [W* < [?в не соблюдается. Этот ряд О„, очевидно, и может быть взят в качестве Щ. Д\ы можем теперь закончить доказательство теоремы 1.1,
Зв2 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП Допустим, что эквивалентность C) 35: [ГЛ. VIII имеет место для слова Р в алфавите Г. Покажем, что тогда имеет место эквивалентность B) Так как (85) ©: Р±С, [<хРрв=1 и [ABs=0, может быть построен, согласно 1.4, 2>ряд ?}, соединяющий аРР с Л и удовлетворяющий условию т. е. условию (86) [Qf<l (\<i<N), где Qj—t'-й член ряда D, а N—его объем. Имеем (87) Q, SaPp, (88) QN 2 Л, (89) [Qfr-0 [(88)]. Пусть / означает наименьшее из чисел i, для которых [Q? = 0. В силу (89) такие числа существуют и / г=^ N. В силу (85) и (87) / > 1. Рассмотрим члены Q,- A < t < /) 25-ряда ?}. По определению числа / имеем (90) [Q! = l (l<t</) [(86)], (91) [Q? = 0. Рассуждая далее, как в доказательстве леммы 1.2, убеж- убеждаемся, что каждое слово Q,- A ^t < /) может быть одно- однозначно представлено в виде P^a/QpS,, где (92) КгжР, где R(, Ki и S( суть слова в Г и где при всяком I A < <*'</) имеем либо 6:/C/.iX/C,, либо /С/^г/С,-. Имеем по- поэтому (93) 6:^1^.!. С другой стороны, имеем 3): j f-t JL Qf, 5591 проблема эквивалентнсх;ти пустому слову 383 откуда в силу (90) и (91) следует, что (94) Kj-гЖС В силу (92) — (94) имеет место эквивалентность B), что и требовалось доказать. 2. Теоремы §58.3.1 и 1.1 дают возможность установить следующий результат (А. А. Марков [6]): 2.1. Может быть построено ассоциативное исчисление 2D, удовлетворяющее следующему условию: невозможен нормальный алгорифм над алфавитом исчисления 25, перерабатывающий в пустое слово те и только те слова в этом алфавите, которые не эквивалентны в 2D пустому слову. Построим, в самом деле, ассоциативное исчисление 33 над алфавитом de согласно § 58.3.1. Применим к 23 тео- теорему 1.1. Роль © пусть играет при этом 93, роль Г—алфа- Г—алфавит исчисления 23, роль С—слово ded в этом алфавите, роли а и Р —какие-нибудь две буквы, не принадлежа- принадлежащие Г. Построим согласно 1.1 ассоциативное исчисление 25 в алфавите Д, равном Гар, таким образом, что эквива- эквивалентность тогда и только тогда будет иметь место для какого-нибудь слова Р в Г, когда будет иметь место эквивалентность Исчисление 25 будет тогда удовлетворять условию, сформу- сформулированному в теореме 2.1. Допустим, в самом деле, что ,<о есть нормальный алго- алгорифм над Д, аннулирующий те и только те слова в Д, ко- которые не эквивалентны в 25 пустому слову. Построим нормальный алгорифм @ в алфавите Д со схе- схемой «р, где Б пробегает алфавит Г. Ясно, что для любого слова Р в Г имеет место графи- графическое равенство 0)
384 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. V1I1 § 60] МЕТОД ВЫЧИСЛИМЫХ ИНВАРИАНТОВ 385 Построим алгорифм $? как нормальную композицию ал- алгорифмов (S и &: B) Я^(?о<?). 5? есть нормальный алгорифм над Г [B)], причем для лю- любого слова Р в Г [B)] Следовательно, й тогда и только тогда аннулирует слово Р в Г, когда ф аннулирует слово аЯр\ т. е. когда аРР не эквивалентно пустому слову в 2). Но, согласно по- построению исчисления 2), эквивалентность тогда и только тогда не имеет места, когда слово Р не эк- эквивалентно ded в исчислении 23. Таким образом, Й аннули- аннулирует те и только те слова в Г, которые не эквивалентны ded в 23. Такой нормальный алгорифм й над Г, однако, невозможен, согласно построению исчисления 23. Следова- Следовательно, невозможен и нормальный алгорифм (q над Д, ан- аннулирующий те и только те слова в Д, которые не экви- эквивалентны в 2) пустому слову. Аналогично, с помощью теорем §58.3.2 и 1.1, устанавли- устанавливается 2.2. Может быть построено ассоциативное исчисление 2), удовлетворяющее следующему условию: невозможен нормаль- нормальный алгорифм над алфавитом исчисления 2), применимый ко всякому слову в этом алфавите и перерабатывающий в пустое слово те и только те слова в нем, которые эквивалентны в ? пустому слову. 3. Аналогично тому, как проблему эквивалентности в дан- данном ассоциативном исчислении 31 можно истолковать как проблему тождества в порождаемой им К-системе [§ 57.9], проблему эквивалентности данному слову в исчислении Щ можно истолковать как проблему тождественности данному элементу этой К-системы. В частности, проблему эквивалент- эквивалентности пустому слову в исчислении 31 можно истолковать как проблему тождественности единичному элементу К-системы, порождаемой исчислением 31, т. е. как проблему построения нормального алгорифма, распознающего элементы, тождест- тождественные единичному элементу этой К-системы, по словам, представляющим эти элементы. Доказанную только что тео- теорему 2.2 можно в соответствии с этим рассматривать как ус- установление возможности построения К-системы с неразре- неразрешимой проблемой тождественности единичному элементу. § 60. Метод вычислимых инвариантов Мы закончим эту главу изложением одного предложенного А. А. Марковым (см. [14], [15]) общего метода установления неразрешимости массовых алгорифмических проблем, нахо- находящего в рассматриваемой нами проблематике очень естест- естественное применение. 1. Зафиксируем какой-либо алфавит А и будем рассматри- рассматривать бинарные отношения между словами в нем. Под этим мы, как обычно, будем подразумевать двуместные вербальные предикаты, свободные переменные которых принимают в ка- качестве значений слова в алфавите А. В целях краткости мы будем иногда опускать указания на алфавит и говорить просто о «бинарных отношениях». В дальнейшем основной интерес для нас будут представ- представлять бинарные отношения типа эквивалентности, т. е. реф- рефлексивные, симметричные и транзитивные. Рассмотрением именно таких отношений мы и ограничимся. 2. Итак, пусть Ш—какое-либо бинарное отношение рас- рассматриваемого типа. Нормальный алгорифм 3 над алфави- алфавитом А мы будем называть вычислимым инвариантом этого отношения, если 3 применим ко всякому слову в А и пе- перерабатывает всякие два слова, связанные этим отноше- отношением, в одно и то же слово. Мы будем говорить, что вычислимый инвариант 3 отли- отличает слова X и Y, если Два слова X и Y мы будем называть неотличимыми по инвариантам отношения Ш, если для любого вычисли- вычислимого инварианта 3 этого отношения имеет место графичес- графическое равенство Разумеется, всякие два слова, связанные отношением ffi, неотличимы по инвариантам этого отношения. Обратное, как мы впоследствии убедимся, верно не всегда. 3. Со всяким бинарным отношением ffi естественным образом связывается массовая алгорифмическая проблема ,!Ра
г 386 проблема тождества для полугрупп [ГЛ VIII распознавания тех пар слов Х#У, у которых X и Y свя- связаны отношением Ш. Сравнительно нетрудно показать, что 3.1. Если проблема 5**» разрешима в том смысле, что может быть указан решающий ее нормальный алгорифм, то может быть построен вычислимый инвариант За» отно- отношения Ш, отличающий любые не связанные этим отноше- отношением слова К и Y. Оставляя детали построения читателю, мы ограничимся изложением одного только общего плана требующейся здесь конструкции. Сначала мы каким-либо «хорошим» способом распола- располагаем слова в алфавите А в вычислимую последовательность. (Например, можно выписывать слова в порядке возраста- возрастания их длин, а при равных длинах—в лексикографичес- лексикографическом порядке.) Инвариант За мы будем строить так, чтобы он прини- принимал в качестве значений натуральные числа и чтобы он был неубывающей функцией своего аргумента. Первому члену построенной нами последовательности слов в алфавите А мы ставим в соответствие число 0. Пусть теперь N—натуральное число, большее единицы, и пусть значения За определены для всех членов последо- последовательности с номерами, меньшими N. Значение Зж на N-m члене последовательности мы зададим следующим образом. Пользуясь (нормальным) алгорифмом, решающим проблему 5*я, мы выясним, имеются ли среди членов последователь- последовательности, предшествующих N-ыу, такие, которые связаны с ним отношением dl. Если таких членов нет, мы увеличи- увеличиваем значение Зж по сравнению с предшествующим на еди- единицу. Если же такие члены имеются, то мы берем в ка- качестве вновь определяемого значения За его значение на первом из таких членов. Оформи» построенный таким образом алгорифм в виде нормального (соответствующая возможность подсказывается принципом нормализации), мы затем без особого труда установим, что он является вычислимым инвариантом отно- отношения 9? и что он обладает свойством, указанным в фор- формулировке теоремы 3.1. Таким образом, для того чтобы доказать неразрешимость проблемы 3*я< достаточно указать слова X и Y, не связан- связанные отношением Ш, но не отличимые по его инвариантам. 4. С л»обым ассоциативным исчислением естественным образом связывается некоторое рефлексивное, симметричное $60] МЕТОД ВЫЧИСЛИМЫХ ИНВАРИАНТОВ 387 и транзитивное бинарное отношение — отношение эквивалент- эквивалентности слов в этом исчислении, и, следовательно, можно гово- говорить о вычислимых инвариантах этого отношения. Мы покажем сейчас, что имеет место 4.1. Могут быть построены ассоциативное исчисление 33 и слова X и Y в его алфавите таким образом, что будут соб- соблюдены следующие условия: 1°. X и Y неэквивалентны в 33. 2°. X и Y неотличимы по инвариантам отношения экви- эквивалентности слов в 23. В самом деле, возьмем построенный для доказательства теоремы § 53.1.1 нормальный алгорифм ® над алфавитом Ао такой, что: 1) всякий раз, когда ® применим к какому- либо слову Р в Ао, ®(Р):§:а или ®(Р)ъЬ и 2) © непо- непополним относительно Ао. Пусть Г—алфавит алгорифма @, а буквы л, р и а от- отличны друг от друга и не принадлежат Г. Применим к © теорему § 58.1.1 и построим, согласно этой теореме, ассо- ассоциативное исчисление 23 над алфавитом Гяр0 таким обра- образом, чтобы равенство © (Р) ~SL Q для слов Р и Q в алфа- алфавите Г выполнялось тогда и только тогда, когда имеет место эквивалентность Положим 58: прРл X =?^ пегая, A) B) и покажем, что исчисление 33 и слова X и Y в его алфа- алфавите удовлетворяют условиям 1° и 2°. Действительно, допустим, что 23: XJ_Y, т. е. что C) 33: лоал±лаЬл [A), B)]. Пусть Р—какое-либо слово в А„. Предположим, что ® применим к Р. Тогда в силу выбора © либо либо ®(Р)ЖЬ. Допустим, что @(P)Sa. Тогда D) 33: ярРя _Ц_ поая. Но имеет место эквивалентность C), и, значит, 33: лрРл ЦпоЬл [D), C)].
388 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII А тогда ®(P)Sb, и потому a~S.b, что неверно. Следова- Следовательно, равенство ® (Р) з: а невозможно. Аналогично, невозможно и равенство'® (Р)ЗЕЬ. Значит, алгорифм ® не применим ни к какому слову Р в Ао, а тогда он пополним относительно Ао [см. § 53.1.Г], что противоречит выбору ®. Значит, условие 1° теоремы 4.1 соблюдается. Проверим теперь условие 2°. Пусть 3—какой-либо вычислимый инвариант отношения эквивалентности слов в 23, и пусть слова З(лаал) и 3 (гот/ж) различны. Пользуясь теоремами сочетания, и, в частности, теоремой разветвления, построим*) нормальный алгорифм 8 над алфавитом Ао таким образом, чтобы для любого слова Р в Гэтом алфавите выполнялось графическое**) равенство I а, если 3 (л;рРя)т5;3(яаая), \ Ь, если 3 (лрРп) ^ 3 (паал). Алгорифм 8 применим к любому слову в Ао, и, значит, он*полн относительно Ао. _ Пусть теперь ® применим к Р в Ао. Тогда либо ® (Р) -2-а, либо ® (Р) ЗЕ b. Допустим, что ®(Р)з:а» Тогда S3: лрРл J_ ло-ал, и, значит, F) 3 (лрРп) 3 а потому 8(РJа [E), F)] и , Допустим, что ® (Р) Ж Ь. Тогда 23: прРлЖпоЬп, и, значит, 3(лрРл)гЗ(лаЬл). Но 3(ла&л)^3(тотал), и потому G) 3 (лрРл) ;? 3 (лаал), так что Z(P)?Lb [E), G)] и 8(P)S®(P). Таким образом, алгорифм 8 является пополнением относительно Ао, что противоречит выбору ©. *) Детали построения мы оставляем читателю, рассчитывая на нако- накопившийся у него опыт. ••) Обращаем внимание на то, что алгорифм 3f применим ко вся- всякому слову в алфавите Гпро, §61] ПРОБЛЕМЫ РАСПОЗНАВАНИЯ СВОЙСТВ ИСЧИСЛЕНИЙ 389 Следовательно, слова 3 (лаал) и 3 (nabn) не могут быть различными, ги так как инвариант 3 произволен, то слова паап "и nabn, т. е. X и Y, неотличимы по инвариантам отношения эквивалентности слов в 23, что и оставалось доказать. Замечание. Сказанное в конце п. 3 позволяет за- заключить, что проблема эквивалентности для исчисления 23 неразрешима, и в этом смысле теорема 4.1 является усиле- усилением теоремы § 58.4.3. Правда, неизвестно, является ли это усиление существенным. Н. М. Н а г о р н ы м [5] построен пример перечислимого, но неразрешимого [см. §49.1] бинар- бинарного отношения эквивалентности слов, у которого любые два слова, не связанные этим отношением, отличимы по его ин- инвариантам. Вопрос о возможности получения аналогичного результата для отношений эквивалентности в ассоциативных исчислениях остается открытым. § 61. Проблемы распознавания свойств ассоциативных исчислений Как мы уже отмечали, с алгебраической точки зрения ас- ассоциативные исчисления — это способы задания ассоциатив- ассоциативных систем. Свойства ассоциативных систем, возникающие в результате разного рода алгебраических классификаций, естественным образом порождают соответствующие им свой- свойства ассоциативных исчислений. Естественно интересоваться массовыми алгорифмическими проблемами распознавания этих свойств. В данном параграфе мы изложим один общий результат, касающийся проблем распознавания таких свойств. К сожалению, за недостатком места мы будем вынуждены придать изложению конспективный характер, ограничившись ссылками на литературные источники, содержащие полные доказательства приводимых утверждений. 1. Пусть 31 и S3—ассоциативные исчисления в алфави- алфавитах А и Б соответственно." О нормальном алгорифме (а над алфавитом A U Б мы будем говорить, что он есть гомомор- гомоморфизм 31 в 23, если он удовлетворяет следующим условиям: ГЛ. Всякое слово в алфавите А алгорифм S перераба- перерабатывает в некоторое слово в алфавите Б. Г.2. Ьсли 21: PJLQ, то 93: <S(P)JL©(Q). Г.З. Для любых Р и Q в А имеет место эквивалент- эквивалентность
390 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII Легко доказывается следующая теорема: 1.1. Если (S—гомоморфизм 31 в 33, а 5)—гомоморфизм 33 в E, то нормальная композиция E5 о @) есть гомоморфизм 31 в <?. 2. Пусть 31 и 33—ассоциативные исчисления в алфави- алфавитах А и Б соответственно, а (S—гомоморфизм 31 в 33. Бу- Будем говорить, что (S есть изоморфизм 31 в 33, если выпол- выполняется условие Г.4. Если Р и Q— слова в А такие, что 33: ®(/>) J_©(Q), то 31: PJLQ. Легко проверить, что имеет место утверждение 2.1. Если (S—изоморфизм 31 в 33, a 2D—изоморфизм 23 в (?, mo (i?)o(S) есть изоморфизм 31 в @. 3. Пусть 31 и 33—ассоциативные исчисления соответственно в алфавитах А и Б, а ©—гомоморфизм 31 в 33. Будем го- говорить, что (S есть гомоморфизм 31 на 33, если выполняется условие Г.5. Имеется нормальный алгорифм © над А и Б, пере- перерабатывающий всякое слово в алфавите Б в некоторое слово в алфавите А и такой, что для любого Q*b Б имеет место эквивалентность A) 33: 3.1. Если (S—гомоморфизм 31 на 33, а 25—гомоморфизм 23 на (В, то (?)оC) есть гомоморфизм 31 на (S. Нетрудно показать, что 3.2. Если @—гомоморфизм 31 на 23, то 23: 4. Под изоморфизмом 31 на 33 мы понимаем гомоморфизм 31 на 23, являющийся вместе с тем изоморфизмом 31 в 23. Из 2.1 и 3.1 вытекает следующее утверждение: 4.1. Если (?—изоморфизм 31 на 23, a 2D—изоморфизм 33 на E, то B)о@) есть изоморфизм 31 на ©. Очевидно, что 4.2. Тождественный нормальный алгорифм в алфавите ассоциативного исчисления 31 есть изоморфизм 31 на самого себя. Нетрудно проверить следующее утверждение: 4.3. (Пусть 31 и 33—ассоциативные исчисления в алфа- алфавитах А и Б соответственно, (S—изоморфизм 31 на 23, а ©—нормальный алгорифм над A LIB, перерабатывающий всякое слово в алфавите Б в некоторое слово в алфавите А S61] ПРОБЛЕМЫ РАСПОЗНАВАНИЯ СВОЙСТВ ИСЧИСЛЕНИЙ 391 и удовлетворяющий условию 3A). Тогда ® есть изоморфизм 33 на 31. 5. Пусть 31 и 33 — ассоциативные исчисления. Будем го- говорить, что 31 включаемо в 23, если имеется изоморфизм 31 в 33. Будем говорить, что 31 изоморфно 23, если имеется изоморфизм 31 на 33. Из 2.1 следует 5.1. Если исчисление 31 включаемо в 33, а 33 включаемо в @, то 31 включаемо в @. Принимая во внимание, что всякий изоморфизм 31 на 23 является изоморфизмом 31 в 33, получаем 5.2. Если исчисление 31 изоморфно 33, то 31 включаемо в 33. Из 4.2 следует, что 5.3. Всякое ассоциативное исчисление изоморфно самому себе. Из 4.1 следует, что 5.4. Если исчисление 31 изоморфно 33, а 23 изоморфно (S, то 31 изоморфно (?. С помощью 4.3 нетрудно проверить, что 5.5. Если исчисление % изоморфно 33, то 33 изоморф- изоморфно 31. Для дальнейшего будет полезно следующее простое ут- утверждение: 5.6. Пусть А — произвольный алфавит, an — положи- положительное натуральное число. Тогда всякое ассоциативное исчис- исчисление в алфавите из п букв изоморфно некоторому исчислению в алфавите, не имеющем с А общих букв и также состоящем из п букв. Как легко понять, после выбора соответствующего алфа- алфавита определяющая система соотношений искомого исчисле- исчисления в данном случае может быть получена из системы соотно- соотношений исходного исчисления простым переименованием фи- фигурирующих в ней букв. 6. Пусть F — какое-нибудь свойство ассоциативных ис- исчислений. Мы будем говорить, что F инвариантно, если вся- всякое ассоциативное исчисление, изоморфное исчислению со свойством F, само обладает им. Будем говорить, что F наслед- наследственно, если всякое ассоциативное исчисление, включаемое в исчисление со свойством F, само обладает им. Очевидным образом имеем 6.1. Всякое наследственное свойство ассоциативных исчис- исчислений инвариантно. Приведем некоторые примеры наследственных свойств.
392 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII Об ассоциативном исчислении 31 будем говорить, что оно единично, если всякие два слова в его алфавите эквивалентны в 31 (или если — что то же самое — всякое слово в его ал- алфавите эквивалентно в 31 пустому слову). Без труда доказывается, что 6.2. Единичность — наследственное свойство ассоциатив- ассоциативных исчислений. 6.3. Единичное ассоциативное исчисление включаемо во всякое другое ассоциативное исчисление. 6.4. Всякое единичное ассоциативное исчисление изоморфно любому другому единичному ассоциативному исчислению. 6.5. Если 31—единичное ассоциативное исчисление, то для единичности ассоциативного исчисления 5J5 необходимо и достаточно, чтобы ИЗ было изоморфно 31. Об ассоциативном исчислении 31 будем говорить, что оно конечно, если имеется такая непустая система слов в алфавите этого исчисления, что всякое слово в его алфа- алфавите эквивалентно в St одному из членов этой системы. Без особого труда может быть показано, что 6.6. Конечность ассоциативных исчислений есть наслед- наследственное их свойство. Об ассоциативном исчислении 31 в алфавите А мы бу- будем говорить что оно полугрупповое*), если для любых Р, Q и R в алфавите А выполняются следующие условия: 1. если St: PR±QR, то SI: P±Q; 2. если St: RP±RQ, то SI: P±Q. Без особого труда устанавливается, что 6.7. Полугрупповость ассоциативных исчислений есть наследственное их свойство. Об ассоциативном исчислении 31 в алфавите А мы гово- говорили (см. с.370), что оно групповое, если имеется нормальный алгорифм $ над А, перерабатывающий всякое слово в ал- алфавите А в слово в этом же алфавите и такой, что для всякого Р в А имеют место эквивалентности 3t: %(P)P±A. Групповость ассоциативных исчислений не является их наследственным свойством. Действительно, исчисление в ал- •) Полугрупповые ассоциативные исчисления в литературе часто называют «конечно определенными полугруппами с сокращением». §61] ПРОБЛЕМЫ РАСПОЗНАВАНИЯ СВОЙСТВ ИСЧИСЛЕНИЙ 393 фавите аЪ, определяемое системой соотношений \ ba <r->, является, как нетрудно видеть, групповым, а включаемое в него ассоциативное исчисление в алфавите а, определяемое пустой системой соотношений, не является групповым. Нетрудно показать, что 6.8. Групповость ассоциативных исчислений есть их инва- инвариантное свойство. 6.9. Всякое групповое ассоциативное исчисление является полу групповым. Из 6.9. и 6.7 следует, что 6.10. Всякое ассоциативное исчисление, включаемое в груп- групповое, является полугрупповым. С помощью 5.1 легко получается, что 6.11. Включаемость ассоциативного исчисления в груп- групповое есть наследственное свойство. Пусть * не является |буквой алфавита А. Ассоциатив- Ассоциативное исчисление 31 в алфавите А мы будем называть разре- разрешимым, если имеется нормальный алгорифм над А*, рас- распознающий среди прочих слов в этом алфавите слова вида P*Q, где Р и Q—слова в А, для которых имеет место эквивалентность 31: PJLQ. Нетрудно показать, что 6.12. Разрешимость ассоциативных исчислений есть на- наследственное их свойство. Ассоциативное исчисление 31 мы будем называть абеле- вым, если для любых слов Р и Q в его алфавите имеет место эквивалентность St: PQ±QP. Легко усматривается, что 6.13. Абелевость ассоциативных исчислений есть наследст- наследственное их свойство. 7. С точки зрения алгебры инвариантные свойства ассо- ассоциативных исчислений представляют интерес в первую оче- очередь. Алгебраист будет склонен отождествлять изоморфные ассоциативные исчисления, считая их лишь различными спо- способами задания одной и той же „абстрактной ассоциативной системы". При такой установке неинвариантные свойства ассоциативных исчислений не представляют особого интереса,
394 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII будучи не свойствами самих абстрактных ассоциативных систем, а лишь свойствами способов их задания. Учитывая, однако, что способ задания абстрактных ассоциативных си- систем посредством ассоциативных исчислений является цен- ценным, алгебраист поставит вопрос об общих методах распозна- распознавания инвариантных свойств заданий. Этому вопросу соответствует следующая постановка нор- нормальной массовой проблемы. Пусть F — некоторое инвариантное свойство ассоциатив- ассоциативных исчислений, а А'— некоторый алфавит. Для ассоциатив- ассоциативных исчислений в А мы введем, подобно тому как это в § 42 делалось для нормальных алгорифмов, их изображения. Тре- Требуется построить нормальный алгорифм над двухбуквенным расширением алфавита А (одна буква требуется для отделе- отделения левых частей соотношений от правых и еще одна — для того, чтобы иметь возможность отделять соотношения друг от друга), применимый к изображению 31" всякого ассоциатив- ассоциативного исчисления 31 в А и перерабатывающий 31й в пустое слово тогда и только тогда, когда 31 обладает свойством F. Эту нормальную массовую проблему мы будем называть проблемой распознавания свойства F для алфавита А. Неразрешимость этой проблемы была доказана (А. А. М а р к о в [7], [8]; см. также [9]; полное изложение в монографии [2], гл. VI, § 11) при весьма общих условиях, нала- налагаемых на F и А. А именно, была доказана следующая тео- теорема: 7.1. Пусть F — инвариантное свойство ассоциативных исчислений. Если имеется как исчисление с этим свойством, так и исчисление, не включаемое ни в какое исчисление с этим свойством, то может быть указан алфавит, для которого проблема распознавания свойства F неразрешима (в том смыс- смысле, что искомый в этой проблеме нормальный алгорифм не- невозможен) . Если при этом алфавит исчисления со свойством F состоит из п букв, то для всякого алфавита с числом букв, большим п+3, проблема распознавания свойства F неразре- неразрешима. В частности, если имеется единичное исчисление со свойством F, то для всякого алфавита с числом букв, большим 3, проблема распознавания свойства F неразрешима. Подробное доказательство этой теоремы читатель найдет в монографии [2] на с. 345—368. В применении к наследственным свойствам теорема 7.1 может быть значительно упрощена. В самом деле, допустим, что F — наследственное свойство ассоциативных исчислений и что имеется как исчисление 31 со свойством F, так и исчис- ПРОБЛЕМЫ РАСПОЗНАВАНИЯ СВОЙСТВ ИСЧИСЛЕНИЙ 395 ление 23 без него. Тогда единичное ассоциативное исчисление в алфавите а, определяемое системой соотношений включаемо в 31 [6.3] и потому в силу наследственности свой- свойства F оно обладает этим свойством. С другой стороны, исчис- исчисление 23, не обладающее свойством F, не включаемо ни в ка- какое ассоциативное исчисление с этим свойством (опять-таки в силу наследственности F). Следовательно, выполнены усло- условия третьего утверждения теоремы 7.1, и это утверждение при- применимо. Мы получаем, таким образом, следующую теорему: 7.2. Пусть F — наследственное свойство ассоциативных исчислений. Если имеется как исчисление со свойством F, так и исчисление без него, то для всякого алфавита с числом букв, большим 3, проблема распознавания свойства F неразрешима. Теорема 7.2 может быть применена к наследственным свой- свойствам, рассмотренным выше. Это дает следующий результат: 7.3. Для всякого алфавита, содержащего более трех букв, неразрешимы проблемы распознавания единичности, конеч- конечности, полугрупповости, включаемости в групповое исчисление, разрешимости, абелевости. В самом деле, всякое единичное исчисление обладает пере- перечисленными шестью наследственными свойствами. С другой стороны, имеется неконечное исчисление (исчисление в алфа- алфавите а, определяемое пустой системой соотношений), которое тем самым не единично; имеется неполугрупповое исчисле- исчисление (исчисление в алфавите а, определяемое системой, состоя- состоящей из единственного соотношения аа<-*а), которое тем самым не включаемо в групповое исчисление [6.10]; имеется нераз- неразрешимое исчисление [§ 58.4.4] и, наконец, имеется неабелево исчисление (исчисление в алфавите ab, определяемое пустой системой соотношений). К групповости ассоциативных исчислений теорема 7.2 не применима, так как это свойство не является наследст- наследственным. Тем не менее имеем 7.4. Для всякого алфавита, содержащего более трех букв, проблема распознавания групповости неразрешима. В самом деле, всякое единичное ассоциативное исчисление является, как нетрудно видеть, групповым. С другой сто- стороны, имеется исчисление, не включаемое ни в какое группо- групповое. Следовательно, к групповости применимо третье утверж- утверждение теоремы 7.1. 8. В заключение рассмотрим проблему изоморфии ассоциа- ассоциативных исчислений, состоящую в разыскании алгорифма,
396 ПРОБЛЕМА ТОЖДЕСТВА ДЛЯ ПОЛУГРУПП [ГЛ. VIII позволяющего распознавать изоморфию любых двух ассоциа- ассоциативных исчислений в данных алфавитах. Эта проблема сле- следующим образом может быть ^поставлена как нормальная массовая проблема. Пусть А и Б—произвольные алфавиты. Требуется по- построить нормальный алгорифм, применимый ко всякому слову вида 31Н*23Н, где 31 и 23—ассоциативные исчисле- исчисления в алфавитах А и Б соответственно, и перерабатываю- перерабатывающий такое слово в пустое тогда и только тогда, когда 31 изоморфно 33. Эту проблему мы будем называть проблемой изоморфна для алфавитов к и Б. Имеет место следующее утверждение (А. А. Марков [81; подробное изложение см. в [2] на с. 369—370). 8.1. Если хотя бы один из алфавитов А, Б содержит более трех букв, то проблема изоморфии для этих алфавитов не- неразрешима. В самом деле, допустим для определенности, что Б со- содержит более трех букв. Построим единичное исчисление 91 в А. Согласноч6.5 ассоциативное исчисление 33 в Б еди- единично тогда и только тогда, когда 31 изоморфно 23. Но проблема распознавания единичности для алфавита Б не- неразрешима, откуда легко и выводится интересующее нас утверждение 8.1. 9. Интересуясь лишь инвариантными свойствами ассоциа- ассоциативных исчислений, можно наряду с изображениями ассоциа- ассоциативных исчислений ввести их записи таким образом, чтобы в записи исчисления содержалась полная информация о нем самом. Теорема 5.6 показывает, что в рассматриваемом слу- случае нам важно знать не сам алфавит исчисления, а лишь число составляющих его букв. Изображение же ассоциативного исчисления может быть закодировано словом в двухбуквен- ном алфавите способом, аналогичным тому, который мы в § 45 применяли к нормальным алгорифмам. Запись исчисле- исчисления и будет состоять из этих двух компонент. Утверждение 8.1, теоретико-множественно говоря, показы- показывает, что множество пар записей изоморфных ассоциативных исчислений неразрешимо. Возникает вопрос, что же можно сказать положительное об этом множестве. Оказывается, что это множество перечислимо. Именно, справедлива следующая теорема (Н. М. Нагорный [4]): 9.1. Может быть построен алгорифм, применимый к паре записей ассоциативных исчислений 31 и 33 тогда и только тогда, когда 31 изоморфно 33, и перерабатывающий $61] ПРОБЛЕМЫ РАСПОЗНАВАНИЯ СВОЙСТВ ИСЧИСЛЕНИЙ 397 в этом случае эту пару записей в запись изоморфизма 31 на 23. Примененный для доказательства этого утверждения метод состоит в следующем. Рассматриваются некоторого простого типа конечные списки слов. Для любых двух ассоциативных исчислений определяется понятие их Т-изо- морфизма таким образом, что Т-изоморфизм исчислений 31 и 23 есть список указанного типа и для клюбого списка этого типа можно алгорифмически проверить, является ли он Т-изоморфизмом исчислений 31 и 23. При этом оказывает- оказывается, что Т-изоморфизм % и 23 существует тогда и только тогда, когда 31 изоморфно 23. Таким образом, перечисляя списки этого типа друг за другом и производя соответст- соответствующую проверку, мы найдем Т-изоморфизм 31 и 23, если он существует, и тогда построим ^по нему изоморфизм 3t на 23. Если же 31 не изоморфно 23, то процесс перебора рассматриваемых списков никогда не прекратится. Этим же приемом можно воспользоваться в других сход- сходных ситуациях. Так, с его помощью можно доказать перечис- перечислимость (неразрешимых в силу приведенных выше результа- результатов) множеств единичных, абелевых и групповых ассоциатив- ассоциативных исчислений. Теоретико-множественная терминология, которой мы вос- воспользовались в этом пункте, разумеется, использована здесь не по существу, а из соображений удобства. Приведенное рас- рассмотрение вполне укладывается в рамки конструктивных представлений. 10. Проблематику, рассмотренную в п. 7, естественно пы- пытаться перенести на групповые ассоциативные исчисления, которые с точки зрения алгебраиста суть способы задания не- некоторых специальных («конечно определенных») групп. Для таких исчислений результаты, аналогичные теореме 7.1, были получены С. И. А д я н о м [1], 12] и М. О. Р а б и- ном [1].
ГЛАВА IX АЛГОРИФМЫ И МАТЕМАТИЧЕСКИЙ АНАЛИЗ Вопрос об эффективности основных понятий и конструк- конструкций математического анализа, как известно, привлекал к себе внимание ряда крупнейших математиков практически с са- самого начала исследований по теоретико-множественному обо- обоснованию анализа. Однако обсуждение этой проблематики в точных терминах стало по-настоящему возможным только после того, как было сформулировано точное понятие алго- алгорифма. Любопытно, что понятие вычислимого действитель- действительного числа фигурирует уже в названии первой, основопола- основополагающей работы А. М. Тьюринга [1], в которой было произведено то уточнение общего понятия алгорифма, кото- которое впоследствии получило название «машины Тьюринга». С тех пор средствами теории алгорифмов были прояснены многие принципиальные вопросы оснований математического анализа. Было выявлено также конструктивное содержание ряда фундаментальных результатов анализа, лежащих в ос- основе многих методов, представляющих практическую цен- ценность. Были проведены важные исследования по выявлению исходных данных, достаточных для фактического нахожде- нахождения значений тех или иных искомых величин. Исследовалась сложностная зависимость между значениями исходных и ре- результирующих величин. Наконец, была разработана и осу- осуществлена подробная программа построения математиче- математического анализа на базе теории алгорифмов и конструктивной логики (так называемый «конструктивный анализ»), не апел- апеллирующая к концепциям теории множеств. Особое значение эти исследования приобретают в связи с потребностями общей теории вычислительных методов. К сожалению, результаты проведенных исследований практически неизвестны вне уз- узкого круга специалистов. Включая в данную монографию ряд фрагментов, проясняющих значение точного понятия алго- алгорифма для математического анализа и вычислительной мате- математики, мы хотели бы привлечь внимание читателя к описан- описанному кругу вопросов. Подробное изложение понятий и методов конструктивного анализа, а также сопоставление их с классическим, теоретико- §62] КОНСТРУКТИВНЫЕ ЧИСЛА И ФУНКЦИИ 399 множественным подходом читатель найдет, например, в фун- фундаментальной статье Н. А. Шанина [2]*) и в книге Б. А. Кушнера [1]. § 62. Конструктивные действительные числа и конструктивные действительные функции В этом параграфе мы покажем, как на базе понятия алго- алгорифма (и без какого-либо обращения к представлениям тео- теории множеств) могут быть определены основные понятия кон- конструктивного математического анализа — понятие конструк- конструктивного (вычислимого) действительного числа и понятие кон- конструктивной (вычислимой) действительной функции. 1. Обозначим через Р трехбуквенный алфавит |—/, в ко- котором мы в § 1 условились строить рациональные числа. Пусть Р+ — какое-либо двухбуквенное расширение этого ал- алфавита. В качестве „произвольных" нормальных алгорифмов над Р мы будем брать нормальные алгорифмы в этом фикси- фиксированном алфавите Р+. Нормальный алгорифм Ж в алфавите Р+ мы будем назы- называть конструктивной последовательностью рациональных (со- (соответственно натуральных) чисел, если он применим ко вся- всякому натуральному числу и перерабатывает его в некоторое рациональное (соответственно натуральное) число. Число 31 (N) мы1 будем называть N-м членом последовательности Ш.. Пусть 31—конструктивная последовательность рацио- рациональных чисел. Конструктивную последовательность нату- натуральных чисел 33 мы будем называть регулятором сходи- сходимости последовательности 31, если для любых натуральных L, М и N из М, N^$5(L) следует, что Конструктивную последовательность рациональных чисел мы называем фундаментальной, если может быть построен ее регулятор сходимости. Конструктивным действительным числом мы будем на- называть всякое слово вида 3136Э33, где 31—фундаментальная конструктивная последовательность рациональных чисел, 33—ее регулятор сходимости, а б—разделительный знак. 2. Обращаем внимание читателя на то, что конструктивное действительное число представляет собой некоторое слово •) Том «Трудов математического института им. В. А. Стеклова АН СССР», в который входит эта статья, целиком посвящен проблемам кон- конструктивного анализа.
400 АЛГОРИФМЫ И МАТЕМАТИЧЕСКИЙ АНАЛИЗ [ГЛ. IX §62] КОНСТРУКТИВНЫЕ ЧИСЛА И ФУНКЦИИ 401 в алфавите abb. Это слово содержит в себе информацию о двух алгорифмах, первый из которых порождает „хорошую" (вы- (вычислимую) фундаментальную последовательность рациональ- рациональных чисел, а второй по заданной точности позволяет эффек- эффективно находить в этой последовательности место, начиная с которого заданная точность гарантируется. Данное определение в общих чертах „подражает" канто- ровскому определению действительного числа через фунда- фундаментальную последовательность рациональных чисел, но выгодно отличается от него в отношении возможности эффек- эффективного приближения действительных чисел рациональ- рациональными. Заметим (для сравнения см. § 53.1), что понятие конструк- конструктивного действительного числа мы определяем самостоя- самостоятельно, не ссылаясь на общее понятие действительного числа. Поэтому конструктивный континуум может рассматриваться вполне самостоятельно, в отрыве от классического конти- континуума (хотя, конечно, он естественным образом и порождает некоторое «хорошее» подмножество последнего). 3. Два конструктивных действительных числа Stj623? и St|6S9| мы называем равными, если для любого натураль- натурального N Для отношения равенства конструктивных действитель- действительных чисел мы будем употреблять привычный знак «=». В таком виде понятие конструктивного действительного числа было введено в литературу Н. А. Шаниным в [2]. В этой работе можно найти подробное и прокомментированное изло- изложение истории формирования этого и родственных ему по- понятий. 4. Теперь мы перейдем к формулировке определения кон- конструктивной действительной функции. Для этого мы зафикси- зафиксируем какое-либо двухбуквенное расширение Д алфавита abyb, в котором будем записывать у-системы конструктивных действительных чисел. Две такие системы мы будем называть равными, если они имеют равное число членов и если их чле- члены с одинаковыми номерами представляют собой равные кон- конструктивные действительные числа. Нормальный алгорифм 51 в алфавите Д мы будем назы- называть конструктивной действительной функцией N перемен- переменных, если для любых двух равных УУ-членных систем S и Т конструктивных действительных чисел из того, что Ж (S) опре- опре(делено, следует, что Ж (Т) также определено и что 51 (S) и 51 (Г) суть равные конструктивные действительные числа. i Таким образом, конструктивная действительная функция 1 ставит системам своих аргументов в соответствие конструк- | тивные действительные числа с соблюдением естественного | требования согласованности: на двух равных системах функ- || ция определена одновременно и в случае определенности при- принимает равные значения. Такое понятие конструктивной действительной функции, являющееся конструктивным аналогом восходящего к Ди- Дирихле понятия точечного отображения, было введено А. А. Марковым ([10], [11]). Историю вопроса и разбор род- родственных понятий можно найти в уже упоминавшейся работе Н.А.Шанина [2]. 5. Введем еще некоторые, нужные для дальнейшего поня- понятия. Пусть г — какое-либо фиксированное рациональное число. Обозначим символом Жг нормальный алгорифм в алфавите Р+ такой, что для любого натурального N Алгорифм %г является конструктивной последователь- последовательностью рациональных чисел и, как легко видеть, фунда- фундаментальной, потому что алгорифм 510 является регулятором сходимости для 51Г. Таким образом, слово Щ8&1 представ- представляет собой конструктивное действительное число. Мы будем называть его действительным образом рационального числа г. В качестве обозначения для этого числа мы избе- изберем символ г. Пусть х — конструктивное действительное число. Мы бу- будем называть его рациональным *), если может быть указано такое рациональное г, что х=г. Мы будем называть х ирра- иррациональным, если оно не рационально, и псевдорациональным, если оно не иррационально. В дальнейшем вместо х=г мы будем писать х—г. Легко видеть, что всякое рациональное конструктивное действительное число является псевдорациональным. Вопрос о том, в какой мере справедливо обратное утверждение, мы рассмотрим в п. 5 следующего параграфа. *) Обращаем внимание читателя на то, что рациональное конструк- конструктивное действительное число не есть рациональное число в том смысле, как мы его определили в § 1.6. Разумеется, в классическом анализе тоже проводится различие между рациональными и рациональными дей- действительными числами. | 14 Д. А. Марков, Н. М. Нагорный
402 АЛГОРИФМЫ И МАТЕМАТИЧЕСКИЙ АНАЛИЗ § 63. Пример Шпеккера ГГЛ. IX 1. В этом параграфе мы изложим один, играющий в осно- основаниях анализа принципиальную роль, результат Э. Шпек- Шпеккера [1], который проливает свет на вопрос об эффектив- эффективности операции взятия верхней грани ограниченного число- числового множества (в рамках теоретико-множественных пред- представлений существование этой грани, как читатель хорошо помнит из курса анализа, обеспечивается известной теоремой Вейерштрасса). Именно, мы покажем, что 1.1. Может быть построена ограниченная неубывающая конструктивная последовательность рациональных чисел та- такая, что невозможен ее регулятор сходимости. В настоящее время известно несколько различных дока- доказательств этой теоремы. Мы приведем одно из них, близкое к первоначальному доказательству Шпеккера. Чтобы по возможности более отчетливо изложить замысел, лежащий в основе конструкции Шпеккера, мы позволим себе не строить некоторые требующиеся по ходу дела нормальные алгорифмы, а лишь сослаться на возможность их построе- построения. Вооружившись терпением, читатель без особых усилий восполнит пробелы, которые у нас таким образом возникнут. Итак, пусть 91 — какой-либо нормальный алгорифм. Обо- Обозначим посредством А алфавит этого алгорифма. Перенуме- Перенумеруем каким-либо „хорошим" способом слова в А (например, упорядочим их по длине, а при равных длинах — лексикогра- лексикографически). Слово с номером N мы будем обозначать символом PN. Ясно, что имеются единые конструктивные методы (ал- (алгорифмы) для нахождения номера заданного слова и для вос- восстановления слова по заданному номеру. Принцип нормали- нормализации (§ 27.6) подсказывает нам, что эти алгорифмы могут быть оформлены в виде нормальных (и это действительно так, в чем читатель может убедиться самостоятельно). Зафиксируем теперь натуральное число L и будем при- применять к слову Р] алгорифм 91, вычисляя по ходу приме- применения арифметическую функцию /9г, ь, значение которой для произвольного натурального числа N определяется следую- следующими условиями: 1) Ы, l(N)=0, если процесс применения 91 к PL не за- закончился за число шагов, меньшее N; 2) f%, l (N) = 1, если процесс применения 91 к PL закон- закончился за число шагов, меньшее N. $63] ПРИМЕР ШПЕККЕРА 403 Легко видеть, что для вычисления значений этой всюду определенной, монотонной, принимающей значения 0 и 1 функции fa, i имеется единый конструктивный метод, ал- алгорифм. Принцип нормализации подсказывает нам, что су- существует тогда и нормальный алгорифм, вычисляющий зна- значения этой функции. В дальнейшем мы будем считать, что какой-нибудь такой нормальный алгорифм $х L зафикси- зафиксирован. Легко сообразить, что 1.2. Алгорифм 91 применим к слову Рек тогда и только тогда, когда существует натуральное число N такое, что $>д, z.(A/) = l, где L—номер слова Р. Для любого натурального N положим теперь 1 = 0 Рациональнозначная функция s^ определена на любом натуральном числе и для вычисления ее значений имеется алгорифм. Снова принцип нормализации подсказывает нам, что этот алгорифм может быть задан в виде нормального. Предполагая требующееся здесь построение выполненным, мы обозначим полученный нормальный алгорифм посредст- посредством ©я. Итак, для любого натурального N имеет место ра- равенство i=0 Значит, ©>д перерабатывает всякое натуральное число в рациональное. Согласно теореме приведения (§ 41.7.1) можно считать, что ©« есть нормальный алгорифм в Р+ (см. §62.1). Таким образом, ©« представляет собой конструктивную последовательность рациональных чисел. Простая проверка показывает, что для любого N вы- выполняются неравенства ©и (АО <© и N »=()¦' Установим теперь, что 1.3. Если существует регулятор сходимости последова- последовательности ©я, то разрешима проблема распознавания при- применимости алгорифма 31 к словам в алфавите А. 14*
404 АЛГОРИФМЫ И МАТЕМАТИЧЕСКИЙ АНАЛИЗ [ГЛ. IX В самом деле, пусть 23 — регулятор сходимости <2и. По- Построим нормальный алгорифм © в алфавите Р+ так, чтобы для любого N выполнялось равенство V, 33 (JV)) (детали построения мы снова оставляем читателю). Так как для любого N то 6 также является регулятором сходимости для ©щ, Возьмем теперь какое-либо слово Р в А, и пусть N — его номер. Пусть K^(&(N). Тогда и, так как последовательность &ц монотонна, знак абсо- абсолютной величины может быть снят: Следовательно, у «я. t (X) i = 0 ¦«' 2' и потому у Ря-f' Все слагаемые этой суммы неотрицательны. Кроме того, в силу выбора (?, Ns^.fe(N). Поэтому ^ 1 2^"' а значит, и 0 Ь, .v( /С)—гК л/ (© (iV)) < 1. Вспомнив, что функция, представляемая алгорифмом §ч>[, N, не убывает и принимает в качестве значений 0 и 1, мы заключаем отсюда, что для любого К ^ @ (W) имеет место равенство 3?*. И/О-Зх ИОД). Вычислим теперь ???(> # (@(jV)). Если окажется, что 3".', л (G(jV))=1, to мы сможем утверждать, что алгорифм % применим к слову Р [1.2]. Если же окажется, что §64] ПРОБЛЕМА РАСПОЗНАВАНИЯ РАВЕНСТВА ЧИСЕЛ 405 для _ . ¦ v-v--,, =0, то ^.л, л/(/С) = 0 для любого /С: /С ^ Й (Л^) — в силу только что доказанного; для К < ' в силу монотонности ga, n- Таким образом, в этом случае не существует М такого, что gx N (М)в=1, а потому Ш не применим к слову Р [1.2]. Итак, мы разработали алгорифм, позволяющий по произ- произвольному слову Р в А выяснить, применим ли алгорифм Щ к Р. Оформив этот алгорифм в виде нормального, мы завер- завершим доказательство утверждения 1.3. Теорема 1.1 теперь получается без труда. В самом деле, достаточно взять какой-либо нормальный алгорифм 5?1 с не- неразрешимой проблемой распознавания применимости t§ 48.2.4] и построить соответствующую ему конструктивную последо- последовательность рациональных чисел <?«. 2. Теорема 1.1 показывает, что так называемые «чистые» теоремы существования» классического математического ана- анализа иногда могут оказываться очень ненадежным ориенти- ориентиром в условиях реальной вычислительной практики. § 64. Проблема распознавания равенства действительных чисел 1. Математик, придерживающийся традиционной теоре- теоретико-множественной точки зрения, считает дизъюнкцию A) «л;=0 или неверно, что д;=0», где х — произвольное действительное число, верной автомати- автоматически. Для него она является простым следствием общего логического закона — «закона исключенного третьего». Между тем проблема фактического выяснения по х, какой именно из членов дизъюнкции A) является верным, может оказаться трудной даже при очень благоприятных обстоятель- обстоятельствах. Пусть, например, х задано в виде бесконечной десятичной дроби такой, что имеется алгорифм, позволяющий вычислить любой ее разряд (такой алгорифм, разумеется, возможен да- далеко не всегда). Так^как мы не^вправе требовать какой-либо большей информации, на ум не приходит ничего другого, кроме как пытаться вычислять х с все возрастающей точно- точностью. Но сколько бы знаков х мы ни вычислили, если все они равны нулю, мы ничего об х сказать не в состоянии: вполне возможно, что следующий знак окажется отличным от нуля. Таким образом, если х=0, этот „прямой" метод к цели не ве-
406 АЛГОРИФМЫ И МАТЕМАТИЧЕСКИЙ АНАЛИЗ [ГЛ. IX дет. Мы будем стремиться показать, что никакой другой ме- метод тоже не может решать интересующей нас задачи. И тем не менее во многих рассуждениях и вычислительных схемах анализа встречаются точки разветвления, когда пред- предлагается „посмотреть", равно ли нулю значение такой-то величины, и в зависимости от этого рассуждать или поступать так или иначе. Типичным примером является схема нахожде- нахождения корня непрерывной знакопеременной функции «методом деления отрезка пополам». Здесь с самого начала предлагает- предлагается „посмотреть", равно ли нулю значение функции в середине отрезка, и в зависимости от этого продолжить или оборвать процесс. Поскольку никакого реального способа выяснить интересующий нас в этой ситуации вопрос нет,уже первый шаг процесса в общем случае оказывается невыполнимым. К рассмотрению этого примера мы вернемся в § 68, а сей- сейчас докажем следующее утверждение: 1.1. Невозможен нормальный алгорифм, применимый ко всякому конструктивному действительному числу и перера- перерабатывающий это число в пустое слово тогда и только тогда, когда оно равно нулю. 2. Прежде чем непосредственно перейти к доказатель- доказательству этой теоремы, мы проведем следующее рассмотрение. Зафиксируем какой-либо нормальный алгорифм 31 и обозначим его алфавит буквой А. Пусть Р—произвольное слово в А. Развернем процесс применения 31 к Р и по ходу этого процесса будем вычислять арифметическую функцию /я, р, положив {N, если работа 3( над Р не закончилась по прошествии N шагов; (91 :Р), если работа 31 над Р закончилась за число шагов, не превосходящее N *). Как мы видим, для вычисления значений функции /я, р имеется алгорифм. Без особого труда может быть построен и соответствующий нормальный алгорифм $и, р. Более того, может быть построен нормальный алгорифм, который пару, состоящую из записи 31 и слова Р, перерабатывает в за- запись l^si, p. С учетом принципа нормализации мы будем считать это построение выполненным. Теперь нетрудно убедиться, что имеет место следующее утверждение: §64] ПРОБЛЕМА РАСПОЗНАВАНИЯ РАВЕНСТВА ЧИСЕЛ 407 2.1. Алгорифм 31 не применим к слову Р тогда и только тогда, когда для любого N $», р (Л/) з: N. 3. Существует алгорифм, который всякое натуральное число N перерабатывает в рациональное число 2 *¦р Разумеется, этот алгорифм тоже может быть нормализован, причем в качестве алфавита результирующего нормального алгорифма может быть взят алфавит Р+. В дальнейшем мы будем считать такой нормальный алгорифм построенным и будем обозначать его символом ©я, р. Вспоминая определение, мы видим, что этот алгорифм представляет собой конструктивную последовательность рациональных чисел. Кроме того, каковы бы ни были М, * N^L, при любом Р*) имеет место неравенство так что тождественный нормальный алгорифм 3 в алфа- алфавите Р+ является регулятором сходимости этой последова- последовательности. Следовательно, слово при любом Р является конструктивным действительным числом. Мы обозначим его символом л>, р. Здесь снова построение л;?!, р по 31 и Р может быть нормализовано, и мы будем считать эту нормализацию произведенной. Нетрудно видеть, что 3.1. л>, р = 0 тогда и только тогда, когда алгорифм 31 не применим к Р. 4. Теперь становится ясно, что если существует нор- нормальный алгорифм, распознающий равенство конструктив- конструктивных действительных чисел нулю, то существует и нормаль- нормальный алгорифм, распознающий среди слов в алфавите А те из них, к которым алгорифм 31 не применим. В самом деле, пусть какой-либо нормальный алгорифм © распознает равенство конструктивных действительных чисел нулю. Берем слово Р в алфавите А, строим кон- конструктивное действительное число хщ, р и применяем к нему алгорифм (?. Если оказывается, что х%, р = 0, то алгорифм 31 не применим к слову Р. Если же хщ, рфО, то это не- неверно. *) Напоминаем, что (9Г:Р) означает число шагов алгорифма 9Г при работе над словом Р [см. § 27.3 и § 25.8]. *) Здесь не надо отдельно разбирать случаи, когда Ш применим и когда 31 не применим к слову Р.
408 АЛГОРИФМЫ И МАТЕМАТИЧЕСКИЙ АНАЛИЗ ГГЛ. IX Мы получили, таким образом, алгорифм, решающий проб- проблему распознавания неприменимости алгорифма 31 к словам в своем алфавите. Принцип нормализации подсказывает нам, что этот алгорифм может быть нормализован, и это действи- действительно так. Но это дает противоречие с теоремой § 48.2.3, согласно которой существует нормальный алгорифм с нераз- неразрешимой проблемой распознавания неприменимости к сло- словам в своем алфавите. Итак, нормальный алгорифм, распознающий равенство конструктивных действительных чисел нулю, невозможен. Теорема 1.1 доказана. 5. Анализируя способ задания чисел х*, Р, мы видим, что они устроены достаточно просто. В самом деле, если алгорифм 31 не применим к слову Р, то Хщ,Р — 0 [3.1J и, значит, в этом случае х% р рационально. Нетрудно также видеть, что если 31 применим к Р и C1:Я)=&, то хщ, P = 2~k, и, значит, хш, Р рационально и в этом случае. Таким обра- образом, имеет место следующая импликация: A) «если 31 применим к Р или 31 не применим к Р, то конструктивное действительное числохж, р рационально». Математик, признающий «закон исключенного третьего» универсальным логическим законом, делает отсюда вывод, что всякое число х«, Р рационально. Нам, однако, кажется более осторожным следующее рассуждение: Возьмем любое из чисел хщ, Р и предположим, что оно иррационально, т. е. не рационально. Тогда посылка импликации A) неверна, и, значит, неверны оба ее дизъюнк- дизъюнктивных члена, т. е. 1) 31 не применим к Р и 2) неверно, что 31 не применим к Р. Мы получили, таким образом, противоречие. Следовательно, любое из чисел хщ, р не иррационально и потому, согласно определению, псевдора- ционально. 6. Предположим теперь, что имеется нормальный алго- алгорифм Ш, применимый ко всякому псевдорациональному конструктивному действительному числу и перерабатываю- перерабатывающий его в рациональное число*), которому оно равно. Возьмем произвольное слово Я в А, построим число лгш, р и применим к нему алгорифм Ш. Если Ж (x%, Р) = 0, то х%, Р = 0 и, значит, 31 не применим кР[3.1]. Если же Ш(х^,Р')ф0, то неверно, что 31 не применим к Р [3.1]. Таким образом, *) В смысле § 1.6, т. е. целое число или „дробь" вида Af/Л/, где М — целое, а Л/ — натуральное число, отличное от нули. S в41 ПРОПЛПМ\ РАСПОЗНАВАНИЯ PARF.HCTRA ЧПГ.РЛ 400 мы разработали алгорифм, решающий для 31 проблему рас- распознавания неприменимости к словам в его алфавите. Этот алгорифм, разумеется, может быть нормализован, и так как ЭХ—произвольный нормальный алгорифм, то это дает про- противоречие с теоремой § 48.2.3. Таким образом, нормальный алгорифм Ш, удовлетворяю- удовлетворяющий условиям, сформулированным в начале этого пункта, невозможен. Но тогда нет оснований рассчитывать и на су- существование какого-либо алгорифма вообще, т. е. единого об- общего метода, с этими свойствами. После этого замечания мы предлагаем читателю самому от- ответить на вопрос: верно ли, что всякое псевдорациональное конструктивное действительное число рационально? 7. Рассмотрение чисел х%, Р дает удобный повод отметить еще одно любопытное обстоятельство. Условимся говорить, что число 3'(J6iiJ мажорирует число Э(|653|, если для любого натурального N имеет место неравенство Для обозначения этого отношения, являющегося аналогом обычного нестрогого порядка в множестве действительных чисел, мы по традиции будем пользоваться привычным зна- знаком «^», употребляя знак «г?С» в естественном смысле. После этого обычным образом может быть введено отношение «>» *). Разумеется, в случае любых двух конструктивных дейст- действительных чисел хну имеет место импликация «если х>у или х=у, то Исследуем вопрос о том, насколько справедлива обратная импликация. (Подчеркнем, что знак мажорирования ^ здесь понимается в смысле только что сформулированного опреде- определения и a priori нет никаких оснований рассматривать его как дизъюнкцию «больше или равно».) Из определения мажорирования очевидным образом вы- вытекает, что 7.1. Каково бы ни было Рек, хч&, Р^0**). Допустим теперь, что имеется нормальный алгорифм 6, применимый ко всякому конструктивному действительному *) Оно может быть введено и самостоятельно—например, следую- следующим образом: 9Г?633? > Щ№1 означает, что существует натуральное N такое, что % C3, (A/))-9t2 EB2 W) > 2-<w-». **) Запись xSsr (x > г) мы, естественно, будем понимать как ~ (X > ?).
410 АЛГОРИФМЫ И МАТЕМАТИЧЕСКИЙ АНАЛИЗ [ГЛ. IX §65] РАСПОЗНАВАНИЕ МАЖОРИРОВАНИЯ 411 числу х, мажорирующему 0, и такой, что х > 0, если (§,(х)^А, и л: = 0, если (?(х)^А. Возьмем произвольное слово Р в А, построим число ху, Р и применим к нему алгорифм GL Если &(хщ, р) ;о;Л, то хщ, р > 0 и, значит, 31 применим к Р [3.1]. Если ©(хя,р)^.А, то .%,Р = 0 и, значит, 51 не применим к Р [3.1]. Таким образом, мы по- получили алгорифм, распознающий применимость нормального алгорифма Ш к словам в своем алфавите. Нормализовав этот алгорифм—что, разумеется, возможно,—мы получим ввиду произвольности 31 противоречие с теоремой § 48.2.4. Итак, мы доказали, что 7.2. Невозможен нормальный алгорифм (?, применимый ко всякому конструктивному действительному числу х, мажорирующему 0, и такой, что х > 0, если &(х)^.А, и х = 0, если К (л:) ;ЁЛ. Ввиду принципа нормализации остается мало надежд на получение какого-либо другого (не нормального) алгорифма со свойствами, перечисленными в формулировке теоремы 7.2. Мы теперь предоставляем читателю самому решить вопрос о том, насколько правомерно дизъюнктивное понимание от- отношения мажорирования. 8. Основываясь на определениях отношений равенства и мажорирования, нетрудно показать, что имеет место следую- следующее утверждение: 8.1. Каковы бы ни были конструктивные действительные числа х и у, х=у тогда и только тогда, когда х^у и § 65. Распознавание мажорирования. Арифметические действия. Кусочное задание функций 1. Пусть х — произвольное конструктивное действитель- действительное число. Рассмотрим дизъюнкцию A) «г^О или лг^О». Нетрудно показать, что ни при каком х оба члена этой дизъюнк- дизъюнкции не могут быть неверными. Возникает поэтому проблема разыскания алгорифма, который позволял бы находить по х верный член дизъюнкции A). (Заметим, что, в отличие от дизъюнкции §64.1 A), верными могут оказаться оба члена рассматриваемой дизъюнкции.) 2. Прежде чем перейти к непосредственному решению сформулированной проблемы, мы проведем следующее по- построение. Зафиксируем какой-либо нормальный алгорифм 31 над алфавитом Ао такой, что всякий раз, когда он применим к какому-либо слову Р в алфавите Ао, он перерабатывает его либо в а, либо в Ь. Пусть Р—произвольное слово в алфавите алгорифма 31. Способом, указанным в § 64.3, по- построим сначала нормальный алгорифм $«, р, а затем конст- конструктивную последовательность рациональных чисел 0?г, р. Из условий, которым удовлетворяет алгорифм %¦$, р [см. § 64.2], легко усматривается, что равенство @я, p(N + 1) = =®я, p(N) для какого-либо N имеет место тогда и только тогда, когда 31 применим к Р. Построим теперь конструктивную последовательность рациональных чисел ,§я, р так, чтобы выполнялись равенства (N), — ®*.p(N+\), если @«l если ®я.р(# + 1) и %(Р)Жа, если ®«.p(N+\) и ЩР)ЖЬ. ®9.PrJiN) Независимо от того, каково Р, нормальный алгорифм 3 такой, что 3 (N) Ж N + 1, является регулятором сходимости для .§я, р. и потому слово ,?!(, рбЗ3 представляет собой конструктивное действительное число. Мы условимся обо- обозначать это число символом г/?г, р- Принцип нормализации подсказывает нам, что может быть построен нормальный алгорифм .й такой, что fi1 Cl3 * Р) ж Ух. р- Это действительно так, и в дальнейшем мы будем считать это построение выполненным. 3. Предположим теперь, что имеется нормальный алго- алгорифм E, применимый ко всякому конструктивному дейст- действительному числу х и такой, что если 6(хK1Л, то х^О, и если (?(х)%А, то л:>0. Зададим следующий алгорифм ? в алфавите Ао. Предписывается взять произвольное слово Р в Ао, при помощи алгорифма Я из п. 2 построить число г/и, р и применить к нему алгорифм 6. Если окажется, что (?('#,( РJЛ, то положить 2(Р)=^=а. Если же © (у%, Р) будет отлично от Л, положить Q(P)==*b. Учитывая принцип нор- нормализации, мы будем считать алгорифм S нормализованным,
412 АЛГОРИФМЫ И МАТЕМАТИЧЕСКИЙ АНАЛИЗ [ГЛ. IX § 65] РАСПОЗНАВАНИЕ МАЖОРИРОВАНИЯ 413 т. е. будем считать, что он есть нормальный алгорифм над Ао. Из описания ? усматривается, что он применим ко всякому слову Р в Ао и что ? (Р) есть либо а, либо Ь. Покажем, что 8 является пополнением 31 относительно Ао. В самом деле, пусть Р—произвольное слово в Ао и пусть 31 применим к Р. Тогда Щ.(Р)Жа или Ж(Р)ЖЬ. В первом случае t/ffl. р = — 2-('Л:Р>, т. е. уж, P < 0. Но тогда Ё((/«,рIЛ, так как из G (г/и, р) ;gt Л следовало бы, что г/я,р :>0. Значит, тогда ^{Р)Жа. Таким образом, в этом случае 2(Р)ЖЖ(Р). Во втором случае %{Р)ЖЬ, и потому г/-д, я = 2-<'И:/>>, т. е. Уа,р>0. Но тогда (?(«/я, р)^Л и, значит, 2 (Р) Ж 6. Таким образом, и в этом случае 2 (Р) з:3( (Р). Итак, в обоих случаях й (Р) з: 21 (Р), и, значит, 8 дейст- действительно является пополнением 21 относительно А„. Итог нашего рассмотрения состоит в том, что если су- существует нормальный алгорифм © со свойствами, указан- указанными в начале данного пункта, то всякий нормальный алгорифм 31 со свойствами, перечисленными в начале п. 2, пополним относительно Ао, что противоречит теореме § 53.1.1. Итак, мы доказали, что имеет место следующее утверж- утверждение (Г. С. Цейтин [3]): 3.1. Невозможен нормальный алгорифм (?, применимый ко всякому конструктивному действительному числу х и такой, что х^.0, если ®(л:)з:Л, и х^О, если &(x)^tA. 4. В дальнейшем нам понадобится ряд обычных ариф- арифметических действий над конструктивными действительными числами. К их определению мы сейчас и перейдем. Пусть 9tf6SSf и ЩбЗЗ3.—два конструктивных действитель- действительных числа. Конструктивные последовательности рациональ- рациональных чисел 3I3, 214 и 2t5 мы будем называть соответственно суммой, разностью и произведением последовательностей Slj и 812, если для любого натурального N имеют место равенства Легко показать, что последовательности ЗТ3, 2D и 316 явля- являются фундаментальными. Именно, нормальный алгорифм 33 в Р+ такой, что для любого натурального N является регулятором сходимости для последовательностей 2C и 2t4. Если, далее, М — натуральное число такое, что |3li(A0|<2M и |912(jV) | < 2м, то нормальный алгорифм 6 в Р+ такой, что для любого jV является регулятором сходимости для последовательности 216. Таким образом, слова §Х|6533, St4S533 и Щб®3 суть конст- конструктивные действительные числа. Мы будем называть их соответственно суммой, разностью и произведением чисел 91збззз и яда. Нетрудно показать, что могут быть построены нормаль- нормальные алгорифмы, перерабатывающие любую пару конструк- конструктивных действительных чисел х и у в их сумму х-\-у, разность х—у и произведение х-у. Пусть §138333—конструктивное действительное число. Конструктивная последовательность рациональных чисел S(j такая, что для любого N как легко видеть, является фундаментальной: ее регулято- регулятором сходимости является алгорифм 33. Конструктивное действительное число 3l?S?33 мы будем называть абсолют- абсолютной величиной числа 2136333. Для нахождения абсолютной величины \х\ конструктив- конструктивного действительного числа х также может быть построен со- соответствующий нормальный алгорифм. После этого мы можем определить максимум и минимум двух конструктивных действительных чисел х и у: max (л;, у)^1/2-(х + у+\х—у\), min(x, y)=^1/2-(x + y—\х—у\). Для нахождения тах(х, у) и min(x, у) без труда могут быть построены соответствующие нормальные алгорифмы. Читатель, вероятно, уже заметил, что |.г|, а'затем и max (л:, у) н min(;t, у) мы из-за теоремы 3.1 определяем, не прибегая к обычному для классического анализа приему «раз- «разбора случаев». Аналогично сумме, разности и произведению конструктив- конструктивных действительных чисел может быть также определено и частное от деления двух таких чисел. Здесь возникает неболь- небольшая трудность, связанная с тем, что делитель может равняться нулю. Однако она легко преодолевается (см. об этом у Н. А. Шанина ([2]; § 6) или у Б. А. Кушнера (Ш; гл. 2, § 4)).
414 АЛГОРИФМЫ И МАТЕМАТИЧЕСКИЙ АНАЛИЗ [ГЛ. IX ТЕОРЕМА КОШИ 415 5. Рассмотрим еще один вспомогательный вопрос — воп- вопрос о кусочном задании конструктивных действительных функций. На первый взгляд здесь ввиду теоремы 3.1 может крыться определенная трудность. Однако при надлежащей согласо- согласованности склеиваемых функций она может быть обойдена сле- следующим способом. Пусть fi и /2 — конструктивные действительные функции, а а — конструктивное действительное число такое, что fi(a)= — /г(й)- Тогда конструктивная действительная функция /, по- построенная *) так, чтобы для произвольного х выполнялось условное равенство f (x)caf !(т'т(х, a))+f 2(тах{х, а))—Л (а), удовлетворяет условию **) с /„\ ^ ( Мх), если если § 66. Теорема Коши о нуле знакопеременной непрерывной функции В настоящем параграфе мы рассмотрим вопрос о возмож- возможном влиянии накопленного в теории алгорифмов опыта на постановку задач численного анализа, 1. В классическом математическом анализе важную роль играет теорема Коши о нуле знакопеременной непрерывной действительной функции. Она утверждает, что существует функционал F, определенный на множестве всех непрерыв- непрерывных на промежутке [0, 1] функций /, удовлетворяющих усло- условию /@) •/:A)<0, такой, что для любой функции f из этого множества F(f)?@, 1) и /(F(/))=0. Возникает естественный вопрос об эффективности этого функционала, т. е. вопрос о том, насколько эффективно мы можем решать уравнения f(x)=O для произвольных функций из указанного множества. Из- Известно, что хороших численных методов для решения этой задачи нет. Проводимое ниже рассмотрение в известном смыс- смысле вскрывает причину этого обстоятельства. *) Детали построения мы оставляем читателю. **) По аналогии со знаком ~, идущий далее знак ss мы понимаем таким образом, что обе части связываемого им равенства осмыслены при одних и тех же х и в случае осмысленности ил значения суть равные кон- конструктивные действительные числа. 2. Прежде всего нам необходимо ввести понятие непрерыв- непрерывной конструктивной действительной функции. Мы сделаем это типичным для конструктивного анализа способом. Пусть конструктивная действительная функция / опре- определена в точке х. Конструктивную последовательность нату- натуральных чисел §1 мы будем называть регулятором непрерыв- непрерывности функции f в точке х, если для любого конструктивного действительного числа у такого, что f(y) определено, и для любого натурального N имеет место импликация «если \х—у\<2-*(»\ то ]f(x)—f(y)\<2-N*. Мы будем говорить, что f непрерывна в точке х, если мо- может быть построен ее регулятор непрерывности в точке х. Функция / будет называться непрерывной на отрезке [а, Ь], где а и b — конструктивные действительные числа та- такие, что а^Ь, если может быть указан нормальный алгорифм, перерабатывающий всякое конструктивное действительное число х такое, что а^х^.Ь, в регулятор непрерывности f в точке х. Эти определения, как мы видим, отличаются от обычных определений, принятых в классическом анализе, тем, что требуется, чтобы б находилось по х и е эффективным (вычис- (вычислимым) способом. Таким образом, непрерывная конструктив- конструктивная функция непрерывна в некотором более сильном смысле, чем непрерывная функция классического анализа. Заметим, что на самом деле всякая конструктивная дейст- действительная функция в любой точке, где она определена, не- непрерывна (Г. С. Ц е й т и н [4]). Однако это утверждение доказывается очень сложно, и мы им пользоваться не будем, предпочитая включить в условия ряда приводимых ниже тео- теорем заведомо выполняющиеся требования. Несколько более слабое свойство конструктивных дейст- действительных функций — их неразрывность — было обнаруже- обнаружено ранее А. А. Марковым (см. [10], [11]). Развивая подход А. А. Маркова, Г. С. Цейтин своим только что упомянутым результатом довел его до логического завершения. Не имея за недостатком места возможности привести ре- результат А. А. Маркова в полном виде, мы, тем не менее, про- проиллюстрируем его на одном простом примере. Мы покажем, что 2.1. Невозможна конструктивная действительная функ- функция f, удовлетворяющая следующим условиям: 1) f@)=l, 2) f(x)=Q для любого конструктивного действительного чис- числа х, отличного от 0.
416 4ЛГ0РИФМ1Л II МАТГМАТИЧГГКПЙ л {ГЛ. IX i В самом деле, в предположении, что такая функция Rm можна, взяв произвольное конструктивное дейс™™НПр число х и вычислив значение f(x) с достаточной степеньюточ ности (например, с точностью до 1/4) мы vshW чисел 0 или 1 равно /(*). А тогда мы сумеем из членов дизъюнкции «х=0 или х=Ф0» имеет место. Нормализовав этот способ, мы получим nnorimi речие с утверждением §6-1.1.1. } противо- 3. Пусть теперь с __ произволь- произвольное конструктивное действительное число. Рассмотрим Конструктивную действительную функцию / , опреде- определенную так чтобы график сее на от- отрезке [0 1] имел вид, изображенный на рис. 1 (мы заимствуем конструкцию У П. Мартин-Лефа; см. [Ц с 74) Функция эта при любом 'с может быть построена с помощью общей ме- методики склеивания, изложенной в п. 5 предыдущего параграфа. Легко убе- убедиться, что она непрерывна в любой точке отрезка [0,1] (разумеется, речь идет о конструктивных действит^ль- вию 5S2i*: Удовлетв°Ряющих усло- Предположим, наконец что име- имеется нормальный алгопиЛм нимыи к записи всякой непрерывной на отроке конструктивной действительной функции / Р щей 0 1 Рис. I. рутивной действительной функции / щей в точках 0 и 1 значения противоположных зСТв перерабатывающий эту запись в конструктивной. „JЗнаков> ное число Х/, лежащее" между 0 и 1 „™ Что *еиствйтель Возьмем произвольное конструктивное /Л*/,)-о. §с; ПРПНЦПП КОНС1РУКТИШ1ОГО ПОДПОРА 417 Вычислив число х1с с достаточной точностью, мы найдем верный член дизъюнкции «х1с > 1/3 или х1с < 2/3». Если вереи первый ее член, то с<0. Если же верен вто- второй член этой дизъюнкции, то с>0. Таким образом, мы разработали алгорифм, позволяющий при любом конструк- конструктивном действительном с находить верный член дизъюнкции <.\С 0 или 0», Нормализовав этот алгорифм, мы получим противоречие с § 6511 теоремой § 65.1.1. Таким' образом, имеет место следующее утверждение (Г. С.Цейтин 13]): 3 1 Невозможен нормальный алгорифм, применимый к за- записи всякой непрерывной и меняющей знал на отрезке 10, 1J констриктОвной действительной функции Г " перерабатываю- перерабатывающий эту запись в лежащее между 0 и 1 конструктивное дей- действительное число, являющееся корнем уравнения Д*)==0. Между тем нетрудно показать (Г. С. Ц е и т и н 131), что 3 2 Никакая непрерывная и меняющая знак на отрезке [0 1] конструктивная действительная функция не может быть отлична от нуля в любой конструктивной действитель- действительной точке отрезка [0, 11. Доказательство этого утверждения будет приведено в § 68.1. § 67. Принцип конструктивного подбора 1. Здесь мы впервые сталкиваемся с необходимостью при- применить рассуждение, пользоваться которым мы до сих пор воздерживались и относительно допустимости которого раз- различные математики, по-видимому, расходятся друг с другом во мнения*- Речь идет о доказательстве применимости нормального алгорифма к исходному данному методом «от противного*- Для математика, стоящего на классической, тео- теоретико-множественной позиции, этот метод безусловно прием- приемлем так как он является простым следствием общего логиче- логического закона — «закона исключенного третьего». Для мате- математика разделяющего конструктивную точку зрения, этот метод представляет собой некоторую проблему, требующую во всяком случае специального обсуждения. Мы изложим сейчас свою точку зрения на этот вопрос, которую как нам кажется, разделяет значительная группа
418 АЛГОРИФМЫ И МАТЕМАТИЧЕСКИЙ АНАЛИЗ [ГЛ. IX математиков, придерживающихся конструктивного направ- направления *). 2. Теория нормальных алгорифмов строится в данной монографии в рамках абстракции потенциальной осуществи- осуществимости. Слова в рассматриваемых алфавитах, нормальные ал- алгорифмы — все это потенциально осуществимые конструк- конструктивные объекты. Сам процесс применения нормального алго- алгорифма к заданному слову мы рассматриваем как потенциально осуществимый конструктивный процесс. Для того чтобы удо- удостовериться в применимости алгорифма 21 к слову Р, мы не считаем обязательным, чтобы процесс применения 91 к Р был фактически выполнен перед нашими глазами, от начала до конца. Как же можно удостовериться в применимости алгорифма к слову? 3. Мы считаем возможным применять здесь рассуждение «от противного», т. е. утверждать, что если предположение о неограниченной продолжаемости процесса применения алгорифма Ш. к слову Р опровергнуто приведением к неле- нелепости, то 21 применим к Р. Мы не видим разумных оснований отвергать этот способ рассуждения, так как никакого выхода за рамки конструк- конструктивного направления при этом не происходит: абстракция актуальной бесконечности не применяется, существование продолжает пониматься как потенциальная осуществимость построения. Если мы утверждаем на основании доказанной невозможности неограниченной продолжаемости детермини- детерминированного процесса, что этот процесс закончится, то при этом дается совершенно определенный способ построения: продол- продолжать процесс до его завершения. То обстоятельство, что при этом число шагов процесса может не быть „заранее" ограни- ограниченным, ничего здесь по существу не меняет. К тому же тре- требование, чтобы это число было заранее ограниченным, едва ли может быть точно и объективно сформулировано. Нетрудно видеть, что рассмотренный способ доказатель- доказательства применимости алгорифма дает возможность обосновать следующий способ рассуждения. Пусть для одноместного вербального предиката 9$ в алфавите А имеется нормальный алгорифм, позволяющий для всякого слова Рек выяснять, удовлетворяет ли Р пре- предикату ^р. Если опровергнуто предположение о том, что ни одно слово не удовлетворяет предикату ^, то сущест- *) Изложение в основном следует работе А. А. Маркова [3]. См. 'акже его работу [10]. i 68] ТЕОРЕМА КОШИ (ПРОДОЛЖЕНИЕ § 66) 419 вует слово, удовлетворяющее ty. Найти это слово можно тогда путем последовательного перебора слов, начиная с пустого, причем для каждого рассматриваемого слова мы выясняем, пользуясь имеющимся алгорифмом, удовлетворяет ли оно предикату ^. В силу этого мы называем данный способ рассуждения методом конструктивного подбора, а логиче- логический принцип, провозглашающий допустимость этого ме- метода,— принципом конструктивного подбора. 4. Принцип конструктивного подбора находит в конструк- конструктивной математике, и особенно в конструктивном анализе, важные и многообразные применения. В качестве примера докажем с его помощью следующее утверждение: 4.1. Каковы бы ни были конструктивные действитель- действительные числа х и у, если неверно, что х = у, то х > у или у>х. В самом деле, пусть л: = Stf6S9|, у = ЩЬЩ. Рассмотрим следующий арифметический предикат с переменной N для натуральных чисел: Нетрудно убедиться, что существует нормальный алгорифм, распознающий те N, которые удовлетворяют этому преди- предикату. Предположим теперь, что не существует N, удовлетво- удовлетворяющего A). Тогда для любого N Но это означает, что х=у [§ 62.3], а это противоречит условию нашего утверждения. Значит, согласно принципу конструк- конструктивного подбора, существует N, удовлетворяющее предикату A). Для этого N имеет место одно из следующих неравенств: В первом случае ху-у, во втором у~>х. Теорема 4.1 доказана. § 68. Теорема Коши о нуле знакопеременной непрерывной функции (продолжение § 66) 1. Перейдем теперь к доказательству теоремы § 66.3.2. (Заметим, что утверждение ее нетривиально: можно было бы рассчитывать найти среди функций указанного типа такую, что после продолжения по непрерывности на классический континуум все ее нули окажутся неконструктивными.)
420 АЛГОРИФМЫ И МАТЕМАТИЧЕСКИЙ АНАЛИЗ [ГЛ. IX Итак, пусть конструктивная действительная функция / непрерывна на [0, 1 ] и меняет на этом отрезке знак (для опре- определенности будем считать, что /@)<0, а /A)>0). По предпо- предположению / отлична от нуля в любой конструктивной точке х рассматриваемого отрезка. Поэтому, согласно теореме § 67.4.1, /(л:)>0 или /(л:)<0, и мы располагаем нормальным алгориф- алгорифмом, выясняющим, какой именно из этих случаев имеет место. Пользуясь этим алгорифмом, мы построим нормальные алго- алгорифмы I и | в алфавите Р+ таким образом, чтобы выполня- выполнялись равенства * @)^=0, , если /(Ш+Я?))>0 (здесь N—произвольное натуральное число). Алгорифмы Ж и 4J представляют собой конструктивные последовательности рациональных чисел, причем, как легко видеть, фундаментальные. Простой подсчет показывает, что так что, если обозначить определяемые последовательно- последовательностями X и 9} конструктивные действительные числа через х и у соответственно, то х = у. Заметим также, что / (X (N)) < 0 и / (g) (Л/)) > 0. Теперь, пользуясь непрерыв- непрерывностью /, нетрудно показать, что f(x)^.O и /(у)>0, a отсюда на основании § 64.8.1 можно заключить, что /(л:)=0, что противоречит условию теоремы, 2, Теперь читатель методом «деления отрезка пополам» без труда убедится в справедливости следующего утверж- утверждения: 2.1. Какова бы ни была непрерывная на [0, 1 ] конструктив- конструктивная действительная функция, меняющая знак на этом отрез- отрезке, и каково бы ни было рациональное число е>0, может быть построено конструктивное действительное число х, лежащее между 0 и I и такое, что |/(л:)!<е. §68] ТЕОРЕМА КОШИ (ПРОДОЛЖЕНИЕ §66) 421 Действительно, пусть выполнены условия теоремы, и пусть для определенности /@)<0, а /A)>0. Вычисляем 1/A/2I с такой точностью, чтобы можно было указать верный член дизъюнкции «|/A/2) |< е или |/A/2)|>е/2». Если окажется, что |/A/2)|<е, то в качестве х берем 1/2 и процесс прекращаем. Если же окажется, что |/A/2)|>е/2, то /A/2)>е/2 или /A/2)<—е/2. В первом случае берем отрезок [0, 1/2], а во втором — отрезок [1/2, 1] и совершаем аналогич- аналогичный очередной шаг процесса. Согласно принципу конструк- конструктивного подбора этот процесс должен оборваться, так как при неограниченном продолжении его мы получили бы конструк- конструктивное действительное число, являющееся точкой разрыва функции /, которая, по предположению, непрерывна. Норма- Нормализовав это рассуждение, мы получим доказательство тео- теоремы 2.1. 3. Резюмируя содержание §§ 66 и 68, можно утверждать, что для любой непрерывной на [0, 1] знакопеременной кон- конструктивной действительной'функции / имеет место следующая ситуация: 1) она не может оказаться не имеющей конструк- конструктивного нуля *) [§ 66.3.2]; 2) информации о самой этой функ- функции, вообще говоря, недостаточно для фактического нахож- нахождения ее нуля [§66.3.1]; 3) функция / и заданная точность е>0 представляют собой информацию, достаточную для на- нахождения конструктивной точки х, в которой |/(л;)|^е[2.1]. Опытный математик-вычислитель, разумеется, должен ост- остро ощущать обрисованную здесь ситуацию. Однако нам представляется небезынтересным, что это ощущение может быть выражено в виде точных математических утверждений. *) То есть конструктивного корня уравнения / (х)=0.
ЛИТЕРАТУРА Ад я н С. И. 1. Конечно-определенные группы и алгоритмы.— ДАН СССР, 1957, 117, № 1, с. 9-12. 2. Об алгоритмических проблемах в эффективно-полных классах групп.—ДАН СССР, 195S, 123, № 1, с. 13—16. 3. Определяющие соотношения и алгоритмические проблемы для групп и полугрупп.— Тр. матем. ин-та АН СССР им. В. А. Стеклова, 85, М.: Наука, 1966. Барздинь Я. М. 1. Сложность программ, распознающих принадлежность натураль- натуральных чисел, не превышающих п, рекурсивно перечислимому множе- множеству.—ДАН СССР, 1968, 182, №6, с. 1249—1252. Борисов В. В. 1. Простые примеры групп с неразрешимой проблемой тождества.— Мат. заметки, 1969, 6, №5, с. 521—532. Б р а у э р Л. Э. Я. (Brouwer L. E. J.) 1. De onbetrouwbaarheid der logische principes.— Tijdschrift voor wijsbegeerte, 1908, 2, с 152—158. Б р и т т о н Дж. Л. (Britton J. L.) 1. The word problem.— Ann. of Math., 1963, 77, p. 16—32. Б у н В. В. (Boone W. W.) 1. The word problem.—Ann. of Math., 1959, 70, p. 207—265. Рейтинг А. 1. Интуиционизм. Введение / Пер. с англ. под ред. и с комментариями А. А. Маркова. М.: Мир, 1965. Г ё д е л ь К- (Godel K-) 1. Uber formal unentscheidbare Satze der Principia Mathematica und verwandter Systeme I.— Monatsh. fur Math, und Physik, 1931, 38, p. 173—198. Гильберт Д. иБернайс П. 1. Основания математики. Логические исчисления и формализация арифметики / Пер. с нем., М.: Наука, 1979 B-е изд. 1982 г.). 2. Основания математики. Теория доказательств / Пер. с нем., М : Наука, 1982. Детловс В. К. 1. Нормальные алгорифмы и рекурсивные функции.— ДАН СССР, 1953, 90, №4, с. 723—725. 2. Эквивалентность нормальных алгорифмов и рекурсивных функ- функций.— Тр. матем. ин-та АН СССР им. В. А. Опклова, 52, М.—Л • Изд. АН СССР, 1958, с. 75—139. Math. Ann., 1912, Д э и М. (Dehn M.) 1. Uber unendliche diskontinuierliche Gruppen.- 71, S. 116—144. Жаров В. Г. 1. Об оценке сложности членов конструктивных последовательностей нормальных алгорифмов.— ДАН СССР, 1972, 203, № 4, с. 746—748. ЛИТЕРАТУРА 423 2. О сложности универсального нормального алгорифма.— Теория ал- алгорифмов и математическая логика, М.: Изд. ВЦ АН СССР, 1974, с. 34—54. К л и н и С. К. (Kleene S. С.) 1. General recursive functions of natural numbers.— Math. Ann., 1936, 112, №5, p. 727—742. 2. Recursive predicates and quantifiers.— Trans. Amer. Math. Soo, 1943, 53, №1, p. 41—73. 3. On the interpretation of intuitionistic number theory.— J. Symbolic Logic, 1945, 10, p. 109—124. 4. A symmetric form of Godel's theorem.— Koninklijke Nederlandsche Akademie van Wetenschappen, Proc. of the sect, of sciences, 1950, 53, p. 800—802. Б. Введение в метаматематику / Пер. с англ., М.: ИЛ, 1957. 6. Об истоках теории рекурсивных функций.— Алгоритмы в современ- современной математике и ее приложениях. Часть II. Новосибирск, 1982, с. 270—308 (пер. с англ., подлинник опубликован в Annals of the Hystory of Computing, v. 3, № 1). Колмогоров А. Н. 1. О понятии алгоритма.— Успехи матем. наук, 1953, 8, № 4, с. 175— 176. 2. Три подхода к определению понятия «количества информации».—• Проблемы передачи информации, 1965, 1, вып. 1, с. 3—И. Колмогоров А. Н. иУспенский В. А. 1. К определению алгоритма.— Успехи матем. наук, 1958, 13, №4, с. 3—28. К у ш не р Б. А. 1. Лекции по конструктивному математическому анализу.—М.: Нау- Наука, 1973. Линник Ю. В. иШанин Н. А. 1. Андрей Андреевич Марков. К пятидесятилетию со дня рождения.— Успехи матем. наук, 1954, 9, № 1, с. 145—149. Мальцев А. И. 1. Алгоритмы и рекурсивные функции.— М.: Наука, 1965. М а н и н Ю. И. 1. Вычислимое и невычислимое.—М.: Советское радио, 1980. Марков А. А. 1. Теория алгорифмов.— Тр. матем ин-та АН СССР им. В. А. Стекло ва, 38, М.: Изд. АН СССР, 1951, с. 176—189. 2. Теория алгорифмов.— Тр. матем. ин-та АН СССР им. В. А Стек- лова, 42, М.—Л.: Изд. АН СССР, 1954. 3. О конструктивной математике.— Тр. матем. ин-та АН СССР им. В. А. Стеклова, 67, М.-Л.: Изд. АН СССР, 1962. 4. О логике конструктивной математики.— М.: Знание, 1972. 5. Невозможность некоторых алгорифмов в теории ассоциатив- ассоциативных систем.— ДАН СССР, 1947, 55, № 7, с. 587—590. 6. Невозможность некоторых алгорифмов в теории ассоциативных систем. II.— ДАН СССР, 1947, 58, № 3, с. 353—356. 7. Невозможность некоторых алгоритмов в теории ассоциативных систем,—ДАН СССР, 1951, 77, № 1, с. 19—20. 8. Невозможность алгорифмов распознавания некоторых свойств ас- ассоциативных систем.—ДАН СССР, 1951, 77, №6, с. 953—956. 9 О неразрешимых алгоритмических проблемах.— Матем. сборник, 1952, 31 G3), № 1, с. 34—42.
424 ЛИТЕРАТУРА 10. О непрерывности конструктивных функций.— Успехи матем. наук, 1954, 9, №3 F1), с. 226—229. 11. О конструктивных функциях.— Тр. матем. ин-та АН СССР им. В. А. Стеклова, 52, М.—Л.: Изд. АН СССР, 1958, с. 315—348. 12. Неразрешимость проблемы гомеоморфии.— ДАН СССР, 1958, 121, №2, с. 218—220. 13. О неразрешимости некоторых проблем топологии.— ДАН СССР, 1958, 123, № 6, с. 978—980. 14. О вычислимых инвариантах,—ДАН СССР, 1962, 146, №5, с. 1017—1020. 15. О неотличимости по инвариантам.— Изв. АН СССР, сер. матем., 1963, 27, №4, с. 407—436, 16. О нормальных алгорифмах, вычисляющих булевы функции.—• ДАН СССР, 1964, 157, №2, с. 262—264. 17. О нормальных алгорифмах, связанных с вычислением булевых функций.— Изв. АН СССР, сер. матем., 1967, 31, № 1, с. 161—208. 18. О языке Яо-—ДАН СССР, 1974, 214, № 1, с. 40—43. 19. О языке Ях.—ДАН СССР, 1974, 214, №2, с. 279—282. 20. О языке Яа.—ДАН СССР, 1974, 214, №3, с. 513—516. 21. О языке Яз-— ДАН СССР, 1974, 214, № 4, с. 765—768. 22. О языках Я4, Я5, . . . .— ДАН СССР, 1974, 214, №5, с. 1031— 1034. 23. О языке Яш —ДАН СССР, 1974, 214, №6, с. 1262—1264. 24. О языке ЯИ1-— ДАН СССР, 1974, 215, № 1, с. 57—60. 25. О полноте классического исчисления предикатов в конструктив- конструктивной математической логике.—ДАН СССР, 1974, 215, №2, с. 266—269. 26. Essai de construction d'une logique de la mathematique constructi- constructive.— Revue intern, de Philosophie, 1971, № 98, Fasc. 4. 27. Попытка построения логики конструктивной математики.— Иссле- Исследования по теории алгорифмов и математической логике, М.: Изд. ВЦ АН СССР, 1976, с. 3—31. (Русский оригинал работы [26].) Марков А. и Нагорный Н. 1. Об одном языке для описания работы вычислительных машин.— Проблемы кибернетики, вып. 19, М.: Наука, 1967, с. 5—38. М а р т и н - Л ё ф П. 1. Очерки по конструктивной математике / Пер. с англ., М.: Мир, 1975. Матиясевич Ю. В. 1. Простые примеры неразрешимых ассоциативных исчислений.— ДАН СССР, 1967, 173, № 6, с. 1264—1266. 2. Диофантовость перечислимых множеств.— ДАН СССР, 1970, 191, №2, с. 279—282. Мендельсон Э. 1. Введение в математическую логику, /Пер. с англ., 3-е изд.— М.: Наука, 1984. Нагорный Н. М. 1. К усилению теоремы приведения теории алгорифмов.— ДАН СССР, 1953, 90, №3, с. 341—342. 2. О минимальном алфавите алгорифмов над данным алфавитом.— Тр. матем. ин-та АН СССР им. В. А, Стеклова, 52, М.— Л,: Изд. АН СССР, 1958, с. 66—74. 3. Некоторые обобщения понятия нормального алгорифма.— Тр. ма- матем. ин-та АН СССР им. В. А. Стеклова, 52, М.—Л.: Изд. АН СССР. 1958, с. 7—65. ЛИТЕРАТУРА 425 4. О разыскании изоморфизмов ассоциативных исчислений,— Z math Logik und Grundl. Math., 1960, Bd. 6, S. 319—324. 5. Об отделимости по инвариантам.— Исследования по теории алго- алгорифмов и математической логике. М.: Изд. ВЦ АН СССР, 1973, с. 205—210. Нагорный Н. М. иШанин Н. А. 1. Андрей Андреевич Марков. К шестидесятилетию со дня рожде- рождения.— Успехи матем. наук, 1964, 19, №3, с. 207—223. Новиков П. С. 1. Об алгоритмической неразрешимости проблемы тождества.— ДАН СССР, 1952, 85, №4, с. 709—712. 2. Об алгоритмической неразрешимости проблемы тождества слов в теории групп.— Тр. матем. ин-та АН СССР им. В. А. Стеклова, 44, М.—Л.: Изд. АН СССР, 1955. Орловский Э. С. 1. Некоторые вопросы теории алгорифмов.— Тр. матем. ин-та АН СССР им. В. А. Стеклова, 52, М.—Л.: Изд. АН СССР, 1958, с. 140—171. Остроухое Д. А. 1. Об оценке сложности нормальных алгорифмов.— ДАН СССР, 1969, 184, №6, с. 1292—1294. 2. Линеаризация конструктивных последовательностей нормальных алгорифмов.— Исследования по теории алгорифмов и математиче- математической логике, т. 1, М.: Изд. ВЦ АН СССР, 1973, с. 97—133. Петер Р. 1. Рекурсивные функции / Пер. с нем., М.: ИЛ, 1954. Петри Н. В. 1. Об алгорифмах, связанных с предикатами и булевыми функциями.— ДАН СССР, 1969, 185, № 1, с. 37—39. Пост Э. Л. (Post E. L.) 1. Finite combinatory processes—formulation I.— J. Symbolic Logic, 1936, 1, №3, p. 103—105. Имеется русский перевод в книге В. А. Успенского [3]. 2. Recursive unsol\ability of a problem of Thue.— J. Symbolic Logic, 1947, 12, p. 1 — 11. P а б и и M. O. (Rabin M. O.) 1. Recursive unsolvability of group theoretic problems.— Ann. of Math., 1958, 67, №1, p. 172—194. Райе Г. (Rice H. G.) 1. Classes of recursively enumerable sets of positive integers and their decision problems.— Trans. Amer. Math. Soc. 1953, 74, № 2, p. 358— 366. Роджерс X. 1. Теория рекурсивных функций и эффективная вычислимость / Пер. с англ., М.: Мир, 1972. С ы р к и н Г. И. 1. Критерий справедливости теоремы перевода в теории нормальных алгорифмов.— ДАН СССР, 1967, 173, № 2, с. 270—272. Т у э A. (Thue A.) 1. Probleme fiber Veranderungen von Zeichenreihen nach gegebenen Regeln.— Videnskapsselskapets Skrifter. I. Mat. Naturv. Kl., 1914, № 10. T ь ю р и н г А. М. (Turing A. M.) 1. On computable numbers, with an application to the Entscheidungs- problem.—Proc, London Math. Soc, ser. 2, 1936, 42, №3—4 p. 230—265.
426 ЛИТЕРАТУРА 2. On computable numbers, with an application to the Entscheidungs- problem. A correction.— Proc. London Math. Soc., ser. 2, 1937, 43, № 7, p. 544—546. Успенский В. А. 1. Теорема Гёделя и теория алгоритмов.— ДАН СССР, 1953, 91, №4, с. 737—740. 2. Лекции о вычислимых функциях.— М.: Физматгиз, 1960. 3. Машина Поста.— М.: Наука, 1979. Успенский В. А. иСеменов А. Л. 1. What are the pains of the theory of algorithms: basic developments connected with the concept of algorithm and with its application in mathematics.— In: Ershov A. P., Knuth D. E., eds. Algorithms in modern mathematics and computer science, Springer, 1981 (LN in computer science, v. 122), p. 100—234. 2. Теория алгоритмов: ее основные открытия и приложения.— В кн.: Алгоритмы в современной математике и се приложениях, часть 1. Новосибирск, 1982, с. 99—342. Цейти н Г. С. 1. Ассоциативное исчисление с неразрешимой проблемой эквивалент- эквивалентности.—ДАН СССР, 1956, 107, №3, с. 370-371. 2. Ассоциативное исчисление с неразрешимой проблемой эквивалент- эквивалентности.— Тр. матем. ин-та АН СССР им. В. А. Стеклова, 52, М.— Л.: Изд. АН СССР, 1958, с. 172—189. 3. Теоремы о среднем значении в конструктивном анализе.— Тр. ма- матем. ин-та АН СССР им. В. А. Стеклова, 67, М.— Л.: Изд. АН СССР, 1962, с. 362—384. 4. Алгоритмические операторы в конструктивных метрических про- пространствах.— Тр. матем. ин-та АН СССР им. В. А. Стеклова, 67, М.—Л.: Изд. АН СССР, 1962, с. 295—361. 5. Нижняя оценка числа шагов для обращающего нормального алго- алгорифма и других аналогичных алгорифмов.— Зап. научн. семина- семинаров Ленингр. отд. матем. ии-та АН СССР, 1971, 20, с. 243—262. Ч ё р ч A. (Church A.) 1. An unsolvable problem of elementary number theory.— Amer. J. Math., 1936, 58, № 2, p. 345—363. 2. A note on the Entscheidungsproblem.— J. Symbolic Logic, 1936, 1, p. 40—41; Correction, Ibid., p. 101—102. Шанин Н. A. 1. О конструктивном понимании математических суждений.— Тр. ма- матем. ин-та им. В. А. Стеклсва, 52, М.—Л.: Изд. АН СССР, 1958, с. 226—311. 2. Конструктивные вещественные числа и конструктивные функцио- функциональные пространства.— Тр. матем. ин-та АН СССР им. В. А. Стек- Стеклова, 67, М.—Л.: Изд. АН СССР, 1962, с. 15—294. Ш ё н х а rfe A. (Schonhage A.) 1. Universelle Turing Speicherung.— In: Automatentheorie und formale Sprachen. Dcrr J., Hotz G., eds. Mannheim, 1970, S. 369—383. 2. Storage modification machines.— SIAM Journal on computing, 1960, 9, № 3, p. 49C—E08. Шпеккер Э. (Specker E.) 1. Nicht konstruktiv beweisbare Satze der Analysis.— J. Symbolic Logic, 1949, 14, №3, S. HE—158. ИМЕННОЙ УКАЗАТЕЛЬ Адян С. И. (р. 1931) 20, 370, 397, 422 Александров П. С. A896—1982) 7 Барздинь Я.М. (р.1937) 318, 323, 422 Бернайс П. (Bernays P., 1888— 1977) 12, 21, 54, 63, 422 Борисов В. В. (р. 1946) 370, 422 Брауэр (Brouwer L. E. J., 188I— 1966) 6, 14, 18, 38, 314, 422 Бриттои (Britton J. L.) 370, 422 Бун (Boone W. W., 1920—1983) 370, 422 Бурсиан В. Р. A887—1945) 7 Вейль Г. (Weyl H., 1885—1955) 6 Гейтинг (Heyting A., 1898—1980) 38, 314, 422 Гёдель (Godel К-, 1906—1978) 10, 143, 422 Гильберт (Hilbert D., 1862—1943) 9, 11, 12, 18, 21, 54, 63, 312, 344, 422 Девис (Davis M., р. 1928) 11 Детловс В. К- (р. 1923) 12, 20, 144, 422 Драгалии А. Г. (р. 1941) 20 Дэн (Dehn M., 1878—1952) 370, 422 Жаров В. Г. (р. 1950) 17, 163, 282, 296, 422 Заславский И. Д. (р. 1932) 20 Илюшкин В. А. (р. 1945) 318 Кантор (Cantor G., 1845—1918) 19 Клини (Kleene S. С, р. 1909) 10— 12, 143, 312, 329, 335, 423 Колмогоров А. Н. (р. 1903) 144, 163, 423 Коши (Cauchy A. L., 1789—1857) 9, 414, 419 Кушнер Б. А. (р. 1941) 20, 399, 413, 423 Линник Ю. В. A915—1972) 7, 423 Мальцев А. И. A909—1967) 12, 423 Манин Ю. И. (р. 1937) 12, 423 Марков А. А. A856—1922) 8 Марков А. А. A903—1979) 6—9, 11—17, 34, 65, 163, 254, 281, 312, 317, 318, 343, 344, 350, 368, 369, 383, 385, 394, 396, 401, 415, 418, 422—424 Мартии-Лёф (Martin-Lof P., р. 1942) 416, 424 Матиясевич Ю. В. (р. 1947) 11, 312, 344, 370, 424 Мендельсон (Mendelson E., р. 1931) 12, 424 Нагорный Н. М. (р. 1928) 11, 140, 164, 254, 275, 389, 396, 424, 425 Новиков П. С. A901 — 1975) 312, 329, 344, 370, 425 Орловский Э. С. (р. 1929) 282, 425 Остроухов Д. А. (р. 1940) 163, 282, 425 Петер (Peter R., 1905—1977) 12, 425 Петри Н. В. (р. 1942) 323, 425
428 ИМЕННОЙ УКАЗАТЕЛЬ Пост (Post E. L., 1897—1954) 10, Хаусдорф (Hausdorff F., 1868— 11, 143, 312, 343, 425 1942) 19 Хомич В. И. (р. 194!) 20 Рабин (Rabin M. О., р. 1931) 397, 425 Райе (Rice H. G.) 338, 339, 425 Рассел (Russel В., 1872—1970) 304, 319 Роджерс (Rogers H., р. 1926) 12, 425 Семенов Л. Л. (р. 1950) 12, 42G Сыркин Г. И. (р. 1943) 279, 425 Туэ (Time Л., 1863—1922) 11, 12, 343, 425 Тьюринг (Turing A. M., 1912— 1954) 10, 11, 143, 144, 312, 398, 425 Цейтин Г. С. (р. 1936) 163, 334, 369, 412, 415, 417, 426 Цермело (Zermelo E., 1871—1953) 304 Чёрч (Church А., р. 1903) 10, 143, 144, 312, 42fi Шанин Н. А. (р. 1919) 7, 11, 19, 20, 399, 401, 413, 423, 425, 426 Шёнхаге (Schonhage А., р. 1944) 144, 426 Шпеккер (Specker E., р. 1920), 402, 426 Успенский В. А. (р. 1930) 12, 144, Эрбран (Herbrand J., 1907—1931 329, 338, 339, 423, 426 Ю ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Абстракция отождествления 35 — потенциальной осуществимости 34 Алгорифм 135 — вербальный 136 в алфавите 136 над алфавитом 137 — двойного проектирования 174, 180 — , его применимость к исходному данному 136 — нормальный 139 — побуквенного кодирования 171 — , результат его работы 136 Алфавит 25, 31 Аннулирующий алгорифм 150 Арифметическая индукция, огра- ограниченная 83 Арифметические действия над конструктивными действитель- действительными числами 412 Ассоциативная система 348 Ассоциативное исчисление 344 абелево 393 — — групповое 392 , его определяющая система 344 , — соотношение 344 единичное 392 конечное 392 полугрупповое 393 разрешимое 393 , смежность слов в нем 345 — — , эквивалентность слов в нем 345 Атом 108 Вхождение 94, 97 — , его левое крыло 97 — , ¦- основа 97 — , — правое крыло 97 — концевое 98 — начальное 98 — первое 101 Вывод в исчислении 28 — с анализом 29 Высказывание 32 — общности 39 — о существовании 37 — полуразрешимое 52 — разрешимое 49 Высота слова 174, 372 Вычислимая вербальная функция 330 Вычислимый инвариант бинарного отношения 385 — оператор над вычислимыми вер- вербальными функциями 336 Гомоморфизм 389 Графическое равенство 29 — различие 29 Двойник 199 Дизъюнкция 37 — , ее конструктивное понима- понимание 37 Длина слова 86 Дополнение слова концевое 84 начальное 84 Бииариое отношение 385 Буква 24 Вербоид 258 Взаимная простота слов 79 Законы сокращения слов 73 Замыкание нормального алгориф- алгорифма 197 Изоморфизм 390
430 ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Импликация 43, 54 — дедуктивная 63 — материальная 56 — усиленная 59 Инвариантные свойства ассоциа- ассоциативных исчислений 394 , проблемы распоз- распознавания их 394 — — вычислимых вербальных функций 339 нетривиальные 339 Индуктивное определение 28 Индукция по началам слова 82 переводной системе 131 — — шагам работы алгорифма 132 Интуиционизм 38 Интуиция общности 40 Исчисление 28 — , его аксиомы 28 — , — правила вывода 28 Итерационная цепь алгорифма 231 Композиция алгорифмов 198, 217, 335 Конец слова 74 собственный 77 Конструктивная действительная функция 400 — , ее непрерывность 415 , — неразрывность 415 — , — регулятор непрерыв- непрерывности 415 — математическая логика 38 — последовательность натураль- натуральных чисел 399 рациональных чисел 399 — ¦ — , ее регулятор схо- сходимости 399 фундаментальная 399 Конструктивное действительное число 399 , его абсолютная вели- величина 413 — — — иррациональное 401 псевдорациональное 401 рациональное 401 Конструктивный объект 23 , его построение 29 , — существование 36 — процесс 23 Кусочное задание конструктивной действительной функции 414 Литероид 254 Лп-слово 67 Мажорирование 81, 409 Массовая алгорифмическая проб- проблема 299 Метод деления отрезка пополам 405, 420 Наибольшее общее начало слов 81 Наследственные свойства ассоциа- ассоциативных исчислений 391 , проблемы распозна- распознавания их 395 Натуральное число 23, 81 Начало слова 74 собственное 77 Неотличимость по инвариантам 385 Непустое слово 28 Нормальная массовая проблема 302 разрешимая 302 Нормальный алгорифм 139 его алфавит 139 — запись 297 — изображение 281 — пополнение 323 — сложность 319 — схема 139 замкнутый 196 несамоприменимый 303 полный 323 — — самоприменимый 302 Обращающий алгорифм 166 Обращение слова 69 Объединение алгорифмов 219, 224 335 — алфавитов 73 Оперативная буква 352 Отделимость перечислимых мно- множеств разрешимыми 328 Отрицание 38, 47 — прямое 49 предиката 50 — редукционное 64 — усиленное 53 Оценка сложности нормального ал- алгорифма верхняя 323 нижняя 323 Пара слов 93 Парадокс деревенского брадобрея 319 — Рассела 304, 319 ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ 431 Перевод буквы 261 — вхождения 264 — нормального алгорифма 271, 275 — слова 261 — формулы подстановки 270 Переводная система схемы 120 — естественная 130 Переменная 44 — вербальная 44 — литеральная 45 — натуральная 44 — предикатная 46 — пропозициональная 44 — свободная 44 — связанная 46 Перечислимое множество 312 Повторение алгорифма 230, 245, 247 Подстановка слова вместо вхож- вхождения 105 Полная индукция 41 Полугруппа 348 Правило силлогизма 56, 60 — modus ponens 43, 56, 59 Предикат 45 — арифметический 101 — вербальный 45 Предшествование вхождений 99 Пример Шпеккера 402 Принцип конструктивного под- подбора 417 — нормализации 141—142, 145— 146 Присоединение буквы левое 67 правое 31 Присоединяющий алгорифм 146 левый 148 правый 148 Проблема гомеоморфии полиэд- полиэдров 17, 312, 344 — изоморфии 396 — распознавания аннулирования 315 несамоприменимости 305 применимости 308, 317 ограниченная 321 самоприменимости 305 — тождества для групп 312 полугрупп 312, 343, 350 — Туэ 343 — эквивалентности для ассоциа- ассоциативных исчислений 349 Проекция слова на алфавит 88, 173 Пустое слово 25 Пустой алгорифм 148 Равносоставленность алфавитов 31 Развертка разрешимого предиката 90 Разветвление алгорифмов 224, 230 Разветвляющий алгорифм 153 Разность алфавитов 73 Разрешимое множество 312 Распространение нормального ал- алгорифма 187 естественное 193 — — — формальное 196 Растягивающий алгорифм 164 Расширение алфавита 73 Рациональное число 26 , его действительный образ 401 Рекурсивное определение 69 Семантические соглашения 32 Семиотика 31 Система слов 106 ее внутренний член 116 — объем ПО — первый член 110 — последний член ПО — член 110 — элемент 108 многочленная 231 пустая ПО Слово в алфавите 25, 27, 66 Сложность нормального алгориф- алгорифма 163 Совершенное число 45 Соединение слов 30 Сокращающий алгорифм 144 Схема в алфавите 118 , ее действие на слово 118 Тезис Чёрча 144 Теорема композиции 198, 217 — Коши о нуле знакопеременной непрерывной функции 414, 419 — о двух концах 77 началах 77 — — наименьшем числе 89 неподвижной точке 335, 337 непополнимом нормальном алгорифме 324 — об универсальном алгорифме 281
432 ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Теорема об универсальном алго- алгорифме видоизмененная 298 — объединения 220, 224 — повторения 231, 245, 247 — приведения 274 усиленная 274—275 Теорема разветвления 225 — Успенского — Раиса 339 Тождественный алгорифм 148 Удваивающий алгорифм 157 Условное равенство 187 Формула подстановки 117 , активная на данном слове 117 , ее действие 117 —• — , — левая часть 117 — — , — правая часть 117 заключительная 117 • простая 117 Характеристический оператор раз- разрешимого преднката 90 Целое число 26 Число шагов работы алгорифма 130—131 Эквивалентность алгорифмов 137— 138 Ядро элемента системы слов 116 Язык, его высказывания, синтак- синтаксис и семантика 32—33 /(¦система 348 Г-изоморфизм 397 Reductio ad absurdum 64 ЭГ-ряд 346 — , его высота и протяжение 372 10-я проблема Гильберта 312, 344