Вы находитесь на странице: 1из 609

Х.

Барендрегт
- - *’

Ламбда-
исчисление
STUDIES IN LOGIC
and
THE FOUNDATIONS OF MATHEMATICS

volume 103

The Lambda Calculus


Its Syntax and Semantics

H. P. BARENDREGT
Rijksuniversiteit Utrecht
The Netherlands

North-Holland Publishing Company


Amsterdam New York Oxford
1981
Х.Барендрегт

Ламбда-
исчисление
Его синтаксис
и семантика
Перевод с английского
Г. Е. Минца
под редакцией
А. С. Кузичева

МОСКВА «МИР»
1985
ББК 22.12
Б 24
УДК 510.2, 510.6

Барендрегт X.

Б 24 Ламбда-исчисление. Его синтаксис и семантика; Пер.


с англ. — М.: Мир, 1985. — 606 с.
Монография посвящена классическим и новым результатам в активно раз­
вивающемся направлении математической логики,— так называемом ламбда-ис­
числении. Оно находит применение в теории доказательств, семантике языков
программирования, алгебре, топологии, теории категорий. Изложение отлича­
ется полнотой и доступностью. Автор книги — известный голландский ма­
тематик.
Для математиков разных специальностей, преподавателей, аспирантов и
студентов университетов,

1702020000—434 ББК 22.12


Б 10—84, ч. 1
041(01)—85 517

Редакция литературы по математическим наукам

© North-Holland Publishing
Company, 1981
© Перевод на русский язык,
«Мир», 1985
Предисловие к русскому изданию

Книга профессора Утрехтского университета X. Барендрег-


та — первое на русском языке подробное и доступное изложение
ламбда-исчисления. Возникнув в основаниях математики, эта си­
стема была построена как теория вычислений с естественной
бестиповой операционной семантикой. Она стала объектом осо­
бенно пристального внимания в информатике после того, как
выяснилось, что ламбда-исчисление представляет собой удобную
модель, выявляющую многие важные аспекты построения и ра­
боты программ, написанных на алгоритмических языках. В пре­
дисловии А. П. Ершова к переводу книги П. Хендерсона «Функ­
циональное программирование» (М.: Мир, 1983) прямо гово­
рится, что «ламбда-исчисление... сейчас можно считать не чем
иным, как теоретической моделью современного функциональ­
ного программирования».
Выяснилось, что многие важные понятия программирования
(в первую очередь те из них, которые связаны с представлением
и передачей параметров) допускают точное описание на язы­
ке ламбда-исчисления, причем зачастую это — единственное
имеющееся точное описание. Более того, изучение и понимание
многих сложных ситуаций сильно облегчается, если уже имеется
опыт работы в ламбда-исчислении, где выделены в чистом виде
основные идеи и трудности. Дополнительные детали, характери­
зующие изучаемую конкретную ситуацию, можно добавлять по­
степенно, и получающаяся составная картина оказывается го­
раздо более прозрачной, чем глобальное описание.
Нашла приложения и важная модификация ламбда-исчисле­
ния, называемая чистой комбинаторной логикой, в которой пере­
менные не используются и применяются комбинации всего двух
символов К, S, подчиненных всего двум определяющим равен­
ствам: (КА)В = А, ((SA)B)C = (АС) (ВС).
Такая система возникла в начале 20-х годов и восходит к
советскому математику М. И. Шейнфинкелю ’), дальнейшее раз­
витие она получила в трудах X. Карри, А. Чёрча и др.

*) См. также обзор С. А. Яновской «Основания математики и математиче­


ская логика» (сб. «Математика в СССР за тридцать лет», М.-Л.: 1948,
с. 11—45).
6 Предисловие к русскому изданию

Этот метод описания вдохновил, по-видимому, и создателей


понятия «алгебраический тип данных», и авторов трансформаци­
онного подхода к распознаванию (различных видов) равенства
путем сведения рассматриваемых объектов к такой нормальной
форме, которая уже не содержит левых частей «характеристи­
ческих» для данной системы равенств. Трансформации (или ре­
дукции) , от которых системы получили свое название, состоят в
замене левых частей определяющих равенств на правые.
Важность процесса редукции была понята сразу же после
введения ламбда-исчисления, так как в применении к ламбда-
выражениям этот процесс соответствует процессу вычисления
функции или выполнения программы. Однако после серии ос­
новополагающих работ 30-х годов, приведших к кристаллизации
понятия алгоритма (которое оказалось эквивалентным понятию
ламбда-определимой функции) и выявлению его фундаменталь­
ных свойств, 7-исчисление отошло в этой области на задний
план. Интерес к нему усилился в послевоенные годы, особенно
после выявления связи между Х-термами, формальными выво­
дами и различными понятиями реализуемости. Гораздо более
широкий круг специалистов и неспециалистов почувствовал нуж­
ду в изучении Х-исчисления, после того как Д. Скотт описал
в его терминах семантику языков программирования.
О наступившем оживлении научной активности в области
Х-исчисления и комбинаторной логики свидетельствуют, в част­
ности, проведение нескольких международных конференций
(Суонси (1974 г.), Рим (1975 г.), Суонси (1979 г.)), выход ряда
монографий и сборников, а также большое число статей, опубли­
кованных или циркулирующих в виде препринтов. Во многих из
этих работ изучаются свойства теоретико-множественных моде­
лей исчисления Х-конверсии, предложенных в упомянутой выше
работе Д. Скотта. Следует отметить, что близкие результаты,
относящиеся к моделям Z-конверсии, были получены Ю. Л. Ер­
шовым. В последние годы разные варианты Х-исчисления по­
лучили применение в теории доказательств, обнаружились их свя­
зи с алгеброй, топологией, теорией категорий и лингвистикой.
У нас в стране исследования по ^-исчислению и близким
вопросам ведутся на кафедре математической логики Московс­
кого университета (начатые по инициативе С. А. Яновской и
А. А. Маркова), в Новосибирском и Ленинградском научных
центрах и в ряде других научных коллективов. Однако на рус­
ском языке полностью отсутствует монографическая литература,
вводящая в теорию Х-конверсии и комбинаторную логику.
Все это делает весьма своевременным появление монографии
X. Барендрегта. Эта монография, являясь, с одной стороны,
почти энциклопедически полным изложением новых результа­
тов, известных только по журнальным публикациям, является,
с другой стороны, введением в предмет, в котором находит свое
Предисловие к русскому изданию 7

место и классический материал, часто переосмысленный с новых


позиций. Это достигнуто за счет оригинального построения кни­
ги. Сначала конспективно излагаются с подробными мотивиров­
ками и примерами основные понятия и результаты, что позво­
ляет читателю сформировать общую картину, а во второй поло­
вине книги приводятся доказательства и определения «второго
слоя». Более того, даже в конспективной части не все разделы
взаимозависимы, так что читатель, заинтересованный в знаком­
стве лишь с некоторыми из них, имеет такую возможность.
Можно надеяться, что издание книги X. Барендрегта будет
способствовать как развитию исследований в области оснований
математики и математической логики, связанных с ламбда-ис­
числением, так и повышению уровня программистов (а может
быть, и программирования).
Автор значительно переработал некоторые разделы книги
для русского издания, внес изменения, уточнения, написал до­
бавления и предисловие. Редактор и переводчик пользуются
случаем выразить ему благодарность.
А. С. Кузичев,
Г. Е. Минц
Предисловие автора
к русскому изданию

Читатели этого издания получат значительно улучшенное


изложение вопросов, связанных с семантикой ламбда-исчисле­
ния. В английском издании понятия ламбда-алгебры и ламбда-
модели вводятся корректным, но несколько утомительным спо­
собом. Недавние исследования коллег позволили мне полностью
переписать гл. 5, подведя категорное основание под оба вида
моделей ламбда-исчисления.
Кроме того, в это издание внесены исправления и сделаны
добавления в конце книги.
Так как книга написана скорее в систематическом, чем в ди­
дактическом стиле, я намечу возможный порядок изложения
(или чтения) содержащегося в ней материала. Совсем неболь­
шой курс состоит из §§ 2.1, 3.1, 3.2, гл. 6, §§ 1.2, 5.1, 5.2, 5.3,
5.4. Этот материал дает представление о рекурсивной силе
языка и содержит как теоретико-модельное (посредством мо­
дели Da), так и синтаксическое (через теорему Чёрча — Россе­
ра) доказательства непротиворечивости.
К этому базисному курсу можно добавить сначала §§ 7.1,
7.2, 8.1, 8.2, 8.3, 10.1, 11.1, 11.2, 13.1, 13.2, 18.1, 18.2, где рас­
сматривается теория комбинаторов, разрешимость, бёмовские
деревья, специальные понятия редукции и модели Р® и Dx.
Затем можно добавить §§ 10.2, 10.3, 14.1, 14.3, 16.1, 16.2,
19.1, 19.2, которые подводят к анализу значений термов в моде­
лях.
Другие подборки по своему вкусу читатель может найти с
помощью последних разделов глав 2, 3, 4 и 5, содержащих
обзор оставшейся части книги. Автору больше всего нравятся
следующие: §§ 13.4, 15.3, 17.1, 20.4, а также 9.4, 10.4, 17.2 и
гл. 21, хотя последние несколько более техничны.
Я благодарю Г. Е. Минца, который перевел английский текст
на русский язык, А. С. Кузичева — научного редактора перевода
и Г. М. Цукерман — издательского редактора книги.
X. Барендрегт
Апрель 1983 а.
Музыка — это некая таинственная математика,
элементы которой подобны бесконечности
Клод Дебюсси

Эта книга посвящается


двум женщинам:
Долли Барендрегт-Кессинг
и
Марии Монтессори.
Первая дала мне жизнь
и показала пример
добросовестности.
Вторая учила меня, не поучая,
и привила мне стремление
к истине

Предисловие
Бестиповое ламбда-исчисление было введено около 1930 года,
в расчете на то, что оно станет основанием логики и математики.
Из-за появления парадоксов эта цель, однако, не была достиг­
нута. Тем не менее, непротиворечивая часть этой системы со­
ставила весьма удачную теорию вычислений. Она дала важный
толчок развитию теории рекурсии, а в последнее время — и ин­
форматике. Более того, несмотря на парадоксы, все еще сохра­
няется возможность использовать ламбда-исчисление в каче­
стве нового основания логики. Этой проблеме в последнее время
снова уделяется много внимания.
В результате ламбда-исчисление выросло в теорию, заслужи­
вающую самостоятельного изучения. Предметом, которому по­
священа эта книга, является чистое ламбда-исчисление. Книга
по-видимому, будет полезна и читателям, интересующимся при­
ложениями, ибо приложения ламбда-исчисления имеют обычно
скорее эвристический, чем непосредственный характер. В част­
ности, конструкции ламбда-исчисления воспитывают интуицию,
позволяющую ориентироваться в семантике языков программи­
рования. Эта книга написана для логиков, математиков, спе­
циалистов по информатике и философов.
Благодарности. Эта книга была написана по предложению
Анне Трулстра, одного из редакторов серии Studies in Logic.
Эйнар Фредрикссон из издательства «Норс-Холланд» проявлял
терпение даже после того, как минул срок сдачи рукописи.
В 1974/1975 году с Яном Бергстрой, Яном Виллемом Кло­
пом и Генри Волькеном мы вели очень продуктивный семинар.
10 Предисловие

Весьма полезными для меня были несколько бесед с Гордоном


Плоткиным и Даной Скоттом. Ян Виллем Клоп был всегда го­
тов обсуждать со мной ламбда-исчисление. Не все его идеи,
имеющие отношение к рассматриваемым вопросам, попали
в эту книгу; им посвящена монография Клопа [1980]. Прочли
части рукописи и высказали критические комментарии следую­
щие математики: Марьянджола Дедзани, Роджер Хиндли,
Карст Койманс, Жан-Жак Леви, Джузеппе Лонго, Герд Мичке,
Альберт Виссер и Крис Уодсворт.
Я особенно благодарен Джозефу Куинси, который прочел всю
рукопись и внес много предложений, улучшивших как англий­
ский язык книги, так и ее математический стиль, Адриану Ре­
зусу, подготовившему ■ указатели и библиографию, а также
Яну Виллему Клопу, который чертил суемы.
Основная часть книги написана в Утрехтском университете,
где благодаря Дирку ван Далену создана превосходная рабо­
чая обстановка. Дополнительную поддержку оказали Нидер­
ландская организация содействия прогрессу чистой науки
(Z. W. О.), Институт математических исследований Цюрихской
политехнической школы и, наконец, Математический институт
в Обервольфахе (ФРГ), где я завершил рукопись.
Прежде чем издать эту книгу, ее надо было напечатать
на машинке. Девяносто процентов этой работы проделала
До Брейгель-Вольграфф (которая печатала быстрее, чем я был
способен писать); оставшиеся десять процентов напечатали Анс,
Элвин, Джок, Марианна, Ренске, Синеке и Софи. Я благодарен
им от всего сердца.
Утрехт, Нидерланды
Февраль 1980 года
Хенк Барендрегт

Добавление при корректуре


Основную часть первой корректуры я читал в Конье (Ита­
лия) в горном пансионе Марьянджолы Дедзани-Чанкальини.
Вместе с Симонеттой Ронки делла Рокка они создали мне прек­
расные условия для работы.
Август 1980 г. X. Б.

Во время чтения второй корректуры Карст Койманс про­


должал успешно охотиться за ошибками и предложил несколько
улучшений.
Декабрь 1980 г. X. Б,
Указания читателю

Требуемая подготовка
Эта книга по существу не требует предварительной подго­
товки. Лишь временами нужны элементарные сведения из ло­
гики первого порядка, топологии, теории множеств, теории ре­
курсии и теории категорий. Если потребуется, читатель может
найти эти сведения в следующих книгах.
Логика первого порядка: Эндертон [1972], Барвайз [1977а].
Общая топология: Келли [1955].
Теория множеств: Халмош [1960], Ван Дален и др. [1978],
Келли [1955].
Теория рекурсии: Роджерс [1967].
Теория категорий: Арбиб и Мейнс [1975], Маклейн [1972].
Обозначения
В этой книге используются следующие обозначения.
N множество натуральных чисел.
Р (N) или Ра множество всех подмножеств N.
Дх. • • • (металамбда-абстракция)— теоретико-множествен ­
ная функция f, такая, что для всех х
(например, (Дх.х2+1) (3) = 10).
цх ■ • • наименьшее х е N, такое, что ...
Seq множество кодов конечных последовательностей
(при какой-либо стандартной их кодировке нату­
ральными числами). Иными словами,
Seq = {<«b ..., nk) е= N | k (= N, щ, ..nk (= N}.
Если а = <«1, .... Hk) е Seq, то 1Ь(а) = й. Условимся, что
< > е Seq и lh(< >) = 0. Если а = (nt, ..., пр>, р = <ть ...
..., пгч>, то а •» р = <П1, ..., пр, т\, ..., т?> и р тогда и
только тогда, когда р q и щ — пц для 1 i р. Мы пишем
а < Р, если а р, но р а неверно.
Логические связки — это П (не), у (или), А (и), => (вле­
чет), <=> (тогда и только тогда, когда; т. и. т. т., когда), V
(для всех), 3 (существует). Они используются обычно в нефор­
мальном метаязыке. Н'х означает, что существует единствен­
ный х.
Некоторые «теоретико-категорные» картинки часто исполь­
зуются для краткой записи утверждений. Если, например, R —
12 Указания читателю

бинарное отношение на множестве X, то схема

выражает следующее предложение:


Vx, X], %2 €= X [x/^Xj Л Х7^Х3 Зх3 ЕЕ X [Xj/^X3 Л Х2^Х3] ].
Остальные обозначения будут самоочевидными.
Изложение материала
Основные вопросы чистого ламбда-исчисления — это конвер­
сия, редукция, теории и модели. Они систематически рассмат­
риваются в основных частях этой книги. Кроме этого имеется
вводная часть, содержащая введение в каждую из остальных:
глава i (последний параграф которой дает общий обзор) яв­
ляется для 2 i 5 введением в часть i. Глава 1 содержит
общее введение и сведения из менее известной теории полных
частичных упорядочений.
Приводимая ниже таблица примерно показывает зависимости
отдельных глав друг от друга. Пунктирная стрелка означает, что
некоторые результаты более поздней главы сформулированы без
доказательства в более ранней.

(Я надеюсь, что читателю будет проще разобраться в книге,


чем в этой диаграмме.)
Каждая глава заканчивается параграфом, содержащим
упражнения. Наиболее трудные из них помечены звездочкой («).
Часть I
На пути к теории

Шейнфинкель (1922) Карри (1963)


(предоставлено
миссис Н. Курант)

Россер Клини Тьюринг (1951)


(фотография (фотография
Т. Хирано, 1935) Т. Хирано, 1935)
Глава 1
Введение

1.1. Аспекты ламбда-исчисления


Ламбда-исчисление — это бестиповая теория, рассматриваю­
щая функции как правила, а не как графики. Понятие «функции
как закона или правила» кажется старомодным и подразумевает
переход от аргумента к значению, процесс, закодированный не­
которым определением. Приписываемая обычно Дирихле мысль
о том, что функции можно рассматривать как графики, т. е.
множества, состоящие из пар аргумент — значение, была важ-.
ным вкладом в математику. Тем не менее ламбда-исчисление
снова рассматривает функции как правила, чтобы подчеркнуть
их вычислительные аспекты.
Функции как правила рассматриваются в полной общности.
Например, мы можем считать, что функции заданы определе­
ниями на обычном русском языке и применяются к аргументам,
также описанным по-русски. Конкретнее, рассмотрим функции,
заданные программами для машин и применяемые к другим та­
ким программам. В обоих случаях перед нами бестиповая струк­
тура, где объекты изучения являются одновременно и функ­
циями, и аргументами. Это — отправная точка бестипового
Х-исчисления. В частности, функция может применяться к самой
себе. При обычном понимании функции в математике (скажем,
в теории множеств Цермело — Френкеля) это невозможно (из-за
аксиомы фундирования). (См. также упр. 18.5.30.)
Имеются три аспекта Х-исчисления.
I. Основания математики.
II. Вычисления.
III. Чистое ламбда-исчисление.
Эти аспекты будут описаны ниже. Иная точка зрения на
основания ламбда-исчисления выражена в работах Скотта
[1975b], [1980] и [1980а].

I. Основания математики и ламбда-исчисление


Создатели ламбда-исчисления и близкой к нему теории ком­
бинаторной логики преследовали две цели.
1.1. Аспекты ламбда-исчисления 15

(1) Разработать общую теорию функций (охватывающую,


например, формульные преобразования).
(2) Расширить эту теорию, введя в нее логические понятия,
дающие основания логике и (частично) математике.
Первая из этих задач выделялась Шейнфинкелем и Карри,
создателями комбинаторной логики, и неявно содержалась в ра­
ботах Чёрча, который создал ^-исчисление.
К сожалению, все попытки дать основания математике окон­
чились неудачей. Первоначальная система Чёрча [1932/33] ока­
залась противоречивой, как показали Клини и Россер [1935].
Широко известная противоречивая теория Фреге [1893], [1903]
по существу содержит Л-исчисление, как отметил Акцель [1980].
Поэтому обнаружение ее противоречивости было в действитель­
ности еще одной неудачей.
Карри [1930] предложил непротиворечивую теорию, отве­
чающую первой из двух упомянутых выше целей (чистую ком­
бинаторную логику), но логическая часть его теории слиш­
ком слаба для того, чтобы служить адекватным основанием ло­
гики.
После открытия парадокса Клини — Россера Чёрч разочаро­
вался в своей программе в области оснований. Книга Чёрча
[1941] содержит непротиворечивую (в силу теоремы Чёрча —
Россера) подтеорию его первоначальной системы, имеющую
дело только с функциональной частью. Эта теория и есть
^.-исчисление.
С другой стороны, Карри не желал «бежать от парадоксов».
Он предложил расширить чистую комбинаторную логику так
называемыми иллативными понятиями, чтобы достичь второй
из упомянутых целей и дать вместе с тем анализ парадоксов;
см. Карри и др. [1958], [1972]. Хотя программа Карри не была
выполнена, удалось все же достигнуть некоторого прогресса: см.
Фитч [1974], Скотт [1975а], Селдин [1976/77] и Ак­
цель [1980].
Имеются и другие направления в основаниях математики,
родственные %-исчислению. Феферман [1975], [1980] развивает
систему, основанную на функции частичной аппликации (приме­
нения функции к аргументу), в качестве основания конструк­
тивной математики. Лежащие в ее основе множества частичных
функций родственны равномерно рефлексивным структурам Ваг­
нера [1969] и Стронга [1968] (см. также Барендрегт [1975]).
Остается открытым вопрос о соотношении между этими струк­
турами и моделями ^-исчисления, в которых аппликация всегда
определена. (См. добавление 1 в конце книги.)
Имеются связи между ^-исчислением, теорией доказательств
и теорией категорий. В этом контексте, однако, используется
типовое ^-исчисление; см. приложение А, в частности § А.З.
16 Гл. 1. Введение

11. Вычисления и ламбда-исчисление


Теория рекурсии
Часть Х-исчисления, оперирующая только с функциями, ока­
залась весьма полезной. Используя эту теорию, Чёрч предло­
жил формализацию понятия эффективной вычислимости с по­
мощью %-определимости. Клини [1936] показал, что Z-опреде-
лимость эквивалентна рекурсивности по Гёделю — Эрбрану, атем
временем Чёрч сформулировал свой тезис (утверждающий, что
рекурсивность является точной формализацией эффективной вы­
числимости). Тьюринг [1936], [1937] провел анализ механиче­
ской вычислимости и показал, что получившееся понятие (вы­
числимость по Тьюрингу) эквивалентно к-вычислимости.
После обнаружения парадоксов Клини перевел на новый
язык результаты о ^-определимости и получил несколько фун­
даментальных теорем теории рекурсии (см. Кроссли [1975],
с. 4—7). Теорема о перечислении частично рекурсивных функ­
ций, s-m-n-теорема и теорема о рекурсии своими корнями ухо­
дят в А,-исчисление.
Информатика
Развитие ЭВМ в последние десятилетия вызвало интенсивное
развитие языков программирования. Х-исчисление имеет ряд
общих черт с языками программирования и их реализацией.
Например, связанные переменные Х-исчисления соответствуют
формальным параметрам процедуры, а бестиповой аспект со­
ответствует тому, что в машине программа неотличима от своих
данных: и то и другое — последовательности битов.
Анализ, проведенный Тьюрингом, показывает, что, несмотря
на свой очень простой синтаксис, Х-исчисление способно изобра­
зить все механически вычислимые функции. Поэтому на К-исчис-
ление мойшо смотреть как на парадигматический язык програм­
мирования. Отсюда, конечно, не следует, что мы должны писать
на нем настоящие программы. Подразумевается лишь, что мно­
гие проблемы, возникающие в программировании, особенно в
связи с вызовами процедур, предстают в Х-исчислении в чистом
виде. Их изучение может принести пользу при проектировании
и анализе языков программирования.
Например, ряд языков программирования обладает (быть
может, без прямого намерения своих создателей) чертами, на­
веянными ^-исчислением. В Алголе 60, Алголе 68, Паскале про­
цедуры могут быть аргументами процедур. В Лиспе, кроме
того, процедура может быть результатом работы процедуры.
Язык GEDANKEN, описанный Рейнольдсом [1970], непосред­
ственно основан на ^-исчислении. О связях между ^-исчислением
и языками программирования говорится у Маккарти [1962],
1.1. Аспекты ламбда-исчисления ' 17

Ландина [1965], [1966], [1966а], Морриса [1968], Рейнольдса


[1970], Гордона [1973] и Бёрджа [1978].
Ввиду сходства Х-исчисления с некоторыми языками про­
граммирования идеи семантики первого могут применяться
к последним.
Ландин [1965] построил семантику Алгола, переводя этот
язык в ^-исчисление и описав операционную семантику для по­
следнего. Семантика такого рода затрагивается также в работах
Вегнера [19721, Оллонгрена [1975], Плоткина [1975], О’Дон­
нела [1977] и Бёрджа' [1978].
Тем временем возникла потребность в денотационной семан­
тике языков программирования (которая выражала бы функцио­
нальный смысл программы). Аналогичная проблема в чистом
виде возникла в Х-исчислении. Ввиду бестипового характера
этой теории было неясно, как строить модели для нее. Жела­
тельно было иметь множество X, в которое вкладывалось бы
его функциональное пространство Х->-Х; этого, однако, невоз­
можно достичь по мощностным соображениям. Эту трудность
преодолел в 1969 г. Скотт, который построил модели ^-исчисле-
ния, урезав Х->Х до множества непрерывных (в надлежащей
топологии) функций на X. Только после этого стало понятно,
как строить денотационную семантику языков программирова­
ния. Это произошло благодаря тому, что методом Скотта можно
также придать смысл двум важным конструкциям языков про­
граммирования— рекурсии (наименьшие неподвижные точки) и
типам данных (целые числа, списки, массивы и т. д.). См. Скотт
и Стрейчи [1971], Милн и Стрейчи [1976], Стой [1977] и Гор­
дон [1979].
Какого рода вычисления хорошо описываются А,-исчисле-
нием? Берри показал, что они, по существу, должны быть по­
следовательными— см. теорему 14.4.8. Невозможность работы
с параллельными вычислениями кажется на первый взгляд
серьезным ограничением. Это, однако, не совсем так, ибо боль­
шинство языков программирования также не допускает парал­
лельных процессов. С другой стороны, в подходе Скотта —
Стрейчи к семантике имеется естественная ниша для функций
вроде «параллельного или»
f(x, у) = если х или у определено и истинно,
то истина, иначе не определено.
Поэтому и в семантике Х-исчисления имеется ниша для этого
вида параллельности. См. также Плоткин [1977].

ill. Чистое ламбда-исчисление


В этой книге Х-исчисление изучается само по себе, а не
в связи с приложениями, описанными выше.
18 Гл. 1. Введение

Формальное (бестиповое) к-исчисление — теория, обозначае­


мая через К,— изучает функции и их аппликативное поведение
в отличие, например, от теории категорий, где функции изу­
чаются в связи с их композицией. Поэтому аппликация (при­
менение функции к аргументу)—исходная операция системы X.
Функция f в применении к аргументу а обозначается через fa.
Операция, дополнительная к аппликации, называется абстрак­
цией. Пусть t ( = — выражение, содержащее, быть может,
переменную х. Тогда kx.t(x) — это такая функция f, которая со­
поставляет аргументу а значение t(a). Иными словами, имеет
место
(₽) (kx.t(x))a = t(a).
Рассмотрение аппликации и абстракции только для одно­
местных функций основано на наблюдении Шейнфинкеля [1924].
Он заметил, что функции нескольких переменных можно свести
к одноместным функциям. Например, если f{x,y) — двухместная
функция, то полагаем fx — Ky.f (х, у) и а = Xx.fx. Тогда имеем
(ах)у = fxy — f(x, у).
Это — важный принцип Z-исчисления. Он соответствует ра­
венству
хухх = (ху)х

в категории множеств. Это равенство имеет место во всех де­


картово замкнутых категориях, и почти все модели Л-исчисления
являются в действительности объектами такой категории.
Термы теории X (k-термы) составляют множество Л и
строятся из переменных с помощью аппликации и абстракции.
Предложения теории К — это равенства между Х-термами, а ее
единственная математическая аксиома — это схема (р). [Однако
следует ^произвести некоторые тривиальные отождествления
вроде кх.х = Ъу.у.у
Как мы уже сказали, ^-исчисление изучает функции как пра­
вила. Из-за этого интенсионального характера теории централь­
ное место в ней занимают Х-термы — лингвистические средства
описания изучаемых функций. Теория к отождествляет некото­
рые из этих термов (так называемые конвертируемые термы).
Существенно, однако, что основной интерес представляет не тео­
рия К сама по себе. Она является лишь средством порождения
основных объектов — термов с точностью до конвертируемости.
Только после их введения начинается настоящее Х-исчисление —
изучение этих объектов с применением всевозможных матема­
тических средств.
Следующие вопросы показывают, как изучаются эти объекты.
(1) Какого рода функции (на термах) определимы (с по­
мощью термов) ?
1.1. Аспекты ламбда-исчисления 19

(2) Пусть М, N — неконвертируемые термы. Разумно ли


(заняв несколько менее интенсиональную позицию) отождествить
М и N?
(3) Каково соответствие между синтаксическим видом тер­
мов и их аппликативным поведением?
Приведем некоторые типичные ответы на такие вопросы.
Рассмотрим сначала (1).
(i) Если ограничиться натуральными числами, то опреде­
лимы в точности рекурсивные функции (теорема 6.3.13).
(и) Область значений определимой функции на термах либо
бесконечна, либо одноэлементна ( теорема 17.1.16).
(iii) Имеется естественная топология на термах — так назы­
ваемая топология дерева. Все определимые функции непре­
рывны в этой топологии.
Результат (iii) нетривиален и имеет несколько интересных
следствий. Сама топология получается путем сопоставления тер­
мам так называемых деревьев Бёма с последующим переносом
на термы топологии Скотта, заданной на этих деревьях.
Ко второму вопросу можно подойти либо через доказатель­
ство непротиворечивости естественных расширений теории X,
либо через построение моделей для 1 и рассмотрение множе­
ства равенств, истинных в ЭЯ. Теория Хц (экстенсиональное
Х-исчисление) получена первым методом. Теория Зо (отожде­
ствляющая термы с соответствующими деревьями Бёма) и Ж *
(единственное максимальное непротиворечивое расширение тео­
рии Ж} получены вторым методом (а именно, — Th(73<o);
5Г = Th (£>«,)).
По поводу (3) имеется, например, следующий результат,
в котором F обозначает Х-терм.
(iv) Терм F разрешим т. и.т. т., когда он имеет головную
нормальную форму (теорема 8.3.14). Здесь синтаксическое по­
нятие головной нормальной формы, т. е. терма F вида
Х%1 ••• Xn.x/Mi ••• Мт, соотносится с разрешимостью, которая
определяется в терминах аппликативного поведения:
VQ3n^Px-Pn(FPi - Pn = Q).
(v) Терм F Рц-обратим т. и т. т., когда он имеет конечную
наследственную перестановку (теорема 21.2.21). Здесь ртробра-
тимость означает, что существует Х-терм G, такой что в экстен­
сиональном Х-исчислении выводимо равенство
F о G = G ° F — Хх.х,
где о обозначает композицию функций. Конечные наследствен­
ные перестановки составляют некоторый синтаксически опреде­
ленный класс.
Продемонстрировав вопросы и некоторые результаты, мы на­
метим способ изучения. Имеется определенная связь между чи­
стым Х-исчислением и теорией чисел. Эта связь поверхностна,
20 Гл. 1. Введение

так как методы и результаты этих дисциплин различны, од­


нако, несмотря на это, полезно наметить ее, чтобы получить
некоторое представление о том, как организовано чистое Z-ис-
числение.
Если ГГ — непротиворечивое расширение теории X, то мы
будем обозначать через ШЬ/ модель из термов, состоящую из
открытых или замкнутых (т. е. не содержащих свободных пе­
ременных) Z-термов с точностью до (выводимого равенства
в теории) ГГ. Главным объектом изучения является (в тео­
рии чисел этой модели соответствует, скажем, кольцо Z целых
чисел). Рассматриваются различные расширения .ZsZn соот­
ветствующие модели 3)1,7 (в теории чисел — факторкольца
Ср
си
2CQCIRCC

^Ап ^^/2/(15) 2/(81) локальное кольцо


локальная
X ^^2/(9) локальное кольцо
локальная ЯЛасРо>

ПрОСТаЯ 2/(3) поле

Рис. 1.1.

Z/(m)). Если ЕГ <=.Г!Г', то имеется канонический гомоморфизм


теории Ж,/ на ЗЯ&> (в теории чисел — отображение Z/(zn)->
-+-Z/(m'), если т делится на т', т. е. (m)^(m') в терминах
идеалов). Некоторые ЗЯг7 (например, Т?» и ЗЯ&) просты, т. е.
имеют единственный гомоморфный образ (в теории чисел
просты Z/(p) для простых р; Z/(pft) принадлежит иному сорту,
это так называемое локальное кольцо). В теории чисел поле Q
(рациональных чисел) топологически расширяется как до R
(поля вещественных чисел), так и до Qp (р-адического поля).
В ^.-исчислении аналогично модели ЗЯ# и ЗЯ^> вкладываются
в Ра> и Dx соответственно, а последние модели строятся с ис­
пользованием топологических понятий. На рисунке 1.1 изобра­
жены некоторые сходные (и различные) черты.
Интересная черта теории чисел состоит в том, что результаты
о Z и Q иногда доказываются с использованием результатов
о р-адических числах Qp или С (комплексных числах). Анало­
гичным образом результаты о %-термах иногда доказываются
с помощью «непрерывных» моделей Рьу и Doo’, примером являет­
ся уже упоминавшаяся теорема 21.2.21. В этом контексте важ­
ную роль играют деревья Бёма. Эти деревья, которые могут
быть бесконечными, сравнимы с цепными дробями из веществен­
ных чисел. Каждое такое дерево — предел конечных деревьев.
На Х-термах можно определить естественную топологию, исполь­
зуя деревья Бёма. Операции Х-исчисления непрерывны в этой
1.2. Полные частично упорядоченные множества 21

топологии (теорема 14.3.22). Эта теорема о непрерывности


имеет несколько приложений. Таким образом, мы согласны
с замечанием Скотта о том, что введение моделей и соображе­
ний непрерывности превращает нашу теорию действительно
в ^-исчисление.
До сих пор мы эскизно очертили содержание частей II, IV и
V этой книги. Часть III, где говорится о редукции, имеет иную
природу. Эта группа результатов относится к самим ^-термам
(т. е. они рассматриваются не с точностью до конвертируе­
мости). Основная цель здесь — дать теоретико-доказательствен ­
ный анализ конвертируемости и некоторых ее обобщений с по­
мощью теоремы Чёрча — Россера — метода, аналогичного
устранению сечения в теории доказательств.
Наконец, мы перечисляем некоторые вопросы, принадлежа­
щие чистому ^-исчислению (или тесно с ним связанные), но не
рассматриваемые в этой книге.
(1) Уже упомянутое типовое Х-исчисление. Эта теория до­
вольно сильно отличается от бестиповой теории, см. приложе­
ние А. Другие теории типов описаны у Коппо и др. [1980], где
имеется библиография.
(2) Связи с теорией рекурсии для высших типов; см. Клини
[1961/62].
(3) Ординальные обозначения в Х-исчислении; см. Клини
и Чёрч [1937].
(4) Вложение Х-исчисления в логику первого порядка; см.
Барендрегт [1973] и Бел [1977].
(б) Оптимальные редукции; см. Леви [1980].

1.2. Полные частично упорядоченные множества


и топология Скотта
Этот раздел служит введением в изучение категории полных
частично упорядоченных множеств с непрерывными отображе­
ниями в качестве морфизмов. Этот материал понадобится в
§ 10.2, 14.3 и в части V для построения моделей Х-исчисления.
Читатель может пропустить этот раздел при первом чтении и
вернуться к нему при необходимости.
Первоначально Скотт определил свою топологию для полных
решеток, см. Скотт [1972], Гирц и др. [1980]. Это определение
непосредственно обобщается на полные частично упорядочен­
ные множества. Мы будем рассматривать здесь эту более об­
щую ситуацию, так как работа с полными частично упорядочен­
ными множествами имеет ряд преимуществ: имеется естествен­
ная интерпретация Х-термов в виде специальных деревьев, ко­
торые образуют полное частично упорядоченное множество, но
не полную решетку; полных частично упорядоченных множеств
больше.
22 Гл. 1. Введение

Другая система, в которой можно проводить построение


^.-моделей,— это категория /^-пространств, введенная Ю. Л. Ер­
шовым [1975], и различные ее подкатегории. У этих категорий
то преимущество, что они декартово замкнуты и каждый объект
является топологическим пространством, причем топология на
произведении является произведением топологий сомножителей,
а топология в пространстве функций — топологией поточечной
сходимости. Этими свойствами не обладает категория полных
частично упорядоченных множеств. Мы тем не менее будем изу­
чать эти последние структуры, так как их несколько проще опи­
сывать, чем fo-пространства.
1.2.1. Определение. Пусть D = (D, е=)— частично упорядо­
ченное множество (сокращенно, ч. у. м.) с рефлексивным отно­
шением е=.
(i) Подмножество X s D называется направленным, если
Х=£0 и
(Vx, у е X) (3z е X) [х = z и у = г].
(ii) D называется полным (п. ч. у. м), если
(1) имеется наименьший элемент ±ей, т. е. имеет место
V.veD(1£x); такой элемент _!_ называется дном',
(2) для любого направленного подмножества Х^О суще­
ствует точная верхняя грань (супремум) [J Д е D.
Полная решетка — это по определению такое ч.у. м. D, в ко­
тором любое подмножество X £= D имеет супремум. Каждая пол­
ная решетка есть п. ч. у. м., так как 1 = |] 0.
1.2.2. Примеры, (i) Пусть X — множество, а Р(Х)— его
множество-степень, т. е. множество всех подмножеств множе­
ства X. Тогда (Р(Х), —)— п.ч.у. м. (и даже полная решетка).
(ii) Пусть Т = ({_!_,/, Д, S), причем (и нет
никакик других соотношений для ?=). Тогда Т — п. ч. у. м.
1.2.3. Определение. Пусть (D, =) — п.ч.у. м. Топология Скот­
та на D определяется следующим образом.
Множество О s D считается открытым, если
(1) х <= О А хе у=> у е О',
(2) U X е О, где X~D v, X направленно =>X f| О 0.
Очевидно, что 0 и О открыты и что открытость сохраняется
при произвольных объединениях. Если множества О\ и О2 от­
крыты, то 01 f] 02 оказывается открытым из-за того, что X в по­
сылке условия (2) направленно. Поэтому определение 1.2.3 дей­
ствительно вводит топологию.
Если не оговорено противное, то п.ч. у. м. всегда будет на­
делено топологией Скотта. В дальнейшем в этом разделе сим­
волы D = (D, ^), D' — (О', =7), ... будут обозначать п. ч. у. м.
1.2. Полные частично упорядоченные множества 23’

1.2.4. Лемма. Пусть Ux~{z е D\z&x). Тогда Ux открыто.


Доказывается без труда. □
1.2.5. Следствие. D является Т0-пространством, но в общем
случае не Т\-пространством.
Доказательство. Пусть х, у е D и х=£у. Пусть для
определенности х^у. Тогда хе Uу, y<£Uy и Uy открыто.
Следовательно, D принадлежит классу То-
Если х^у, то любая окрестность элемента х содержит у.
Поэтому D не обязательно принадлежит классу Т\. □
Приводимая ниже характеризация непрерывных функций —
главная причина введения топологии Скотта.
1.2.6. Предложение. Рассмотрим отображение f: D-+D'. Оно
непрерывно тогда и только тогда, когда f(U^)— UfW для
всех направленных подмножеств X D, где f(X) = (f(x) |х е X}
и второй супремум берется в D'.
Доказательство. (=>) Пусть функция f непрерывна.
Допустим, что ХЕ», и покажем, что f(x)E='f(y). Если это не
так, то f(x)e так что х е f-1 (C/f(y)), а последнее множе-.
ство открыто. Поэтому у , т. е. /(z/)eOf(y), и полу-
чается противоречие. Это рассуждение показывает, что f мо­
нотонна. Значит, имеет место Vx е X (f (|JX) Э f (х)), откуда
f(LJ X) = |J/(X). Соотношение f (JJ X) gt |J f (X) влечет
f(X), откуда можно получить противоречие тем же спосо­
бом, что и выше, используя соотношение (2) из определения
открытого множества.
(4=) В этом случае снова получается, что функция f моно­
тонна. Действительно, х£=г/ влечет у = х[Ду, откуда /(//)==
= f(x) I I f (у), так что f(x)E= f(y). Поэтому если Os О' открыто,
то открыто и f_I(O)sO. Например, если для направленного
подмножества X S D имеет место [J X е (О), то Ии^) =
=Uf(X) еО;по f(X) направленно, следовательно, ДХ)ПО=И=0,
откуда получается X (") ф1 (О) 0. □
1.2.7. Следствие. Непрерывные отображения п. ч. у. м. всегда
монотонны. □
Прямое произведение двух п. ч. у. м. можно снова считать
п. ч. у. м.
1.2.8. Предложение. Для данных D, D' определим частичное
упорядочение их декартова произведения D X О' соотношением
<х, х'> Ф, у'> т. и т. т., когда х^у и х'г=/у'.
Тогда DXD' — п.ч.у.м. и для направленного подмножества.
X S D X D' имеет место
jjx = <LJX0,
24 Гл. 1. Введение

где
Хо = {х е= D | Зх' е= D' «х, х'> е X)}
и
Xi = {х/еО,|Эхе£)(<х, х'>еХ)}.
Доказательство. Это предложение устанавливается
легко. <_L, _L/> —дно произведения D X D'. Далее замечаем, что
если множество XsD X D' направленно, то направленны
также Хо, Хь □
Следующее утверждение несколько неожиданно.
Факт. Топология на DXD' не является в общем случае про­
изведением топологий, имевшихся на D и D'\ см. упр. 1.3.12. См.
также предложение 1.2.27.
1.2.9. Определение. Пусть даны D, D'. Положим по опреде­
лению
[D->■ £)'] = {f: D->D'\f непрерывна}.
Введем на множестве [/)->-О'] поточечное частичное упо­
рядочение
f g <=> Ух «= D (f (х) g (х)).
Очевидно, что D'] превращается в частично упорядо­
ченное множество.
1.2.10. Лемма. Пусть {ft} t s [D -> D'] — направленное семей­
ство отображений. Положим
f (х) = U fi (х).
i
Тогда f корректно определено и непрерывно.
Доказательство. Из направленности семейства
следует, что при каждом х множество {ft(x)}t- направленно и,
значит, f существует. Далее, для направленного X s D имеем
f(Ux) = L! U ГДх)= U LJf«(x) = Uf(X). □
i xeX xeX i
1.2.11. Предложение. — п.ч.у.м., где супремум на­
правленного множества F s [Т) -> D'] определяется соотноше­
нием i

Д о к а з а те л ь ств о. — наименьший элемент множе­


ства [£>->• £>']. По лемме 1.2.10 отображение Дх.|_| {f (х) | f е У7}
непрерывно. Очевидно, что оно является супремумом множе­
ства F. □
1.2.12. Лемма. Пусть f: D\D'->D". Тогда f непрерывно
(по совокупности аргументов) в том и только том случае, когда
1.2. Полные частично упорядоченные множества 25

оно непрерывно по каждому из аргументов в отдельности, т. е.


в том и только том случае, когда &x.f(x, х'0~) и /^x'.f(x0, х') не­
прерывны для всех х0, х'о.
Доказательство. (=>) Пусть g = Дх./(х, х^). Тогда для
направленного подмножества X s D
g (U X) = f (LI X, x') = f (U((x, x') | x g= X}) =
= |_|{/(x> (так как функция f
непрерывна и мно­
жество {(х х(') | х <= X}
направленное)=
= U^(X).
Следовательно, g непрерывна. Отображение Дх'.^хо, х') рас­
сматривается аналогично.
(4=) Пусть множество X s D X D' направленно. Тогда имеем
f(Ux)=;(Ux>, Ux)=
-= и f(». U X]) (по предположению) =
хе Хо
= LI U f(x, х') =
х е X х'е X
= LI f{X, х') (так как X направленно) = I I f (X),
<х, x'i е X
так что / непрерывна. □
1.2.13. Предложение (о непрерывности аппликации). Опре­
делим, аппликацию {операцию применения функции к аргументу)
Ар: [D-+D']XD->D'I
полагая Ap(f,x) = f(x). Тогда отображение Ар непрерывно
(в топологии Скотта на произведении [£) ->-£)'] X D).
Доказательство. ОтображениеAx.f(x) = f непрерывно.
Пусть h = Д f.f (х). Тогда для направленного множества
I:s[D-+D'] имеем
/i(U^) = (U^)W==
= U{f(x)lfs F} (в силу предложения 1.2.11) =
==LW)lf^}==LW).
Следовательно, h непрерывно. Теперь применяется лемма
1.2.12. □
1.2.14. Предложение (о непрерывности абстракции). Пусть
f s[D X D' -> £>"]. Положим f(x) = Ду ^D'f(x,y). Тогда
(i) f непрерывна, т. е. f е [Д — D"] ];
(И) Af.f: [И X Д'->-Д"]->-[Д->-[Д'->-Д"]] непрерывна.
26 Гл. 1. Введение

Доказательство, (i) Пусть X D направленно. Тогда


имеем
f(Uх) = Ay.f(Llx,y) = hy. LI f(x, у) =
х <= X
= LI (Ау./(х, у)) (в силу предложения 1.2.11) =
хеX

= ldf(X).
(ii) Пусть L=Kf-f, и пусть множество F = [£) X В' -+■ D"\
направленное. Тогда
L (LJ F) = Дх.Ау.(1_1 F) (х, у) = Дх.Ду. LI f (X, у) =
f еГ

= LI AxAy.f(x, у) = LI L (F). □

1.2.15. Определение1). Через СРО обозначим категорию,


объектами которой являются п.ч.у.м., а морфизмами — непре­
рывные отображения.
1.2.16. Теорема. СРО — декартово замкнутая категория.
Доказа'тельство. Легко показать, что D\D' — произ­
ведение в категории СРО. Далее, одноэлементное п.ч.у.м.—
терминальный объект. В силу предложений 1.2.13 и 1.2.14 для
каждого f: D^D'-^-D" существует единственное f: D->[£)'->•
-+D"], такое, что диаграмма
J

коммутативна. Это и есть нужное соотношение присоединен-


йости. ]
Следующая теорема (для полных решеток) принадлежит
Тарскому [1955], см. также Кнастер [1928].
1.2.17. Теорема (теорема о неподвижной точке для п. ч. у. м.)'.
(i) Любое отображение f е [72 -> £>] имеет неподвижную
точку.
(ii) Кроме того, существует отображение Fix е [[£)-> D] ->£)],
такое, что для любого )e[D-
D]
* объект Fix(f) является наи­
меньшей неподвижной точкой.
” СРО — первые буквы слов complete partial order. — Прим, перед.
1.2. Полные частично упорядоченные множества 27

Доказательство, (i) Из d_c=f(_L) по монотонности


следует, что f(_L) = f(f(_L)i) — f2(-L), откуда f2(l)^f3(l)
и т. д. Поэтому существует
xf = ur(i).
n
Теперь в силу непрерывности имеем
f(xf) = ur+,(l) = xf>
п
т. е. Xf — неподвижная точка отображения f.
(Н) Заметим прежде всего, что элемент Xf, построенный в (i),
является наименьшей неподвижной точкой отображения f. Дей­
ствительно, из f (у) = у следует по монотонности, что
Г(1)£Г(у) = г,
откуда
п
Теперь положим по определению
FiX = AMf = ML_ln±)-
п
Тогда в силу предложения 1.2.13 и леммы 1.2.10 операция
Fix непрерывна. □
.Теперь покажем, что в СРО существуют проективные пре­
делы.
1.2.18. Определение. Пусть Do, D\, ... — счетная последова­
тельность п. ч. у. м., и пусть fi (= [Z5/+1 -> Di] .
(i) Последовательность (£>/, /<•) называется проективной
(или обратной) системой п.ч.у.м.
(ii) Проективный {или обратный) предел системы (Di, fi)
(обозначаемый через lim (О,, ft)) — это ч.у. м. (DX: , где
<—
= {{xQ, xh ...)) V/ (хг- g= Di л ft (х/+1) = х^
и
<a'>^=c <//> t. и т. t., когда V i (xi^ уi) (в Di) .
Замечания, (i) Бесконечная последовательность <xo, Xi, .. .>
отождествляется, как обычно, с отображением х: N- *- U D,
i
таким, что x(i)= х< е Di для всех i.
(ii) Вместо lim (Dh /)) мы часто будем писать lim£\.
1.2.19. Предложение. Пусть (Di, fi) — проективная система.
Тогда lim (Dt, fi) — п. ч. у.м., в котором
L]Y = M|_]{x(0|x(=X}
для направленных X £= lim Dt.
28 Гл. 1. Введение

Доказательство. Если X направленно, то (x(i) |хе/}


направленно для каждого I. Положим
уг = [_|{х(/)|хе/}.
Тогда в силу непрерывности отображений /,• имеем
ft (f/z+i) = U ft Iх G+ !)lxe= X} = |J {х (i) | х е X} = yt.
Поэтому <г/0, у{, ...)elim£)<. Очевидно, что это супремум
множества X. □
1.2.20. Определение. Пусть D — п. ч. у. м., и пусть / = £>.
(i) Отображение f е [£) -> £>] называется ретракцией мно­
жества D на X, если X = Range (f) (т. е. X есть множество зна­
чений f) и f = fof.
(ii) Множество/ называется ретрактом множества D, если
имеется ретракция D на X.
1.2.21. Предложение. Пусть D — п.ч.у.м. с ретрактом X.
Тогда — X — п.ч.у.м., направленные подмножества которого
имеют в X те же супремумы, что и в D, и топология которого
является топологией подпространства.
Доказательство. Пусть f: D-+X — ретракция. Пусть
Уе/ направленно. Тогда У направленно и как подмножество
множества D и в D существует |J У = у. Теперь имеем
f (у) — f (LI У) = U f (У) (так как f непрерывна) =
= □ У (так как У s X) = у.
Поэтому у^Х и очевидным образом является супремумом
множества У в X. □
1.2.22. Определение, (i) хей называется компактным, если
для любого направленного подмножества XsD
х[=|_|Х=>х!=х0 для некоторого х0е X.
(ii) П.ч.у.м. D называется алгебраическим, если для лю­
бого xeD множество {у!=х[у компактен} направленное и вы­
полнено равенство
x = U{f/ — Х\У компактен}.
1.2.23. Пример. Пусть D — (Pa, е). Тогда хеД компактен
в том и только том случае, когда х конечен. Поэтому D — ал­
гебраическое п.ч.у.м.
1.2.24. Предложение. ПустьD — алгебраическое п.ч.у.м. и f:
П-^D. Тогда f непрерывна в том и только том случае, когда
f (х) = U {f (е) \е х, е компактен}.
1.2. Полные частично упорядоченные множества 29

Доказательство. (=>) Пусть f непрерывна. Тогда


f (х) = f (LI {е — х Iе компактен}) = |J {/ (е) | е £= х, е компактен}
в силу предложения 1.2.6.
(4=) Заметим сначала, что f монотонна. Если х^у, то
{е с= х|е компактен} = {е^у\е компактен},
откуда
f W — U if (е) 1е — х> е компактен} =
— U V (е) Iе — /Л е компактен} = f (у).
Пусть теперь X £ D направленно. Тогда
f (U -^) — U If (е) Iе — L1 е компактен} =
Е= LI {f (x) Iх — ^} (в силу компактности) =
—/(U^) (в силу монотонности).
Поэтому / ([J X) = [J f (%). Остается только применить пред­
ложение 1.2.6. □
1.2.25. Предложение. Пусть D — алгебраическое п.ч.у.м.
Положим Ое = {х е D\e £= х}. Тогда семейство {Ое|е компактен}
является базисом топологии на D.
Доказательство. В силу компактности элемента е мно­
жество Ое удовлетворяет второму условию открытости по
Скотту. Первое условие выполняется тривиальным образом.
Пусть теперь О открыто к хеО. Так как x = [J{eE=x|<?
компактен} является супремумом направленного множества, то
Зе ЕЕ х (е s О, е компактен),
откуда получается хе Ое£О. Поэтому каждое открытое мно­
жество О есть объединение базисных открытых множеств. □
1.2.26. Лемма. Пусть D, D' — п.ч.у.м.
(i) (х, i/) s D X О' компактен <=> х и у компактны.
(ii) D и D' алгебраические => DX^D' алгебраическое.
Нетрудное доказательство этого утверждения составляет
упражнение 1.3.9. □
Легко показать, что из открытости множества О s D X D'
в произведении топологий Скотта на D и D' следует его откры­
тость по Скотту в произведении Dy^D'. Обратное утверждение
не имеет места в общем случае, см. упр. 1.3.12. Однако для про­
изведений алгебраических п.ч.у.м. обе топологии на Dyc.D'
совпадают.
30 Гл. 1. Введение

1.2.27. Предложение. Пусть D, D' — алгебраические п.ч.у.м.


Тогда топология Скотта на D X D' совпадает с произведением
топологий Скотта на D и D'.
Доказательство. П.ч.у.м. DXD' является алгебраи­
ческим по лемме 1.2.26. Следовательно, в силу предложения
1.2.25 семейство
{О(е,/)|е, f компактны}
является базисом топологии Скотта на D\D'. Но O(e,f) =
— ОеХ Of. Следовательно, каждое открытое по Скотту подмно­
жество п. ч. у. м. D X D' есть объединение открытых в тополо­
гии произведения множеств и потому само открыто в топологии
произведения. □
Таким образом, поскольку мы работаем преимущественно
с алгебраическими п.ч.у.м., у нас не будет возникать недора­
зумений с выбором топологии на Dy^D'. Ср. упр. 1.3.16.
Некоторые естественным образом возникающие п.ч.у.м.
имеют дополнительные приятные свойства.
1.2.28. Определение. Пусть D — п.ч. у. м.
(i) Подмножество X s D называется совместным, если
V.r, yel 3zeO[.?Ezh
(ii) D когерентно, если любое совместное подмножество
X £ D имеет супремум.
1.2.29. Определение.(i) Пусть х, у е £>.Тогда говорят, что х
находится на пути вниз от у (и пишут х <С у), если у принадле­
жит топологической внутренности множества {z|x!=z}.
(ii) Непрерывная решетка — это по определению полная ре­
шетка, в которой x = LJ{z|2 <С х} для любого X.
(iii) Алгебраическая решетка — это полная решетка, которая
являетсд алгебраической как п.ч.у.м.
В упражнении 1.3.7 показано, что алгебраическая решетка
всегда непрерывна. Обширная информация о непрерывных ре­
шетках имеется в монографии Гирца и др. [1980].
Ниже приводятся важные примеры конкретных п.ч.у.м.
1.2.30. Примеры, (i) Пусть Р(Х)— множество-степень мно­
жества X, частично упорядоченное по включению.
(ii) Частичное отображение ср: Х->У— это отображение <р,
такое что Dorn (ср) ^Х. Запись ср (х) | для хеХ означает, что
ф(х) определено, т. е. хе Dorn (ср). Аналогично, ср(х) f означает,
что ф(х) не определено, т. е. x^Dom(cp). Положим
X Y — {ср | ср — частичное отображение из X в У}.
Частичные функции как множества упорядоченных пар час­
тично упорядочены по включению. Очевидно, что (Х^->У, £=) —
— п. ч. у. м.
1.3. Упражнения SI

1.2.31. Предложение, (i) Р(Х)— алгебраическая решетка,


причем ее элемент А компактен тогда и только тогда, когда
множество А конечно.
(ii) XY— когерентное алгебраическое п.ч.у.м., причем
его элемент ф компактен тогда и только тогда, когда ср конечно
(как множество упорядоченных пар).
Нетрудное доказательство составляет упр. 1.3.10. □

1.3. Упражнения
1.3.1. Показать, что подмножество {z|x —2}в п.ч.у.м. не обязательно
открыто.
1.3.2. Пусть X s D X D'- Показать, что в общем случае
Хо, Xi направленны X направленно,
где Ло> X] определены в предложении 1.2.8.
1.3.3. Пусть f : D -> О'.
(i) Показать, что в общем случае
f монотоннаf непрерывна.
(ii) Показать, что, опустив п. (2) в определении топологии Скотта на
п.ч.у.м., мы все еще будем иметь топологию, в которой-
f монотонна •<=>• f непрерывна.
1.3.4. Пусть е е О, е' = О' компактны. Положим по определению
fe, е {х)= если е != х, то е', иначе _1_. Показать, что />, е'е [О-> О'] ком­
пактно.
1.3.5. (i) Показать, что для хе О
х компактен ч=>{г|х Е= z} открыто.
(ii) Показать, что алгебраическая решетка всегда является непрерывной
решеткой.
1.3.6. Пусть f, g — ретракции множества D. Будем записывать соотноше­
ние f = f ° g = g ° f в виде f g. Показать, что sE — частичный порядок.
Следует ли f sE g из Range (Г) s Range (g)?
1.3.7. Показать, что
алгебраические решетки = непрерывные решетки s
S полные решетки s
S п. ч. у. м.,
причем включения собственные.
1.3.8. Показать, что в полной решетке D точная нижняя грань (инфимум)
П X существует для любого X = D.
1.3.9. Доказать лемму 1.2.26.
1.3.10. Доказать предложение 1.2.31.
Следующие два упражнения принадлежат Хайланду.
1.3.11. Если X — топологическое пространство, то (У (X) будет обозна­
чать совокупность открытых в X множеств, частично упорядоченных отноше­
нием S.
Для п.ч.у.м. D обозначим через TD топологическое пространство, состоя­
щее из О с топологией Скотта. Будем писать (У (D) вместо С? (ГО).
Обозначим через 0 полную решетку {_L, Т} из двух элементов с соотно­
шением 1 — Т.
32 Гл. 1. В ведение

(i) Показать, что О (А7) —полная решетка. Что такое П?


(ii) Показать, что 67 (Р) =[£>->■ 0], где обозначает изоморфизм.
(iii) Показать, что для компактного КеА множество
<UK = {О е 0 (X) | № 0}
открыто в топологии Скотта на <?(Х).
(iv) Пусть D — полная решетка и Р' = 6?(£>). Показать, что Е-отно-
шение
<r={<d, O)eDXD'>d^O}
открыто по Скотту в D X D'.
1.3.12
*. Доказать, что в общем случае (см. упр. 1.3.9)
TDXTD' Ф Г(РХР')-
[Указания. Рассмотрим N с дискретной топологией, и пусть В = Nn —
бэровское пространство с топологией произведения. Возьмем D = O(B),
D' — 0(D). Рассмотрим множество <¥, введенное в предыдущем упражнении.
Допустим, чтобы прийти к противоречию, что № открыто в ТО X ТО'.
Для любого f s В множество ‘Uf — 4/{f) открыто по Скотту в О в силу
предыдущего упражнения. Рассмотрим произвольные f е О е О. Тогда
<0, &, откуда в силу нашего допущения получаем
<0,!U;'>
для некоторого Ж’о, открытого в О', и %, открытого в D.]
(i) Показать, что
f О е 'ZZg, (1)
<Uf е "2Z е О' => <2/ <= Fo, (2)
<W е Fo £ “Д. (3)
(ii) Доказать, что
(V/i е N) (30' е ад (3g е В) If s О' Л g Ф О' Л f (и) = g (я)]
(где /(л) обозначает код последовательности </(0), ..., f(п—1)».
[Указание. Введем обозначение Оа — {g е В I Эл (g (л) = а)}, где а — код
последовательности. В силу (1) для достаточно больших л; верно f е О-^. s
Е О. Тогда, введя обозначения а = f(m) и заметив, что
< ОО

о = (О-оа)и и оамг>Еад
/=>о
можно использовать тот факт, что ^/о открыто по Скотту в D.]
(iii) Построить последовательность g„ еВ, такую, что lim gn = f и
n->oo
(Ул e N) (ЭОп e= ад [f s О,г Л g0........ §пф Ont
(iv) Получить из (i) и (ii), что
n
HO U<2Z
i-0 1 i=o 1

в противоречие с тем, что Уо открыто в D' по Скотту.]


1.3.13. (1) Пусть е, е'еО компактны. Показать, что если существует
е U е', то он тоже компактен.
(ii) Показать, что е U е' не обязательно существует даже в алгебраиче­
ском п. ч. у. м.
1.3. Упражнения 88

(iii) Показать, что в полной решетке D элемент е е D компактен тогда


и только тогда, когда для всех X = D
e!=LjX=>-esL|Xo для некоторого конечного Хо = X.
1.3.14. Обобщается ли теория непрерывных решеток на непрерывные
п. ч. у. м?
1.3.15. Пусть (X, cz )—когерентное алгебраическое п. ч. у. м. Показать,
что множество компактных элементов из X плотно в X.
1.3.16. (i). Показать, что если D, D' — компактные п. ч. у. м., то [D-> О']
компактно. \Указание. Использовать упражнение 1.3.4.] Получить отсюда, что
алгебраические п. ч. у. м. образуют декартово замкнутую категорию.
(ii) Если D, D' — когерентные алгебраические п. ч. у. м., то топология
Скотта на [/)->-О'] совпадает с топологией произведения (точнее, с ее сле­
дом на D'D).
(iii) Показать, что когерентные алгебраические п. ч. у. м. образуют де­
картово замкнутую категорию.
*
1.3.17 (Скотт [1972]). Пусть D — непрерывная решетка. Показать, что
D — инъективное топологическое пространство, т. е. для любого топологиче­
ского пространства У и любого его подпространства X любое непрерывное
отображение f: X -> D может быть продолжено до непрерывного отображения
* D.
f: У-
1.3.18. Определим f: R2 R соотношением

О в противном случае.
Показать, что f непрерывна по каждому из своих аргументов в отдель­
ности, но не по совокупности аргументов. ............

2 X. Барендрегт
Глава 2
Конверсия

2.1. Ламбда-термы и конверсия


Основной объект изучения в А-исчислении— это множества
ламбда-термов, рассматриваемых с точностью до конвертируе­
мости. Эти понятия будут введены в данном разделе.
2.1.1. Определение, (i) Ламбда-термы будут словами в сле­
дующем алфавите:
о0, »i> • • ■ переменные,
А абстрактор,
( , ) скобки.
(ii) Множество Л ламбда-термов (или, что то же, А-термов)
индуктивно !) определяется следующим образом:
(1) хеЛ;
(2) М е Л => (АхМ) е Л;
(3) М, №Л=^.(ММ)еЛ,
где х в (1) и (2) — произвольная переменная.
2.1.2. Соглашения о записи, (i) М, N, L, ... обозначают про­
извольные А-термы.
(ii) х, у, z, ... обозначают произвольные переменные.
(iii) Внешние скобки не пишутся.
(iv) Символ ;== обозначает графическое равенство (т. е. пол­
ное совпадение синтаксических объектов).
Вводимые ниже обозначения будут часто использоваться.
Они навеяны принадлежащей Шейнфинкелю редукцией функций
нескольких переменных к функциям одной переменной.
2.1.3. Обозначения, (i) Пусть х = Xj, ..., хп. Тогда
Axi хп.М = Ах.М з= Axi(Ах2(-" (АхДМ)) •••)).
(ii) Пусть N — N\, ..., Nn. Тогда
MNi ••• Nn = MN = (•■• ((ММ1)ЛГ2)Nn) (группировка влево).
') В любом индуктивном определении будет подразумеваться, что опре­
деляемый класс — наименьший удовлетворяющий рассматриваемым условиям.
2.1. Ламбда-термы и конверсия 35

(iii) Через ||М|| обозначается длина выражения М, т. е. ко­


личество символов в М.
Примеры. Следующие выражения являются Х-термами:
(i) хх,
(ii) hx.xx,
(iii) Xxy.yx( = Kx(Ky(yx))),
(iv) hxy.yx(kz.z) (t=k>c(Ky((ux) (Xz.z)))).
He всегда обязательно разворачивать термы вроде (iii), (iv)
так, чтобы они не содержали сокращений. Как только будет до­
казана лемма 2.1.23, аппликативное поведение таких термов ста­
нет непосредственно очевидным.
Основным отношением эквивалентности для Х-термов яв­
ляется конвертируемость. Это отношение порождается некото­
рыми аксиомами, для описания которых понадобится оператор
подстановки. М[х:=А] обозначает результат подстановки вы­
ражения N вместо переменной х в выражение М. Как и в случае
логики предикатов (или программирования), при определении
этой операции нужны некоторые предосторожности во избежа­
ние коллизий свободных и связанных переменных. Мы отложим
на время описание этих предосторожностей.
2.1.4. Определение. Формулами теории X будут равенства
М — N, где М, N А. Она аксиоматизируется следующими
аксиомами и правилами.
(I) (Xx.Af) N = М [х := А] (^-конверсия),
(II. 1) М — М,
(11.2) М — N => N = М,
(II. 3) M = N, N = L=> М = L,
(II. 4) М = N => MZ = NZ,
(II.5) M = N =>ZM = ZN,
(II. 6) M — A => Zx.M = Zx.N (правило I).
Доказуемость равенства M = N в X записывается в виде
X |— М — N, а часто и просто в виде М = N. Если X Н М = N,
то М и N называются (взаимо) конвертируемыми. Отметим, что
М == А => М = А, но не наоборот.
Названия «^-конверсия» и «правило §» сложились истори­
чески. Теория X появляется в литературе под различными име­
нами:
Х-исчисление,
Хр-исчисление,
ХК-исчисление,
ХАр-исчисление.
Символ К служит для того, чтобы отличить X от ограничен­
ной теории X/, которая вводится в § 2.2,
2
36 Гл. 2. Конверсия

Отметим, что X свободна от логики — это эквациональ'ная


теория. Логические связки и кванторы будут использоваться
в неформальном метаязыке при описании свойств теории X. На­
пример, суждения
УМ (Кх.х)М = М,
M = N=> ММ — NN Л MN = NM
означают соответственно
(VM е Л) XI- (Хх.х) М = М,
Х|-М = А=>ХН ММ = NN и X Н MN = NM.
Следующая весьма полезная теорема иллюстрирует богатые
дедуктивные возможности X.
2.1.5. Теорема о неподвижной точке. VFBX(FX = X).
Доказательство. Пусть W = Kx.F(xx) и X = WW.
Тогда имеем
Х = WW ^(Kx.F(xx)) W = F(WW) = FX. □
Некоторые синтаксические понятия и обозначения
2.1.6. Определение. Говорят, что переменная х входит сво­
бодно в Х-терм М, если х не находится в области действия сим­
вола Хх; в противном случае говорят, что х входит в М связанно.
Например, переменная х (дважды) входит в терм М =
= х(Ку.ху) свободно, а у входит туда связанно. Переменная мо­
жет входить в данный Х-терм и свободно, и связанно; примером
является у в терме у (Ку.у).
В этом отношении Хх имеет те же связывающие свойства, что
I
и Ух в логике предикатов или j • • • dx в интегральном исчис-
0
лении.
2.1.7. Определение, (i) Множество FV(M) свободных пере­
менных терма М можно индуктивно определить следующим об­
разом:
FV(x) —{х},
FV(Xx.M)= FV(M) —{х},
FV (MN) = FV (М) U FV (N).
(ii) М называется замкнутым термом или комбинатором,
если FV(М) = 0.
(iii) А0 = {М е А | М замкнут}.
(iv) А°(х) = A|FV(M)s{x}}.
(v) Замыкание терма М е А есть по определению Xx.Al, где
(x}=FV(M).
Например, Хху.хг/s A0; Кху.хуг №(z).
2.1. Ламбда-термы и конверсия 37

Отметим, что замыкание терма М зависит от порядка пере­


менных в х.
2.1.8. Определение, (i) Говорят, что М есть подтерм терма
N (и пишут М cz N)', если М е Sub(Af), где совокупность Sub(M)
подтермов N индуктивно определяется следующим образом:
Sub(x) - х,
Sub(UWi)= Sub(Wi)U{bxJVi},
Sub (N>N2) = Sub (Mi) U Sub (Nz) U {MiM2}.
(ii) Подтерм может входить в данный терм несколько раз.
Например, в Л4 = Лх.х|(х|) имеется два вхождения подтерма
\ = Ку.у.
(iii) Пусть Ni, Nz— два вхождения подтермов в М. Тогда
говорят, что Ni, N2 дизъюнктны, если они не имеют общих вхож­
дений символов.
(iv) Вхождение N подтерма в терм М называется активным,
если оно происходит от вхождения вида (NZ) для некоторого
Z; в противном случае оно называется пассивным.
Пример, (i) Пусть М == hx.xy(kz.y). Тогда ху с: М, но
гф. М и у (кг.у) qt М, так как М = 7.х.( (ху) (Zz.y)).
(ii) Вхождения х и (Kz.y) в М дизъюнктны. Дизъюнктны
также первое вхождение у и (%z.y).
(iii) х и ху ■—активные подтермы М, а у, Kz.y—-пассивные.
2.1.9. Определение. Пусть F, М е Л. Тогда
(i) F°M = М; Fn+'M = F (FnM),
(ii) FM~°^F-, FM~ n+l =FM~nM.

Термы, рассматриваемые с точностью до замены


связанных переменных
Мы покажем сейчас, что при подстановке необходимы неко­
торые предосторожности.
2.1.10. Софизм. VMM(M = M).
Доказательство. Пусть F = 7.хулух. Тогда для любых
М, N имеем
FMN = ((U(ky.yx)) M)N = (ky.yM)N = NM.
В частности, Fyx = ху. Но
Fyx = ((7.х(7.у.ух))у)х = (7ау.уу)х = хх.
Следовательно, ху — хх. Отсюда нетрудно вывести любое ра­
венство, См. упр. 2.4.2 (Ш). □
38 Гл. 2. Конверсия

Разоблачение софизма. Кажущееся противоречие возникло


из-за шага
(Кх(Ку.ух))у = Ку.уу.
Свободная переменная у становится связанной после подста­
новки вместо х в терм Ку.ух. Этого не следует допускать. В ло­
гике предикатов эту ситуацию описывают фразой «у не свободен
для (подстановки вместо) х в Ку.ух», а в программировании —
фразой «происходит смешение локальных и глобальных пере­
менных». □
В 2.1.11—2.1.14 будет описан метод обхода этой трудности,
использующий приводимые ниже принципы. Подробности приве­
дены в приложении С.
(1) Отождествляем два терма, если их можно преобразовать
друг в друга переименованием связанных переменных.
(2) Рассматриваем Х-терм как представитель своего класса
эквивалентности.
(3) Интерпретируем подстановку Л4[х:=М] как операцию
на классах эквивалентности термов А4 и N. Эту операцию можно
выполнить на представителях при условии, что связанные пере­
менные называются правильно, т. е. в соответствии с приводи­
мым ниже соглашением о переменных.
2.1.11. Определение, (i) Заменой связанных переменных
в терме М называется замена подтерма Kx.N в М на
Ky.N[x := у] при условии, что у (вообще) не входит в N. (Так
как у — новая переменная, подстановка N[x:= у] не таит ни­
какой опасности.)
(ii) Говорят, что терм М а-конгруэнтен терму N (и пишут
М ==ajV), если N получается из М серией замен связанных пе­
ременных.
Например,
Кх.ху Kz.zy Ку.уу,
Кх.х (Кх.х) =а Кх'.х' (Кх.х) s=a Кх'.х' (Кх".х").
У Чёрча [1941] переименование (т. е. замена) связанных пе­
ременных было встроено в правила конверсии. Там теория К.
была расширена схемой аксиом
Хх.М == Ку.М[х у] («-конверсия),
где у не входит в А4 ни свободно, ни связанно.
Мы предпочитаем отождествлять «-конгруэнтные термы на
синтаксическом уровне.
2.1.12. Соглашение, a-конгруэнтные термы отождествляются,
Поэтому мы пишем теперь Кх.х = Ку .у и т. д,
2.1. Ламбда-термы и конверсия 39

2.1.13. Соглашение о (употреблении) переменных. Если в оп­


ределенном математическом контексте (определении, доказа­
тельстве) встречаются термы Мь то подразумевается,
что связанные переменные в них выбраны так, чтобы они были
отличны от свободных переменных.
Примеры использования соглашения о переменных.
(1) Это соглашение неявно использовалось уже в доказа­
тельстве теоремы 2.1.5 (о неподвижной точке). В определении
W = Kx.F(xx) существенно условие х FV (F).
(2) Пусть Тогда КМ = (Кх(Ку.х)) М = Ку.М. От‘
сюда
(*) VM (КМ = Ку.М).
Но Кг/ #= Ку.у. Это имеет место из-за того, что в силу соглаше­
ния о переменных соотношение (*) понимается как
VM (КМ = Лг/.М), где у ф FV (М).
Следовательно, ввиду отождествления конгруэнтных термов,
имеет место Кг/ = Ку'.у.
2.1.14. Вывод. Используя соглашения 2.1.12 и 2.1.13, можно
работать с ^-термами «наивно».
Это значит, что подстановку и другие операции над термами
можно выполнять, не задаваясь вопросом, допустимы ли они.
Этот вывод будет доказан в приложении С.

Подстановка
2.1.15. Определение. Результат подстановки терма 2V вместо
всех свободных вхождений переменной х в М (обозначаемый
через М[х:=М]) определяется следующим образом:
x[x:=N] = N-,
y[x:=N]^y, если х ф у,
(Ky.Mj (х М] s Лг/.(М1 [хМ]);
(М1М2) [х := М] ES (Mj [х := JV]) (М2 [х := У]).
В третьем пункте не нужно специально оговаривать условие
«у х и у ф. FV(А()». Оно выполняется в силу соглашения о пе­
ременных.
2.1.16. Лемма о подстановке. Если х^уи x^FV(L), то
М [х := АГ] [у := L] а М [у := L] [х := N [у L] ].
Доказательство проводится индукцией по построению терма М.
Случай 1. М — переменная.
40 Гл. 2. Конверсия

Случай 1.1. М =а х. Тогда левая и правая части доказывае­


мого утверждения равны N[y : = L], так как х^у.
Случай 1.2. М^у. Тогда обе части равны L, так как из
x^FV(L) следует L[x :=.••]= L.
Случай 1.3. М &= zz£ х, у. Тогда обе части равны г.
Случай 2. Al = Xz.Mi. В силу соглашения о переменных мы
можем предположить, что z х, у и z не входит свободно в N, L.
Тогда по предположению индукции
(kz.Mi) [х := ЛА] [у :=■ Л] =s Xz.Afi [х j= ЛА] [у := Л]
s Zz.Mi [у :== £] [х := N [у := L]]^
= (Xz.Mi) [у :== L] [х := N [у := £] ].
Случай 3. М = М\М2. Тогда доказываемое утверждение
снова следует из предположения индукции. □
2.1.17. Предложение, (i) М = М' => М [х := ЛА] = М' [х := IV].
(ii) N ~ N'=> М[х •.= N]~ М[х N'].
(iii) М = М', N = N' => М[х := ЛА] = М'[х :=. ЛА'].
Доказательство. Пункт (i) устанавливается индукцией
по длине доказательства равенства М = М'. Так как этот метид
доказательства будет использоваться часто, мы приведем все
подробности. В дальнейшем эти подробности будут предостав­
ляться читателю.
Случай 1. М = М'— аксиома вида (Ху.А)В = А [у : = В].
Тогда имеем
М[х i= N]^(Xy.A[x N])(B[x:= N]) =
= А [х := У] [у := В [х := ЛА] ]
А [у := В] [х := ЛА] М' [х := ЛА]
в силу леммы 2.1.16 (о подстановке). Заметим, что у х,
у 0 FV (ЛА) в силу соглашения о переменных.
Случай 2. М = М' — аксиома из-за того, что М ss М'. Тогда
нужный результат получается непосредственно.
Случай 3. М == М' имеет вид ZMi
=ZM\
* и получается непо­
средственно из Afi = Afi. Имеем
М [х :== ЛА] a Z [х != ЛА] Л4; [х := ЛА] =
— Z [х!= ЛА] М{ [х := ЛА] (по предположению индукции) s=
sM' [х:=ЛА].
Остальные правила вывода рассматриваются аналогично.
Дадим другое доказательство пункта (1).
М <=М' => Хх.М = Хх.М' =>■
=► (Лх.М) V = (Лх.М') N =*■ М [х ЛА] = М' [х != ЛА].
2.1. Ламбда-термы и конверсия 41

(ii) Надо применить индукцию по построению терма М.


(iii) В силу (i) и (ii) имеем
М[х: = Л1] = M'[x:=JV]=M'[x:=W']. □
Верно ли следующее утверждение?
N = N' => hx.x(ky.N) = Xx.x(Ky.N').
Ответ: оно верно, но не следует непосредственно из предло­
жения 2.1.17(H), так как терм (Хх.х(ty.N)) нельзя записать
в виде (Xx.x(Xz/.z)) [г •.= TV], если одна из переменных х, у сво­
бодна в N. Поэтому полезно следующее понятие контекста.
2.1.18. Определение, (i) Контекстом называется терм С[ ]
с дырами в нем. Более формальное определение выглядит сле­
дующим образом.
х — контекст;
[ ] — контекст;
если Ci[ ] и Сг[ ]—контексты, то Ci[ ]Сг[ ] и Ax.Ci [ ]
тоже контексты.
(ii) Если С[ ]—контекст и МбА, то С[А4] обозначает ре­
зультат помещения М в дыры контекста С[ ]. При этом дей­
ствии свободные переменные из М могут стать связанными
в С[М].
Пример. С[ ] == Хх.х (Лг/. [ ]) —контекст. Если М^ху, то
С [М] s Xx.x(ky.xt/).
Контексты не рассматриваются с точностью до a-конгруэнт­
ности. Существенное свойство контекста С[ ] состоит в том, что
свободные переменные терма М могут стать связанными
в С[Л1]. Мы будем писать С[ ]еА вместо того, чтобы говорить,
что С [ ] — контекст.
2.1.19. Предложение. Пусть С[ ]еА. Тогда
N = N' =>C[M] = С[ЛГ].
Доказательство. Используем индукцию по построению
контекста С[ ].
2.1.20. Лемма, (i) VC[ ] VxBFVM е А° (х) (С [М] = F (Хх.М)).
(ii) VC[ ] VM3x2F (С [М] == F (Xx.M)).
Доказательство, (i) Используем индукцию по построе­
нию С [М].
(ii) следует из (i). □
Иногда нужна одновременная подстановка.
42 Гл. 2. Конверсия

2.1.21. Определение, (i) Пусть N = Nt, .... Nm; х = xlt ...


-> ->
..,, хп. Тогда говорят, что N согласован с х, если т = п и пере-
менные из х не входят в FV (А) .
(ii) Пусть N == Аь ..., Nm; L = Ц, ..., Ln. Тогда скажем,
что
N — L, если п = т и Nt ~ Li для 1 i п
■> ->
Аналогично определяется отношение А = L.
(iii) Пусть N согласован с x = xit ...» хп. Тогда полагаем
М[х := N] Al] ••• [x« := Nn\.
->
[Здесь необходимо, чтобы переменные из х не входили
в FV(A). Иное определение приводится в упр. 2.4.8.]
(iv) Пусть /НеА. Как и в логике предикатов, мы иногда
записываем М = А1(х), чтобы изобразить подстановку.
Если М = М(х) и N согласован с х, то /И (А) = Л4[х := А].
2.1.22. Предложение. Пусть Ni согласованы с х. Тогда
Mi (х) == М2(х) А А1 = А2 =$- М] (АО == Л42(А2).
Доказательство получается ссылкой на предложение 2.1.17
(Ш). □
Комбинаторная полнота
-> -> ->
2.1.23. Лемма. Пусть х == хь ..., хп. Тогда (Хх.М)х = М.
Доказательство. При n = 1 имеем
(Xxi.M)xi = М [xi ;= xi] ее М.
Если п = 2, то
(7.x.М) х ss ((7.Xi.(7,x2.M)) Xi) х2 —
= (7,х2.Л4)х2 (в силу случая п = 1 для Кх2.М) = М.
Общий случай получается аналогично индукцией по п. □
2.1.24. Следствие (комбинаторная полнота). Пусть /И е=
== М (х). Тогда
(i) 3F(Fx = М(х)); >
(ii) BFVA(FA>= М(А)), если А согласован с х;
(iii) в (i), (ii) можно взять F = КхМ.
2.1. Ламбда-термы и конверсия 43

Доказательство. Для доказательства используем пре­


дыдущую лемму и предложение 2.1.22. □
Пример. 3FVMN(FMN — Kz.zNM). Действительно, положим
F = kxy. (/.z.zyx) ss kcyz.zyx.
Особенно важны три комбинатора.
2.1.25. Определение.
I = Тх.х, \{ = Кху.х,
s = Kxyz.xz (yz).
2.1.26. СлЕдствие. Для всех М, N, L е А
(I) |М = М,
(II) КМА = М,
(iii) SMNL = ML(NL).
Доказательство получается с помощью следствия
2.1.24. □
В § 8.1 будет показано, что I, К, S порождают множество
А0 с помощью аппликации. Заметим, что SKK = I, а следова­
тельно, К, S порождают А0.

Экстенсиональность
Ламбда-термы обозначают процессы. Различные термы мо­
гут обозначать один и тот же процесс. Например, Тх.Мх и М
дают один и тот же результат MN в применении к терму N. По­
этому вводится следующее правило.
2.1.27. Определение. (1) Экстенсиональность — это следую­
щее правило вывода:
Мх = Nx => М = N (ext),
где x^FV(MN).
(ii) Теория 1, расширенная этим правилом, обозначается
через X + ext.
Возникает вопрос: что можно доказать в 1 + ext, но не в 1?
Мы уже видели один пример — Хх.Мх = М. Ниже показано, что
это — по существу единственное различие.
2.1.28. Определение. Рассмотрим следующую схему аксиому:
kx.Mx = М (^-конверсия),
где х FV (А4). Пусть Хц — это теория к, расширенная схемой ц.
2.1.29. Теорема (Карри). Теории Т + ext и 1ц эквивалентны.
44 Гл. 2. Конверсия

Доказательство. Покажем сначала, что X + ext Н ц.


Действительно, (Хх.Л4х)х — Мх. Следовательно, если х ф. FV(M),
то по правилу ext имеем Тх.Мх = М.
Обратно, теория Гц замкнута относительно правила ext. Пусть
Мх = Nx, где х ф FV(МА). Тогда по правилу | имеем X.v.At.v —
= Kx.Nx. Отсюда М = N по схеме ц. □
Заметим, что правило | играет существенную роль при уста­
новлении эквивалентности между 1-j- ext и Гц. Поэтому | иногда
называется правилом слабой экстенсиональности.
Экстенсиональное Х-исчисление обычно обозначается через
Гц. В литературе встречаются и другие названия:
Хц-исчисление,
ХРц-исчисление,
ХАц-исчисление,
ХКрц-исчисление.
Одна из причин рассмотрения системы Хц состоит в том,
что она обладает определенным свойством полноты — см. тео­
рему 2.1.40.

Непротиворечивость
Так как теория к свободна от логики, непротиворечивость
нужно понимать следующим образом.
2.1.30. Определение. (i) Равенство — это формула вида
М — N, где М, МеЛ; такое равенство замкнуто, если М,
N е А0.
(ii) Пусть — формальная теория, формулами которой яв­
ляются равенства. Тогда говорят, что 3~ непротиворечива (и пи­
шут Сои(£7")), если в ?Г доказуемо не любое замкнутое равен­
ство. В противном случае говорят, что противоречива.
(iii) Если — множество равенств, то Х + ^" обозначает
теорию, получаемую из X добавлением всех равенств из в ка­
честве аксиом. Говорят, что ГГ непротиворечиво (и пишут
Con (.Т')), если имеет место Con (X + 17") •
Читателя, возможно, беспокоит софизм 2.1.10. Кроме того,
доказательство теоремы 2.1.5 о неподвижной точке представляет
собой, по существу, диагональное рассуждение того типа, кото­
рый часто приводит к противоречиям. Поэтому неочевидно, что
теория X непротиворечива.
Понятие редукции, которое будет введено в гл. 3, окажется
мощным теоретико-доказательственным инструментом изучения
теории 1 и некоторых ее расширений. Используя его, мы можем
доказать следующее утверждение.
2.1. Ламбда-термы и конверсия 45

2.1.31. Факт. Теории киЦ непротиворечивы.


Доказательство. См. теоремы 3.2.10(ii) и 3.3.11(ii),
а также следствие 2.1.38. □
Теория X, расширенная всего одной аксиомой, может стать
противоречивой.
2.1.32. Определение. Пусть М, N <= Л. Тогда говорят, что М
и N несравнимы, и пишут M#N, если ПСоп(Л4 = N).
2.1.33. Пример. К =Н= S.
Доказательство. Рассуждаем в X + K = S. Для X, У,
ZgA имеем KXYZ = SXYZ, откуда XZ = XZ(YZ). Возьмем
X = Zt==\. Тогда для всех УеЛ имеем | = У|. Взяв У = КЛ4
для произвольного М, получаем | = Л1для любого М. Поэтому
X + К = S Н Л4 = I = N для любых М, А, иными словами, мы
получили ~]Con(K = S). □

Нормальные формы
Рассмотрим терм вроде (Хх.ха) I. Такой терм можно «вычис­
лить» и получить la, а это дает а.
Терм а называется нормальной формой, так как он не «вы­
числяется» дальше. Это понятие уточняется следующим образом.
2.1.34. Определение. Пусть М е А.
(i) М есть ^-нормальная форма (сокращенно р-н. ф. или
просто н. ф.), если М не имеет подтермов вида (Xx.7?)S.
(ii) М имеет н. ф., если существует терм N, такой что N = М
и N есть р-н. ф.
Если М есть н. ф., то говорят также, что М находится в н. ф.
Примеры, (i) I находится в н. ф.
(ii) KI имеет н. ф. (а именно, Хг/.|).
(iii) Пусть (2 = (Хх.хх)(Хх.хх). Тогда О не имеет н. ф., что
будет доказано в гл. 3.
В экстенсиональной теории Хт] понятие н. ф. несколько иное,
так как там имеются новые термы вроде Хх.ах, которые «хотят,
чтобы их вычислили».
2.1.35. Определение. Пусть AlsA.
(i) М есть р-щн. ф., если М не имеет подтермов вида
(Хх.Р) Q или (Хх.Рх), где х ф. FV (/?).
(ii) М имеет piq-н. ф., если
ЗЛДХт] I— М = N и N есть Ртрн. ф.].
Примеры, (i) К, S — это ртрнф.
(») Хх.х(Хг.хг) не есть р^-н. ф., но имеет рт]-н. ф. — терм
Хх.хх.
46 Гл. 2. Конверсия

2.1.36. Факт (Карри и др. [1972]). М имеет |3т)-н. ф. <=> М


имеет р-н. ф.
Доказательство. См. следствие 15.1.5. □
Нормальные формы и непротиворечивость связаны следую­
щим образом.
2.1.37. Факт, (i) Если М, N — различные р-н. ф., то
Ktf-M = N.
(ii) Аналогичное утверждение о доказуемости равенств
Рт|-н. ф. в Хц.
Доказательство. Применяем теоремы 3.2.10, 3.3.11 и
предложения 3.2.1, 3.3.2. □
2.1.38. Следствие. Теории X и Хт] непротиворечивы.
Доказательство. Из факта 2.1.37 получаем Xtj|-/-K = S,
так как термы К и S находятся в ргрн. ф. □
С другой стороны, имеет место следующее утверждение.
2.1.39. Факт (Бём [1968]). Если М, N — различные ртрн. ф.,
то М # N.
Доказательство. См. следствие 10.4.3. □
Отсюда следует, что теория Хт) полна по Гильберту — Посту
(ср. определение 4.1.22) для термов, имеющих н. ф..
2.1.40. Теорема. Допустим, что М, N имеют н. ф.. Тогда либо
Хт] Ь М =^= А, либо теория Хт) + М — N противоречива.
Доказательство. В силу факта 2.1.36 термы М и N
имеют ртрн. ф., которые мы обозначим через М', N'.
Случай 1. М' = N'. Тогда
2л) |- М = М' = N' = N.

Случай 2. М' Ф N'. Тогда в силу факта 2.1.39 мы имеем


~|Соп(АГ = N'), откуда ПСоп (Хц + М = N). □

2.2. Некоторые варианты теории X


В этом разделе рассматриваются два варианта теории X —
комбинаторная логика и ХАисчисление. Аппарат этих систем
изложен соответственно в гл. 7 и 9. Кроме того, обсуждается
вопрос об «осмысленности» термов.
2.2. Некоторые варианты теории X 47

Комбинаторная логика
Независимо от ^-исчисления М. И. Шейнфинкель [1924] и
Карри [1930] начали разработку родственной теории — комби­
наторной логики.
Карри разрабатывал комбинаторную логику с намерением
обеспечить новые основания математики. Его теория делится на
две части: чистая комбинаторная логика занимается понятиями
вроде подстановки и других формульных преобразований, а ил-
лативная комбинаторная логика — логическими понятиями, та­
кими, как импликация, квантификация, равенство и типы.
Как было упомянуто выше, Чёрч ставил аналогичную цель
в связи с расширенным вариантом теории X. После того как было
показано, что предложенная им система противоречива, Чёрч
оставил свою программу. Карри старался быть осторожнее со
своими теориями и хотел получить доказательства непротиворе­
чивости во всех случаях, когда это возможно. Это было сделано
для нескольких систем комбинаторной логики (см. приложе­
ние В). Однако эти системы очень слабы и потому не подходят
на роль оснований математики. Несмотря на это, возникшие
теории имеют ряд интересных аспектов.
Эта книга не охватывает иллативных теорий. Они кратко
обсуждаются в приложении В. Чистая комбинаторная логика
рассматривается в гл. 7. Допуская некоторую нестрогость, мы
часто будем опускать эпитет «чистая».
Отправной точкой этой теории является то обстоятельство,
что общая схема комбинаторной полноты — следствие 2.1.24 —
получается из двух своих частных случаев. Достаточно предпо­
ложить, что имеются объекты К и S, удовлетворяющие равен­
ствам
(-Д KMN = М, SMNL = ML (NL)
для всех М, N и L. Комбинаторная логика CL — это формальная
эквациональная теория с единственной операцией — апплика­
цией, примитивными константами К, S и аксиомами (* ). При
наличии правила экстенсиональности теории CL и К становятся
эквивалентными.
В CL не обязательно иметь операцию, связывающую пере­
менные. Абстракцию можно определить через К и S. Это имеет
несколько важных приложений к самому ^.-исчислению. Напри­
мер, терм Е е А0, который перечисляет все замкнутые Х-термы,
строится с помощью CL. Далее, теоретико-доказательственный
анализ зачастую легче провести для расширений CL, чем для
расширений X. Это особенно полезно при наличии экстенсиональ­
ности, так как тогда теории оказываются эквивалентными.
В 1-исчислении термы К, S удовлетворяют равенствам (■::•).
Наметим, как с помощью этих термов можно определить аб­
стракцию в Д,
48 Гл. 2. Конверсия

2.2.1. Предложение. В к выводимы следующие равенства:


(О i=skk.
(ii) (а) Кх.х = I;
(b) Кх.М = КМ, если х FV (М);
(c) Kx.MN = S(Kx.M)(Kx.N).
Доказательство, (i) SKK = Хс.Кс(Kc) = Xc.c = I;
(ii) (b) KM = Xx.M при x(£FV(M);
(c) S (Xx.M) (kx.N) = Xx.(Xx.M) x ((hx.N) x) = kx.MN. □
Таким образом, из каждого терма, принадлежащего множе­
ству А, можно устранить X путем постепенной замены с по­
мощью К, S Пример:
Кху.ух = Хх (Ку (ух)) = Хх (SI (Кх)) = S (К (SI)) (S (КК) I) =
= S (К (S (SKK))) (S (КК) (SKK)).
Используя этот метод, можно определить стандартные пере­
воды Х-термов в язык CL и обратно. Эти переводы не состав­
ляют, однако, изоморфизма между этими двумя теориями.
Х-термы обладают тонкой структурой, которая не видна в соот­
ветствующих CL-термах. Например,
X Н SKK = SKS = I, но CL\-/-SKK. = SKS.
Карри сумел построить конечное множество Ар, состоящее из
равенств между С£-термами и такое, что теории СТ-фАр и X
эквивалентны при стандартном переводе. Аналогичным обра­
зом имеется множество Арп, такое, что теория CL-\- Арт) эквива­
лентна Хту См. § 7.3.

X/-исчисление
Чёрч .[1941] первоначально определил ограниченный класс
Х-термов.
2.2.2. Определение, (i) Множество Х/-термов (обозначаемое
через А/) вводится следующим индуктивным определением:
х <= А/,'
М <= Az, хе FV (М) =>Хх.М е Az;
М, :Ve Ai^GOJeA/.
(ii) Теория X/ (или Х/-исчисление) состоит из равенств
между Х/-термами, доказуемых с помощью аксиом и правил тео­
рии X, ограниченных термами из А/.
Чтобы подчеркнуть отличие от X/, теория X иногда обозна­
чается через ХК, а множество А — через Ал. Действительно,
существенное различие между А/ и А« заключается в терме К:
2.2. Некоторые варианты теории X 49

он лежит в Ад — Л; ив действительности все Х/С-термы опреде­


лимы через М-термы и К.
В литературе встречаются следующие названия теории KZ:
Х7-исчисление,
%/3-исчисление.
Аналогичным образом, теорию эквивалентную к!ext,
обозначают следующим образом:
Х7г)-исчисление,
А./Р'П-исчисление.
В книге Карри и др. [1958], гл. 3, § 3, упоминаются следую­
щие доводы, приписываемые Чёрчу, в пользу предпочтения
М-исчисления ХК-исчислению.
(1) То, что Чёрч хотел сделать с помощью %-исчисления, мо­
жет быть сделано с помощью М-варианта. Это касается, напри­
мер, представления (частично) рекурсивных функций.
(2) Если мы, подобно Чёрчу, считаем значимым только
термы, имеющие н. ф. *), то значимые ХА-термы могут иметь не­
значимые части (например, KIQ имеет подтерм S1 без н. ф.). Это
не так для М-термов.
2.2.3. Факт. Пусть МеА( и N cz М. Тогда
М имеет н. ф. => N имеет н. ф.
Доказательство. См. следствие 9.1.6. □
(3) A-исчисление может приводить к противоречиям.
Обсудим эти три положения.
Мнение (1) можно объяснить существованием нескольких
аппроксимаций оператора К, определимых в Х7-исчислении.
Прежде всего имеется комбинатор К, е А°, такой, что К|хсп=х
для всех цифр сп = hfz.fnz. Можно взять, например,
Kj = Kxy.yllx. Далее, следствие 9.4.24 показывает, что для лю­
бого конечного множества Л9 термов в н. ф.
ЭКу е AJVMVA е JC= М).
Такой комбинатор Кл называется локальным К для N.
Однако тот факт, что все рекурсивные (а следовательно,
в силу тезиса Чёрча все вычислимые) процессы могут быть пред­
ставлены в М-исчислении, имеет лишь ограниченную ценность.
Представление в 7J не всегда максимально эффективно, так как
W-вычисление выражения 0-2100 должно сначала вычислить 2100
и лишь потом может умножить результат на 0. В ХА-исчислении
11 В нескольких случаях (например, [1973], с. 159, 165) Скотт выражал
несогласие с этой точкой зрения. Ниже будет показано, что взгляды Скотта
и Чёрча можно тем не менее примирить.
50 Гл. 2. Конверсия

0-2100 может сразу редуцироваться к 0. Далее, в 7.К некоторая


программа (например, KI) может успешно обрабатывать другой
кусок программы (например, 9), даже если этот последний не
будет иметь значения, если его выполнять. Поэтому довод (2)
работает скорее в пользу полного ХХ-исчисления.
Что касается довода (3), то мы знаем, что теория XX непро­
тиворечива. Чёрч, вероятно, имел в виду следующее. Если мы
считаем все термы, не имеющие н. ф., незначимыми, то их есте­
ственно отождествить. Это непротиворечиво в ХХисчислении
(см. теорему 16.1.13), но не в ХХ-исчислении.
2.2.4. Предложение. Пусть £T = {M = N\M, N е Ак и не
имеют н.ф.}. Тогда ПСоп(£Г).
Доказательство. ПустьМ = Хх.хКД N = Kx.x4z£l. Тогда
М — N £Г. Следовательно, ТГ К = Л4К — Л'К = S. Так как
K#S в силу примера 2.1.33, мы получаем, что ПСоп(£Г). □
Однако мы приведем ниже доводы в пользу того, что не все
термы без н. ф. следует считать бессмысленными в ХХ-исчис-
лении.
По всем этим соображениям мы называем ХХ-исчисление
просто Х-исчислением. Поэтому, если не оговорено противное,
Х-исчисление обозначает ХХ-исчисление. Несмотря на это, Л/ —
интересное подмножество множества АЛ. Кроме того, имеются
приложения ХЛисчисления к полной теории. См., например,
лемму 17.2.16.
Представление рекурсивных функций
В Х-исчислении некоторая последовательность г0"1, Г1П, ...,
состоящая из термов в н. ф., избрана в качестве представления
натуральных чисел. Эти Х-термы называются цифрами. Понятие
определимости функций будет сформулировано для такой циф­
ровой Системы.
2.2.5. Определение. Пусть f: N
->N.
* Тогда говорят, что f
Х-определима, если для некоторого FeA0 и для всех гц, ...
..., п,ге[Ч имеет место ЕГП|“1 rnk~* = г f (п, ...,
2.2.6. Факт (Клини [1936]). Пусть f: Тогда
[ определимая) рекурсивна.
Доказательство. См. теорему 6.3.13 для XX и теорему
9.2.16 для X/. □
Чтобы представлять частичную функцию Х-термом, мы
должны выбрать представление для «не определено». Вопрос
вот в чем. Если F должен Х-определять частичную функцию ср,
то каково должно быть F гп\ когда cp(n) не определено? Клас­
2.2. Некоторые варианты teopuu к 51

сическое решение, предложенное Чёрчем [1941], с. 29, состоит


в том, чтобы представлять неопределенное значение термами,
не имеющими н. ф.
2.2.7. Определение. Пусть <р: — частичная функция.
Тогда говорят, что ср ^-определима, если для некоторого тер-
->
ма F е Л° и для всех се имеем
F ••• rnfe_l = rm~i, если ср(п) = т\
Frnl~t rnk~' не имеет н. ф., если <р(п) не определено.
Это определение имеет, по крайней мере для кК-исчисления,
следующие недостатки.
(a) Наличие и. ф. не сохраняется при переводах к и CL друг
в друга. Поэтому не удается доказать сразу, что если некоторый
класс частичных функций можно определить с помощью к-тер-
мов, то это можно сделать и с помощью CL-термов. В действи­
тельности у Карри и др. [1972], с. 236, подстрочное примеча­
ние 37, даны отдельные обоснования определимости частично ре­
курсивных функций в к и в CL.
(b) Понятие нормальной формы слишком синтаксическое.
Неясно, например, осмысленно ли оно для элементов моделей
k-исчисления. В действительности Уодсворт доказал следующее
утверждение.
2.2.8. Факт. Пусть Dx — одна из теоретико-решеточных мо­
делей Скотта для k-исчисления. Тогда ни для какого подмно­
жества Л9 Е Doo не имеет место утверждение
М имеет н. ф. ■<=> [Ad] °° е Л9,
где [Л4] обозначает значение М в Dx.
Доказательство. См. упр. 19.4.2. □
Недостаток, упомянутый в п. (а), является в действитель­
ности еще одним аспектом синтаксичности понятия н. ф.
(c) Нам хочется отождествить термы с синтаксическим зна­
чением «не определено». Это, однако, невозможно в силу пред­
ложения 2.2.4.
(d) Частичные k-определимые функции замкнуты относи­
тельно композиции, но не интенсиональным образом. Иными
словами, терм, k-определяющий композицию, не обязательно яв­
ляется композицией термов, k-определяющих компоненты.
2.2.9. Пример. Пусть f(n)=O и g{ri) не определено для
всех п. Тогда f(g(n)) не определено для всех п. Пусть теперь f
и g k-определены термами F = К г0~' и G ^== КО соответствен­
но. Но тогда терм
FoG ^kx.F (Gx) = kx.г0-1
не определяет функцию f °g.
52 Гл. 2. Конверсия

Все упомянутые трудности возникают из-за отождествления


не определено о нет н. ф.
В следующем подпункте предлагается иной подход.

Разрешимые и неразрешимые термы


Мы введем один собственный подкласс класса термов, не
имеющих н. ф. Элементы этого класса называются неразреши­
мыми термами. Предлагается, чтобы именно эти термы пред­
ставляли понятие «не определено». Это было сделано впервые
Барендрегтом [1971]. Уодсворт [1971] независимо ввел класс
термов, «не имеющих головной нормальной формы». Он привел
доводы в пользу того, что элементы этого класса должны рас­
сматриваться как бессмысленные термы АЛ-исчисления.
2.2.10. Определение, (i) Пусть М е А0. Тогда М называется
разрешимым, если
ЗпЗМ ...Nn = I).
(ii) Произвольный терм МеА называется разрешимым,_
-> ->
если разрешимо замыкание /И, т. е. терм кх.М, где х~ FV(M).
(iii) Терм М е Л неразрешим, если он не является разре­
шимым.
В этом определении можно всюду взять Л = или Л = Л/.
В первом случае говорят о А-разрешимости, во втором — об
/-разрешимости. Если из контекста ясно, какое из этих двух
понятий имеется в виду, то говорят просто о разрешимости.
Обычно это будет /(-разрешимость.
Примеры, (i) S /-разрешим: SIII = I.
(ii) xlQ A-разрешим: (Ax.xlQ) К = 1.
(iii) Q I- а /(-неразрешим.
2.2.11. Определение, (i) M является головной нормальной
формой (г. н. ф.), если М имеет вид Kx.yN.
(ii) М имеет г. н. ф., если 3N (М = N и N является г. н. ф.).
Пример. Терм Лх.|хО не имеет нормальной формы, но имеет
г. и. ф. Kx.xSl. Нетрудно показать, что каждая н. ф. есть г. н. ф.
2.2.12. Факт, (i) (Уодсворт) В ^/(-исчислении
М неразрешим ■<=> М не имеет головной нормальной формы.
(ii) (Барендрегт) В М-исчислении
М неразрешим<=>- М не имеет нормальной формы.
Доказательство, (i) следует из теоремы 8.3.14; (ii) вы­
текает из следствия 9.4.21. □
2.2. Некоторые варианты теории 53

Ниже для Х-термов предлагается следующее отождествление:


«не определено» (или «бессмысленно»)о неразрешимо.
Вместе с фактом 2.2.12 это примиряет позиции Чёрча и
Скотта. Чёрч имел в виду ^/-исчисление, следовательно,
бессмысленно -*=> неразрешимо -<=>- нет н. ф.
Скотт, с другой стороны, рассматривал ХК-исчисление, сле­
довательно,
бессмысленно -4=> неразрешимо о нет нет н. ф.
Оказывается возможным Х-определить частично рекурсивные
функции, когда неопределенность представляется неразреши­
мостью. Это позволяет избежать упомянутых выше трудностей,
возникающих, когда используются ненормализуемые термы
(определение 2.2.7).
(a) (Не) разрешимость сохраняется при стандартных пере­
водах Z и CL друг в друга, см. предложение 8.3.22. Это понятие
не меняется и после того, как к теории добавляется экстен­
сиональность, см. предложение 15.1.7.
(b) Понятие «(не)разрешимость» — не синтаксическое. Оно
относится к аппликативному поведению терма и потому осмыс­
лено также и в моделях %-исчисления.
Действительно, образами неразрешимых термов в моделях
Скотта Doo и графиковой модели Ра> являются соответственно
элементы _|_ и 0. Далее, разрешимость — полезный инструмент
анализа структуры моделей Doo и Рсо, см. главу 19.
(c) И в X/-, и в ХК-исчислении можно непротиворечиво отож­
дествить все неразрешимые термы, см. § 16.1.
(d) Х-определяющий терм для композиции можно найти рав­
номерно по Х-определяющим термам сомножителей (с помощью
некоторой обобщенной композиции).
Поэтому доказательство Х-определимости частично рекурсив­
ных функций может быть построено таким образом, что опре­
деление ц-рекурсивной частичной функции преобразуется в
Х.-терм, определяющий эту функцию. Этот интенсиональный
аспект был бы утрачен, если бы частично рекурсивная функция
<р выражалась сначала в нормальной форме Клини
<р(п) = U(nmT(e, п, гп)) для некоторого е,
а затем терм, определяющий ср, строился с помощью термов,
определяющих U и Т.
Крайзель [1971], с. 177, 178, подчеркивал в связи с так на­
зываемым «сверхтезисом», что тезис Чёрча выражает меньше,
чем мы знаем. Когда мы говорим, что все частично рекурсив­
ные функции ^.-определимы, мы говорим только о результатах
вычисления, о графиках. Мы подразумеваем однако, что Х-термы
54 Гл. 2. Конверсия

соответствуют нашим процедурам определения этих функций.


Таким образом, для ц-рекурсивных и ^-определимых функций
эквивалентность доказана не только в смысле тезиса Чёрча, но
и в смысле сверхтезиса.
В общем случае свидетельством в пользу сверхтезиса Чёрча
служат доказательства эквивалентности между различными
формализациями понятия эффективной вычислимости. См. Род­
жерс [1967], с. 37, основной результат III.
Это обсуждение дает веские аргументы в пользу отожде­
ствления неразрешимых термов с неопределенными. Завершаю­
щий аргумент — следующее свойство генеричности.
2.2.13. Факт. Пусть М неразрешим, а N — н. ф. Тогда
С[М] = N => VX(C[X] = N).
Доказательство. См. предложение 14.3.24. □
Поэтому мы предлагаем принять следующий эвристический
принцип.
2.2.14. Неразрешимые термы следует считать представите­
лями понятия неопределенности.
Ввиду факта 2.2.12 (i) отсюда следует предложение Уодсвор­
та [1971] отождествлять в ^-исчислении термы без г. н. ф. с не­
определенными термами.

2.3. Обзор части II


Гл.6. Классическое ламбда-исчисление
Здесь рассматриваются Z-термы с точностью до (доказуе­
мости в) X, а иногда с точностью до Хц.
6.1. Комбинаторы неподвижной точки
Определение. Терм УеА° называется комбинатором непод­
вижной точки, если
VF(YF = F(YF)).
Существование таких термов является следствием теоре­
мы 2.1.5 о неподвижной точке. Следующее утверждение полу­
чается из комбинаторной полноты и теоремы о неподвижной
точке.
Теорема. V/MeA'T.r, y)BFVA (FA = М (A, F)).
6.2. Стандартные комбинаторы
Определяются комбинаторы, представляющие истинностные
значения (Т = Кху.х = К, F == Кху.у — KI), спаривающую опе­
рацию ([М, У] = Tz.zMN), цифры(г0_| = I, гп + 1П = [F, гп'1] ).
2.3. Обзор части 11 55

Терм И = (Тх.хх)('кх.хх) будет играть в последующих главах


роль стандартной «неопределенности».
6.3. Л амбда-определимость
*
Определение. Пусть f: N-
N. Скажем, что f ^-определима,
если
3F (Vn е= N) (F (я)'1).
Теорема. Пусть f: N ->• N. Тогда
f ^.-определима <=> f рекурсивна.

6.4. Цифровые системы


Определение цифр в § 6.2 было выбрано так, чтобы облег­
чить доказательство Х-определимости рекурсивных функций.
Определяется несколько других цифровых систем, на которых
может быть представлен этот класс функций. Сюда входит си­
стема Чёрча, в которой п == Xfx.fn(x).

6.5. Еще о неподвижных точках-, гёделевские номера


Строятся некоторые новые комбинаторы неподвижной точки.
Многоместная теорема о неподвижной точке.
v/ч ••• ••• ХЛ^^А... aX„ = F„X).
Пусть ГХП — цифра, соответствующая гёделевскому номеру
выражения X.
Вторая теорема о неподвижной точке. VF3X (f г *Х~ =--X).

6.6. Результаты о неразрешимости


Определение. Множество А замкнуто относительно ра­
венства, если
М = Л? => ;V е
Теорема. Пусть st, А — дизъюнктные непустые множе­
ства, замкнутые относительно равенства. Тогда st и .Л (после
перехода к гёделевским номерам) рекурсивно неотделимы.
Следствие. Пусть множество st А замкнуто относительно
равенства и нетривиально (т. е. отлично от 0 и А). Тогда st-
не рекурсивно.
Следствие. Множество {М|М имеет н.ф.} рекурсивно пере­
числимо, но не рекурсивно.
Следствие. Теория X не имеет рекурсивных моделрц,
56 Гл. 2. Конверсия

6.7. Отступление: рефлексивные предложения


и теорема о рекурсии
И то и другое истолковывается как приложение теоремы
о неподвижной точке.
6.8. Упражнения

Гл.7. Теория комбинаторов


7.1. Комбинаторная логика
Комбинаторная логика (CL) — это формальная теория с при­
митивными термами К, S и аппликацией в качестве примитив­
ной операции (абстракции нет).
Аксиомы теории CL — это равенства
KPQ = Р, SPQR = PR (QR).
Устанавливается, что в CL можно определить абстрактор X
*,
такой, что имеет место p-конверсия. Отсюда следует, что все
замкнутые Х-термы можно определить через К, Se Л, исполь­
зуя только аппликацию.

7.2. Редукции для CL


Доказуемое в CL равенство можно породить с помощью по­
нятия редукции, удовлетворяющего теореме Чёрча — Россера.

7.3. Соотношение между CL и X


Применение определимой в CL абстракции X * дает канони­
ческий метод перевода Х-термов в С£-термы и обратно. Имеется
конечное множество Ар равенств между С£-термами, такое, что
X и CL-{-Aq становятся эквивалентными. Аналогичным образом,
имеется конечное множество аксиом Арч, такое, что теории
Хт), X CL -j- ext, CL Ар^
эквивалентны.
7.4. Упражнения

Гл.8. Классическое ламбда-исчисление (продолжение)


8.1. Базисы и перечисления
Устанавливается, что Л° порождается термами К, S с ис­
пользованием аппликации. Множество Л° можно породить даже
с помощью одного единственного элемента.
2.3. Обзор части II 67

Строится терм Ее Л°> перечисляющий множество Л°, т. е.


такой,что
(VM е= А°) (Зга е= N) (Е гга-1 = М).

8.2. Равномерность', бесконечные последовательности


Определение. Последовательность Мо, Mi, ... еЛ назы­
вается равномерной, если (ЗЛ1 е Л) (Vra е N) (Л4 ггап = Мп). Оп­
ределяется внутреннее кодирование равномерных бесконечных
последовательностей Х-термов.
8.3. Разрешимость-, головные нормальные формы
Определение, (i) Терм М е А° называется разрешимым, если
ЗЛ(Л1Й = 1).
(ii) Терм М имеет головную нормальную форму, если он
-> ->
конвертируем в терм вида loc.yN.
Теорема. В ХК-исчислении
М разрешим <=> Л4 имеет г. н. ф.

8.4. Ламбда-определимость частичных функций


Определение. Частичная функция ф: называется
^-определимой, если для некоторого терма F е Л°
(гф(гар, если ф(га) определено,
/7гга_1 = '{
(. неразрешимо в противном случае.
Теорема. ф ^-определима т. и т.т., когда она частично
рекурсивна.
8.5. Упражнения

Гл. 9. 17-исчисление
Это — теория ограниченного класса 17-термов с точностью
до конвертируемости.
9.1. Общие соображения
Теорема. 1К консервативна над М.
Теорема. Терм М е Л7 имеет н. ф. т. и т.т., когда каждый
подтерм М имеет н. ф.
Несколько понятий, относящихся к Лк, переносятся на Л/.
Например, терм М е Л” называется /-разрешимым, если
(3W €= Л;) (MN = I).
38 Гл. 2. Конверсия

9.2. Определимость
Доказывается, что частично рекурсивные функции можно
^-определить также и с помощью /./-термов.

9.3. Комбинаторы
Вводится теория CLi, соответствующая теории М в том же
смысле, в котором CL соответствует X.

9.4. Разрешимость
Анализируется понятие /-разрешимости.
Теорема. Терм М 1 -разрешим о М имеет н.ф.
Метод, примененный в этом доказательстве, позволяет по­
казать, что существует V-терм К
*, который локально действует
как К. Точнее,
(+) КЛИМ = М для всех М и всех М е Л1,
где Л9 — некоторое данное конечное множество нормальных
форм. Построение терма К * может быть сделано непредика­
тивным: можно потребовать, чтобы равенство (+) выполнялось
для всех термов из множества Л9, содержащего К
* и некоторые
термы, содержащие К * в качестве подтерма.
9.5. Упражнения

Гл.10. Деревья Бёма


10.1. Основные факты
Для каждого терма М е Л строится некоторое дерево
ВТ (/И) — так называемое дерево Бёма (для) терма М. Дерево
ВТ(Л4) может быть конечным или бесконечным; его можно срав­
нить с цепной дробью вещественного числа. Существенные черты
вычислительного поведения терма М могут быть считаны
с ВТ(М).
Множество всевозможных деревьев (не обязательно являю­
щихся деревьями Бёма для какого-то терма) обозначается че­
рез S3.
Даны условия того, чтобы элемент множества S3 был деревом
Бёма некоторого Х(7) -терма.

10.2. Сравнение деревьев Бёма. Топология деревьев на Л


На множестве S3 вводят частичный порядок, полагая А е В,
если А получается из В вычеркиванием каких-то поддеревьев.
2.4. Упражнения 69

Предложение. (S3, s) — алгебраическое п. ч. у. м.


Определение. Топология деревьев на А-—это наименьшая
топология, в которой непрерывно отображение ВТ: А->-S3, где
S3 имеет топологию Скотта. (В § 14.3 будет доказано, что опе­
рации ^-исчисления непрерывны в топологии деревьев.)
На S3 определяется отношение, похожее на трредукцию. С по­
мощью композиции отношений и на 33 получаются не­
которые другие отношения. В гл. 19 доказывается, что они со­
ответствуют неравенству в моделях D<x> и Рсо.

10.3. Техника выворачивания по Б'ёму


Для данного дерева А и его поддерева А' разработан метод
изоляции А' от А. В общем случае он оставляет некоторые следы
на А'.

10.4. Отделимость термов


Определение. Пусть &~ = М{........ Мп— конечная последо­
вательность замкнутых термов. Тогда отделима, если
VAb ..., A„3F (FMi = Ai Л ... Л FMn = N„).
Дана характеризация отделимости таких последовательно­
стей
Следствие. Пусть 3F = Mlt /ИпеЛ° и М, имеют раз­
личные [Зурн. ф. Тогда отделима.

10.5. Отделимость в М-исчислении


Символика отделимости переносится на ^/-исчисление.
Теорема. Пусть термы, входящие в последовательность
gr — мп, замкнуты. Тогда отделима в X/-исчислении
в том и только том случае, когда Mi, Мп имеют различные
[Зг)-н. ф.

10.6. Упражнения
Этим завершается обзор части II.

2.4. Упражнения
2.4.1. Показать, что следующие термы имеют и. ф.5
(i) <ФУ-УУУ) (bab.a) I (SS));
(ii) (kyz.zy) ((kx.xxx) (Ах.ххх)) (Zoi.l);
(iii) SSSSSSS;
(iv) * S(SS)(SS) (SS)SS,
60 Гл. 2. Конверсия

2.4.2. Показать, что


(i) I # К;
(ii) I # S;
(iii) ху # хх.
2.4.3. Построить замкнутые термы Мо, Mi, такие, что Mi=#=Mj для.
всех 1 ¥= /.
2.4.4. Показать, что аппликация не ассоциативна, точнее х(уг) 4i- (ху)г.
2.4.5. (К. Е. Шаап). Пусть X SI. Показать, что ХХХХ = Х(Х (XX))/
Имеет ли место ХпХ = XX~ п для всех п е N?
2.4.6. Показать, что 13FVMN(F(MN) = М). [Указание. Показать, что
Л(ху)#х.]
2.4.7. Показать, чтоВМУХ'(МЛ’ = ММ). [Указание. Применить теорему;
о неподвижной точке.]
-> ->
2.4.8. Пусть М еЛ, х X], ..., хп и N ss Nh ..., Nn. Если некоторые
из переменных х входят в FV(/V), то М[х : = X] (одновременная подстанов­
ка) определяется следующим образом:
у [х := Л/] = М/, если у Х( е {х},
у [х := К] = у, если у [х],
(М,Л12)[- > М, [-] М2 [-],
(Лу.М,) [-] Ку.М\ [-].
Показать, что предложение 2.1.22 и следствие 2.1.24 остаются справедли­
выми.
2.4.9. Показать, что (Ку.(Кх.М))N = Хх.((Ky.M)N).
2.4.10. (i) Построить терм М е А°, такой, что М = MS.
(ii) Построить терм М, такой, что MISS = MS. [Указание. Использо­
вать теорему о неподвижной точке.]
2.4.11. Построить F е Л, такой, что Л1 = х и ЛК = у. [Указание. Ис­
пользовать доказательство из упражнения 2.4.2 (i).]
2.4.12 (Якопини). Пусть со3 = Хх.ххх и Й3 = <о3ш3. Показать, что
(0 I # «3.
(ii) 1#Йз.
2.4.13. Показать, что для всех термов М, начинающихся с Л, имеет место
равенство Лх.Мх = М.
2.4.14. Пусть М = Кх.х(Ку.уу) (Ку.уу). Показать, что М /-разрешим.
Глава 3
Редукция

В определяющем равенстве для Х-абстракции имеется опре­


деленная асимметрия. Утверждение
(кх.х2 + 1)3 = 10
можно интерпретировать как «10 — результат вычисления выра­
жения (кх.х2 + 1)3», но не наоборот (т. е. при таком чтении
нельзя переставить правую и левую части равенства). Мы бу­
дем выражать этот вычислительный аспект записью
(кх.х2 + 1)310,
которая читается следующим образом: «(кх.х2 + 1)3 редуци­
руется (или сводится) к 10».
В дополнение к своему концептуальному аспекту, редукция
полезна и при анализе конвертируемости. Теорема Чёрча —Рос­
сера утверждает, что если два терма взаимно конвертируемы,
то они оба редуцируются к одному и тому же терму. Во многих
случаях неконвертируемость двух термов удается установить,
показав, что они не редуцируются к одному и тому же терму.

3.1. Понятия редукции


Отношение конвертируемости на множестве Л, введенное
в § 2.1, — не единственное отношение равенства, которое можно
анализировать с помощью понятия редукции. Поэтому мы вве­
дем это понятие в общей постановке.
3.1.1. Определение, (i) Бинарное отношение R на множе­
стве Л называется совместимым (с операциями ^.-исчисления),
если
(М, M')<=R=> (ZM, ZM') е= R, (MZ, M'Z) <= R
и (iU.Af, kx.M')^R
для всех М, М', Z s Л.
(ii) Отношение равенства (или конгруэнтности) на Л — это
совместимое отношение эквивалентности.
62 Гл. 3. Редукция

(iii) Отношение редукции на Л — это совместимое рефлек­


сивное и транзитивное отношение.
Отметим, что отношение R с Л2 совместимо т. и т. т., когда
(М, M')<=R=>(C[M], C[M'])e=R
для всех М, М'еЛ и всех контекстов С[ ] с одной дырой.
3.1.2. Определение, (i) Понятие редукции на Л — это просто
бинарное отношение R на Л.
(ii) Если /?ь /?2 — понятия редукции, то R\Rz означает
R\ U Ri-
Многие важные примеры понятий редукции заданы графи­
ками частично рекурсивных функций на Л. Это, например, верно
для классического понятия редукции р.
3.1.3. Определение. Р — {((Л.Х.Л4) N, М [х : = М]) | М, N е Л}.
3.1.4. Определение. Если >------бинарное отношение на мно­
жестве X, то рефлексивное замыкание отношения >— (обозна­
чаемое через >—)—это наименьшее рефлексивное отношение,
содержащее R. Транзитивное замыкание (обозначаемое через
>—*) и совместимое замыкание (для него не вводится обозначе­
ния) определяются аналогично.
3.1.5. Определение. Пусть R — понятие редукции на А,
(1) R порождает бинарные отношения
—>R одношаговая R-редукция,
~^»R R-редукция,
—R R-равенство (называемое также R-конвертируемостью),
индуктивно определяемые следующим образом. — это совме­
стимое замыкание R:
N)^R=>M —>RN,
(2) M-+rN =>ZM ->rZN,
(3) M-+RN =>MZ -+rNZ,
(4) M-+RN =>kx.M->Rkx.N.
-»R— рефлексивное транзитивное замыкание отношения
(1) M—>R N => М -^-R П,
(2) M-^RM,
(3) М —»pH, N -»-R L =$- М —»R L.
=±R — отношение эквивалентности, порожденное отношением
~^r-
(1) Л1 —»R N =ф- Л1 R X,
(2) M=RN=>N=RM,
(3) M—rX, N =rL=> X) —rL,,
3.1. Понятия редукции 63

(ii) Чтение введенных обозначений.


М —»rN: терм М R-редуцируется к терму N (или W есть
R-редукт терма М);
Л'1—терм М R-редуцируется к терму N за один шаг-,
M=RN: М R-редуцируется к N или М R-конвертируем
к N.
Отношения ~^»R и = R вводятся индуктивно, поэтому й
их свойства можно доказывать индуктивно.
3.1.6. Лемма. Все отношения ->R, и — R совместимы.
Поэтому отношение редукции, a =R — отношение ра­
венства.
Доказательство. Утверждение, касающееся отношения
непосредственно очевидно. Утверждение об отношениях -»R
и = R получается индукцией по порождению этих отношений.
Такого рода доказательства встречаются часто. Обычно мы бу­
дем опускать подробности, но на этот раз явно выпишем дока­
зательство для отношения ~^»R.
Случай 1. M-^rN получается из M-^rN. Тогда в силу ре­
зультата, уже установленного для ->-R, мы имеем С[М]->Я С[Л/]
и, следовательно, С С [У].
Случай 2. M—»RN получается из М N. Тогда С[Л1]-»я
имеет место тривиальным образом.
Случай 3. М N — непосредственное следствие соотно­
шений М —А и L-»rN. По предположению индукции имеем
С [М] С [L] и C[L]^rC[2V]. Поэтому С [Л4] —С [Л7]. □
3.1.7. Замечания, (i) Из совместимости отношения —»R
получается (индукцией по построению терма Л4), что
W N' => м [х: = У] -»R М [х: = N'].
Для отношения ->-д это в общем случае не имеет места, так
как N, N' могут быть подставлены вместо нескольких вхожде­
ний х в М.
(ii) Понятие совместимого отношения можно непосредствен­
но обобщить на любое множество X, на котором заданы неко­
торые операции. Тогда можно говорить о равенстве и отноше­
ниях редукции. В частности, это будет сделано, когда нужно бу­
дет определить отношения редукции и равенства на комбинатор­
ных термах или некоторых обобщенных Х-термах (таких, как
помеченные термы).
(iii) Понятия редукции будут обозначаться жирными бук­
вами, например р, тр Q. Производные от них отношения будут
изображаться с помощью соответствующих светлых букв, на­
пример ->р, и т. д.
Пример. (А,х.хх) (Ку.у) (г) ->р (Ку.у) (Ку.у) z ->р (Ky.y)z ->pz.
64 Гл. 3. Редукция

Следовательно,
(Кх.хх) (Ту.у) г z,
а если нас интересует только равенство, мы ослабляем это до
(Тх.хх) (Ту.у)г = р z.
В оставшейся части этого пункта R обозначает произвольное
понятие редукции на Л.
Понятия редукции часто вводят с помощью следующей кон­
струкции: «Определим R следующими правилами свертывания
R: M-+-N при условии, что ...».
Это означает, что R— {(M,N) | •••}. Например, fl-редукция
вводится следующим правилом свертывания:
fl: (U.M)JV->M[x: = N].
3.1.8. Определение, (i) R-редекс — это терм М, такой, что
(М, N)^R для некоторого терма N. В этом случае терм N на­
зывается R-сверткой терма М.
(ii) Терм Л1 называется R-нормальной формой (R-н. ф.),
если М не содержит Д-редексов (в качестве подтермов).
(iii) Терм N называется R-н.ф. терма М, если N есть 7?-н. ф.
и М = R N. В этом случае говорят, что М имеет н.ф. N.
Процесс перехода от редекса к его свертке называется сво­
рачиванием. Вместо выражения «М есть Д-н. ф.» часто говорят
«М находится в R-н. ф.», представляя себе машину, достигшую
своего окончательного состояния.
Пример. (Тх.хх) (Ту.у) есть fl-редекс. Поэтому (Тх.хх) (Ту.у)г
не находится в fl-н. ф. Однако этот терм имеет fl-н. ф., а именно
терм г?
3.1.9. Лемма
M-+rNoM = С[Р], Ais=C[Q] и (P,Q)f=R
для некоторых Р, QeA и контекста С[ ] с одной дырой.
Доказательство получается из определения □
3.1.10. Следствие. Пусть М есть R-н.ф. Тогда
(i) ни для какого N не имеет места M--
* RN;
(ii) M-^»rN => N.
Доказательство, (i) получается непосредственно из
предыдущей леммы и определения R-н. ф.
(ii) получается из (i), так как отношение —»R —рефлек­
сивное транзитивное замыкание отношения ->л. □
3.1. Понятия редукции 65

В общем случае из VN [М —»RN => М = /V] не следует, что


М находится в R-н.ф. Достаточно взять R — р и М == й.
3.1.11. Определение, (i) Пусть >—бинарное отношение на
множестве Л. Тогда говорят, что >— обладает свойством ромба
(и пишут >— (= О), если
УЛ-1, Л1Ь М2[М>— лМ> — Л12=>зЛ13[Л-11 >— М3лМ2>— М3]],
см. рис. 3.1.
(ii) Говорят, что понятие редукции R обладает свойством
Чёрча — Россера (CR), если -»R обладает свойством ромба.
3.1.12. Теорема. Если R обладает свойством CR, то
M=rN^3Z [M-
-
* rZ nN-^rZ].

Доказательство. Применим индукцию по определению


отношения =r. Если M—RN непосредственно получается из
M-»RN, то берем Z ss W. Если М — R N непосредственно полу­
чается из N —RM, то Z можно найти по предположению индук­
ции. Если M=RN непосредственно получается из M=RL,

L=RN, to Z находится по предположению индукции и допу­


щению, что -»-R обладает свойством ромба; см. рис. 3.2. □
3.1.13. Следствие. Пусть R обладает свойством CR. Тогда
(1) если N есть R-н.ф. терма М, тоМ _^RN;
(ii) терм .VI может иметь не более одной R-н. ф.
Доказательство, (i)Пусть /И—КД1 и N есть R-н.ф.
По теореме 3.1.12 имеем M-»RZ и N ~^RZ для некото­
рого Z. Но так как N есть R-н. ф., то Z ss N в силу следствия
3.1.10 (ii). Поэтому М ~^
* R N.
(ii) Допустим, что N\, N2— две R-н.ф. терма М. Тогда
N< = R N2( = r М). По теореме 3.1.12 имеем Nt ~^RZ, N2 -»-R Z
для некоторого Z. Но тогда следствие 3.1.10 (ii) дает Ni = Z =
S N2. □
В следующем пункте будет показано, что р обладает свой­
ством CR.
Отметим, что соотношение
N ~^R N' =>М [x: = Л1] -»R M [x: = N'J
3 X. Барендрегт
6q Гл. 3. Редукция

имеет место для любого R, а соотношение


М —»R М'=>М [х: = N] ~^R М' [х: = А]
имеет место не всегда.
Поэтому полезно вводимое ниже понятие.
3.1.14. Определение. Бинарное отношение R на множестве
А называется подстановочным, если для любых М, N, А
и любой переменной х имеет место
(М,А)е7?=>(М[х: = L], N[x:=L])(=R.
3.1.15. Предложение. Если отношение R подстановочно, то
подстановочны и отношения -* R, и =R.
Доказательство. Применяем индукцию по определению
отношений ->R, -»R, —R- □
3.1.16. Предложение. Отношение р подстановочно.
Доказательство. Пусть (М,А)е0. Тогда M=(Xy.P)Q
и N = P[y:=Q]. Следовательно,
М [х: = А] = (Ку. (Р [х: = A])) (Q [х: = L]),
N[x-. = L]^P[y. = Q] [х:=Б]э
= Р [х: = L] [у. = Q [х: = £]]
по лемме о подстановке 2.1.16 и соглашению о переменных
2.1.13. Отсюда следует, что (М[х := Б], А[х := L] )е 0. □
3.1.17. Определение, (i) Пусть А — вхождение подтерма
в М, т. е. М s О [А]. Мы пишем
< m\n,

если А есть /?-редекс со сверткой А' и Л; = С [А'].


(ii) R-редукция (или R-редукционная цепочка) — это конеч­
ная или бесконечная последовательность вида
До Ai
М0-*
я •« M2->R- • ■
Mi-*
3.1.18. Соглашения, (i) о, т, ... обозначают редукции.
(ii) Редукция о из определения 3.1.17 (ii) начинается с Мо.
Если в о имеется последний член Мп, то а оканчивается тер­
мом Мп. В этом случае говорят также, что о — редукционная
цепочка из Мо в Мп (или редукция терма Мо к Мл). Если п — О
то о называется пустой редукцией и обозначается через 0:
Мо —»дМ0. Если п=#0, то говорят, что о — собственная редук­
ция, и пишут (о:)
3.1. Понятия редукции 67

(iii) Иногда в записи редукции не указывают До, Д1, ...


(iv) Мы часто пишем a: Мо-+- Mi -> •••, чтобы указать, что о
есть цепочка Мо—>~ Mi~+ ■■■
(v) Если о: M0-s----- >М„ и т: Мя->------ ?Мт, то
о Ч~ т: Мо-> ••• -> М„-> ••• —> Мт-
(vi) Если Д — вхождение в терм М 7?-редекса, имеющего
свертку Д', то через (Д) обозначается одношаговая редукция
л
М N. Иными словами,
(Д): С[Д]ЛЯС[Д'].

(vii) Если а есть /^-редукция, то ||а|| обозначает ее длину,


т. е. количество ->«-шагов в ней. Заметим, что ||о|| е
(= N U{°°).
3.1.19. Примеры, (i) Пусть Д есть /?-редекс со сверткой Д',
и пусть М ^(Хх.хх)Д. Тогда имеем
л м
Л1->/г(Л.х.хх)Д', Л4—>рДД.
(ii) Пусть из = Ъх.ххх. Тогда следующая цепочка является
бесконечной [3-редукцией:
Z4 й)з<йз
(О3(Й3---- <в3(03ш3--------- ► р ЫзЫзИзИз ^.р

(iii) В примерах (i) и (ii) мы можем восстановить по М


Л
и N терм Д, используемый в редукции М ->R N. Следующий
пример, принадлежащий Леви, показывает, что это не всегда
имеет место.
1(1х)Хр|х, I (|х) 1х.

Для любого МеЛ можно изобразить все /?-редукты терма


М связанными дугами, представляющими ->Л. Эти объекты на­
зываются «псевдодиграфами» у Харари [1969] и «направлен­
ными мультиграфами» у Боллобаша [1979]. Мы будем назы­
вать их просто графами.
3.1.20. Определение. R- (редукционный) граф терма М
(обозначаемый через G«(M) — это множество
(У е | M-^>rN},
направленное отношением —если несколько различных ре-
дексов порождают отношение Mq^-rMi, то столько же дуг
связывают Mq с М\ в Gr(M).
3*
68 Гл. 3. Редукция

3.1.21 Примеры, (i) Gp (lx) = lx-> х или просто


(ii) G₽ (I (lx)) = I (lx) => |x->x.

(iii) G&(Q) = Q

(iv) Gp (WWW), где W = Kxy.xyy, есть

(v) Gp (AIM), где M s Кх.(Ъу.уу) x, есть

(vi) Gp(co3a>3), где и3 = \x.xxx, есть • -> .


3.1.22. Определение. Пусть М е Л.
(i) Говорят, что терм М R-сильно нормализуем (и пишут
R-SN (М)), если нет бесконечных /^-редукций, начинающихся
термом М.
(ii) Говорят, что М R-бесконечен (и пишут R-oo(M)),
если неверно, что 7?-SN(Al).
(iii) Отношение R сильно нормализуемо, если (VAleA)
/?-SN(M).
3.1.23. Факт, (i) Существование р-н. ф. терма М не влечет
конечности множества Gp(M) и не следует из его конечности.
(ii) Из p-SN(Al) следует, что Gp(M) конечно и М имеет
р-н. ф., но не наоборот.
Доказательство, (i) (т^=>). Пусть юз = Хх.ххх и
М =(Ах.1) (ю3со3). Тогда М имеет н. ф. I, но Gp(A4) есть

(^) Заметим, что Gp(Q) конечно, но £2 не имеет н.ф.


3.1. Понятия редукции 69

(ii) (=>) Тривиально по лемме Кёнига.


(^Й) Рассмотрим ;Vl = (h'./)Q. Этот терм имеет р-н. ф. и
конечный р-граф

О
Однако М имеет и бесконечную Р-редукцию (обход
круга). □
3.1.24. Определение, (i) Говорят, что бинарное отношением—
(на множестве X) обладает слабым свойством ромба, если
ух, xlt х2[х>—XjAx>—х2=>Зх3[х1>£-х3ах2>£-х3]],
где —рефлексивное транзитивное замыкание отношения>—.
(ii) Говорят, что понятие редукции 7? обладает слабым свой­
ством Чёрча — Россера (WCR), если ->-R обладает слабым
свойством ромба.

В общем случае импликация WCR => CR неверна, см.


упр. 15.4.7. Однако имеется следующий результат Ньюмена
[1942].
3.1.25. Предложение. Для любого понятия редукции
SNA WCR=>CR.
Доказательство. В силу SN любой терм R-редуци-
руется к R-н. ф. Достаточно показать, что эта R-н. ф. единствен­
на. Назовем терм М неоднозначным, если М R-редуцируется
к двум различным R-н. ф. Для такого М имеет место M-^RM'
с неоднозначным М' (в силу WCR, см. рис. 3.3). Следовательно,
в силу SN неоднозначных термор не существует. □
3.1.26. Обозначения. (i) R-NF = {Л4 (= Л|Л4 нрходится
в R-н. ф.}, R-NF0 = R-NF П Л°.
(ii) Пусть ЗВ = Л; тогда если M<==rA1 для неко­
торого ЛГ е 36.
В этих обозначениях М sp Р-NF т. ц у. т., когда ДО имеет
Р-н.ф.
70 Гл. 3. Редукция

Наконец, понятие разрешимости релятивизируется к поня­


тию редукции R.
3.1.27. Определение, (i) Терм М t= Л° называется R-разре-
шимым, если (ЭР е Л) (MP =■R /).
(ii) Терм MgA называется R-разрешимым, если /?-разре-
шим некоторый замкнутый подстановочный частный случай
терма М.

3.2. Бета-редукция
В этом пункте будет более подробно изучено понятие редук­
ции р. Это понятие весьма полезно, так как, с одной стороны,

Рис. 3.4.

оно характеризует доказуемость в X, а с другой — обладает


свойством Чёрча — Россера.
3.2.1. “Предложение. М =е У -ФФ- К Н М — N.
Доказательство. (4=). Применяем индукцию по длине
доказательства равенства М = N.
(=>). Доказываем индукцией по определениям упоминае­
мых ниже отношений, что
v M = N, М-
* рЛг=>Х|-Л1 = Лг,
M=^N =>k\-M = N. □
Теперь мы дадим доказательство того, что 0 обладает свой­
ством CR. Это довольно короткое доказательство принадлежит
У. Тейту и П. Мартин-Лефу. Несколько менее короткое, но бо­
лее наглядное доказательство будет дано в § 11.1. Пункты 11.2
и 14.2 содержат другие концептуально важные доказательства
теоремы Чёрча — Россера.
3.2.2. Лемма. Пусть >------бинарное отношение на некото­
ром множестве, и пусть >----- его транзитивное замыкание.
Тогда
>—1= 0 => >—1= О-
Доказательство использует простой обход диаграмм,
подсказываемый рис. 3.4,
3.2. Бета-редукция 71

Теперь будет определено бинарное отношение —» на множе-


1
стве Л, такое, что (1) отношение —» обладает свойством ромба
1
и (2) транзитивное замыкание отношения —» есть —После
этого из леммы 3.2.2 будет следовать, что обладает свой­
ством ромба, т. е. р обладает свойством CR.
3.2.3. Определение. Дадим следующее индуктивное опреде­
ление отношения —» на множестве Л:

34 —=** М\
1
М -» М' => 2.x. М -» 2.x. М';
1 1

i 1 i
М-^М', N -» N' => (2.x.М) N-^M' [х: = N'].
ii 1

3.2.4. Лемма. Если М-» М' и N -»N', то


М [х: — [х: = N'].
1

Доказательство. Применяем индукцию по определению


отношения М—»М'.
1
Случай 1. М-»М' имеет вид М—*► М.Тогда мы должны по-
1 1
казать, что М [х: = ЛГ| -» М [х: ~ N']. Это получается индук-
1
цией по построению терма Л4, согласно следующей таблице.

М лев. часть прав, часть комментарий


X N N' в порядке
У У У в порядке
PQ Л ]Q[ ] Р[ ']Q[ '] применить предпо­
ложение индукции
Ьу.Р ьу.Р{ 1 'J то же

Случай 2. М-»М' имеет вид 2.у.Р -*■ 2.у.Р' и является не­


посредственным следствием соотношения Р^»Р'. По предпо-
1
ложению индукции имеем Р[х: = N]-»P'[x: = N']. Но тогда
1
Ку.Р [х: = Л'] ---» 2.у.Р' [х: = ЛГ'], т. е. М [х: = AQ -» М' [х: = W'].
1 i
72 Гл. 3. Редукция

Случай 3. М М' имеет вид PQ P'Q' и является непо-


I 1
средственным следствием соотношений Р-ыР', Q-&-Q'. Тогда
1 1
М [х: == TV] s Р [х: == MJ Q [х: == У]
1
-* Р' [х: = ЛР] Q' [х: = ЛР] (по предположению индукции) =
1
= М'[х: = Л.
Случай 4. М—»М' есть (ky.P)Q—» Р'[у: =Q'] и является
1 1
непосредственным следствием соотношений Р-^Р', Q-^-Q'.
Тогда
М [х: = ЛГ] s (Ку.Р [х: = АГ]) (Q [х: = Дф
—» Р' [х: — АР] [у. = Q' [х: = АР]] (по предположению индукции) =
1
== р' [у. = Q'] [х: = Л"] (по лемме о подстановке 2.1.16) =
== м' [х: = N']. □
3.2.5. Лемма, (i) Кх.М —* N влечет N ^Кх.М', где М-^М'.
(ii) MN —»L влечет либо
L = M'N', где М-»М', N-»N’,
1 I
либо
M^f.x.P, L Р'[х\ — N'], где Р-^Р', N-^N'.
1 1

Доказательство получается нетрудной индукцией по


определению отношения □

3.2.6. Лемма. обладает свойством ромба.


1
Доказательство. Применяя индукцию по определению
отношения А4—»Л4[, мы покажем, что из соотношения М -» М2
1 1
следует существование Мз, такого, что М —» М3, М2 М3.
Случай 1. М—»М{ получено из Л4 = Тогда можно взять
М3 s М2.
Случай 2. имеет вид (А.Х.Р) Q —» Р'[х: = Q']
1 1
и является непосредственным следствием соотношений Р—»Р' и
1
Q—»Q'. В силу леммы 3.2.5 возможны только следующие два
1
подслучая.
3.2. Бета-редукция 73

Подслучай 2.1. M2==(hx.P")Q", где Р-^-Р", Q —»Q". По


1 1
предположению индукции найдутся термы Р'", Q"', такие, что
имеют место Р'^»Р'", Р"-»Р"' и аналогичные соотношения
1 1
для Q', Q", Q'". Тогда в силу леммы 3.2.4 можно взять
M3SP"'[x:=Q"'].
Подслучай 2.2. М2 = Р"[х := Q"), где P—»P",Q—»Q".
1 1
Тогда, используя предположение индукции, можно снова взять
М3 = Р"'[х-.= Q'"].
Случай 3. M-»Mt имеет вид PQ—»P'Q' и является не-
I 1
посредственным следствием соотношений Р -н» Р', Q —» Q'. Сно-
1 1
ва возможны два подслучая.
Подслучай 3.1. M2 = P"Q", где Р Р", Q-»Q". Тогда,
1 i
используя очевидным образом индукционное предположение,
можно взять Л43 = P"'Q"'.
M=(\x.Px)Q

Рис. 3.5.

Подслучай 3.2. Р = (Хх.Р,), М2 Р,'[х: = Q") и Pt-»P'i,


Q-&-Q". По лемме 3.2.5 находим Р' = hx.Pf, такой, что Р\ —»Р\.
1 1
Используя очевидным образом предположение индукции, можно
взять М3 = Р\" [х: == Q'"]; см. рис. 3.5.
Случай 4. имеет вид hx.P —»■ hx.P' и является не-
I 1
посредственным следствием Р—»Р'. Тогда
соотношения
1
М2 == hx.P". По предположению индукции можно взять Л43 =?
s hx.P'". □
3.2.7. Лемма. Отношение есть транзитивное замыкание
отношения —.».
i
Доказательство. Заметим, что (для отношений, рас­
сматриваемых как множества пар)
74 Гл. 3. Редукция

Так как отношение есть транзитивное замыкание отно­


шения -> р, то тем более это так для -» и —
Следующее утверждение — знаменитая теорема Чёрча — Рос­
сера.
3.2.8. Теорема (Чёрч и Россер) .
(i) р обладает свойством CR.
(ii) M=p* ^=>3Z[Af-
pZAM- pZ].
Доказательство, (i) следует из лемм 3.2.2, 3.2.6 и 3.2.7.
(ii) следует из (i) и теоремы 3.1.12. □
3.2.9. Следствие, (i) Если терм N является р-н. ф. терма М,
то М М.
(ii) Терм М может иметь не более одной р-н. ф.
Доказательство. Применяем следствие 3.1.13. □
Мы получаем, например, что терм й (гх.хх) (кх.хх) не
имеет р-н. ф. Действительно, единственная возможная редук­
ционная цепочка имеет вид
Й->-р й->р •••,
и так как В не находится в р-н. ф., он не имеет ее вообще.
Мы часто будем применять следствие 3.2.9 аналогичным
образом.
3.2.10. Теорема, (i) Пусть М, N е Р-NF — различные термы.
Тогда М #= р М.
(ii) Теория X непротиворечива.
Доказательство, (i) Если М— р М, то М имеет две
различные н. ф. — сам М и N.
(ii) В силу предложения 3.2.1 мы имеем k}-/-M = N для М,
N, удовлетворяющих условию из (i). □
3.2.11. Соглашение. Понятие редукции р будет использо­
ваться на протяжении всей книги. Поэтому для упрощения
записи мы часто будем опускать индекс р. Иными словами,
вместо
->р, —»р, =р, Gp(M), Р-NF, Р-оо(М) и p-разрешимо
мы будем писать
—, G(M), NF, оо (М) и разрешимо.
В этих обозначениях мы имеем
М = N <=?■ М =?= N,
3.3. ri-редукция 75

что корректно, так как нам вообще хотелось бы не писать пре­


фикс ХН. Новое понятие разрешимости совпадает со старым
в силу предложения 3.2.1.
Однако запись ец не будет заменена на е по очевидным
причинам.

3.3. п-редукция
Другое важное понятие редукции таково.
3.3.1. Определение, (i) ту. Кх.Мх-^М при условии, что
x^FV(M), иными словами,
Л = {(Хх.Мх, М)\х^ FV(Af)}.
(ii) рт) = р (J il-
Смысл введения ргуредукции заключается в том, что она
аксиоматизирует доказуемое равенство в экстенсиональном
Х-исчислении и обладает свойством CR.
3.3.2. Предложение. Af=(3T)Af<=>X'nl-Af=jV<=>X-|-ex#h-A4=./V.
Доказательство. По теореме 2.1.29 достаточно дока­
зать лишь первую эквивалентность.
(<=) Применяем индукцию по длине доказательства.
(=>) Очевидно, что М N => Xt] Н М = N. Теперь нужный
результат следует из того, что =зп—это отношение равенства,
порождаемое отношением ->рп, а доказуемость в Хт| есть отно­
шение равенства. □
3.3.3. Предложение. Отношение ц подстановочно.
Доказательство. Очевидно, что (Xx.Afx, Л1)ец =>
=> (Хх.М'х, №') е ту где М' = М[у : = MJ, так как по соглаше­
нию о переменных х ф. FV (N}. □
Чтобы показать, что Рц обладает свойством CR, мы приме­
ним метод Хиндли [1964] и Розена [1973].
3.3.4. Определение. Пусть >—, и >—2 — два бинарных от­
ношения на множестве X. Тогда говорят, что >—j и >—2 ком-
мутируют, если
(Vx, xb х2еХ)[х>—iXjAx>—2х2=>(Зх3еХ)[х1>—2х3лх2>—!X3]],
см. рис. 3.6.
Заметим, что соотношение >—1= О имеет место т. и т. т.,
когда >— коммутирует само с собой.
76 Гл. 3. Редукция

3.3.5. Предложение (лемма Хиндли — Розена), (i) Пусть


>—! и >—2 — два бинарных отношения на множестве X. До­
пустим, что выполнены следующие условия:
(1) > j 1= О» > 2 О •
(2) >—| коммутирует с >—2.
Тогда (>—i U >—2)‘ t= О.
(ii) Пусть R2— два понятия редукции. Допустим, что
(1) Rx,Rt обладают свойством CR;
(2) коммутирует с —»r2.
Тогда R1R2 обладает свойством CR.
Доказательство получается путем обхода диаграммы,
подсказываемого рис. 3.7.

1 2 2
1 2 ! 2! 2 1 2|
; 1 1 2 1 2 1
1 2 1 1
1 1 j 11 I' 11
-Хз L L- 1 2 1 2 1
1
Рис. 3.6 Рис. 3.7

(ii) следует из (i), так как -^r,r2 = (-


*7?, *•
U-»«,) □
3.3.6. Лемма. Пусть >—ь >—2 — два бинарных отношения
на множестве X. Допустим, что

Тогда >—* и >—2 коммутируют.


Доказательство получается простым обходом диа­
граммы. □
3.3.7. Лемма. Отношение rj обладает свойством CR.
Доказательство. Отметим, что -*■„ = (“*-4) Поэтому
в силу леммы 3.2.2 достаточно будет доказать, что обла­
S.3. х\-редукция 77

дает свойством ромба. В этом доказательстве -> будет обозна­


чать ->1}.
С помощью индукции по определению отношения M->Mt
мы покажем сейчас, что из М-+М2 следует существование об­
щего ->-редукта М3 термов Mi и М2.
Если Mi === М, то можно взять М3 зз М2. Если М2 = М или
M2=Mi, то можно взять M3==sMi. Поэтому мы будем пред­
полагать, что Mi ф. М, М2 М, М2 ф. Mi.
Случай 1. M->Mi имеет вид '/.х.Рх—гР. Тогда М2 = Хх.Р'л,
где Р-+Р'. Берем М3 = Р'.

С[Хх.Рх]

С'[Р]

Рис. 3.8

Случай 2. M->Mi есть ZP->~ZP' и является непосредствен­


ным следствием соотношения Р--Р
* ’.
Подслучай 2.1. М2 = Z'P и Z->Z'. Берем М3 == Z'P'.
Подслучай 2.2. М2 =з ZP" и Р-+Р". По предположению ин­
дукции найдется Р'", такой, что Р'->Р'", Р"-+Р"'. Теперь бе­
рем М3 = ZP"'.
Случай 3. M->Mi есть PZ-+P'Z. Этот случай рассматри­
вается так же, как случай 2.
Случай 4.| M-^Mj есть кх.Р -+\х.Р' и является непосред­
ственным следствием соотношения Р->Р'.
Подслучай 4.1. М2^ Кх.Р" и Р-+Р". Берем M3s=hx.P"',
где Р'" находится по предположению индукции.
Подслучай 4.2. Р = Рох, М2 Ро. Тогда Р' es РР'йх, и мы
можем взять М3 =Р'О. □
Другое доказательство. Все, написанное выше, пре­
красно, но что происходит в действительности, можно увидеть
на рис. 3.8.
3.3.8. Лемма. коммутирует с —
78 Гл. 3. Редукция

Доказательство. В силу леммы 3.3.6 достаточно пока­


зать следующее:
М —---------- MtI
I
I
I

I
I
I
м2------------м3
=?р
И снова происходящее в действительности можно увидеть
на следующих трех рисунках.

Следующее утверждение было впервые установлено в книге


Карри и Фейса [1958] с помощью более сложного доказатель­
ства.
3.3.9. Теорема (свойство Чёрча — Россера для рт]-редукции).
(i) Понятие редукции рт) обладает свойством CR.
(ii) М = рпЛ1 =>- 3Z [М -»рт) Z л N -»рт1 Z].
Доказательство, (i) следует из лемм 3.3.7, 3.3.8 и пред­
ложения 3.3.5.
(ii) получается из следствия 3.1.12. □
3.3.10. Следствие, (i) Если терм N есть $ц-н.ф. терма Мг
то М —N.
(ii) Терм М имеет не более одной рт]-н. ф.
Доказательство получается с помощью след­
ствия 3.1.13. □
3.4. Обзор части III 79

Следствие 15.1.5, которое будет доказано позже, утверждает,


что
Л4 имеет р-н.ф.ч=>М имеет Рц-н. ф.
3.3.11. Теорема, (i) Пусть М, iVepiyNF— различные тер­
мы. Тогда М
(ii) Теория X 4- ext непротиворечива.
Доказательство аналогично доказательству тео­
ремы 3.2.10. □
Напомним, что в силу следствия 10.4.3 для двух различных
М, N е Рц-NF мы имеем даже МФ N.
Следующее утверждение настолько очевидно, что зачастую
его даже не формулируют явно: в процессе Рц-редукции не соз­
даются свободные переменные.
3.3.12. Предложение. Пусть M—»^N. Тогда
xe=FV(W)=^x€=FV(M).
Доказательство. Применяем индукцию по определению
отношения □

3.4. Обзор части III


В главах 11, 12 и 13 рассматриваются главным образом
p-редукция и Х-термы. В главе 14 изучается редукция на мно­
жестве так называемых помеченных Х-термов. Результаты при­
меняются как к самой p-редукции, так и к анализу нескольких
Х-моделей в части V. В главе 15 с целью анализа Х-теорий,
отличных от X, изучаются другие понятия редукции.

Гл. 11. Фундаментальные теоремы


11.1. Теорема Чёрча — Россера
Хотя теорема Чёрча — Россера уже была доказана в § 3.2, здесь
будет дано более прозрачное доказательство. Построенный для
этого аппарат используется в оставшейся части главы.

11.2. Конечность разверток


Определение. Пусть М — терм, а — некоторое множество
редексов в М. Развертка терма М (относительно множества
SP)— это редукция, начинающаяся с М, в которой сворачи­
ваются только редексы из и их «остатки».
Теорема. Для М и с указанными свойствами все раз­
вертки М конечны. Все максимальные развертки терма М окан­
чиваются одним и тем же термом.
80 Гл. 3. Редукция

С использованием этой теоремы дается новое доказательство


теоремы Чёрча — Россера. В действительности доказательства
из § 3.2 и § 11.1—частные случаи этого нового доказательства.
11.3. Теорема о консервативности для LI
Определение. 1-редекс — это терм (Tx.M)N, такой, что
xeFV(M).
д
Теорема. Пусть M-+N, где Д есть I-редекс. Тогда
оо (Л4) => оо (jV) .
Следствие. Если TI-терм. имеет н.ф., то и каждый его под­
терм имеет н. ф.
11.4. Стандартизация
Определение. Редукция о: М -» N называется стандартной,
если сворачивания делаются слева направо, т. е. редекс никогда
не сворачивается, если он — остаток редекса, расположенного
левее некоторого уже свернутого редекса. Например, редукция
I ((Ку.уу) а) -> I (аа) -> аа
не является стандартной, в то время как редукция
I (&у.уу) а) (Ку.уу) а->аа
стандартна.
Теорема. Если M—»N, то имеется стандартная редукция М
к N.
Дано короткое доказательство этой теоремы с использова­
нием § 11.2.
11.5. Упражнения

Гл. 12. Сильно эквивалентные редукции


12.1. Редукционные диаграммы
Теорема. Имеется канонический способ получения по дан­
ным о: М —» Nit т: М -» N2 редукций т/о и о/к, таких, что
М--------- ------ ’
I
I
I
т 1 х/в
I
I
X'
V V
^2
» /у,
<з/г
3.4. Обзор части III 81

Редукция т/о {соответственно с/т) называется проекцией


редукции т вдоль а (соответственно с вдоль т).

12.2. Сильные варианты CR и FD!


Определение. Пусть а: М —» /V, t:M-^»N. Говорят, что а
сильно эквивалентна т (и пишут ст^т), если о/т = т/о = 0
(пустая редукция).
Теорема.
М---------------
I
I
I
I
I
1
X/ Ч/
v хк
L--------------- » Р

и обе редукции МкР сильно эквивалентны.


Теорема. Пусть дан терм М и зафиксировано множество FF
его подредексов. Тогда все максимальные развертки терма М
сильно эквивалентны.

12.3. Сильный вариант теоремы стандартизации


Теорема. Пусть c:M-^N. Тогда имеется единственная
стандартная редукция cs = о.
12.4. Упражнения

Гл. 13. Редукционные стратегии

13.1. Классификация стратегий


Определение, (i) Редукционная стратегия — это отображе­
ние F: Л->А, такое, что M—»F(M) для любого М е Л.
(ii) F — одношаговая стратегия, если M^-F(M) для лю­
бого М, не находящегося в н. ф.
(iii) Стратегия F рекурсивна (соответственно эффективна),
если F рекурсивна (соответственно легко вычисляется) после
подходящего кодирования термов натуральными числами.

13.2. Эффективные нормализующие и кофинальные стратегии


Определение. Стратегия F называется нормализующей, если
М имеет и. ф. => Bn(Fn{M) имеет н.ф.).
82 Гл. 3. Редукция

Теорема. Существует эффективная нормализующая одноша-


говая стратегия.
Определение. Стратегия F кофинальна, если для всех М,
N е А имеет место
М N => Зп (N Fn (М)),
т. е. {Fn(M) \п е N) кофинальное (G (Af), —»).
Теорема. Существует эффективная кофинальная стратегия.
13.3. Рекурсивная CR-стратегия
Определение. CR-стратегия — это стратегия F, для которой
M = N=$-3n, m(Fn(M) = Fm(N)).
Теорема. Существует эффективная CR-стратегия.
13.4. Эффективная зацикливающая стратегия
Определение. Стратегия F называется зацикливающей, если
оо (М) => М F (Af) F2 (М) ...
фф =&ф =£ф
— бесконечная редукционная цепочка.
Теорема. Существует эффективная зацикливающая стра­
тегия.
13.5. Оптимальные стратегии
Определение, (i) Пусть F, G — нормализующие стратегии.
Говорят, что G t-лучше, чем F, если
(УМ ер NF) (pn[F"(M) есть н. ф.] pn[G"(M) есть н. ф.]),
но обратная импликация не имеет места.
(ii) Одношаговая стратегия F t-оптимальна, если она нор­
мализующая и невозможна одношаговая стратегия G, /-лучшая,
чем F.
Теорема. Невозможна рекурсивная t-оптимальная одношаго­
вая стратегия.

13.6. Упражнения
Гл.14. Помеченная редукция
14.1. Сильная нормализация
Множество помеченных А-термов получается добавлением
константы _L и меток e'N к определению обычных А-термов.
Помеченная редукция отличается от обычной А-редукции толь­
3.4 Обзор части /// 83

ко тем, что метки убывают, а редексы с меткой 0 сворачиваются


следующим образом: (kx.M)°N -+(М[х ■.= _1_])°.
Теорема. Все помеченные редукции, начинающиеся тер­
мом М, заканчиваются.

14.2. Приложения
Использование результатов § 14.1 позволяет дать очень ко­
роткие доказательства свойств CR, FD и теорем о стандартиза­
ции. Доказывается и несколько новых результатов.
14.3. Непрерывность
Следующая теорема имеет несколько приложений. Она до­
казывается с использованием теоремы о сильной нормализации
для помеченной редукции.
Теорема непрерывности. Определим f: Л->Л, полагая
f(M)=C[M] для некоторого контекста С[ ]. Тогда f непре­
рывна в топологии деревьев на Л.

14.4. Последовательность вычислений и устойчивость


Доказывается, что вычисления в Х-исчислении — существен­
но последовательные. Отсюда вытекает такой результат.
Теорема. Пусть Р ~ Q т. и т. т., когда ВТ (Р) = ВТ(Q) . Пусть
ЗМ17, P,VM
FMMt2^i3 ~ Ei> ЕМ21ММ23 ~ Рг> РЛ4з1Л4з2Л4 ~ Р3.
Тогда
(.FM1M2M3 ъ Рj (/</ Р2 ~ Р3)).
Если предположить еще, что Pi, Р2, Рз находятся в н. ф., то
~ можно заменить на = р.

14.5. Упражнения
Гл.15. Другие понятия редукции
15.1. $ц-редукция
Теорема. МеЛ имеет р-н. ф. т. и т. т., когда М имеет Рг)-н. ф.
Следствие. Терм М ^-разрешим т. и т. т., когда М ртр/шз-
реилим.
Теорема (об откладывании трредукции). Если
то для некоторого терма L
М L -»п N.
84 Гл. 3. Редукция

15.2. $т\&-редукция
Определение. Q-редукция определяется правилом свертыва­
ния
(2: М->£2, если М неразрешим и =0=(2.
Теорема. $ц&-редукция обладает свойством CR.
Теорема. М N => BL,, L2 (М -»8 Ц L2 -»n N).
Теорема. Пусть о — кофинальная редукционная цепочка
в графе Gg(M), такая, что бесконечно много термов из а нахо­
дятся в t|Q-h. ф. Тогда а кофинальна в G^afM).

15.3. Дельта-редукция
Дельта-редукция — это не одно конкретное понятие редук­
ции, а целый их набор. Они вводятся для того, чтобы стали оп­
ределимы некоторые внешние функции <р на множестве А. Это
достигается добавлением новой константы б и постулированием
соотношения
<р(М).
б(М)-
*
Вот типичный пример.
Определение. Добавим в определение множества А кон­
станту бс- Определим на расширенном множестве термов сле­
дующее понятие редукции:
бсЛШ->Т, если М замкнут и находится в 0бс-н. ф.,

!F,
6cMAf-
* если М, N замкнуты, различны и находятся в
рбс-н. ф.
Теорема. 0бс обладает свойством CR.
Некоторые понятия дельта-редукции неожиданным образом
не обладают свойством CR.
Теорема. Добавим в определение множества А константы
б, е. Определим на расширенном множестве термов понятие
редукции с помощью дополнительного соотношения
6: бММ^е.
Тогда 06 не обладает свойством CR.

15.4. Упражнения
Этим завершается обзор части III.
3.5. Упражнения

3.5. Упражнения
3.5.1. Нарисовать графы G(M) для следующих термов:
(i) М = (Zx.lxx) (Лх.1хХ);
(ii) М s (Лх.1 (хх)) (Лх.1 (хх));
(iii) М = Wl (WI), где W ss Кху.хуу,
(iv) М KIQ;
(v) М = II (III).
3.5.2. Найти термы, имеющие следующие 3-графы:

Обобщить на произвольное п.
(ii)

3.5.3. Построить терм Л10, такой, что


м0-Mi М2 М3 —... .
86 Гл. 3. Редукция

*3.5.4. Пусть М = (kbxz.z(bbx)) (},bxz.z(bbx))x. Построить G(Af). Уста­


новить, что для каждого п этот граф имеет n-мерный куб в качестве под­
графа. [Указание: Систематически вводить сокращения.]
*3.5.5 (Бём). Нарисовать G(M) для следующих графов:
(i) М = Н1Н, где Н es Хху.х (Xz.yzy) х:
(ii) М n LL\, где L ез Кху.х (уу) х:
(iii) М =э PQ, где Р = Xu.ulu, Q = kxy.xyl (ху).
*3.5.6. (Виссер), (i) Показать, что имеется (по существу) единственный
терм М, для которого G(M) имеет вид

(ii) Показать, что нет терма М, для которого G(M) имел бы вид

[Указание: Рассмотреть относительные положения редексов.]


3.5.7. (i) Показать, что если G, и G2 суть 0-графы некоторых термов,
то и их декартово произведение является 0-графом некоторого терма (опре­
деление см., например, у Харари [1969]).
(ii) Если G есть 0-граф некоторого терма, то 0-графом некоторого терма
будет и графОН—> Ki, полученный добавлением одной точки, находящейся
ниже любой точки графа G.
3.5.8. Показать, что если >~i и >—2 — два коммутирующих бинарных
отношения на множестве X, то >—( и >—2 коммутируют.
3*5.9. Пусть R — понятие редукции. Показать, что если имеет место
Я-SN (М) и каждый R-редекс имеет лишь конечное число сверток, то граф
G R (М) конечен.
3.5.10. (Хиндли, Россер, Степлз). (i) Построить пример бинарного от-
ношечня4 >— на множестве X. такого, что
(1) >— обладает слабым свойством ромба;
(2) > — * не обладает свойством ромба
(ii) Построить отношение, как в п (i), но с дополнительным свойством
(3) множество X конечно.
3.5.11. Будем писать М | N, если L—» М и L -» N для некоторого тер­
ма L. Доказать, что
(i) KlKfKIS,
(ii) (kx.ax) b (ky.yb) а,
(iii) (Xx.xc) c f (Ax.xx) c,
(iv) ГХх.Ьх) c f (Xx.x) be,
(v) (Kx.bx (bx)) c f (Xx.xx) (be),
(vi) (Xx.bx) c f (kx.x) (be).
"(vii) (Плоткин). (Xx.bx.(bc)) c 'I' (Xx.xx) (be).
Получить отсюда, что «перевернутое свойство СР» не имеет места.
3.5. Упражнения 87

3.5.12. (Клоп). Пусть ЭД — (X, >—), где >— есть бинарное отношение.
Положим по определению
(1) х >~п у, если 3X1 ... х„ (х = Х1 >~ х2 >- ... >— хп = у),
(2) х >—* у, если Зп (х >—пу),
(3) 2l^=WCR(n, т), если
ух, X,. х2 р >-„ х1 Л х >—m х2 => gx3 pi >—’ х3 Л х2 >—* x3j].
(4) Скажем, что множество В = № замкнуто, если *
(n, т)еВ"
й-(т, п) е В и (n + 1, т) е В => (п, т) е В.
(5) WCR(SI) = {(п, т) | й|= WCR(n, т)}.
(i) Показать, что множество WCR(81) замкнуто и что
>—*[= <ф> -фф- WCR (Я) = N2<=>WCR (21) бесконечно-фф-Vm ((1, п) е WCR (Й))-
(ii) Пусть В = № — конечное замкнутое множество. Построить пару
й = (X, >—), такую, что WCR(®) = В.
3.5.13. Пусть R — понятие редукции, такое, что если N есть /?-н. ф. терма
М, то М N- Показать, что любой терм имеет не более одной R-n. ф.
3.5.14. (Д. Пеле, Клоп). Положим по определению
SN0 = {М (= Л | SN (Л1)},
SNn+i = {Л4 е Л | (уХ е= SN„) (.MN <= SN„}-
Показать, что SN0 J SNi = SN2 = ... .
3.5.15. Пусть R — понятие редукции. Будем писать хеяЛ4, если
(УХ = д М) X е FV (N).
Заметим, что если х М и х ф FV (X), то М У=Л N.
(i) Показать, что если R обладает свойством CR и не создает новых
переменных (т. е. М —»R N =>PV (X) = FV (Л4)), то х т. и т.т., когда
УХ [М-R N =ф х е= FV (X)]
(ii) Пусть Ах = кр.ррх, Вл = АЛАХ. Показать, что Вх =^рт| By для х&у.
Глава 4
Теории

4.1. Ламбда-теории
Ламбда-теории — это непротиворечивые расширения Х-исчис-
ления, замкнутые относительно выводимости. Они изучаются и
потому, что сами представляют интерес, и ввиду их приложе­
ний к обычному ^.-исчислению.
Напомним, что (замкнутое) равенство — это формула вида
М — N (где 44, А е А0). Если — множество равенств, то тео­
рия получается добавлением равенств из fZ" в качестве
новых аксиом к правилам и аксиомам Х-исчисления.
4.1.1. Определение. Пусть д~— множество замкнутых ра­
венств.
(i) Через fZ"+ обозначается множество замкнутых равенств,
доказуемых в теории X
(ii) называется ^-теорией, если непротиворечиво и
= д~.
В силу следствия 2.1.38 как X, так и Хт] являются X-тео­
риями. :
4.1.2. Замечания, (i) Так как X содержит правило |, любая
Х-теори^ fZ" замкнута относительно правила § и, следовательно,
Н 44 = N j— Хх.44 = kx.N. Импликация получается
из равенства (Хх.44) х = М, содержащегося в
(ii) В силу (i) принятое в 4.1.1 ограничение замкнутыми
равенствами несущественно.
(iii) Очевидно, что Con (^~) <=> X 4~ У Т = F.
Для Х/-исчисления мы имеем Con (£Г) <=> X + 1Z * |-/-1 = S; это
следует из теоремы Бёма 10.5.31 для X/.
(iv) Каждая Х-теория отождествляется с множеством дока­
зуемых в ней замкнутых равенств. В частности, X = {44 = А|М,
Л''еЛ°иХНМ = У}.
4.1.3. Предложение. Пусть есть К-теория. Тогда
(i) ST\-M = M'=>g~^C[M]=C[M'],
(ii) °Г Е М = М’, °Г н N = N' =>
=> °Г Ь М [х : = А] = М' [х := А'].
4.1. Ламбда-теории 89

Доказательство, (i) Применить индукцию по построе­


нию С[ ].
(ii) Пусть ТгМ = М'. Тогда в силу (i) имеем
Т Н (Хх./И) N — (кх.М') N, откуда
М[х:= А] = Mz[x: = N].
Если, кроме того, верно 3~ Н N = N', то в силу (i)
ST М'[х :== Л7] = М'[х : = Л7'], и доказательство завершено.
4.1.4. Обозначения. Пусть 3~ — некоторая Х-теория.
(i) Т Н М — N обозначает 1 Н М = N. Это записы­
вается также в виде М = > N.
(ii) ?Г + М = N обозначает (iTUpM = A})+.
(iii) {Гц обозначает (2л] + ^~)+-
(iv) Если ЯГ = ({Го)+, то говорят, что ЯГ аксиоматизировано
множеством {To­
ly) Будем записывать утверждение (\/N =& M)(x<sFV (N)
в виде х<=сУ М; см. упр. 3.5.15.
(vi) М X обозначает (ЗЛГ А4) (N е 36).
(vii) 1 = Хху.ху. Это цифра 1 в системе Чёрча.
4.1.5. Лемма. Для любой ^-теории имеет место {Гх\ = {Г+
+ (I = О-
Доказательство. Очевидно, что Хц 1-1 = 1, откуда
<Ут||—1 = 1. Для доказательства обратного включения заметим,
что
к + (| = 1) И 'Ху-Му = 1М = 1М = М,
если у ф FV (М).
Следовательно, X, + (I — 1) — Лщ. □
Важная Х-теория получится, если, следуя предложению
2.2.14, мы отождествим все неразрешимые термы.
4.1.6. Определение, (i) 3@o={M = N\M, N е А0 неразре­
шимы} .
(ii) ^ = Ж0+.
В § 16.1 непротиворечивость систем 36 и <Жг) будет доказана
с помощью свойства CR для подходящего понятия редукции.
В гл. 19 будут даны теоретико-модельные доказательства этих
фактов.
Хотя все теории
X, Хт|, Зв, Звх\
являются ^.-теориями, в общем случае импликация
Con (ЯГ) => Con (^~ц)
90 Гл. 4. Теории

не имеет места; см. следствие 15.3.7. Если полуосмыслена


(это понятие определяется ниже), то импликация все же имеет
место; см. следствие 17.1.2
4.1.7. Определение. Пусть д' есть Х-теория.
(1; Говорят, что рекурсивно перечислима (р.п.), если
после кодирования равенств натуральными числами д~ перехо­
дит в рекурсивно перечислимое множество.
(ii) ST осмысленна, если . •
(iii) д~ полуосмысленна (п.о.), если она не содержит равен-
ства между разрешимым и неразрешимым термом.
Очевидно, что к и Ц — р.п теории. Более того, 1 и -■
Xi) — п. о. теории. Это будет доказано в § 17.1.
Напомним, что MikN обозначает ПСоп(.А4 = А). Выраже­
ние М N обозначает ПСоп (1/ -|- М = N).
4.1.8. Лемма, (i) Пусть К00-— неподвижная точка комбина­
тора К. Тогда I # К°°.
(ii) (Якопини [1975]). Пусть аз = ^х.ххх и й3 =®3w3. ’
Тогда I й3.
Доказательство, (i) Заметим сначала, что К°°х —
= КК°°х = К°°. Следовательно,
| = К°° н М = IA1 = К°°М = К°° = К°°А = W = N.
(ii) Заметим, что Q3 s ®з®з = ®3и3ш3 sh й3®3. Следова­
тельно,
| == 423 р- | = Q3 = £J3co3 = |(о3 = м3.
Так как и ®3 — различные |3т)-н. ф., то |#/<о3 по теореме
Бёма для 1/ и теореме 10.5.31. Таким образом, доказательство
закончено. □
4.1.9. Следствие. осмысленна => 5Г полуосмысленна.
Доказательство. Допустим, что д~ не является п.о.,
т. е. для некоторого разрешимого терма М и неразрешимого
терма N мы имеем д~ Н М = N. Переходя, если нужно, к замы­
каниям, мы можем считать, что М, N ^ А0. Следовательно,
MP = I, a NP все еще неразрешим для некоторых термов Р.
Поэтому
3$ NP = □,
где □ есть К“ или Й3 (очевидно, что □ неразрешим). От­
сюда следует, что
= V Р- I = MP = NP = □
и потому противоречива в силу леммы 4.1.8, что дает про­
тиворечие. □
4.1. Ламбда-теории 91

Правила
Правило экстенсиональности (ext) и правило £ были введены
в гл. 2:
ext: Мх = Nx, х У FV (MN) => М = N.
l:M = N =>kx.M = Xx.N.
Следующие правила вводятся для изучения моделей, цели­
ком состоящих из интерпретаций замкнутых термов.
4.1.10. Определение, (i) ы-правилом называется следующее
правило:
ы: (VZe=A°)(MZ = NZ)=>M = N.
(ii) Правило термов — это правило
tr: (VZ e= A0) (MZ = NZ) => Мх = Nx
для произвольной переменной х.
4.1.11 .Определение. Пусть есть Х-теория.
(i) Говорят, что замкнута относительно ы-правила (и пи­
шут У Н о), если
(VZ е= A0) (Т Н MZ = NZ) => Т Н М = N.
(ii) Аналогично определяется ST Н R. для других правил /?.
Отметим, что ?Г Н j верно по определению для любой Х-тео-
рии 3~.
(iii) Говорят, что экстенсиональна, если ?Г Н ext.
4.1.12. Лемма, (i) Н -<=> Н tr и Н ext.
(ii) ST I- ext <=> I = 1 <=> ST = STx\.
Доказательство тривиально, (i) (<£=). Имеем
(VZ e= А0) (°Г H MZ = NZ) =>
=► у H Mx — Nx (в силу tr, х — новая переменная) =>
=>У Н М = N (в силу ext).
(^)-
tr: (VZ е= А0) (У Н MZ = NZ) =>
=> У Н М = N (в силу со) =$- У Н Mx = Nx.
ext: Я" Н Мх — Nх (где х — новая переменная)=►
=»У Н MZ — NZ (для всех Z е Аи в силу
предложения 4.1.3. (»))=►
=ф- У Н М = А (в силу ®).
(ii) По лемме 4.1.5 и теореме 2.1.29. □
92 Гл. 4. Теории

4.1.13. Обозначение. Для ^-теории д' и правила R обозна­


чим через д' + R или d~R множество
{M = N\M, АеД° и Х + « + M = N},
понимаемое очевидным образом.
В общем случае d~R не обязано быть Х-теорией: след­
ствие 15.3.7 показывает, что для некоторой Х-теории д' имеет
место ПСоп (£/">]).
4.1.14. Определение. Пусть /?° обозначает правило R, огра­
ниченное замкнутыми термами. Например, ех/° есть правило
Fx = F'x, F, F'e=A° и x<£ FV(PF') => F = F'.
4.1.15. Предложение. Пусть д' есть ^-теория. Тогда
(i) (Хиндли и Лонго [1980]) д' Н д' Н <в;
(ii) д' Н tr,
(iii) д' ext°#d~ ext.
Доказательство, (i) Импликация ф тривиальна. До­
кажем =£-. Допустим, что д' Н <в°, и для произвольных М,NgA
предположим, что
(1) (VZ е= A0) (д' I- MZ = NZ).
Пусть (x} = FV(A4A). Тогда М^М(х), N = N (х) и
(ур е= A0) (VZ «= А0) (д~1- m(p)z = N (р) z) (в силу (1)) =>
=> (у~Р <= А0) (д' Н m(p) = N (р)) (в силу ®°)=Ф-
=> (ур е= А0) (д~ Н (zx.M (х)) Р = (хх.А ( х)) Р=>
^д~ I- Хх.Л! (х) = А.Х.А (х) (в силу ®°) =>
v =>^-НЛ1 = А.
(ii) Доказывается аналогично п. (i).
(iii) В упражнении 16.5.2 показано, что дб Н ext°, но дб\/-
У- ext. □

Модели, из термов
Хотя модели подробно рассматриваются в гл. 5, полезно
ввести уже сейчас так называемые модели из термов. Они со­
стоят из множества (замкнутых) Х,-термов, рассматриваемых
с точностью до некоторой Х-теории д', и отражают свойства
этой теории.
4.1.16. Определение, (i) Комбинаторная алгебра — это
структура
= <Х, -, s>,
4.1. Ламбда-теории 93

такая, что Card (X) > 1 и в 2)1 имеют место равенства kxy = х,
sxyz — xz(yz).
(ii) Такая структура называется экстенсиональной, если
(Ух(ах = Ьх))-+а = Ь.
4.1.17. Определение. Пусть S'" —некоторая Х-теория.
(i) Модель из открытых термов (или просто модель из тер­
мов) для fT-— это структура
= [К]гг, (Sk),
где для М, N е А выполняются следующие условия:
н M—N, [M]#={Ns=A.\M=ff N},
Xj=& = {[Af]iz |M S A}, [MJy • [AJy = [MA1]^.
(П) Аналогичным образом определяется модель из замкну­
тых термов
2)1° (У) = (Аи/ = .у, •, LKJez, [S>>.
4.1.18. Предложение. Для любой h-теории 2Г имеют место
следующие утверждения:
(i) 2Н(£7”) и W°(£T)—комбинаторные алгебры.
(ii) °Г ext -<=>-W\&~) экстенсиональна.
(iii) ы<=^Я№(£7~) экстенсиональна.
Доказательство, (i) Замечаем, что [SJ^z, [К]^ е 2)1 (£7~)
удовлетворяют аксиомам для s и k. То же верно для 24° (£Г).
(ii) (=Н Пусть [А]47 е 2)1(39 и
(Va е= 2)1 (<Г)) ([F]y а = [F'\& а).
В частности, для новой переменной х
IFte (х</ ] = [F']iz kk => [FxJez = [F'x]# H Fx = F'x=>
=>ZT H F = F' (так как S7~ h- ext) => (Fj# — [F']#.
(ч=). Пусть для некоторой новой переменной х
Г\- Fx = F'x.
Тогда
ZT FZ = F'Z (для всех Z е А) =>
=НЛгг \.Z}ff = [/'}# [2]г/ (для всех[Z],у е %Я(&~))=>
=^[F]s/ = [F'Jy (так как 2)1 (2Г) экстенсиональна) =>
=>£Г F =F'.
(iii) (=>) доказывается так же, как в п. (ii).
(<=) Так же как это сделано в п. (ii), можно пока­
зать, что Д~\- <в°. Но тогда в силу предложения 4.1.15 (i) имеем

94 Гл. 4. Теории

Замечание. В общем случае


*-
ПТ' ext тФ®1°(£Г) экстенсиональна.
Действительно, в § 17.3 будет доказано, что Aq I— ext, но
со-правило было введено для изучения этой ситуации.
4.1.19. Определение, (i) Пусть — некоторая A-теория. Ка­
ноническое отображение
Ф^: Л->Ж (ST)
определяется соотношением (М) = [М]&-.
(ii) Если 3~ 1, Т2 суть A-теории, причем то кано­
ническое отображение

определяется соотношением = [Л4]^2.


(iii) Аналогичным образом определяются канонические
отображения
Ф^:Л0->24°(^) и ф^г:2Я0(^"1)-^ЭД0(^"2).
4.1.20. Лемма. Для каждого из канонических отображений
Ф, ф° имеет место следующая коммутативная диаграмма:

Доказательство тривиально. □
Эти канонические отображения будут использованы для
того, чтобы перенести топологии, определенные на ЗИ(Х), в мо­
дели из термов.
Ламбда-теории — это в действительности невырожденные
отношения конгруэнтности на 24(A). Следующее замечание по­
казывает, что они ведут себя хуже, чем можно было ожидать.
4.1.21. Замечание. Комбинаторные алгебры (включая три­
виальную одноэлементную структуру как вырожденный случай)
образуют алгебраическое многообразие. Такое многообразие
называется мальцевским, если для любых двух отношений
конгруэнтности 1, ~2 на структуре рассматриваемого типа
имеет место равенство = ~2-~, (где • обозначает
операцию }множения для бинарных отношений). В упр. 16.5.8
показано, что комбинаторные алгебры не образуют мальцев-
ского многообразия.
4.2. Обзор части IV 95

Полнота теорий
4.1.22. Определение. Эквациональная теория называется
полной по Гильберту — Посту (сокращенно HP-полной), если
для любого равенства М = N в языке теории ЯГ
или ЯГ |- М = N, или ЯГ + (М = N) противоречива.
Это понятие применимо, в частности, к Х-теориям. НР-пол-
ные теории соответствуют максимальным непротиворечивым тео­
риям в теории моделей для логики первого порядка. Отметим,
однако, следующее различие. Если 91— структура первого по­
рядка, то Th (91)— максимальная непротиворечивая теория. Но
если 2И, к примеру, комбинаторная алгебра, то теория
Th(2K) = {M = N\3Jt[=M = N, М, Аб=А°)
не обязательно HP-полна. Например, Th(2R(X)) = X, и у этой
теории много собственных расширений.
По лемме Цорна любую Х-теорию можно расширить до
HP-полной теории. В § 17.2 будет доказано, что 3$ имеет есте­
ственное единственное HP-полное расширение 3№*.

4.2. Обзор части IV


Гл. 16. Осмысленные теории
В этой главе рассматриваются Х-теории, отождествляющие
все неразрешимые Х-термы.

16.1. Теория Эв
Непротиворечивость теорий 36 и З&ц устанавливается не­
сколькими способами. Путем релятивизации к Х/-исчислению
мы получаем непротиворечивость теории
М + {M = N\ М, N е А» не имеют н. ф.}.
Доказано, что теория Зё £°-полна.

16.2. Теория Зё
*
Будет доказано, что Зё имеет единственное максимально не­
противоречивое расширение Зё*. Эта последняя теория Не­
полна. Кроме того,
Ж н M = NoM
* — это просто
В Х/-исчислении Зё
96 Гл. 4. Теории

16.3. 2s" осмысленных теорий


Строится бесконечное множество комбинаторов, независи­
мых над Эё. Отсюда следует, что существует континуум осмыс­
ленных теорий.

16.4. Теория
Из теоремы о непрерывности следует непротиворечивость
теории отождествляющей термы с равными деревьями Бёма.
Приводится следующая общая схема определения Х-теорий.
Для данного нетривиального множества замкнутого от­
носительно равенства, положим
g-^ = {M = N\M, N<= Л° и VC[ ] [С[Л4] е С [А] е= ^]).
Тогда 3~& является Z-теорией. Далее, £TS0L = *ЗГё и S

16.5. Упражнения

Гл. 17. Другие ламбда-теории


17.1. Полу о с мыс ленные и р. п. теории
Показано, что полуосмысленные (п. о.) теории ведут себя
послушно:
°Г — п. о. Х-теория => STх\ — п. о. Х-теория;
?Г, 3~' — п. о. %-теории => U 3~' — п. о. ^-теория;
Т п.о. =>2R(£T) с топологией деревьев не является недиск­
ретной.
Для любой р. п. теории ЯГ имеется терм £) *, такой, что
* = М).
(VMe=A)Con(;r + fi
Далее, р. п. теории плотны. Вследствие этого множество
вещественных чисел можно вложить в множество ^.-теорий, ча­
стично упорядоченных отношением S.
С помощью топологии, вводимой на моделях из термов для
р. п. теорий, устанавливается, что множество значений любой
определимой функции бесконечно или одноэлементно.

17.2. Омега-теории
Показано, что ЭёГ
* Н <о. Другое доказательство непротиворе­
чивости теории получается с помощью ординального ана­
лиза. В качестве следствия получаем, что
I- М = I => Н М — I.
4.3. Упражнения 97

17.3. Частичная корректность ы-правила в X,q


Показано, что и-правило для термов М, N имеет место в kq
при условии, что М или N не является Pq-универсальным гене­
ратором. В Жх\ со-правило для М, N имеет место, если М или
V имеет рй-н.ф.

17.4. a-правило и теория 5^q


и-правило в общем случае не имеет места в Zq или -Ж],
а правило термов — в X или
Показано, что имеется терм П, представляющий в кван­
тор всеобщности по N:
[(V/ifN)(«o|- = nF'.
Приводятся доводы в пользу гипотезы о П'-полноте тео­
рии 3^<л.

17.5. Упражнения
Этим завершается обзор главы IV.

4.3. Упражнения
4.3.1. Показать, что сх.х # f.x.xxx.
4.3.2 (Виссер). Терм Л4еА° назовем легким, если (УАеЛ0)Соп(Л4 = А).
(В предложении 15.3.9 показано, что терм £4 легкий.)
В предположении легкости терма М доказать следующие утверждения!
(i) (W s Л”) (ATV легкий);
(ii) М неразрешим.
(iii) (VP0. .... Рп е Л») Con (Л4ГО1 = Ро, ..., Mrnl = Рп).
(iv) Для любой последовательности (F„)nsN замкнутых ^.-термов
имеем Con ({Мг«1 = Рп\пе м}). [Указание. Использовать (iii) и рассуж­
дение с применением компактности.]
(v) Con ({Л4 = N\M, N легкие}).
4.3.3. Пусть (Х)с (соответственно (X);)—классическая (соответствен­
но интуиционистская) теория первого порядка, термами которой служат эле­
менты Л, атомарными формулами — равенства, а специальными аксиомами —
формулы
jK — S,
(Лх.М) N = М [х : = А],
(Vx (Л1 — А)) -> Л.Х.Л4 = кх.У.
(1) Показать, что (Х)с консервативна над к, т. е.
(Х)с н М = .V => X ь М = У.

[Указание. Воспользоваться тем, что SW(X) —модель теории (X)c.j


(ii) Пусть TR обозначает правило
A (Z) для всех Ze A°=s- VхА (х),

4 X. Барендрегт
98 Гл. 4. Теории

где А — любая формула первого порядка. Показать, что теория (X) + TR


консервативна над 1 -{-fr.
(iii) Пусть АС обозначает следующую схему (аксиому выбора)
УхЗрА(х, у) -> ЗгУхА (х, гх).
Показать, что (Х)д + АС противоречива. [У Барендрегта в [1973] пока­
зано, что (Л)/ + 4С непротиворечива и консервативна над X.]
(iv) Показать, что (Х)Г + АС[- “| Ух (х = 1/х=^=Г).
4.3.4. Показать, что И SAiViV Con (X + М = N).
Глава 5
Модели

В бестиповом Х-исчислении объекты служат как аргумен­


тами, так и функциями, которые применяются к этим аргумен­
там. Поэтому хотелось бы, чтобы семантика для Х-исчисления
состояла из области D, такой, что ее пространство функций DD
изоморфно D. По теореме Кантора это невозможно.
В 1969 году Д. Скотт справился с этой проблемой, ограни­
чив DD до множества функций, непрерывных в некоторой удоб­
ной топологии на D. Учитывая введенное Шейнфинкелем отож­
дествление Dd*d с (DD)D, естественно работать с таким клас­
сом топологических пространств, который образует декартово
замкнутую категорию (д. з. к). Поэтому Скотт работал в кате­
гории полных решеток с непрерывными отображениями и по­
строил объект £>оо, изоморфный получив, таким образом,
экстенсиональную модель ^-исчисления. Позднее обнаружилось,
что для построения модели Х-исчисления достаточно иметь в де­
картово замкнутой категории объект D, такой, что DD есть ре­
тракт объекта D. Примером этого является графиковая мо­
дель Рсо.
Интерес представляют и некоторые другие родственные де­
картово замкнутые категории. Прежде всего у непрерывных
решеток имеется более естественная связь между решеточной
и топологической структурами. Например, для них топология
произведения есть произведение топологий сомножителей, что
в общем случае не имеет места для полных решеток. Затем
имеются полные частично упорядоченные множества (п.ч.у.м),
а их больше, чем полных решеток. Модель построенная
Плотниковым [1978], есть п. ч. у. м., но не полная решетка. Дру­
гая полезная категория, введенная Ершовым [1975], — это кате­
гория fo-пространств. У этих объектов то преимущество, что они
не обязаны быть полными; например, множество рекурсивно пе­
речислимых множеств, частично упорядоченных по включению,
является fo-пространством. Скотт [1982] дает другое интересное
описание этой категории.
Прошло некоторое время после того, как Скотт описал свои
модели, пока было достигнуто согласие по поводу того, каково
должно быть общее понятие модели ^.-исчисления. История во­
проса изложена у Койманса [1982]. Сейчас рассматривают два
4*
100 Гл. 5. Модели

вида моделей — Х-алгебры и Х-модели. Х-алгебры удовлетворяют


всем доказуемым равенствам Х-исчисления и образуют эквацио-
нальный класс (аксиоматизируемый равенствами кху = х,
sxyz-xz(yz) и пятью комбинаторными аксиомами, предло­
женными Карри). Поэтому Х-алгебры замкнуты относительно
перехода к подструктурам и гомоморфным образам. Х-модели
удовлетворяют не только всем доказуемым равенствам, но
и аксиоме слабой экстенсиональности
> Vx(M — N)-^kx.M = kx.N.
Оказывается, что Х-модели можно описать аксиомами пер­
вого порядка, но не равенствами. В действительности Х-модели
не замкнуты ни относительно перехода к подструктурам, ни
относительно перехода к гомоморфным образам.
Наряду с описанием Х-алгебр и Х-моделей на языке первого
порядка имеются как синтаксическое, так и категорное описа­
ния этих классов. Синтаксическое описание удобно при вычис­
лении интерпретаций термов в модели. Категорное описание
Х-алгебр довольно естественно и объединяет эти два понятия
модели. Оно состоит из декартово замкнутой категории С
вместе с так называемым рефлексивным объектом 1/еС, для
которого Uu есть ретракт U, т. е. имеются морфизмы F: U -+■ Uu
и G: Uu-*U, такие что FoG = id Как показано у Койманса
[1982], в этом контексте можно сказать, что Х-модель— это
Х-алгебра, возникающая из категории С с объектом U, имею­
щим «достаточно много точек».
Используя категорное определение модели Х-исчисления,
Скотт [1980] сделал следующие философские замечания.
1. Модели бестипового Х-исчисления возникают из д. з. к.
с рефлексивным объектом. Сами д. з. к. соответствуют типо­
вому Х-исчйслению. (Эти связи неоднократно подчеркивал Лам-
бек. См., например, Ламбек [1980].) Поэтому типовое Х-исчис-
ление первично, а бестиповая теория вторична.
2. Пусть С — д. з.к. с рефлексивным объектом U. По лемме
йонеды категорию С можно вложить в топос D = Setc Р. Ис­
пользуя семантику Крипке — Жуаяля, мы видим, что в D объект
Uu является полным пространством функций на U и потому U
удовлетворяет аксиоме слабой экстенсиональности в О. За это
приходится платить переходом к интуиционистской логике, так
как классическая логика неполна относительно интерпретации
Крипке — Жуаяля.
Некоторые комментарии. Что касается замечания 1, то
имеются, конечно, красивые результаты о типовом Х-исчисле-
нии/например у Стетмена [1980], [1982]. Мы, однако, не со­
гласны с выводом Скотта о первичности типового Х-исчисления
I. Комбинаторные алгебры 101

по сравнению с бестиповой теорией. Во всяком случае это не


верно с точки зрения вычислимости: типовое Х-исчисление (даже
в присутствии рекурсора) способно представить лишь соб­
ственное подмножество множества рекурсивных функций, в то
время как бестиповая теория представляет их все. В связи с за­
мечанием 2 очень интересно предложение Скотта осуществить
старую мечту Чёрча и Карри — изоморфизм Uu U — внутри
топоса, ^.-алгебры заслуживают изучения, хотя они не всегда
слабо экстенсиональны. Они оказываются, например, предпол-
ными нумерованными множествами в смысле Ершова, см. Вис­
сер [1980]. Теперь внутри подходящего топоса эти структуры
можно считать состоящими из настоящих функций.

5.1. Комбинаторные алгебры


5.1.1. Определение, (i) ЭД = (X, •) называется аппликативной
структурой, если • есть бинарная операция на множестве X.
Такая структура экстенсиональна, если для любых a, b X
(Vх е X) (а-х = b • х) => а = Ь.
Обозначения, (i) Как и в обычной алгебре, выражение а-Ь
->
записывается в виде ab. Если b = bi, ..., Ьп, то по определению
ab = abi ■■■ bn = (■■■ ((abt)b2) ■■■ bn).
(ii) Если ЭД == (X, •), то мы пишем а е ЭД вместо а<=Х.
5.1.2. Определение.Пусть ЭД— аппликативная структура.
(i) Множество термов над ЭД, обозначаемое через $:(ЭД),
интуитивно определяется следующим образом.
oo,oi,W2, ... еТ(ЭД) (переменные),
а е ЭД са е £ (ЭД) (константы),
А, Ве£(ЭД)=>(АВ)еХ(ЭД).
Обозначения. А, В, ... обозначают произвольные термы из
£(ЭД), а х, у, ... — произвольные переменные.
(ii) Оценка в ЭД — это отображение р: переменные —«-ЭД. Для
оценки р в аппликативной структуре ЭД интерпретация терма
А еХ(ЭД) в ЭД при оценке р (обозначаемая через [А]®! или [А] ,
или [Ар, если ЭД или р ясно из контекста) индуктивно опреде­
ляется обычным образом:
= р (х); KF = а-,
[АВ^ = [А^[В]»
(iii) Говорят, что равенство А = В истинно в ЭД при оценке р
(и пишут ЭД, р [= А = В), если [А]^ = [В]^1.
102 Гл. 5. Модели

(iv) Говорят, что равенство А = В истинно в иЯ (и пишут


ЭЛ |= А = В), если ЭЛ, р |= А = В имеет место при любой оценке р.
(v) Отношение 1= используется также применительно к лю­
бым формулам первого порядка над ЭЛ. Оно определяется в этом
случае обычным образом.
Через FV(A) обозначается множество (свободных) перемен­
ных терма А. Очевидно, что интерпретация [А]р зависит только
от значений р на множестве FV(A). В частности, для замкнутых
А (т. е. в случае FV(A) = 0) интерпретация [А]р не зависит
от р, и ее можно обозначать посредством [А].
5А.З. Определение (Карри). Аппликативная структура ЭЛ
комбинаторно полна, если для любого терма /1е5(®) и пере­
менных ........ хп, таких, что FV(A)s{xi, ..., хп}, мы имеем
в ЭЛ
3/Vxb Xn(/Xj ••• Хп = А).
Заметим, что экстенсиональная аппликативная структура ком­
бинаторно полна тогда и только тогда, когда для всех А е£(ЭЛ)
3!fVx(fx = А(х)).
5Л.4. Обозначения, (i) Пусть р — оценка в ЭЛ, и пусть аеЭЛ.
Тогда через р(х: = а) обозначается оценка р', такая что
р' (х) = а, р' (у) = р (у), если у х.
■>
(ii) Если переменные х = xh хп попарно различны и
*■>
а = а\, ап, то по определению
р(х :== а) = Р(х1ai) (хп:—а„).
(iii) А[х:=В] обозначает результат подстановки терма В
вместо \ в А.
5.1.5. Лемма. Пусть ЭЛ — аппликативная структура и А, А',
В, В’ е= Z(ЭЛ). Тогда
(i) [А [х : — В]]р = [A]p(x;=i[B]p),
(ii) ЭЛ )= А = А' А В = В' => ЭЛ Н а [х : = В] = А' [х : = В'].
Доказательство, (i) доказывается индукцией по по­
строению А.
(ii) По предположению [AJP = [А']Р и [BJP = [В/]Р для всех
р. Отсюда следует, что
[А[х: =В]]р = АР(х:-[В]р) (в силу (i)) =
= [Л = [А [х := В ]]р,
и все доказано. □
5.1. Комбинаторные алгебры 103

5.1.6. Определение. Пусть ЗЯ = (X, •)—аппликативная струк­


тура и ср: Хп-^-Х— отображение.
(О Ф называется представимым над 9R, если
3/еХ Уа®Хл(/а = <р(а)).
(ii) ф называется алгебраическим над ЭЯ, если имеется терм
такой что FV(A)s{xi, ..., хп} и
(О Уа(ф(а) = [Д]->у).
(Очевидно, что истинность соотношения (1) не зависит от р.)
Комбинаторная полнота означает, что все алгебраические
функции представимы. Обратное утверждение тривиально. Шейн-
финкель показал, что комбинаторная полнота следует из двух
своих частных случаев.
5.1.7. Определение. Комбинаторная алгебра — это апплика­
тивная структура ЗЯ — (X, •, k, s) с двумя выделенными элемен­
тами k, s, удовлетворяющими равенствам
kxy = х, sxyz — xz{yz).
5.1.8. Определение. Пусть ЗЯ — комбинаторная алгебра.
(i) Расширим £(ЗЯ) константами К и 5, обозначающими,
соответственно, k и s. Затем положим I = SKK-
(ii) Для термов Де 5 (ЗЯ) и переменных х индуктивно опре­
делим Х х.Де£(ЗЯ)
* следующим образом:
*х.х — I,
К
*х.Р = КР, если Р не содержит х,
Х
K'x.PQ = S(kx.P)
* (Vx.Q).
(iii) Пусть х — хх, ..., Хп. Тогда полагаем ?.
*х.А ■= (А.% •••
•••(^
*х«.А) ...).
5.1.9. Предложение, (i) FV(Vx.A) = FV(A) — {х}.
(ii) (Х
*х.Д)х = А в любой комбинаторной алгебре.
(iii) {К
*х.А)х = А в любой комбинаторной алгебре.
Доказательство, (i), (ii) устанавливаются индукцией
по построению терма А. Заметим, что верны равенства
lx = SKKx == Кх(Кх) = х.
(iii) следует из (ii). □
5.1.10. Теорема. Аппликативная структура ЗЯ комбинаторно
полна тогда и только тогда, когда она может быть расширена
до комбинаторной алгебры {путем выбора k, s). Следовательно,
любая комбинаторная алгебра комбинаторно полна.
Доказательство получается с помощью предложе­
ния 5.1.9 (iii). □
104 Гл. 5. Модели

5.1.11. Замечания, (i) Отметим, что комбинаторная алгебра


ЭД = (X, -,k,s) нетривиальна (т. е. Card (ЭД) > 1) тогда и только
тогда, когда k Ф s. Действительно, k — s влечет а = s (ki) (ka) г =
= k(ki) (ka)z = i для всех а, так что ЭД тривиальна.
(ii) При рассмотрении комбинаторных алгебр мы обычно
молчаливо подразумеваем, что они нетривиальны.
5.1.12. Определение. Пусть ЭД, = (Х;, ki, si), i = 1, 2, — две
комбинаторные алгебры.
(i) отображение ср: Xi->X2 является гомоморфизмом (в
этом случае пишут ср: ЭЭТ1 -> ЭД2), если ср сохраняет аппликацию
(применение функции к аргументу) и константы k, s, т. е.
ф (х-iy) = ф(х) •2ф((/)> ф(&1) = k2 И cp(sj) = S2.
(ii) 2Л1 ->ЭД2, если ср: ЭД1 —>-ЭД2 для некоторого <р.
(iii) ЭД, вложима в ЭД2 (Ш11 =^ЭД2), если ср: -э-ЭД2 для неко­
торого инъективного ср. ЭД1— подструктура ЭД2 (ЭД1 с. ЭД2), если
ф: 3R1 ->ЭД2, где ф — тождественное отображение.
(iv) ЭД1 изоморфна ЭД2 (ЭД1 = ЭДг), если ср: ЭД1 ->ЭД2 для неко­
торого взаимно однозначного ср.
5.1.13. Определение, (i) ‘g’— множество термов комбинатор­
ной логики, т. е. аппликативных термов, построенных только из
переменных и констант К, S; (ё>0 — {Р е | FV(P) = 0}.
(ii) Пусть ЭД — комбинаторная алгебра. Тогда
Th(aH) = {P = Q|SW)=P = Q, Р,
5.1.14. Предложение. Пусть ф: ЭД1->-ЭД2. Тогда для Р, Q&
е£(ЭД0
(i) ф([Р]®') = [ф (Р)]|®’р, где <р(Р) получается из Р заме­
ной констант са на С^ау
(ii) ,ЭД; f= Р = Q => ЭД2 ф(Р) - Ф (Q), если Р, Qs ?° или ф
сюръективен.
(iii) Th^OsTh^z).
(iv) Th (SDli) = Th (ЭД2), если ср инъективен.
Доказательство, (i) устанавливается индукцией по по­
строению терма Р е £(ЭД).
(ii) 5)ti h= Р = Q => [Р]Р = IQlp Для всех р=>
[PJw == [«Жор Для всех р(в силу(1))=>
=>[[Р]]р' = [(?]/ для всех р' (если ср сюръективен

Если Р, Qe <ё’°, то их значения не зависят от р.


(Ш) В силу (ii).
(iv) Аналогично (ii). □
5.2. Ламбда-алгебры и ламбда-модели 105

Аксиомы комбинаторных алгебр порождены не алгебраиче­


скими соображениями, а анализом рекурсивных процессов. Сле­
дующее утверждение показывает, что эти структуры — патологи­
ческие с алгебраической точки зрения.
5.1.15. Предложение. Нетривиальные комбинаторные алгебры.
(0 некоммутативны,
(ii) неассоциативны,
(Ш) неконечны,
(iv) нерекурсивны.
Доказательство, (i) Допустим, что ik = ki. Тогда
k — ik — ki, откуда a = kab = kiab = ib ~b для всех a, b, так
что алгебра тривиальна.
(ii) Аналогичным образом тривиальность следует из (kt)i ==?
= k(ii).
(iii) Положим по определению k\ — k, kn\-\ = kkn- Тогда все
элементы k\, k2, ... различны.
(iv) См. упр. 7.4.14 (iii). □

5.2. Ламбда-алгебры и ламбда-модели


Так как в комбинаторной алгебре 2П можно смоделировать
абстракцию с помощью k и s, оказывается возможным интерпре­
тировать в SD1 7-термы.
Обозначения. Пусть С — некоторое множество констант.
Обозначим через A.(C) множество 7-термов, возможно со­
держащих константы из С. Аксиомы и правила 7-исчисления оче­
видным образом обобщаются на равенства М = N, где М,
N еА(С). Для таких М, N мы также будем употреблять запись
7 Н М = N. Если Э?— аппликативная структура, то A (Эй) есть
по определению А ((са | а е ©?}).
5.2.1. Определение. Пусть Эй— комбинаторная алгебра.
(i) Введем отображения
CL: А (Эй) S (Эй),
7:£(ЭЙ)->Л(ЭЙ),
используя обозначения MCl = CL(M), Ах = 7(A):
XCL = Х> хк = х,
CCL ~ С> = Кху.х,
(М N)cl = mclncl, SK = kxyz.xz (yz),
(KX.M)cl = X-McL’ С). = С,
(А5)х = А^В^,
106 Гл. 5. Модели

(ii) Для М, АеЛ(й)1) полагаем по определению

Ж, р|=М = А<=НЛ15 = [А9,


Эй Н М — N s=> 2Л, р |= М = N для всех р.
Если Sfl — комбинаторная алгебра и а ей)?, то мы пишем, на­
пример, Кх.ха вместо [Хх.хсар.
Не все равенства, доказуемые в Х-исчислении, истинны
в комбинаторной алгебре. Если, например, ЙЯ— модель из термов
для CL, то
WI |=И= Лг. (фх.х) z — Kz.z,
так как (az.(hx.x)z)cL — S(KI)I и (Kz.z)cl = I, однако
X Н Kz.(Kx.x)z = Kz.z.
5.2.2 Определение, (i) Комбинаторная алгебра й)? называется
^-алгеброй, если
кН Ах = Вх=^й)?Н=А = В
для любых Л, В е 2(Ш?).
(ii) Гомоморфизм к-алгебр— это просто гомоморфизм ком­
бинаторных алгебр.
5.2.3. Лемма. Пусть й)?— комбинаторная алгебра. й)? являет­
ся ^.-алгеброй т. и т. т., когда для всех М, НеА(ЙЯ)
(i) k}- М ~ N =>ЯИ\= М = N-,
(ii) Кк,ы = SK, cl = S.
(Мы пишем Ax, cl вместо (Ax)cl и t. д.).
Доказательство. (=>) Заметим прежде всего, что ин­
дукция по построению терма М е А(ЙЯ) дает k Н MCl, \ = М.
Отсюда получаем следующее.
1. X М — N =>к Н = Ncl,}.^
MCL — Ncl (так как есть k-алгебра)=>
=>)= М = N (по определению отношения ]=)•
2. Кроме того, для всех А е £(2)1) мы имеем кН Ак CL, х —
= Ах. Поэтому 2)? |= Ах, cl — А.
(<=) Заметим сначала, что индукция по построению терма
Ае£(2)?)дает с помощью пункта2 из(=>),что ЙЛ |= Ах,cl = А.
Следовательно,
X Н Ах = Вх => 2)? |= Ах, cl = Вх, cl (в силу 1) => 2Л |= А — В. □
5.2.4. Предложение, (i) Если <р: ЙЛ1-> 3)?2, то
Ф = [ф (М)]» для М е А (2Л).
В частности, фЦМр
* 1 = [AlJ'sb для М е Л°,
5.2. Ламбда-алгебры и ламбда-модели 107

(ii) Пусть ЗЙ1->Ф12. Тогда Th(3Hi)E Th(2R2). Поэтому если


2Я1 есть h-алгебра, то и Ш12 является X-алгеброй.
(iii) %<=>%=!> Th (ОТО = Th (2R2).
Доказательство. Все эти утверждения следуют из
предложения 5.1.14. □
Класс Х-алгебр можно аксиоматизировать, используя при­
надлежащие Карри комбинаторные аксиомы Ар.
5.2.5. Теорема. Пусть 5R— комбинаторная алгебра. 2Л яв­
ляется h-алгеброй тогда и только тогда, когда она удовлетво­
ряет следующему множеству равенств, которое обозначается че­
рез Ар:
(А.1) К = S (S (KS) (S (КК) К)) (К (SKK)),
(А.2) S=S (S (KS) (S (К (S (KS))) (S (К (S (КК))) S))) (К (К (SKK))),
(А.З) S (S (KS) (S (КК) (S (KS) К))) (КК) = S (КК),
(А.4) S(KS)(S(KK)) =
= К (КК) (S (S (KS) (S (КК) (SKK))) (К (SKK))),
(А.5) S (К (S (KS))) (S (KS) (S (KS))) =
= S(S (KS) (S (КК) (S (KS) (S (К (S (KS))) S)))) (KS).
Доказательство. Из теоремы 7.3.10 и следствия 7.3.15
вытекает, что теории X и С£ + Ар эквивалентны в том смысле,
что
X г- Ах == В), <=> CL Ар Н А = В. □
Х-алгебры появляются обычно как подструктуры более есте­
ственного класса моделей Х-исчисления — так называемых
ламбда-моделей. Для этих структур имеется равномерный ме­
тод нахождения элементов, представляющих алгебраические
функции, не зависимый от способа, которым эти функции за­
даны (в виде термов) — ср. теорему 5.5.8.
5.2.6. Определение. Пусть ЭЭТ — комбинаторная алгебра. Она
называется слабо экстенсиональной, если
ЭЯ |= Ух(А = В)—>Хх.А = hx.B
для любых A, BeS(iW). (Иногда мы будем обозначать это
так: 2Л 1= с. э.)
Условие слабой экстенсиональности имеет синтаксический
характер. Майер [1980] и Скотт [1980] заменяют его следую­
щим образом.
5.2.7. Определение. (i) В произвольной комбинаторной
алгебре положим по определению 1 = S(KI).
(ii) h-модель— это Х-алгебра ЭЯ, в которой имеет место
следующая аксиома Майера — Скотта
¥х(ах = bx)^- la = lb.
108 Гл. 5. А1одели

5.2.8. Лемма. Пусть ЗИ— комбинаторная алгебра. Тогда


в ней
(i) lab — ab\
если, кроме того, 5R есть Т-алгебра, то
(ii) 1 = \xy.xy, а следовательно, 1а = Ту.ау,
(iii) 1 (Хх.Л) = 7.x. А для всех A<=Z (9R);
(iv) И = 1.
Доказательство, (i) lab = S(KI)ab — Klb(ab) — ab.
(ii) 1 = S(KI) = (kxyz.xz(yz)) (KI) = Kyz.KIz(yz) = Tyz.yz.
(iii) 1 (kx.A) — Kx.(Tx.A)x = Tx.A (в силу (ii)).
(iv) следует из (iii) и (ii). □
5.2.9. Предложение. SR есть X-модель о SR— слабо экстенсио­
нальная Т-алгебра.
Доказательство. (<=) Пусть SR слабо экстенсиональна.
Тогда
Ух (ах = Ьх)=> \x.ax = Kx.bx => 1а =16 по лемме 5.2.8 (ii).
(=>) Пусть SR есть Х-модель. Тогда
Ух (А = В)=> Ух ((Кх.А) х = (Кх.В) х) => 1 (Кх.А) = 1 (Кх.В) =>
=>Хх.Л — Кх.В по лемме 5.2.8 (iii). □
5.2.10. Предложение. Пусть SR есть /.-алгебра. Тогда
SR экстенсиональна <=> SR слабо экстенсиональна
и удовлетворяет равенству I = 1
Доказательство. (=>) А — В => (Хх.Л)х = (Кх.В)х =>
=> 7.x.А = 7.x. В в силу экстенсиональности. Далее 1ху = ху =
= 1ху, откуда получаем 7=1, дважды применяя экстенсио­
нальность.
(<=) В силу 5.2.9 SR является Х-моделью. Отсюда
Ух(ах = Ьх) => 1а = 16 => а = Ь, так как 1 = 7. □
Экстенсиональная комбинаторная алгебра автоматически
является Х-алгеброй. Это следует из того, что X Н Лх = В}. =>
=> CL + ext |— Л = В, см. теорему 7.3.14.

Модели из термов, внутренности


5.2.11. Определение. Пусть ИГ— некоторая Х-теория.
(i) Положим по определению
М М = N; это отношение конгруэнтности на А;
[MV = {AeA|M=^A};
А/^ = {[7И]^|7ИеА};
[М]& ■ [А]^ = [AIA]^; эта операция корректно определена.
5.2. Ламбда-алгебры и ламбда-модели 109

Модель из открытых термов (для) теории £Г есть множе­


ство
2К(.7-) = <Л/^, •, [К]^, [S]^>.
(ii) Ограничивая все отношения и операции замкнутыми
термами, мы определяем модель из замкнутых термов для Д',
полагая
эд°(^) = <л0/^, ■, [К]^, [S]°^>.
Очевидно, что если Д' непротиворечива, т. е. если в ней дока­
зуемо не всякое равенство, то = S, так что ЭД (.5^) и
ЭД0(£7~) нетривиальны. В частности, нетривиальны 2Jt(X) и ЭД°(Х),
так как из теоремы Чёрча — Россера следует, что теория X не­
противоречива.
5.2.12. Предложение. Пусть Д'— расширение ^-исчисления,
и пусть ЭД есть %1(Д') или ЭД°(^“).
(i) Для терма М, такого, что FV(М) = {xi, ..., хп},и оценки
р, такой, что р (-4) = [Р/]^,
[ЛС = [М [х := Р] ](Д
где [х:=Р] обозначает одновременную подстановку, см.
упр. 2.4.8.
(ii) .У Н Л1 = .¥=>ЭД(= М =/V.
(iii) £7" I— М = N <=> 3R |= М = N при условии, что ЭД = 3R (£7")
или М, N замкнуты.
Доказательство, (i) С помощью индукции по построе-
нию терма A е?(ЭД) показываем, что [Л]р = [Л%[х := Р]], и
используем Д' Н MCl, \ = М.
(ii) Д' у M = N=>VP(3T M[x:=P] = N[x:=P])=>
=>VP ([М [x:=P]]ff=[N[x-.==P]]^=>
=>Vp([M]p = mp)^a»t=M = Ar.
(iii) Для случая ЭД = ЭД(£7") положим р0 (х) = [х]^. Тогда
ЭД 1= М = N =>[М]РО = И]3о => [М]^ = (в силу (i))=>
=>gr |_ m = N. □
Для случая, когда MhN замкнуты, имеем
ЭД = = =[iV]cy (в силу (!))=$►
=>Д-уМ = П. □
5.2.13. Следствие, (i) ЭД°(£7") есть ^-алгебра.
(ii) ЭД (ST) есть ^-модель.
110 Гл. 5. Модели

Доказательство. Положим ЗЭТ — ^(^~).


(i) получается из 5.2.12 (ii) леммы 5.2.3 и того, что ST Н.
Н Kx.Gt, = KaSx.cl = s.
(ii) 'JJt |= Vx (ax = bx) => 3R |= Vx ([Л4] x — [2V] x) P (где a — [Л1J
и b = [AZ]) =>- ЭД |= [AT] z = [A] z (для произвольной новой пере­
менной z) => h- Mz = Nz=> .7~ H Zz.Mz = Zz.Nz => ZT H 1 AT =
= IN => Э11= la = lb (здесь 1 — S (KI)). □
Замечания, (i) (Якопини [1975]) В общем случае 3R° (t7~)
не является Х-моделью. Рассмотрим теорию ZT э Z, с един­
ственной дополнительной аксиомой {ti\<iZ = QSZ \Z е Л0}, где
Q = (Хх.хх) (Хх.хх). Тогда VZ е Л° (Т I— QKZ = SiSZ), а следо­
вательно, (0~) h Vx (ОКх = QSx). Но 2»t° (1Г) tf 1 (QK) = 1 (OS),
так как в противном случае имело бы место ГГ Н ЙКх = OSx,
а это не так.
(ii) Плоткин [1974] показал (см. следствие 20.1.2 (i)), что
дажеЗЯ°(Х) и2Я°(Хт]) не являются ^-моделями.
(iii) Из (i) следует, что предложение 5.2.12 (iii) не имеет
места для да (97") в общем случае. Чтобы убедиться в этом,
можно взять М =s ОКх, N = OSx.
5.2.14. Определение. Пусть 91 — комбинаторная алгебра.
(i) Внутренность алгебры 91 (обозначаемая через 91°) — это
подструктура в 91, порожденная элементами k, s.
(ii) 91 называется жесткой, если 91° — 91.
Заметим, что с точностью до изоморфизма 2Л° (£Г)— внутрен­
ность алгебры 5П(И~).
5.2.15. Предложение. Пусть 91 — некоторая Z-алгебра.
(i) да (Th (91)) ^91°.
(ii) Положим Th (91) — (М — N | М, As 5(91) замкнуты, и
%\=M = N}.
Тогда № (Th (91)) ~ 91.
Доказательство, (i) Полагая <р ( [A4]Th (ад) = [А1]эт, по­
лучаем корректно определенный изоморфизм на 91°.
(ii) доказывается аналогично. □
Отсюда следует, что все ^-алгебры возникают как подструк­
туры некоторой Z-модели.
5.2.16. Предложение, (i) (Барендрегт и Койманс [1980])
Любая Z-алгебра может быть вложена в Z-модель.
(ii) (Майер [1982]) Любая Z-алгебра— изоморфный образ
некоторой Z-модели.
Доказательство, .(i) 91 = 2R° (Th (91)) cz ЗЯ (Th (91)).
(ii) В дополнение к п. (i) имеем ЗЯ (Th (91))-э-ЗЯ0 (Th (91)) ^91,
где вложение осуществляется сюръективным отображением, за­
меняющим любую свободную переменную на константу, напри­
мер Д'. □
5.2. Ламбда-алгебры и ламбда-модели 111

Следующее утверждение доказано у Барендрегта и Койманса


[1980]. Здесь мы формулируем этот результат без доказатель­
ства.
5.2.17. Теорема, (i) Имеется ‘к-модель,невложимая в экстен­
сиональную К-модель.
(ii) Имеется комбинаторно полная аппликативная струк­
тура, которую невозможно превратить в K-алгебру (выбором
k, s).
(iii) Имеется h-алгебра, которую невозможно превратить
в h-модель (меняя k, s).
(iv) Имеется h-модель, которую невозможно превратить
в экстенсиональную (обрушивая ее).
Модели из термов позволяют провести следующие доказа­
тельства нескольких результатов о полноте.
5.2.18. Теорема. Пусть М, N е Л. Тогда
(i) X М = N о равенство M = N истинно во всех h-мо-
делях (или h-алгебрах).
(ii) Пусть бГ — расширение K-исчисления. Тогда
Н М — N о равенство М = N истинно во всех h-моделях,
удовлетворяющих Т.
(iii) Пусть (Х)с— теория, основанная на классическом ис­
числении первого порядка с равенством, аксиомами которой
являются замыкания всеобщности следующих равенств'.
Кху = х, Sxyz — xz(yz), К S, Vx(ax = bx)->la = lb, Ар.
Тогда
he 1- М = М оХ h- М = N.
Доказательство. Импликация (=>•) верна по лемме
5.2.3. Импликация (<=) получается следующим образом. Если
равенство М — N истинно во всех Х-моделях, то оно истинно
в ЭД(Х). Следовательно, X Н М = N по предложению 5.2 12 (iii) .
(ii) доказывается аналогично.
(iii) (=>) Заметим, что ЭД(1) |=(1)с-Поэтому
(X) с Н М = N => ЭД(Х) |= М = N =>Х Н М = N.
(<=). Очевидно. □
Модели и правила
Пусть R— одно из правил для Х-исчисления, рассмотренных
в § 4.1. Тогда R имеет вид Ri=>R2, где R2— всегда равенство,
а /?! — либо равенство (как в ext), либо множество равенств
(как в со).
Имеются два способа, которыми Х-алгебра ЭД может «удов­
летворять» такому правилу R.
112 Гл. 5 Модели

(1) Th (ЗЯ) может быть замкнута относительно правила R;


(2) ЭЯ может удовлетворять, говоря приблизительно, аксио­
ме, соответствующей правилу R («приблизительность» возни­
кает из-за того, что не всегда непосредственно очевидно, какова
точная формулировка соответствующей аксиомы).
В первом случае мы пишем ЭЯ (= /?-правило, во втором —
К )= R -аксиома.
5.2.19. Определение. Пусть R = Ri=>R2— одно из правил
ext, о, g, tr. Пусть ЗЯ — некоторая ^.-алгебра.
(i) Скажем, что ЭИ удовлетворяет /^-правилу (и будем пи­
сать ЗП |= Я-прав.), если ЭИ |= R\ => ЭИ R2.
(ii) Отношение «ЗЯ удовлетворяет /?-аксиоме» (записывае­
мое ЯП )= 7?-акс.) определяется отдельно для каждого из правил!
ЭИ (= exf-акс. о ЭИ |= (Vx (Alx = Nx)) ->M=N,
ЭИ |= 1-акс. <=> ЭИ И (Vx (М = N)) -+ Кх.М = kx.N,
ЭИ |= ю-акс. <=> ЭИ (Vx е ЭИ° (Мх = ДГх)) М = N,
где последнее равенство понимается очевидным образом,
ЭИ |= tr-акс. <=> ЭИ |= (Vx е ЭИ° (Alx — Nx)) Vx (/Их <= Nx).
В приведенных выше определениях термы М, N е Л произ­
вольны, а в первом и двух последних случаях подразумевается,
что x^FV(MN).
(iii) Отношение «ЭИ удовлетворяет /?°-аксиоме» и «ЗИ удов­
летворяет /?°-правилу» определяются аналогично, но вместо всех
термов рассматриваются лишь замкнутые.
Заметим, что g-аксиома выражает слабую экстенсиональ­
ность, а g-правило — g-экстенсиональность.
5.2.20. Факт, (i) ЭИ |= /?-акс. => ЭЯ )= /?-правило, но обратное
не обязательно имеет место.
(ii) ЭЯ° |= /?-акс. -<=>ЗИ° |= 7?-прав. Поэтому для жестких мо­
делей мы пишем просто ЭЯ 1= R.
(iii) ЭЯ° (= R <=> ЭЯ° р= R°.
(iv) ЗЯ |= /?-акс. не влечет соотношения ЗИ° |= R и не следует
из него.
Доказательство, (i) (=>) тривиально. (^) Возьмем
ЭЯ — Doo, R = о. См. упражнение 19.4.6.
(ii) (ф:) Пусть 9Я° Н= /?-прав. и /?-акс. = 7?i => R2. Чтобы по­
казать, что ЗЯ° |=/?-акс., допустим, что ЭЯ'0, р |== R\. Пусть
обозначает результат подстановки в Ri, 2 вместо х термов, соот­
ветствующих р(х). Тогда ЭИ° Ri, откуда ЭИ° R2, т. е. ЗЯ0,
р(=Т?2. Поэтому Ур(ЯЯ°, р /?1->/?2), т. е. ЗЯ01= Я-акс.
(iii) тривиально.
5.3. Синтаксические модели 113

(iv) (?ф) Возьмем ЭД == ЭД (К, q), R = ext. См. теорему 20.1.1.


(фф) Возьмем R = ext. См. упражнение 20.6.3. □
5.2.21. Предложение. Пусть ЭД— некоторая К-алгебра. Тогда
(i) ЭДН exf-акс. о ЭД экстенсиональна;
(ii) ЭД |= |-акс.«
*=> ЭД |= 1-прав. (ч=> ЭД[= слабая экстенсио­
нальность) ;
(iii) ЭД |= ©-прав. оЭД° |= ©<=>ЭД° экстенсиональна.
Доказательство, (i) тривиально.
(ii) устанавливается с помощью следствия 5.2.23.
(iii) ЭД Н ©-прав. => ЭД° [= © => ЭД° Н =>ЭД Н (»°-прав. =>
=>ЭД Н ©-прав, в силу доказательства теоремы 4.1.15 (i). □
5.2.22. Предложение. Пусть Т — некоторая Х-теория и R —
одно из правил. Тогда
ТГ Н R о ЭД (.3^) f= R-npae. о ЭД (£Г) |= R-акс.
Доказательство. Пусть R = Ri => R2, и допустим, что
*3~ Н R. Тогда
ЭД (ST) |= Ri => 3~ Н Я1 (по теореме 5.2.12 (ii))=>
I- R2 (по предположению)^
=>ЭД(ЗПНЯ2-
Поэтому ЭД(£7~) Н Я-прав. Аналогичным образом устанавли­
вается, что ЭД(5Г) Н R-прав. =>&~\-R. Доказательство того, что
ЭД(^~) Н Я-прав. тогда и только тогда, когда ЭД(3Г) Н R-акс.,
аналогично доказательству факта 5.2.20 (ii). □
5.2.23. Следствие, (i) Если £Г — экстенсиональная Т-теория,
то ЭД (ST~) — экстенсиональная ^-модель.
(ii) Если £Г h ©, то ЭД°(£Г) — экстенсиональная ^-модель.
Доказательство получается применением предложений
5.2.21 и 5.2.22. □

5.3. Синтаксические модели


В этом разделе будет дано синтаксическое описание Х-ал­
гебр и Х-моделей, эквивалентное описанию на языке первого по­
рядка, данному в § 5.2. В некоторых случаях, например для
фильтровой модели Барендрегта и др. [1983], это синтаксиче­
ское описание удобнее, чем определение на языке первого по­
рядка. Этот метод предложен Хиндли и Лонго [1980].
5.3.1. Определение. Пусть ЭД— <Х, •> — аппликативная
структура.
(i) Через Vai (ЭД) обозначается множество всех оценок в ЭД.
114 Гл. 5. Модели

(ii) Синтаксическая интерпретация в Ж — это отображение


Г. Л(2Я)Х Vai (5)1)->Х, удовлетворяющее следующим условиям,
в формулировках которых /(Л4, р) обозначается через [Af]p.
1- Мр = р(х).
2. [са]р = а.
[PQ]P = [F]p• [Q]p-
4. [U.P]p-« = P]p(x:-or
5. р ( FV (М) = рЧ FV (Л4) => [ЛЛР = [М]р,.
Отметим, что в силу соглашения о переименовании перемен­
ных из условия 4 вытекает, что для у FV(Л1(х)) выполняется
следующее условие:
4'. [M(x)]p(x:=e) = [U.M(x)]pa =
= рл/.Л1(г/)]]ра =
= [М (Ч]р(у ;=оГ
(iii) Синтаксическая аппликативная структура — это тройка
5)1 = <А, •,[ ]>, где [ ] —синтаксическая интерпретация в SJL
5.3.2. Определение. Пусть 5)1 — синтаксическая аппликатив­
ная структура.
(i) Понятие истинности в 2Л определяется обычным образом:
Зй, р>Л4 =ЛГ<ЯМ]|р = И]]р,
5Й^Л1 = А<=>Ур(ЭК, $\=M = N)
и распространяется обычным образом на формулы первого по­
рядка над Х-исчислением.
(ii) 2Л — синтаксическая К-алгебра, если X Н М ~ N
[= М = N.
(iii) — синтаксическая К-модель, если выполнено следую­
щее условие:
(|) Зй|= Vx(M = N)^lx.M = Kx.N,
т. е, Va(mp(x:=fl) = [V]p(x:=a))=>[U.M]p = [U.yV]p.

5.3.3. Лемма. Пусть 5Я — синтаксическая Ъ-модель. Рассмот­


рим утверждение
Ф (М, N) = Vp [М [х := А] ]р = [ЛЦ, {х ;= m р).
Тогда для любых М, N е А (5Я)
(i) Z ф FV (М) => ф (М, г);
(ii) ф (М, А)=>ф(Л//.А1, А);
(iii) ф(Л1> N)-
5.3. Синтаксические Модели 113

Доказательство, (i) Полагая Л4 = М(х), получаем


[Л4 (г)]р = [Л4 (г)]]р (2 ;= 0 (2)) = [Л4 (х)]р (х ;= р (г))
в силу 4'.
(ii) . Допустим сначала, 4tox^FV(AQ. В силу соглашения
о переименовании переменных можно считать, что у х, у ф.
ф. FV (N).Тогда для р* = р(х := (У]р) и произвольного а е
[Л4 [х := А] {у ;= 0) = [М [х := ./V] ]р fy а) =
= ВДо(у:=о)(х:_Шр) (ТЗК КНК ф(Л4, =

= 1МЛр
* (у := а)

(отметим, что ИЛ]0 = [N]lp (у .= а))- Поэтому в силу условия (|)


[Ху.М [х := TV] ]р, =

VW-M [х := АГ] ]р = [Ку.М [х := W] ]р. =


= Uy.M]|p (Х [ЛГ]р).

Если х <= FV (N), то обозначим через z произвольную новую


переменную. Для Л4 = ky.M мы имеем
[7Й [х := JV] ]0 = [М [х := г] [г := /V] ]р =
== [Л4 [х := г] ]р (г ._ Мр) =
= Й]р(г:=Мр)(х:=ОТр) <В СИЛУ 0» =

= Мр(х:= [Ху

(iii) Теперь <р(М,А) получается простой индукцией по по­


строению терма М. □
5.3.4. Теорема. Пусть 3R — синтаксическая ^-модель. Тогда
M = N=^yi\=M = N,
т. е. 2Л— синтаксическая ^-алгебра.
Доказательство проводится индукцией по длине дока­
зательства равенства М = N в Х-исчислении.
Аксиома (Kx.M)N = М[х:= А] корректна, т. е. истинна в 2R.
Действительно,
nU.M)W]p==Ux.M]|p|[Alp (в силу 3) =
= Мр(Х;_ОТр) (в силу 4) =
— [М [х N] ]р (в силу леммы 5.3.3 (iii)).
116 Гл. 5. Модели

Корректность правила М = N => Кх.М = Xx.N следует из


условия (^). Остальные правила тривиальны. □ ’
5.3.5. Определение. Гомоморфизм одной синтаксической
Х-алгебры в другую — это отображение ср: НЯ] ->ЗЯ2, такое, что
Ф Мр = [ф (Л4)]ф о р, гДе в Ф(М) константы са заменены на сф(а),
для любого терма М е А (ЗЯ).
5.3.6. Теорема. Категория синтаксических К-алгебр и их го­
моморфизмов изоморфна категории Ъ-алгебр и их гомоморфиз­
мов. При этом изоморфизме синтаксические ^-модели соответ­
ствуют в точности %-моделям.
Доказательство легкое. Для синтаксической Х-алгебры
ЗЯ — <Х, •, [ ]> положим по определению FSH = <Х, •, [К], [S]>,
а для ф: ЗЯ]->ЗЯ2 положим Гф = ф: ГЗЯ]->-ГЗЯ2. Тогда
[ЛАр®1 = М® для Me А (ЗЯ). Обратно, для Х-алгебры 51 =
= <X,-,k,s) положим по определению G31 = (Х, ■, [ J'1) и
Оф = ф точно так же, как и раньше. Тогда F вместе с обрат­
ным к нему отображением G дает требуемый изоморфизм. □
5.3.7. Замечание. Ввиду теоремы 5.3.6 мы говорим, что
ЗЯ = (Х, •,[ ]) является Х-алгеброй (Х-моделью) также и в том
случае, когда НЯ является синтаксической Х-алгеброй (Х-мо­
делью) .
5.3.8. Соглашение. Работая в Х-алгебре ЗЯ, мы допускаем
некоторые вольности при записи равенств, верных в ЭЯ. Напри­
мер для а е НЯ мы пишем
(Хх.хх) а = аа
вместо формальной записи [Хх.ххЦа = аа.
5.4. Модели в конкретных декартово замкнутых категориях
В этом разделе будет изложена система понятий, в рамках
которой Скотт построил свои несинтаксические Х-модели. Мы
будем использовать категорию п.ч.у.м. (полных частичных упо­
рядоченных множеств), хотя применяемый метод работает для
произвольных конкретных декартово замкнутых категорий.
Напомним, что если D есть п.ч.у.м., то [/?->£)] обозначает ,
множество непрерывных отображений со структурой п.ч.у.м.,
индуцированной поточечным упорядочением: f g тогда и
только тогда, когда fx gx для любого х.
5.4.1. Определение П.ч.у.м. D называется рефлексивным,
если [£)->£)] есть ретракт D, т. е. имеются непрерывные
отображения
F-. Z)->D], G: [D-+D]-+D,
такие, что F ° G = id[D_>Dj.
5.4. Модели в конкретных декартово замкнутых категориях 117

Будет показано, что любое рефлексивное п.ч.у.м. естествен­


ным образом определяет Х-модель.
5.4.2. Определение. Пусть D — рефлексивное п.ч.у.м. и F,
G — отображения, упоминаемые в определении рефлексивности.
(В этом случае мы будем говорить, что D рефлексивно через F
и G.)
(i) Для х, у & D положим по определению
х.у = F(x) (у).
(ii) Пусть р — оценка в D. Введем интерпретацию [ ]р:
Л->Д следующим индуктивным определением:
Щр==р(х);

1адр = Мр.[^р;
hx.M]p = G(Ad.[M]]0(X:=(f)).
5.4.3. Лемма. Функция Д^.[Л4]р(л. d) непрерывна, следова­
тельно, [Xx.MJp корректно определено.
Доказательство проводится индукцией по построению
терма М. Мы покажем; что для всех р значение [Л4]|p(x.= d)
непрерывно зависит от d. Единственный нетривиальный случай
возникает, когда М ss Ку.Р. Тогда
[Аг/.Р]р(д.._ d) — G (&е.[Р]р(х di(y е)) =
= G(&e.f(d, e)) = g(d),
где обозначения f(d,e) и g(d) имеют очевидный смысл. По
предположению индукции функция f непрерывна по каждой из
переменных d, е в отдельности, следовательно, по лемме 1.2.12
она непрерывна. Отсюда в силу предложения 1.2.14 (i) и не­
прерывности G получаем, что отображение g=G°f непре­
рывно. □
5.4.4. Теорема. Пусть D — рефлексивное (через F, G)
п. ч. у. м., и пусть 3U = (D, •, [ ]). Тогда
(i) 2Л есть К-модель',
(ii) представимые функции — это в точности непрерывные
функции',
(iii) 3R экстенсиональна тогда и только тогда, когда G о F —
= ido, т. е. G = F-‘ uD^[D^ Z)] (через F, G).
Доказательство, (i) Проверим условия из определе­
ния 5.3.1. Условия 1, 2 и 3 тривиальны. Рассмотрим условие 4.
[Xx.P]lp.a == G ;= dj-a) = (А^-|[Р]р (Хdj))(a) =
== (Ad'fPJlp (X d>) (а) = P’lp (х а)'
118 Гл. 5. Модели

Условие 5 получается несложной индукцией по построению


терма М.
Таким образом, SK — аппликативная синтаксическая струк­
тура. Проверим, что она удовлетворяет условию (^).
Vrf ( Мр (х d} = И]р (х ;= d)) => ЖИ1Р (хd} =
= Л<ЦА1Р(х d} => G (Ad.[M]p(Jt.» d)) = G (Дй.И])р(х ;= d)) =>
= [U.Af]p = [U^]|p.
Отсюда в силу замечания 5.3.7 следует, что SR есть Х-модель.
(ii) Аппликация • (т. е. применение функции к аргументу)
непрерывна из-за непрерывности F. Поэтому непрерывны все
представимые функции. Обратно, непрерывная функция f:D-+D
представляется объектом G (f). Действительно,
G(/)(a)=F(G(D)(a) = f(a).
В общем случае непрерывная функция f: Dn-*~D представ­
ляется объектом
х% - .... dn),
где
X°d. = G(Ad. •■■).
(iii) Если G о F — id, то
Ve(de = d'e)=>Ve(F(d) (e) = F(d') (e))=>
=>F(d) = F(d')=>d = d',
последнее становится очевидным, если применить G к обеим
частям предыдущего равенства.
Поэтому 5ЭТ экстенсиональна.
Обратно, допустим, что экстенсиональна. Пусть d^D и
d' = G(F(d)). Тогда для всех е <= D
d'fe = F(d') (е)= F(G(F(d))) (е) = F(d) (е) = de.
Следовательно, d' = d, т. е. G о F = id^. □
Чтобы дать представление о том, как может быть опреде­
лено рефлексивное п.ч.у.м., мы опишем модели DA, введенные
Энгелером [1981], как упрощения графиковой модели Ра, кото­
рая будет введена в § 18.1.
5.4.5. Определение. Пусть А — множество.
(i) Обозначим через В наименьшее множество, содержа­
щее А и такое, что
Р S В, р конечно и b е В =>(Р, &)е В.
(Будем предполагать, что А не содержит таких пар.)
(ii) Пусть Da = P(B), т. е. это множество всех подмножеств
множества В, частично упорядоченных по включению. Это —
п.ч.у.м. (и даже алгебраическая решетка).
5.5. Модели в произвольных декартово замкнутых категориях 119

(iii) Для х, y^DA и f е [DA-+DA] положим по определе­


нию
Х.у = {b е В|3р S 1/(Р, х},
k°x.f(x) — {(р, 6)е В|р конечно sS и b ef(p)}.
5.4.6. Теорема. Da становится рефлексивным п.ч.у.м., если
положить F(x) —hy.xy, G (/) = Kax.f(x). Поэтому DA опреде­
ляет "К-модель.
Доказательство. Непрерывность F и G легко следует
из предложений 1.2.24 и 1.2.31 (i). Далее
F о G (f) = F ({(₽, b) | b е f (₽)}) = &y.{b I Э₽ = у (b е= f (£))} =
= Ay.U{f(₽)lpsy} =
==Др.?(р) (в силу непрерывности f) — f. □
Дополнительную информацию о моделях DA дают упражне­
ния 5.7.7, 18.5.29 и 18.4.31.

5.5. Модели в произвольных декартово замкнутых категориях


В этом разделе будет показано, что в произвольных декар­
тово замкнутых категориях рефлексивные объекты порождают
Х-алгебры и каждая Х-алгебра порождается таким образом.
Поэтому Х-модели — это Х-алгебры, происходящие из категорий
«с достаточным запасом точек». Применяемый метод принад­
лежит Коймансу [1982] и основан на работах Скотта.
5.5.1. Определение. Пусть С — категория. Тождественный
морфизм объекта ,4еС обозначается через id^.
(i) С называется декартово замкнутой категорией (д.з.к.),
если выполнены следующие условия.
1. В .С имеется терминальный объект Т, такой, что для любого
объекта Ле.С. существует единственный морфизм !л: Л->7'.
2. Для любых объектов Ai, А2^.С. имеется объект Ai X Аг
(их декартово произведение) с морфизмами рр /41XА2-+- А;
(проекциями), такими что для любых fp. C-+Ai (i= 1, 2)
имеется единственный морфизм <fb [2У: С->Л1Х^2, такой, что
Ро°<Л,/2> = fr, СМ. рис. 5.1.
Обозначения. Если gp At~+Bi (Z= 1, 2), то g!Xg2 =
*
= <gl °P\,g2°p2>- /41Х^2-
В1ХВ2, CM. рис. 5.1.
3. Для 4, BeC имеется объект ВАеС (степень) с мор­
физмом ev = ev.4, в: BA%A-^-B, такой, что для любого
/: СХ/1-^В имеется единственный А/: С->-Вл, удовлетворяю­
щий равенству f — ev ° (А/ X Ад); см. рис. 5.1,
120 Гл. 5. Модели

(ii) Пусть С имеет терминальный объект Т. Точка объекта


ДеС — это морфизм х: Т- *~А. Множество точек объекта А

обозначается через |Л|. Говорят, что объект А имеет достаточно


точек, если для любых f, g: А-

* мы имеем
f =£ g => (Зх <= A) (f ° х =?= g ° х).
Отсюда следует, что это верно и для любых f, g: А-
В.
*
Заметим, что в д. з. к. выполнены равенства
A(h°g°idA) = Л(й) og, <.f,gy°h = <f°h,g°h),
fXg°<h,k) =
5.5.2. Определение. Пусть С — д. з.к. Объект 1/еС назы­
вается рефлексивным, если Ии есть ретракт объекта U, т. е.
имеются морфизмы Г: U^UU и G: такие, что
F ° G — id^y.
5.5.3. Определение. Пусть С — д. з. к. с рефлексивным
объектом JJ (и соответствующими ему отображениями F, G).
Тогда эти данные следующим образом определяют синтакси­
ческую аппликативную структуру 2R(C) (=9Л(<С, U, F, G)).
(i) Предметная область структуры 2Jl(C) есть | U|.
(ii) Пусть Ар: — это отображение evy, и ° F X idy.
Для f, g: А -> U положим f-л g = Ар ° <f, g>. В частности
х.у = х-ту = Ар о <х,у).
Как аппликативная структура Ф1(С) совпадает с < | £71, •>.
(iii) [7° = Т, Un+l = UnXU. Пусть А = Xi, ..., хп-—после­
довательность различных переменных. Положим 77л == Un.
(iv) : UX->U—каноническая проекция на i-ю координату.
(v) Если fi, ..., fn: A-+U, то </ь ..., fn>: A-+Un опреде­
ляется равенствами
< > = U, </1, fn+l> = <<7if ..., fn), fn+\)-
5.5. Модели в произвольных декартово замкнутых категориях 121

Очевидно, что л£ оfn) = fr


i -> ->
(vi) Пусть Г = у\, ут, причем {t/}s(x}. Положим по
определению
........
Это — каноническое «утончение», т. е. аналог отображения
, хп) .<Z/1, ..., уту».
(vii) Для {A}2FV(M) мы следующим образом определим
индукцией по построению М морфизм [М]д: 17Л->[7 так, чтобы
подразумеваемой интерпретацией для [М(х, у)]х, у было
«Х<х, у>.[М(сх, сД]»:
Ид =
ИЛИд = а ° !уд (для а е= | и |);
гад=отд-идгад;
[Хх.Р]д = G °Л([Р]д,х), где, пользуясь соглашением о пе­
реименовании переменных, мы предполагаем, чтох§£{А).
(viii) Для оценки р в |1/| положим
РЛ = РХ1..... Х« = (р(х1), р(х„)>,
Мр = ИМИд о рЛ, где А = FV (М).
Очевидно, что [Л4]р е | U\.
(ix) Наконец, обозначим через 3W(C) структуру <|Z7|, •,[ ]>.
5.5.4. Лемма, (i) Пусть {А} э{Г}э FV(M). Тогда [М]д =
= [Л4]г о П£.
-> -> ->
(ii) Пусть {А} = {х}э FV(M), М согласован с х и
{r}aFV(jV). Тогда
[М[1:=лГ]]г=[М]до<^1]г, .... [М„]г>.
(iii) Пусть (A}eFV(U.M), {Г}э FV( (Kx.M)N) и {Г}=>
а {А}. Тогда
[М[х:=^Пг==[ЛЛд>хо(ПГ, [/VQ
Доказательство, (i) и (ii) устанавливаются индукцией
по построению терма М. Мы рассмотрим только случай
М == Ку.Р.
(О [Лг/. Р]г о Пр = О о Л ( £ЛГ 9« П
) =
*
= G о Л ( [Р]г> у о П£ X idy) (в силу 4.2(1)) =
= G о Л ( [Р]г, у о ПА. У) _ G о Л ( [Р]д, у) = 1%У • Р]д.
122 Гл. 5. Модели

Здесь IH означает «по предположению индукции».


(ii) lKy.P[x:=N]}c = lKy.P\x, y:=N, i/]]r==
= G о Л ( [P [x, у := N, у] 1Г1 р) =
ПТ G о Л ( [Р]|д> у о ( у, УУ) =

=^<ЗоЛ([Р]]Д во([У]|г)Х idy) (см. ниже) =


= G о Л ( [Р]д> J о ( Й]г) = [Лг/.Р]Д о ([А])г,
где * обосновывается следующим образом:
< Йг. у, klr, у) {И1г0 nF' У) = ( И1г о Рр idy о р2) =

= (H]r>Xidy°(pp Р2) = ( Pl^Xidy.


(iii) Применяем (ii) к Д' = А, х и Г, где А =&у и
М[х:== N]== М[у,х:==у, N], □
5.5.5. Предложение. Пусть М, Л'еЛ(ЭД(С)) и {А}э
=> FV(Mtf). Тогда
X Н М = N => |Л1 ]Д = [А]д.
Доказательство. Применяем индукцию по длине дока­
зательства равенства М — N. Рассмотрим только наиболее су­
щественную аксиому (Р) и правило <о.
Аксиома (Xx.P)Q = Р[х: = Q],
ЦКх.Р) QJ д = (G о Л ( [Р]Д1,)) • иА ВДД =
= ev ° (F о G о Л ( [Р]|д> Л), КПД) =
= ev о Л ( [Р]|д> Л) X id ° (id, ЦС>Лд> =
= 1рЛ \, х0 (id, ВДД> = №:=<ЭПД (по лемме 5.5.4 (iii)).
Правило Р = Q => Тх.Р — Kx.Q.
[Р]д = [Q]a (по предположению индукции) =>
* Р1д ° = [QL [Р1Д1 х = К1Д1 х =>
=>[Лх.Р]1д = [U.QV □
5.5.6. Теорема. Любая д. з.к. С с рефлексивным объектом U
определяет К-алгебру ЭД (С) = < | U |, •,[ ]>.
Доказательство получается непосредственно из пред­
ложения 5.5.5 и определения оценки { ]р. □
5.5. Модели в произвольных декартово замкнутых категориях 123

5.5.7. Предложение. Пусть Эй = 3)1 (С, U, F, G).


(i) Пусть {A}3FV(M). Тогда [1М]Д = G о F ° [М]д в С.
(ii) U имеет достаточно точек ЭЙ есть Ъ-модель.
(iii) U Uu посредством F, G <=>3511= 1 = I.
(iv) U sx Uu посредством F, G и U имеет достаточно то­
чек -<=> ПЛ экстенсиональна.
Доказательство.
(i) [1 М]д = [ky.My^ = G о Л (ev ° (F о [ЛЦД> у, [г/]д> =
= G о Л (ev о (F о [Л!]|д ° Г1£-«, яА »)) =
= G о Л (ev о (F о [М ]д о Р1, р2^ =
= G о Л (ev о (F о [Л1]д) X id) =
= GoFo[MV

(ii) (=>) Пусть U имеет достаточно точек. Тогда это имеет


место и для Теперь для любых а, Ь<=351 имеем
(Vx е ЭЙ) ах = &х => ev ° (Е ° а, х> = ev ° (F о Ь, х) =>
=> ev о (F о а) X id ° (id, х) = ev ° (F ° 6) X id ° (id, х) =>
=>ev о (F °а) X id ==ev о (F о 6) X id (так как U имеет
достаточно точек)=>
=> 1а=\Ь (так как в силу (i) lc=G ° F ° c=G о Л (ev o(F ° с) X id),.
Следовательно, 351 является Х-моделью.
(<=) Предположим, что есть Х-модель, и пусть f, g:
U ->-U. Тогда
(Vx е | U |) f ° х = g о х =>
=> Vxf .х = g.x (где / = G°A(fop2) и верно f.x = fox)=>
=^l.f = l.g=>GoFo^ = GoFog'=>
=> A (f о p2) = A (g о p2) (так как F ° G = id) =>
=>fap2 = g°P2=>f:=g-
Поэтому U имеет достаточно точек.
(iii) (=>) Если U = UiJ через F, G, то G°F = idy, следова­
тельно, согласно (i), [1М| д = [М] д, в частности [1х]д = [хД.
Теми же рассуждениями, что и в доказательстве предложе­
ния 5.5.5, отсюда получается, что
[11А = [лх.1х]д = [Хх.х|д = [1]Д,
т. е. ЭД )= 1 == I.
124 Гл. 5. Модели

(<=) Допустим, что SW (= 1 — I. Тогда


Ш = [кху.ху] — G° [ky.xyJJ =
= G»A (G»F о [х]Д (в силу (i)) = G°A(GoFo р2);
кроме того, [ I] = G о Л (р2). Поэтому
G о Л (G о F о р2) — Q о Д (р2) =>
=>Л (G о F о р2) — Д (р2) (применяем F)=>
=>G о F о р2 = р2 (так как Л/г однозначно определяет /г)=>
=>(?оF = idy (применяем (!, idy)).
(iv) В силу предложения 5.2.10 и (ii), (iii). □
Пусть 91 есть Х-алгебра, возникающая из конкретной катего­
рии, т. е., грубо говоря, категории, основанной на множествах.
Тогда 91 будет Х-моделью и интерпретация в 91 имеет простой
вид. ,
5.5.8. Определение. Д. з. к. С называется строго конкрет­
ной, если имеется функтор Ф: С-э-Set, удовлетворяющий сле­
дующим условиям:
1. Ф строгий (т. е. он инъективен на стрелках);
2. Ф полный (т. е. сюръективный) на Нотс (Г, А) для
А (= С;
3. Ф сохраняет терминальный объект, произведения и проек­
ции;
4. для любых А, ВеС выполняются соотношения
Ф (Вл) s Ф (В)ф (Л), Ф (ev4, в) = ev®A фв Г Ф (Вл) X Ф (А).
Отметим, что при выполнении этих условий любой объект
в С имеет достаточно точек. Более того, Ф (Ас/) = Aset (Ф/),
где Asetgfai, ..., an)=^d.g(ab ..., an,d) для g: XnXY-^Z
в категории Set. Мы будем обозначать через {*} терминальный
объект этой категории.
Как полные частично упорядоченные множества, так и пол­
ные решетки образуют строго конкретные категории.
5.5.9. Определение. Пусть С — строго конкретная категория
с рефлексивным объектом U.
(i) определим биекцию ср: | П|->Ф(Д) равенством <р(х) =
= Ф(х) (*);
(ii) определим морфизм □: ф((/и)->ф({7) равенством
□ =ф(О;
(iii) . ПОЛОЖИМ CL • Ь = Ф (F) (п) (6) для tz, Ь £= Ф ({/) \
(iv) положим (М) ]£-i ор) для МеА(Ф(С/));
(у) положим ВДФ = (ф(//), •, [ ]ф).
S.5. >// в прпгзволъных декартово замкнутых категориях 125

5.5.10. Теорема (Койманс [1982]. (i) Отображение [ ]ф из


определения 5.5.9 удовлетворяет следующим условиям:
1- Ы® = р(х);
2. ка]ф —а для аеФ(У);
3. =
4. =
(ii) ЭДФ есть h-модель, изоморфная ЭД(С).
Доказательство, (i) Установим, например, свойство 4.
Положим ро = ф-1 о р и Д = FV (Хх.Р). Тогда
[Хх.Р]ф = Ф(б о Лс ([Р]Д1 х)0 Ро) (*) (где мы предположили для
простоты, что ф-1 (Р) = Р) —
= а(л5е4(Ф(Ии)(рА))==
= □ (ЛДФ ([Р1Д1 х) (р (х: = d)4- *)) =
= П(А^.Ф ([Р]д> х о Р0(х: = ф-1 (d))4- *
))( =
= П(Л^.ф([Р^,ор(х.^)) =
= а(ЛФ]рф(х:.Д

(ii) Отображение ф: ЭД (С)-> ЭДФ является изоморфизмом


в силу определения 5.5.9 (iv). В силу условия 4 отсюда сле­
дует, что ЭДФ является X-моделью. □
ЭДФ называется конкретным вариантом ЭД (С) (под действием
функтора Ф).
Теперь мы докажем, что любая Х-алгебра может быть полу­
чена из некоторой д. з.к. с рефлексивным объектом.
5.5.11. Определение. Пусть §1 — некоторая Х-алгебра. Обо­
лочка Каруби этой алгебры, обозначаемая через С (91),— это
категория, определяемая следующим образом. Положим а°Ь =
= kx.a(bx) для а, b е 91.
Множество объектов категории: (а е 911 а ° а — а}.
Множество морфизмов: Нот (а, b) = {/’ е 91] b ° f о а = [}.
Тождественный морфизм: ida = а.
Композиция морфизмов: f ° g.
Легко проверить, что С (91) —действительно категория.
Каруби [1978] определил оболочку для аддитивных катего­
рий, назвав ее «производная псевдоабелева категория». Эта
конструкция может быть обобщена на произвольные категории.
Затем это понятие следующим образом применяется к Х-ал-
гебре 91. Вводится моноид
ЭД (91)| = ({а (= 911 а = 1а), о, /),
126 Гл. 5. Модели

рассматриваемый как категория с единственным объектом, мор­


физмами которой служат ae2R(?l) со своей композицией.
Нам нужны некоторые обозначения, связанные с Х-исчисле-
нием. Пусть [М, N] = Xz.zMN— спаривающая функция Х-исчис-
ления с проекциями л,- — Ту.у(Ха^г.а,) для i = 1, 2. Пусть
[All] — Mi, [Mi........ M„+i] = [[Mi, ..., M„], Mrt+i], и пусть
л” — построенные каноническим образом Z-термы, такие, что
..., Мп] = М1 для 1 [л| = Л ^+i1=3t2; я?+1 =
= л"ол1 для 1
5.5.12. Предложение (Скотт, [1980]). (i) С(51) — д.з.к.
(ii) / — рефлексивный объект в С (91) с соответствующим
отображением F = G — 1.
Доказательство, (i) 1. Терминальным объектом яв­
ляется t — 'Кху.у. Заметим, что f: а= t.
2. Произведения. Пусть аь а2еС(§1). Тогда а< X «2 =
= Xz.fai (ллз), 02(212.2)]— декартово произведение с проекциями
ра,а, — оя

<f,g> = hz.[fz,gz].
3. Степени. Для а, 6еС(Я) положим
ba = kz.b°zoa, eva,b — Kz.b (л{г (a(ji2z))), A(f) = Kxy.f [x, у].
Вычисления, показывающие, что все нужные условия выпол­
нены, проводятся непосредственно и предоставляются читателю.
(ii) Заметим, что Л = 1, 1: 1 —1: /->-1 и 1 ° 1 — 1 = idi. □
5.5.13. Теорема (Койманс [1982]). 301(0(21), /, 1, 1)§1.
Доказательство. Обозначим 5Л(С(?1)) через ЭЛ. Индук­
цией по построению терма /ИеА можно доказать равенство
ч [М]® = Лг.М [хр .... хп: = л^г, л"г].
Рассмотрим, например, случай М = Ку.Р.
1Ху.Р^ = ОоА(1РГх.у) =
= 1 о Xpq. (Xz.P [хр ..., хп, у: = л«+‘г........ [Р> <71 =

= hpq.P[xv хп, у:=л^р, ..., л“р, q] =
= акр.(/щ.Р)[х,, .... x„: = 2t"p, .... л"р] =
= akz.M [хр хп-. = 2t«z, ..., лппг].
Обозначим через 0 операцию применения функции к аргу­
менту в модели 21. Заметим, что
aQ b = Ар о (a, b) — ev,., ° (1 ° а, Ь) = Az.evy, 1 [1 (az), bz) —
= Fz.az (bz) — Sab.
5.6. Другие описания моделей 127

Определим теперь операцию ср: 21 ->Эй, полагая ср(а) = Ка.


Очевидно, что ср инъективна. Если хе|/| = /->/, то х — кон­
станта, так что х = К(х1) = ср(х7). Поэтому ср сюръективна.
Наконец, ср — гомоморфизм. Действительно,
1. y(xy)==K(xy)==S(Kx){Ky) (так как Эй есть Х-алгебра)=
= Ф W 0 ф (у),
2. ср (К) = КК = [Кр в силу ( + ), и аналогичные соотноше­
ния имеют место для S.
Поэтому ср — изоморфизм и 21 2Й. □
Из предыдущего следует, что любая Х-алгебра (Х-модель)
может быть получена из д. з. к. с рефлексивным объектом U
(имеющим достаточно точек).
Замечания, (i) Нетрудно показать (см. Койманс [1982]),
что если 21 есть Х-модель, то любой объект категории С (21)
имеет достаточно точек.
(ii) В общем случае неверно, что С (Эй (С, С7))е=С. Катего­
рия С может иметь гораздо больше объектов.
Понятие гомоморфизма Х-алгебр допускает категорную ха­
рактеризацию.
5.5.14. Определение. Функтор Ф из одной д. з. к. в другую на­
зывается декартовым, если он сохраняет терминальный объект,
произведения и степени.
5.5.15. Предложение. (i) Пусть С,- (i — 1, 2) — д. з. к.
с рефлексивными объектами Ui через морфизмы Fi, Gt.
Пусть Ф: Ci-^-Сг — декартов функтор, такой, что Ф(£Л) = 1К,
ф(/71) = Е2, Ф(С?1)=С2. Тогда Ф индуцирует гомоморфизм
*:
Ф Зй(С1)->-Э1(С2).
(ii) Если ср: 211 -> 21г — гомоморфизм, то он индуцирует де­
картов функтор ср+: С (211)-*■ С (21г), сохраняющий рефлексивные
элементы I и ретракцию 1. Кроме того, ср+ * = <р с точностью до
изоморфизма.
Доказательство, (i) Для х е | U\ | положим по опреде­
лению Ф *(х) — Ф(х)е| 0|- Это — гомоморфизм, так как со­
храняются F, G и декартова структура.
(ii) Для объекта aeC(2li) положим по определению
ср+(а) = ср(а), а для морфизма f е Нотсом (а, Ь) положим
ср+ ())=:ф(^). Так как ср сохраняет все замкнутые Х-термы, мы
получили декартов функтор, сохраняющий I и 1. Очевидно, что
* = ср на ЗЙ(С(21))^21. □
<р+

5.6. Другие описания моделей. Категоричные модели


Ламбда-модели были определены как ламбда-алгебры, удов­
летворяющие аксиоме Майера — Скотта. Так как комбинатор­
ные аксиомы, описывающие Х-алгебры, трудно обозримы, можно
128 Гл. 5. Модели

попробовать упрощать их при наличии этой новой аксиомы.


Получающийся результат установлен (независимо) Майером и
Скоттом.
5.6.1. Определение. Введем следующие комбинаторные
термы:
li = l = S(K7); 1„+1 = S(X1)(S(K1„)).
Замечание. Результаты 5.6.2, 5.6.3 и 5.6.6(i) сохраняются,
если использовать более простое определение lj = 1, 1„+1 =
= S(K1„).
5.6.2. Лемма, (i) Если ЗЯ — комбинаторная алгебра, то
bn — ab\ ... Ьп-
(ii) Если ЭЛ есть К-алгебра, то
ЭЛ |= 1,г = \ab\ ... bn.ab\ ... Ьп.
Доказательство. Каждый из пунктов (i), (ii) доказы­
вается индукцией по п. Например, в Х-алгебре
li = S (KI) = (Xxt/z.xz(yz))(KI) = Ъуг. K\z(yz) —kyz.yz. □
5.6.3. Теоремэ (Майер [1982], Скотт [1980]). Пусть
©I = <Х, ■, k, s). Тогда ЭЛ является К-алгеброй в том и только
том случае, когда она удовлетворяет следующим условиям:
1. Кху = х;
2. Sxyz = xz (yz)-,
3. yx(ax = bx)-=>la = lb-,
4. 12К = К;
5. 13S = S.
Доказательство. (=>) Если ЭЛ — некоторая X-модель,
то соотношения 1, 2, 3 имеют место по определению. Далее, так
как ЭЛ есть Х-алгебра, то выполняются и соотношения 4, 5, ибо
эти равенства доказуемы в X.
(<=) Покажем сначала, что для всех а, b еЗЛ имеют место
равенства 1 ( Ка) = Ка и 1 (Sab) = Sab.
Действительно, Ка = 12Ка = S(K1) Ка = 1 (Ка) и анало­
гично для S.
Так как Хх.А всегда имеет вид КР или SPQ, отсюда сле­
дует, что
(*) 1 (Хх.А) = Хх.А.
Это влечет слабую экстенсиональность ЭЛ:
ух (А = В) => ух ((Хх.А) х = (Хх.В) х) =>
=> 1 (Хх.А) = 1 (Хх.В) (в силу 3)=>
=> Хх.А = Хх.В (в силу (*)).
5.6. Другие описания моделей 129

Остается показать, что есть Х-алгебра. По лемме 5.2.3


достаточно показать, что
(a) XHM = A=>2Jl^=M = W,
(b) Ш1НК = Клсг, Э1|= S = Sx,CL.
Пункт (а) получается теперь индукцией по доказательству
равенства М = N, причем слабая экстенсиональность исполь­
зуется при рассмотрении правила Р = Q => Кх.Р = Kx.Q.
Пункт (Ь) мы докажем в несколько шагов.
Шаг 1. Vxb ••• , хп(ах, хп=Ьх, ••• хп)=> \па = \nb.
Доказательство получается индукцией по п. Если
п= 1, то это условие 3.
Если rt = p+ 1, то (обозначая предположение индукции че­
рез Ш) имеем
axi ... хр+1 = 6X1 ... хр+1 => 1р (ах,) = 1р (Ьх,) =>
IH
=>S(Kip)ах, = S (Kip) bx, => 1 (S (Kip)a) = 1 (S(Klp) b) =>
^S(Kl)(S(Klp))a = S(Kl)(S(Klp))6 => lp+ia = lp+i6. Ch
Шаг 2. 1 (lna) = lna.
Доказательство. Отметим сначала, что lax = ах, от­
куда 1 (1 а) = la в силу условия 3. Поэтому для п — 1 все в по­
рядке. Если п = р + 1, то 1па = 1 (•••), откуда
1(1яа)= 1(1-)= 1 -=1„а. П8
Шаг 3. 1ДХХ1 ••• хп.А)—Кх, ••• х„.А.
Доказательство индукцией по п. Если п = 1, то это
соотношение (* ). Если п = р + 1, то
lrt (Xxj ... хп.А) Xj = S (KI) (S (Kl„)) (Xxj ... х„.А) х, =
= 1„(Хх2 ... хп.А) = Хх2 ... хп.А = (кх, ... хп.А) х,.
IH

Следовательно, l(ln(Xxi ••• xn.A))=l(Xxi ••• хп.А) и по­


тому ln(Xxi ••• хп.А)— Xxi ••• хп.А в силу (*) и шага 2. П3
Пусть, наконец, К' = Кх, cl — Xxt/.x. Тогда
Кху = х =К'ху => 12К = 12К/(в силу шага 1)=>К = К'
(в силу условия 4 и шага 3).
Аналогично получаем S — Xxyz.xz(yz). □
Следующее определение Майера [1982] еще более упрощает
описание сущности Х-модели.
5.6.4. Определение, (i) Комбинаторная модель — это струк­
тура SD? = <Х, •, k, s, е>, удовлетворяющая следующим соотно­
шениям:
(1) Кху = х;
(2) Sxyz = хг(уз);
5 X. Варендрегт
130 Гл. 5. Модели

(3) ъху = ху,


(4) \/х(ах — Ьх)-+ га = eb.
(ii) Комбинаторная модель называется устойчивой, если вы­
полнены также соотношения
(5) ее = е;
(6) е2К = К;
(7) e3S = S.
Здесь подразумевается, что ei = e, en+i = S(Ke) (S(Ken)).
5.6.5. Лемма. Пусть № = (X, •, k, s, e) — комбинаторная мо­
дель. Тогда
(i) e„+1a = a о ea — a/\\fx (en (ax) — ax).
(ii) ena = a \jxx ... xt (e (ax{ ... х{) = ах{ ... xz),0^z < n.
(iii) устойчива<=> e, k, ka, s, sa, sab являются при любых
a, b фиксированными точками для е.
Доказательство, (i) (=>) По предположению
(1) a — S(Ke.) (S(Ken))a = e(S(Ken)a).
Отсюда по определению 5.6.4 (3) получаем ax — S(Ken)ax —
~еп(ах), откуда, согласно 5.6.4(4) и (1), га = E(S(Ke,n)a) = а.
(<=) В любой комбинаторной модели имеет место eab = ab,
поэтому
(2) е(еа)= еа.
Далее, e„+ia = e(S(Ken)a), откуда в силу (2)
(3) е (e^ia) == e^+itz,
но, кроме того, e,n+iax — гп(ах) = ах. Отсюда по определению
5.6.4(4) и предположению имеем e(en+ia) = еа = а. Вместе
с (3) это дает en+ia = а.
(ii) устанавливается индукцией по и с помощью п. (i).
(iii) (=>) Доказательство для Sab:
Sab = e3Sab = e(Sab).
Доказательство для Sa:
Sa = e3Sa = S (Ke) (Sa),
откуда в силу (4) и (2) следует, что Sa — неподвижная точка
для е.
Аналогичным образом получается, что S, Ka и К — непо­
движные точки. По предположению е есть неподвижная точка
для е.
(<=) Имеет место по предположению и (ii). □
5.6.6. Предложение. (i) Пусть SR = (X, ■, k, s, е> — устой­
чивая комбинаторная модель. Тогда е=1 и (X,-,k,s} есть
^-модель. Кроме того, элементы k, s однозначно определяются
выбором е.
5.6. Другие описания моделей 131

(ii) Если W — (X, •, k, s, г>— комбинаторная модель, то


SR' = <Х, ■, k', s', б') , где fe' — e2fe, s' — г3к и е' — ее — устойчи­
вая комбинаторная модель.
Доказательство, (i) Заметим, что ху = 1ху. Отсюда
следует, что
ех = е(1х) (по определению 5.6.4 (4)) =
— 1х (по лемме 5.6.5 (iii), так как 1х = S(KZ)x)=>
=>ee = el (по определению 5.6.4 (4)) =>
=>е=1 в силу устойчивости и леммы 5.6.5 (iii).
Поэтому <Х, •, k,s} является Х-моделью в силу теоремы 5.6.3.
Чтобы установить единственность k, s, допустим, что
<Х, ■, ko, So, е> — также устойчивая комбинаторная модель, и по­
кажем, что k — k0, s — s0. Имеем
* koxy => е (kx) = е (feox) =>. s (fee) kx — s (ke) kox =>
kxy — х =
=> e (e (fee) fe) = e (s (fee) fe0) => e2fe = e2fe0 => fe = fe0
Аналогично устанавливается, что s = s0.
(ii) Пусть теперь x^{e',k',k'a,s',s'a,s'ab}. По лемме
5.6.5 (iii) достаточно показать, что ex = х, так как тогда
е'х = еех = ех = х. Простые вычисления показывают, что
х — еу для некоторого у (например, х — k' — e2fe =
= s(fee) (s(fee))fe = e(s(fee)fe)). Тогда из 5.6.5 (2) следует, что
ex = е(еу) = еу — х. □
Хотя в Х-модели элементы fe, 5 однозначно определяются
элементом l==s(fe/), отображение, сохраняющее аппликацию
и 1, не обязательно является гомоморфизмом: достаточно рас­
смотреть константное отображение Дх.1': 2R->2R'.
5.6.7. Определение, (i) Пусть 5R = (X, •)—комбинаторно
полная аппликативная структура. Ее расширение — это комби­
наторная алгебра вида (2R, fe, s) = (X, •, fe, s).
(ii) 3R = (X, •) называется категоричной Х-моделью (Х-ал-
геброй, комбинаторной алгеброй), если имеется единственное
расширение (ЭЯ, fe, s), превращающее ЭЯ в Х-модель (Х-алгебру,
комбинаторную алгебру).
(iii) Элемент е называется устойчивым, если ee==eAea& =
= ab Л \fx (ах = Ьх) -> га = eb.
5.6.8. Теорема. (О Пусть структура 2R = (Х, •) комбинаторно
полна. Пусть [X ->• X] = {f: X -> X | f представима}. Определим
отображение F: Х->[Х->Х], полагая Е(х}(у)= ху. Тогда 2R
б*
132 Гл. 5. Модели

может быть расширена до Х-модели в том и только том случае,


когда существует отображение G: [Х- *
Х]->Х, такое, что
1./oG = idlx^^; 2. G°F(=[X-+X].
(ii) Отображения G, удовлетворяющие соотношениям 1, 2
«• (0. в точности соответствуют устойчивым элементам е.
(iii) ЗИ — категоричная Х-модель тогда и только тогда, когда
Gen. (i) определено однозначно, тогда и только тогда, когда
имеется единственный устойчивый е.
Доказательство, (i) (=>) Допустим, что (ВД, k, s) яв­
ляется Х-моделью. Положим G(f) = laf для какого-нибудь эле­
мента Of, представляющего f. Это определение корректно: если
ax = f(x)=a'x для всех х, то 1а = 1а' по аксиоме Майера —
Скотта. Очевидным образом F(la;) — F(a;) = f, откуда
FoG = id. Далее, G оF(а) — la, так как а представляет F(a);
следовательно, G °F представимо.
(«$=) Пусть ko, s0^X удовлетворяют аксиомам для k, s. По­
ложим e,o—G(G°F). Тогда (X, •, ko, s0, ео)— комбинаторная
модель. Действительно,

Bofib = G (G о F) ab = F (F о G (G ° F) (а)) (Ь) =


= F (а) (Ь) (так как F ° G — id) — ab,
ух (ах = bx) => F (а) = F (b) => G ° F (а) = G ° F (Ь) =ф- еоа — е0Ь,

так как ео представляет Go/7.


Отсюда следует в силу предложения 5.6.6 (ii), что 3R можно
расширить до Х-модели.
(ii) По аналогии с (i) положим Ge(f) = eaf и bq — G(G°F).
Заметим сначала, что &о действительно устойчив: ваеа =
— F(eG)sq = F(G(G °F)) (G(G <>F)) = eG.
Далее, AG.e0 и Ae.G8 взаимно обратны:

(?е0 (D = 80af = F °G (G»F) (at) ~G°F (af) - G (f);


eOe — Ge (Ge °F) = eaaRoF —
= ее (так как e представляет Gt»F Ge° F (b) = гарщ = e&) = e.
(iii) ffll— категоричная Х-модель -фф-
■фф- существуют и единственны k, s, превращающие 2Л в Х-мо-
дель <Ф-
-фф- существуют и единственны k, s, е, превращающие £01 в устой­
чивую комбинаторную модель -фф-
-фф- имеется единственный устойчивый е -ФФ-
-фф- имеется единственное G, удовлетворяющее 1 и 2 из (i). □
5.7. Обзор части V 133

5.7. Обзор части V


Гл.18. Построение моделей
18.1. Графиковая модель Ра
Теорема. Пусть отображение f: Ра-а-Ра непрерывно в топо­
логии Скотта на п.ч.у.м. (Pw, s). Тогда f полностью опреде­
ляется множеством
graph(f) = {(п,т)|тЕ/(ел)}еРй,
где ео, ei, ... — нумерация конечных элементов множества Ра,
и (п, пг) — спаривающая функция на N.
Теорема. Отображение
graph: [Ра -> Рсо]-> Pw
— вложение множества [Рю—>-Р(о] в Ра в качестве ретракта.
Следовательно, в силу теоремы из § 5.4 можно считать
Ра Х-моделью.

18.2. Модель D™
Определение. Пусть D — п.ч.у.м. Положим по определению
Do — D, Dn+\ — [Dn—>Dn].
Теорема. Существуют отображения е [£)л+1-> £)л], такие
что для проективного предела Dx = lim Dn, ip „ имеет место
изоморфизм D оо = [Р ОО .
В частности, в силу § 5.4 Dx — экстенсиональная Х-модель.
18.3. Модель S9
29— множество деревьев бёмовского типа, рассматриваемое
как п. ч. у. м.
Определение. Для А, В е 23 положим А • В = (J ВТ (,МАпМвп\
п
где УИдЛ — терм, соответствующий n-й аппроксимации А.
Теорема. Операция А ■ В корректно определена и непрерывна
на 29, причем ВТ (MN) = ВТ (М) • ВТ(N).
Теорема. (S3, •) — это Х-модель, такая, что для всех
M,N^A
89 Н М = ВТ(Л4) = BT(AQ.
18.4. Упражнения
134 Гл. 5. Модели

Гл. 19. Локальная структура моделей


19.1. Локальная структура модели В®
Теорема (теорема характеризации для Р®).
Р® |= м = N <=> ВТ (М) = ВТ (N),
(Лф s ВТ (N).
Основным инструментом при доказательстве этого утвержде­
ния является следующая теорема аппроксимации, утверждаю­
щая фактически, что отображение интерпретации [ ]р: А->Р®
непрерывно (в топологии Скотта на Р® и топологии деревьев
на А).
Теорема. Если М е А, то М = |J Л1<й) в Ра.
k
19.2. Локальная структура модели D™
Теорема (теорема характеризации для Dx).
[=Л4 = Ao М = А е ВТ(Л1) = т] ВТ(А)о
о ооц ВТ (М) = сю г] ВТ (А),
Dx |= М Е N <=> ВТ (Мр S’! ВТ (А) О ооП ВТ (М) s= оо ц ВТ (А).
И снова основным инструментом является (приводимая
ниже) теорема аппроксимации.
Теорема. В Dx имеет место равенство М —
k
Из теоремы аппроксимации получается следующее утверж­
дение.
Теорема. £>^1=®; в частности, внутренность модели D^.
экстенсиональна.

19.3. Непрерывные Х-модели


Определение. Непрерывная Х-модель — это структура
да = (Х,-,Х), которая является как п.ч.у.м., так и ^-моделью,
причем операция • непрерывна и имеет место теорема аппрок­
симации.
Теорема. Ра, и ^ — непрерывные Х-модели.
Теорема. Если S9?—непрерывная Х-модель, то
ВТ(М) = ВТ (А) => ЭД Н= М = N.
Теорема. Пусть да— непрерывная Х-модель и У^Л— ком­
бинатор неподвижной точки. Тогда У представляет в да опера­
тор наименьшей неподвижной точки для п. ч. у. м. да.
5.7. Обзор части V 135

19.4. Упражнения
Гл.20. Глобальная структура моделей
20.1. Экстенсиональность, категоричность
Теорема, (i) Модель (Xtj) экстенсиональна, а модель
ЭД°(1п)— нет.
SSl(k) слабо экстенсиональна, а 9Л°(1)— нет.
(ii) Справедливы аналогичные утверждения, получающиеся
заменой к на Уб или У! в (i).
Теорема, (i) Ни Ра>, ни Ра>° не экстенсиональны.
(ii) Как Doo, так и экстенсиональны.
Теорема, к-модель Ра> категорична, a Da не категорична.
Р& не является категоричной комбинаторной алгеброй
20.2. Свойство области
Определение. Мы говорим, что Х-алгебра ЯЛ дискриминирует
области, если область значений любой определимой функции
на ИЯ бесконечна или одноэлементна.
Теорема, (i) Любая открытая модель из термов ЭЛ(£Г)
дискриминирует области.
(ii) Если теория рекурсивно перечислима, то 2Л°(^")
дискриминирует области.
(iii) Если ЯЛ — непрерывная ^-модель, то ЯП и ЯЛ° дискрими­
нируют области.
20.3. Результаты о неопределимости
Теорема (неопределимость дискриминатора б, введенного
Чёрчем). Невозможен терм SgA, такой, что для всех замкну­
тых н. ф.
Т, если М = N,
F, если М N.
Теорема. Определимое отображение на ЯЯ(&~) (или, в слу­
чае рекурсивно перечислимой теории , на №°(£Г)), значе­
ниями которого являются (не обязательно все) цифры, по­
стоянно.
20.4. Локальная и глобальная представимость
*ЯЛ
Определения, (i) Отображение ср: ЯЛ- локально предста­
вимо, если для любого 6 е ЯЛ представима функция фь, опре­
деляемая соотношением ф
(а) = <р (а) -Ь.
*
136 Гл. 5. Модели

(ii) Х-алгебра ЭЛ называется богатой, если любое локально


представимое отображение <р: ЗЛ->ЭЛ является представимым.
Теорема. ЭЛ богата => ЭЛ экстенсиональна.
Теорема. ЭЛ(Хт]) , ЭЛ(<3^1]) и Dx богаты.
Теорема. Если ЯЛ — жесткая и является моделью теории <%,
то ЯЛ не богата.

20.5. Топология деревьев на моделях


Определения. Пусть ЭЛ— модель из открытых (или замкну­
тых) термов. Топология деревьев на ЭЛ —это наиболее сильная
топология, в которой непрерывно отображение [ ]: А—>ЭЛ (где
Л имеет топологию деревьев).
Предложение. Пусть ЭЛ — модель из открытых или замкну­
тых термов.
(i) ЭЛ полуосмысленна => ЭЛ не является недискретной.
(ii) Если ЭЛ полуосмысленна, то для любого Me А
М неразрешим => единственная окрестность М
в ЯЛ — все пространство.
Предложение. Пусть ЭЛ есть ЭЛ (17
*) или ЯЛ°(^), где
£Г = К, Хт], & или Тогда для любого МеА
М имеет н.ф.=з-М изолирован в ЯЛ.

20.6. Упражнения
Гл.21. Комбинаторные группы
21.1. Комбинаторные полугруппы
Определение. Пусть ЭЛ — Х-алгебра, такая, что 1 = 1. Тогда по
определению
(i) S(5K) есть моноид ({1а| а е ЭЛ} о, I);
(ii) G(3Jl) есть подгруппа моноида 5(ЭЛ), состоящая из об­
ратимых элементов;
(iii) если — некоторая Х-теория, то S(0~) = S(ЭЛ(&~)),
G(^) = О(ЯЛ{бГ)).
Теорема. S°(Xt]) = 5(ЭЛ°(Хт])) — рекурсивно представленная
группа с двумя порождающими элементами и неразрешимой
проблемой тождества слов.
5.7. Обзор части V 137

21.2. Характеризация обратимости


Определение. Дерево называется наследственной пе­
рестановкой (<2^?), если А имеет вид

где л, о, т — перестановки, а числа п, т\.........тп, ... произ­


вольны. Это дерево может быть конечным или бесконечным.
Если дерево конечно, то А называется конечной наследствен­
ной перестановкой (йГ^й3).
Теорема, (i) М е S (Х/q) обратим<=> WT (М) есть
(ii) обратиместь ЖАТ.
Следствие, (i) G (Xq) — G (Х<о) = G (<3^q) = G (Жал).
)2
(ii) G(^
* G(Xq).
21.3. Группы G(Xq) и
Определение, (i) Через Sm обозначим группу перестановок
множества N, сдвигающих лишь конечное множество чисел.
(ii) Если G — группа, то G- — ее слабая бесконечная сте­
пень, т. е. множество последовательностей, у которых почти все
координаты совпадают с единичным элементом.
(iii) Для группы G обозначим через G“®Sra полупрямое
произведение G- и 5м,где л е Sa действует на элементы группы
G“ очевидным образом: <х0, хь .. .>я = <хя0, Хщ, .. .>.
Определение, (i) Пусть G0={e} — тривиальная группа. По­
ложим по определению Gn+l = G~® Имеются очевидные
отображения fn:Gn-+- G„+i и gn: Gn+i-^Gn. Введем следующие
обозначения.
(ii) G = lim(G„, f„), G = Hm(G„, gn).
Gr — рекурсивный проективный предел, состоящий из всех
рекурсивных (при некотором кодировании) последовательностей
<х0, Xi, . . .>, таких, что £Дхя+1) — хп.
Теорема. G(/.q)=-G, G(^ )^G
* r, G(£>oo)2G.
138 Гл. 5. Модели

21.4. Упражнения
Этим завершается обзор части V.
5.8. Упражнения
5.8.1. Пусть 34— комбинаторная алгебра. Показать, что в Эй
(i) Зя Уху (ахху = хуу),
(ii) За Уху (ахху = хаа).
5.8.2 (Баррендрегт и Койманс [1980]). Определить комбинаторную ал­
гебру 34 (С£). Показать, что эту структуру нельзя превратить в Х-алгебру.
5.8.3 (Койманс). Пусть 34ь 342— произвольные Х-алгебры. Построить
категорное произведение 34i X ®1г и показать, что Th (34] X ®12) = Th (34]) (]
0Th(S42).
5.8.4 (Г. Волькен). Пусть 34 = (X, •)—аппликативная структура, а
&= и семейство функций, такое, что (V/ е §n) f: Хп -> X.
п
$ называется комбинаторным семейством на ЭД, если выполнены следую­
щие условия:
1. содержит все алгебраические функции на ЭД;
2. (Vf s 8fe+,) (3g е= gfe) Уху (g(y).x = f(y, х))-
8 называется k-семейством на ЗЯ, если выполнены следующие условия:
1. 8 содержит все алгебраические функции на 34 и замкнуто относи­
тельно подстановки констант (т. е. если f е 82, а а е X, то &y.f(a, у) e0ft).
2. Имеется отображение G:8i->-X, такое, что (Vfe^i) Ух (G (f).x=f (х))
3. (Vf s gfe+ i)(M.G (^x.f(y,
(i) Показать, что на ЗЯ т. и т. т. существует комбинаторное семейство,
когда ЗВ можно расширить до комбинаторной алгебры.
(ii) Показать, что на 34 т. и т. т. существует Х-семейство, когда 34 можно
расширить до Х-модели.
5.8.5. (Ф. Хонзелл). Воспользуемся следующим утверждением (которое
будет доказано в упражнении 6.8.15):
(-Х-) Любую конечную аппликативную структуру можно вложить в лю­
бую комбинаторную алгебру.
Показать, что любую аппликативную структуру можно вложить в неко­
торую экстенсиональную Х-модель. [Указание. Использовать (* ) и теорему
о компактности для логики первого порядка].
См. также упр. 18.4.29 и 18.4.31.
5.8.6 (Ф. Хонзелл). Пусть D — п. ч.у. м. с Card (В) = No.
Показать, что Card ([£)—> О]) = 2н0. Поэтому невозможно счетное реф­
лексивное п.ч.у.м. [Указание. Рассмотреть следующие 4 случая.
1) -рей (х не компактен);
2. Ух е D (х компактен);
2.1. Отношение СТ не фундировано;
2.2. Отношение СТ фундировано;
2.2.1. (Ух е D) ({у | у с= х) конечно),
2.2.2. (Зх е D)({y\y х) бесконечно).
В случае 1 пусть х0СТ X] СТ х2 ....причем х„ = х. Воспользоваться тем,
что Do = {хо, Xi, ..., Хи} — непрерывная решетка и потому инъективна;
см. упр. 1.3.17.]
5.8.7. (1) Вычислить [А1]]Ол для М — I, К, S, Q.
(ii) (Лонго [1983]). Дляf е [Вд-> положим Хлх.[ (х) = (XGx.f (х)) U
ид. Показать, что kAx.f (х) также представляет функцию Д
Часть II
Конверсия

Бём (1967) Дедзани-Чанкальини


(фотография
Я. Клопа, 1978)
' Глава 6
Классическое
ламбда-исчисление

В этой главе изучается множество Л с точностью до [3-кон­


вертируемости. В силу соглашения 3.2.11 это отношение конг­
руэнтности обозначается через =. Аналогичным образом [3-ре­
дукция обозначается через —
Основные из рассматриваемых вопросов — это теоремы о не­
подвижной точке, введение цифр и представление рекурсивных
функций на них.

6.1. Комбинаторы неподвижной точки


Теорема 2.1.5 о неподвижной точке — один из основных ре­
зультатов Х-исчисления. Читатель, возможно, заметил одну осо­
бенность в доказательстве этой теоремы. Чтобы установить, что
FA = X, мы начинаем с терма X и редуцируем его к FX, а не
наоборот.

6.1.1. Теорема. yF^X (X FX).


Доказательство. Положим W = Kx.F(xx) и X = WW.
Тогда
X = (Xx.F(xx)) W-+ F (WW) = FX. □
Это объясняет, почему нас озадачивают родственные кон­
струкции в гёделевском рефлексивном предложении или в тео­
реме о рекурсии; см. § 6.7 ниже.
Из доказательства теоремы 2.1.5 видно, что неподвижные
точки можно находить равномерно.
6.1.2. Определение. Комбинатор неподвижной точки — это
терм М, такой, что XfF(MF = F(MF)), т. е. MF — неподвижная
точка для F.
6.1.3. Следствие. Пусть Y = Kf.(Kx.f (хх) (kx.f (хх)). Тогда Y —
комбинатор неподвижной точки.
6.2. Стандартные комбинаторы 141

Доказательство. Пусть W = Kx.F (хх). Тогда


YF = WW = F (WW) = F(YF). □
Терм Y называется парадоксальным комбинатором Карри.
Заметим, что Yf f (YF) не имеет места. Поэтому полезны
следующие обозначения.
6.1.4. Определение (Тьюринг [1937а]). Пусть А=
- Кху.у(хху). Положим 0 =н АА.
6.1.5. Следствие. 0FF (0F).
Доказательство. OF = AAF F (AAF)^ F (OF). □
Следующий пример показывает, как можно использовать тео­
рему о неподвижной точке.
Задача. Построить F, такой, что
(1) Fxy = FyxF.
Решение. (1) следует из равенства F = Kxy.FyxF, а оно вы­
текает из F — (kfxy.fyxf)F. Теперь положим F sY (kfxy.fyxf),
и все в порядке. □
В общем случае имеем следующее
6.1.6. Предложение. Пусть C = C(f,x) — терм. Тогда
(1) з? mn (fn = c(f, nJ),
(ii) ЭРУК (jFN ~^»c(f, tf)).
Доказательство. Положим F = Y (xf x.c(f, x)) или,
еще лучше, F = 0(kfx.C (f, x)). □
Дополнительная информация о неподвижных точках имеется
в § 6.5.
6.2. Стандартные комбинаторы
В § 2.1. были определены комбинаторы I, К, S. В этом
пункте вводятся другие термы и важные операции над термами.
6.2.1. Определение. Й ее сои, где ш^Хх.хх. Заметим, что
терм й не находится в н. ф. и редуцируется только к самому
себе. Поэтому в силу следствия 3.2.9 Й не имеет н. ф. В дей­
ствительности й— простейший терм, не имеющий н. ф. Заме­
тим еще, что YI = й.
6.2.2. Определение (истинностные значения).
Т Ххг/.х, F Кху.у.
Отсюда имеем FMN-^N. Заметим, что Т^К,
F «— KI.
142 Гл. 6. Классическое ламбда-исчисление

6.2.3. Определение (условное выражение). Пусть В (от


boolean) — некоторый терм. Тогда выражение
если В, то М, иначе N
обозначает терм BMN. Если В = Т (соответственно B = F),
то это выражение равно М (соответственно N). Если В отли­
чен от Т и F, то BMN может быть произвольным.
Как и в случае арифметики или теории множеств, в Х-исчис-
лении можно определить упорядоченные пары. Следующее оп­
ределение принадлежит Чёрчу.
6.2.4. Определение (спаривание).
[Al, 1V] = Xz.zMA1, (М)0 = МТ,
Отсюда
([Мо, Mi]);—z = О, 1.
Это спаривание не удовлетворяет обычному ограничению сюръек­
тивности: соотношение [(А4)о, (M)i]=M не имеет места в об­
щем случае. В действительности сюръективного спаривания
вообще не существует — см. упр. 15.4.4 и Барендрегт [1974].
га-ки можно определить двумя способами. Первый — индук­
тивный с использованием операции [ , ].
6.2.5. Определение (конечных последовательностей).
[М] = М, [Мо, ..., А4,1+1] = [Мо, [Мь ..., Мл+1] ].
Результат более прямого определения будет обозначен через
<М0, ..., Мл>.
6.2.6. Определение. Шо, •••, Мп) = kz.zM0 ••• Мп.
* ‘ Легко построить функции-проекции для введенных кодиро­
вок.
6.2.7. Определение.
(i) я]1 = Zx.x F~; Т, 0^z<ra,
л« = Xx.xF~".
(11) 11? = Ц ■ ■ ■ xn.xt, 0 < z < га,
Р" = Xx.xll".
Отсюда индукцией по га получаем, что для всех i га
л"[М0> ....
а также
Р«<М0, ...,
6.2.8. Определение (композиция). М oN = Tx.M(Nx).
В Х-исчислении можно определить различные системы цифр
(т. е. представлений натуральных чисел Х-термами). Удобным
6.3. Ламбда-определимость 143

оказывается следующее представление (другие системы см,


в §6.4).
6.2.9. Определение (цифры). Для каждого neN терм rti1
определяется следующим образом:
roi = |, !-i =[F>
Заметим, что цифры представляют собой попарно различные
нормальные формы.
6.2.10. Лемма (предшествование, следование, проверка на
нуль). Имеются термы S+, Р-, Zero, такие, что
S+rn', = rn+Г, р~г„+ i-i = rft-ir
Zero Г(Р = Т, Zero ги + 1 т = F.
Доказательство. Положим
S+ = A,x.[F, х], P~ = A.x.xF, Zero = A,x.xT.
Тогда доказываемые равенства получаются легко. □
6.2.11. Обозначения. yW+ = (S+M), ЛС_ = (Р’"А1).
Отметим, что r0_l~ = F.
Заметим, что в силу комбинаторной полноты все операции
над термами, введенные в этом пункте, определимы. Например,
терм Р, такой, что
VAf, N(PMN = [M, N]),
— это Р = Kxy.(Kz.zxy) == hxyz.zxy.

6.3. «Памбда-определимость
Х-исчисление представляет определенный класс (частичных)
функций на натуральных числах. В силу классического резуль­
тата Клини это в точности класс (частично) рекурсивных функ­
ций. В настоящем пункте рассматриваются всюду определен­
ные функции. Мы следуем идее Тьюринга [1937а] об использо­
вании комбинатора неподвижной точки для представления при­
митивной рекурсии и минимизации. Первоначальное доказатель­
ство Клини было несколько более сложным, так как построения
проводились в V-исчислении, см. § 9.2.
Числовая функция — это произвольное отображение <р: NP-*
N
для некоторого р е N.
6.3.1. Определение.Пусть <р — числовая функция от р аргу­
ментов. Тогда гр называется ^-определимой, если
(*) (V«i> •••> е N)(Krn1’1 ... гПр'1 = rqp («ь п рр
для некоторого А,
144 Гл. 6. Классическое ламбда-исчисление

Если выполняется («), то говорят, что <р ^-определяется


термом F. Так как цифры находятся в н.ф., из теоремы Чёрча —
Россера следует, что если F Х-определяет функцию <р, то
Frni~l ...г я,,'1 г <р(пь прр.
Обозначения. Если п = п\, ..., пр, то полагаем

г-
п sf/zp, ..., rnp~i.
В этих обозначениях (*) принимает вид
(Vft е Np) (FW = гф (n)-i).
Мы докажем, что для числовой функции ср
ср Х-определимач=>ф рекурсивна.
В § 8.4. понятие %-определимости будет обобщено на частич­
ные числовые функции. Тогда для частичных числовых функций
мы сможем доказать, что
ср ^-определима ср частично рекурсивна.
6.3.2. Определение. Исходные функции — это числовые функ­
ции Up, S+, Z, определяемые следующим образом:
Up{(n0, ..., пр) = пр 0<г<р; S+(a) = n+l, Z(n) = 0.
Пусть Р(п) — числовое отношение. Через упг[Р(пг)] обозна­
чается, как обычно, наименьшее число т, для которого верно
Р(т), если такое число существует; в противном случае
рлг[Р(т)] не определено.
6.3.3. Определение. Пусть st— некоторый класс числовых
функций.
(i) Говорят, что замкнут относительно композиции, если
из х, фь ..., следует, что функция ср, определенная
равенством
<р(ц) = %(ф1(«), Ф«(«)).
также принадлежит st.
(ii) Говорят, что st замкнут относительно примитивной ре­
курсии, если для любых %, ф е st функция ф, определенная
равенствами
ф(0,ц) = %(ц), ср(£+ l,n) = й),
также принадлежит st.
(iii) Говорят, что st замкнут относительно минимизации,
если для любой х st, такой, что
"г) = о),
6.3. Ламбда-определимость 145

функция <р, определенная равенством


<p(n)= pnlx(n, т) = 0],
также принадлежит
6.3.4. Определение. Класс рекурсивных функций — это
наименьший класс числовых функций, содержащий все исход­
ные функции и замкнутый относительно композиции, примитив­
ной рекурсии и минимизации.
6.3.5. Лемма. Исходные функции ^-определимы.
Доказательство. Определяющие термы таковы:
Uf = Лх0 • • • хр.х., S+ = A,x.[F, х], Z^ax/OI □
6.3.6. Лемма, ^-определимые функции замкнуты относи­
тельно композиции.
Доказательство. Пусть функции х, Фь •••, Ф™ Х-опре-
деляются термами G, Hlt Нт соответственно. Тогда функ­
ция
ф(я) = X(^i(«), •••. ^«(я))
Х-определяется термом
F^lx.G(Hix) ■•■(Нтх). □
6.3.7. Лемма, '/.-определимые функции замкнуты относи­
тельно примитивной рекурсии.
Доказательство. Пусть ф определена равенствами

ф(0,п) = х(л), Ф(£+ 1,л) = ф (tp(k,n)k,n),


где х и ф %-определены термами G и Н соответственно. Ин­
туитивный алгоритм вычисления ф(/г, п) таков.
Проверяем, верно ли k = 0.
Если да, то выдаем ответ х(я);
если нет, то вычисляем ф(ф(&—l,n), k—1, п).
Поэтому рассмотрим терм F, такой, что
-> -> /
Рху = если Zero х, то Gy, иначе Н \Fx у) х у.
Терм с этим свойством существует в силу предложения 6.1.6 и
определения 6.2.3. С помощью индукции по k отсюда получается
Frk^ Г/Р -= г <р (&, п)л т. е. функция ф ^-определяется тер­
мом F, Д
146 Гл. 6. Классическое ламбда-исчисление

6.3.8. Определение. Чтобы представить минимизацию, оп­


ределим для Ре А следующие термы:
Нр = &(khz. если Pz, то г, иначе hz+), рР HPrQ~l.
6.3.9. Предложение. Пусть терм Р е А таков, что для всех
neN
Рг/г”| = Т или Prti~l = F.
Тогда
(i) HР2 ■-»если Pz, то z, иначе HpZ
*.
(ii) Если ЗпРГп1 =Т, то положим m = цп [РГп~* = Т].
В атом случае цР — гтП.
Доказательство, (i) Достаточно применить следствие
6.1.5.
(ii) В силу (i)
(1) pr„-i=T=>/7prra-i==rn-i>
(2) PW = F => HPrn~i = НРгп + И.
Если т = рп [Ргп~1 = Т], то
(V& < т) (Рг^_| = F) и Рг/п'| = Т.
Следовательно,в силу (2)
Нрг(^ = НрГ\^ = ... —Нргт~'
и в силу (1) получаем НргтП=гпг\Итак, pP=Hpr0~i=rm'i. □
6.3.10. Лемма, ^-определимые функции замкнуты относитель­
но минимизации.
Доказательство. Пусть <p(n) = рпг[%(п, т) = 0], где
функция % Х-определена некоторым термом G. Определим те­
перь F так, чтобы выполнялось равенство
->
Fx = p[Zz/.Zero(Gxy)],
В силу предложения 6.3.9 (ii) терм F ^-определяет ср. □
6.3.11. Предложение. Все рекурсивные функции К-опреде^
лимы.
Доказательство. Применяем 6.3.5,6.3.6,6.3.7 и 6.3.10. □
6.3.12. Лемма. Пусть функция <р ^-определяется термом F.
Тогда для любых д me N
Ф (n) = m <=>Frn~l = rm~E
Доказательство. (=>) тривиально следует из опреде­
ления.
6.4. Цифровые системы 14?

(<=) Допустим, что FrпП = гrtf'. Тогда гшруг,Р = гт'\


Так как цифры — это различные нормальные формы, из тео-
->
ремы Чёрча — Россера следует, что <p(/z) = /n. □
6.3.13. Теорема (Клини), ^-определимые числовые функ­
ции— это в точности рекурсивные функции.
Доказательство. Если функция ф рекурсивна, то она
/.-определима по предложению 6.3.11. Если <р Z-определима и
F— это ^-определяющий ее терм, то по лемме 6.3.12
Ф (п) = щ <=>>. Н Fr ti1 — гт~>.
Так как X, рекурсивно аксиоматизирована, множество, опреде­
ляемое правой частью последней эквивалентности, рекурсивно
перечислимо. Поэтому график функции ф рекурсивно перечис­
лим, а следовательно, ф рекурсивна. □
6.3.14. Следствие. Пусть R s — отношение. Тогда оно ре­
курсивно в том и только том случае, когда найдется терм F,
такой, что
(*)
Доказательство. (=>) Пусть Kr — характеристическая
функция отношения R, т. е.
Кр (п) = 0 <=> R (п), Кд (и) = 1 R(ti).
Тогда Кк рекурсивна и, следовательно, Х-определима некото­
рым термом, который мы обозначим через И. Теперь берем
Fx = Zero (Нх).
(ч=) Из посылки следует, что К и ПК рекурсивно перечис­
лимы, а значит, оба они рекурсивны. □
Если имеет место («-), то говорят, что терм F Х-определяет
отношение R.

6.4. Цифровые системы


Для доказательства теоремы 6.3.13 нужно лишь несколько
свойств цифр.
6.4.1. Определение, (i) Цифровая система — это последова­
тельность
d — d0, d\, ...,
состоящая из замкнутых термов и такая, что для некоторых
Х-термов Sa и Zerod
Sadn = dn+\, Zero</do = T, Zero</dn+i = F
148 Гл. 6. Классическое ламбда-исчисление

для всех neN. Термы S</ и Zero,/ называются функцией сле­


дования и тестом на нуль для d.
(ii) d называется нормальной цифровой системой, если
каждый из термов dn имеет н. ф.
(iii) Система s = r0"
*, г1~1, ... с функцией следования S+
называется стандартной цифровой системой.
Обозначения. Любая цифровая система d очевидным обра­
зом определяется термами do и Sa. Поэтому мы пишем
d = (do, Sj).
6.4.2. Определение. Пусть d — цифровая система.
(i) Числовая функция <p: NP->N '/.-определима относи­
тельно d, если
З/7 (Vrti> ■ • • > rip £= N) (Fdn, • • • dnp = d<f (n1....... Яр))
*
(ii) Система d адекватна, если все рекурсивные функции
Х-определимы относительно d.
6.4.3. Предложение. Пусть d — цифровая система. Тогда она
адекватна в том и только том случае, когда
ЭРa (V« е N) (Padn+\ = dn\
Доказательство. (=>) верно по определению. (<=) до­
казывается так же, как в предложении 6.3.11. □
Функция Ра с описанным свойством называется функцией
предшествования для d. Таким образом, последовательность
d ~ do, di, ... является адекватной цифровой системой т. и т.т.,
когда для d имеются функция предшествования, тест на нуль
и функция следования.
Стандартная числовая система была выбрана именно таким
образом для того, чтобы легче было представить рекурсивные
функции. В приводимой ниже системе с, принадлежащей Чёрчу,
каждая цифра сп более тесно связана с числом п: терм сп —
это оператор и-кратной итерации. Поэтому некоторые конкрет­
ные числовые функции имеют простые ^-определяющие термы
относительно с, см. упр. 6.8.6. В § 9.2 термы ci, с2> будут
частью адекватной системы для ^/-исчисления.
6.4.4. Определение (цифры по Чёрчу), с = с0, Ci, ..., где
сп = hfx.fn(x). Пусть S? habc.b (abc). Тогда очевидно, что
* — функция следования для с. Отметим, что Cj s кху.ху = 1.
S
6.4.5. Лемма. Имеются термы Н, Н~1 <= А, такие, что для
всех п е N
НГп''=сп, ГГ‘сп = гп~1.
6.5. Еще о неподвижных точках 149

Доказательство. Применяя предложение 6.1.6, поло­


жим
Нх = Если Zerox, то с0, иначе S£(Hx~);
#“'х —xS+г0п.
Тогда легко получаются нужные равенства. □
6.4.6. Следствие, с— адекватная цифровая система.
Доказательство. Положим
Zeroc = Zero ° Н~\ Рс^Н°Р~<>Н 1
и используем предложение 6.4.3. □
Еще несколько цифровых систем описано в упражнениях.

6.5. Еще о неподвижных точках; гёделевские номера


Будет приведено два доказательства следующей ниже тео­
ремы. Второе из них более симметрично и легче обобщается
на n-кратный случай.
6.5.1. Теорема о двойной неподвижной точке.
VB, G ЭЛ, B[A = FABaB = GAB].
Первое доказательство. Положим
Ab^0(Xa.Fa&), Bo = 0(%&.GAb&), AosABo.
Тогда
Ао Ад» —» ВАвоВо BAqBo, Во —» GAb„Bo GAqB0. □
Второе доказательство. Положим
М(Щ/Чх)о(Д, С(Ш1). А = (Х)0>
Тогда
X-^[F(X)0(X)i, G(X)0(X)1],
откуда
A s (Х)о F (Х)о (X)! FAB
и аналогично
B-^GAB, □
6.5.2. Теорема о кратной неподвижной точке
VFj....... Fn ЗХ„ .... X^X.^^X, ••• Х„Л... KXn^
= F„X, •••Х„).
Доказательство аналогично второму доказательству
теоремы 6.5.1; следует использовать XX] хл.<Х), ..., хл>. □
150 Гл. 6. Классическое ламбда-исчисление

Существует много комбинаторов неподвижной точки, отлич­


ных от Y и О. Следующий результат получен независимо Бе­
мом и ван дер Меем.
6.5.3. Лемма. Пусть G = kyf.f (yf) — SI. Терм М е= А является
комбинатором неподвижной точки т. и т. т., когда М = GM, т.е.
т. и т. т., когда М есть неподвижная точка для G.
Доказательство. Если М — GM, то для всех F
MF = GMF = F (MF),
т. е. М — комбинатор неподвижной точки. Обратно, предполо­
жим, что М — комбинатор неподвижной точки. Тогда
Mf = f(Mf') (где f— переменная).
Следовательно,
М -- Kf.Mf = Kf.f(Mf) = GM.
Равенство М = kf.Mf обосновывается следующим образом.
В силу предположения и теоремы Чёрча — Россера

Так как М <= А0, отсюда следует, что М должен редуцироваться


к терму вида kf.N. Но тогда
kf.Mf = hf. (Kf.N) f = Kf.N = M. □
6.5.4. Определение, (i) (Бём) Y° = Y; Yn+1 = (Yn) (SI).
(ii) Y M = hf.WWM, где W^Kxz.f(xxz).
6.5.5. Предложение, (i) Все термы Y°, Y1, ... —комбинаторы
неподвижной точки.
(ii) Д^я каждого М терм Y^— комбинатор неподвижной
точки.
Доказательство, (i) вытекает из леммы 6.5.3.
(ii) доказывается, как всегда. □
Заметим, что Y1 —»0.
6.5.6. Определение (гёделевская нумерация), (i) Стандарт­
ным методом легко определить взаимно однозначное отображе­
ние A-
-N.
* В дальнейшем всюду обозначает одно из та­
ких отображений.
(ii) М называется гёделевским номером выражения М.
Всюду ниже будет использоваться следующее соглашение.
6.5.7. Соглашение. Все понятия, относящиеся к натураль­
ным числам, их последовательностям и т. д., переносятся на
термы с помощью отображения
6.6. Результаты о неразрешимости 151

Примеры (i) Множество <= Л называется рекурсивным,


если множество = рекурсивно.
(ii) Последовательность термов Мо, Mi, ... называется ре­
курсивной, если последовательность рекурсивна.
В действительности это соглашение уже использовалось в до­
казательстве теоремы 6.3.13, где было показано, что множество
{(М, N)\k\— М = N} рекурсивно перечислимо.
6.5.8. Обозначения. гМ”1 = М"1.
Имеется некоторая опасность спутать обозначения г 1 из
определений 6.2.9 и 6.5.8. Первое из них определено на N, вто­
рое— на Л.
6.5.9. Вторая теорема о неподвижной точке.
VF BX(FrX_l=X).
Доказательство. Ввиду эффективности отображения
имеются рекурсивные функции Ар и Num, такие, что
Ар^=(М, и Num (и) = ^гп'1. Пусть Ар и Num
Х-определяются термами Ар и Num е Л°. Тогда
АргМп ГЛР = rMN~\ Numrn''==rrn'1'1;
в частности,
Num ГЛГ1 = ГГМ'1'1.
Положим теперь
W ssU.F(Apx(Numx)), X = WrW~l.
Тогда
X = 1УГ = F (Арг II7”1 (Num г Wп)) =
= FrWrW~" = FrX\ □
Как и для обычных неподвижных точек, X-^FrX\ Кроме
того, приведенная конструкция равномерна в следующем смысле.
6.5.10. Следствие. (Э02е Л°)(у/? е A°)02F-»Fr©2F'1”1.
Доказательство. См. упр. 8.5.6. □

6.6. Результаты о неразрешимости


6.6.1. Определение. Пусть ст Л.
(i) Множество нетривиально, если =# 0, А.
(ii) замкнуто относительно равенства, если
(УМ, Л'еЛ)[Л;1елг и М — N => N <= s£].
152 Гл. 6. Классическое ламбда-исчисление

Напомним, что два множества & натуральных чисел назы­


ваются рекурсивно отделимыми, если существует рекурсивное
множество такое, что stczT? и^П'®’ = 0.
Следующая теорема принадлежит Скотту [1963]. Она род­
ственна теореме Райса из теории рекурсии; ср. Роджерс [1967],
с. 416.
6.6.2. Теорема, (i) Пусть st, tflczA— непустые множества,
замкнутые относительно равенства. Тогда st и & рекурсивно
неотделимы.
(ii) Пусть st cz А —нетривиальное множество, замкнутое
относительно равенства. Тогда st не рекурсивно.
Доказательство, (i) Пусть Мо(= st, Mj е <%. Допустим,
что ‘F — рекурсивное множество, такое, что st <zz <&, <%[}<& — 0.
Характеристическая функция множества рекурсивна и, сле­
довательно, /.-определена некоторым термом F. Отсюда полу­
чаем
М e<g’=>FrAf_1 = r0’,> = rl_1.
Положим теперь
G s кх.если Zero(Fx), то Mi, иначе А40-
Тогда
М e=‘6’=>GrM', = Ml, М ^^=>GrM‘1 = M0.
По второй теореме о неподвижной точке имеем =X
GrX~
*
для некоторого X. Но тогда
X е <&=>Х = GrX~l = Mi е ф <в,
X&(&=>X = GrX~l = MQ<^st^X^(&,
и получилось противоречие.
(ii) Если множество st cz Л нетривиально и замкнуто отно­
сительно равенства, то можно применить (i) к st и его допол­
нению. Следовательно, st не может быть рекурсивным. □
Теорема 6.6.2 неверна для /./-исчисления. Возьмем
st = {М е Л/|ЕУ(М) = {х}}. Это множество рекурсивно и зам­
кнуто относительно равенства в V-исчислении, см. лемму
9.1.2 (iv). Следующая релятивизация теоремы 6.6.2 верна также
и для ^/-исчисления.
6.6.3. Определение. Пусть st cz Л°. Скажем, что st замкнуто
относительно равенства комбинаторов, если
(VM, А «= Л°) [М e= st ъ M = N=>N^s£\.
6.6.4. Следствие. Теорема 6.6.2 имеет место для множеств
st, & cz А°, которые замкнуты относительно равенства комби­
наторов,
6.7. Рефлексивные предложения и теорема о рекурсии 153

Доказательство этого утверждения такое же, как для


теоремы 6.6.2. □
Чёрч [1936] дал один из первых примеров р.п. множества,
не являющегося рекурсивным.
6.6.5. Теорема. {M|M имеет н. ф.} — рекурсивно перечисли­
мое множество, не являющееся рекурсивным.
Доказательство. Рассматриваемое множество рекур­
сивно перечислимо, так как
М имеет н. ф. 3W (N находится в н. ф. и % |— М = N).
По теореме 6.6.2 это множество не рекурсивно. □
Теория ТГ называется существенно неразрешимой, если она
непротиворечива, но не имеет непротиворечивых рекурсивных
расширений. Следующий факт был замечен Гжегорчиком.
6.6.6. Теорема, ^-исчисление (т. в. теория X) существенно
неразрешимо.
Доказательство. Пусть — непротиворечивое расши­
рение теории X. Тогда множество {ЛА | |— М — 1} замкнуто от­
носительно равенства и нетривиально. Следовательно, по тео­
реме 6.6.2 оно не рекурсивно. Поэтому 3~ не рекурсивна. □

6.7. Отступление: рефлексивные предложения


и теорема о рекурсии
В заключение этой главы мы покажем, что построение гёде-
левского рефлексивного предложения и теорему о рекурсии
можно истолковать как применения комбинатора неподвижной
точки.
Пусть Р — арифметика Пеано первого порядка. Если s —
синтаксический объект системы Р, то s обозначает его гёде-
левский номер («код»), a rs_1 s'1— соответствующую
цифру в Р.
I. Теорема (Гёдель). Пусть А(х)— формула системы Р, та­
кая, что FV(A (х)) = {х}. Тогда существует предложение В си­
стемы Р, такое, что '
Р\- В+-> а(гвп).
(В говорит: «Я обладаю свойством А».)
Доказательство. Положим для щ, n2&N
щ~п2 т. и т. т., когда для некоторых предложений А1г А2
системы Р имеем Af и Р Н Aj А2.
154 Гл. 6. Классическое ламбда-исчисление

Достаточно показать, что для данной формулы Л (х)


(1) 3n(n~ ft Л(гп_|)).
Действительно, после этого, взяв предложение В, такое, что
п — ft В, мы получим
PH В<-> Л(гп_1) = Л (ГВ-1).
Чтобы доказать (1), введем следующие сокращения.
(О Если х — переменная и п е N, то Кх-п — ^х, п), где
< , > — примитивно рекурсивная спаривающая функция с об­
ратными функциями (проекциями) ( )0 и ( )j.
(ii) Для n, me N положим
п-т = код результата подстановки числа гт'1
вместо свободной переменной с кодом (п)0
в формулу с кодом (fl)].
Тогда функция • примитивно рекурсивна и
(2) *
(Лх^Л(х)).т= Л(гщЛ).
Так как (примитивно) рекурсивные функции представимы
в Р, можно считать, что имеется двухместный функциональный
символ о системы Р, такой, что
(3) РНгп’’°гщ"1 = гп- т"1.
Положим теперь v = Лх. ft А (х ° х) и n = v • v. Тогда
n — v • v = (Xx.ft А (х о х)).о = ft А (гип о гип) (в силу (2)) ~
~ ft А (ry.tP) = А (гл-|).
Эквивалентность ~ имеет место потому, что в силу (3)
k PH Л (Гил о гол)^ Д (ra.D-i). а
II. Теорема рекурсии (Клини). Пусть {е} обозначает ча­
стично рекурсивную функцию с индексом в. Предположим, что
f — общерекурсивная функция. Тогда для некоторого п
{f(n)}^{n},
т. е. f(n) и п — индексы одной и той же частично рекурсивной
функции.
Доказательство. Положим х.у ~{х} (у) и
х ~ у о >/z(x.z у.г).
В этих обозначениях нам нужно доказать, что для каждой об­
щерекурсивной функции f
f(n)~n для некоторого п.
6.8. Упражнения 155

Лемма. Пусть ф(х) частично рекурсивна. Тогда для некото­


рого v
(i) v.x ~ -ty(x) для всех х (если ф(х)-}', т0 и-х — индекс
функции Дг, {).
(ii) (и) всюду определена.
Доказательство. Функция Хху.{ср(х)} (у) частично ре­
курсивна, поэтому для некоторого е имеем {е} (х, у) ~{ф(х)} (у).
По s-m-n-теореме {ф(х)} (у) ~{si(e, х)} (у). Определим теперь v
из условия {у} (х) = si(e, х). Тогда v.x.y ~ si(e, х) .у ~ф(х) .у,
откуда а.х~ф(х). Функция {и} всюду определена, так как
функция si примитивно рекурсивна. □
Обозначения. Будем обозначать число и, построенное в лем­
ме, через Хх.ф(х). Тогда
(i) (Хх.ф(х)).а ~ ф(а),
(ii) (A,x.if> (х)) .а всегда определено.
Положим теперь v = kx.f(x.x), n = v.v. Тогда в силу (ii)
п корректно определено, а в силу (i)
п = v.v — Ckx.f(х.х)).v ~ f(v.v) = f(n). □
Как гёделевская конструкция рефлексивного предложения,
так и теорема рекурсии могут быть истолкованы как теоремы
о неподвижной точке для подходящих предполных нумерован­
ных множеств в смысле Ершова; см. упр. 6.8.18.

6.8. Упражнения
6.8.1. Доказать, что
(Mi, ..., Мп} = (ЛЦ, ..., Уп) ........ Мп = Nn.
6.8.2. Построить термы К°°, А е А0, такие, что
(1) К°°х = К°°,
(ii) Ах = хА.
6.8.3. Показать, что для построенного К°° имеет место К # К°°.
6.8.4. Построить термы F, л е А°, такие, что
(i) (yraeN)(fr пПху = ху~п);
(ii) (yneN) (у/<га)(лггап П”1 = л").

6.8.5. Построить последовательность Ао, ... еЛ, такую, что


Aq — S и Ап-1-i = АЛАП4-2.
6.8.6 (Россер). Пусть А+, Лх, Аехр — термы, такие, что
А+ху = Лру.хр (уру): Ахху = хоу, А^ху — ух.
Показать, что относительно цифр Чёрча сп = Цх.р (х) сложение, умноже­
ние и показательная функция ^-определяются термами Д+, Ах и Лехр соот­
ветственно (с единственным отклонением СоСп — I =т) Ci).
156 Гл. 6. Классическое ламбда-исчисление

6.8.7. Сформулировать и доказать общую теорему о неподвижной точке,


объединяющую предложение 6.1.6 и теоремы 6.5.2, 6.5.9.
6.8.8. Показать, что УЛ1ЭМ' [М' находится в н. ф. и Л4'1 = Л4].
6.8.9. Доказать (i) Yм = Yw=> М = IV,
*(ii) Ym = Y'1 => т = п. [Указание. Пусть т #= п. Ввести удобные обо­
значения, позволяющие доказать, что Y"1 и Хп не имеют общих редуктов, и
применить теорему Чёрча — Россера.]
6.8.10. Показать, что З.М (Л1 = ГЛ4П).
6.8.11 (Чёрч). Показать, что множество {Л41 М = 1} не рекурсивно.
6.8.12. Пусть Я с Л — непустые множества, замкнутые относительно
равенства. Показать, что и 9& эффективно неотделимы (определение этого
понятия см., например, у Роджерса [1967]).
6.8.13. Показать, что цифровая система d адекватна т. и т. т., когда
3?', F~x (уя <= N) (/гГя"1 = dn Л F~ldn = rn~l).
Получить отсюда, что для адекватных цифровых систем d, d' имеет место
3G, G-1(V«eN)(Gd„ = 4AG-‘4 = <Zn).
6.8.14 (Клоп). Положим
£ — kabcdefghijklmnopqstuvwxyzr.r (thisisafixedpointcombinator),
$ = ££££££££££££££££££££££££££■
Показать, что $ — комбинатор неподвижной точки.
6.8.15 (Барендрегт, Дедзани и Клоп), (i) Пусть X— {хь ..., х„}—ко­
нечное множество, и пусть • — бинарная операция на X. Построить термы
Xi........ Хп е Л°, такие, что для любых i, j, k sg п
XiX/ = Xk -^-Xt-Xj <= Xk.
Взять в качестве примера 4-группу Клейна. [Указание. Сделать сначала (ii).]
(ii) Пусть функция f: №-> N рекурсивна. Построить попарно различные
термы Хо, Л], ... е Л°, такие, что для всех п, т. е N
ХпХщ Хрп, ту-
[Указание. Рассмотреть Хп [Л, гя"1].]
(iii) Показать, что в (ii) нельзя избавиться от предположения о рекур-
сивности функции f.
6.8.16. Пусть d0, di, ... — адекватная цифровая система. Положим
d' ~ YCdn, где С s \xyz.x (zy). Показать, что на d0, dp ... можно пред­
ставить все одноместные рекурсивные функции. [Указание. Рассмотреть F' =
= /.х.х7’.]
6.8.17 (Б. Фридман). Пусть fo^Kxyz.y и S^U(x). Показать, что
определения = (/) и Zeroj, = Xxyz.x (hx'y'z'.z') yz превращают (70, Sj")
в адекватную цифровую систему.
В следующих ниже упражнениях нам нужны такие понятия из книги
Ершова [1973].
(i) Нумерованное множество — это пара у = (S, v), где S— множество и
v: N -> S — сюрьективное отображение.
(ii) Р = (ф: N -> N |Ф частично рекурсивна}, F — {f: N -> N | f (обще)ре-
курсивна}.
(iii) Пусть y = (S, у) и у'= (S', у') — нумерованные множества. Мор­
физм между у и у' — это отображение ц: S S', такое, что (з/ е Л)(у'=
= ji°v). В этом случае говорят, что морфизм ц задан функцией f.
6.8. Упражнения 157

(iv) Нумерованное множество у = (S, v) называется предполным, если


(уф е Р) (af s Р) (ух е= Dorn (ф)) (v (f (х)) == v (ф (х))).
6.8.18 (Ершов), (i) Показать, что если y = (S,v)—предполное нумеро­
ванное множество и ц: у->у— морфизм, то (3s е S) pis = s. [Указание. Пусть
ц задан функцией f. Рассмотреть ’Р(х) = f({x}(x)).J
(ii) Интерпретировать результат II § 6.7 как приложения п. (i). (См. так­
же Виссер [1980].)
6.8.19. (i) (Ван дер Поль и др. [1980]). Показать, что последовательность
р., = У.ху.ху ''п — адекватная цифровая система.
(ii) (Бём, Дедзани-Чанкальини). Показать, что следующие две цифровые
системы адекватны:
d = (Y, пх. [х, Р]), Р любой;
е = (К, Хх. [х, Y]).
Указание. Для системы d использовать (К) в качестве функции предшество­
вания и [К2Т,1] в качестве теста на нуль.] Таким образом, адекватная циф­
ровая система не обязательно нормальна.
*.
6.8.20 Цифровая система d адекватна для Хт, т. и т. т., когда для любой
рекурсивной функции <р: N4 -> N найдется терм F е А0, такой, что Fdn
= dy(ny Показать, что две описываемые ниже последовательности Ь и w —
цифровые системы, адекватные для Хт].
(i) (Бём). Если хо, ..., х„, nSx 1, — последовательность переменных, то
Хо, •. •, х„ обозначает ту же последовательность, в которой две последние
переменные переставлены, т. е. х0, хь ..., хл-г, хл, хп-\. Положим
b = Ххо хл+].Х[) хл^.|.

(ii) (Уодстворт [1980])


wn = Хх0 • • • х„.х0 (Xi • • ■ (хп (КК) • • •)) xt • • • хп-
*
6.8.21 (Барендрегт, Уодсворт). Рассмотрим последовательность
ап = Kn (I). Показать, что а не является цифровой системой.
*
6.8.22 (i) (К. Е. Шаап). Пусть sch = Хх.1х~ге. Показать, что sch —
адекватная цифровая система. [Указание. Использовать упр. 2.3.5.]
(ii) (X. ден Хоэд). Рассмотрим следующие определения.
(1) Если а — конечное слово в алфавите {0, 1} (скажем, а = 1101), то а
означает его обращение (в нашем случае а= 1011).
(2) Если а = ;'о, ..., it — конечное слово в алфавите {0, 1}, то ха обо-
значает Х-терм хх^ •••xife. Например, х(1101)=^ xxiXiX0Xi.
(3) Если ne N, то ап — это слово в {0,1}, которое обозначает п в
двоичной записи.
(4) Если п е N, то = Ххх0Х|.ха„. Показать, что h — адекватная пиф-
ровая система. [См. Ван дер Поль и др. [1980], где приведены решения.]
6.8.23 (Дж. Терлаув). Доказать теорему Скотта 6.6.2., не используя вто­
рой теоремы о неподвижной точке. [Указание. Пусть и Мо е si,
А4| ф. si}. Положим $ — {А | ХГХ~1 ф si}. Если бы si было рекурсивным, то
существовал бы терм F е А, такой, что
Хе ^=>Cr'A’n = Л10, Х<£^=^ЕГХ’1 = М,.
Получить отсюда противоречие.]
6.8.24. Пусть X = 0(fcg). Показать, что g(X)—неподвижная точка
композиции g ° [.
Глава 7
Теория комбинаторов

В этой главе изучается формальная система комбинаторной


логики CL и ее отношение к X. Мотивировка введения этой тео­
рии изложена в § 2.2. Приложения к Х-исчислению будут при­
ведены в гл. 8. Заглавие «Теория комбинаторов» указывает на
формальную метатеорию над CL.

7.1. Комбинаторная логика


7.1.1. Определение. CL — эквациональная теория, формули­
руемая в следующем языке.
Алфавит: К, S — константы,
и0, vlt ... — переменные,
= — равенство,
( , ) —- несобственные символы.
Множество CL-термов, обозначаемое через 9’, индуктивно
определяется следующим образом:
(i) jig?’;
(ii) К е= <F, S е <&; .
(iii) PQe^^PQ)^.
Формулы системы CL — это равенства Р = Q, где Р,Qe?.
Как и в случае системы X, буквы х, у, ... пробегают произ­
вольные переменные, а Р, Q пробегают множество &. Синтак­
сические соглашения для CL аналогичны соглашениям для X
(например, подразумевается группировка влево).
Так как в CL нет операций связывания переменных, понятия
свободной переменной и подстановки формулируются для CL
проще, чем для X. Через FV (Р) обозначается множество всех
переменных терма Р, a P[x:=Q] обозначает результат под­
становки терма Q вместо всех вхождений х в Р.
Р замкнут т. и т. т., когда FV(P) = 0.
— {Р s'S’lP замкнут).
7.1. Комбинаторная логика 159

7.1.2. Определение. Система CL определяется следующим


множеством аксиом и правил вывода.
(1.1) KPQ = Р,
(1.2) SPQR = PR(QR),
(II. 1) Р = Р,
(11.2) Р = Q=>Q = Р,
(11.3) Р = Q, Q = R => Р = R,
(II. 4) Р = Р' => PR = P'R,
(II. 5) Р = Р' => RP - RP'.
7.1.3. Предложение. Пусть Qb Q2 оба согласованы с х.
Тогда
CL I- Р[(х) — Р2 (х), CL Н Qi = Q2 CL |— Pi (QJ = Р2 (Q2).
Доказательство аналогично доказательству предложе­
ния 2.1.22, но легче него, так как в CL переменные не связы­
ваются. □
Теперь мы покажем, что Х-абстракцию можно смоделировать
с помощью К и S. Доказательство этого факта аналогично до­
казательству теоремы о дедукции для одной формулировки
(интуиционистской) логики высказываний в виде системы гиль-
бертовского типа; см. Говард [1980].
7.1.4. Лемма. Положим I = SKK. Тогда
(VP(=&)(CL}- 1Р = Р).
Доказательство. CL\—IP — SKKP = КР(КР) = Р. □
7.1.5. Определение. Дадим следующее определение терма
ь*х.Р индукцией по построению Р:
7Тх.х = 1,
ЛТх.Р = КР, если х ф. FV (Р),
Z’x.PQ s S (Гх.Р) (A
*x.Q).
По аналогии с обозначениями 2.1.3 положим
*Xi
% ••• х„.Р = Vxi.(---(X
*
x„.P) ...).
Пример.
Кху.ух = №x.(k
*
y.yx) =X*x.S/(Kx) == S(K(S7)) (S(KK)Z).
7.1.6. Предложение, (i) FV (Л’х.Р) = FV (Р)— {x}.
(ii) C£H(Vx.P)x = P.
(iii) *x.P)Q
(% = P[x := Q].
Доказательство, (i), (ii) доказываем индукцией по по­
строению терма Р.
160. Гл. 7. Теория комбинаторов

Случай 1. Р = х. Тогда К х.Р^1,


* так что (i) тривиально,
a (ii) следует из леммы 7.1.4.
Случай 2. x^FV(P). Тогда л*х.Р = К.Р, так что (i) непо­
средственно очевидно, a (ii) следует из аксиомы КРх = Р для
комбинатора К.
Случай 3. Р = Р\Рг, хе FV(Р]Р2)■ Тогда
*х.Р
Vx.P s= S(Vx.Pi) (Х 2).
Отсюда по индукционному предположению получаем
*x.P
FV(Vx.P)= FV(X 1)UFV(Vx.P2)= FV(PiP2)—{х}.
Далее в силу аксиом для S имеем
CL Н (Л’х.Р) x = S (^x.Pt) (Vx.P2) х =
= (Vx.P]) x ((Vx.P2) x) = PXP2 — P.
(iii) В силу (ii) и предложения 7.1.3. □
7.1.7. Лемма. Если х ф FV (Q) и х^у, то
(Vx.P) [у : = Q] == К
*х.Р[у : = Q].
Доказательство. Применить индукцию по построению
терма Р. □
-> ->
7.1.8. Следствие. Пусть Р~Р(х), Q согласовано с х и
х ф. FV (Q). Тогда
С£ I-(Л
*х.Р) Q = Р (Q).
Доказательство. Применяем предложение 7.1.6(iii) и
лемму 7.1.7. □
Ограничения на переменные в лемме 7.1.7 и следствии 7.1.8
не могут быть сняты. Например,
CL Р/ (Гхг/.х) yQ = х [х:== Q] [«/:=(?].
Поэтому удобно принять ограничение на переменные также
и для системы CL. Здесь, однако, не нужно заботиться об
отождествлении а-конгруэнтных термов — они и так совпадают.
7.1.9. Лемма. Если у ф. FV(Р), то
*х.Р = Ъ
К *у.Р[х := у].
Доказательство. Применяем индукцию по построению
терма Р. □
В заключение этого пункта рассмотрим правило экстенсио­
нальности для CL.
7.2. Редукция для CL 161

7.1.10. Определение. CL -f- ext обозначает систему CL, рас­


ширенную следующим правилом экстенсиональности:
ext\ Рх = Р'х, х ф FV(PP') => Р = Р'.
7.1.11. Лемма, (i) CL -|- ext Н К = Vxy.x( = S(KK)J) и
CL + ext\— S = K xyz.xz(yz) .
*
(ii) CL + ext замкнута относительно правила
(I) *x.P = Vx.Q.
Р = Q =>■ L
Доказательство, (i) CL\— Kxy — x = (k *
xy.x)xy. От­
сюда, дважды применяя правило ext, получаем
CL -j- ext H К = 7
ху.х.
*
Аналогично получаем
CL + ext'r- S = L
xyz.xz(yz).
*
(ii) Допустим, что CL -|- ext\— Р — Q. Тогда по лемме
7.1.6(H) имеем
CL Д- ext Н (Х
*х.Р) х = (Vx.Q) х.
Отсюда по правилу ext, используя лемму 7.1.6(i), получаем
CL 4- ext н К
*х.Р = Vx.Q. □

7.2. Редукция для CL


Имеется понятие редукции w, которое порождает доказуе­
мое равенство в CL. Соответствующее отношение —»w назы­
вается слабой редукцией.
7.2.1. Определение. w={(KMN, А4)|М, N
ML(NL))\M, N, L e‘й’}. Как отмечено в замечании 3.1.7, поня­
тие редукции w индуцирует бинарные отношения —-»w и
—w на
-+w— это наименьшее отношение, содержащее w и совмести­
мое с аппликацией, a -»w— рефлексивное транзитивное замыка­
ние отношения ->да.
=w — наименьшее отношение эквивалентности, содержащее
~^а>-
-+-w называется слабой редукцией, так как имеются термы,
например SK, находящиеся в щ-н. ф., но такие, что соответ­
ствующий ?.-терм (у нас (kxyz.xz(yz)) (Ъху.х)) редуцируется
дальше.
7.2.2. Предложение. М —.„ N <=>CL\- М = N.
Доказательство этого утверждения аналогично дока­
зательству предложения 3.2.1. □
6 X. Барендрегт
162 Гл. 7. Теория комбинаторов

7.2.3. Теорема. Отношение w обладает свойством CR.


Д о к а з а те л ь с т в о. См. упр. 7.4.13. □
Следующее утверждение резюмирует следствия предложе­
ния 7.2.2 и теоремы 7.2.3.
7.2.4. Теорема Чёрча — Россера для CL. (i) Если CL\- M = N.
то bN-^WZ].
(ii) Если CLk M = N и N находится в w-н. ф., то М N.
(iii) Пусть М, N ^‘В’ — различные w-н.ф. Тогда CL\^-M =
— N. В частности, система CL непротиворечива.
Доказательство. Применяем теорему 3.1.12 и след­
ствие 3.1.13. □
Далее мы отметим, что доказуемое равенство в системе
CL-{-ext также можно проанализировать с помощью рекурсив­
ного понятия редукции s (которое называется сильной редук­
цией).
7.2.5. Факт, (i) (Хиндли [1967], Лёрчер [1967]). Суще­
ствует рекурсивное понятие редукции $, такое, что для любых
М, N имеет место
М —s N <=>- CL + ext М = N
(ii) (Карри и др. [1958], § 6F). Кроме того, s обладает
свойством CR.
Доказательство. См. цитированную литературу. □
Пункт (ii) был доказан раньше (i) из-за того, что сначала
было определено отношение —(которое Карри называл силь­
ной редукцией и обозначал через >—) и лишь позднее — отноше­
ния ->s и
В дальнейшем сильная редукция не будет рассматриваться,
так как теория CL + ext эквивалентна теории 14- ext, а для
последней имеется удобное понятие редукции рт>, в то время
как сильная редукция довольно сложна. В действительности
свойство CR для s получается из свойства CR для р^, а ника­
кого прямого доказательства не известно. Кроме того, s как
множество пар не является функцией, т. е. один и тот же s-pe-
декс может иметь несколько сверток.
У Клопа [1980а] доказано несколько утверждений о разли­
чиях между w- и p-редукцией. Там показано, что если GW(P)
содержит редукционный цикл (например, для SII(SII)), то
этот граф содержит бесконечно много редукционных циклов.
Это не так для p-редукции: рассмотрите, например, граф
Gp((Xx.xx) (Хх.хх)). У Хиндли [1977] сравниваются понятия
w-, s- и р-редукции.
7.3. Соотношение между CL и X 163

7.3. Соотношение между CL и X


Как только в CL определена абстракция, возникают кано­
нические отображения <ё и Л друг в друга.
7.3.1. Определение (стандартных переводов ? и Л друг
в друга). Отображения
( )л: и ( )CL:
определяются индуктивно следующим образом;
( к: (4=«-
(К)Л = К,
(Sk-S,
(PQk^(Pk(Qk;
( Уст’- (х)ст ^х,
(MN)CL^(M)CL(N)CL,
(kx.M)CL = '/. х.
Обозначения. Рл = (Р)л, Ри CL = (PK)CL для Ре?.
Mcl — Mcl, к — (Alcik для Ale Л.
7.3.2. Лемма. (i)FV (Р) = FV (PJ для Р<=Ъ.
(ii) FV (М) = FV (Л1С1) для Al е= Л.
Доказательство. Применяем индукцию по построению
терма М с использованием леммы 7.1.6(i). □
7.3.3. Лемма. CL[- Р — Q=> к Ь РК — Q-f_.
Доказательство. Применяем индукцию по длине дока­
зательства Р = Q. □
Однако обратное утверждение неверно. Например, X I—SK=
= К1, но CL \-/-SK = KI- Это происходит из-за того, что CL
не замкнута относительно правила т. е. в общем случае
CL Ь Р = Q #> CL Н Гх. о = Vx.Q.
Например, CL\- 1х — х, но CL\-/-S (КГ) 1 = 1.
Карри расширил систему CL конечным множеством Ар замк­
нутых равенств, таким, что С£-|-Ар эквивалентна X. Мы вос­
произведем его построение.
Сначала вводится вспомогательный оператор абстракции.
7.3.4. Определение. крс.Р определяется индукцией по по­
строению терма Р.
Xix.x = I,
к^х.с == Кс, если с — переменная ^х или cs(K, S},
?iX.PQ s= S (?qX.P) (XjX.Q),
6*
164 Гл. 7. Теория комбинаторов

Пусть А — некоторое множество равенств между замкну­


тыми CL-термами. Через CL-j-A обозначается теория CL, к ко­
торой добавлены в качестве аксиом все элементы множества А.
7.3.5. Лемма. Рассмотрим следующие схемы;
(1) К = Х *ху.х,
(2) S = K xyz.xz(yz) ,
*
(3) S(KP)(KQ) = K(PQ),
(4) Vx.KPQ = Vx.P,
(5) X *x.SPQR = K x.PR(QR).
*
Имеют место такие утверждения;
(i) Если в CL + А доказуемы (1) и (2), то там доказуемо
Рх, cl — P для всех Р
(ii) Если в CL + A доказуемо (3), то там доказуемо
К
*х.Р = Ърх.Р для всех Р <=&.
(iii) Если в CL + А доказуемы (3), (4), (5), то CL-]-A
замкнуто относительно правила £:
*х.Р = TSx.Q.
CL + A'r-P = Q=>CL + A]r- Ъ
Доказательство, (i) доказывается индукцией по по­
строению терма Р.
(ii) Индукция по построению Р дает следующее:
XiX.P = КР, если х ф FV (Р),
\\x.P — Т *х.Р.
(iii) устанавливается индукцией по длине доказательства
равенства Р = Q в CL + А. Аксиомы системы CL рассматри­
ваются с помощью (4), (5). Аксиомы, принадлежащие множе­
ству А, рассматриваются без труда. В случае правила Р = Q =>
RP = RQ применяем п. (ii) и предположение индукции. Осталь­
ное нетрудно. □
7.3.6. Определение. Ар обозначает следующее множество
аксиом:
(А.1) К = К *ху.Кху, (АЛ')К — Т*ху.х-,
(А.2) S = /. *
xyz.Sxyz, (А.2') S — T*
xyz.xz(yz)',
(А.З) k*xy.S (Кх) (Ку) = \* ху.К(ху) ;
(А.4) Xxy.S(S(KK)x)y
* — Vxyz.xz;
(А.5) ISxyz.S (S (S (KS) x)y)z = h*
xyz.S (Sxz) (Syz).
7.3.7. Лемма.В системе CL + Ag можно доказать схемы (1),
(2) , (3) и (5) из леммы 7.3.5. В частности, там доказуемо
x.p = kix.p.
i*
Доказательство. (1) и (2) даны непосредственно.
(3) получается, если применить обе части равенства (А.З) к Р
и Q. Отсюда и из леммы 7.3.5 (ii) следует, что Т
*х.Р = Т^х.Р. По­
этому для получения (5) достаточно доказать равенство
"kiX.SPQR = ZiX.PP(QP).
7.3. Соотношение между CL и X 165

Оно получается путем применения обеих частей равенства (А.5)


л KiX.P, ijX.Q и к\Х.Р. □
Замечэние. Отметим, что если заменить правую часть ра­
венства (А.4) ху.х,
на к* то тем же способом можно получить
л (4). Однако такой новый вариант (А.4) не перейдет в верное
эавенство при переводе в Х-термы.
7.3.8. Лемма. В системе CL-\-A$ можно доказать следую­
щее:
(i) k*z.SPQz = SPQ, если z ф FV (SPQ),
(ii) *xX.P)
z.(X z = k*x.P, если z ф FV (P),
(iii) X‘z.KPQ = X
*z.P.
Доказательство, (i) Имеем
SPQ = (k
*
xyz.Sxyz) PQ (в силу (A.2)) =
= k*
z.SPQz (по леммам 7.1.7, 7.1.8).
(ii) Случай 1. P = x. Тогда \*
x.P = I = SKK и все в по­
рядке в силу (i).
Случай 2. x^FV(P). Тогда
*х.Р
К = КР = ССху.Кху}Р (в силу (А.1)) =
=К*у.КРу (по леммам 7.1.7, 7.1.8) =
=K *z.()Cx.P) z (по лемме 7.1.9).
Случай 3. Р = Р\Р2. Тогда Х *х Р = SQR и все в порядке
з силу (i).
(iii) Имеем JCx.KPQ = k^x.KPQ (по лемме 7.3.7) =
^S(S(KK) (k^x.P)) (K[X.Q) —
— QCxy.S (S (KK) x) y) (k\X.P) (XiX.Q) =
— QCxyz.xz) (X’x.P) (X
*x.Q) (в силу (A.4))=
= dTz.QCx.P) z — k*x.P (в силу (ii)). □
7.3.9. Следствие. В CL-\-A$ доказуемы схемы (1) —(5) из
геммы 7.3.5.
7.3.10. Теорема. Системы X и LC + Ар эквивалентны в сле­
дующем смысле:
(i) X Н MCL, х = М; в действительности MCl, »рА1.
(ii) CL ф А^\- Рк, CL = Р.
(iii) X М = .V <=>- CL + Ар 1— Met —
(iv) CL + A^P = Q<=>k\-PK = QK.
166 Гл. 7. Теория комбинаторов

Доказательство, (i) Сначала докажем индукцией по


построению терма Ре?2 следующее соотношение:
(*) (Х’х.Р)х-»₽Хх.Рх.
После этого утверждение (i) получается индукцией по по­
строению терма .Ме/..
(ii) следует из лемм 7.3.7 и 7.3.5(i).
(iii) (=>) Сначала индукцией по построению терма М по­
кажем, что
(Лф:= У] )С£ = Ми [х := ВД.
После этого доказываемая импликация получается индукцией
по длине доказательства М = N с использованием того факта,
что система CL + Ар замкнута относительно правила £ в силу
следствия 7.3.9 и леммы 7.3.5(iii).
(iv) (=>) Сначала с помощью (*) докажем, что в X дока­
зуемы переводы всех Ар-аксиом. Затем нужный результат по­
лучается индукцией по доказательству равенства Р — Q.
(iii) (<=) Допустим, что CL + Ар |— Ми = Nu- Тогда в силу
(iv) (=>) имеем X Н Ми, к — Ncl, к- Следовательно, X Н М — N
в силу (i).
(iv) (<=) доказывается аналогично. □
Теперь выясним, что случится, если добавить экстенсиональ­
ность.
7.3.11. Лемма. CL + ext h (А.1), (А.Г), (А.2), (А.2'), (А.З),
(А.4), (А.5).
Доказательство. В качестве типичного примера дока­
жем (А.З).
(h'xy'.S (Кх) (Ку)) xyz = S (Кх) (Ку) z = Kxz (Kyz) = ху,
Ck’xy.K (ху)) xyz = К (ху) г = ху.
Нужный результат получается отсюда трехкратным приме­
нением правила ext. □
7.3.12. Теорема. CL-\-ext эквивалентна теории X-[-ext в
смысле теоремы 7.3.10.
Доказательство. Аналоги п. (i), (ii) теоремы 7.3.10
следуют из того, что X s X + ext и CL -|- Ар s CL + ext по
лемме 7.3.11. Аналоги п. (iii), (iv) получаются индукцией по
длине доказательства. Нужна еще лемма 7.3.2, чтобы показать,
что применения правила ext сохраняются после перевода. □
По теореме 2.1.29 теории Х-фех/ и Хт] эквивалентны. Ана­
логичным образом можно аксиоматизировать ext и в CL.
1.3. Cooi ношение между CL и А. 167

7.3.13. Определение. Арл— это результат добавления к Ар


соотношения
(А.6) *
x.S(Kx)/
X = /.
7.3.14. Теорема. CL -f- Арл 1- Р = Q<=> CL -|- ext 1- Р — Q.
Следовательно, все четыре теории
X *4~ ext, Хт|, CL -|- ext, CL -|- Ар^
эквивалентны.
Доказательство. (=>). Применение обеих частей равен­
ства (А.6) к Р дает
(6) *х.Рх = Р, если x^FV(P).
Х
Отсюда следует, что система CL-FAp4 замкнута относи­
тельно правила ext. Действительно, из x^FV(PQ) и CL +
+ Арп Н Рх = Qx получается в силу следствия 7.3.9 и леммы
7.3.5(iii), что
CL Арл Н Х *х.Рх = X
*x.Qx,
откуда в силу (6) следует, что CL4-Apn У- Р — Q. Доказывае­
мое утверждение получается теперь индукцией по длине дока­
зательства Р = Q в CL + ext.
(<=) Сначала покажем, что CL-\- ext}- (А.6). После этого
нужный результат получается индукцией по длине доказатель­
ства. □
Теперь приведем явные формулировки аксиом Ар и Арп.
7.3.15. Следствие. Рассмотрим следующие комбинаторные
аксиомы:
~(А.1) К= S(S(KS)(S(KK)K))(K(SKK)),

(А.2) S = S(S(KS)(S(K(S(KS)))(S( А(5(АГХ-)))^))ХАГ(АГ(ЯМ-))),


ПА.З) S(S(KS)(S(KK)(S(KS)K)))(KK) = S(KK),
(А.4) S(KS)(S(KKy) =
S(KK)(S(S(KS)(S(KK)(SKK)))(K(SKK))),
(А.5) S(K(S(KS»)(S(KS)(S(KS))) =
= S(S( KS )(S( KK )(5( KS)(S( K(5( KS )))$))))( KS),
S(S(KS)KXK(SKK)) = SKK.

Если взять
Ap = ((A.l), (А.2), (А.З), (А.4), (А.5)},
АВП = {(А.З), (А.4), (А.5), (А.6)},
то (в смысле теоремы 7.3.10)
(i) CL-\-A р и X эквивалентны',
(ii) С£-|-Арп и Хт] эквивалентны.
168 Гл. 7. Теория комбинаторов

Доказательство. (i) Равенства (А.Г) и (А.2') из опре­


деления 7.3.6 следуют из наших равенств (А.1) — (А.5), так как
наши явные аксиомы получены путем разворачивания Х *л
(и использования время от времени сокращения вроде Х2.г, см.
упр. 7.4.3).
(ii) Равенства (А.1) и (А.2) вытекают из (А.З) — (А.6).
Подробности составляют упр. 7.4.12. □
Из предыдущего следует, что понятие Х-алгебры допускает
описание в языке первого порядка.
7.3.16. Теорема. Пусть ЗЛ = (X, •) — аппликативная струк­
тура. Ее можно считать Т-алгеброй (т. е. (X, -,Х *) является
Т-алгеброй для некоторой операции X
*) т. и т. т., когда для не­
которых k, seX структура s) удовлетворяет следую­
щим восьми аксиомам-.
Кху — х, Sxyz = xz(yz), Ky=S, (А.1), ..., (А.5).
Доказательство. (=>) Пусть (X, -,Х *) есть Х-алгебра.
Положим k — [k *xy.x], s = [k
*
xyz.xz(yz)]. Индукция по по­
строению комбинатора показывает, что для всех р (при
очевидной интерпретации) имеем
(1) [Рх]р = [Р]р.
Пусть теперь P = Q — одна из аксиом. Тогда
CL + Др Н Р = Q=>k I- Р^ = Qk (по теореме 7.2.10 (iv))
=^(Х, •, Х‘) Ь Р?„ = Q>.=> ИАИр = [Qz.Jp для всех р =>
=>[P]p = [QJp (в силу (1))=>(Х, •, k, s}V=P = Q.
Аксиома К =# S выполнена потому, что иначе ЭЛ была бы
тривиальной (ср. пример 2.1.33).
(-<=) YlycTb (X, •, k, s) удовлетворяет нашим аксиомам, где,
как обычно, мы используем обозначения К = ck, S = cs. Опре­
делим для каждого А е £(?Л) терм Х *х.Д еТ(2Л) так же, как
в определении 7.1.5. Индукция по построению терма Л1еЛ по­
казывает, что для всех р
(2) (MCi)p = (M
)
* p.
Отсюда следует, что
М = N =>CL-\- А^\- MCL~ NCL (по теореме 7.3.10 (iii))=>-
=>(Х, •, k, s)h Mcl = Ncl=>(X, -, Х‘)НЛ1 = А (в силу (2)).
Аналогичным образом Х(®1) |— М — N =>(X, •, *)к\==М = П.
Следовательно, (X, •, X
*) является Х-алгеброй. □
Следует отметить, что стандартные переводы не сохраняют
ни нормальную форму, ни редукцию.
7.4. Упражнения 169

7.3.17. Примеры, (i) Терм SK е 'ё находится в а,'-н. ф., но


(SKk = SK не находится в Р-н. ф.
(ii) Пусть со = SII u Р = S(Kco) (Кео).
Тогда Р находится в да-н. ф., а Ру. = pkr.fi вообще не имеет
р-н.ф.
(iii) Имеет место
Кх. 11 —Хх.|,
но для С£-переводов это уже не так:
S(K/) (К/)—/-^ KI.
Сильная редукция также не сохраняется при стандартных
переводах; см. Карри и др. [1958], с. 221.
С другой стороны, понятие разрешимости инвариантно отно­
сительно стандартных переводов. Для CL разрешимость опре­
деляется следующим образом.
7.3.18. Определение, (i) Терм Р^ё0 называется w-разре-
шимым, если 3Q PQ—WI.
(ii) Терм Р называется w-разрешимым, если у него
имеется w-разрешимый подстановочный частный случай Р
*
^ё°.
Предложение 8.3.22, которое будет доказано в гл. 8, утверж­
дает, что терм М е Л P-разрешим т. и т. т., когда Мы w-раз-
решим.

7.4. Упражнения
7.4.1. Показать, что дляР, Q е & имеет место
Р Q^PK
7.4.2. Начертить Gw (&CL) и Gp (£1).
7.4.3. Наряду с V и Xi имеются и иные способы определить абстракцию
в CL.
(i) Показать, что одним из таких способов является оператор Хг, вводи­
мый следующим индуктивным определением:
X2.v.x == SKK,
'.2х.Р s= КР, если х ф FV (Я),
Ъ2х.Рх = Р, если х ф FV (Р),
X2x.PQ = S (X2x.P) (X2x.Q), если не применим ни один из предыдущих случаев.
Доказать, что CL |- (h2x.P)Q — Р[х := Q],
(ii) Показать, что если х ф FV(Q) и х Ф у, то
(Х2Х.Р) [у := Q] = Ux.P[y : = Q],
Заметим, что структура терма К2х.Р в общем случае проще, чем термор
'■‘х.Р или XjX.P; см. Карри и др. [1972], § ПС, где обсуждаются различные
способы введения абстракции в CL.
7.4.4. Показать, что
(VP е V) (3QsV, Q в w-н. ф.) (VP е #) (QP -»w Р).
170 Гл. 7. Теория комбинаторов

7.4.5. S-терм — это CL-терм, состоящий только из (нескольких экземпля­


ров) комбинатора S (и скобок). Выяснить, какие из следующих S-термов
имеют w-н. ф. См. также Барендрегт и др. [1976], § 7.
(i) SSSSSSS
(ii) (А. Петоросси) SAA(SAA), где А зе SSS.
*(iii) (М. Барон; М. Дюбуэ). S(SS)SSSS.
7.4.6. (Бергстра, Клоп [1979]). Показать, что никакой S-терм Р не «цик­
лится», т. е. не имеет места Р Р-
tyb 0
1А.1. (Клоп), (i) Пусть Р — терм системы CL, который может быть за­
писан без скобок (например, SKSSK). Показать, что Р имеет w-н. ф. (и даже
сильно нормализуем). [Указание. Использовать предыдущее упражнение]
(ii) Показать, что (i) нарушается, если считать / константой.
7.4.8. Запомните следующие определения; они часто используются в мо­
нографии Карри и др. [1958], [1972].
В Э Kxyz.x (yz),
С at l.xyz.xzy, c^cCi-
J = Kxyzw.xy (xwz), J ~ JCL’
W =Ъху.хуу,
Ф ss Kxyzw.x (yw) (zw), Ф^ФС£.,
»F SB Xxyzw.x (yz) (yw),

(ii) Для произвольного М положим М„ «= Л4Г В частности, Ct=='kxy.yx.


7.4.9. (Хиндли). Построить терм Р е находящийся в w-н. ф. и такой,
что
(VQ е «?) PQ ~^w Р.
7.4.10. (Бём, Дедзани-Чанкальини [1972]). Рассмотрим алфавит 2 =
= [К, S, (,),}. Пусть 2 * обозначает множество всех слов в алфавите 2
(т.е. конечных цепочек ось ..., а„, где а<е2). Заметим, что ®’° s 2.
* По­
ложим
<Р) ■■ Vx.xP. Р • Q ss Vx.Q (Рх). В ив К* xyz.x (yz).
* -г®’0 следующим образом:
Определим <p: 2
Ф(К)В(К), <p(S)a»(S), ф(()-В, <₽())■»/
<р (а,а2 а„) е ф(а!) -ф (а2)........... ф (а„).
Показать, что
(VP е= <В) (CL + ext I- ф (Р) = Р).
[Указание. Показать сначала, что операция • ассоциативна и что Р-1 =
= /.р = Р.]
Вывод. Смысл терма Р можно найти без синтаксического разбора.
7.4.11 (Чёрч [1936а]). Используя результаты о CL, показать, что логика
предикатов с одним бинарным отношением и одним бинарным функциональ­
ным символом неразрешима. (Замечание. Кальмар [1936] показал, что логика
предикатов с единственным бинарным отношением неразрешима. Беман [1922]
показал, что логика предикатов с одноместными отношениями разрешима.
См. также Чёрч [1956].)
7.4.12. Восстановить подробности доказательства следствия 7.3.15.
7.4.13. Показать, что понятие редукции w обладает свойством CR. [Ука­
зание: Россер [1935].) Положим М —»й/, если в А4 имеются дизъюнктные
7.4. Упражнения 171

t-редексы , R„ и N получается сворачиванием редексов Rt, ..., Rn-


Например, S(KPQ) (SPQR) ■—> SP(PR(QR)). Показать, что
t
(i) Отношение —> обладает свойством ромба;
1
(ii) есть транзитивное замыкание отношения —*■.]
7.4.14. (Гжегорчик). (i) Показать, что если — нетривиальное
множество (#=0, ¥='82°), замкнутое относительно равенства (М е <Я Л Л1 =
= Л; е?а=> .V е <Л), то не рекурсивно.
(ii) Доказать, что теория первого порядка TCL с аксиомами
Уху (kxy — х), Vxyz (sxyz = xz (yz)), s =7= k,
существенно неразрешима (т. e. TCL не имеет непротиворечивых рекурсивных
расширений.
(iii) Показать, что TCL не имеет рекурсивных моделей.
7.4.15. Определим отображение ( )CL2- следующим образом:
№)cL2 s х'
(MN)CL2 = (M)Ci2 (N)CL2,
(Xx.M)CL2 s= Л2х.(М)СЬ2, cm. упр. 7.4.3.
(i) Показать, что X + ext и CL 4- ext эквивалентны при переводах ( )^
И ( )<2Z,2
*
(ii) Показать, что PK> CL2 =s P n (P [x := Q] )C£2 s PCL2 [x := Q]CI2 для
всех P, Q
Глава 8
Классическое
ламбда-исчисление
(продолжение)

8.1. Базисы и перечисление


В этом разделе излагаются некоторые приложения теории
комбинаторов к Х-исчислению. Дело в том, что множество Л°
можно породить с помощью %-термов К и S. Это не очевидно
априори, так как Л° определяется через множество Л открытых
термов, а не самостоятельным индуктивным определением.
8.1.1. Определение, (i) Пусть сп Л. Множество термов, по­
рожденное множеством ЗВ (и обозначаемое через ^+) —это наи­
меньшее множество ^/, такое что
(1) зв^ц,
(2) М, N е => MN е
(ii) Пусть сп Л. Множество Зв сп Л называется базисом
для если
(V.'Mg.^)(3A'g^+)(.V = ;V1).
(iii) Множество ЗВ называется базисом, если ЗВ — базис
для Л°.
8.1.2. Предложение. {К, S) есть базис. Более того,
(VM е= А°) (НМ <= {К, S}+) (N М).
Дока^-гельство. Очевидно, что из Ре?" следует
Рхе{К, Пусть теперь Тогда Мсс^'ё'0, откуда
MCLi хе{К, S}1. Далее, MCL, по теореме 7.3.10(i). □
8.1.3. Следствие. Если ЗВ— базис, то
(VM е= Л°) (ЗМ е= Й?+) (N М).
Доказательство. По условию (ЗМк> Ns е ^+)(^к ~
—KaWs = S)- Из того, что К, S находятся в н.ф., следует по
теореме Чёрча — Россера, что NK » К, 7Vs-^S. В силу пред­
ложения 8.1.2
(VMe Л°)(ЗЛе(К, S}+)(L-^M).
8.1. Базисы и перечисления 173

Но тогда
(ЗГ е= {Ms, NK}+ = £?+) (£' L -* М). □
Теперь будет доказано, что имеется базис, Состоящий из
единственного комбинатора. Излагаемая конструкция принад­
лежит Россеру и является упрощением одной конструкции
автора. Ранее К. А. Мередит (см. Мередит и Прайор [1963])
нашел одноэлементные базисы, рассмотрев единственную фор­
мулу, аксиоматизирующую позитивную импликативную логику.
См. также упр. 8.5.16.
8.1.4. Предложение. Существует базис, состоящий из един­
ственного элемента X.
Доказательство. Положим Х = (К, S, К). Легко про­
веряется, что XXX = К и X(XX) = S. Доказываемый резуль­
тат следует теперь из предложения 8.1.2. □
8.1.5. Определение.Терм МеА перечисляет множество cz
cz А, если
(уМ е (3n е N) (Afrni = N).
На первый взгляд кажется, что если мы хотим перечислять
множество А0, то мы должны перечислить и все подтермы тер­
мов из А0. Последнее невозможно, так как никакой (конеч­
ный) терм не может выдать все свободные переменные. Мы
обойдем эту трудность путем построения перечисления (по су­
ществу) через базис. Следуя Клини [1936], мы построим терм
Е е А0, перечисляющий множество А0.
8.1.6. Теорема. Имеется терм ЕеА°, такой, что
(у Me А0) (ЕГМ1 м).
Доказательство проводится в несколько шагов.
(1) Лемма. Пусть (X) — одноэлементный базис множества
А0, построенный в предложении 8.1.4. Тогда
(уМ <= А0) (зАГ 6= {Х}+) (№' М).
Более того, М' эффективно находится по М.
Доказательство. Используем следствие 8.1.3 и его доказа­
тельство. □ 1
(2) Определение. Для терма М е {Х}+ следующим обра­
зом индуктивно определяем число OeN:
^Х = 0, tjAB = (ijA, tjB),
где < , > — некоторая рекурсивная спаривающая функция с ре­
курсивными проекциями ра, р\, причем 0 не пара.
(3) Лемма. ОК е А0) (уМ е (Х)+) М1М).
174 Гл. 8. Классическое ламбда-исчисление (продолжение)

Доказательство. Пусть ро, Pi Х-определяются соответствен­


но термами Ро, Pi е Л°. Определим F соотношением
Fx если Zero х, то X, иначе F (Рох) (F (F\x)).

Индукцией по построению терма М е {Х}+ получаем, что


FrfyM~l-^M. П3
(4) Лемма Обе А°) (уЛ1 е Л°) (СЛ!1Mzl)> где М'
берется из (1).
Доказательство. В силу (1) и (2) число tj М' можно эффек­
тивно найти по М, а значит, и по ^Л4. Поэтому в силу тезиса
Чёрча существует рекурсивная функция g дакая, что g'(=ftM) =
= Пусть G —терм, Х-определяющий g. Тогда по опреде­
лению 6.3.1 имеем GrM1-^ П4
(5) Окончание доказательства. Наконец, полагаем Е =
=s Xx.F(Gx), где F и G построены выше. Тогда для всех М е Л°
ЕГМ1-^77(СГЛГ)-»РГ^(ЛГ)1^Л1/-^Л1. П5 □

Начиная с этого места Е обозначает только что построен­


ный нами терм.
Можно перечислить и термы, содержащие лишь данное фик­
сированное конечное множество переменных.
8.1.7. Следствие. Для каждого х имеется терм Е-> е Л°(х),
такой, что
(уМ <= Л° (х)) Е->ГМ‘| М.

Доказательство. Пусть дан х. В силу эффективности


гёделевской нумерации существует рекурсивная функция f, та­
кая, что для всех Л1еЛ имеет место равенство /(=фЛ1) =
= (Хх.М). Пусть терм F Х-определяет функцию /; тогда
(уМ е гХх.М‘1).

Положим теперь E-> = Za.E (Fa)x. Тогда для любого ;We


е Л°(х)
ЕД/И1 -■» Е (Wf1) х Е’Лх.ЛРх
X
~»(Кх.М)х (так как Хх.М замкнут) —»■ М. □
8.2. Равномерность 175

8.2. Равномерность; бесконечные последовательности


Бесконечные «равномерные» последовательности термов мо­
гут быть закодированы одним термом.
8.2.1. Определение. Пусть М„ <= Л определен для каждого
/г eN. Говорят, что последовательность Мп равномерна по п,
если для некоторого терма F
. *) Туп <= N) (Frni = Мп).
), то мы говорим, что терм F
Если имеет место (* Х-опре-
деляет последовательность &п.Мп.
8.2.2. Предложение. Пусть Мп— последовательность тер­
мов, такая, что
* (V« е N) (М„ g= А0 (х)),
(i) В
(ii) ' п.^ Л4„ рекурсивна.
Тогда М„ равномерна по п.
Доказательство. Пусть терм G Л-определяет функцию
Мп. Тогда в силу следствия 8.1.7
(EtoG)rn1 = E^/Wn1 = M„.

Значит, Мп равномерна по п. □
Отметим, что условие (i) в предложении 8.2.2 также необхо­
димо. Если FrnT = Mn для всех п, то М„^ А°(х), где х —
= YN(F).
Условие (ii), однако, не является необходимым. Пусть, на­
пример, Мп^\~,'п\ где f—некоторая нерекурсивная функ­
ция. Тогда (ii) не выполнено, хотя Мп = 1 для каждого п и, сле­
довательно, М„ равномерна по п.
Пусть Мп равномерна по п. Мы хотим закодировать беско­
нечную последовательность Мо, Mi, ... одним термом [M„]ratsN.
8.2.3. Определение. Пусть Мп — последовательность, равно­
мерная по п, так что
FrnP — Мп для всех п N.
Положим
А = 0 (Хах. [Ex, a (S+x)] ),

Л/s л|+'Ax.xF~‘Т (см. определение 6.2.7).


176 Гл. 8. Классическое ламбда-исчисление (продолжение)

Терм А называется генератором для [M„]neV Заметим, что


А и [МДгаеЫ зависят от выбора терма F, который ^-определяет
функцию Д«.М„. При необходимости мы будем говорить, что
А и [МД„еЧ| определены через F. Если же опасности возникно­
вения недоразумений не будет, то мы будем записывать
[МДпе N в виде [МД или даже в виде [Мо, Мь ...].
8.2.4. Лемма. Если [МД определен через F, то FV([M„]) =
= FV[F],
Доказательство. Имеем
[М„] = 0(%ах. [Fx, a(S+x)l )г01. □
8.2.5. Предложение, (i) Пусть А — генератор для [M„],l(_N.
Тогда для всех i N
= ........ Mt, ЛП-фР].
(ii) Для всех i е N имеем лг-[МДга е N = Мг.
Доказательство. Пусть А и М„ определены через F.
Заметим, что для всех i е N
Ari1 = \Fri~l, Ari + Р] = [М,-, ДГ1ДР].
Поэтому
[МД - ЛГСР = [Мо, ЛГР] =
= [Мо [М„ Л^1] ] = [Мо, Мь Лг2‘|] =

= [М0____ М;, Ari+ Р].


(ii) Л/[МД = л[+1[Мо, - Mi, Лгг+Р] = Мь □
8.2.6. Следствие. Пусть последовательность Дуг.Мп к-опре-
делена термом F, и допустим, что Frn>—»Mn имеет место
для всех пер Пусть последовательность [Мл] с генератором
А определена через F. Тогда для всех i е N
(i) [МД —»• [Мо> • • •, Mt, АГi Д Р];
(U) Д[МД-»М».
Доказательство. В условиях теоремы для всех
имеем ЛГР -»[М;, Лгг Д Р]. Тогда (i) и (ii) получаются так
же, как и раньше. □
Замечание. Если последовательность Лп.М„ ^-определена
термом F, то можно было бы положить
8.2 Равномерность 177

Тогда мы снова имели бы

Однако терм [Мп] кодирует исходную последовательность


более глубоким образом: для порождения членов этой после­
довательности уже не нужны цифры — они, так сказать, встрое­
ны в код. Это окажется полезным — см. например, предложе­
ние 8.2.8. Кроме того, бёмовское дерево терма [М„] (см. § 10.1)
строится непосредственно из бёмовских деревьев термов Мп,
п е N.
В качестве приложения описанного кодирования бесконеч­
ных последовательностей мы построим так называемый универ­
сальный генератор. Это — терм, редукты которого становятся
сколь угодно сложными.
8.2.7. Определение, (i) Пусть R— понятие редукции. R-ce-
мейство терма М — это множество
3ГЛ(М) = {У|ВМ/(М^КМ/ и
(ii) Терм М называется R-универсальным генератором (со­
кращенно R-y. г.), если = А.
8.2.8. Предложение. Существует замкнутый у. г. (т. е. fJ-y. г.).
Доказательство. Рассмотрим терм М = [Ег0\
Ег1\ . • •], определенный через Е. Для любого А'еА0 сущест­
вует i е N, такое, что ЕП’1 N- Следовательно,
М^[..., Em, N, ...].
Поэтому А°с^'(Л1). Так как каждый терм является под­
термом своего замыкания, то и Acz^'(M), так что 3Г(А1) = Л.
Следовательно, М есть у. г. По лемме 8.2.4 терм М замкнут. □
Заметим, что если М есть R-y. г., то 6 ММ) универсален в
том смысле, что для каждого УеЛ Gr(N) есть подграф в
GR(M). Таким образом, терм, построенный в предложении 8.2.8,
имеет универсальный (3-граф.
Универсальные генераторы будут игратр некоторую роль в
связи с со-правилом; см. § 17.3.
Понятие равномерности можно обобщить следующим обра­
зом.
8.2.9. Определение. Пусть для любого /1 е А определен терм
МА е А. Скажем, что Мд равномерен по А, если
(*
) VA(FA = Ma)
для некоторого терма F.
Как и раньше, если имеет место (*
), то говорят, что F
^-определяет отображение ДА.Мд.
178 Гл. 8. Классическое ламбда-исчисление (продолжение)

8.2.10. Предложение. Ма равномерен по А т. и т.т., когда


для некоторой переменной х и любых термов А имеет место ра­
венство МА — Мх [х := А].
Доказательство. (=>) Предположим, что УД (FA — Ma).
Пусть х^ F. Тогда имеем
МА = FA = Fx[x := А] — Мх[х :=А].
(^) Предположим, что УД (Ма — Мх[х := 4]). Тогда терм
Кх.Мх Х-определяет ДА.Мд.

8.3. Разрешимость; головные нормальные формы


Вспомним определение понятия разрешимости.
8.3.1. Определение, (i) Пусть А1еЛ°. Терм М разрешим,
если
3«(ЗМ, •••> 3^еЛ)Ж ... =
(ii) Произвольный терм М е Л разрешим, если его замы-
-> >
кание Кх.М разрешимо (это не зависит от выбора х).
(iii) Терм М е Л неразрешим, если М не является раз­
решимым.
8.3.2. Примеры. К разрешим, так как KII — I. Аналогич­
ным образом разрешим S. Терм хЮ разрешим, так как
(Z,x.x|U) К — I. Терм Y разрешим, так как Y (KI) = KI (Y (K.I)) =
= 1. С другой стороны, Q неразрешим. Действительно,
> -> •>
V/V(ShV = l не может иметь места), так как QJV М=>
₽► М ss QN', где /V—
Чтобц понять особую роль терма I в определении 8.3.1 (i),
заметим, что замкнутый терм М разрешим т. и т.т., когда
удал/ (мм = р).
Следующая лемма проясняет использование операции за­
мыкания в определении 8.3.1 (ii).
8.3.3. Лемма. Пусть Л1еА. (i) М разрешим т. и т. т., когда
имеется (замкнутый) подстановочный частный случай М * тер-
ма М и термы N Е Л°, такие, что М N = I.
(ii) М разрешим т. и т.т., когда Кх.М разрешим.
Доказательство, (i) Пусть Хх, ••• хп.М—замыкание
терма М.
(=>) Допустим, что М разрешим. Тогда для некоторых тер­
мов Л/1, ..., Nm
(*) (Кхх • • • xn.M)Nl • • • Ага = 1.
8.3. Разрешимость 179

Будем считать, что термы N замкнуты, так как в противном


случае можно подставить любые замкнутые термы в левую
часть последнего равенства. Далее можно считать, что ш> п,
так как в противном случае можно добавить нужное количе­
ство I к последовательности Ni, ..., Nm. Мы получаем, что
)(** М [х, :=М1] ■ • • [хп :=Nn] Nn+l Nm = \,
и нужный результат следует из того, что М *
зМ[Х|:=У1]'-
■ [хп:— Мп] — замкнутый подстановочный частный случай
терма М.
(<=) Если имеет место («•*), ), т. е. М раз­
то верно и (*
решим.
(ii) Пусть Xi = х. Тогда в силу (i) имеем
М разрешим <=>
^(З^ЗРеЛ»)(Л1[х1:=^]...[х„:=^]Р = |)<Ф
<=> (ЗМДР е Л°) ((Лх.Л!) М, [х2 := М2] • • ■ [хп := М„] Р = I) о
о (3N3P е Л°) ((U.M) [х2 := М2] • • ■ [хп := М„] м/= |
<=> Zx.A-1 разрешим. □
8.3.4. Следствие. Если М неразрешим, то неразрешимы и
термы MN, М [х : — М] и Кх.М при любом N.
Доказательство состоит из ссылки на лемму 8.3.3. □
8.3.5. Следствие. Разрешимость открытых термов МеА не
зависит от порядка переменных х в замыкании \х.М.
Доказательство получается ссылкой на лемму 8.3.3(i).

Теперь будет дана синтаксическая характеризация разреши­
мости в терминах так называемых головных нормальных форм
и головной редукции. Эти понятия введены Уодсвортом [1971].
8.3.6. Определение, (i) М называется аппликационным тер­
мом, если М имеет вид NL.
(ii) М называется абстракционным термом, если М имеет
вид Хх.М. к
8.3.7. Лемма, (i) Любой терм М — либо переменная, либо
аппликационный терм, либо абстракционный терм.
(ii) Каждый аппликационный терм М имеет вид М =
ss М]М2 Nn, п^2, где Ni не является аппликационным тер­
мом.
(iii) Каждый абстракционный терм имеет вид М == Xxi •••
xn.N, п 1, где N не является абстракционным термом.
180 Гл. 8. Классическое ламбда-исчисление (продолжение)

Доказательство. Применяем индукцию по длине тер­


ма М. □
8.3.8. Следствие. Каждый терм М имеет один из следующих
видов'.
(a) М = Тх\ хп.хМх ■■■ Mm, п, m 0,
(b) М = Ххг ••• хп. (Z.rAlo)Ali ••• Мт, п 0, т^1.
Доказательство. Если терм М — переменная, то он
имеет вид (а), где п = т — 0. Если М— аппликационный терм,
то М = N\N2 Nn, где N\ не является аппликационным тер­
мом. Следовательно, М имеет вид (а) или (Ь) с п = 0 в зави­
симости от того, является переменной или абстракционным
термом. Аналогичным образом получается, что М имеет нужный
вид в случае, когда он — абстракционный терм.
8.3.9. Определение, (i) Терм М является головной нормаль­
ной формой (г. н. ф.), если он имеет вид М = Xxj x^.xMj ••• Мт,
п, т 0. Головная переменная такого терма М—-это х. Через
HNF обозначается множество всех г. н. ф.
(ii) Говорят, что М имеет головную нормальную форму,
если М = М' для некоторого М' <= HNF.
(iii) Если М имеет вид
М = Х%1 ••• xn.(kx.M0)Mi ••• Мт, 0, т 5» 1,
то (Хх.М0) Mi называется головным редексом терма М.
Заметим, что головной редекс терма является также и его
самым левым редексом, но обратное неверно (контрпример —
терм Ъх.х((ка.а)Ь)).
8.3.10. Определение, (i) Допустим, что А — головной редекс
терма М. Будем писать
v М—h+N,

если М —* N, т. е. N получается из М путем свертывания ре


декса А. Отношение Т * называется одношаговой головно.'
редукцией.
(ii) обозначает рефлексивное транзитивное замыкание
h
отношения — h >.
(iii) Головная редукция (или головная редукционная це­
почка) терма М — это однозначно определенная последователь­
ность Мо, Mi, ..., такая, что М = Мо — h
> Mi —If
> •■• .
Если Мп — г. н. ф., то говорят, что головная редукция терма
М оканчивается термом Мп. В противном случае говорят, что
М имеет бесконечную головную редукцию.
8.3. Разрешимость 181

Следующий результат Уодсворта — непосредственное след­


ствие теоремы Карри о стандартизации (теорема 11.4.7).
8.3.11. Теорема. М имеет г.н.ф. т. и т.т., когда головная
редукция терма М заканчивается.
Доказательство. См. следствие 11.4.8. □
8.3.12. Лемма. Если М—> М', то M[z:=N]—>- М' [г := Л7].
h h

Доказательство. По предположению
M= (Xy.N0) NtN2 ••• Nm,
М'^хЛй[у-.==М1]К2 Nm.
Следовательно,
М [г := АГ] Cx.(ky.N0 [z := АГ] ) АГ, [z := N] ЛГ2 • • • N* m,

Л4'[z и.Л^0 [г/:=/Vt| [z := TV] * m,


• yV
где *tN = Ni [z := V] для
Теперь в силу леммы о подстановке 2.1.16 и соглашения о
переменных 2.1.13 получаем, что Л4 [г :=ЛП —М' [z := У]. □
8.3.13. Предложение, (i) Кх.М имеет г.н.ф <=> М имеет
г. н. ф.
(ii) М [г : = Л/] имеет г. н.ф. =>■ М имеет г. н. ф.
(iii) MN имеет г. н.ф. => М имеет г. н. ф.
Доказательство, (i) Используем тот факт, что из
Кх.М N следует, что N = "kx.N' и М —» N'.
(ii) Предположим, что М не имеет г. н. ф. Тогда по теореме
8.3.11 его головная редукция М = .М() —М< > ... бесконеч­
на. Тогда по лемме 8.3.12 и головная редукция терма M[z:= У]
была бы бесконечна, что противоречит наличию г. н. ф. у терма
(iii) Пусть
(*) М^Мо—
П п
> ...
— головная редукция терма М.
Случай 1. Mk не является абстракционным термом ни для
какого k. Тогда
MN^MaN-^ M{N •••
h h

— головная редукция терма MN. Так как последняя редукция


конечна, последовательность (*) также должна быть конечной.
Значит, М имеет г.н.ф.
182 Гл. 8. Классическое ламбда-исчисление (продолжение)

Случай 2. Для некоторого k терм Mk абстракционный. Запи­


шем его в виде Mk ss Хх.ЛД. Выберем наименьшее k. Тогда го­
ловная редукция терма MN начинается последовательностью
MN = МйЫ h -------h - MkN (Л.Х.М') N —h
> М' [х := W] —h > ■ • •.
Но
MN имеет г. н. ф. => М' [х := У] имеет г. н. ф. =>
=>ЛГ имеет г. н. ф. (в силу (ii))=>
М^ = Кх.М' имеет г. н. ф. (в силу (i)) =>
=>М имеет г. и. ф. □
Теперь мы можем охарактеризовать разрешимость в терми­
нах г. н. ф.
8.3.14. Теорема (Уодсворт). М разрешим -<=> М имеет г. н. ф.
Доказательство. В силу леммы 8.3.3(ii) и предложения
8.3.13 (i) можно считать, что М замкнут.
(=>) Если MN = I, то MN имеет г.н.ф. Следовательно, в
силу предложения 8.3.13(iii) терм М также имеет г.н.ф.
Если М Ui • • • Xn.xtMi • ■ -Mm, то М (КД)~ " = KmIAfi • • •
• • • Mm = l. Следовательно, М разрешим. □
В частности, нормальные формы разрешимы, или, что то же
самое, неразрешимые термы не имеют н. ф.
8.3.15. Следствие. М неразрешим ■<=>■ М наследственно не
имеет н. ф., т. е. для любого подстановочного частного случая
* и любой последовательности N терм M
М *N не имеет н. ф.
->
Доказательство. (=>) Если бы M *N имел нормальную
форму, то по теореме 8.3.14 и лемме 8.3.3(i) для некоторой
последовательности Р выполнялось бы равенство (М N) Р = \,
где *(M
N) — замкнутый подстановочный частный случай тер-
ма M*N. Поэтому M"
*N Р = I и М был бы разрешим по лемме
8.3.3(i).
(<=) Если М разрешим, то по лемме 8.3.3(i) для некоторой
-> * •>
последовательности N выполнено Л4У = 1. □
Теперь будет установлено несколько результатов, которые
понадобятся в гл. 10.
8.3.16. Лемма. Пусть М = Xxi ••• xn.xMi ••• Mm. Тогда из
M-^N следует, что N =н Xxj ■■■ xn.xNi ••• Nm для некоторых
термов N, таких, что Mt —» Nt.
8.3. Разрешимость 183

Доказательство. Все редексы, которые могут встре­


чаться в герме М, находятся внутри Mi........ Mm. Следователь­
но, если М -> N или М Л/, го N = Кх\ ••• xn.xN\ ••• Nm, причем
или Ml^»Ni. □
8.3.17. Следствие, (i) Пусть MeHNF и М—*■ N. Тогда
AfeHNF.
(ii) Пусть М имеет две г. н. ф.
N = )jc • • • xn.xNt • • • Nm и N' ••• xn,.x'N\ ■ ■ ■ N'm„
Тогда n = n', m — nT, x = x' и Ni = N'i для l^Z^m.
Доказательство, (i) получается непосредственно по
лемме 8.3.16.
(ii) По предположению имеем N — M = N'. Следовательно,
по теореме Чёрча — Россера 32 (М-» Z «-IV'). По лемме
8.3.16 терм Z имеет вид Xxi ••• xn.xZi ••• Zm, где п = п’, х = х',
пг = пг' и Ni-^-Zt^- N't для 1 < i < tn. □
8.3.18. Лемма. Множество NF нормальных форм можно
определить любым из следующих двух способов.
(i) х е NF;
Mi, • • •, Mm s NF => Л,
*! • • • xn.xMt • • • Мт е NF, п, т^О.
(ii) х ё= NF;
Mi, • • •, Мт е NF => хМ} ■ • • Мт е NF, где т > 0;
М е NF => кх.М е NF.
Доказательство, (i) Пусть — множество, которое за­
дано рассматриваемым индуктивным определением. Очевидно,
что S3 се NF. Пусть теперь М есть н.ф. Тогда в силу след­
ствия 8.3.8 терм М имеет вид \х\ ■■■ xn.xMi ■■■ Мт, причем термы
Mi, ..., Мт снова находятся в н.ф. Индукция по длине терма
М показывает, что М S?.
(ii) Множество, заданное рассматриваемым индуктивным
определением, — то же самое, что и в и. (i). □
8.3.19. Следствие. М имеет н.ф. <=> Хх.М имеет н.ф.
Доказательство. (=>) Если M = 'kz.yN, то Кх.М =
= Xxz.yN sNF.
(-$=) Если кх.М -*■ kz.yN, то z = xw и М Hw.yN^. NF. □
Терм М может иметь несколько различных г. н.ф. Напри­
мер, Л1 ™ Z.v.lx (II) имеет г. н.ф. Лх.л-(||) и Лх.х|. Теорема 8.3.11
обеспечивает канонический выбор.
184 Гл. 8. Классическое ламбда-исчисление (продолжение)

8.3.20. Определение. Если терм М имеет г. н. ф., то послед­


ний член его обрывающейся головной редукции называется
главной головной нормальной формой терма М.
Пусть, например, М = (кх.хх) \у (|а). Тогда уа есть одна из
г. н. ф. терма М, а его основная г. н. ф. есть у(\а).
Следующая лемма используется для сравнения разреши­
мости в системах X и CL.
8.3.21. Лемма (Хиндли [1977]). (i) Если М-^ N и М не
имеет вида кг.Mi, то MCL~»WNCL.
(ii) Пусть М—»х. Тогда MCL^»wx (а также и MCi,2-^wx,
h
где ( )сь2 определено в упр. 7.4.15).
Доказательство, (i) Соотношение М h N имеет по
предположению вид (kx.R) TU —> R [х := Т] U. Отсюда получаем
h
Мсс = x.RCL) ТcfU CL —»w Rql [x := TclI UCL s
s(7?[x: = n U)CL = NCL.
(ii) По предположению мы имеем головную редукцию
о: M = Mi1 —h > М22 —h > • • • —h > М„п х.
Иг того, что последний терм — переменная, вытекает, что
ни один из термов М, не имеет вида hy.Z. Поэтому доказы­
ваемый результат следует из (i). (Для ( )с£2 рассуждаем ана­
логично с использованием упр. 7.4.15.) □
Следующий результат взят из диссертации Барендрегта
[1971]. Приводимое доказательство принадлежит Хиндли
[1977].
8.3.22. Предложение, (i) Для М <= А
М ^-разрешим -ф=> Mcl w-разрешим.
(ii) Для Р
Р w-разрвшим <=> Рх ^-разрешим.
Доказательство, (i) Не умаляя общности, можно счи­
тать, что М замкнут.
(-<=) Пусть MCl tc'-разрешим. Тогда MClQ — WI для неко-
торых термов Q. Следовательно, MQK = Mcl.^Qk —что
доказывает Р-разрешимость терма М.
(=>) Если терм М p-разрешим, то MN — I, откуда MNx —
= х. По теореме 8.3.11 отсюда следует, чтоМАх-^-х.
h
8.4. Ламбда-определимость частичных функций 185

Тогда MCl^clx ~^w х по ле^ме 8.3.21 (ii). Поэтому MC£jVC£Z—»m


-^■WI, что доказывает w-разрешимость терма Mcl-
(ii) устанавливается аналогично с использованием упр.
7.4.15. □

8.4. Ламбда-определимость частичных функций


В этом разделе понятие Х-определимости будет обобщено на
частичные функции. Будет доказано, что среди частичных чис­
ловых функций Х-определимыми являются в точности частично
рекурсивные функции.
Частичная числовая функция — это частичное отображение
<p:Np^N при некотором p = Пусть ср, ф— две частичные
функции. Будем говорить, что имеет место ф(п)~ф(т), если
ф(п) — а о ф(т) = а. Иными словами, если определена ле-
вая часть условного равенства ф(н)~ф(т), то правая часть
определена и имеет то же самое значение, и обратно.
Пусть %, ф1, ..., фт — частичные числовые функции, причем
X имеет m аргументов, а фь ..., ф™ — одно и то же количество
аргументов. Тогда х(Ф1(п)........ фт(п)) обозначает частичную
числовую функцию ф, такую, что

ф(п) = а т. и т. т., когда Зщ ••• ат [ф;(«) = щ для 1 i^2 m


и х(«ь ат) — а].

Иными словами, для того чтобы было определено значение


ф(п), нужно, чтобы были определены все ф( (п).
Напомним, что ф(п)1 для частичной функции ф означает,
что ф определена в точке п (т. е. За(ф(п) = а)), а ф(п)| озна­
чает, что ф не определена в точке п.
Как уже говорилось раньше, первоначальное понятие Vonpe-
делимости было таково.
Частичная числовая функция ф от р аргументов А,-опреде-
лима, если существует терм F е А, такой, что что для всех п е №

Кги'1 = гф(/г)п, если ф(п)К


Frn1 не имеет н. ф. в противном случае.

В духе предложения 2.2.14 мы изменяем это определение


следующим образом.
186 I л. й. Классическое ламбда-исчисление (продолжение)

8.4.1. Определение. Частичная числовая функция ф от р


аргументов ^-определима, если для некоторого F е А

. . (V«eN") Fr п 1 — гср (п)1, если ф(п)^,,


* Г
*
F п неразрешим в противном случае.

),
Если имеет место (* то говорят, что ф ^-определена тер­
мом F.
Для всюду определенных функций это определение совпа­
дает с определением 6.3.1. Поэтому непосредственно очевидно
следующее утверждение.
8.4.2. Лемма. Общерекурсивные функции ^-определимы,
как частичные функции.
8.4.3. Определение. Пусть si— класс частичных числовых
функций.
(i) Говорят, что si замкнут относительно композиции, если
из х, Ф1, .... tym<=si следует, что функция ф, определяемая
соотношением
ф (rt) ~ X (Ч>1 («)........................ («)).

также принадлежит si.


(ii) Говорят, что si замкнут относительно минимизации,
если для любой всюду определенной1) функции y^si функция
Ф, определяемая соотношением ф(п) = pm[x(«, т) = 0], принад­
лежит si.
8.4.4. Определение. Класс &3L частично рекурсивных функ­
ций— это 'наименьший класс частичных числовых функций, со­
держащий общерекурсивные функции и замкнутый относитель­
но композиции и минимизации.
При сопоставлении ^-термов частично рекурсивным функ­
циям возникает следующая трудность. Представление компози­
ции уже не обязательно является композицией представлений,
как это было в случае всюду определенных функций; см. при­
мер 2.2.9.
Эта проблема будет решена в лемме 8.4.6.
8.4.5. Лемма, (i) (Vm е N) (rm'lKII = I), т. е. цифры равно­
мерно разрешимы.

■) Требование всюду определенности % можно снять, если модифицировать


доказательство леммы 8.4.11, применяя заглушающие множители, используе­
мые в доказательстве леммы 8.4.6.
8.4. Ламбда-определимость частичных функций 187

(ii) Пусть частичная числовая функция <р ^-определяется


->
термом FeA, Тогда для всех п
5Г/гпКП = 1, если ф(м)|,
Fr«TKII неразрешим в противном случае.
Доказательство, (i) Имеем
r0Xll = IKII = 1, ГП + Гкп = [F, W] КП = Fll = I.

(ii) Если <р (п) f, то терм Frn'] неразрешим, а тогда неразре­


шим и терм FrrtiKII в силу следствия 8.3.4. □
Следующая лемма использует искусственный прием, заим­
ствованный у Лёрчера [1963].
8.4.6. Лемма. Класс ^-определимых частичных числовых
функций замкнут относительно композиции.
->■ -> ->■
Доказательство. Пусть ф(п) ~ %(ф1(п), ..., фот(н)),
где функции %, фь ..., фт A-определены соответственно тер­
мами G, Hi, ..., Hm. Положим
F = Лх.(//jxKII) • • • (ЯтхКП) (G (Нгх) ■ ■ ■ (Нтх)).
Мы утверждаем, что терм F A-определяет функцию <р.
Действительно, если значение фДп) не определено, то терм F^n1
неразрешим, так как z-й «заглушающий множитель» AZ/zHKII
неразрешим в этом случае в силу леммы 8.4.5(ii). Если все
значения ф((л) определены, то все заглушающие множители
*■> ->
равны I, и Frп1 = G (Нfo') ■■ ■ (Нтгп'1), как и должно быть. □
Чтобы A-определить частичные функции, в построении кото­
рых участвует минимизация, нужен один результат из части III.
Введем сначала некоторые определения.
8.4.7. Определение, (i) Пусть A cz М — вхождение редекса,
причем А. = (Кх.А)В. Тогда первое вхождение символа А в А
называется первым X в А.
(ii) Пусть Ai, А2 cz М— вхождения редексов в терм М. Го­
ворят, что А! (находится) левее А2, если первое А в А] нахо­
дится левее первого А в А2. Мы пишем А] < А2, если Ai левее
А2, и Ai А2, если At < А2 или Ai = А2.
(iii) Вхождение редекса A cz М называется самым левым
редексом терма М (или в терме М), если А. находится левее
всех других редексов в М.
188 Гл. 8. Классическое ламбда-исчисление (продолжение)

Пример. Рассмотрим терм


М == Ла.(Л/>.(Лс.с) bb) d ((Ке.Г) а),

в котором подчеркнуты все редексы. Самый левый редекс в


М— это (Xb.(Kc.c)bb)d.
Заметим, что головной редекс терма М всегда самый левый,
но обратное неверно: рассмотрим хотя бы М = Кх.х((^у.у)х).
8.4.8. Определение. Пусть о —(конечная или бесконечная)
редукционная цепочка, начинающаяся с М,

а: Л1=Л1ЛЯ 0— ЛЯ —
Al ► • • • .

Тогда о называется квазилевой редукцией, если


Vn(3m^ п) (Ат —самый левый редекс в Мт),
т .е. самые левые шаги в о кофинальны.
8.4.9. Теорема. Если М имеет бесконечную квазилевую ре­
дукцию, то он не имеет н. ф.
Доказательство. См. теорему 13.2.6. □
Теперь мы можем получить следующее приложение.
8.4.10. Предложение. Пусть терм Р таков, что для всех
п е N имеет место Ргп' = Ё- Тогда
(i) рР не имеет н. ф.\
(ii) рР неразрешим.
Доказательство, (i) По определению 6.3.8 мы имеем
рР = ЯрГ0’1, где
v Яр = 0 (Л/гх.еслм Рх, то х, иначе hx+).
Тогда
ИРгпл —»если Ргп\ то гп\ иначе НРтп-\- I1.
Поэтому рР имеет следующую редукционную цепочку
рР = нрг^ -»
-^■если Рг0\ то г0\ иначе HPrV-^
-^ЯрГ11-
*
-^если Рг11, то г1'1, иначе НРГ2'1-»

• • • .
8.4. Ламбда-определимость частичных функций 189

Здесь запись М N показывает, что в данной редукции


сворачивается хотя бы один самый левый редекс. Отсюда сле­
дует, что рР имеет бесконечную квазилевую редукцию и по­
тому не имеет н. ф. по теореме 8.4.9.
(ii) Возьмем замкнутый подстановочный частный случай
*),
терма цЛ Согласно определению 6.3.8, он имеет вид рс(Р где
* — замкнутый подстановочный частный случай терма Р.
Р
Аналогично тому, как это сделано в п. (i), мы устанавли-
-> ->
ваем, что pP
*
Z не имеет н. ф. ни для каких Z. Поэтому |t/J не­
разрешим в силу следствия 8.3.15. (Вместо этого можно ис­
пользовать упр. 13.6.13 для установления неразрешимости
цР.) □
8.4.11. Лемма1). Множество ^-определимых частичных чис­
ловых функций замкнуто относительно минимизации.
Доказательство. Пусть ср (n) pm [x(n, т) = 0], где
функция х всюду определена и Х-определена некоторым тер­
мом G. Положим
-> ->
Р = Хх.ц [Ар.Zero (Gxy)].

Если ф(п)1, то Bm(x(«, /п) = 0). Поэтому в силу предложе-


-> ->
ния 6.3.9 (ii) имеем =■ ср (п).
■> ->
Если же ср (/г) Т, то Vm(x(n, m) =/= 0) и, следовательно,
Vm (Zero (Gr«T rmi) = F). Поэтому в силу предложения 8.4.10
получаем, что терм
ргц1 = ц [Аг/.Zero (Grп~>у)]
неразрешим. Таким образом, терм F Х-определяет ср. □
8.4.12. Лемма. Если F К-определяет частичную функцию ср,
то
ср (и) = m<=>Frnd = гиП.
Доказательство. (=^) имеет место по определению.
->
(<=) Если Ргм‘1 = гт'1, то ввиду разрешимости терма гтЛ
имеем ср(п)| и cp(n) = m'. Но тогда rmT = rm'i и, следова-
гельно, т = т' □
8.4.13. Теорема (Клини). Частичная числовая функция ча­
стично рекурсивна т. и т. т., когда она ^-определима.
’) См. подстрочное примечание к определению 8.4.3 (ii).
190 Гл. 8. Классическое ламбда-исчисление (продолжение)

Доказательство. В силу определения 8.4.4, лемм 8.4.2,


8.4.6 и 8.4.11 получаем, что все частично рекурсивные функции
Х-определимы. Обратно, пусть функция ф ^.-определена тер­
мом F. Тогда по лемме 8.4.12
->
Ф (п) = т <=> X 1— Fr«1 = rmi.
Правая часть этой эквивалентности рекурсивно перечислима,
поэтому перечислима и левая часть, а значит, и график функ­
ции ф. Таким образом, ф частично рекурсивна. □

8.5. Упражнения
8.5.1 (Россер). Показать, что каждый из следующих термов образует
одноэлементный базис.
(1) Хо = (К41, S, К).
(ii) X! =(К2К, К, KS).
8.5.2. Построить одноэлементный базис для Л° (xi, ..., хп).
8.5.3. Показать, что множество Л нельзя перечислить одним термом.
8.5.4. (i) Вывести теорему о неподвижной точке 2.1.5 из второй теоремы
о неподвижной точке 6.5.9, используя терм Е-
(ii) Пусть F е Л°. Положим W == kx.F (Ехх). Показать, что терм
Й7ГЦИ- неподвижная точка для F.
(iii) Показать, что (VF е Л°) (Зга <= N) (Frn~l = Егп'1).
(iv) Пусть со == Тху.Еу (хху) и G ss coco. Показать, что G перечисляет
множество неподвижных точек всех замкнутых термов.
8.5.5. Показать, что для некоторого Ее?0 имеет место
(VM <= ^°) (Зп е N) (Е (r«CL4)
8.5.6. (i) Доказать следствие 6.5.10.
(ii) Показать, что 1 (ЭГ е= Л) (VF <= Л°) (YF FrYF'1).
8.5.7. (i) Показать, что ГЛ4'1 не равномерна по М.
(ii) Показать, что цР равномерна по Р.
8.5.8. Пусть K°° = YK. Показать, что
М разрешим => Л1 К°°.
Обратная импликация тоже верна.
8.5.9. Пусть С = Y (Kcab.b (cb (са))). Показать,что терм Cab не имеет
н. ф., но разрешим.
8.5.10. Построить терм М, такой, что
М имеет н. ф. <=► теорема Ферма ложна.
8.5.11. Определить ц-оператор рт [ср (п, т) = 0]также и для частичных
функций ср. Показать, что класс Л-опррделимых частичых функций замкнут
и относительно такой минимизации.
8.5.12. Показать, что понятия «М имеет н.ф.» и «Л1 разрешим» Е^-полны.
8.5.13. Построить терм F s Л°, такой что Frnl = Гху.хпух ~п.
8.5.14. (i) Пусть S = £W°(X)—модель из термов, состоящая из замкну­
тых Х-термов с точностью до P-конвертируемости. Определим сюръективное
отображение v: N-S,
* полагая v (п) = Е1’//"'. Показать, что y(X) = (S. v) —
предполное нумерованное множество (это понятие определено перед
8.5. Упражнения 191

ynp. 6.8.18). Показать, что отображение ц: S ->■ S, определенное соотноше­


нием р(М) = FM для F еЛ11, является морфизмом.
(ii) Показать, что для любой общерекурсивной функции f
(») (Эп s N) (Егн‘1 = Ег[ (п)1).
[Указание. Это непосредственно следует из (i) и упр. 6.8.18; можно также
использовать упр. 8.5.4 (iii).]
(iii) Показать, что соотношение (*) и вторая теорема о неподвижной
точке 6.5.9 непосредственно эквивалентны.
(iv) Показать, что для всех рекурсивных [, удовлетворяющих условию
VM3n (М = Ег/ (пр), имеет место равенство ErJ (м)1 = Ег/(т)1 для не­
которого п =/= т.
8.5.15 (Крейг, в книге Карри и др. [1958], с. 183). Собственный комби-
-> -> -> ->
натор — это замкнутый >,-терм М вида Хх.Р(х), где Р(х) е {х}+. Доказать,
что базис, состоящий из собственных комбинаторов, должен содержать не
менее двух элементов.
8.5.16. (i) (Ч. А. Мередит) Пусть Н s='/.abcd.cd(a(Kx.d)). Показать, что
Ш} —базис. [Указание. Пусть Н, = Н, H„+i = НпН, U = Н3Н3,
X= Y = XX и Z /Л(Д4Г)(К/Д). Тогда Н, (H<UH2) Н3 = К и
X (UZ) = S.]
(ii) (Барендрегт). Пусть Х = Кх.х (xS (КК)) К. Показать, что {X}—ба­
зис. [Указание. XXX = К, ХК = S.]
(iii) (Бём). Пусть X = Кх.х (xS (К31)) К. Показать, что {X}—базис.
[Указание. XX = К, ХК = S.|
(iv) (Россер) Найти / е Л°, такой, что JJ = 8 и /S == К.
8.5.17. Теорема о бесконечнократной неподвижной точке (Клоп).
(i) Пусть f — одноместная рекурсивная функция и М„ е Л° — рекурсив­
ная последовательность. Число п е Seq s N будем записывать в виде
п = (п0, .... Построить последовательность Хо, Хц ... еЛ°, такую,
что Хп = МпХт • • • Хт^ для всех п, где т = f (п) и k = 111 (и).
(ii) Вывести из (i) теорему о кратной неподвижной точке 6.5.2.
8.5.18. Показать, что все частично рекурсивные функции можно предста­
вить в CL на цифровой системе г0С(/1, rlCL1.......... [Указание. Использовать
предложение 8.3.22.]
8.5.19. Показать, что терм Е^> можно взять в н.ф. [Указание. Решение
содержится в доказательстве леммы 16.3.15.]
Глава 9
Л1 -исчисление

Напомним определение ограниченного класса Л;:


х е Л/,
AleA,, xeFV(M)=>(k.M)eA/,
М, N е Л/=HM/V) е Л,.

Элементы класса Л/ называются Х/-термами. XJ — это фор­


мальная теория, состоящая из равенств между Х/-термами, до­
казуемых, исходя из аксиом и правил системы X, ограниченных
множеством Л/. См. § 2.2, где обсуждается различие между
полной и ограниченной теорией.
Построение теории М параллельно построению полного Х-ис­
числения. Частично рекурсивные функции будут представлены
ХЛтермами. Комбинаторный эквивалент этой теории будет из­
ложен по аналогии с § 7.1. Анализ понятия разрешимости для
ХЛисчисления покажет, что имеется несколько приближений к
К в виде ХЛтермов.

9.1. Общие соображения


Будет доказано, что полное Х-исчисление — консервативное
расширение Х/-исчисления. Некоторые из понятий, определен­
ных для полного Х-исчисления, можно релятивизировать для
Х7-исчисления. Будет заимствован из гл. 11 результат о том,
что терм М е А/, имеющий н. ф., является сильно нормали­
зуемым.
9.1.1. Обозначения, (i) По отношению к системе X/ исполь­
зуются те же синтаксические соглашения, что и по отношению
к X.
(ii) При необходимости различить эти системы полное Х-ис­
числение называется ХК-исчислением. Аналогично различаются
системы X/ и ХК, а также классы термов А/ и Ау<.
9.1. Общие соображения 193

(iii) Множество Л/(х) определяется несколько иначе, чем


в К-случае:
Л° (х) = {М е А, | FV (М) = {х}}.
О’*
Причина изменения, внесенного в определение класса ЛДх),
заключается в том, что V-терм может перечислять только класс
термов с фиксированным множеством переменных; см. лем­
му 9.1.2 (iv).
Теория к/ имеет те же аксиомы и правила вывода, что и '/.К,
но они ограничены множеством Л;. Например, равенство
(Kx.M)N = М[х := TV] является аксиомой системы X/ для всех
М, N е Л/. Следующее утверждение показывает, что введенное
ограничение осмысленно.
9.1.2. Лемма, (i) М, N е Л7 => М [х :=7V] (= Л/.
(ii) Me A/=>FV((Ax.Af)N) = FV(M [x := V]).
(iii) M e Л/, M —»рт) N => N <= A,.
(iv) Me=Ah M =₽tl N => FV (M) = FV (V).
Доказательство, (i) получается индукцией по построе­
нию терма М.
(ii) Предположение МеЛ, необходимо: действительно,
FV ((kx.I) у) #= FV(/). Как только это отмечено, доказываемый
результат становится очевидным.
(iii) устанавливается индукцией по порождению соотноше­
ния Л4—» рп V с использованием п. (i) для базы и п. (ii) при
рассмотрении случая
Р —>■ Q => Zx.P -> Zx.Q.
(iv) устанавливается аналогично. □
9.1.3. Следствие, (i) Система КК консервативна относительно
II.
(ii) Система ХКт) консервативна относительно к1т\.
Доказательство, (i) Допустим, что М, N е Л/ и
Щ\- М = N. Тогда М — р N, откуда по теореме Чёрча — Россера
получаем
3Z (M-»Z AN -»Z).
По лемме 9.1.2 (iii) имеем Z е Л/. Но тогда 2/ Н М = Z = N.
(ii) устанавливается аналогично (i) с использованием тео­
ремы Чёрча — Россера для Реконверсии. □
Если ограничиться V-исчислением, то понятие разрешимости
изменится. В действительности и для ХЛ-термов можно разли­
чать два вида разрешимости.
7 X Барендрегт
194 Гл. 9. lj-исчисленив

9.1.4. Определение, (i) Пусть М е Ад. Терм М называется


К-разрешимым, если (ЗА е AK) (MN = /). Терм М называется
I-разрешимым, если (ЗА g Aj (MN = I).
(ii) Произвольный терм .Me А.? называется К- или 1-разре-
шимым, если таково его замыкание Тх.М.
Многие другие понятия, определенные для полного ^/(-исчис­
ления, можно релятивизировать к ^/-исчислению.
Теперь мы (в последний раз) заимствуем из части III один
результат о редукции. Как уже отмечалось выше, АК-терм К1Й
имеет н. ф., но для него существует и бесконечная редукционная
цепочка. Для М-термов такое невозможно.
9.1.5. Теорема (Чёрч, Россер [1936]). Если М е А/ и М
имеет н. ф., то верно SN(M), т. е. все редукционные цепочки,
начинающиеся термом М, обрываются. В частности, редукцион­
ный граф G(M) конечен.
Доказательство. См. следствие 11.3.5. □
9.1.6. Следствие. Пусть терм Me А/ имеет н. ф. Тогда все
подтермы A cz М также имеют н. ф.
Доказательство. Допустим, что М = С [А] и А. не
имеет н. ф. Тогда А имеет бесконечную редукционную цепочку,
значит, и М имеет такую цепочку, что противоречит тео­
реме 9.1.5. □
Отметим, что следствие 9.1.6 несколько слабее, чем теоре­
ма 9.1.5: в АЛ-исчислении имеются термы М, такие, что все под­
термы М имеют н. ф., но сам М обладает бесконечной редук­
ционной цепочкой.
9.1.7. Пример. Рассмотрим М = (Ax.F (хх)) (Ax.F (хх)). Тогда
М е Ад и все его подтермы имеют н. ф., но верно оо(А4).
Доказательство. Терм М имеет вид UW, где 117 =
= Та. F (аа). Так как F Тху.у, то любой подтерм терма М
(включая сам М) имеет н. ф. Бесконечная редукционная цепочка
для М такова:
riF-^F(rr)->F(F(rr)) ••• . □

9.2. Определимость
В этом пункте мы докажем, что для некоторой цифровой си­
стемы можно определить частично рекурсивные функции А/-тер-
мами.
9.2. Определимость 195

Цифры гп>, введенные в § 2.1,— это АТС-термы. Однако все


цифры Чёрча сп, кроме с0> являются АЛтермами. После изменения
с0 эти цифры будут использованы в АА-исчислении в качестве
адекватной цифровой системы. Имеется и модификация стан­
дартных цифр, дающая адекватную А/-систему; она описана
в упр. 9.5.11.
9.2.1. Определение, cj = Kxy.xWy, cln+x = cn+v
Таким образом, для любого п цифра с'п есть н.ф., принадле­
жащая Л°, и с'|| = I. Отметим также, что = с!. Это объ­
ясняет выбор цифры с1 как аппроксимации для с0 = Тху.у.
В этом пункте А-определимость частичных числовых функций
всегда будет пониматься применительно к последовательности
сЛо> с? • •
9.2.2. Обозначения, (i) {ni = cIri.
(ii) LAfj = L=tt=Alj.
(iii) Если n = n0, .... nk, to FlHj — FLn0J • • • Lnkr
9.2.3. Определение. Частичная числовая функция <р М-опре-
делима, если для некоторого F е А,
Ftnj — Ltnj, если <р (п) = т,
(*) -> ->
Fttij не имеет н. ф., если, <р(п)т.
Если верно («), то говорят, что ср A-определена термом F.
Из следствия 9.4.21 будет вытекать, что это — подходящая
релятивизация определения 8.4.1 применительно к АТ-исчислению.
В А/-исчислении можно частично смоделировать истинност­
ные значения и условный оператор.
9.2.4. Определение. Т/ = Kxy.yWx, F, = Ax.xlll (= TJ).
9.2.5. Лемма. Пусть В принимает значения Т, и F/. Пусть
Р, Q таковы, что PII = I и Qll = I. Тогда значение выражения
если В, то Р, иначе Q
можно представить термом BPQ. В частности, это имеет место
для
Р, Q<={|, Т/, F„ l0j, l1j, ...}.
Доказательство очевидно. □ 1
9.2.6. Определение, (i) ZerO/^Ax.x (Т/FJTJzF/.
(ii) U£^Ax0 xA.(xoll) (.ЦН)Ц.
196 Гл. 9. KI-исчисление

9.2.7. Лемма, (i) Zero; lOj — Ту, Zero; i.ra + 1 j = Fy.


(ii) Uy; L«j = LnZJ для n = n0, ..., nk и O^i^k. □
9.2.8. Предложение. Исходные функции (см. определение
6.3.2) M-определимы.
Доказательство. В качестве определяющих 27-термов
берем
Ufo Sy+ ^Хх.если ZerOyX, то lIj, иначе (S^x),
где терм s Xabc.b (abc) был введен в определении 6.4.4. За­
метим, что ■S+lOjII = I, так что применима лемма 9.2.5.
Наконец, положим
Z = Zx.xIIlOj. □
Начиная с этого места, Sy- будет обозначать введенное толь­
ко что представление функции следования.
9.2.9. Предложение. Класс частичных XI-определимых функ­
ций замкнут относительно композиции.
Доказательство. Пусть функции %, ф1........ M-оп­
ределены термами G, Hi, ..., Hm соответственно. Тогда функция
-> -> ->
Ф (га) = X (ф1 (га), .... (га))
/./-определяется термом
F = hx.G(HiX) (Hmx).
В противоположность ситуации, имеющей место для АК-опре-
делимобти (см. § 8.4), это верно и для частичных функций. Дей-
ствительно, если одно из значений -фу (га) не определено, то НцПл
не имеет н.ф., а тогда в силу следствия 9.1.6 терм Fi_nj также
не имеет н. ф. □
9.2.10. Определение. Пусть Р^ = Ax.xUyZ. Тогда Р*) (Л40, ...
..., = для 0 <1 i <1 k, если (Vz<fe) (MJI = I).
9.2.11. Предложение. Класс XI-определимых всюду опреде­
ленных функций замкнут относительно примитивной рекурсии.
Доказательство. Пусть ф задана равенствами

ф (0, га) = X (га),


ф(&+ 1, га) = ф(га, k, ep(k, га)),
9.2. Определимость 197

где % и i|) ^./-определены термами G и Н соответственно. По­


ложим
Mk, п = + 1 -I’ I.T (& + 1, «)j. l4P (k> «)j>-
Если мы сможем определить М -> равномерно по k, п неко­
торым /./-термом, т. е. если = Al -» для некоторого
l«j
k, п
М' е Л7, то <р можно ^/-определить термом
F = кху.Р2
12(М'ху).
Чтобы найти М', положим
X = Xax.(S/+ (Р/ох), На (P/ox)(P/ix), Рцх).

Тогда XcnjM k, ->


п = М /г + 1, п> и Хии <lOj, Gl«j, lOj) = A10, ->.
п Сле-
довательно,
= (L°j, Gl«j, lOj) ==
= l^+ 1 j (Al«j) (lOj, Gl«j, lOj).
Отсюда следует, что последовательность М k, ->
п
равномерна
по k, п и все в порядке. □
9.2.12. Лемма. Пусть Ао, А°; таковы,что для некоторого
/ге=М
ЛгГ
* = |, г —О, 1.
Тогда для некоторого /И е А®
/ИТ7 = Л0> MFZ = A.
Доказательство. Пусть Т/г = Кху.у\~кх, Fk = Kxy.x\~ky.
Заметим, что TJI = FJI = I. Положим М = Xx.xTftFfeA0Аь Тогда
МТ/ — T/TfeFfeAoA = ТИоА!= Л о,
и аналогично получаем MF/ = Af □
Следующая конструкция принадлежит Клини.
9.2.13. Определение. Пусть терм Р е А® таков, что для
всех п е N
Р\_ГЦ = Ту ИЛИ Р\ГЦ = F/.
Введем термы
Ао = Kxwt.wT71~3 (tx) |~2х, А/ == kxwt.w (/ (S/х)) (S/х) wt,
198 Гл. 9. XI-исчисление

которые будут использованы для представления операции мини­


мизации. Имеем Л;|~3 = 1 для i — 0,1. (Отметим, что S+| = l2j.)
Таким образом, в силу леммы 9.2.12 найдется терм Wе Л,, такой,
что ГТ/ = Л0, WzF/ = /l1.
Положим, наконец,
Hp = Xx.W'(Px)xW'P, fijP^HptOj.
9.2.14. Лемма. Пусть Р, НР и piP— термы, определенные
выше.
lHj, если PlHj = Ту,
//pL^+lj, если Ptnj = FI.
(ii) Если Зп (Pl«j = Тто положим m = pn [Penj = Ту].
Тогда р,,Р — \_пгл-
(iii) Если Vn (Plwj = Fy), то p.tP не имеет н. ф.
Доказательство, (i) Если Pinj = Ty, то
HpLnj = WTlLnjWP = AoinjWP =
= W/Г3(PLnj) |~2Lnj = ЛоГ3ТуГ21Пл - Lnj.
Если Pinj — F], то
HpLnj = ITFyLnjlTP = 41LnjW =
= lF(PLn+ lj)Lft+ hWP = HpLn+ lj.
(ii) доказывается аналогично предложению 6.3.9 (ii)'.
(iii) В этом случае имеем
Ц1Р HpL0j -> Г (PL0 j) l0 j Г P -» W (Pl 1 j) L1 j Г P ...
' . .. W (PLnj) LnjW'P ...
^0

Таким образом, ptP имеет бесконечную редукционную це­


почку, следовательно, он не имеет н.ф. в силу теоремы 9.1.5. □
9.2.15. Предложение. Класс частичных XI-определимых функ­
ций замкнут относительно минимизации.
Доказательство аналогично доказательству леммы 8.4.11
и использует лемму 9.2.14. □
9.2.16. Теорема (Клини). Частичная числовая функция XI-оп­
ределима т. и т. т., когда она частично рекурсивна.
Доказательство аналогично доказательству теоремы
8.4.13 и использует результаты настоящего пункта. □
9.3. Комбинаторы 199

9.3. Комбинаторы
В этом пункте исследуется теория CL/ — так называемый ком­
бинаторный вариант теории М. Мы исходим из того факта (уста­
новленного Россером [1935]), что, как и в неограниченной ситуа­
ции, комбинаторная полнота следует из конечного числа своих
частных случаев. CL, — теория без связанных переменных. Она
похожа на CL, но имеет иное множество констант. И снова важ­
ное приложение комбинаторной теории обеспечивается тем, что
она дает базис для множества замкнутых термов.
Если нужно подчеркнуть различие между двумя рассматри­
ваемыми комбинаторными теориями — CL и С£/,— то теорию CL
обозначают CLK.
9.3.1. Определение. CLIt как и CLK,— эквациональная тео­
рия. Ее константы — это
1, В, С и S,
заменяющие константы К и S теории CL. Термы теории CLi
строятся из этих констант и переменных так же, как в CLK. Мно­
жество С£/-термов обозначается через Формулы системы
CLi —это равенства ее термов.
Вместо аксиом группы (I) для CLK (см. определение 7.1.2)
система CLi имеет следующие аксиомы:
IM=M, BMNL = M(NL),
CMNL = MLN, SMNL = ML (NL),
где M, N, L — произвольные С£/-термы. Аксиомы и правила
группы (II) для системы CLK, утверждающие, что = есть от­
ношение равенства (см. определение 7.1.2), сохраняются и для
системы CLi.
Для CLi будут использоваться те же соглашения, что и для
CLK
Теперь будет показано, что /./-абстракцию можно смоделиро­
вать константами системы С£/.
9.3.2. Определение. Для терма М е CLlt такого что хе
eFV(M), определим '/. *х.М следующей индукцией по построе­
нию М:
Х’х.х = 1,
BP (X’x.Q), если x FV (P) и x e FV (Q),
K'x.PQ sb < С(Гх.Р) Q, если x e FV (P) и хф FV (Q),
S (L'x.P) (K'x.Q), если xeFV(P) и xeFV(Q).
Как и в случае CLK, мы можем теперь установить комбина'
торную полноту.
200 Гл. 9. 7.1-исчисление

9.3.3. Теорема, (i) FV(Vx.M) = FV(M)_{%};


(ii) (Vxj ••• xn.M)Nx ■■■ Nm = M[x\ := Ni] ■■■ [x„:=Nm],
при условии, что обозначения корректны, т. е. xeFVpM) в (i)
и выполнено аналогичное условие для (ii). □
Как и в случае системы CLK, доказуемое в CL/ равенство по­
рождается подходящим понятием редукции, которое определяет­
ся следующим образом.
= М)1М^<ё’/и ■■■
... (J {(SMNL, ML(NL))\M, N,
Это понятие обладает свойством CR — см. упр. 9.5.15.
Понятно, как определить стандартные переводы
( )л/: ( )сд7: Az—>'F/.
В частности,
(Лм = I, (В)и = 3 = Kxyz.x (yz),
(C)KI = C = hxyz.xzy, (S)X/ = S.
Тем же методом, что и для K-случая, можно построить ак­
сиомы A/poi), такие, что системы М и CL,! + эквивалентны
между собой, а системы М Д- ext, CLi + и CLi 4- ext — между
собой. См. упр. 9.5.12.
Опишем теперь некоторые приложения системы CL/ к V-ис­
числению.
9.3.4. Определение. Множество 4= А, называется 1-бази­
сом, если
(VM е Л°) (ЗУ е= ^+) (N = М).
9.3.5. ^Предложение. Множество 96 = {I, в, С, S} является
1-базисом. В действительности
(VM <= Л?) (ЗУ е ^+) (У М).
Доказательство этого утверждения аналогично дока­
зательству для /(-случая (предложение 8.1.2). □
9.3.6. Следствие. Если 96 есть 1-базис, то
(VM <= Az°) (ЗУ е= й?+) (У М).
Доказательство такое же, как для следствия 8.1.3. □
9.3.7. Предложение (Россер [1935]). Пусть
J = Xabcd.ab (adc).
Тогда {!> J} есть I-базис.
9.3. Комбинаторы 201

Доказательство. Заметим, что


JC.(JC,)(JC,)-^C, С (ЛС) (Л)-» В,
С (С (ВС (С (BJC.) С,)) С.) -» W (s= kab.abb),
B(B(BW) С) (BB)^S.
Следовательно, {J,J} есть базис для (I, В, С, S], а значит,
и для Л“. □
В дальнейшем фиксируем обозначение J= kabcd.ab(adc).
Заметим, что выражение комбинатора S через I и J тре­
бует 266 символов (не считая скобок).
Следующее утверждение впервые доказал Клоп [1975] с по­
мощью иной конструкции.
9.3.8. Предложение. Существует 1-базис, состоящий из од­
ного элемента.
Доказательство. Положим
Х/ = <К
*, J, I).
Заметим, что ЮЛ^ = л' для N <= {I, J} (К‘— локальный К).
Тогда {X/} — базис для {I, J], а значит, и для Л°:
Х;Х7 X;K‘JI К’К'ЛЛ -» K *l Л II I,
Х711К’Л-» К *
Л J. □
Начиная с этого места, Х7 обозначает терм, построенный в
этом доказательстве.
9.3.9. Лемма. Для каждого М А°/ существует нормальный
терм М' е Л7, такой, что
МП-»!,
Доказательство. Для данного М найдем <= {Х7}+>
такой, что Mi —^Л4. Пусть М2 получен из М] путем замены каж­
дого вхождения терма Х7 на переменную х. Положим М' =
= Хх.Л42. Очевидно, что М' е Л° и находится в н. ф. Кроме того,
Afl-M и М'Х, 'Mt-M. □
9.3.10. Лемма. (V/l()/l] сд Л7)(3/'ge Л7) —s-А/, t = 0, 1.
Доказательство. Пусть A'i таковы, что
А'А I и A'iXi-»Ai для г=0, 1.
Положим F = Хх.Zero ,хA', A'tXr Тогда
KlOj - Т/AuA'iXj A'oXj —Ао
202 Гл. 9. М-исчисление

и аналогично
Ги1и-»Л1. □
Существенное усиление леммы 9.3.10 дает теорема 10.5.2. См.
также упр. 9.5.2.
9.3.11. Предложение (Клини [1936]). Пусть G, Н е А°. Тогда
существует терм F е А?, такой, что
FlOj-^G, FLn+lj-^//FLn+1j.
Доказательство. Пусть терм М s А, ^/-определяет
функцию sg, т. е. имеет место
Л/lOj — lOj и Миг + Ij = l 1 j для всех neN.
Положим
Р == Кху.Н (кг.у (Mz) zy) х.
В силу леммы 9.3.10 существуют термы Q, R <= А°г, такие что
QlOj—»Zx.Xl0jl1j> QlIj—
и
/?l0_i —»• Q, RlIj—^P.
Положим теперь F ss 'kz.R(Mz)zR. Тогда
FlOj —» /?i_0j L0j/? —* QlOjR RlQj l 1 j —» Ql 1 j —* G
и
* Rl 1 j Ltt + 1 jR —» Pi_n + 1 jR
Flm + 1j-
H (kz.R (Mz) zR) Ln + 1 j —» HFitt + 1 j. □
9.3.12. Теорема (Клини [ 1936]). Существует терм E/SA,,
такой, что для всех МеА» имеет место соотношение E/l/Hj —» М-
Доказательст во строится в два этапа.
(1) Лемма. (3F 6= Л°) (V/W е= Л,) (Эя е= N) (FLnj -»/И).
Доказательство. Как и на шаге 3 доказательства теоре­
мы 8.1.6, возьмем термы Ро, Р| е Л,, V-определяющие рекур­
сивные проекции ро, р\. В силу предложения 9.3.11 существует
терм F е А?, такой, что
Fl«j—»XZ, если п — О,
-»F(PoLnj)(F(PlLnj)) в противном случае.
Теперь, как и на шаге 3 доказательства теоремы 8.1.6, полу­
чаем, что F обладает нужными свойствами. □;
9.3. Комбинаторы 203

(2) Завершение доказательства. Полученный терм F может


быть преобразован в Е/ так же, как это сделано в шагах 4 и 5
доказательства теоремы 8.1.6. Пг □
Начиная с этого места, Е7 обозначает терм, построенный в
доказательстве теоремы 9.3.12.
9.3.13. Замечание. Как и в A-случае, имеется перечислитель
Ez -> для множества AJ{x), т. е. М-терм, такой что
(V/И е= А» Й) (Е; /И).

Отметим, однако, различие между множествами


Л° (х) = (М е Л/1 FV (М) = Й)
и
Л°к (х) = {М е= Лк | FV (М) <= й}}.
9.3.14. Определение. Последовательность {/И„} термов на­
зывается I-равномерной, если для некоторого /еА7
(*) FlHj = Мп.
В этом случае говорят, что последовательность Мп 1-рав-
номерна {посредством F).
Последовательность хо, xqXq, xoxqxo, ... /-равномерна.
Последовательность хо, xi, хо, xi, ... для различных перемен­
ных хо, xi является К-, но не /-равномерной.
Используя комбинатор Е^ можно доказать, что последо­
вательность Мп /-равномерна по п, если
(1) V«(M„eAz°(x)) для некоторого х,
(ii) Дп. Мп рекурсивна.
Если Мп /-равномерна (посредством терма F е Л7), то, как
и в A-случае, можно определить через F терм [Mn]raeN.
Терм [E7Lnj]„eN— универсальный генератор для %/-исчис-
ления.
Вместе со второй теоремой о неподвижной точке терм Е, ■>
позволяет дать много обобщений леммы 9.3.11.
9.3.15. Теоремы о неподвижной точке, (i) (VA е Л7) (ЭХ s
е=Л7)(Х = АХ).
(ii) (VF e= Az) (ЗХ e Л7) {X = fLXj).
(iii) В (i) и (ii) имеет место FV(X) — FV (F) и X —» FX {со­
ответственно X FlXj).
Доказательство такое же, как и в A-случае. Обратите
внимание на то, что Y, Йе А°. □
S04 Гл. 9. Г1 -исчисление

Следующая конструкция — типичный пример применения вто­


рой теоремы о неподвижной точке вместе с термом Ez.
9.3.16. Применение. Существует терм F е Л°, такой что
Gl&j, если k четно,
HFikj, если k нечетно.

Доказательство. Каки в доказательстве теоремы 6.5.9,


обозначим через Ар и Num рекурсивные функции, такие что
Ар (Ф= Р, Q) = (PQ), Num (п) = (Lnj).
Положим
Ap(^G, Num (&)), если k четно,
Ар(Ар(ф=Я, f), Num(fe)), если k нечетно.
Тогда функция р рекурсивна и, следовательно, ^/-определима
некоторым термом Р е Л?. Поэтому для любого терма М.
PlMj Lkj =
LAp($:G, L^j)j = lGl&JJ, если k четно,
[_Ар(Ар(ф=Я, ф= М), Num (^))j = если k нечетно.
По второй теореме о неподвижной точке 9.3.15(11) найдется
терм FeA'J, такой, что F = лх.Е/ (PlFjx). Следовательно,
Е/ (PlFj l&j) = E/lGl^jj = Gl^j, если k четно,
En.HFLk^ = HFLkb если k нечетно.

Разумеется, можно было использовать и конструкцию в стиле


доказательства предложения 9.3.11 (см. упр. 9.5.9). Преимуще­
ство примененного нами метода в возможности опираться на
тезис Чёрча для рекурсивных функций: обычно сравнительно
легко доказать, что эффективно заданная числовая функция ре­
курсивна. Непосредственное построение терма с указанными
выше свойствами было бы более сложным.

9.4. Разрешимость
В этом пункте мы покажем, что в ^/-исчислении разреши­
мость терма М совпадает с наличием у него н. ф. Доказатель­
ство этого факта показывает, что конечное множество ЗВ замкну­
тых н. ф. может быть разрешено равномерно. Это даст возмож­
ность определить локальный К для множества 3£\ имеется
К’еАр такой, что
(*) К’хА == х для Л'е
9.4. Разрешимость 205

Эти результаты были доказаны Барендрегтом [1973а]. Ме­


тод доказательства был упрощен Клопом [1975]. Этот метод
позволяет сделать локальный К непредикативным, т. е. (*)
имеет место, даже если N е [С! [К *], . . ., Сп [К
*]}, где Ci [ ], ...
..., СД ] — заданные ранее контексты, такие, что все вхожде­
ния х в Ci [х] пассивны, т. е. не входят в подтермы (xM)cz С/[х].
Для доказательства /-разрешимости н. ф. вводится следую­
щий класс SO М-термов.
9.4.1. Обозначения. Пусть
Pq = Pqq, . . . , Pono>

р — р п р
1 tn — 1 mOf • • • ’ г tnnm

— некоторые непустые последовательности термов. Тогда

{Р0> • • • » Рщ} ‘ о) * ‘ ’ (XmPт).


Иногда вместо (Ро, ■ ■ ■, Р.п} используется матричная запись
Р 00 • Ропо

_РщО • . р
rmnm J

9.4.2. Определение. Класс SO cz: индуктивно определяется


следующим образом:
I €= SO,
Ро е SO, .. ., Pm е= SO => (ро, ■■■, Pm}^ SO.
Полезно сопоставить каждому терму М е SO некоторое де­
рево Т(М) (отличное от дерева ВТ(Л4), которое будет опреде­
лено в следующей главе).
Напомним, что Seq с: N — это множество натуральных чисел,
являющихся кодами конечных последовательностей. На множе­
стве Seq определены отношения и функции <, ^, lh и * — см.
указания читателю в начале книги.
9.4.3. Определение, (i) Дерево — это множество A cz Seq, та­
кое, что
(1) яеЛ, Д
(2) ос * -[- 1> ее А =Ф- ос * /4.
Элементы множества А называются узлами дерева.
(ii) Поддерево дерева А, исходящее из узла а (обозначае­
мое через Аа) — это дерево {р | а * р е А}.
206 Гл. 9. KI-исчисление

9.4.4. Пример. Фигура

является деревом. В действительности, однако, существенна лишь


структура

Поддерево, исходящее из узла <2>, — это

Л
9.4.5. Определение. Пусть SO обозначает множество конеч­
ных последовательностей элементов множества SO. Для каждого
Р е SO и каждого Р G SO следующим образом определяются
деревья Т(Р) и Т(Р);
(1) Г(|) = « )};
(2) Т(Р0, ..., Рп) = {< >}U{<i> *
ajcc(= T(Pt), Qs^is^n}',
(3) T({P0, Л}) = {< >}U{</>
a)aeT(£),
*
Менее' формально эти деревья можно записать следующим
образом:
(1) ПО = ’,

(2) T{PV,...,P„) =

(3) Т({Р0,...,Р„})^

Пример. Пусть
Р s Xxoxix2.(х0П) (х( (Kyoyi.(yo\) (У111)) I) (х2П1).
9.4. Разрешимость 207

Тогда Т(Р) есть

Заметим, что поддеревья, исходящие из узлов, коды которых


имеют четную (соответственно нечетную) длину, соответствуют
объектам eSO (соответственно eSO).
9.4.6. Определение.Следующие подклассы SO,,, mcz SO опре-
деляются индукцией по п. Если Р = Plt ..., Pk, то Р е SO„, m
обозначает, что Plt , Pk^- SO„, m.
SO0, m = (I),
SO„+1, m = SO„, m и {{Po, ■. .,Pk}\k^m и Pq, ..., 6= SO„, m}.
Очевидно, что SO = (J SOn> m. Отметим, однако, что множе-
п, m
ство SO„, m бесконечно для п =# 0. Множества SO„, m можно сле­
дующим образом определить в терминах деревьев. Положим
Seq„, m = {а е Seq | lh (а) 2п л (Vfe lh (а)) (а (2k) т)}.
Тогда SOn, т = {Р е SO | Т(Р) a: Seq„, т}.
9Л.7. Определение. Пусть Зв cz Л. Говорят, что множество
Зв замкнуто относительно аппликации (с точностью до Р), если
(VMtfe Зв) (MN Зв).
9.4.8. Предложение, (i) Множество SOn, ™ замкнуто относи­
тельно аппликации.
(ii) Множество SO замкнуто относительно аппликации.
Доказательство строится в несколько этапов.
(1) Лемма. Если М s SO„+1, т, то либо М = I, либо У1 =
s= {Ро........ Pk}, где k m и Pi е SO„, m для O^i^k.
Доказательство проводится индукцией по п. □ ]
(2) Лемма. Пусть М, N е SO„+i, m, причем М = {Р0........ Рр},
где р^т и Р.р SO„, m для 0 р. Положим
В= • • • xp.N (х0Р0) • • • (хрРр).
Тогда L ер SO„+b m.
Доказательство. Если М = |, то L = М и все в порядке.
В противном случае имеем в силу (1)
N ss {Оо........ Q,}, где Qi е SO„, m для 0 < i < q, q^m.
208 Гл. 9. Л/-исчисление

Случай 1. р q. Тогда
LsU0 хр.(Ку0 ■ ■ • у^.(УоОо) • • • (y9Qq)) (х0Р0) • ■ ■ (хрРр) s
= Лх0 • • • Xp.(XoPoQo) • • • (XqPqQg) (xp + iPq+l) • • • (ХрРр) Э
S (PoQo........ PqQq, Pq+i...........Pp}^ SOn + 1, m.
Случай 2. q > P- Тогда аналогичным образом
P {PoQo< • ■ ■ i PpQp, Qp+l, ■ • • > Qq} SOn + l, m. П2
(3) Лемма. Допустим, что множество SOn,m замкнуто отно­
сительно аппликации. Тогда
Me=SO„+1, m, N^SOn,m=>MN^&SOn+l,m.
Доказательство. Если М s= I, то все в порядке. В противном
случае имеем
Л1а={р0........ Рр}, где PzESOn,m, 0</<р.
Теперь
MN = kx1 • • • xp.NP0 (xj^) • ■ - (ХрРр).
По предположению
NPq £=р SO„, m с SO„+1, m.
Следовательно, MN Ер SOn+1, m в силу леммы 2. П3
(4) Доказательство предложения 9.4.8. (i) устанавливается
индукцией по п. Случай п — 0 тривиален, поэтому рассмотрим
переход от п к п + 1.
Пусть М, JVeSO,+i,m. Если М = I, то, очевидно, имеем
MN Ер SOn+i, m. В противном случае
s{P
M
* 0, ..., Рр}, где P;E SOni„, 0</<р.
Следовательно, MN = Txi ■■■ xp.NPo(xiPi) (хрРр). По лем-
ме 3 и предположению индукции NPa Ер SOn+i, m. Следовательно,
по лемме 2 имеем MN Ер SOn+i, m.
(ii) получается непосредственно, так как SO = |J SO„, m. П4
n, m

9.4.9. Лемма, (i) (Vn, we',) (3&e N) (VMs SO„, m)(МГ
* = l).
(ii) (VMe SO) (З/г e N)(AH~ft = l).
Доказательство (i) получается индукцией по n. Для
n = 0 берем k — 0. Чтобы обосновать переход от п к «4-1,
допустим, что для некоторого £0
(*) PESO„.m=>Prfe" = l.
9.4. Разрешимость 209

Берем k — m + k0. Тогда


Me SO„+l,Л1Гft = I.
Действительно, при Al = I эта импликация тривиальна. Если
же М Ф I, то
А4 ss {Ро, • ■ •, Рр}, где р < m и Дг (= SO„, m
для 0 С z р- Значит, Л4ГР — Р0(А) ••• (Др)е SO„, m в силу
предложения 9.4.8(i). Поэтому А1Г₽+*(’=1 в силу («-), Следо­
вательно, All~fe = I.
(ii) получается непосредственно из (i). □
9.4.10. Определение, (i) Определим отношения с и соот­
ветственно на множествах SO и SO следующей одновременной
рекурсией.
(1) 1сР,
(2) {До........ Др}с:{0о........... Qq}<^P<P и (Vz<p) (P^QO
(3) Ро........ ДрсОо...........Qq<^p^q и (Vz<р) (Л сQ/)-
(ii) Определим бинарные операции (J и (J соответственно на
множествах SO и SO следующей одновременной рекурсией.
(1) | и Р = Р U I = Р.
* ........ Qq} = {Ро U Оо, .. •, Рр U QP, Qp+i, • •.
(2) {Ро,..., Рр} U {Q
..., Q?}, если q^p. Аналогично, для р q полагаем
{Ро, ■ ■ ■} и {Оо, • • •} = {До и Оо........ Pq и Qq, Pq+l,
(3) До, •••, ДРиОо........ О^ДоИОо, Др U Qp, Qp+i, • ■ ■, Qg,
если q р, и аналогично для р q.
9.4.11. Лемма, (i) Для Р, Q е SO
Д сд Q <=> Т(Р) cz T(Q) (как множества кодов
последовательностей)

т(ди<?)= Г(Д)ит(О).
(ii) Для Р, Q SO
ДсО^>Т(Р)сТ(О) и 7’(ДиО) = Т(Д)и7’(О).
Доказательство проводится индукцией по определению
рассматриваемых отношений и операций. □
210 Гл. 9. М-исчисление

(i) Xxp.(xll) (у\II) <= Kxyz.(x\ (Кр.р\)) (у\(kpq.(p\) (q\)) II) (zl),
Картина деревьев:

(ii) кху.(х\ (Xp.pl)) {у (Xp.plll)) U


U Kxyz.(x (Xp.pll) I) (у (Xpp.(pl) (pl))) (zl) =
= Kxyz.(x (Xp.(pll)) (Xp.pl)) (р (Xpp.(plll) (pl))) (zl).
Картина деревьев:

9.4.12. Следствие.Отношение cz и операция (J (соответствен-


но cz и и) обладают обычными булевыми свойствами отноше­
ния включения и операции объединения (например, cz транзи­
тивно, Р cz (Р (J Q) ат. д.).
Доказательство получается непосредственно с помощью
операции перехода к деревьям. □
9.4.13. Определение. Пусть М (=ЛК и FV(M)s{x0, ..., хп}
(причем х выписан в стандартном порядке). Пусть Р = Ро, ...
..., Рр — последовательность замкнутых термов и р Js п. Тогда
положим
M%py = M[x0, .... х„:=Р0, .... Р„]Р„+1 ••• Рр.
9.4.14. Определение. Пусть М Ак. Последовательность
Ре SO называется критической последовательностью для терма
М, если
so).
9.4.15. Основная лемма. Для любого нормального терма
М s Ак найдется критическая последовательность Р е SO.
Доказательство проводится индукцией по процессу по­
рождения н. ф. из леммы 8.3.18(ii).
9.4. Разрешимость 211

Если М == х, берем в качестве Р одночленную последователь­


ность I.
Допустим, что М == Kx.N, точнее
М = М (х0, ..., хп) = lXn+i.N(xo........ хп, х„+1)'_
Тогда N также находится в н. ф., так что по предположению
индукции N имеет критическую последовательность Р, т. е.
Q^VM^SO.
Тогда Р — критическая последовательность и для Л4:
•••> Q„)Qrt+1 •••
=р N (Qo, ..., Qn, Qn+i) Qn+2 • • • Qq^

Допустим, что M = xM0 ■■■ Mk, точнее x = xo и Л1,- =


= М,(х0, ..., хп) для 0 i k. По предположению индукции
для каждого /И, имеется критическая последовательность Pt.
Чтобы построить критическую последовательность для М,
найдем М где
(1) Q == Qo, ..., Qq е SO, причем q~^ п. Имеем
М HQti. ~ QoMo (Qo, • • • > Qn) ■ ■ ■ (Qo, • • • > Qn) Qn+i ■ ■ ■ Qq-
Предположим дополнительно, что
(2) Qo = {Ro, ■ ■■, Rr}, причем г k. Тогда
= • • • -4-(Mo(Qo........ Qn)Ro) • • • Mk(Q0.......... Qn)Rk)
(Xk + {Rk+\) ' ’ ' Qn + 1 * * ’ Qq'
В силу подлеммы 2 из доказательства леммы 9.4.8 и самой
леммы 9.4.8(H) получаем, что MJQJepSO, если
Mt{Q0........ QJ/F. g^SO для 0 < i < k.
В силу предположения индукции последнее имеет место, если
(3) Qo........ Q„, Ri^Pi для
Следовательно, Рм будет критической последовательностью
для М, если верно
Q^Pa1=>(1)a(2)a(3).
В следующей подлемме мы закончим доказательство, по-
строив такую последовательность Рм.
212 Гл. 9. \1-исчисление

Подлемма. Пусть п, k Е N и Pt^. SO, i k. Тогда имеется


—> —> -> ->
*
* е SO, такая, что для любых Qtd Р
последовательность Р
(1) Q = Q0, .... Qq, где q~^n,
(2) Qo = {Ро, Рг}, где r^k,
(3) Qo, • •Qn, Pt для 0<z<^.
Доказательство. Допустим, что
->
P0 == По, • • •, ^Omo»

Pk — PkOt • • • > Pkmk,

И ПОЛОЖИМ

P+ = и {Рц\0 < i < k, 0 < j < mt},


m = max {m; | 0 Д i Д k}.
Наконец, положим
Ров ■ • ■ Pom
P’ = Po+U ... P +n >
PkO ' ' ' Pkm _
где
Pt = P+ для O^z^n и Pt/ = P+ для 0 i “C k, 0^/^m.
Пусть теперь Q^P
*
- Покажем, что имеют место (1), (2)
и (3).
(1) тривиально.
(2) Из-. того, что Qo id [Р^] = {Ро, ■ ■■, Pk}, следует, что
QoMH, •••> Rr}> где r>fe.
(3) Так как Р+ есть супремум Р,/, достаточно показать, что
(a) Qi о Р+ для O^z^n;
(b) (Vz < k) (Ri = Р,о, Ris. и s; > m);
(c) Pij^P+ для 0 z Н k и 0^/^/л.
Чтобы установить (а), заметим, что
Q Р* влечет Qi zo Р? = Р+-
Чтобы установить (Ь), (с), заметим, что
9.4. Разрешимость 213

влечет
RiO> • • • > RiSi = Ri PiO> • • • , Pim<
откуда, в частности, вытекает, что s, m для О i k и
Rij=> Ptj = Р+ ДЛЯ ОС/С/П. □ ПОдлеМма □

9.4.16. Следствие. Пусть М е Ак находится в н.ф. Тогда


(3Pe=SO)(Vn, meN)(VQe SO„,J [Q^P=>M SO„, J.
Доказательство аналогично предыдущему доказатель-
ству. (Выберем Р, такую, что из Q 5 Р следует Q SO0, m.) □
Для построения непредикативного локального комбинатора К
нужна граница на SO-класс терма Ро.
9.4.17. Определение. Пусть М е Ак находится в н.ф., и
пусть х — переменная. Определим числа пх(М) и тх(М) индук­
цией по процессу порождения н.ф. в лемме 8.3.18(H).
пх (z) = тх (z) = О,
пх (Az.Al) = пх (Л4),
тх (A,z.M) = тх (Л1),
max {пх (Mi) |0 k}, если z х,
max {пх (М;)} + 1, если x = z и один
пх (zMa ■ ■ ■ Мк) = - i из Mi содержит Z,
I О в противном случае;
max {тх (Af,)}, если z х,
i
тх (zM0 Mk) = max {k, тх (Afz)}, если z = х и один из ЛД
‘ содержит А,
О в противном случае.
9.4.18. Следствие. Для любого М = М(х0, ..., хп)<^Лк
в н. ф.
[ЗР^Ро........ Рр) [Ро е SO„XJM), тХг (М) Л
лУп, m(VQ(= SO„,m)[Q5P=>A4jQ)(epSO„>m]].
Доказательство. Повторяем доказательство основной
леммы 9.4.15 и замечаем, что если М = х0Л40 ••• Мк и ни один
из термов Мо, ..., Мк не содержит А, то в критической после-
довательности Р = Ро, ..., Рр можно взять Ро = I. В против­
ном случае нужные границы получаются из определения кри-
тической последовательности Р для терма М. □
Теперь мы можем суммировать полученные результаты.
214 Гл. 9. U-исчисление

9.4.19. Следствие. Пусть терм М е имеет н.ф. Тогда М


1-разрешим.
->
Доказательство. Пусть М == М (х). По основной лемме
->
9.4.15 найдутся термы Q е А”, такие, что
МЖ М (Qo, ..., Q„) Q„+1 • • • Qq SO.
Поэтому в силу леммы 9.4.9 для некоторого k
(А.Х.Л4 (x))Qo ... Qftrfc = |,
т. е. М /-разрешим. □
9.4.20. Теорема. Для замкнутого терма М <= А/ эквивалентны
следующие утверждения-.
(a) М имеет н. ф.,
(b) (3WeA°)(MV==l),
(c) (3Fg=A°)(FM = I).
Доказательство. (а)=>(Ь) получается в силу след­
ствия 9.4.19.
(b) => (с). Если MN = I, то для F Xx.xN мы имеем FM = I.
(c) =>(а). Если FM = \, то FM имеет н.ф. Значит, в силу
следствия 9.1.7 М имеет н.ф. □
9.4.21. Следствие. В ?./-исчислении
М имеет н. ф. т. и т. т., когда М разрешим.
Доказательство. В силу леммы 8.3.3(H) и следствия
8.3.19 можно считать, что терм М замкнут. Но в этом случае
нужный результат уже получен. □
Доказательство следствия 9.4.19 вместе с основной леммой
9.4.15 показывает, что конечное множество нормальных термов
может быть равномерно разрешено М-термами.
9.4.22. Теорема. Пусть Мо, ..., М,еЛк имеют н.ф. Тогда
(3Q е A/W
X
* «) (М Ш = I).
Доказательство. В силу основной леммы 9.4.15 для
каждого из термов Л4,- имеется критическая последовательность
Pi. Положим Р = Ро U • • • U Рп- Тогда SO для 0 i
п. Следовательно, в силу леммы 9.4.9(H) имеем для некото­
рого k
*
(Vz<n)OW~ = l)-
О' k
Таким образом, можно взять Q = P, I . □
9.4. Разрешимость 215

Другое доказательство теоремы 9.4.22 намечено в упр. 10.6.11.


9.4.23. Определение. Пусть cz Ак. Терм К
* е Л? называется
'локальным К для множества Зв, если
(VM е= Лк) (VW €= Зв} (K'MN = М).
9.4.24. Следствие. Пусть Зв се А°к — конечное множество
термов, имеющих н.ф. Тогда имеется локальный К для множе­
ства Зв.
Доказательство. По теореме 9.4.22 существует после-
-> о ->
довательность Q е Л/, такая, что (VA е Зв) (NQ = I). Положим
* = Tab.bQa. Тогда
К
(VM е Лк) (VJV «= Зв) (K’MW = NQM = М). □
Сейчас мы построим непредикативный локальный К, т. е.
* е Л/, являющийся локальным К для данного множества
терм К
плюс некоторые данные контексты, содержащие сам К
*.
9.4.25. Теорема. Пусть Зв с: Л° — конечное множество тер­
мов, имеющих н. ф. Пусть Со[ ], ..., СТ[ ] — контексты, та­
кие, что для 0 i п
(a) Ci [х] е Л°к и находится в н.ф.',
(b) х входит в Сг[х] только пассивно. Тогда некоторый терм
* является локальным К для множества
К
^U{CO[K’L .... cft[K
*]}.
* имеет место равенство К’11 = |.
Кроме того, для этого К
Доказательство. Положим N'i(x) = C.;[/.ab.xba] для
0 i k. Так как все х в С,[х] пассивны, все термы Ni(x)
снова находятся в н. ф. Кроме того,
(Vt <£) (пх (Ni (х)) = mx (N{ (х)) = 0).
Взяв объединение критических последовательностей для эле­
ментов множества Зв, мы получаем с помощью следствия 9.4.16
(1) (ЭР €= SO) Vn, m (VQ e SO„. m) (VW e= Зв)
[Q5 P=J>WQe?SO„, J.
Аналогичным образом, используя следствие 9.4.18, получаем
(2) (ЭР' Р'........ Р'р е SO) [Р; е SO0,0 л Vn, m (VQ' е SO„, m)
[Q' 5 Р' => (Vz < k) (N( (Q'o) • • ■ Q'q SOn. m)J ],
216 Гл. У. '/J-исчисление

Пусть Р = Ро, .... Так как SO0. о = {!}. то Р' = I, Pf, ..., Р'р.
Положим Р = PoU • ■' U PpU Pi U ■ ■ ■ U Рр‘ и R = R0,...,Rr,
где г — тах(р, р') и (Vz г) (R{ = R). Так как Р е SO, мы
имеем R е SOn, т для некоторых п, т.
В силу (1) и (2) получаем

(3) (VAe^)(APe₽SO„,mczSOn+I,m)
и (так как Ро= I)
(4) (Vi<fe)(Qoe SO„+i,m=>Pi(Q0)PepSOn+i.m).

Теперь в силу леммы 9.4.9(i) для некоторого A'sN имеем


(5) Me SO„+1,m=>Airft' = l.

Поэтому в силу (3) и (4)


(6) (V№^)(Api~fe' = l),

(7) Qo е SOn+1> т => (Vi < k) (Nt (Qo) PI ~ = I).


h'
Возьмем теперь Q0==Ax.xPI~ . Тогда Qo e SOn+i, m и в силу
(7) получаем
(8) (Vi<fe)(Pf(Q0)prfe' = 1).

Наконец, положим К’= 'Kab.bR\~k а. Тогда в силу (5) (за-


метив, что IPe=pSO„, т) получаем
(9) ' К*11 = 1.

Кроме того, в силу (6) и (8)


(10) (VMeAx)(V№^)(K
A4Ai
* = Al),
(11) (УМ е Дк) (Vi С k) (К
*М (Ni (Qo)) = Л4).
Hq N( (Qo) — С, [Xa&.Q0&a] = С,- [К
*]. Следовательно, в силу (11)
(12) (VAI e AK) (Vi < k) (K’Al (C; [K’J) = Al).
В силу (9), (10) и (12) доказательство завершено. □

9.4.26. Следствие. В теореме 9.4.25 можно потребовать, чтобы


*
К был локальным К. для множества
№ U {Со [К
*], • • •, Ck [К’]} U {l«j I п е N).
9.5. Упражнения 217

Доказательство. Заметим, что


Р, Qe SO„, SO„, m. □
Отметим, что теорема 9.4.25 станет ложной, если опустить
требование пассивности х в С,[х].
Пример. Пусть 36 = {1} и Со [х] = xll (Лг.гг) (кг.гг). Хотя I
и С0[х] находятся в н. ф., невозможен терм К *, являющийся
локальным К для {I, С0[К
*]}. Действительно,
Со [K’J = K
*lI (Az.zz) (Xz.zz) = <-»,
и поэтому равенство К*1 (Со [К‘] ) = I невозможно в силу след­
ствия 9.1.6.
Приложения теоремы 9.4.25 даны в упр. 9.5.8 и 9.5.10.

9.5. Упражнения
9.5.1. (i) Построить терм М е такой, что для всех п
AfLOj = l, MLn+lj = S.

(ii) Построить терм М е Л^, такой, что для всех п


ML0j = ft, MLn + 1 j = М.

9.5.2. (i) Пусть Мо........ Мп е Л°. Построить терм F е Л°, такой, что
(VZ < я) (FLij = MJ.
(ii) Проделать то же самое, не используя Е{.
9.5.3. Построить комбинатор Ре$;, такой, что Р находится в w-н. ф.,
но Р, не имеет н. ф.
л * о
9.5.4. Построить терм К * s Лр являющийся локальным К для
(i) {I, В, С, S};
(ii) (S, кх.х (ку.уу) (ку.уу), К
*}.
9.5.5. В каком месте доказательство теоремы 6.6.2 не проходит для
//-исчисления? Сформулировать подходящую модификацию для //-исчисле­
ния и доказать ее.
9.5.6. Нарисовать диаграмму Венна для множеств
Л^, Л°, {М е | М имеет н. ф.},

{Л/ е | М /-неразрешим} и [М е | М //-неразрешим}.


Построить семь термов, позволяющих доказать, что между рассматривае­
мыми множествами нет иных соотношений, кроме указанных на диаграмме.
*9.5.7. (Клоп). Если М ев kxi ■■■ x.i.XjM, ■■■ Мт находится в г. н. ф., то п
называется арностью терма М. Показать, что термы из SO имеют максималь­
ную разрешающую силу, т. е. что для каждого нормальногоЛ/ е арности п
(ЭР,......... P„eSOj (МР, ...р„=|).

*9.5.8. Доказать результат из приложения 9.3.16, используя непредика­


тивный локальный К.
218 Гл. 9. X/-исчисление

* 9.5.9. Доказать результат из приложения 9.3-.16 непосредственно, не


используя ни второй теоремы о неподвижной точке, ни непредикативного
локального К.
*9.5.10. Построить /./-определяющий терм для любой частично рекурсив­
ной функции, используя непредикативный локальный К.
*9.5.11. Пусть V=l, rn+l1I = [F/, V]. Показать, что {V|neN}
— адекватная цифровая система для X/. [Указание. Использовать непредика­
тивный локальный К для представления примитивной рекурсии и миними­
зации.]
9.5.12. Построить конечные множества А^ и А^, состоящие из ра­
венств между замкнутыми С£;-термами, такие что теории CL^-j-A] и
CLj + А эквивалентны соответственно теориям X/ и Х/т).
9.5.13. (i) Пусть N* — N U {*}, где * 9= N. Для п, т е N положим
( {п} (т), если это значение определено,
п•т=<
( * в противном случае.
Положим далее п- * = * -п = *■== *.
Показать, что имеются числа /, b, с, s е N, такие, что структура =
= (N *, •, I, Ь, с, s) является моделью системы CLt. [Указание. Использовать
s-m-и-теорему из теории рекурсии.] Эта модель называется первой моделью
Клини для системы CL,.
(ii) Показать, что для некоторого k s N
k-m-n = т для всех т, п sN.
Почему структура (N*, •, k, s) не является моделью системы CLk> Заме­
чание. У Барендрегта [1975] показано, по существу, что
М не имеет w-н. ф. [=Л4 = *.
Следовательно, Соп((М = /V|Л4, N s 'ffl не имеют w-н. ф.}).
*9.5.14. (Клини). Пусть (В = NN снабжено топологией произведения.
Для а е В, п s N положим а (п) = <а(0), ..., а(п—1)>; а(0) = < >.
Пусть В * = IB U {*}, где * ф. В • Для а, 0 <= [В положим
у т. и т. т., когда VпЗт а ((п) * 0 (т)) =/= 0 и
а| 0 = • Vn (у (п) = а (цт [а ((п) * 0 (т)) ■#= 0]) — 1)
, * в противном случае.

Положим далее а * = * -а = *•» = ».


Построить I, 0, у, а е В, такие что 3^2 •= (В
*, Ч 0, Y> а) есть модель
системы CLi. Эта структура называется второй моделью Клини для системы
CLi. [Указание. Показать, что для любого непрерывного отображения
F: (В -> В имеется а. е В такое, что (V0 е В) («10 = /7(0)).]
9.5.15. Показать, что понятие редукции гщ обладает свойством CR. [Ука
зание. Использовать метод упр. 7.4.13.]
9.5.16 (Бём, Дедзани-Чанкальини). Пусть с — сп, с..........е Л.к — цифры
Чёрча с функцией следования S+. Пусть ЛХ = В и Лехр = С, представляют
на с умножение и возведение в степень (см. упр. 6.8.6 и 7.4.8).
(1) Показать, что [ср s£, Лх, Аехр} является /-базисом (в Х/т]).
(ii) Показать, что {с0, *
,S Лх, Лехр} является К-базисом (в XX). J
9.S. Упражнения 219

[Указание (Чёрч, Карри). В (i) заметить, что


С = В (С
* (ВВС
*)) (ВВС
*),
I = вес,
W, = В (Сс21) С.,
*
w = В (В (С *))))
(BW. (В (С.С.) (В (ВВВ) С (ВВС.))
(В (С. (В *1
(С))))
)((С В),
S = С (СВ (СВ (СВ) (СВ (СВ))) (СВ)) W = В (В (BW) С) (ВВ),
J = В (ВС (ВС)) (В (W (ВВВ)) С).
Следовательно, {с2, Ах, Лехр} есть /-базис. Для (ii) заметим, что К = Сео.)
Вывод. «Комбинаторы — это обобщенные цифры».
9.5.17. Показать, что (Л/ е Л | оо (Л1)} есть П1}-полное множество.
9.5.18. Показать, что /-разрешимый терм М е Лк не обязательно имеет
и. ф.
Глава 10
Деревья Бёма

10.1. Основные факты


Для каждого терма МеЛ мы определим некоторое дерево
ВТ(М), называемое деревом Бёма (или бёмовским деревом для)
терма М. Это понятие подсказано первоначальным доказатель­
ством теоремы Бёма 10.4.2, понятием г. н.ф. и предложением
2.2.14 (неразрешим <=> не определен). Деревья Бёма будут иг­
рать важную роль в анализе моделей Рау и Doo.
Соотношение между термом и его деревом Бёма напоминает
соотношение между вещественным числом и его разложением
в непрерывную дробь. Если М имеет н.ф., то дерево ВТ(Л1)
конечно. В этом отношении н. ф. соответствуют рациональным
числам. Например, в § 10.2 будет показано, что в подходящей
топологии на Л нормальные формы образуют плотное подмно­
жество.
Сначала ВТ(М) будет введено неформально. Напомним, что
Seq с: N— это множество кодов конечных последовательностей.
На Seq имеются функции и отношения *, lh, <_, см. указа­
ния читателю. Частичное отображение <р: X^->Y— это отобра­
жение ф, такое, что Dom(<p)^X. Для х^Х запись rp(x) j озна­
чает, что <р(х) определено, т. е. .ve Dom(<p); <p(x)f означает, что
ф(х) не определено, т. е. хф. Dorn (ср).
10.1.1. Определение. Пусть 2—некоторое множество симво­
лов.
(i) ^-помеченное дерево — это дерево, каждому узлу кото­
рого приписан некоторый элемент множества 2.
(ii) Более формально, 2-помеченное дерево — это частичное
отображение ср: Seq ^-»2, такое, что множество Д=(ае
е Seq | ср (a) U является деревом; Tv называется лежащим в ос­
нове обнаженным деревом. Метка в узле а е Т,(.— это ср (а).
Пример. Пусть 2 — {а, Ь, с}. 2-помеченным деревом является,
например, фигура
с

Ь Ь
10.1. Основные факты 221

Другое изображение того же дерева представляет собой фи­


гура
с

ас а

10.1.2. Обозначения, (i) Буквы А, В, ... будут обозначать


помеченные деревья. Таким образом, А есть некоторое частичное
отображение <р.
(ii) Через ]Л| будем обозначать дерево ТА, лежащее в ос­
нове А. Мы пишем ае,4 вместо а е ТА.
10.1.3. Неформальное определение. Пусть
2 = (±) U {^Xi xn.y|tieM, Xt, ..., хп, у — переменные).
Тогда ВТ(Л1) — это 2-помеченное дерево, определяемое сле­
дующим образом:
ВТ(А1) = JL, если М неразрешим. (То есть в этом случае ВТ(М)
состоит из единственного узла с меткой j_.)
BT(A/T«=X?.v

Замечания, (i) Напомним, что в силу теоремы 8.3.14 Z-терм М


разрешим т. и т. т., когда М имеет г. н. ф.
->
(ii) Если М имеет главную г. н.ф. Кх.уМу ••• Мт, то термы
М, могут быть сложнее, чем сам М. Поэтому 10.1.3 не является
индуктивным определением. Скорее оно описывает процесс, ко­
торый может давать в результате бесконечное дерево.
(iii) Заметим, что в соответствии с предложением 2.2.14 все
неразрешимые термы имеют одно и то же дерево Бёма.
(iv) Деревья Бёма были введены Барендрегтом [1977], но
вместо _1_ использовался символ J2.
Формальное определение деревьев Бёма выглядит так.
10.1.4. Определение. Пусть 2 обозначает то же множество,
что и в определении 10.1.3. Дерево Бёма (или бёмовское дерево)
для Z-терма М (обозначаемое через ВТ(Л1)) — это 2-помечен­
ное дерево, определяемое следующим образом.
Если М неразрешим, то
ВТ(М)« »=±,
ВТ (М) ((/г) * a)f для всех k, а.
222 Гл. 10. Деревья Бёма

Если М разрешим и Xri ••• хп.уМо ••• Mm-i— какая-нибудь


его главная г. н. ф., то
ВТ(М)(( )) = Хх1 ••• хп.у,
ВТ(ЛД)(а) для всех а и k < т,
ВТ (М) ((£)
*
«) =
t для всех а и k т.
Свободные и связанные переменные для деревьев Бёма опре­
деляются так же, как и для термов. Деревья, различающиеся
лишь наименованиями связанных переменных, отождествляют­
ся. Наилучший способ достичь этого — применить символику
де Брейна, которая описана в приложении С. Чтобы облегчить
чтение, мы записываем (метки, входящие в) деревья Бёма наив­
ным образом (т. е. с именами связанных переменных) и пред­
полагаем, что выполнено соглашение о переменных, обеспечи­
вая его выполнение тем, что в узле а используются связанные
переменные х“, х'1.........
10.1.5. Примеры.

(i) BT(S) = Xoftc. а


/\
с b
I
с

(ii) BT(SaO) = Xc.a


/\
с ±

(iii) ^T(Y) = A/7


I
f

Действительно, заметим, что Y = Xfгде mf^Xx.f(xx)


и ®f®f = /(®f®f)-
Следовательно,
ВТ —f
11 11
ВТ (со^) f
1
••
10.1. Основные факты 223

(iv) Пусть Д = 9(Лах.(ах)). Тогда Ax-»(Ax) = kz.z(Ax) и


ВТ (Лх) = Kz.z
I
kz.z
I
Az.z

(v) Пусть последовательность M„ равномерна по п. Тогда

Отметим, что ВТ([М„]) не зависит от генератора последова­


тельности [М„] и определяющего ее терма. Кроме того,
VZ (ВТ (М.) = ВТ (IV,)) о ВТ ([М„]) = ВТ ([ЛГ„])
для равномерных М„, Nn.
(vi) Пусть М Тогда М-> Kab.a(MM) и
ВТ (М) = КаЬ.а
I
ВТ (ММ)
Теперь
ММ — (Kab.a (ММ)) М — М>.М (ММ) —
— М.(Ка'Ь'.а' (ММ)) (ММ) — Ш'.(ММ) (ММ).
Следовательно, терм ММ имеет бесконечную головную ре­
дукцию и потому неразрешим в силу теоремы 8.3.11. Отсюда вы­
текает, что
ВТ (М) ■= КаЬ.а
I
JL
224

10.1.6. Предложение. Если М = N, то ВТ(М)= BT(TV).


Доказательство. Допустим, что М = N. Индукцией по
lh(a) мы покажем, что ВТ(А4) (а) = BT(N) (а).
Предположим, что 1Ь(а) = 0. Тогда а = < >. Если М нераз­
решим, то неразрешим и N, так что ВТ(М)(< >) = _1_ =
= BT(yV) (< >). Если оба терма М, N разрешимы, то они имеют
г. н.ф., которые в силу следствия 8.3.17(ii) имеют вид
М = кх{ ■ ■ ■ хп.хМ0 • • ■ Mm_lt
N= • • ■ xn.xN0 ■ ■ • Nm_i,
где Mk = Nk для k < m.
Теперь BT(M)« » = lx, - x„.x=BT(W)« ».
Пусть lh(a) > 0. Тогда для некоторых k, а' имеем а — </г> *а'.
Если М, N неразрешимы, то ВТ(М)(а) — f = BT(jV)(cc). Если
М, N разрешимы, то они имеют г. н. ф., удовлетворяющие усло­
вию (*
). Следовательно, при k m
ВТ (М) ({k) * а') = t = ВТ (N) ((k) * а');
а при k < m
ВТ (М) ((k) * а') = ВТ (Mk) (а') = ВТ (Nk) (а7) = ВТ (N) ((k)
*a')
по предположению индукции. □
Введенные выше деревья Бёма неэффективны: для их по­
строения нужен оракул, так как понятие (не)разрешимости не
рекурсивно. Поэтому вводится следующий вариант помеченных
деревьев.
10.1.7. Определение. Пусть S — множество (символов).
(i) Частично ^-помеченное дерево — это частичное отобра­
жение
к ср: Seq S X N,
такое, что
(1) ср (о) | А т < о =><р(т) | .
(2) ф (о) == (а, п)=> (V и) ф (о * (&)) | .
(ii) Обнаженное дерево, лежащее в основе частичного S-по­
меченного дерева <р, — это дерево
Е<р = {( U {о g Seq | о = о' * (k) л <р (o') = (а, п) Л k < п}.
(iii) Пусть ое 7\. Если ф(о)= <а, п), то а называется мет­
кой, (находящейся) в узле о. Если ф(о)|, то говорят, что узел о
непомеченный.
Замечания, (i) Интуитивный смысл равенства ф(о) =
= {а,п> состоит в том, что узел о имеет метку а и за ним непо­
средственно следуют в дереве п узлов. Если as T,f, то о не обя­
зательно имеет метку.
10.1. Основные, факты 22Г>

(ii) Очевидно, что T,i; — дерево. Действительно, если


и ф(о)4-, то в силу 10.1.7(1) имеем ф(о/)| для всех о'< ст, от­
куда а'еЕ. Если < > =й= ст е 7\f и Ф(о)Д то О = (/•::•<&> и
ф(ст')|. Поэтому о"еТф для всех о" sT о', и потому п'"е7,г.
для всех о" < о. Кроме того, о * <£ + 1> е 7\ => о » <&> е 7tf.
(iii) Если о е Тч_, то за о непосредственно следует лишь ко­
нечное число узлов. Действительно, если ф(ст)|, то за о вообще
не следуют узлы, а в случае ф(а)| наше утверждение вытекает
из 10.1.7(i) (2).
10.1.8. Обозначения, (i) Частично помеченные деревья бу­
дем обозначать буквами А, В, ... . Символ | А | обозначает об­
наженное дерево Тд, лежащее в основе А. Мы пишем неЛ вме­
сто а е | А |.
(ii) Пишем
Л(а)=±, если А (а)f, но все же ае/1
А (а) t « если Л (а) f и а ф. А.
Тогда возможны три случая.
(1) Л (a)
(2) Л(а) = ±,
(3) Л(а)И.
Отметим, что а ед Л в случаях (1), (2) и Л(а)| в случаях
(2), (3).
Пример. Пусть S=(a,6,c}. Определим Л равенствами
Л« )) = («, 3),
Л«0» = <&, 0), Л (<l»t, Л «2» = <с, 2),
Л «2, 0)) = (а, 0), Л ((2, l))f.
Тогда Л — частично S-помеченное дерево

д Л «ОМ л «1>)« л «2»; и Л«3))М


10.1.9. Определение. Пусть S1 — множество
(М хп.у \п^0, хь ..., хп, // — переменные}.
Эффективное дерево Бёма для терма Л1 (обозначаемое через
ВТе(Л1)) — это частично Si-помеченное дерево, определяемое сле­
дующим образом:
8 X. Баремдрегт
226 Гл. 10. Деревья Бёма

если М неразрешим, то для всех о


BTe(Af)(a)t,
если М разрешим и имеет главную г.н.ф. Xxi ••• хп.уМа ••• Мт_ь
то
ВТе(Л1)« » = ••• хп.у, т),
и для всех о полагаем
ВТе (М
*) (ст), если k < т,
ВТе (M)«fe)
ff)
* =
f, если k т.
10.1.10. Замечания, (i) Легко показать, что ВТе(М)— дей­
ствительно частично помеченное дерево; см. упр. 10.6.l(i).
(ii) Пусть М = %ху.ух(£Ш). Тогда ВТ(М) и ВТе(М) имеют
соответственно вид
Уху.у Уху.у
/\ /\
X _L X
(iii) Заметим, что в общем случае деревья, лежащие в основе
ВТ(М) и ВТе(М), совпадают; см. упр. 10.6.1 (ii). Поэтому един­
ственное различие между этими двумя объектами — то, которое
указано в (ii): метки _1_, имевшиеся в ВТ(М), убраны в ВТе(М).
Таким образом, объекты ВТ(М) и ВТе(М) изоморфны. Един­
ственное различие между ними — интенсиональное, т. е. оно за­
ключается в том способе, которым эти объекты нам заданы (ср.
Трулстра [1975]). Оказывается, что эффективные деревья Бёма
имеют несколько технических преимуществ.
10.1.11. Соглашения, (i) Начиная с этого момента будут рас­
сматриваться только эффективные деревья Бёма, но они тем не
менее будут обозначаться через ВТ(М).
(ii) Неформальные обозначения из примера 5 по-прежнему
будут использоваться при изображении деревьев Бёма. Метки _L
будут или не будут указываться явно в зависимости от удобства
в данный момент.
10.1.12. Определение, (i) Дерево бёмовского типа — это ча­
стично Si-помеченное дерево, где — множество из определения
10.1.9; Э обозначает множество всех деревьев бёмовского типа.
(ii) ЛЭ = {А еЭ| (НМеЛ) (ВТ(М) = А)}. Заметим, что
множество ЛЭ релятивизируется к Л^Э и Л/Э.
(iii) Дерево ЛеЗ называется рекурсивно перечислимым
(сокращенно р.п.), если частичная функция А частично рекур­
сивна (при подходящей кодировке множества Si).
(iv) Дерево А еЗ Д_-свободно, если (УаеЛ) А(а)|.
(v) Если А е Э, то d(A) = sup{lh(a) |a е А}. Отметим, что
с?(А) < оо т. и т. т., когда А конечно.
10.1. Основные факты 227

Для данного дерева А и узла авЛ поддерево дерева А, ис­


ходящее из а, состоит из всех узлов ре Л, продолжающих а.
Более точная формулировка такова.
10.1.13. Определение, (i) Пусть А <= S3 и aeSeq. Если
as.4, то поддерево дерева А, исходящее из узла а (обозначае­
мое через Да), определяется равенством
Ла — АР-Л (а
* р).
Очевидно, что (УЛ е 23) Va (Ла е 23).
(ii) ВТо(М) = (ВТ(М))а-
(iii) Пусть МеЛ и аеВТ(Л4). Определим терм Л4аеЛ
индукцией по lh(a).
М< } = М,
М(о,а^(Мс)а, если Хх.уМ0 ■ ■ ■ Мт_} есть
главная г. н. ф. терма М.
Заметим, что если М не имеет г. н. ф. или i > tn, то <i> *
a0
^BT(M).
10.1.14. Примеры, (i) Пусть Л—дерево
Хху.х

х у у

X
Тогда
Л< > == Л, Л(1> = у,
I
х
Л<о>= Л<1,0) = х и Д(2> = у ■
(11) Пусть М ~Лх.1хй(1х). Тогда Л1(0> = й и Л4<1> = 1х.
10.1.15. Лемма. Для Mg А и asBT(Af)
BT(Afa) = BTo(M).
Доказательство проводится индукцией по lh(a). Слу­
чай а — < > тривиален. Если же а — i * <р> и М имеет главную
г.н.ф. %х.рЛ40 ••• Mm-i, то
ВТ(М0) = ВТ((МД,) =
= ВТр (Mi) (по предположению индукции) = ВТ<;>,₽ (М).
8*
228 Гл. 10. Деревья Бёма

Последнее равенство справедливо, так как для всех у


ВТр (М;)(у) = ВТ(Мг)(Р
у)
* =
= ВТ (M)«i) * ₽ * у)= ВТ<г>. Р (М) (у). □
Каждое конечное дерево бёмовского типа является бёмов-
ским деревом некоторого терма.
10.1.16. Определение. Пусть дерево /1е8 конечно. Мы сей­
час определим индукцией по d(A) некоторый Т^-терм М(А) (обо­
значаемый иногда через Мл), для которого А является деревом
Бёма.
Случай 1. А = _1_. Берем М (A) s= Q.
Случай 2. А — кх.у. Берем М(А) = Кх.у.
Случай 3. А = Кх.у. Берем М (А) = Кх.уМ (А)) • • • М (Ап).

10.1.17. Следствие. Для конечных деревьев Лей имеет


место равенство ВТ(М(А)) = А. □
Пример. Пусть А есть дерево
Лху.х

Кх.х

Тогда М (А) = Кху.ху® (г/|).


Заметим, что терм МеЛ имеет н.ф. т. и т.т., когда дерево
ВТ (М) конечно и Д_-свободно (т. е. не содержит _L).
10.1.18. Определение, (i) Пусть А е S3. Для /гдЛ положим
( А (а), если lh (а) < k,
в противном случае.
(ii) BTft(M) = (BT(M))fe.
(iii) MW = M(BTft(M)).
(iv) Для деревьев A, Вей будем писать A=kB, если
Ak = Bk.
Заметим, что Ak— это конечное дерево Бёма, которое полу­
чается из А отрезанием всех поддеревьев на глубине k. Напри-
10.1. Основные факты. 229

мер, если А есть дерево


Алул

Л
* у
х
/\ у
то
Af = Kxy.x

и А° = ±.
10.1.19. Лемма. Для тгрма МеА имеет место равенство
ВТ (АГ
*)) — ВТД/И).
Доказательство. ВТ (М(Ч) =ВТ(М (ВТДМ))) = ВТ *(А1)
в силу следствия 10.1.17. □
Теперь будет дана характеристика множества А5Э, т. е. тех
деревьев, которые являются бёмовскими деревьями каких-то тер­
мов.
Читателю, вероятно, интуитивно очевидно, что следует пони­
мать под множеством свободных переменных данного дерева
А е S3. Следующее определение уточняет это.
10.1.20. Определение. Пусть ЛеВ.
(i) Пусть оеЛ. Если А (сг) = • • • хп.у, nt), то полагаем
• ■ ■> Ус У ■> ГП-j Ш,

Если А (о) = |, то полагаем ха = уа = та = f.


(ii) Если ere А, то х„ (множество связывающих переменных
до о включительно) индуктивно определяется следующим об­
разом (см. также замечание перед примером 10.1.5):
-> -> -> -> ->
хг> =х<> > хоТш = Ха' Ха »<ft>
-> -> ->
Пример. х^ = х<>) x<b, х<10>.
К}-(хз}’ если
0 в противном случае.
(iv) FV(A)= и{Р¥д(а)|ае А).
(v) Говорят, что дерево А замкнуто, если FV(A) = 0,
230 Гл. 10. Деревья Бёма

Пример. Пусть А есть дерево


Xxy.z

х У
Тогда > = х, у, у( > = г; т( > — 2 и т. д„ FV (Л) = {z}.
10.1.21. ПрЕдложЕние. Пусть Л = ВТ(Л4) и обозначения ха,
У а, та. имеют тот же смысл, что в определении 10.1.20. Если
А (а) = |, то Ма имеет главную г. н. ф.

Доказательство. Это утверждение получается из опре­


деления. См. упр. 10.6.2. □
10.1.22. Замечание. Заметим, что FV(BT(A4))s FV(Af); см.
упр. 10.6.3. Это включение может быть собственным. Пусть, на­
пример, М-+-кгх.х(Мг). Тогда ВТ(Мг) имеет вид
кх.х

Хх.х

кх.х

и потому замкнуто, но терм Mz не замкнут (и даже не конвер­


тируется в замкнутый терм). Мы говорим, что в дереве ВТ (Ms)
«переменная z выталкивается на бесконечность».
10.1.23. Теорема. Пусть А е 33. Тогда
А е Лк 23 <=> FV (Л) конечно и А р.п.
Доказательство. (=>) Если А — ВТ(М), то в силу за­
мечания 10.1.22 множество FV(A)sFV(M) конечно. Далее, так
как ВТ(М) задано эффективной процедурой, дерево А рекур­
сивно перечислимо в силу тезиса Чёрча.
(<=) Пусть А частично рекурсивно и FV(A)= а. Определим
индуктивно последовательности переменных га.
а, если А (( ))
г< >
в противном случае.
za, ха, если Л(а)|,
£<»•(&> “=
10.1. Основные факты 231

(здесь .га имеет тот же смысл, что в определении 10.1.20(1)). За­


метим, что для всех а, таких, что А (а) },
-> ->■ ->• -> ->■
(1) za, ха = а, ха==2!а.<й для всех k<ma.
По теореме 8.1.6 найдется терм ЕеЛ°, такой, что ЕГЛ1',-^М.
Можно считать, что неразрешимость терма М влечет неразре­
шимость ЕЛ4. (В действительности это имеет место уже для
терма Е, построенного в теореме 8.1.6, но если вы не хотите это
проверять, возьмите
Е' =г Хх.хТНЕх.)
Если А (а) |, то положим
Ва = KmhzaKxa.ya (Em а * (Qyza. <о>) • • •
• • • (Етга * (ma — I)1 za *
- г>).

Заметим, что в силу (1) для узлов а, таких, что A(a)j,


Ва е= А°.
Так как А частично рекурсивно, найдется частично рекурсив­
ная функция ф, такая, что
если А (а)
в противном случае.
Пусть терм F Х-определяет функцию ф. По второй теореме
о неподвижной точке 6.5.9 существует терм М е А0, такой, что
М —» Xs.E (Fs) ГМ\ Если ф(а) = то
(2) AfVza Е (/гГа1) ГМ1 za -» Е^1 ГЛР za -» Ва ГМ1 za -»
-» Fxa.ya (Е ГМ1 га * (О)1 za, {0>) • • •
Хха.уа (М га * (О)"1 za.<о>) • • •.

Аналогично, если A(a)f, то терм Mraiza неразрешим.


Утверждение. Для всех а имеет место ВТ (ЛИaTej = Аа.
Действительно, если A (a) f, то и Аа, и ВТ(Л1гаЗга) — пустые де­
ревья, так как в этом случае терм Afraiza неразрешим. Если
А (а) (, то мы покажем индукцией по lh (Р), что
ВТ (ЛИаС) (р) = А (а * р) (= Аа (р)).
Если Р = < >, то в силу (2)
ВТ (Мга1га)« » = (Хха.уа, ma> = A(ct).
23: Гл. 10. Деревья Бёма

Допустим теперь, что р = <&> * {/. Если k < та, то


ВТ (ЛГа-С) (₽) =
= ВТ(Л1га * »<&>) (рг) (в силу (2) и определения ВТ)—■
= А (а * (&) * {}') (по предположению индукции) = А (а * р).
Если k та, то
BT(Mraiza) (<fe)
*p') =t
а в силу условия 2 из определения 10.1.7(i) мы имеем также
А (а *<')&>
₽ =Ъ
Это доказывает наше утверждение. Из него следует, что
ВТ(МГ< )'|?(>) = А(>=А,
откуда А е A/S. □
Теперь мы дадим аналогичную характеризацию множества
A/S.
10.1.24. Определение. Пусть А е S3 и ха, уа определяются
так же, как в определении 10.1.20(i). Индикатором переменных
для А называется частичное отображение
%: Seq {последовательности переменных),
такое, что
(1) а ел А <=>/(«)!,
(2) {*„) (J {х (а)} = {Уа} U U {X (« * <0) I >■ < >па},
(3) {ха} П {х(а)} = 0.
В процессе доказательства следующей теоремы выяснится,
что если М е Л/, то %(а) = FV(Ma) есть индикатор переменных
для ВТ(Л4).
10.1.25. Теорема. Пусть А ^8. Тогда
А е AS <=> FV (А) конечно и А р.п. и имеет частично
рекурсивный индикатор переменных.
Доказательство. (=>) Так как A s Л/S S AxS, из тео­
ремы 10.1.25 следует, что FV(A) конечно и А р. п. Пусть
А —ВТ (А1) для М <= Л/. Полагаем
FV(Ма), если as А,
t в противном случае.
Тогда х частично рекурсивна. Кроме того, % — индикатор пе­
ременных. Условие 1 из определения 10.1.24 выполнено триви­
альным образом. Если А (а)), то в силу предложения 10.1.21
терм Ма имеет главную г. н. ф.
^Ха'Уа^а » <0> ' ‘ S
10.2. Сравнение деревьев Бёма 233

Следовательно, в силу леммы 9.1.2 (iv) ясно, что выполнены


и условия 2 и 3.
(<=) Пусть 2а = %(а), а ха, уа, та понимаются как в опре­
делении 10.1.20. Положим
А = ^аха.Уа (Е;тг« * (О)1 za , (0)) • • •,
Ф (а) = =& Ва.
Из того, что % — индикатор переменных, следует, что Ва^ Л°
при А (а)].. Кроме того, из частичной рекурсивности А и / сле­
дует, что частично рекурсивна и ф. Оставшаяся часть доказа­
тельства аналогична доказательству теоремы 10.1.2.3. □
Могут спросить, нельзя ли охарактеризовать множество Л/ЭЭ
более простым способом.
10.1.26. Определение. Дерево /1еЭ похоже на М-дерево,
если FV (А) конечно, А р. п. и
(V«e/llK}s U {ИУл (₽)| ₽ > а).
В упр. 10.6.4 будет показано, что некоторое дерево А <=
похоже на V-дерево, но не имеет индикатора переменных. По­
этому А ф Л/Э.
10.2. Сравнение деревьев Бема.
Топология деревьев на Л
Деревья бёмовского типа являются в действительности ча­
стичными функциями из £) £ Seq в Так как частичные функ­
ции с отношением включения образуют п.ч.у.м. (см. при­
мер 1.2.30), то отношение £ является частичным порядком
и на S.
Заметим, что для деревьев /1,ВеЗ
А ^В<=^А получается из В (когда оба они изображены как
эффективные деревья) отрезанием некоторых
поддеревьев.
10.2.1. Примеры.
Ах.х с Ах.х

(1) Л А XXX
j ’**
X
X.vy. х и Аху.х
(2) /\ / \
X у
234 Гл. 10. Деревья Бёма

совместимы (см. определение 1.2.28).


Лху. х и Кху.х
(3) /\ /\
х У
несовместимы. Деревья
Кх.х и Хх.х
/|\
также несовместимы, ибо для первого дерева А « >) = {Кх.х, 2>,
А для второго А (< >) = {Кх.х, 3>.
В предложении 1.2.31 (ii) доказано, что Seq^-Si — когерент­
ное алгебраическое п. ч. у. м. Когерентным п. ч. у. м. будет и его
подмножество S3.
10.2.2. Предложение, (i) (S3, s)— когерентное алгебраиче­
ское п. ч.у.м., где А компактно т. и т.т., когда оно конечно.
(ii) Если Ф = 8 непусто, то [~| Ф е 23 есть инфимум семей­
ства Ф.
Доказательство. Пусть Фе 23 совместимо. Тогда
U ф- частичная функция. Нетрудно показать, что |J Ф е 23.
Поэтому 23— когерентное п.ч.у.м. Каждое дерево бёмовского
типа — объединение конечных деревьев (А — [J . Очевид­
но, что конечные деревья компактны. Следовательно, 23 алгеб­
раическое.
(ii) также устанавливается легко. □
10.2.3. Обозначения. Пусть М, N е А.
(i) М т. и т. т., когда ВТ (Л1) = ВТ (А).
(ii) М£А т. и т.т., когда BT(A4)s ВТ(А).
Топология деревьев на А
10.2.4. Определение. Рассмотрим п.ч.у.м. 23 = (23, £) с то­
пологией Скотта. Топология деревьев на множестве А — это наи­
меньшая топология, в которой непрерывно отображение
ВТ: А—>23.
Иными словами, открытые подмножества А имеют вид
ВТ-1 (О), где О открыто в топологии Скотта на 23.
Используя топологию деревьев, можно выразить обычные по­
нятия, относящиеся к Х-исчислению, в топологических терминах.
Например, н.ф. оказываются изолированными точками, а нераз­
решимые термы — точками компактификации; см. § 20.5.
В § 14.3 будет доказано, что аппликация и абстракция не­
прерывны в топологии деревьев на А. Для аппликации это не­
10.2. Сравнение деревьев Бёма 235

тривиальный результат, имеющий несколько интересных след­


ствий.
В § 20.5 топология деревьев на моделях из термов будет оп­
ределена как фактортопология.
Заметим, что топология деревьев на самом множестве Л еще
не принадлежит классу То, так как из ВТ(М) = BT(2V) следует,
что М, N нельзя отделить.
Подразумевается, что топологические понятия для Л, исполь­
зуемые без дополнительных эпитетов, относятся к топологии
деревьев.
10.2.5. Пример. Пусть SOL = Л обозначает множество раз­
решимых термов. Тогда SOL открыто.
Доказательство. В любом п.ч.у.м. множество
{x|x#=_L} открыто по Скотту. Следовательно, множество
SOL — ВТ-1 {А | А =И= _L} открыто в Л. □
10.2.6. Лемма. Множество О s Л открыто т. и т. т., когда
(1) М е О, ME N => N е О,
(2) если М<==0 и ВТ(М)= [J ВТ(Л4г) , где семейство
{ВТ(ЛД)}г = S3 направленно, то 3i\Mi<=0).
Доказательство. (=>) По предположению О — ВТ_1(Х),
где множество X s 53 открыто. Тогда (1) и (2) следуют из опре­
деления топологии Скотта.
(<=) Пусть О s Л и имеют место (1), (2). Положим
А' = ВТ (О) = {ВТ )М) | М 6= О},
Xv = {В <= 531 (эЛ е X) А = В}.
Тогда BT~1(XV) = О. Мы утверждаем, что множество Xv от­
крыто по Скотту. Действительно, первое условие открытости
выполняется тривиально. Чтобы проверить второе условие, до­
пустим, что U е Xv, гДе последовательность {А,}, направ­
ленна. Тогда U Л; =? В е X для некоторого В, т. е. |J Л(- э ВТ (Л4)
для некоторого М е О, откуда
U (А™ Я ВТ (ЛД) = ВТ (ЛД.
г, п '
Полагаем
ВТ (M’f)) = Л'п> Г1 ВТ (АД.
Тогда семейство (ВТ^/0)}, п направленно и
U ВТ (>«') = ВТ (Л1).
I, п 4 7
В силу условия (2) е О для некоторых I, п. Но тогда
Л; э ВТ (AT/11) е X, откуда ЛгеХу. □
236 Гл. 10. Деревья Бёма

10.2.7. Следствие, (i) Множества


OM,k = {NsA\M{k^N}
образуют базис топологии деревьев на А.
(ii) Множество NF ^-нормальных форм плотно в Л.
Доказательство, (i) В силу леммы множества Ом, к
открыты. Пусть теперь Л'еО, где О Л открыто. Так как
BT(JV) = U ВТ (M(i)),
i
из леммы следует, что А(!г> е О для некоторого k. Но тогда
£ О.
(ii) Пусть OM,k — базисные открытые множества и А —
= BT(M(fe)). Определим Д] как результат замены в А всех _1_
на кх.х и положим Mi = M(Ai). Тогда А Alt откуда Л1<4> ^Mh
т. е. Mi s Ом,/г. Так как Mi есть н.ф., нужный результат
следует из (i). □
Бесконечная туредукция для деревьев
Заметим, что, хотя Кх.х =^Тху.ху, деревья Бёма для этих
термов различны. Поэтому для деревьев бёмовского типа будет
введен некоторый тип ^-конверсии. Так как эти деревья беско­
нечны, конверсия будет иметь инфинитарный характер.
Это понятие будет использовано в оставшейся части этой
главы и в анализе моделей и Ра, который буде-т проведен
в § 19.1 и 19.2.
10.2.8. Определение, (i) Пусть А е 8, и пусть узел а е А
имеет метку (кх.у, п). Тогда ^-расширением дерева А в узле а
назовем дерево А', получающееся заменой в А поддерева Аа,
которое имеет вид
Ах. у

на дерево
Axzy

z
(ii) Обозначения. Мы пишем Д'->ЛД, если А' есть ^-расши­
рение дерева А в некотором узле as А, таком что А(а)^
Транзитивное рефлексивное замыкание отношения ->т| обозна­
чается через —
10.2. Сравнение деревьев Бёма

Уодсворт [1971] заметил, что ^-расширения могут быть


также и бесконечными, как показывает следующий пример.

10.2.9. Пример. Пусть J = Q(kjxy.x(jy)). Тогда kz.x(Jz),


откуда
B = BT(/x) = 7z0.x
I
XZ{.Z0
I
'Kz.-y.Zy
'I
Zz3.z2

Можно рассматривать В как предел следующей серии ^-рас­


ширений:
А — х п<- ВТ (Лг0.хг0) ВТ (kz0.x (Kz^ZoZ^ • • •.
Поэтому В называется бесконечным ^-расширением дерева А
(а само дерево А — бесконечным ц-редуктом дерева В). Сле­
дующее определение вводит это понятие в общем случае.
10.2.10. Определение. Пусть А е 8 и X s Seq.
(i) X расширяет А, если выполнены следующие условия:
(1) X — дерево и |Л| s X, причем X имеет конечное ветвле­
ние;
(2) Л (а) = _!_=> а— конечная точка (т. е. терминальный
узел) дерева X.
(ii) Если X расширяет Л, то (Л;Х) обозначает дерево бё-
мовского типа (с лежащим в основе деревом X), определяемое
следующим образом:
(1) (Л; X) (а) = Л (а), если аеЛ и за ним в Л непосред­
ственно следует то же количество узлов, что и в X;
(2) (Л; Х)(а) = • • • zak_vy, m + k), если Л (а) = <Хх.г/,
in) и за а непосредственно следует m + k узлов в X;
(Л; X) (а) = (лг« • • • z^_l.zf, п),
(3) если а = р * </г 4~ i> е X—]Л|, р ее Л и |3 имеет k на­
следников в Л, а за а непосредственно следует п узлов в X или
(4) если ос = р « <i> е X — |Л[, Р0Л и а имеет п наслед­
ников в Х\
(Л; X) == j, если а ф. X.
Эта нумерация (1) — (4) используется в приводимом ниже
примере.
238 Гл. 10. Деревья Бёма

(iii) Говорят, что дерево В является (возможно) бесконеч­


ным ^-расширением дерева А (и пишут В^^А или Л^ЧВ),
если для некоторого X = Seq, расширяющего А, В = (А; X).
Дерево (Л; X) устроено проще, чем может показаться.
10.2.11. Примеры, (i) Пусть
Л=Кх.х |Д| =

Тогда

I
I

/
/
/
/
г 8
10.2. Сравнение деревьев Бёма 239

(ii) Пусть А =• х; тогда | Л | = •. Пусть

Тогда

Таким образом, для X, расширяющего А, дерево (Л;Х) яв­


ляется очевидным (бесконечным) ^-расширением дерева А с ле­
жащим в основе деревом X.
10.2.12. Лемма, (i) (S, ^п)—частично упорядоченное мно­
жество.
(ii) Если А В и множество |В| — |Л| конечно, то В-^^А.
Доказательство, (i) Очевидно, что отношение реф­
лексивно и транзитивно. Заметим, что из X = |Л| следует, что
(Л; X) = А. Поэтому
Л<ПВ<ПЛ=>В = (Л; |В|)Л| Л | = |В|=>-Л ==В.
(ii) очевидно. □
10.2.13. Лемма. Допустим, что А г^Л; и А Ст)Л2. Тогда
(i) ЭВ (Л1 В Л А2 В). {Это перевернутое свойство Чёр­
ча— Россера. Обычная форма тоже имеет место, см. предложе­
ние 10.2.15.)
(ii) Л1 £= Л2 Л1 = Л2.
Доказательство. Пусть Л1=(Л;А'г) для i=l, 2.
(i) Берем В = (Л; A'i UA2).
(ii) Ввиду Л^Лг имеем Л\еХ2. Если аеХ2 — Xi, то
[ieX| и Л1 (Р) f для некоторого р < а. Но тогда сразу реЛ
и Л(Р)|. Из определения 10.2.10(i) (2) следует, что р— терми­
нальный узел в Х2, а это противоречит соотношению p<asX2.
Поэтому Xi — Х2 и нужный результат получен.
10.2.14. Лемма. Пусть A s В. Тогда
(i) В В' => ЗА' (Л A's В'),
(ii) А^А'=>ЗВ'(А'<=-В'^В),
(iii) А А' => ЗВ' (A's В' В).
240 Гл. 10. Деревья Бёма

На диаграммах это выглядит следующим образом,


с
В’

(0 <4
--------- в
с

(ii) ^Т)

(iii)

Д'-
Q

Доказательство, (i) Пусть В' = (В;Х). Тогда берем


А' = (Л; X'), где
Г = {ае1П(3₽ <«)(Л(Р)=1)}.
(ii) Пусть Л' = (Л;Х). Тогда берем В' = (В-, X U | В |).
(iii) Пусть А = (Д'; X). Полагаем
если А' (а)|,
если (ЗР =С а) И' (Р) = -L),
в остальных случаях.

"S

Тогда В =(B/;XU|fi'|)^nfi/ и А'


10.2. Сравнение деревьев Бёма 241

Заметим, что в общем случае Л s В В' ЭЛ' (Л A's


s В). Возьмем, например,
A = Xz.x, B = kz.x, В' = х.
z
10.2Л5. Предложение, (i) Каждое дерево Ле8 имеет бес­
конечную г\-н. ф. (обозначаемую через оорЛ), обладающую сле­
дующими свойствами:
(1) оор(Л)^лЛ,
(2) у В [В Л => оо рЛ sCn В].
(ii) Дерево оор (Л), удовлетворяющее условиям (1) и (2),
единственно.
Доказательство, (i) Определим операцию оор на мно
жестве 83 следующим образом.
оо р(±) = 1
оо р (ЛЛР • • • хп.у) =
/\
Л1 • • • Ат
оо р (Хх, • • • хп_х.у}, если х„^пЛт и хп & FV (Л;),
/\ 1 i -С пг — 1;
Л1 • • • Лщ_1
~ А *! • • ■ хп.у в противном случае
/ \
оо р(Л,)- • - оо р(Лш)
Пробираясь по дереву, мы видим, что оор(Л) корректно оп­
ределено и имеет место (1). Условие (2) также выполнено, ибо
в оор(Л) сделаны все возможные р-сжатия.
(ii) Если оор'(Л) удовлетворяет условиям (1) и (2), то
оо р' (Л) оо р (Л) оо р' (Л).
Следовательно, по лемме 10.2.12(i) имеем оор'(Л)= оор(Л).

10.2.16. Замечание. В упр. 10.6.6 будет показано, что мно­
жество AS не замкнуто относительно операции оор, т. е. имеется
терм Л1 е А, такой, что дерево оор (ВТ (М)) не является бёмов-
ским деревом какого-либо терма.
10.2.17. Следствие. Л В => оор (Л) = оор (В).
Доказательство. Это соотношение — следствие един­
ственности бесконечной р-н. ф. □
Говорят, что узел (т. е. код последовательности) а вирту­
ально принадлежит дереву бсмовского типа Л, если а принадле­
242 Гл. 10. Деревья Бёма

жит некоторому ^-расширению дерева А. Очевидно, что ос вир­


туально принадлежит А т. и т. т., когда “1 (зр < а) (А(р) = _1_).
Следующее определение описывает виртуальные метки дере­
ва бёмовского типа в его виртуальных узлах.
10.2.18. Определение. Для А е Э и а <= Seq пусть £= Seq —
наименьшее множество (если оно существует), такое что
а е Ха и Ха расширяет А. Очевидно, что Ха существует т. и т. т.,
когда "| (зр < а) (А (р) = ±). Положим
(А; Ха) (а), если П(ЗР <а)(А(Р)= ±),
(i) А]а = < 1, если А (а) = J.,
И в остальных случаях.
Как и в 10.1.8, может быть А|а = {Ъх.у, т), =_1_ или =|f.
(ii) AJ|ct = ВТ(М) |а.
(iii) Ма. = (/И; Ха) а, где а — виртуальный узел дерева ВТ(Л1).
Пример. Пусть
А = Ах.х = Xz0<>.z0<>

X Аух z0<> ,AZ|p>. z£>

и ai = <0, 1>, ос2 = <1>, а3 — <1, 0>, а4 = <2, 2>. Тогда A |aa"=z< >f
A|a2=_L, A|a3 = tt и A|a4 = z® (см. рис. 10.1).

Эквивалентные г. н. ф. и локально эквивалентные деревья Бёма


Следующее отношение эквивалентности на г. н. ф. было вве­
дено Бёмом [1968].
10.2.19. Определение, (i) Пусть ЛЫ/Дг" xn.yMi • • ■ М,п и
N ~ ^xt • • • xn'.y'N{ • • • Nm’ — две г.н.ф. Тогда говорят, что М
эквивалентна N и пишут
М ~ N,
если у = у' и п—ш = п' — tn' (эти разности могут быть отри­
цательными).
10.2. Сравнение деревьев Бёма 243

(ii) Если М и N— произвольные термы, то пишут, что


М ~ N, если оба терма М, N неразрешимы или оба они разре­
шимы и имеют эквивалентные г. н. ф.
10.2.20. Замечания, (i) Из соглашения о переменных следует,
что условие у у' в определении 10.2.19 (i) выполнено только
в том случае, когда обе эти переменные свободны или обе они
связаны. Например, Хх.уМ Ку.уМ, но Ъх.хМ ~ \yz.yMN.
(ii) Пусть М, N — г. н. ф. Пусть х — последовательность пе-
ременных, такая, что Мх = уМх ■■■ Mm,Nx = y'Nl Nm,. Тогда
М ~ N в том и только том случае, когда у == у' и т = т'.
(iii) В силу следствия 8.3.17(H) отношение М ~ N корректно
определено для термов М, N, не находящихся в г. н. ф.
10.2.21. Определение, (i) Для элементов множества Si (ме­
ток деревьев бёмовского типа) положим
(KXi ■ ■ • хп.у, т) ~ (ЛХ1 • • • хп'.у', т')
т. и т. т., когда у^у' и п — т = п' — т'.
(ii) Пусть А, Be S3 и aeSeq. Тогда А ~аВ в том и только
том случае, когда А | а ~ В | а (т. е. обе виртуальные метки А | а

*1

Рис. 10.2

и В|а определены и эквивалентны или обе они не определены


(т. е. _L или Н)).
10.2.22. Лемма. Если А^.^В, то уа(А ~аВ).
Доказательство. Заметим, что В А влечет уа (А ~
В), см. рис. 10.2.
Наше утверждение получается теперь из того, что отношение
>5^ — транзитивное замыкание отношения -^-л. □

Специальные отношения включения для деревьев Бёма


Следующие два отношения включения для деревьев играют
важную роль в анализе моделей и Dx в гл. 19,
2i 1 Гл. 10. Деревья Бёма

10.2.23. Определение. Пусть А, В ей. Тогда


(i) A”s В<=^зД'(Д ^A'sB),
(ii) А\=Ф В<=$ зА'В' (A^A'sB'^B).
Примеры.

(ii)

NZj. Zq

XZj.Zj
I
I

10.2.24. Лемма, (i) ’is— частичный порядок на множестве®.


(ii) Отношение ’'s’' рефлексивно и транзитивно.
А"

л
А
Рис. 10.3

Доказательство, (i) Рефлексивность очевидна. Чтобы


доказать транзитивность, допустим, что /i’S/j’SC. Тогда
ЗА'В' (Д Сп A's В В's С).
По лемме 10.2.14(i) имеем ЗА" (А' ^пА" <= В'). Следова­
тельно, Д A" s С, т. е. A ’is С (см. рис. 10.3).
Допустим теперь, что A ’is В ’is Д, чтобы доказать равенство
Д = В. Тогда Д). Пусть А' = (А; X)
и В' ~ (В; Y). Имеют место включения
|A|sXs|B|s Ys|A|.
10.2. Сравнение деревьев Бёма 245

Следовательно, |Л | = X = | В| = У. Поэтому А=(А;Х)±В


и аналогично В А, откуда А = В.
(ii) устанавливается аналогично с использованием лемм
10.2.13 и 10.2.14(H). □
10.2.25. Определение. Будем писать
A=„B, если А” s” В11 <=11 А.
По лемме 10.2.24(ii) отношение =л является отношением
эквивалентности на S. Заметим, что
A В => А =т) В.
Напомним, что А=кВ для деревьев А, В ей имеет место
т. и т. т. когда Ak — Вк. Аналогичным образом полагаем
A B<=>Ak s Вк.
10.2.26. Лемма. Для деревьев А, В е 33
А^Во у/гЭЛй \Ak A A Ак =к В].
Доказательство. (=>) Имеем В=(Л;Х) для некото­
рого X, расширяющего А. Положим
Хк — |Л |U{a е X [ lh (ос) С k}.
Тогда Хк расширяет Л, и ввиду конечности множества Хк— |Л|
имеем (Л; X*) —Л для любого k. Кроме того, (А\Хк)=к
=ДЛ;Х) —В. Поэтому можно взять Ак = (Л; Хк).
(<=) Пусть даны деревья Ак. Полагаем ХА = ] Л * | и X —
= [J Хк. Тогда X расширяет Л и (Л; X) = В. Следовательно,
Л <ДЛ В. □
10.2.27. Следствие, (i) Л В <=> уйдЛ^ [ЛАЛ А Лй В],
(ii) ^k3AkBk [Ak—>r[A,'Bk->riB кАк <=к BJ.
Доказательство, (i) (=>) По предположению имеем
Л гСцЛ' s В для некоторого А'. Отсюда в силу леммы получаем
У/гЗ Ак [Ак Л л Ак =к А'],
а так как A's В, то
У^ЗЛ/г [Ак-^Г1А А Ак s*
B].
(<=) Пусть даны деревья Ак. Полагаем Xft = | Л£ |, X = |J Xk.
Тогда X расширяет А, и для А' = (А;Х) имеем А^^А'^В,
т. е. А ’’с В.
(ii) устанавливается аналогично. □
Следующие понятия вводятся для описания ситуаций, когда
Л В.
246 Гл. 10. Деревья Бёма

10.2.28. Определение. Пусть А, В <= S3.


(i) А вкладывается в В, если (3Л' —Л) (A' Si В).
(ii) Говорят, что А превосходит В (и пишут A sup В), если А
не вкладывается в В. Полагаем
A supa Bo.4asup Ва для asSeq.
Пусть, как обычно, Si обозначает множество меток деревьев
бёмовского типа, и пусть a, b е Si U {j}, где f обозначает «не
определено».
(iii) Говорят, что а вкладывается в Ь, если а = f или
а - - <X%i ••• хп.у, т) и b = <A,Xi ••• хп+ь-У, т + k).
(iv) Пишут, что asupft, если а не вкладывается в Ь.
Примеры, (i) _L вкладывается в любое дерево.
(ii) Кх.х вкладывается в Кху.х, который вкладывается
I /\
X XX
в Kxyz.x.
/|\
X X Z
(iii) Кх.х sup Кху.у, Кх.х sup Кх.х.
I /\ I /\
X X X X X X
(iv) А вкладывается в ВоЛ(< >) вкладывается в В« >)'.
10.2.29. Лемма. Пусть А, В еЗ таковы, что A^kB.
(i) Предположим, что А (а) вкладывается в В (а) для любого
а е А П В, такого, что lh(a) = k. Тогда
faA'-»пА)(А' Sfc+lB).
(ii) Предположим, что А (а) В (а) для любого а е A f] В,
такого, что А (а) | и ih (а) — k. Тогда
(ЗУГ —Л) (дВ' —^В) (A' sA+i В').
Доказательство, (i) Произведем в каждом узле «еЛ,
таком, что lh(a) = £ и Л(а)|, подходящее ^-расширение де­
рева Л, которое вкладывает Л (а) в В (а). Тогда мы получаем,
*+1 В. Например,
что А' =
10.2. Сравнение деревьев Бёма 247

(ii) Аналогичным образом произведем ^-расширения в обоих


деревьях А и В. Например,

Берем

Тогда A' s2 В'. □


Напомним, что
а <= Dorn (А) <=> А (а) j ,
а е А <=> А (а) | V А (а) = 1.
10.2.30. Лемма, (i) А” SE В => (За е В) [A supa В].
(ii) А” £ ”В => (За е= Dorn (А)) [А В].
Доказательство, (i) Допустим, что А^В. Применяя
следствие 10.2.27 (i), выберем наименьшее k, для которого
(О (VA'->nA)(A'S?ftB).
Тогда £ > 0 и для некоторого дерева Ао-^-^ А имеем
AoSs-iB. Можно считать, что Ао — минимальное ^-расширение
дерева А, такое, что А0=
*
_]В. Отсюда следует, в частности, что
(2) ~| 3a [ih (а) k — 1 и Ао есть расширение дерева А в узле а].
248 Гл. 10. Деревья Бёма

В силу (1) отсюда вытекает, что


ЖВА'-^Ао-^АДА'^В).
Поэтому, применяя контрапозицию к лемме 10.2.29 (i), получаем
(На е Ао П В) [lh (а) = k — 1 Л Ао supa В].
Теперь из (2) следует, что А0(а) = А(а), откуда (так как
A supa В тогда и только тогда, когда A (a) sup В (а)) следует, что
(Па е В) [Л supaB].
(ii) устанавливается аналогично с использованием леммы
10.2.29(ii). □'
10.2.31. Теорема. Следующие утверждения эквивалентны;
(i) А=лВ;
(ii) оо г] (Л) = оо г] (В);
(iii) Vk(3A'-^A)(3B'-^B) (A'=kB');
(iv) Va (A ~a B).
Доказательство, (i) =>(ii). По предположению
3А'В'В" A" (A Cn A' <=B'^AB B" <= A" A).
Используя леммы 10.2.13(i) и 10.2.14(i), (ii) получаем сле­
дующую диаграмму;

По лемме 10.2.13(H) имеем А’" — А"", откуда А"'— В'",


Поэтому в силу следствия 10.2.17
оо т] (А) = оо т] {А'") — оо г] (В"') = оот] (В).
(ii) => (iii) По предположению А оо ц(А) В. Следова­
тельно, по лемме 10.2.13(i) С^лА, В для некоторого С. По­
этому в силу леммы 10.2.26 получаем
VMHA'-^AHHB'-^B) (A'=ft С =fe В').
(iii) =>(iv). Пусть дан узел а е Seq, и пусть & = lh(a)-f-l.
По предположению
(1) (НА' -э>п А) (ЗВ' В) (А' =А В').
10.3. Техника выворачивания по Бёму 249

Тогда
А|а~Д'|а (по лемме 10.2.22) = В' | а (в силу (1)) ~
~В|а (по лемме 10.2.22).
(iv) =>(i). Применяя контрапозицию к лемме 10.2.30(11), по­
лучаем
Va (А ~а В) => А В,
откуда и следует нужное утверждение. □
Отношения на деревьях индуцируют соответствующие отно­
шения на термах.
10.2.32. Определение. Пусть М, N е Л, а е Seq.
(i) MT'^;V^-BT(Ai)r'^=BT (N).
(ii) M ВТ (М)” s’1 ВТ (ЛГ).
(iii) M^Al^BT^^BT^).
(iv) M <=> ВТ (Л4) =n ВТ (N).
(v) M ~a N ВТ (M) ~a ВТ (N).
В упр. 10.6.7 будет показано, что
М ’’С n <=> ЗМ' (до м' £ Л1),
М 1’=1) N <=> 3M'N' (Л1 М' £ N' N).
(Это не очевидно, так как нужное промежуточное дерево может
не быть бёмовским деревом ни для какого терма.)

10.3. Техника выворачивания по Бёму


Пусть А — ВТ(М) и Аа — его поддерево. Техника выворачи­
вания по Бёму состоит в нахождении контекста С[ ], такого, что,
грубо говоря, ВТ(С[Л1]) = Аа. (Поддерево Аа «выворачивается
наружу по Бёму».) Этот метод был впервые применен Бёмом
[1968] для отделения различных Pq-н.ф. М и N, т. е. для по­
строения контекста С[ ], такого, что, например, С[Л1] = г0'1,
С[ЛГ] = Г1’1.
10.3.1. Примеры, (i) Пусть
ВТ(М) =Хх.х

В2

и допустим, что нас интересует дерево В2. Положим С [ ] = [ ] F.


Тогда ВТ (С [М]) = В2 (если х не входит в В2).
250 Гл. 10. Деревья Бёма

(ii) Пусть
ВТ(Л/) = Лх-.х

в2
и пусть нам нужно В2.
Положим С[ ] = (Лг.[ ] F) U?- Тогда ВТ(С[М] ) = В2.
(iii) Следующий пример менее очевиден. Пусть
ВТ(М)=Лх.х

и пусть нам нужно В2. Если мы возьмем Со [ ] = [ ] F, то


С0[Л4] = й. Теперь, однако, мы положим С[ ]=[ ] P2FT, где
Р2=ЪаЬ.(а, Н). Тогда С [M]=<Q, <B2,Q)) FT=B2.
Заметим, что в общем случае не С [М] = В2, а С [Л4] = В2) где
В2 — подстановочный частный случай дерева В2. Можно, од­
нако, получить лучший результат.
10.3.2. Определение, (i) Частный случай М * терма М. е Л —
это любой результат подстановки термов вместо свободных пе­
ременных терма М.
* • • ■ означает, что для некото­
(ii) Обозначения. 3 * ••• М
рого частного случая М* терма М имеет место ••• М * ••• . Ана­
логично понимается V * • • •.
10.3.3. Определение, (i) Преобразование f — это отображе­
ние f: Л-> А.
(ii) Разрешающее преобразование f определяется либо ра­
венством
f(P) = Рх для некоторого х и всех Р, либо равенством
; f(P) = Р[х := N] для некоторых х, N и всех Р.
(iii) Бёмовское преобразование — это конечная композиция
разрешающих преобразований (включая тождественное, которое
является композицией нуля преобразований).
(iv) Обозначения, л пробегает бёмовские преобразования;
Мя обозначает л(Л4).
10.3. Техника выворачивания по Бёму 251

10.3.4. Лемма, (i) УлЗСл[ ] VM (Мл = [М]).


(ii) Контекст Сл[ ] в (i) можно выбрать так, что
Vx3W (VM е= А° (х) (С„ [М] = (Хх.М) N).
Доказательство, (i) Если Мп = Мх, берем Сл[ ] =
= [ ]х; если Мя — М[х := N], берем Сл[ ] = (Хх. [ ] )N, а если
л = jtj ол2, то полагаем Ся[ ]=СЛ1[СЛ2[ ]].
(ii) Снова ясно, как поступать, когда л — разрешающее пре­
образование. Пусть теперь л = Л1°Л2, где ni — разрешающее
преобразование, и СЛг [М] — (Xx.M)N для МеЛ°(х).
Случай 1. ( Г‘=( )у. Тогда СЯ[М] = (kx.M)Ny для
А1еЛ=(1).
Случай 2. ( )"’ = ( )[у.’=Р]. Тогда СЛ[Л4] = (hx.M)N
* для
М е Л° (х), где » = [у : = Р]. □
10.3.5. Определение, (i) Г.н.ф. Ме-/^ хп.уМ\ Мт на­
зывается ^-свободной, если п — 0, т. е. М в уМ\ ••• Мт.
(ii) Г. н. ф. М в Кх.уМ имеет оригинальную голову (или яв­
ляется г.н.ф. с оригинальной головой), если y0FV(A4).
(iii) Х-терм М готов, если М неразрешим или имеет Х-сво-
бодную г. н. ф. с оригинальной головой.
Мы покажем теперь, что Х-терм всегда можно сделать гото­
вым. Напомним обозначение U?я=Ххо • • • хп.хг, эти термы назы­
ваются селекторами. Перестановщик — это терм вида Xxi •••
• • • хл.х01 • • • Хпп, где а—/перестановка. Специальная группа
перестановщиков определяется соотношением
Рп я Хх1 • • • Хп. (Х[, • • •, Х„) в ХХ1 • • • Хп+\.Хп+\Х\ • • • хп.
10.3.6. Лемма, (i) УЛ13л(Л4я готов).
(ii) V/И (Va е ВТ (М)) Зя [Мя готов и 3 * (Л4я)а = (Ма)’].
(iii) Подстановка, нужная в (ii), делается только в голов­
ной переменной терма М (если М имеет г. н. ф.).
Доказательство, (i) Если М неразрешим, то берем
Мл = М. Если М разрешим, то пусть Xxi хп.уМ\ ••• Мт —
его (главная) г.н.ф. Положим
Ап = Ах! ••• хп[у: — Рт]а,
где а — новая переменная. Тогда
Мп в PmMi • • • М'та = аМ
* • ■ • М'т,
а этот терм готов.
252 Гл. 10. Деревья Бёма

(ii) [Конструкция, приведенная в (i), теперь недостаточна:


она может перемешивать структуры поддеревьев М. Пусть, на-
пример
М=Ах.х
А
I X

« У J-
Тогда
А1п = Мх [х := Р2] а = Р2| (Р21уЙ) а —
а
= P2l(P2\yil)a = a\(€lly)= /V
1 ±

следовательно, (/Ил)(1, о> Ф (Мц, о>)


*-] Ситуация снова триви­
альна, если М неразрешим. В противном случае М имеет г. н.ф.,
которую мы запишем в виде М = Xxi ••• хп.уМ{ ••• Мт. Пусть
lh(a) = k, и пусть узлы дерева ВТ(Л4) с длиной имеют не
более q наследников в дереве. Полагаем
А = Aixi • • • хп [у: = Р9] ат+1 ■ ■ • ачЬ.
Тогда, так как
Л1 = РgAf 1 • • • • • • Ctqb = ' fi<?>
где * = [//:=P?], мы видим, что ВТ^+^М11) получается из
ВТ*+1(М) заменой верхушки

а внутренних узлов (длины ^/г)

Очевидно, что Мл готов и (Мя)а есть частный случай Ма,


получаемый подстановкой [z/: = P9],
(iii) непосредственно очевидно. □
10.3.7. Предложение (лемма о выворачивании по БёМу).
(i) VAf (Vа е ВТ (АО) ЗлЗ * (АГ = W).
10.3. Техника выворачивания по Бёму 253

(ii) Подстановка (•») из п. (i) производится только вместо


тех переменных из Ма, которые встречаются в качестве голов­
ных переменных в узлах р < а.
(iii) Преобразование л из п. (i) обладает свойством
> = A i] - [х„: = ЛМР
для некоторых N, Р, которые являются либо переменными, либо
перестановщиками, либо селекторами, причем {%} состоит из тех
свободных переменных терма М, которые встречаются в каче­
стве головных переменных в узлах р < а дерева ВТ(М).
Доказательство, (i) Индукцией по lh(a) мы покажем,
что
VA1 [а <= ВТ (ЛД => Дл * О" = «)
]•
*
Если а = ( ), т. е. Л-1 < > = ЛД мы можем взять л = id. До­
пустим, что а = </> * р. Применяя лемму 10.3.6, найдем подста­
новку по, такую, что
(1) Л1л° = хЛД • • ■ Mm готов
и для некоторой подстановки *0
(2) *
°
Ш = (Л1Я°)а = (ЛД)3-
Положим
( )Л1=;( )[-
*:== Uy], л10 = л1ол0.
Тогда в силу (1) МЛ1° = (хЛД Мт)л' = М/. По предположению
индукции в применении к узлу р имеем
ВЛ2В *2 (^Д ’ = ((ЛД)р)2).
Следовательно, в силу (2) получаем, что (ЛД)"2 = Ма ”2- По­
лагаем л = Л2°Л1 °Ло, и все в порядке.
(ii), (iii) непосредственно очевидны. □
Без добавочного труда мы можем вывернуть по Бёму вир­
туальный узел дерева.
10.3.8. Следствие. VAI (Va, виртуального в ВТ (ЛД) НлЭ * (Л4Я=
= (АД)
*). Более того, л и * можно выбрать так, чтобы они об­
ладали свойствами из предложения 10.3.7(ii), (iii).
Доказательство проводится с помощью двух примеров.
(1) Пусть
М — Ах. х
/\ и а = <2).
х х
254 Гл. 10. Деревья Бёма

Тогда можно найти Ма, изобразив rj-расширение


М' s\xy. х.
/1\
х х у
Чтобы вывернуть по Бёму узел а в М', используем преобра­
зование п, определенное соотношением
( )" = ( )ху\х: = U2].
Это л работает и для терма М:
Mn=U22U22\f2y==y.
(2) Пусть М тот же, что в (1), и пусть а = <2, 1). Берем
М' = \xy.x.
/1\
х х \pq.y
/\
Р Я.
Полагаем ( )" = ( ) ху [х: = U2] pq [у-= Ui]- Тогда Mn~q. □
Предыдущее доказательство показывает, что в самом термеЛ!
не нужно делать никаких подстановок, если а виртуально нахо­
дится в ВТ (Л4).
Следующий результат взят из работы Барендрегта и др.
[1976а]; он используется в теореме 20.2.6.
10.3.9. Следствие. Пусть Л1еА°(х), xaFV(BT(M)). Тогда
-> -> ->
для некоторых Р, Qe А, таких, что х 0 FV (Р), мы имеем
(i) MP = xQ;
(ii) в (i) можно потребовать, чтобы термы Р были замкнуты
и каждый из них имел вид U? либо Рт.
Доказательство, (i) Пусть а — узел минимальной
длины дерева ВТ(М), такой, что х встречается в узле а в каче­
стве свободной головной переменной (т. е. не связан ни в каком
узле 0<а). Тогда Ma = ‘ky.xN. В силу предложений 10.3.7(i),
(ii), (iii) имеем
Мп sa MP = (Xy.xN)
* =*
‘ky.xN
—У
для некоторых л, *. Поэтому МРу — xN*, что и требовалось.
(И) в силу предложения 10.3.7(iii) члены списка Ру— это
переменные =х или термы вида U7 или Р™- Подставляя в (1)
10.3. Техника выворачивания по Бёму 255

термы I^Uo вместо переменных ^х, можно добиться того,


чтобы Р е Л°. □
В следующем разделе техника выворачивания по Бёму будет
применяться к нескольким термам одновременно. В дальнейшем
буква ЯГ будет обозначать конечные последовательности термов
(возможно, с повторениями), и мы будем писать ^" = {Mi, ...

10.3.10. Определение. Пусть ^сЛиаЕ Seq.


(i) Множество st готово (соответственно ^-свободно), если
(VM st) М готов (соответственно ^-свободен).
(ii) преобразование л является a-st-точным, если
(VMM е st) ([М ~а N <=> Мл ~ Мл] Л [М | а | <=> Мп разрешим]).
Преобразование л st-точно, если л является < >-«5^-точным.
(iii) Пусть М, N е Л. Тогда говорят, что М, N согласованы
вплоть до а, если (Vp < а) (М1Р = N | Р).
(iv) Множество st согласовано вплоть до а, если (VMM е st)
(М, М согласованы вплоть до а).
10.3.11. Лемма. Пусть ЯГ согласовано вплоть до а. Тогда
для некоторого л
(1) ££~я готово-,
(2) ЯГп согласовано вплоть до а;
(3) (VMM е= ^) [М ~а М <=> Мл ~а Мл].
Доказательство. Это утверждение получается из дока­
зательства леммы Ю.З.б(П). Допустим, что а =£ < > и что эле­
менты множества ЯГ разрешимы (остальные случаи проще).
->
Тогда для М,- е ЯГ мы имеем М, = \x.yNu • • ■ Nlm. Определим л
с помощью равенства
( )" = ( )* [у- = Р9]«1 ••• аг,
где q, г достаточно велики (внимательный читатель без
труда увидит, насколько велики они должны быть). Тогда Мл =
=PqMia = aj а этот терм готов. Это устанавливает (1).
Чтобы доказать (2), допустим р < а. Для терма MeJ' де­
рево ВТ(МЯ) получается из ВТ(М) изменениями (1) и (2) из
доказательства леммы 10.3.6(ii). Пусть М, Ме£Г Тогда воз­
можны три случая.
Случай 1. М|р = М|р = <Хг.г/', т>, у' Ф у. Тогда
М"|р = Мл|р=а1/, tri).
256 Гл. 10. Деревья Бёма

Случай 2. М | р — N1р = {kz.y, т). Тогда


Л|я|р = №Ч 0 = (кгхт+1 ■ • • xq+l.xq+i, q).
Случай 3. М | р = N10 = |. Тогда Мя | р == Na | р = .
Чтобы доказать (3), допустим, что М, N<=SF и Л11 а, W|«
определены (остальные случаи проще). Если М | а ~ N | а, то,
как и выше, Мя|а ~ №г|а. Допустим, что Л1 Ф а N, и покажем,
что Мя Пусть
M|a = (Xzi zni.yx, m-t}, • • • zni.y2, т2).
Случай 1. у} =£ у2. Тогда и Л1Я^ОЛ^Я. (Рассмотрите подслу­
чаи t/i У, у2^ у И (/j = у, у2^ у.)
Случай 2. ух = у2, п\ — т\^=п2— т2. Подслучай 2.1.
yj = у2 у. Тогда Л4я|а = Л4|а и аналогичное равенство верно
для N, так что Мя^а№х. Подслучай 2.2. ух = у2 = у. Тогда
AT4|a = <Z2i ••• гга,хШ1+1 ••• xq+i.xq+\, q),
N” | a = (Azi • • • zn2xmi+i ■ ■ ■ xq+i.xq+i, q)
и, значит, MIt'S'a№T, так как
«1 +(<7 + 0 — mi — q n2 +(y+ 1) — m2 — q. □
В дальнейшем нам потребуется следующий результат.
10.3.12. Лемма, (i) Пусть зФ S Л. Положим ( )я = ( )х.
Тогда если х FV (.$$), то л зФ-точно.
(ii) Пусть — ||М||< k, М есть Рр-н. ф.}. Поло­
жим ( )л = ( )[х: = Р
*]. Тогда
(1) преобразование л ^*-точно;
(2) с NF-
(3) л инъективно на s£k (т. е. Мя = Пя => М = N для
М, N
Доказательство, (i) устанавливается легко.
(ii). Пункт (1) доказывается тем же методом, что и в лем­
ме 10.3.11. Чтобы установить (2), докажем индукцией по глу­
бине d дерева ВТ(М), что
М Мл имеет piq-н.ф.
Пусть d = 0. Тогда M — Ty.z, поэтому М[х:=Рк] имеет
рт]-н. ф. как при z Ф х, так и при z = х.
Пусть d > 0. Тогда
ВТ(ЛГ) = "Ky.z
/ \
Д1 д/>
10.3. Техника выворачивания по Бему 257

Если z х, то
BT(Mft) = AjbZ
/ \
д7 д;
и нужный результат следует из предположения индукции. Если
z — это свободная переменная х, то
ВТ(Мп)=“Ау.РА”=Лугр+1- • • z*+1.zA+1

так как А>||Л4||> р, и нужный результат снова следует из


предположения индукции.
Чтобы установить (3), заметим, что индукция по d показы­
вает возможность восстановления ВТ(М) по ВТ(МЯ) для
М е s^k- [Отметим, что, так как М находится в |3ц-н. ф., под­
дерево А" дерева ВТ(МЯ) не равно последней переменной
списка у, и поэтому его можно проследить.] Следовательно, пре­
образование л инъективно на □
10.3.13. Предложение. Предположим, что ЗГ согласовано
вплоть до а. Тогда существует a- ST-точное преобразование л.
Доказательство проводится индукцией по lh(а). Если
а = < >, берем л = id. В противном случае пусть а = </> *|}.
По предположению имеем
(1) (VWe^)(Al|< > = 7V|< ».
Для упрощения записи допустим, что ST —
Случай 1. Термы М, N неразрешимы. Берем n = id.
Случай 2. Термы М, N разрешимы. В силу (1) для подходя­
щего р
М = Tx.yMi ••• Мр, N = Tx.yNi ■■■ Np.
По лемме 10.3.11 найдется ло, такое что
(2) 3?~п° готово,
(3) M~aN^>Mn°~aNn\
(4) £F"° согласовано вплоть до а.
В силу (1), (2) для подходящего q
&-п° = {аР0 ■ • • Pq, aQo • ■ • Qq}.
Полагаем ( )Я1 = ( ) [а: = U/j. Тогда .ЗгЛ‘ОЛ! = Q^.
*) X Барендрегт
258 Гл. 10. Деревья Бёма

Кроме того, в силу (4) множество ^л,оя° согласовано вплоть до


р. Поэтому в силу предположения индукции найдется р_^гл,ОЯ)-
точное преобразование т- Тогда
М ~а А <=> пР ~а aQ (в силу (3)) <=>- Ps <=>
<=> рт ~ 3 QT о Мп~ Nn,
где л = л2 ° ли о л0- Поэтому это преобразование а-^"-точно. □

10.4. Отделимость термов


Множество = ..., Мп} Х-термов называется отдели­
мым, если его элементы можно отобразить на произвольные
термы с помощью «определимой» функции.
Перед исследованием общего понятия отделимости будет рас­
смотрен случай п = 2. Следующий результат принадлежит Бёму
[1968].
10.4.1. Лемма, (i) Пусть термы М, N^A разрешимы. Тогда
N=>(VPQ<= А)Зл[лГ = Р AA" = q].
(ii) Пусть М разрешим. Тогда
М cP N => (VP <= А) Вл [Мл ~Р Л N31 неразрешим].
Доказательство, (i) По теореме 8.3.14 термы М, N
имеют г. н. ф.
Л1 = XXl ' * • ' Al mi Н —; /.Xi • • ' Хп'.у N \ * * • Nт'
*
Допустим, что М ср N. Тогда уфу' или n — tn^=n' — m'.
Случай 1. у Ф у'. Допустим, что п' п, тогда п' = п + I?
Положим
' ( Г = ( )Х, ••• xn+k,
( Г1 == ( ) [у := ^«1 • • • flm+fe.P] [/ := А.О1 • • • am'.Q]
и л = ni о по. Тогда
Мя = (уМх ••• Мтхп+Х ... xn+k)n'=P,
Nn = (y'Nl ••• A^f-Q.
Случай 2. у = у' и п — п' — т'. Пусть п' п. Положим
( Г = ( ) хх ... хп>.
Тогда (используя очевидное обозначение —>) для подходя­
щих термов Дг, Д‘] получаем
А4 уМх ■ ■ ■ Mmxn+i • • • хП' = уТ\ • • • ДР,
N ^ yNx ■■■ Nm. = yLi ... LP’,
10.4. Отделимость термов 259

где р = пг' — п и р' = т'. Так как р =/= р', имеем p — p'-p-k
(считая, что р > р'). Положим
( )"■ = ( )abl ••• Ьк,
( )"’ = ( ) [у :=^i • • • хр+1.гр+1].
Тогда имеем
уЦ ■ ■ ■ Lp yLx ■ • ■ Lpabx • • • Ьк ah-, ■ Ьк,
yL\ • • • Lpf yLi • • • Lptabi • • • Ьк —■* 1>к.
Наконец, пусть
( Г = ( ) [а:= Adj Ьк.Р] [Ьк := Q],
ОТ ■—~ ОТ^ о ОТ2 о ОТ^ о OTq.
Тогда Мя = Р, Nn — Q.
(ii) Снова имеем г. и. ф. М — Кх\ хп.уМх ••• Мт, и допу­
стим, что N неразрешим. Положим
( )" = ( )*1 • • • хп[у.= Ках • • • ат.Р].
Тогда Мя = Р, a N11 все еще неразрешим. □
10.4.2. Теорема (Бём [1968]). Пусть М, N — различные
рт]-«. ф. Тогда
(i) VPQBn [A!" = Pa№x = q];
(ii) если, кроме того, М, N е Л°, то VPQBL [ML—P Л NL=Q].
Доказательство, (i) По предположению Mcfe^N. От­
сюда по теореме 10.2.31 получаем
МоЬам (см. также упр. 10.6.9)
для некоторого а. Пусть а — узел минимальной длины, удовлет­
воряющий этому условию. Тогда множество {М, П} согласовано
вплоть до а. Поэтому в силу предложения 10.3.13 для некото­
рого По
МЛа у №т".
Теперь применяем предыдущую лемму.
(ii) получается из (i), так как для любого л и замкнутого
М имеет место равенство Л4Я = ML. □
Из предыдущего следует, что для термов, имеющих н. ф.,
?фт]-исчисление полно по Гильберту — Посту. Это неверно для
термов, не имеющих н. ф. См. гл. 16 и 17.
10.4.3. Следствие, (i) Пусть М, N — различные $ун, ф. Тогда
равенство М = N противоречит теории к.
V*
260 Гл. 10. Деревья Бёма

(ii) Если М, N— термы, имеющие н. ф., то равенство М = N


либо доказуемо в теории Хт], либо противоречит ей.
Доказательство, (i) Для заданных Р, Q по предыду­
щей теореме имеется преобразование л, такое, что Мп = Р,
* — Q. Поэтому
N
х 4- м = N Н Р = Мл = N" = Q,
откуда следует, что
в /. + М = N выводимо любое равенство.
(ii) Если N, М имеют р-н. ф., то, сворачивая все ц-редексы,
мы получаем для них и |3г]-н. ф. N', М'. Если М' = N', то
Кт] Н М = N. Если М' N', то в силу (i) имеем
Д Con (li) + М = N). □
Теперь рассмотрим отделимость для ХД-исчисления в общем
случае. Формулировка и доказательство окончательного резуль­
тата принадлежат Коппо и др. [1978].
10.4.4. Определение. Пусть = ..., Мр}—множество
Х-термов.
(i) Пусть ST s А0; тогда FT называется отделимым, если
(+ ) (VA) • • • Np е Л) B(F е Л) (FM, — N{ h ■ ■ ■ FMP = Np).
(ii) Если ST А произвольно, то отделимо, если его за-
->
мыкание — {Zx.-Mi, отделимо в смысле (i).
Можно определить q-отделимость, заменяя знак = в условии
(+) на =„. В гл. 17 будет установлено, что
FT ц-отделимо <=> FT отделимо.
В действительности это имеет место в гораздо более общей
ситуации.
10.4.5. Лемма. {Мь • ■ •, Мр] А отделимо <=>
<=>VA4 ••• АРВС[ ] (С [MJ = А ••• А С [Л4р] = Ар).
->
Доказательство. (=>) Допустим, что F(Xx.Mf) == А,-.
Берем С[ ]=F(Xx.[ ]).
( <=) следует из леммы 2.1.20. □
В оставшейся части этого пункта FF обозначает произволь­
ное конечное множество термов.
10.4.6. Определение. Пусть aeSeq. Скажем, что а полезен
для ГТ, если
(1) (VMe^)M|a| ;
(2) (ДМА е=^)(М^аА).
10.4. Отделимость термов 261

Следующее понятие определяется индукцией по числу эле­


ментов множества SF.
10.4.7. Определение. Множество различимо, если оно од­
ноэлементно или некоторый а е Seq полезен для и классы
всех элементов SF по отношению ~а различны.
Важные примеры различимых множеств доставляются сле­
дующей леммой.
10.4.8. Лемма. Пусть ST состоит из термов, имеющих различ­
ные рц-н. ф. Тогда ST различимо.
Доказательство проводится индукцией по числу р эле­
ментов множества
Случай р= 1 очевиден, поэтому предположим, что 1.
Пусть М, имеют различные pq-н. ф. Тогда сле­
довательно, по теореме 10.2.31 М для некоторого а. Из
того, что элементы множества имеют н. ф., следует, что
(VL е 3~) А|оД. Поэтому а полезен для 3~. Из предположе­
ния индукции вытекает, что все классы эквивалентности по от­
ношению различны. Поэтому различимо. □
Основной результат статьи Коппо и др. [1978] состоит в том,
что в МС-исчислении
ST отделимо о ЗГ различимо.
В этом пункте будет доказана только импликация <=, а до­
казательство обратной импликации будет отложено до § 14.
10.4.9. Определение. Множество ЗГ оригинально, если 8Г со­
стоит из Х-свободных г. н. ф. и
(VM1V е IF") [Af W=>Af, N имеют различные головные
переменные].
10.4.10. Лемма. Пусть У состоит из разрешимых термов.
(i) Ня (л -точно и к-свободно).
(ii) 3я (л -точно и оригинально').
Доказательство. Положим ( )rt = ( )х; хп, где пе-
->
ременные х новые, а п достаточно велико. Тогда преобразова­
ние л ^F-точно в силу следствия 10.3.12 (i).
(ii) В силу (i) мы можем считать, что Х-свободно. Пусть
3~у = {М^З~\у — головная переменная (г. н.ф.) терма М}.
Если М, N ^3~у, запишем их в виде М — уМх Мр,
/V = yNi ••• Ny. Тогда М ~ N -<=> р = q. Пусть
Мр)}
262 Гл. 10. Деревья Бёма

и р = max X . Определим теперь л</ следующим образом:


* = ( )as • • • ар+г [у := Рр],
( )"
где а — новые переменные. Тогда множество оригинально
и пу является &~у- и даже ^-точным.
[Пример. Пусть дгу состоит из 4 элементов
уРР, yPQ, уРРР, уРРРР.
Тогда есть
уРРаха2а2а^аъ [у := Р4] = а$Р

а ха2а4а;,,
yPQaia2a3a4a5 [у : = Р4] = азР^^а^а^,
уРРРа^аза^ [у *а
Р4] = а2Р хаза4а5,
уРРРРага2аза4аз [у:= Р4] — а1Р * ' ,Р
* "а 2аза4а5.]
Последовательное выполнение таких бёмовских преобразова­
ний для каждой головной переменной z из дает требуемое
преобразование л. □
10.4.11. Следствие. Пусть ST состоит из разрешимых термов.
Пусть ^ = fFTU •" U^p — разбиение множества на классы
-'-эквивалентности. Тогда
Nq3n(yM€=3~k)(Mn = Nk'), 1<&<<7-
Доказательство. Пусть дано множество &~ = {М\, ...
..., Мр}. В силу леммы можно считать, что SF оригинально. Это
означает, что для 1 t, j р
Mi = ytMi\. ■■■ Mim. и Mt ~ Mj<=>-yi = yi.
К
Пусть даны N\........ Nq. Определим л следующим образом:
I Г=[ 1 := ■ • • рг? := Ах, • • • х^. /V,],

где {yh........ У{у} — попарно различные головные переменные


из ST. Тогда очевидно, что л искомое. [Пример. 2Г — (хРР, xPQ,
уРР, zPQR},
[ ] =[ ] [х := ЛХ|Х2.[у := Z,XiX2-ЛУ Ip :=
Тогда &~я = {Ni, Ni, N2, N3}•] □
10.4.12. Предложение. SF различимо =>■ отделимо.
Доказательство проводится индукцией по Card(iP).
Считаем, что Card(Sr)> 1, так как иначе все тривиально.
10.4. Отделимость термов 263

По предположению некоторый а полезен для ST. Возьмем


такой а с минимальной длиной. Тогда
(1) (ЭММ е 59 (М М),
(2) (УМ <= 59 (М | a J ),
(3) (V₽ <a)(VM№^)(M~3W).
Пусть ST = ^"iU ••• US9— разбиение ST на классы ~а-эк-
вивалентности. В силу (1) Card(£9) < Card(5Г), так что по
предположению индукции каждое из множеств , при 1 <: i k
различимо.
В силу предложения 10.3.13, а также (2) и (3) для некото­
рого Л1
(VA1W е= [М”’ ~ №”<=>- М ~а /V] л Мп разрешим.
Утверждение. Для любых Fi, ..., Fk существует л, такое, что
(4) (VA4 е 59) (Л1Л = 59), 1<г<й.
Действительно, заметим, что Ф *
' = U••• U — разбие­
ние множества на классы ~-эквивалентности. Поэтому
в силу следствия 10.4.11 для данных Fi, ..., Fk существует лг,
такое, что
,5) (vTle57'?,)(/VlIl2 = Fz),
Положим теперь л — Л2°Л1. Тогда в силу (5)
(уМ е= £Ff) (ЛГ = (ЛГТ = 9)»
что и доказывает наше утверждение.
Пусть FV(^)cs{x}. Для данных F\, ..., Fk найдем преоб­
разование л, такое, что верно (4). Положим
с[ ]=ся[ ](u.[ ]),
где контекст Сл[ ] таков, что УМ (С„ [Л1] — Л1Я) (он существует
по лемме 10.3.4). Тогда
(УМ е= С [Л4] = Ся [Л4] (U.M) = Ft (кх.М) (в силу (4)).
Так как множества 1 отделимы, мы можем выбрать термы
Pi, такие, что для всех М е59 терм Т,(Хх.Л4) равен наперед за­
данному значению. Поэтому ST отделимо. □
В гл. 14 будет доказана обратная импликация.
10.4.13. Теорема (Коппо и др. [1978]). Для КК-исчисления
отделимо -4=> ST различимо.
Доказательство. Эта теорема следует из предложений
Ю.4.12 и 14.4.14. □
264 Гл. 10. Деревья Бёма

10.4.14. Следствие. Пусть 5Г = {Mb ..., Мп}—множество


различных рг]-н. ф. Тогда 9~ отделимо.
Доказательство получается ссылкой на лемму 10.4.8. □

10.5. Отделимость в ^/-исчислении


Понятие отделимости релятивизируется очевидным образом.
10.5.1. Определение. Пусть = ..., МР}£А;(. Тогда
9~ /-отделимо <=>
o(VLi • • • Lp 6= Л?) (3F е= Л/) [FA4i = Ц Л • ■ ■ Л FMP = Лр].
Ясно, что если множество 9~ М является /-отделимым, то
= Лр от свободных переменных не избавишься. Для мно­
жеств 9~ S Л/ можно полностью охарактеризовать отделимость.
10.5.2. Теорема. Пусть 9~ = {Л/1; ..., АД) Е Л?. Тогда
9~ 1-отделимо о
состоит из термов, имеющих попарно различные
Рц-н. ф.
Доказательство. (=4-) По предположению (Э/еА;)
[FAfi=i_l j Л ■ ■ • aFA/p=lPj] (цифры Чёрча). Значит, в силу
следствия 9.1.6 все термы М, имеют р-н. ф. Сворачивая все трре-
дексы, получаем, что все М: имеют Рц-н. ф. Если М,- и М/ имеют
одну и ту же рц-н. ф, то Лц I- = Jj, откуда i = j.
(<=)— это следующая теорема. □
В действительности справедливо даже более сильное утвер­
ждение.
10.5.3. Теорема. Пусть 5Г = {АД, ..., Мр} S Лк — множество
различных рц-н. ф. Тогда ST 1-отделимо.
Доказательство этой теоремы занимает оставшуюся
часть настоящего пункта. □
10.5.4. Определение, (i) Преобразование л называется /-раз­
решающим, если оно определено одним из следующих двух спо­
собов: либо Мл — Мх для некоторого х, либо Мя = М [к := Л]
для некоторого ,t и А'е А;,
(ii) I-бёмовское преобразование — это композиция конечного
числа /-разрешающих преобразований.
(iii) ле/ означает, что л является /-бёмовским преобразо­
ванием.
10.5. Отделимость в KI исчислении 265

10.5.5. Определение, (i) Различимое нормальное множество


(р.н.м.)— это конечное множество = {Mi, .Мр}, состоя­
щее из термов, имеющих различные 0т]-н. ф.
(ii) пробегает р. н. м.
10.5.6. Определение. Если М = Z,Xi ••• xn.yMi ••• Mm, то аргу­
ментным числом терма М называется число m — п (которое обо­
значается через tj Й). Заметим, что для г. н. ф.
М ~ N о М и N имеют одинаковые
головные переменные и IjM — ljN.
Кроме того,
t](xMx • • • Мп) = п, bi (Му) = /у (М) + 1, Ь] (Лх.М) = (М) — 1.
10.5.7. Определение. ^/ = {ле/|л -точно и
есть р.н.м.}.
10.5.8. Лемма, (i) Если леТ)' и л'<=(^7'п)}, то л'оле^Г/.
(ii) Пусть х— новая переменная. Положим ( )я = ( )х.
Тогда пеТТ
Доказательство, (i) есть р. н. м. => л (&~) есть р.н.м.
=> л' о л (&~) есть р.н.м. Далее, для М, N
л°л' (М) ~ л' о л (jV) => л (М) ~ л (N) => М ~ N.
(ii) Очевидно, что ле I. Кроме того,
(1) л £Г-точно. Это следует из леммы 10.3.12(i).
(2) ЗГЛ есть р.н.м. Очевидно, что &~я состоит из 0р-н. ф.
Чтобы доказать, что они различны, предположим, что Мх, М'х
(такие, что М, М' , М М') имеют одну и ту же рр-н. ф.
Тогда и Кх.Мх =(зл Кх.М'х, а так как х— новая переменная,
отсюда следует М=^1]М' вопреки тому, что SF есть р.н.м.
[Именно в этом месте требуется, чтобы термы из р. н. м. имели
различные р-н. ф. В противном случае, например, последователь­
ность \x.zx, z перешла бы в zx, zx.\ □
10.5.9. Следствие. (Дл е РЕ/) ^-свободно)-
Доказательство. Возьмем ( ) —( )х\ хр с доста­
точно большим р. □
10.5.10. Определение, (i) Блок в множестве SE— это класс
~-эквивалентности элементов ST.
(ii) Головная переменная блока — это головная переменная
любого из его элементов.
Напомним, что SE называется оригинальным, если оно Х-сво-
бодно.и различные блоки в SE имеют различные головные пере­
менные.
266 Гл. 10. Деревья Бёма

10.5.11. Определение. Пусть & есть Х-свободный блок (в не­


котором множестве £F). Запишем его в виде
М, — уМп ■ • • М1т,

Mq = yMgi • • • Mgm.
Скажем, что & является х-прямым, если из того, что
хе FV(Мы,) для некоторого Mltlll из данного блока, следует,
что х s у и для всех 1 гС i SC q имеет место Мца — х.
10.5.12. ПримЕры. (i) Множества у\хх и х\ х-прямые.
ySxx xS
(ii) Множества г/lx, xlx и у\ (ху) х
ухх xSx г/Э(хг/)х
не являются х-прямыми.
10.5.13. Определение. специально, если
(1) ^"оригинально,
(2) если х — головная переменная некоторого блока в то
все блоки в ST х-прямые.
Мы хотим теперь показать, что любое р.н.м. можно с по­
мощью некоторого л перестроить в специальное множество.
10.5.14. Обозначения, (i) Напомним, что == A,xt • • •
• • • Xk+l-Xk+lXi • • • xk.
(ii) Если Мь ..., Mp — последовательность термов, то через
Mi, ..., Мг, ..., Mp
обозначается последовательность Мь ..., M,_i, Mi+i........ Mp
для некоторого г, такого что 1 г Р-
(iii) s%k = {М| М есть |3г]-н. ф. л ||М||< k}.
10.5.15. Определение. Пусть ST есть ^-свободное р.н.м.
Мультиблоком в ST с головной переменной х называется мно­
жество
ЗГХ = {М <= &~\х— головная переменная М}.
10.5.16. Лемма. Пусть &— мультиблок в некотором %-сво-
бодном множестве Тогда (Зя е £Г/) (^л специально}.
Доказательство. Пусть & имеет вид

хМп • • м\Пх
...
хМп,1 • • Mnlml
10.5. Отделимость в М исчислении 267

где гп\ < т2 < ••• < mq. Положим


( )" = ( ) к:= Pfe] 2i • • • zk+l,
где k >||М|| для всех М <= и z — новые переменные.
Сначала покажем, что специально. Пусть М е
М = хМ\ Мт. Тогда
Л4 === Zfc+l — тЛ41 ’ ‘ ‘ Л4т^1 ■ • • Zk+\ — m ’ ‘ ' 2^4-1,
где Mi —Mi[x:—Pk}. Следовательно, SF имеет вид

miAln ■ ■ • Zfc+l-W! ' • Zk+1

1 — mi-Mrtil * • ' ^A+l-zni * •Zk+l

Zk + \-tnqM\i • • • Mim^Zi • • • £^4-1 -mq ' ' ' Zk+l

Отсюда ясно, что оригинально. Так как переменные z но­


вые, множество $Л также и специально.
Теперь будет показано, что л е
(1) Так как PjSA/, то ле/.
(2) По леммам 10.3.12 и 10.5.8 Эгл есть р.н.м.
(3) Так как k >||М|| для мы имеем ^s&k, а зна­
чит, по леммам 10.3.12 и 10.5.8 преобразование л ^“-точно. □
10.5.17. Следствие. V?F(3n е £Г/)(^л специально).
Доказательство. В силу следствия 10.5.9 можно счи­
тать, что ST ^-свободно. Последовательное применение леммы
10.5.16 к различным мультиблокам &~х дает оригинальное р.н.м.
268 Гл. 10. Деревья Бёма

3~я для л е 3~/. Пусть z — одна из головных переменных мно­


жества ^"я, которая подставлена вместо головной переменной х
мультиблока 3~х. Тогда z-прямыми становятся не только блоки
в 3"х> но и блоки в — 3~х)я: ведь z — новая переменная. По­
этому 3~я специально. □
10.5.18. Определение. Множество 3~ дискретно, если не все
термы из SF ~-эквивалентны.
Будет показано, что каждое 3~ можно /-преобразовать в дис­
кретное р.н.м. С этой целью строится алгоритм, который дол­
жен разбивать блоки. Чтобы установить, что этот алгоритм за­
канчивает работу, определяется натуральное число d(M,7V),
указывающее глубину существенного различия между ВТ(М) и
ВТ(М).
10.5.19. Определение. Пусть М, АГ имеют различные ргрн. ф.
Тогда Следовательно, по теореме' 10.2.31 (см. также
упр. 10.6.9) Nlo°aN для некоторого а. Полагаем
d (М, М) = min {lh (а) | М N}.

10.5.20. Лемма. У/3~ (уМ Ф N е 3~) (Зл е 3~j) [3~л специ­


ально и d(Mn, М") = d (М, АО].
Доказательство. Пусть состоит из термов, имеющих
различные Рц-н. ф. Бёмовское преобразование л называется
^-консервативным, если (УМ Ае .,r/)(d (Мл, Мл) = d (М, М)).
Мы покажем, что каждая компонента преобразования л, которое
делает множество 3~ специальным, консервативна на подходя­
щей области, так что само л оказывается ^"-консервативным.
(1) Преобразование ( )"“ = ( )х, очевидно, .^-консерватив­
но, если x^FV(^). Следовательно, ^"-консервативно преобра­
зование, которое делает р. н. м. 3~ Х-свободным.
(2) Теперь будет показано,что преобразование( )" = ( )[х:=
= Р*1 является ^’.-консервативным. Пусть .И, ;Ve s£k, М ^ N.
Индукцией по k = d(BT(M)) + d(BT(M)) мы покажем, что
= М2).
Базис индукции k = 0. В этом случае М = tyi.zi, N — hy2.z2.
Если d(M, N) = 0, то М Ф N, откуда по лемме 10.3.12(ii) имеем
т. е. d(Mn, Nn) — 0. Если d(M,N)^0, то М ~ N, что
в нашем случае влечет М = N вопреки предположению.
Индукционный переход k > 0. Если d(M,N)~Q, то снова
d(Mn, Мя) = 0. Если d(M, М) =#= 0, то М ~ N. Мы можем счи­
тать, что М, N Х-свободны, и написать М = уМ{ ••• Мт,
N = yNi ••• Nm.
10.5. Отделимость в 1J исчислении 269

Случай 1. у = х. Тогда Х-свободные формы термов Мл,


ИМеЮТ ВИД Zk+ 1М" ■ • • MmZln + i ■ ■ ■ Zk, Zk+lNl • • • NmZm+l ■ zk
соответственно. Теперь получаем
d (Мл, Мя) = Max {1 + d (М", JV?) | 1 < z < m} ==
= Max {1 + d (Mh | 1 < i < m}
(по предположению индукции) =
= d(M, N).
Случай 2. у ф x. Нужный результат получается аналогично.
10.5.21. Лемма. (VM1 М2 е &")[Mi ~ М2=>(нл е 5^)
(d(< M?)<d(Mh М2))].
Доказательство. В силу леммы 10.5.20 можно считать,
что множество FT специально. Допустим, что Mi М2, Mi ~ М2.
Тогда Mi и М2 входят в один и тот же блок множества ST. За­
пишем этот блок в виде
Mi = Х]Л111 • • • Mim,
М2 = х{М21 • • • M2m,

Мп = XiMni • • • Mrtm.
Так как Mi ~ М2, то d(Mb М2) > 0, и потому для некоторого
z'o верно равенство
(1) d(Mi, M2) = d(Mna, M2z0)+l
и М1/о ~ М21-0. Для 1 С j С п пусть Мцо = Kbi ■■■ b^.yjLji • • -L/r/,
и положим <7 = max{<71, ..., qn}. В силу соглашения о перемен­
ных можно считать, что bi, bq не входят свободно в По­
ложим
F = Лй! • • • ambi ■ • • bq.aiabi ■ ■ • bpat ■ ■ ■ dia ■ ■ ■ am,
( )" = ( )bi---bq[xi-.= F].

Сначала покажем, что л e 3/Д. Ясно, что л = Пусть теперь


•F- имеет вид --

XjMu • ■ Мн. • • Mim Mu,= M)1 ■ ■ bq,.yiLn • • ■ Fir,

XiMni • • • Mnio ’ Мп1й = Kbi • ‘ ‘ bqn.ynLta • • ‘ Lnr1 n


270 Гл. iO. Деревья Бема

х2 ■ • • -V| (возможно) • • •

.г2 • • • х\ (возможно)

xk---

xk---

Так как 3~ специально, переменная Х\ активно входит только


в первый блок. Поэтому имеет вид

• LlrJjq^ + l ’ ’ ЬрМц • • Мц„ • • • Mim


У2Е21 • ■ bpM^i • • M2ia • • ■ M'2m

Уи^пЛ • ■ bpMnX Mnio ■ ■ • Mnm

->
x2 • • • F (возможно) ■ • b
->
x2 ■ ■ ■ F (возможно) • • b

->
• b
->
Xk • • b

Очевидно, что состоит из термов, имеющих Втрн. ф. Кроме


того, переменные у отличны от всех переменных х. Если, напри­
мер, У2 = Х2, то, так как 5Г специально, мы получили бы, что
у2 = Mi»„ — Mst вопреки выбору i0. Отсюда следует, что преоб­
разование л З^-точно. Чтобы доказать, что — р. н. м., нам
осталось только показать, что л-образ каждого отдельного блока
10.5. Отделимость в 7.1 исчислении 271

множества ЯГ состоит из термов, имеющих различные |3ц-н. ф.


Для первого блока это верно потому, что любой терм может
быть восстановлен по своему образу. Другие блоки также ос­
таются р.н. м., так как возможная подстановка [%i := F] ничего
не портит (блоки xi-прямые). Таким образом, действительно
ле
Наконец, мы покажем, что й(Мь Л4г) < <ДЛД, М2). Имеем
d(Mi, Мг) == 1 + (Ai/0, Z,2/„) (для некоторого /0) =
= Мщ) <d(Mlt М2) (в силу (1)). □
10.5.22. Следствие.
(V.M, Ф М2 е= ^) (Вл е= (М? Ф М2).
Доказательст во. Если АД ~ М2, то лемма дает преоб­
разование m е такое, что (/(Ж1, М"') < d(Mlt М2). Если
МГ' Ф №?> то все в порядке. В противном случае лемма снова
применима. Так как величина d(—,—) не может убывать бес­
конечно, мы получим в конце концов М? ф Мг- □
10.5.23. Предложение. ViF (3л е 3^}) (&"11 дискретно).
Доказательство. Пусть ЗГ есть {Мь ..., Мр}. Приме­
няя предыдущий результат не более чем р раз, можно найти
подходящее л (используйте точность применяемых преобразо­
ваний). □
10.5.24. Определение. Р.н. м. регулярно, если оно диск­
ретно, специально и все освободные переменные из являются
головными переменными (хотя они и могут встречаться в раз­
ных местах).
Примеры, (i) Множество {X[lx2S, x^SS, х^хрс^К.} регу­
лярно.
(ii) Множество {xJS, x2S(x!l)} не регулярно.
10.5.25. Лемма, V& (зл е регулярно).
Доказательство. В силу предложения 10.5.23 и след­
ствия 10.5.17 можно считать, что ЯГ дискретно и специально.
Пусть {xi........ хр}—список головных переменных термов из ST,
И пусть {у\........ Ут}— FV(^~) — {хЬ ..., Хр}. Положим
()"■ = (
где k\ столь велико, что s Тогда по лемме 10.3.12
Л1 е j и имеет меньше свободных неголовных перемен­
ных, чем Продолжая выполнять такие же преобразования,
мы получим в конце концов л <= /> такое, что множество
регулярно. □
272 Гл. 10. Деревья Бёма

10.5.26. Лемма. Пусть = ..., Мр}, и пусть k\, ...


fee!,. Тогда для некоторого ле/ имеет место равенство

Доказательство. В силу леммы 10.5.25 можно считать,


что регулярно. Запишем его в виде
Х|Л1ц ■ • • Мitm>

хрМр\ • ■ • MPmpt
где либо Mi, е А0, либо Ma^{xi, ..., хр} для всех i, j, таких
что 1 Д i 'С р, 1 j -A mt.
По теореме 9.4.22 существует равномерное ^/-решение
-А*
Ое SO для тех из термов Мц, которые замкнуты, т. е.
(1) Мг/еА°=^Мг/б=1.
Добавляя, если нужно, некоторое количество I, можно счи-
тать, что О = Oj, ..., Ог, где г > mt + 1 для всех i, 1 i р.
Теперь полагаем для 1 i р
L,l — 'kyx ■■■ Ут.-^У1О\ ’) • • ■ (ymiO\ Q\kij>

где q еще будет определено. Заметим, что


йог* =(Дог17) • ■ • (omio\~q\kjioml+x ■ ■ • огг*.
По лемме 9.4.9(H) имеется qx, такое, что SO-термы 0,0 раз­
* для q^qi, т. е. O]O\~q = I. Тогда для
решаются термами |~
1 < i -Д р
Liorq^LkiJom.+lom.+2... or\~q =
Окт^(От^ ... Orrq, если 0,
От.+1IIОт,+2 • • ■ Ог\~ч в противном случае
ч 1 1
^HiC4
для некоторого SO-терма //,, не зависящего от q. Снова приме­
няя лемму 9.4.9(ii), найдем q2, такое, что из q XSj q2 следует
Нi\~q = I для всех 1 i р. Теперь для q = max{q\, q2}

(2) L{O\~q = ],
(3) Mt]O\~q = 1 для My (= A° в силу (1).
10.5. Отделимость в W исчислении 273

Положим
( )" = ( )к -.= Ц] ■■■ [xp:=Lp]
(где число q из определения термов Li есть max(<7i, q2}). Тогда
л е / и ^~л есть

LPM> • • • M,mp’
где
(4) * tl==Mtj е Л°,
либо M либо Л1’;.^{L,, ■ ■ ■, Ер].

Поэтому
••• = ••• (44^.01-’)^ =
= iAj (в силу (4), (2) и (3)). □

10.5.27. Лемма. Имеются термы Р, Q, EgAJ(x), такие что


(VW, • ■ • Np е= Л» (х)) 3 V • • Ьр (J^PQE = ЛА), 1 < i < р.

Доказательство. Пусть Р = Xz.<zS+>, Q = (L0j) и Е =


= где S+ есть функция следования для цифр Чёрча, а
терм Е; ->еЛ°(х) со свойством
(V№ A® g)) (3/г <= N) (Ел + 1 __ = AQ

построен в замечании 9.3.13.


Пусть теперь даны N{, •••, NЛ°(х). Найдем ki, ...
..., такие что ELkt + ld = Nr Заметим сначала, что
Рп (Q) = (л)- Тогда для 1<л^р
Lkt + 1 ,PQE = Pki+i (Q) E = {(A + 1 j> E = E\kt + 1 j = Nt. □

Наконец-то обещанный результрт;


10.5.28. Теорема. Пусть &~ = {М1, ••• Л4р} Л°к — р.н.м.
Тогда
(VM, • • ■ А?(х)) (Вл е /) = {Nh ■ • •, Np}).
Доказательство. Применяем леммы 10.5.26 и 10.5.27. □
274 Гл. 10. Деревья Бёма

10.5.29. Следствие. Пусть Mi, •••, МР — раз личные


$г\-н.ф. Тогда
(Vtfp • • • лре л» Й) (3L е Л° Й)

[MiL = Nr л ■••Л мД = ЛгД

Доказательство. Применяем предыдущую теорему и


лемму 10.3.4(ii). □
Теперь получаются теорема 10.5.3 и теорема Бёма для X/.
10.5.30. Следствие. Пусть 2F = {7Ир • • •, Мп] s А°к состоит
из различных $г]-н.ф. Тогда ST 1-отделимо.
Доказательство очевидно, если рассмотреть пустой х.

10.5.31. Теорема. Если М, N е Л/ имеют различные ртрн. ф.,
то M^iN.
Доказательство очевидно. □

10.6. Упражнения
10.6.1 (i). Показать, что ВТе(М), определенное в 10.1.9, действительно
является частично помеченным деревом.
(ii) Показать, что | ВТ (Л4) | = |ВТе(Л1)|.
10.6.2. Доказать предложение 10.1.21.
10.6.3. Доказать, что для А=ВТ(М) имеет место FV(A)s FV(M).
10.6.4. Показать, что имеется А е Л^З, который похож на /./-дерево, но
А ф. Л/®, указание. Использовать рекурсивную неотделимость р. п. мно­
жеств {п | {п} (и) = 0} и {п | {«} (п) =А= 0}. Пусть{е} (га) = m о gz [Г (е, п,
г) Л U (z)=m] — нормальная форма Клини для частично рекурсивных функ­
ций. Пусть Ап е ® определено соотношениями
/• ВТ (zmx), если Т (п, п, m) Л U (т) — 0,
Ап = < ВТ (zmy), если Т {п, п, пг) Л U (т) =И= О,
'•ВТ(вг), если ут~~\Т (п, п, т).

Наконец, в качестве А берем дерево

Nxyz.z
10.6. Упражнения 2?5

10.6.5. Найти термы, деревья Бёма которых имеют й вид. [Ука-


зание. Не использовать теорему 10.1.23.]

ЛЛЛЛЛЛЛЛЛЛЛЛЛЛЛЛ

10.6.6. Построить дерево А е ЛЭ, такое, что оот](Л)^. I. [Указание.


Применить конструкцию, аналогичную использованной в упр. 0.6.4.]
10.6.7. Доказать, что
(1) ЭМ' (М М' С N),
(ii) м ’CZ’l <=>. ЭМ'У' (М М' С АГ N).
[Указание. Применить теорему 10.1.23.]
10.6.8. Пусть терм МеЛ таков, что для любого s е Seq
М1'5’1 —-» [Mrs*
(n) 1]neN-

Построить ВТ (Мг ( р).


276 Гл. 10. Деревья Ьёма

10.6.9. Показать непосредственно, что для любых термов М, N, имеющих


различные fJri-н. ф., верно За (М М).
10.6.10. Пусть = {S, I, С, К}. Построить бёмовское преобразование л,
такое что ЗгЯ = {К, I, S, S}.
10.6.11. Использовать технику выворачивания по Бёму, чтобы доказать
следствие 9.4.21.
10.6.12. (i) Показать, что если М, N е Л имеют конечные _1_-свободные
бёмовские деревья, то X |- Л4 = /V.
(ii) Показать, что ВТ (Л4) конечно и _1_-свободно т. и т. т., когда Л1
имеет н. ф.
10.6.13. Пусть F е Л° определяет в ЭИ (X) неконстантное отображение и
Мо — н. ф., принадлежащая его области определения. Показать, что в этом
случае х е ВТ (Fx) для всех х. [Указание. В противном случае для любых
М, N е= Л было бы верно ВТ (FM) = BT(FN), в частности ВТ (Fx) = BT(Afo).
Но тогда X.f— Fx = Мо в силу предыдущего упражнения. Поэтому F постоя­
нен на ЭЯ (X).]
10.6.14. Пусть {«} (т)—значение л-й частично рекурсивной функции на
аргументе т. Положим
f х, если {п} (п) = 0,
vn = < у, если («}(и) = 1,
(. _1_ в остальных случаях.
Показать, что
Axyz.z

v0 z

А
V1 z

A
u2 z
A
не принадлежит множеству Л.$.
10.6.15. (Коппо и др. [1978]). Построить множество — (Mj, Af2, М3},
которое неотделимо, а все его двухэлементные подмножества {Mt,M2},
{М2, М3} Ик{Л11, Л4з} отделимы.
*.
10.6.16 Для данного Л4еЛ определить место следующих множеств в
арифметической иерархии:
(1) {а ] ВТ (М) (а) ф},
(ii) {а | ВТ (ЛТ) («) = □_},
(iii) {а | ВТ (М) (а) ||},
(iv) {а | а е ВТ (М)}.
*.
10.6.17 (i) Написать программу, которая выводит ВТ(Л4) на экран,
когда М подается на вход ЭВМ.
(ii) Примените зуммер.
10.6.18. Построить М s Лк (соответственно еЛ;), такой что Л4(Хх.х)=>
= Llj и М (Гх.ххх) = l2j.
10.6.19. Показать, что следующая проблема алгоритмически неразрешима.
По данному Л1еЛл определить, имеется ли ЛГеЛ/, такой, что ВТ(ЛГ) =
= ВТ(М),
Часть III
Редукция

Берри Хиндли (1978) Клоп


(фотография) (фотография
автора, 1978) Б. Холткампа, 1976)

Леви Мичке (1972)


(фотография
автора, 1976)
Как мы видели, редукция полезна при анализе конвертируе­
мости. Для нескольких расширений системы /. имеются поня­
тия редукции /?, соответствующие этим системам: нМ—
=N<=>M =rN и R обладает свойством Чёрча — Россера. Это
дает анализ в терминах теории доказательств: если М, N не
имеют общего R-редукта, то = В гл. 11 и 15 эти
CR-свойства доказываются еще раз (по-новому) для 0, а также
и для других понятий редукции. В гл. 11 доказываются и дру­
гие важные теоремы о 0-редукции (конечность разверток, кон­
сервативность над М-исчислением, стандартизация).
В гл. 13 вводится понятие редукционной стратегии. Такие
стратегии часто полезны в случаях, когда надо показать, что
два терма не имеют общего редукта. Мы пользуемся тем, что из
х ф. FV(М) и
(1) V/V'[У-^У'^хе FVW'j]
следует, что М, N не имеют общего R-редукта (так как перемен­
ные обычно не могут создаваться в процессе редукции). Чтобы
установить (1), нужно изучить редукционный граф терма М, а
он зачастую весьма запутан. Однако (1) верно, если оно выпол­
няется на «кофинальном» редукционном пути в GR(M). Такой
путь строится несколькими редукционными стратегиями.
В гл. 12 изучается эквивалентность редукций. Это понятие
было введено Леви [1978] в связи с поиском оптимальных ре­
дукционных стратегий.
Глава 14 показывает, что Х-исчисление «локально сильно
нормализуемо». У этого результата имеются различные прило­
жения.
Дополнительную информацию о редукциях можно найти у
Клопа [1980].
Глава 11
Фундаментальные
теоремы

Редукция была введена для анализа p-конверсии. В части II


мы уже привели несколько приложений теоремы Чёрча — Рос­
сера и теоремы о стандартизации. Эти и другие важные резуль­
таты о p-редукции будут доказаны в настоящей главе.

11.1. Теорема Чёрча — Россера


Имеется много различных доказательств теоремы Чёрча —
Россера. В § 3.2 было дано короткое доказательство, принадле­
жащее Тейту и Мартин-Лефу. В настоящей главе будет изло­
жено несколько более длинное, но более прозрачное доказатель­
ство. Сравнение этих двух доказательств будет проведено в§ 11.2.
Чтобы доказать, что —»(т. е. —*- р) обладает свойством
ромба, было бы достаточно (в силу леммы 3.2.2) доказать, что
этим свойством обладает Последнее, однако, не имеет места.
Следующая лемма проливает некоторый свет на ситуацию.
11.1.1. Лемма, (i) Отношения —> и не обладают свой­
ством ромба.
(ii) Отношение обладает слабым свойством ромба.
Доказательство, (i) Пусть соотношение R-+R' есть
II -> I. Рассмотрим редукции
(Kx.xx)R-^- RR, Q.x.xx)R-+(}.x.xx)R'.

Общим редуктом был терм R'R', но до него не добраться от


RR за один шаг. Следовательно, отношение ->• (как и его реф­
лексивное замыкание) не обладает свойством ромба.
(ii) Допустим, что М-+М1, М--М
* 2, и построим М3, такой,
что Мэ, М2-»М3. Пусть (A,): i= 1, 2, причем
А, = (kXt.Pi) Qi. Возможные относительные расположения редек-
сов А] и А2 в М приведены в следующей таблице:
280 Гл. It. Фундаментальные теоремы

(1) Д] Я Д2=0 (т. е. Д); Д2 дизъюнктны)


(2) Д1=Д2
3.1. Д1СР2
(3) Д] <= д2
3.2. Д,ср2
4.1. Д2 с Pi
(4) Д2 с= Д,
4.2. Д2 с Qt

Пусть д; ==P.[xz ;=<?.].


Случай 1. Имеем
Л1 • Д1 • • • Д2 • • •,
м^ ... д;... д2...,
М2^ Д, ••• Д'
Тогда берем
м3=---д;---д'---.
Случай 2. Имеем Mi = М2, так что можно взять М3 s Mi.
Случай (3.1). Имеем М= ••• ((Кх2. Д1 --ОФг)где
• •• Д1 ••• = Р2,
Mj = • • ■ ((Лх2. • • • Aj • • •)Q2) ■ •
М2= ••• (• • • Д1 • • •) [х2 := Q2] •••.
Берем
М3 • Д] - • •) [* 2 := Q2] • • ■ •
Тогда соотношения Mi~>M3 и М2^~М3 очевидным образом
следуют из подстановочное™ 0-редукции.
Случай (3.2). Имеем М= • •■ ((Хх2.Р2) (••• Д] •••)) •••, где
••• Д1 ••• = Q2,
м1^---((лх2.р2)(... д;--
м2^ ••• (Р2 [х2 :=(•■• Д, •••)]) •••.,
Берем
М3= (Р2[х2 :==(••• Д[ •••)]),
и соотношения М1->Л13 и .И2—хМ3 очевидны в силу замечания
3.1.7(i).
Случаи (4.1) и (4.2) можно рассмотреть аналогично слу­
чаям (3.1) и (3.2). □
Ввиду существования бесконечных редукционных цепочек, из
леммы 11.1.1 не следует непосредственно, что 0 обладает свой­
И.1. Теорема Чёрча — Россера 281

ством CR, т. е. что —»► удовлетворяет лемме о ромбе (см.


упр. 3.5.10). Свойство ромба для отношения получается, од­
нако, из следующей «леммы о полосе», которая усиливает
лемму 11.1.1:

Идея доказательства этой леммы такова. Пусть М М{.


Если мы будем следить за тем, что происходит в А во время
редукции М —» М2, то, сворачивая все «остатки» редекса А в Л42,
мы получим искомый редукт М3. Чтобы вести необходимую от­
четность, удобно^ помечать некоторые редексы. Для этого доста­
точно присвоить индекс первому ^.-символу такого редекса.
(В целях некоторых дальнейших приложений мы будем разре­
шать несколько индексов.) Поэтому вводится следующее вспо­
могательное расширение множества Л.
11.1.2. Определение, (i) Л' — множество слов в следующем
алфавите:
t>0, fi, • • • — переменные,
Л, Ло, . — лямбды,
( , ) — скобки.
(ii) Множество Л' вводится следующим индуктивным опре­
делением:
хе Л',
М е Л' => (Л.Х.М) е Л',
М, .Ve А'^ (ARV) €= Л',
М, N е Л'=>((Х;х.М) М) е Л' для всех isN

(где х обозначает произвольную переменную).


(iii) Если М е Л', то терм ) М | е Л получается из М путем
вычеркивания всех индексов. Например, | (Мх.х) ((Л2х.х) (Ах.х)) | еэ
^l(ll).
Элементы множества Л' называются Х'-термами. Мы исполь­
зуем для них те же соглашения, что и для Х-термов. Понятие
редукции р следующим образом расширяется до понятия редук­
ции р' на множестве А'.
282 Гл. 11. Фундаментальные теоремы

11.1.3. Определение, (i) Подстановка определяется на Л'


очевидным образом. В частности,
((М.М) N) [z ; = L] = (Ы.М [z: = L]) (IV [z: = L]).

(ii) Понятие редукции р7 на Л' определяется равенством


0Z = Poll Pi, где Ро и pi определяются следующим правилом свер­
тывания:
р0:(М-М) М[х:=Д],
Pi :(Лх.Л4) N —► М [х := Д],

где i е N и М, N е Л'.
(iii) Как указано в замечании 3.1.7(H), понятие редукции р7
порождает отношения ->р/ и на множестве Л7:
имеет место т. и т. т., когда для некоторого (индексированного)
контекста С[ ] с одной дырой и некоторой пары (Р, Q)e07
M=sC[P] и Ns=C[Q].

—— это рефлексивное транзитивное замыкание отношения



В следующем пункте понятие редукции р0 будет играть важ­
ную роль. В настоящем пункте множество Д' и понятие р7 можно
было бы определить проще (используя ровно один индекс).
11.1.4. Определение. Пусть М е Л7. Определим терм ф(М)е Л
индукцией по построению терма М:
Ф (х) ss х,
< Ф (PQ) = ф (Р) ф (Q), если Р Ktx.P',
* Лх.ф (Р),
Ф (Лх.Р) =
Ф ((Хгх.Р) Q) ss ф (Р) [х := ф (Q)].

Иными словами, ф сворачивает все редексы, имеющие ин­


декс (начиная изнутри; в п. 11.2 будет показано, что другие спо­
собы сворачивания всех индексированных редексов всегда при­
водят к одному и тому же результату).
11.1.5. Обозначения. Соотношения |Л1|е=Д и ф(Л4)эД бу­
дут обозначаться соответственно через
M-~>N и M->N.
I I «>

Это удобно для схематического представления утверждений.


11.1. Теорема Чёрча — Россера 283

Лемма.
t

М’.К'ел’,

М’.Х'еЛ',
M,Ne&'

Доказательство, (i) Допустим сначала, что М —N —


одношаговая редукция. Тогда N получается сворачиванием не­
которого редекса в М, a N' можно получить сворачиванием со­
ответствующего редекса в М'. Нужное утверждение в общем
случае получается по транзитивности.
(ii) доказывается аналогично, но проще: нужно просто вы­
черкнуть все индексы из редукционной цепочки, ведущей от М'
к N'. □
11.1.7. Лемма, (i) Пусть М, N е А'. Тогда
го(Л1[х := A]) ss <р(А4) [х := <р(А)].
м. Ii' У
00
М,Ы£Л'.

<р(м) р

Доказательство, (i) Воспользуемся индукцией по по­


строению терма М, применяя лемму о подстановке в случае
М s= (kiy.P)Q. Ввиду соглашения о переменных 2.1.13 можно
считать, что условия леммы о подстановке выполнены.
(ii) получается индукцией по порождению с исполь­
зованием (i). □
11.1.8. Лемма.

МеЛ',

(МХЕЛ).
284 Гл. 11. Фундаментальные теоремы

Доказательство проводится индукцией по построению


терма М. □

11.1.9. Лемма о полосе.

М,М',N,N' 6 Л.

Доказательство. Пусть М~—результат сворачивания


вхождения А редекса в М. Пусть Me А' получен из М путем
индексирования Л (т. е. приписывания ему некоторого индекса).
Тогда | М | = М и ф(Л1)==ЛГ. В силу лемм 11.1.6(i), 11.1.7(ii)
и 11.1.8 мы можем составить следующую диаграмму:

которая и доказывает лемму о полосе. □


11.1.10. Теорема Чёрчл ■—Россера. 0 обладает свойством СР.,
т. е.

е л.

Доказательство. Если М М', то


М Мп н= М'.
11.2. Конечность разверток 285

Поэтому свойство ромба следует из леммы о полосе и простого


обхода диаграммы

В гл. 3 мы доказали, что рц обладает свойством CR. Поучи­


тельно заметить, что доказательство, данное для р, не обоб­
щается непосредственно на 0T] (см. упр. 11.5.4).

11.2. Конечность разверток


Основная теорема этого пункта утверждает, что для любого
/И е Л так называемые развертки (особый вид редукционных
цепочек, начинающихся с М) всегда конечны. Эта теорема (обо­
значаемая через FD) имеет важные следствия, среди которых
теорема Чёрча — Россера, консервативность ограниченной тео­
рии и теорема стандартизации.
FD была впервые доказана Чёрчем и Россером [1936] для
/./-исчисления с целью доказать CR-теорему для этой теории.
Для полного Z-исчисления FD была доказана Шроэром [1965]
и независимо Хайландом [1973] и Хиндли [1978]. Приводимое
ниже доказательство взято из работы Барендрегта и др. [1976]
и представляет собой модификацию доказательства Хайланда.
Наша формулировка FD — это просто
SN(po).
Иными словами, редукции термов из Л', сворачивающие только
индексированные редексы, всегда конечны. Часто эта теорема
формулируется в терминах «остатков». Удобно ввести эту тер­
минологию.
11.2.1. Лемма (о проектировании). Пусть о' есть -редук­
ция, начинающаяся термом М' е А7:
/ /
у А1
а :М Л40 >(у/И1
286 Гл. 11. Фундаментальные теоремы

Тогда последовательность
Ы |<|
|2И;| —...
является ^-редукцией, начинающейся с |2И'|.
Доказательство очевидно — нужно просто стереть все
индексы. □
Следующий результат — усиление леммы 11.1.6(i).
11.2.2. Лемма (о подъеме). Пусть о есть fi-редукция, начи­
нающаяся термом МеД. Тогда для каждого М' е Д', такого,
что |ЛГ| = М, имеется -редукция о', начинающаяся с М' и та­
кая, что | о' | == а.
Доказательство очевидно: нужно приписать подходя­
щие индексы термам, участвующим в редукции о. □
Пусть — некоторое множество редексов, входящих в .
Х-терм М. Если мы интересуемся тем, что происходит с тер- .
мами из во время редукции, то мы можем поднять М в мно­
жество Л', индексируя редексы из множества
11.2.3. Определение, (i) Пусть МеЛ. Тогда запись ДеМ
означает, что Д — вхождение редекса в М.
(ii) Пусть — некоторое множество вхождений редексов.
Тогда запись <= М означает, что (VA е £Г) (Д <= М).
(iii) Пусть 8Г Е М е Л. Тогда через (М, гГ)еЛ' обозна­
чается индексированный терм, получаемый из М путем приписы­
вания индекса 0 всем вхождениям редексов из 3~. В этих обо­
значениях МеЛ отождествляется с термом (М,0)еЛ'.
Пример. Пусть М = (ly) (ly) (|z). Тогда в М имеется три вхож­
дения редексов (первое и второе вхождения (It/) и вхождение
(|z ). Пусть = (второе It/, lz). Тогда ST S М и (М,&") =
= (Лх.х)у ((Хох.х)у) ((Хох.х) z).
11.2.4. Определение. Пусть М, N е Л и <т :М —» N.
(i) Пусть s М. Множество остатков (редексов из множе­
ства) относительно о (обозначаемое через опреде­
ляется следующим образом.
Пусть М'= (М,£Г). Поднимая о до o': получаем
|М'|==М, см. рис. 11.1. Очевидно, что p'-редукции не создают
новых индексов, поэтому N' имеет в качестве индексов только О
и, значит, N' (N, для некоторого
Теперь полагаем ^"/о =
(ii) Если Д е М, то остатки Д в N относительно о — это эле­
менты множества {Д}/о, обозначаемого также через Д/а,
11.2. Конечность разверток 287

Остатки можно определить и для p'-редукций. Пусть Е


S Al'Д'. Тогда
&•'/с'={&'£= N'\|Д'|(=|£-'|/|а'|}.
Интуитивные основания, лежащие в основе определения
остатков, таковы. Если дана редукция ст, мы помечаем некото­
рое множество редексов в исходном терме этой редукции и про­
слеживаем это множество во всей редукционной цепочке. Так

б’ „N1 =№,?')

М
* ------- g
Рис. 11.1

как метки не затрагивают саму редукцию, приводимые ниже


леммы 11.2.5, 11.2.6 и 11.2.8 очевидны.
11.2.5. Лемма. Пусть М, N е Л, ст: М -» N и = (Дь ..., An}s
<=М. Тогда ST/о = Д1/ст U ••• U Л«/°- □
11.2.6. Лемма. Пусть г: N-^ L и ТГ s М. Тог­
да lF/о + т = iF/ст/т. □
В силу лемм 11.2.5 и 11.2.6 остатки в общем случае опреде­
ляются остатками одного редекса относительно одношаговой ре­
дукции.
11.2.7. Примеры. Пусть Д н= (Аа,а(1
*)) (*&)• Рассмотрим сле­
дующие одношаговые редукции:
(i) (Кххх) аД -► ааД,
(ii) (Ах.хх)Д->ДД,
(iii) (Аху)Д->//,
(iv) (Ахх) Д—>(Ax.x)(xb(lx)),
(v) (Ах Д) Р -> (Аа а (IP)) (Pb),
(vi) Д( -» Аа ах) (xb).
В (i) остаток редекса Д (относительно данной редукции)—
это сам терм без изменений. В (ii) Д имеет два остатка. В (iii)
и (iv) Д не имеет остатков. В (v) остатком Д является
Д[х:=Р]. В (vi) остатком Д является (Ха.ах) (xb).
Следующая лемма показывает, что можно одновременно на­
ходить остатки нескольких редексов, если дать им различите
индексы и прослеживать эти индексированные редексы.
288 Гл. 11. Фундаментальные тебремы

11.2.8. Лемма. Пусть o': М' —N', М', N' е А1 и ст = | a' j.


Положим для Р <= А'
| Р |, = {Д | Д е Р есть i-редекс}.
Тогда | М’ | ,/ст = | N' |,.
11.2.9. Следствие. Пусть a:M-^»N,M, N е А, и Пусть Ао,
Д1 е М — различные вхождения редексов. Тогда (Д0/о) f| (Ai/o) =
= 0.
Доказательство. Пусть М' получается из М путем при­
писывания индекса i редексу Д/. Тогда нужный результат до­
стигается путем подъема редукции ст. □
Важно отметить, что Д/о зависит от о, а не только от пер­
вого и последнего терма из ст.
11.2.10. Пример (Леви). Рассмотрим |(|х)->|х. Эта одноша­
говая редукция может быть получена следующими двумя спосо­
бами:
ст^ I (|х)|х, ст2:1 (lx)1х.
Теперь Ix/cti = 0, но 1х/ст2 = {|х}. Эта ситуация изучается
в гл. 12.
Если /И и мы имеем в виду какую-то определенную ре­
дукцию, начинающуюся с М, то можно говорить об «остатках
редексов из З2"», не указывая этой редукционной цепочки.
11.2.11. Определение, (i) Пусть /ИеД и ЗГ s М. Развертка
индексированного терма (М,&~)— это редукционная цепочка
До Д1
ст: М = Л10 Mi ,
такая, что каждый редекс Д, е М,- является остатком некоторого
редекса 'из (относительно (До) + ••• +(A)i_i).
(ii) Говорят, что редукционная цепочка ст: —» А является
полной разверткой терма (М,ЗП), и пишут ст: (М, если
cpl
ст есть развертка (Л4, З2") и ^"/ст = 0.
(iii) Развертка терма М — это развертка индексированного
терма где м — множество всех вхождений редек­
сов в М.
(iv) M-»N означает, что N встречается в некоторой раз-
dev
вертке терма М.
Развертки и |30-редукцни соответствуют друг другу в следую­
щем смысле.
11.2.12. Лемма, ст есть развертка индексированного терма
(Л4, £F) т. и т. т., когда она поднимается до редукционной це­
почки о', начинающейся с (Л1, ^") и являющейся $0-редукцией.
11.2. Конечность разверток 2Й9

Д о к а з а I е л ь с т в о. Заметим, что о сворачивает только


остатки редексов из ЗК т. и т. т., когда о' сворачивает только
индексированные редексы. □
Теперь мы докажем, что все развертки конечны. В силу лем­
мы 11.2.12 достаточно показать, что р0 сильно нормализуема.
Чтобы приобрести некоторую интуицию, рассмотрим редук­
цию
(Лох.хх) (Лх.хх) -> |j„ (Лх.?х) (Хх.хх) е p0-NF.
Второе вхождение (Хх.хх) не может иметь индекса, так как
оно не является первой частью никакого редекса. Причина того,
что [3-редукции могут быть бесконечными, — в возможности
«создания» новых редексов. Если сворачиваются только старые
редексы (т. е. их остатки), редукция всегда обрывается. Именно
это и будет теперь установлено.
Идея доказательства: каждому М е Л' сопоставляется мно­
жество специальных норм (положительных целых чисел), та­
кое, что
N1 ->р, N => по каждой специальной норме для М можно найти
строго меньшую норму для N.
Эти специальные нормы вводятся с помощью вспомогатель­
ной системы Л' *. Доказательство заканчивается теоремой 11.2.21.
11.2.13. Определение. Л7* — множество взвешенных Х'-тер-
мов — определяется следующим образом.
хп е Л7‘ для любой переменной х и любого п е N, п > 0:
М Л7* => (Лх.Л1) е Л7*,
М, N €= A'^(MN)^ Л7*,
М, N е А' * =>((Л.,х М) N) <= Л7‘ для всех i е N.
Целые положительные числа, приписанные переменным, на­
зываются весами. Заметим, что взвешенными могут быть только
переменные, не стоящие сразу после знака К.
Каждый терм М е А' * можно рассматривать как пару
M = (Mo,/), где Х7-терм Мо получается из М вычеркиванием
всех весов, а I — взвешивание, т. е. отображение, сопоставляю­
щее некоторое положительное целое число каждому вхождению
переменной, не стоящему сразу за X.
11.2.14. Определение. Понятие редукции р0 распространяет­
ся на Л7* следующим образом. Сначала определим подстановку
* соотношением х"[х := ,'V] = Л? и обычными остальными
на А'
правилами. Затем определим 3* правилом свертывания:
Р’: (А,;х.Л4) N -> Л4 [х: — W] для М, N е Л'
*.
Ро обычным образом порождает отношения

Ю X. Барендрегт
290 Гл. 11. Фундаментальные теоремы

Заметим, что при 0^-редукции, как и при р0-редукции, можно


сворачивать только индексированные редексы.
11.2.15. Определение. Пусть М^А' .
* Для N cz М положим
||1V||' = сумма весов, встречающихся в N.
Заметим, что ||А^11/ > 0.
11.2.16. Определение. Пусть М = (А40, I) е А'*. Взвешивание
I называется убывающим, если для любого PJ-редекса (Ktx.P)Q
из М
llx|]' >||Q||' для всех вхождений х в Р.
Пример. Терм (Z,x.x6x7) (7.х.х2х3) имеет убывающее взвеши­
вание, а терм (7.,х.х4х7) (7.x.х2х3) не имеет.
11.2.17. Лемма. Любой терм МеЛ' имеет убывающее взве­
шивание.
Доказательство. Перенумеруем (начиная с номера 0)
все вхождения переменных в М. справа налево. Назначим п-му
вхождению индекс 2". Пример: если /И = ху ((7.zz.z)(xx)), то
в результате индексации получится
х16у8( (Xzz.z4) (х2х]));
так как 2" > 2'!~1 + ••• + 2+1, получилось убывающее взве­
шивание. □
Понятие остатка осмысленно и для редукций термов из Л'
*.
Это понятие неформально используется в следующем доказа­
тельстве.
11.2.18. Лемма. Пусть М * = (44, /)<= А'
*, взвешивание 1
убывающее и
к М’-> .N' = (N, Г).
Ро
Тогда (1) 1144
*11' >Ш1';
(ii) 1' — убывающее взвешивание.
Доказательство. Пусть Ai = (KjXi.Pi)Qi—редекс, сво­
рачиваемый при редукции tN
*.
Ро
(i) Все вхождения xi в Pi заменяются на Qj. Так как
llxill' >HQ1H', это означает, что сумма весов уменьшается. Это
верно и в случае, когда Pi вообще не содержит xi, так как тогда
исчезает Qb a ||Qil|' > 0-
(Н) Чтобы проверить, что взвешивание Г убывающее, возь­
мем произвольный р‘- редекс Ао = (7,/xo.Po)Qo в N
*. Так как терм
До индексированный, он является остатком некоторого редекса
Д2 из Л4 *, который мы запишем в виде А2 = (7v;X2.P2)Q2.
11.2. Конечность разверток 291

Возможные относительные расположения А! и А2 перечис­


лены в таблице из леммы 11.1.1.
Нетривиальны только два из этих случаев, в которых не­
трудно проверить, что для х0 из Ро имеет место ||хо1|' >IIQoll'-
Случай 3.2. Ai cz Q2. Тогда
Л-f = ... (XjX2,P2) ••• ((Mi.Pi)Qi) •••
____________________________ 2

... (Л7х2.Р2) . . . Pj [Xp — QJ ...


-----------------------------о
где
2 о

* имеет убывающее взвешивание, мы получаем


Так как M
(1) ll(Mi.Pi)Q1|r>||Pi[x1:=Qi]||'
и для всех вхождений х2(=х0) в Рг( = Ро)
(2) ||х2||'
Из (1) следует, что ||Q2||' > IIQoll', откуда в силу (2) ||х0|Г >
>IIQoll'-
Случай 4.1. А2с:Р1. Имеем
• • (Мь ... X] ... ((А,уХ2.Р2) Q2) ...

.. . Qi . .. ((Х/Х2.Р2 [%! :—QJ )(Q2 [Х| :— QJ)) ...

где - Р> И (Л;хо.ро) Qo = (Л/Х2 Р2 [хх := Qi] (Q2 [хх := QJ).

* имеет убывающее взвешивание, то


Так как Л1
(1) ||^11Г > HQiir Для всех вхождений х{ в Р{,
(2) || х2 |Г > || Q21|' для всех вхождений х2 в Р2.
Из (1) следует, что
IIФгП'^IIQ2[-^1 : = Qi] IIх (где = имеет место, если Xi^FV(Q2))’
и потому из (2) получается, что
11х2||' >IIQ2[xi Qi] ||' для всех вхождений х2 в Р2[xi: = Q,],
так как в силу соглашения о переменных можно считать, что х2
не входит в Qj. □
10*
292 Гл. 11. Фундаментальные теоремы

11.2.19. Лемма. Пусть М, N е А' и М* = (М, /)е А'


.
* Если
М -*■₽„ N, то для некоторого взвешивания Г
/'):
₽о
* = (M,I)
M PJ (Ц,Г)
---------- »J1
I
II

Доказательство. Как и в доказательстве теоремы


11.1.6(i), копируем редукцию М -»р„ N на взвешенных термах. □
11.2.20. Предложение. Понятие редукции р0 сильно нормали­
зуемо на А'.
Доказательство. Предположим, что
сг: М ^Мо->р„М1 ->₽. • • •
есть ро-редукция, начинающаяся термом М е А'. По лемме
11.2.17 для терма М имеется убывающее взвешивание I. Но
тогда по лемме 11.2.19 о индуцирует редукцию
<Л-ЛГ = (М0, Л)
По лемме 11.2.18 все взвешивания Ц убывающие. Поэтому снова
по той же лемме
||(Л10, /)||>|) (ЛЛ,Л)||> - .
Значит, о*, а следовательно, и о, должна быть конечной. □
11.2.21. Теорема (FD: конечность разверток). Пусть МеА.
Тогда все развертки терма М конечны.
Доказательство. Применяем предложение 11.2.20 и
лемму 11.2.12. □
11.2.22. Следствие. Пусть М е А. Тогда
(i) для любого ТГ s М любая развертка терма (М, мо­
жет быть продолжена до полной развертки-,
(ii) множество конечно}.
dev

Доказательство, (i) По предыдущей теореме у терма


имеется развертка максимальной длины. Она — полная,
(ii) Любой терм имеет лишь конечное число одношаговых
редуктов. Поэтому нужный результат следует из леммы Кёнига.
(Доказательство теоремы позволяет вычислить границу для мак­
симальной длины развертки терма М (см. упр. 11.5.8), поэтому
11.2. Конечность разверток 293

приведенное рассуждение может быть сделано конструктив­


ным.) □
Теперь будет доказано, что все полные развертки терма
(М, ^~) заканчиваются с одним и тем же результатом. Приме­
нительно к ро это означает, что р0-н. ф. единственна.
11.2.23. Лемма, (i) р0 обладает слабым свойством Чёрча —
Россера.
(ii) Точнее, пусть М, ЛД, М2 е А' и
т: At-► р0 Af2-
Тогда имеются ^-редукции
М2 АД, т'; М\ —/И3,
такие, что о' (соответственно Д) получается сворачиванием
остатков Д1/т (соответственно А2/о) одного за другим слева на­
право.
(iii) Аналогичное утверждение для р'.
Доказательство, (i) устанавливается аналогично лем­
ме 11.1.1 (ii) (с проверкой согласованности индексов).
(ii) Это — просто информация, накопленная в процессе до­
казательства п. (i).
(iii) столь же просто. □
11.2.24. Следствие, (i) Понятие редукции р0 на множестве
А' обладает свойством Чёрча — Россера.
(ii) Каждый терм М' е А' имеет единственную р0-«. ф.
Доказательство, (i) получается из предыдущей леммы
и предложений 11.2.20 и 3.1.25.
(ii) получается из (i), предложения 11.2.20 и следствия
3.1.13. □
11.2.25. Теорема. (FD!) Пусть М е= А и s М.
(i) Все развертки терма М конечны.
(ii) Любую развертку терма (А4, можно продолжить до
полной развертки этого терма.
(iii) Все полные развертки терма (М, оканчиваются од­
ним и тем же термом.
Доказательство, (i) и (ii) получаются из теоремы FD
и ее следствия.
(iii) получается из следствия 11.2.24 и леммы 11.2.12. □
Следствие 11.2.24 (ii) позволяет нам дать следующее опреде­
ление.
11.2.26. Определение. Пусть М'еА'. Тогда СрЦМ') обо­
значает единственную Ро-н. ф. терма М'.
294 Гл. 11. Фундаментальные теоремы

Это определение будет часто применяться в случае, когда


М' = (М, 3~) для некоторого S М.
Примеры. Пусть М = {кхх) ((Л,хх|) I), и пусть Ai = М, A2s^
= (/a.-v|) I — первый и второй редексы в М. Тогда
Cpl (М, {Дь Д2}) = II,
Cpl (М, (AJ) = (U.xl) I,
Cpl GW, {Д2}) = (U.x)(||).
Теперь мы дадим другое доказательство теоремы Чёрча —
Россера для р с использованием FD1. Этот метод неявно содер­
жится у Карри и др. [1958].
11.2.27. Определение. Для М, N е А будем писать
M-^N,
1

если Ср1(А4, 1F) = N для некоторого 3~.


Здесь не возникает недоразумений с понятием —э» из опре­
деления 3.2.3: оба отношения совпадают — см. упр. 11.5.3.
Пример. Пусть ® = кх.хх, и пусть R— некоторый редекс со
сверткой R'. Тогда
aR-^-RR, a>R—»R'R', aR-^aR',
i i i
но не ayR-^-RR'.
i

11.2.28. Лемма. (i)-»p— транзитивное замыкание отноше­


ния —».
1
(ii) Отношение обладает свойством ромба.
1
Доказательство, (i) доказывается так же, как лемма
3.2 7.
(ii) Положим М3 = Cpl(M,^FiU^"2)- Тогда М^-М3.
Соотношение М —» AR получается в результате (частичной)
1
развертки терма (М, (J ^2) • Поэтому, разворачивая пол­
ностью остатки редексов из 3^\ (J ^~2 в Mi (относительно данной
редукции М —» Mt), мы получаем Mi~»M3 в силу FD!. Анало­
гично М2 М3, и получился ромб; см. рис. 11.2. □
I

11.2.29. Следствие, (3 обладает свойством CR.


Доказательство получается ссылкой на леммы 11.2.28
и 3.2.2. □
11.3. Теорема о консервативности для 1.1 295

Доказательства теоремы Чёрча — Россера, данные в § 3.2 и


§ 11.1, родственны только что приведенному доказательству.
В § 3.2 используется отношение —совпадающее с отно-
1
щением, определенным в настоящем пункте (см. упр. 11.5.3).
Однако там не обязательно знать теорему FD!, так как воз­
можно непосредственное индуктивное определение.

Рис. 11.2

В § 11.1 отображение <р: Л'->Л таково, что ф(Л1,£Г) =


= Ср1(М,^"); см. упр. 11.5.1. Поэтому и доказательство, дан­
ное там, совпадает по существу с доказательством из настоя­
щего пункта.

11.3. Теорема о консервативности для 17


В этом пункте будет доказана теорема 9.1.5, утверждающая,
что для М е Ai
М имеет н. ф. => М сильно нормализуем.
Для Л1 <= Лк это неверно: терм К1Й имеет н.ф., однако
со (К1Й). См. также пример 9.1.7.
Теорема о консервативности заимствована у Чёрча [1941].
Приводимое ниже доказательство принадлежит Барендрегту
и др. [1976].
Пусть Л[ = [Л4 е A' j | М | е Л;].
11.3.1. Леммэ. Пусть терм М е А) содержит вхождения рв-
дексов А], Д2, из которых индексировано только Ab Рассмотрим
редукцию М —Тогда Д2 имеет хотя бы один остаток в N
{который тоже не индексирован).
Доказательство. Так как М s Л], то Ai является
^■редексом. Следовательно, единственный редекс, исчезающий
(т. е. не имеющий остатка) в редукции М N, — это ДР □
Лемма 11.3.1, разумеется, ложна для М е А'к: достаточно
рассмотреть (Лох|) Д2 ->I.
296 Гл. 11. Фундаментальные теоремы

11.3.2. Следствие. Пусть М' ^==(М, е А'р и пусть а: М' ->


—> Ро N' == (A, g"'). Пусть А — вхождение редекса в М', причем
АфЗГ. Тогда A/о #= 0.
Доказательство. Пусть о имеет вид
М' -+ ₽0 А1| -> р0 . • ■ -* р0 N'.
По лемме 11.3.1 редекс А имеет остаток А! в М{ (и этот оста­
ток не индексирован), А[ имеет остаток в М'2 и т. д. Следова­
тельно, по лемме 11.2.6 все доказано. □
11.3.3. Лемма. Пусть Af'==(Al0, и
(i) Если А есть [^-редекс, т. е. А индексирован, то
М’_ А . N-
I Ро >
cpl I ХСР1
I
м
(iii) Если А есть ^-редекс, т. е. А не индексирован, то
Мг & N'
1---------
I ;
cpl I I cpl

Доказательство, (i). Пусть М s Cpl(Al'). Так как А


индексирован, то Ае^", и потому М' есть (неполная)
развертка терма М'. Следовательно, из FD! (теорема 11.2.25)
следует, что также и М = Cpl (А').
(ii) Так как А не индексирован, то А ф Заметим, что
М'Л. N' -» N
cpl

— полная развертка терма М" = (Al0, ^F(J{A}). Следовательно,


в силу FD! редукция М'М может быть продолжена до пол-
cpl
ной развертки М" в терм N. Поэтому о:А1—»рА, где о — пол­
ная развертка остатков редекса А в М (относительно некото­
рой редукции М'->М). Поскольку в силу следствия 11.3.2 ре­
декс А имеет по крайней мере один такой остаток, мы получаем
M-^.N. □
¥-0Р
11.3. Теорема о консервативности для 1.1 297

11.3.4. Теорема консервативности (для >./). Пусть М<^А; и


M-+-N. Тогда оо (ЛТ) => оо (А) .
Доказательство. Допустим, что М -> N получается сво­
рачиванием редекса А. Пусть
о: М = Мо->Л4]-> •••
— бесконечная редукция, начинающаяся термом М. Пусть
= {А}. В силу лемм 11.2.2 и 11.3.3 мы можем составить диа-

— бесконечная редукция. По лемме 11.3.3 равенство Ni Nt+l


имеет место только в случае, когда редукция
(Mit STi) -► р/ (Мi+i,
является ро-редукцией.
Но в силу предложения 11.2.20 это может произойти подряд
лишь конечное число раз. Поэтому £ — бесконечная редукцион­
ная цепочка. □
11.3.5. Следствие. Если терм МеЛ/ имеет н.ф., то он силь­
но нормализуем и граф G(M) конечен.
Доказательство. Пусть М-+М\->- ••• ->N — редукция
терма М к н.ф. Из Поо(А) следует по теореме 11.3.4, что
Доо(М), т. е. SN(M). Отсюда следует по лемме Кёнига, что
G(M) конечен. □
Теореме 11.3.4 можно придать формулировку, которая верна
и для 1.К.
11.3.6. Определение. Пусть А = (Kx.P)Q е Ак. Тогда А назы­
вается I-редексом, если xeFV(P), и К-редексом в противном
случае.
298 Гл. 11. Фундаментальные теоремы

11.3.7. Теорема консервативности. Пусть М, N е Ак и М N,


где А есть I-редекс. Тогда оо (М) =>■ оо (N).
Доказательство. См. теорему 13.4.12. □
В § 13.4 будет показано, что доказательство теоремы 11.3.4
нельзя непосредственно обобщить таким образом, чтобы полу­
чился результат 11.3.7.

11.4. Стандартизация
Теорема о стандартизации из книги Карри и др. [1958] — по­
лезный результат, утверждающий, что Л4 —» N влечет существо­
вание «стандартной» редукции терма М к N.
Используя понятие остатка, определение стандартной редук­
ции можно сформулировать следующим образом. Напомним, что
вхождение А редекса в М находится левее редекса Д', если глав­
ный знак % редекса Д находится левее главного % редекса Д'.
11.4.1. Определение, (i) Пусть дана редукция
сг: Мо М
Она называется стандартной редукцией, если Vz(V/<z)[Az не
является остатком редекса, находящегося левее Д;- (относитель­
но данной редукции терма А4У- к Мг)].
- (ii) Мы пишем M-»N, если имеется стандартная редукция
о: M-+-N.
Стандартные редукции производят свертывания слева на­
право, возможно, со скачками. Эту ситуацию можно описать
также следующим образом.
«После каждого сворачивания редекса R следует индексиро­
вать %-символы, находящиеся левее R. Редексы с индексирован­
ными X в дальнейшем запрещается сворачивать. Индексирован­
ные ламбда-символы остаются индексированными после свора­
чивания других редексов».
Пример. Рассмотрим следующие редукции (сворачиваемые
редексы подчеркнуты).
(i) Ka.(kb.(Xc.c) bb) d —> Ka.(Kb.bb) d ->■ Xa.dd.
(ii) Ka.{Tb.{Kc.c) bb) d —> A.a.(Xc.c) dd -> ha.dd.
Обе редукции имеют одинаковые начала и одинаковые концы.
Первая нестандартна, вторая стандартна.
Заметим, что если редукция о = р + % стандартна, то стан­
дартны т и р, но не наоборот.
11.4. Стандартизация 299

Теперь мы изложим доказательство теоремы стандартизации,


принадлежащее Мичке [1979].
11.4.2. Определение, (i) Пусть МеАи дан редекс АеМ.
Тогда А называется внутренним (в М), если он не является го­
ловным редексом в М.
(ii) Пишем М —»N, если имеется редукция (так называв-
i
мая внутренняя редукция)

о-.М^ ------- Mn = N,
такая что редекс А, — внутренний в А1, для О i < п.
(iii) Пишем M-^»N, если имеется редукция о: М —» АГ, ко-
1, i i
торая является одновременно полной редукцией для некоторого
терма (А4, , т. е. cr: м —» N.
1
Напомним, что -> обозначает головную редукцию.
h

Примеры. Пусть М = Xx.(Az.zz) (I (|х)). Тогда 1х и I (|х) — внут­


ренние редексы, а (Хг.гг) (1 (к)) — головной редекс. Имеем
М ->Ax.(Az.zz) (|х),
i
M -» Zx.(Az.zz) х,
1. i
М -> М-1 (I
*)) (I (И),
h
М Ах.х(| (|х)),
h
М Кх.хх.
1

д
11.4.3. Лемма. Пусть o:M~+N, где А — внутренний ре­
декс в М.
(i) Если в N имеется головной редекс, то он имеется и в М.
(ii) Если Аь — головной редекс в М, то Ah/o состоит в точ­
ности из одного элемента, который является головным редексом
в N.
(iii) Если At — внутренний редекс в М, то все элементы мно­
жества Ai/o — внутренние редексы в N.
Доказательство, (i) Если М не имеет головного ре­
декса, то М находится в г. н.ф., тогда и N находится в г. н. ф.
вопреки предположению.
(ii) Припишем головному редексу Аь в терме М какой-ни­
будь индекс, например 0. Тогда при сворачивании внутренних
зоо Гл. 11. Фундаментальные теоремы

редексов этот редекс не будет ни уничтожаться, ни дублировать­


ся. Очевидно, что 0-редекс все время остается головным ре-
дексом.
(iii) столь же просто. □
11.4.4. Лемма.

Доказательство. Пусть N—полный редукт терма


Развернем теперь следующим образом. Во-пер­
вых, свернем последовательно все индексированные редексы, яв­
ляющиеся головными редексами. Согласно FD, этот процесс
оборвется на некотором терме М'. Затем дополним эту раз­
вертку, сворачивая оставшиеся внутренние индексированные ре­
дексы (т. е. остатки в ЛГ). Согласно FD!, это снова приводит
к терму W. Очевидно, что и М'—»N. По лемме
h 1
11.4.3 (iii) верно даже М'—»М. П
1, i
11.4.5. Лемма.

ел.

Доказательство. Сначала будет показано, что

Пусть М' — полный редукт некоторого терма (М,ЗГ), где все


элементы множества — внутренние редексы. По лемме
11.4.3(1) терм М имеет головной редекс, который мы обозначим
11.4. Стандартизация 301

через А. В силу 11.4.3(H) редекс А имеет ровно один остаток А'


в М', причем М' -> N'. Следовательно,
h

— полная развертка герма (М, 9~ U {А}). Пусть Мх получается


из М сворачиванием редекса А. В силу FD!‘ полное сворачива-

h
hl , • н

(hi h

Рис. 11.5

ние всех остатков .У в Mi дает Поэтому в силу лем­


мы 11.4.4 имеем BN (М -» N ->■ N'\. Это доказывает (*) с по-
\ h 1, i /
мощью рис. 11.4.
Теперь, так как М -> М' => М М', утверждение из нашей
i 1, i
леммы получается из (*) и обхода диаграммы на рис. 11.5. □
11.4.6. Основная лемма.

Доказательство. Любая редукция М —»N имеет вид


А4 —Л41 —• • • —N.
h i ti ' I I
)иа может быть перестроена в требуемую редукцию с помощью
еммы 11.4.5 и обхода диаграммы на рис. 11.6.
Теперь мы можем доказать теорему стандартизации, принад­
лежащую Карри и др. [1958].
11.4.7. Теорема стандартизации. Если M-»N, то M-^>N.
302 Гл. И. Фундаментальные теоремы

Доказательство проводится индукцией по длине тер­


ма N. В силу леммы 11.4.6
М —» Z —» N
h i )•
Если N есть переменная х, то Z = х и все в порядке (так как
головная редукция, очевидно, также и стандартная).

Рис. 11.6

Если N = 7.х0 ••• Xn.NoNi ••• Nm, где « + т>0, то Z дол­


жен иметь вид
Z Kxq • • • Xk'ZqZ] * * • Z
где
Zi—Nit 0=O'^m.
По предположению индукции
Zt—» Nty

Пусть o-.M-^Z. Тогда


h

G Go 4“ &пГ M ~~. О
< s

11.4.8. Следствие. Терм. M имеет г.н.ф. т. и т.т., когда его


головная редукционная цепочка обрывается.
Доказательство. (=>) Пусть М ~ Хх.уМ. По теореме
CR имеем M-^Z, Кх.уМ~» Z для некоторого терма Z. Но
тогда Z = Xx.yN, где »Afz. Отсюда по теореме стандартиза­
ции получаем
(1) M-^hx.yN.
S

Пусть эта редукция имеет вид


До Ai -> ->
М == Мо -* М\ -> • • • —> KxyN.
Если все А, — головные редексы, то (1) — обрывающаяся го­
ловная редукция. В противном случае пусть Д,- — первый внут-
11.5. Упражнения 303

ренний редекс. Тогда М должен находиться в г. н. ф., так как


иначе его головной редекс сохранился бы (редукция Mt-^'kx.yN
стандартна). Поэтому - обрывающаяся головная ре­
дукция.
(<=) очевидно. □

11.5. Упражнения
11.5.1. Пусть (Л1, ST) e.V. Показать, что Cpl (44, ,'Т’) = <р(Л4, ^"), где
операция ср введена в определении 11.1.4.
11.5.2. Построить редукцию о: М —»■ N, такую, что для некоторого ре­
декса Д е М не все элементы множества A/о дизъюнктны. Получить отсюда,
что метод, примененный в упр. 7.4.13 для доказательства свойства Чёрча —
Россера для w, не распространяется на 0.
11.5.3. Доказать, что отношения определенные в 3.2.3 и 11.2.27,
1
совпадают.
11.5.4. Показать, что доказательство свойства CR для 0, данное в 11.1,
не обобщается непосредственно на 0ц. [Указание. Рассмотрим 1.x(ку.Р[х. Этот
терм содержит 0-редекс и является ц-редексом. Если свернуть один из них,
то другой исчезнет. Аналогично обстоит дело для терма (Хх.ЛТх)У.]
11.5.5. Сформулировать и доказать теорему о стандартизации и FDl-тео-
рему для CL, а также теорему консервативности для CL,.
11.5.6. (Шроэр). Пусть <о ss '/.х.хх и М as (Ху.ыу) (Xy.mz/). Начертить
G(M). Для каких N имеет место М —» N?
1
11.5.7. Пусть и se l.axz.z(aax). Показать, что со<вх—влечет
xeFV(Af). [Указание. Рассмотреть стандартную редукцию минимальной
длины.]
11.5.8. (i) Показать, что развертка терма М имеет длину ^2"МИ
(ii) Показать, что имеется вещественное число а > 0 и термы Л10,
ЛЬ, ..., такие, что
lim || Мп || = оо,
П->оо
2 11 п>1 Сб максимальная длина развертки терма Л1л.
11.5.9 (С. Микали). Показать, что если А е М и о: МУ — развертка,
то остатки терма А относительно о — дизъюнктные подтермы терма N (ср.
упр. 11.5.2).
Глава 12
Сильно эквивалентные
редукции

В этой главе для редукций будет определено отношение s,


называемое сильной эквивалентностью. С помощью этого поня­
тия теорема стандартизации будет усилена следующим образом.
Для данной редукции о: M-+N имеется единственная стан­
дартная редукция
такая, что аos.
Можно усилить теорему FD! и теорему Чёрча — Россера
(CR).
(FD!+) Все полные развертки терма (М, &~) оканчиваются
одним и тем же термом и сильно эквивалентны.

б + p'S р + б.'
(CR+)
\ /
б\ /р'

План этой главы таков. В § 12.1 определяется диаграмма


двух редукций с общим началом. С помощью таких диаграмм
в § 12.2'вводится эквивалентность и доказываются теоремы
CR+ и FD1+. Наконец, в § 12.3 приводится усиление теоремы
стандартизации.

12.1. Редукционные диаграммы


Пусть <т: М N — редукция, а Ле М — вхождение редекса.
Как отмечено в 11.2.10, множество остатков A/о может зависеть
от ст, а не только от М, N, А.
12.1.1. Определение (Хиндли). Пусть оц M{-»Nh i— 1,2,—
две редукции.
(i) Говорят, что О], о2 (слабо) эквивалентны (и пишут
Oi — М, если Mi = М2 и М] = N2.
(ii) Говорят, что сц, о2 Н-эквивалентны (и пишут oi^Ho2),
если oj ~ о2 и (VA eAli) (A/crj = А/о2).
12.1. Редукционные диаграммы 305

Ниже будет определено отношение эквивалентности на


редукциях, более сильное, чем ^н- Это понятие принадлежит
Берри и Леви; см. Леви [1978], где приводятся также усиле­
ния теорем CR, FD! и теоремы стандартизации.
Мы приведем определение отношения через диаграммы,
введенные у Клопа [1980] для этой цели. Диаграмма редук­
ций о: М Ni и р: М N2 получается в результате попытки
найти общий редукг термов Mi и М2 путем непрерывного при­
менения слабого свойства ромба.
12.1.1'. Определение. Пусть R— понятие редукции.
А
(i) Напомним, что запись М—>RN означает, что N полу­
чается из М путем сворачивания /?-редекса Ле.М. Это понятие
д
расширяется до М —+■ R N, где Д может быть и пустым редек-
0
сом 0. В этом случае М -> R М — пустая редукция, т. е. с М
ничего не происходит и N = М.
(ii) Д- = -редукция — это последовательность
До Д|
ст: Л10 —> R М, —> ...,

где каждый из Д< либо /?-редекс, либо пуст. Если все Д,- равны
0, то и о обозначается через 0.
Л
ст: М -> R N называется одношаговой R- — -редукцией. !
cr.M-^RN означает, что о есть R-= -редукция (от) М к N.
Как обычно, R не указывается в случае R = 0. В оставшейся
части этого пункта R будет обозначать 0 или 0', а мно­
жеством термов будет соответственно Л или Д'.

р /б

Рис. 12.1

12.1.2. Определение. Пусть ст: р: Рас­


смотрим Д1/рсдЛ12. Это — множество дизъюнктных редексов.
Определим ст/р как редукцию, которая начинается термом М2
и получается путем последовательного (слева направо) сворачи­
вания элементов множества Д1/р. Аналогичным образом опреде­
ляется р/ст, см. рис. 12.1,
306 Гл. 12. Сильно эквивалентные редукции

Если Ai = 0, то Aj/p = 0 и, следовательно, о/р = 0. Од­


нако о/р — 0 возможной в других случаях — см. пример 12.1.5.
12.1.3. Лемма. Пусть о, р — одношаговые R-=-редукции.
Тогда о/р и p/о оканчиваются одним и тем же термом. Кроме
того, о -j- p/о р + о/р.
Доказательство следует доказательству леммы 11.1.1 (ii).
(Для R — (У нужно проследить соответствие индексов.) Остав­
шаяся часть следует из леммы 11.2.8. (Если это неясно, см. до­
казательство предложения 12.2.3(i).) □
12.1.4. Определение. Пусть о, р — две одношаговые R- = -ре­
дукции с общим началом. Тогда элементарная R-диаграмма
(для) редукций о, р — это
в

р /о

О/р

12.1.5. Примеры. Пусть — одношаговая редукция.


Тогда приводимые фигуры являются элементарными диаграм­
мами.

к____________ >
б/р
Пример 3)гЛ показывает, что о/р может быть редукцией сколь
угодно большой длины. Описанные =-редукции введены из-за
примеров вроде и ^>4.
12.1. Редукционные диаграммы 307

12.1.6. Лемма. Пусть о — одношаговая R- — -редукция.


(i) <т/а = 0;
(ii) о/0 = а;
(iii) 0/<т=0.
Доказательство. См. примеры и @)ц. □
12.1.7. Определение. Пусть о/р — одна из сторон элементар­
ной диаграммы. Говорят, что о/р расщепляется, если она со­
стоит более чем из одного шага редукции. Элементарная диаг­
рамма расщепляется, если расщепляется одна из ее сторон.
Диаграмма <2>5 в примере 12.1.5 расщепляется. Элементарная
диаграмма не может расщепляться на более чем одной сто­
роне-— см. упр. 12.4.1.
Соглашение. Если элементарная диаграмма для о, р рас­
щепляется, мы будем изображать ее в виде

в б

Р р/б или р р/б

б/р с/р

в зависимости от того, какая сторона расщепляется и на какое


число одношаговых редукций.
12.1.8. Определение. Пусть даны две R-= -редукции
er: М —»R All и р: M—^RM2 с общим началом. Расщепим аир
на одношаговые R-= -редукции: о = О] + ••• 4-оя и р =
= Pi + ••• + pm. Мы можем попытаться найти общий редукт
термов Mi, М2, применяя элементарные диаграммы следующим
образом. Начнем с ситуации

<51 в2 63

Р1

Рг
308 Гл. 12. Сильно эквивалентные редукции

начертим элементарную диаграмму редукций щ и pi


б1 ^2 ■

Р11

затем диаграммы для р2, <тц и для рп, ст2

и т. д., так что через несколько шагов получится фигура вроде

и т. д., и'наконец, прямоугольник вида

Фигура вида 3), если она существует, называется R-диаграм­


мой (для редукций о и о и обозначается через 3)ц(<5, р). По­
лучаемые R-= -редукции М] -z * RM3 и М2~^^М3 обозна­
чаются соответственно через p/о и о/p. Фигура вида 3\ назы­
12.1. Редукционные диаграммы 3f

вается предиаграммой (для аир). 3)$ обозначается через 3),


а 3)$ — через 3)'.
Сразу не очевидно, что 3)R(a,p) всегда существует. В прин­
ципе можно было бы представить себе, что могут появиться
картины в стиле Эшера, вроде

или

Однако будет доказана теорема 12.1.4, утверждающая, что


7?-диаграммы всегда существуют для /? — 0 и 7? = Р'. Для 6-ре-
дукций, описываемых в § 15.3, картины в стиле Эшера действи­
тельно появляются.
12.1.9. Предложение, (i) (проектирование). Пусть 3)' =
— ЗУ (У, р') есть ^'-диаграмма, а \3)'\ получается из ЗУ сти­
ранием всех индексов. Тогда существует 3) = 3)(р, о), такая,
что о = |о'|, р = |р'| и |7Z>'| = 3).
(ii) (подъем). Пусть а: р: Л4—»М2 и Л4 = |Л4/|, где
М'еА'. Поднимем о, р до У, р', начинающихся с М'. Тогда
существует ЗУ = ЗУ (У, р') и \ЗУ\ = ЗУ
Доказательство, (i) Для элементарных p'-диаграмм это
очевидно. Общий случай получается путем обхода диаграмм.
(ii) получается аналогично. □
12.1.10. Лемма, (i) Пусть
р': У: М'-^’М'2.
Тогда р'/У есть ро- = -редукция.
(ii) Пусть
р': Af'—»p0Afi, У: М' М2
и й'‘(р',У) существует. Тогда р'/У является р0- = -редукцией.
310 Гл. 12. Сильно эквивалентные редукции

Доказательство, (i) По предположению А — индексиро­


ванный редекс. Следовательно, Д/ст состоит из индексированных
редексов (или пусто). Значит, р'/cr' является р0-=-редукцией
по определению.
(ii) получается из (i) с помощью обхода диаграмм. □
12.1.11. Определение. =-редукция р, начинающаяся термом
М, называется = -разверткой М, если редукция од получаемая
из р вычеркиванием всех пустых шагов, является разверткой
терма М.
12.1.12. Предложение. Пусть р: (Л!, 1F)-»Л1 и ст: М2
dev
Предположим, что существует 3) = 3)(р, ст). Тогда
(i) р/ст есть —-развертка терма (М2,3~/о);
(ii) если, кроме того, р — полная развертка терма (М,3~),
то р/ст — полная = -развертка терма (М2,ЗГ/а).
Доказательство, (i) Пусть М'=(М,^")е А'. Подни­
мая диаграмму 3) до М', получим следующую диаграмму 3)'-.
(м.Р) б' м2'
Р'
м;
По лемме 11.2.12 р' является 0о-редукцией. Следовательно,
по лемме 12.1.10(ii) р'/а' тоже р0-редукция. Очевидно, что
р/о = Ip'/o'l — развертка терма (М2,3~/о), так как 3~/<з =
= { | А' | е М21 А' <= М2 и А' индексирован}.
(ii) Если теперь предположить, что р: (М, 3~) Mlt то
Ср1
Л11 е А.'Следовательно, Мз е А и, значит, редукция р/ст —
полная =-развертка терма (М2,3~/о). □
Следующая лемма получается, хотя и не сразу, из FD.
12.1.13. Лемма. Пусть ст, р — две = -развертки терма М.
Тогда существует 3)(о, р) и ст/р, р/ст также = -развертки.
Доказательство проводится в несколько шагов.
(1) Определение. Мультимножества — это подмножества N,
в которых каждый элемент k может встречаться более одного
раза, т. е. с кратностью N. Говоря более формально, муль­
тимножество X s N — это пара (X, т), где т: X -> N.
Пример. {0, 3, 0, 0, 4, 3}— мультимножество, для которого
то = 3, тз = 2, т4 = 1.
12.1. Редукционные диаграммы 311

Для каждого мультимножества X — (X, т) Е N введем орди­


нал
Ord (X) = (ок‘ • mk + • • • + &kp • mk ,
где
X = {ki, ..., kp} c k\ > ••• > kp.
(2) Определение. Пусть задан конкретный способ построения
диаграммы. Если процесс еще не завершился на шаге п, мы
имеем предиаграмму вида

Пусть теперь Dn обозначает конечное мультимножество тер­


мов, находящихся на юго-восточном краю этой предиаграммы
(жирная линия).
(3) Лемма. Любой редекс, сворачиваемый в предиаграмме
для а, р является остатком {относительно всевозможных редук­
ционных цепочек) некоторого редекса из М.
Доказательство. Утверждение леммы верно для исход­
ной предиаграммы (состоящей из о и р), так как а и р по пред­
положению являются развертками. После добавления новой эле­
ментарной диаграммы для некоторых редукций оч, pj это утвер­
ждение остается верным, так как редексы, сворачиваемые в oi/pi
и Pi/ffi, — это остатки редексов, сворачиваемых в аь рь а зна­
чит, и редексов из М. (Утверждение, заключенное в скобки, сле­
дует из леммы 12.1.3.) П3
(4) Определение. Пусть st = {N | М —» N}. В силу FD мно-
dev
жество st конечно. Далее, в силу леммы 3 множество st содер­
жит все термы из предиаграммы. (Мы еще не достигли цели,
так как возможно бесконечное дублирование из-за пустых ре­
дукций.)
Для термов N, N'^st будем писать N-^»N', если суще-
м
ствует развертка
Сто ~г ст: М —» N —=> N',
где редукция о; N -» X' непуста,
312 Гл. 12. Сильно эквивалентные редукции

Для N е st положим
||| N HI = card (N' e= st | N
N'}.
м
Так как -^-редукции не содержат циклов в силу FD, мы по­
до
лучаем, что N-»N' влечет ||'Ani>|||AF|||.
до
Наконец, определим для каждого п ординал ап < со“, пола­
гая ап = Ord( A)Z1 ),где \\\Dn\\\ — мультимножество {|]|А11||| , ...
.|||МР|||}, если Ьп = {Mi, ..Мр}.
(5) Лемма. Пусть X s N — мультимножество. Если X' полу­
чено из X заменой одного элемента k новыми элементами
ki, ..., kq<k, то Cfrd(X)> Ord(X').
Доказательство проведем на примере. Пусть Х =
= {3, 5, 7, 5} и X' = {3, 4, 4, 3, 7, 5}. Тогда
Ord (X) = (о7 + со5 • 2 + <о3,
Ord (X') = со7 + со5 + со4 • 2 4- со3 • 2.
Теперь имеем
со5 -|----- > го4 ■ 2 4- <»3 4------ (так как — < со5).
Поэтому
Ord(X) > Ord(X'). Os
(6) Лемма. Если элементарная диаграмма, добавленная на
(п+1)-л1 шаге построения диаграммы, расщепляется, то
а>п сСп+i-
Доказательство. Пусть элементарная диаграмма, до­
бавленная на шаге п 4- 1, имеет вид

N, N2
Тогда Dn+i — Dn — {M)}U{M, N2}. Так как N0-»-Ni, N2 в силу
м
(2), для терма No имеем в силу (4) неравенства |||ДЦ >|||АМ11>
IIIMjIII- Поэтому применимо (5), так что ап = Ord() |Z>„|||) >
> Ord(|pn+i’|j) = ап+ь Об
(7) Утверждение. <Z>(cf, р) существует.
Доказательство. Из (6) следует, что после конечного
числа шагов построения 0(о, р) уже не добавляются новые рас­
щепляющиеся элементарные диаграммы. После последнего та­
кого шага (номер которого мы обозначим через /г0) добавляются
12.2. Сильные варианты теорем CR и FD/ 313

только нерасщепляющиеся элементарные диаграммы, н потому


предиаграмма не может взорваться (или, скорее, сжаться), об­
разуя фигуру в стиле Эшера. Например,

дает

шаг По последний шаг. П7


(8) Утверждение, о/р и р/ст суть =-развертки.
Доказательство состоит из ссылки на 12.1.12(i). П8 □
12.1.14. Теорема. Для любой пары р, ст конечных /гредукций
с общим началом существует диаграмма 3)(р, о). Следова­
тельно, редукции о/р и p/о корректно определены.
Доказательство. Пусть дана фигура
, I о- t----- •

р'

(подразумевающая, что ст = О] -ф- ст2 + о3, где ст, — одношаговые


редукции, и аналогично для р = pi + р2). Проведем горизонтали
и вертикали

Так как Ст], pi — развертки, из леммы 12.1.13 следует, что


существует диаграмма 3)(Gi,pi) и что Pi/ctj и Oi/pi суть == -раз­
вертки. Еще одно применение леммы 12.1.13 показывает, что
существует 0(о2, pi/ст]). Продолжая таким же образом, полу­
чае