Книга
Книга
ВВЕДЕНИЕ
Логику можно определить как науку о правильных способах рассуждения, т. е. таких способах рассуждения, при которых из верных исходных положений получаются верные результаты.
Конечно, можно рассуждать и без науки о правильных рассуждениях. Однако в некоторых случаях потребность в такой науке все же возникает. В частности, такая ситуация сложилась в математике в конце XIX — начале XX вв., когда были обнаружены парадоксы в теории абстрактных множеств, разработанной Г. Кантором. Анализ парадоксов потребовал внимательного исследования рассуждений, применяемых в математике, и тем самым вызвал необходимость в развитии науки о рассуждениях, т. е. логики.
Чтобы логика могла обслуживать самую точную из наук — математику, она сама должна быть точной наукой, т. е. она должна иметь дело с точными математическими понятиями и применять точные математические методы. Такова математическая логика — наука о математических рассуждениях, пользующаяся математическими методами.
Современная математическая логика представляет собой обширный и разветвленный раздел математики. Она, конечно, полезна и для других наук, поскольку в них используются рассуждения, доказательства и т. п. В настоящее время разработаны приложения математической логики к другим разделам математики, а также к кибернетике и программированию.
ГЛАВА 1
ЭЛЕМЕНТЫ ТЕОРИИ МНОЖЕСТВ
Основные понятия теории множеств
В начальный период развития теории множеств пользовались интуитивным понятием множества. Согласно Кантору, множество — это любое объединение в одно целое определенных объектов, которые называются элементами этого множества. Тот факт, что / есть элемент множества А, записывается так: х Е А. Если / G 4, то говорят, что А содержит / или что / принадлежит А. Если же / не является элементом множества А, пишут х ^ А.
Два множества А и В считаются равными, если они состоят из одних и тех же элементов, т. е. каждый элемент множества А принадлежит множеству В и каждый элемент множества В принадлежит множеству А. Запись А — В означает, что А и В равны, а А ^ В — что А и В не равны. Запись А С В означает, что каждый элемент множества А является также элементом множества В; в этом случае говорят, что А является подмножеством множества В или что А включено в В. Если АдВиА^В, то4 называется собственным подмножеством В, и в этом случае пишут А С В. Множество, не содержащее элементов, называется пустым и обозначается 0. Семейство всех подмножеств данного множества А обозначается 0(4).
Множество, элементами которого являются данные объекты а】, 。2,…,обозначается {例,。2,…}. Например, {а, b} есть множество с элементами а и Ь. Если при этом а ^ 6, то {а, Ь} называется неупорядоченной парой объектов а и Ь. Множество {а, а} можно обозначить также {а}. Это одноэлементное множество с элементом а. Через {ж | ①(/)} обозначается множество таких элементов ж, для которых выполняется условие Ф(ж).
Множество А\3 В = {х \ х Е А или х 6 В} называется объединением множеств А и В. Пересечением множеств А и В называется множество АГ\В = {х \ х Е А и х Е В}. Разностью множеств А и В называется множество А \ В = {х \ х Е А и х В}.
Бинарные отношения и функции
Через (а, Ь) обозначается упорядоченная пара двух объектов а и Ь. Основное свойство упорядоченных пар таково: каковы бы ни были объекты а* а?, Ь* Ь?, равенство〈。匕瓦〉=〈。2也〉имеет место тогда и только тогда, когда а± = а2 и b± = Ь2- Вообще, для любого натурального числа п можно образовать кортежи длины п (или, как иногда говорят, упорядоченные n-ки) объектов (а* ап) с тем свойством, что〈а】,...,ап) =〈6匕...,bn) тогда и только тогда, когда а〃 = b〃(z = 1,... , 71).
Прямым (или декартовым) произведением множеств А и В называется множество Ах В, состоящее из всех таких упорядоченных пар (а, Ь〉, что а Е А и b Е В. Аналогично определяется прямое произведение множеств Ai,... , Ап как множество, состоящее из всех таких кортежей〈。匕...,а九〉,что а】Е А±,... ,ап Е Ап.
Бинарным отношением между элементами множеств А и В называется любое подмножество R множества А х В. Часто вместо (ж, у) С R пишут xRy. Областью определения бинарного отношения R называется множество 8五,состоящее из всех таких ж, что 〈/,沙〉С R хотя бы для одного у. Множеством значений pR бинарного отношения R называется множество всех таких у, что〈/, g〉G R хотя бы для одного х. Обратным отношением для бинарного отношения R называется множество Я-1, состоящее из всех таких упорядоченных пар (ж, у), что 匂,x)eR. Заметим, что 坛―i =〃五;〃五-1 =坛・ Если 吊一отношение между элементами множеств А и В, R2 — отношение между элементами множеств В и С, то можно образовать произведение (композицию) отношений Ях и Я2- Произведением 笈 1 о 笈2 отношений 笈 1 и 笈2 называется отношение между элементами множеств А и С, состоящее из всех пар (ж, г), для которых найдется такой элемент у G В)что (ж, y)GR\ и〈沙,公jSR?. Например, если М — множество всех живущих или когда-либо живших мужчин на Земле, а отношение R С М х М состоит из таких пар (ж, у), что / является отцом у, то 笈一】一это отношение, состоящее из таких пар (ж, у), что х является сыном у, а Я о Я — отношение, состоящее из всех таких пар (ж, у〉, что / является дедушкой у по отцовской линии.
Отношение / называется функцией^ если из〈/, g〉6 / и (ж, г) С / следует g = z. Функция / называется функцией из А в В, если 6f С А, ру С В; если при этом % = 4, то пишут / : А —> В. Если / — функция и〈/,沙〉С /, то обычно пишут у = /(/) и называют у значением функции / при значении аргумента х. Если не существует такое д, что〈/,沙〉С /, то выражение /(/) считается неопределенным.
Среди функций из А в А выделим так называемую тождественную функцию id а = {〈/,/〉I / G 4}. Очевидно, что Ed/(/) = ж, каков бы ни был элемент х Е А.
Функция / называется последовательностью^ если ее область определения — это множество натуральных чисел N = {0,1,2,...}.
В случае, когда множества А и В совпадают, бинарное отношение R между элементами множеств А и В называется бинарным отношением на множестве А. Бинарное отношение R на множестве А называется:
рефлексивным^ если (ж, х) Е R для всех ж 6 Л;
иррефлексивным^ если (ж, х) ^ R для любого ж 6 Л;
симметричным, если из〈/,沙〉G R следует 加吟 С Я;
антисимметричным, если из (ж, у) С R и (у,х) С R следует / = у;
транзитивным, если из (ж, у) е R и {y^z) е R следует〈/,%〉С R.
Бинарное отношение на множестве А называется частичным упорядочением (или частичным порядком}, если это отношение рефлексивно, антисимметрично и транзитивно. Частичное упорядочение обычно обозначается символом <. Множество А с заданным на нем частичным порядком < называется частично упорядоченным и обозначается (А, <).
Бинарное отношение на множестве А называется строгим частичным упорядочением (или строгим частичным порядком), если это отношение иррефлексивно и транзитивно. Строгое частичное упорядочение обычно обозначается символом <. Множество А с заданным на нем строгим частичным порядком < называется строго частично упорядоченным и обозначается (А, <).
Бинарное отношение на множестве А называется отношением эквивалентности^ если это отношение рефлексивно, симметрично и транзитивно.
Упражнения.
Пусть А и В — конечные множества, состоящие из m и п элементов соответственно.
Сколько существует бинарных отношений между элементами множеств А и В ?
Сколько имеется функций из А и В ?
Образуют ли бинарные отношения на множестве А группу относительно операций о и -1?
Доказать, что для любых функций / :АтВид:ВтС их композиция fog является функцией из А в С, причем (/ о д)(/)= =д(/0))・
Доказать, что всякое строгое частичное упорядочение является антисимметричным.
Пусть (4, <) — частично упорядоченное множество. Доказать, что бинарное отношение R = {{х, у) \ х^уих^ у} является строгим частичным порядком на множестве А.
Пусть (А, <) — строго частично упорядоченное множество. Доказать, что бинарное отношение R = {(ж,у) \ х < у или х = у} является частичным порядком на множестве А.
Пусть (А, <) — строго частично упорядоченное множество. Элемент а С 4 называется максимальным, если в 4 не существует такой элемент 仇 что а < Ь. Доказать, что если множество А конечно, то в нем существует максимальный элемент.
Пусть R — отношение эквивалентности на множестве А. Классом эквивалентности элемента а С 4 называется множество
同={/ J@/)g R}.
Доказать, что для любых элементов а, 6 6 Л их классы эквивалентности 同 и [Ь] либо совпадают, либо не имеют общих элементов.
3. Взаимно однозначные соответствия и эквивалентные множества
Функция / называется взаимно однозначной функцией (или 1-1-функцией), если из /(/) = /(g) следует х = у (выражение /(/) = /(g) означает, что /(/) и /(g) определены и их значения совпадают) .Например, id а является взаимно однозначной функцией. Вообще, функция / взаимно однозначна тогда и только тогда, когда отношение /-1 является функцией. Если f:A^Bng:B^C суть взаимно однозначные функции, то их композиция /од также есть взаимно однозначная функция.
Взаимно однозначным соответствием между множествами А и В называется такая взаимно однозначная функция / : А —> В, что pf = В.
Множества А и В называются равномощными, если существует взаимно однозначное соответствие между А и В. Чтобы выразить, что А и В равномощны, пишут 4 〜В
Теорема 1. Каковы бы ни были множества А, В, С,
4 〜4;
если А 〜В, то В А;
еслиА^ВиВ^С, тоА^С.
Доказательство. Легко проверяется справедливость следующих утверждений.
Функция id а является взаимно однозначным соответствием между А и А.
Если / — взаимно однозначное соответствие между А и В, то
1 есть взаимно однозначное соответствие между В и А.
Если / — взаимно однозначное соответствие между А и В, а д — взаимно однозначное соответствие между В и С, то их композиция fog есть взаимно однозначное соответствие между А и С.
Отсюда немедленно следует утверждение теоремы.
Теорема 1 доказана.
Равномощные множества называются также эквивалентными.
4. Счетные множества
Непустое множество называется счетным, если оно есть множество значений какой-либо последовательности. Пустое множество по определению относится к счетным.
Пример 1. Любое конечное множество является счетным. Действительно, пусть М = {а。,… ,an-i}. Рассмотрим последовательность / : N —> М такую, что /(ж) = а%, где I есть остаток от деления х на п. Очевидно, что pf = М.
Пример 2. Натуральный ряд N — счетное множество, поскольку он является множеством значений функции Ес^ : N —> N.
Пример 3. Пусть дан некоторый алфавит^ т. е. набор элементарных знаков, называемых буквами. Конечный ряд букв, написанных друг за другом, называется словом в данном алфавите. Иногда бывает удобно рассматривать также пустое слово, совсем не содержащее букв и обычно обозначаемое А. Если алфавит А конечен, то множество 4* всех слов в алфавите А счетно.
Действительно, пусть А = {Si,... , S^—i}(夕》2). Определим последовательность / : N —> 4* следующим образом: /(0) = А; если же ж > 0, то рассмотрим запись числа / в 夕-ичной системе счисления, выпишем в порядке вхождения в нее все ненулевые «цифры» ki,... ,km(l < ki《夕一1) и положим /(ж) = S^ ... Skm • Очевидно, что pf = 4*. А именно, произвольное слово Si0 ... Sin является значением функции / при значении аргумента 〃。夕九 + ^夕九一】+ • •・ + 広九.
Пример 4. Всякое множество, эквивалентное счетному множеству, счетно. Действительно, пусть А — счетное множество и А В. Пусть / : N —> Л — такая последовательность, что pj = А, и пусть д : А ^ В — взаимно однозначное соответствие между А и В. Нетрудно проверить, что их композиция fog есть последовательность, причем pfog = В, т. е. В счетно. Отсюда и из примера 2 получаем, в частности, что всякое множество, эквивалентное натуральному ряду, счетно. Например, счетным является множество всех слов в алфавите {0,1,2,... , 9}, являющихся десятичными записями натуральных чисел, поскольку оно, очевидно, эквивалентно натуральному ряду.
Теорема 2. Любое подмножество счетного множества счетно.
Доказательство. Пусть А — счетное множество, В С А. Если В — пустое множество, то оно счетно по определению. Рассмотрим случай, когда В непусто. Тогда А также не пусто, и существует последовательность / такая, что pj = А. Зафиксируем некоторый элемент b Е В и определим последовательность g : N —> В следующим образом:
Г /О), если /О) С В;
если 任 В.
Очевидно, что pj = В, т. е. В счетно. Теорема 2 доказана.
Из теоремы 2 и примера 3 получается еще одно доказательство счетности множества десятичных записей натуральных чисел, поскольку они образуют подмножество множества всех слов в 10буквенном алфавите {0,1,2,... , 9}.
Пример 5. Множество всех рациональных чисел Q счетно. Действительно, всякое рациональное число записывается в виде несократимой дроби вида m/n, где ш — целое число, а п — положительное целое число, т. е. множество Q эквивалентно множеству таких дробей, которое, в свою очередь, является подмножеством всех слов в алфавите {0,1,2,... , 9, —, /}. Теперь счетность Q следует из примера 3, теоремы 2 и примера 4.
Теорема 3. Объединение счетного числа счетных множеств счетно.
Доказательство. Пусть дано счетное множество А, элементы которого суть счетные множества. Требуется доказать счетность
множества В, состоящего из всех элементов, принадлежащих элементам множества А. Если А пусто, то В также пусто и счетно по определению. Пусть А непусто и среди его элементов есть непустые множества. Так как А счетно, то существует такая последовательность Л : N Л, что 〃九=А. Обозначим h(n) через Ап (n G N).
Для любого п, если Ап не пусто, существует такая последовательность /п : N —> Ап, что pfn = Ап. Заметим, что В непусто, и зафиксируем некоторый элемент b Е В. Если Ап пусто, определим последовательность /п : N —> В так, что %(/) = b для любого х. Рассмотрим бесконечную таблицу, в строках которой последовательно выписаны значения функций /о 5 /15 /2, • •—
012
%(/)
/о(О) % ⑴"о ⑵ J ///
力⑺
/1(0) /1(1) /1(2) ...
/ / /
力⑺
Л(0) /2(1)力(2)
J ///
Очевидно, в этой таблице содержатся все элементы множества В и только они. Пересчитывая элементы таблицы в порядке, указанном стрелками, мы получим последовательность ^ : N —> В, то есть,
g(O) = /o(O), g(l) = /i(0), д(2) = %(1), д(3) = %(2),.
Тем самым доказана счетность множества В. Теорема 3 доказана.
Пример 6. Множество 4* всех слов в счетном алфавите А счетно. Действительно, если А — счетный алфавит, то существует такая последовательность / : N —> 4, что pf = А. Обозначим /(п) через ап (n С N). Пусть Ап = {а。, а】,...,а九}. Поскольку любое слово в алфавите А состоит лишь из конечного числа букв, оно является одновременно словом в одном из алфавитов Ап. (А именно, слово ом . • •。&小 является словом в конечном алфавите 4&, где к = max(A;i,... , кт).) Таким образом, множество всех слов в алфавите А есть объединение счетного числа множеств 闵,4;,名, Теперь счетность 4* вытекает из примера 3 и теоремы 3.
Теорема 4. Множество значений функции, определенной на счетном множестве, счетно.
Доказательство. Пусть А — счетное множество, / - некоторая функция с областью определения А. Поскольку А счетно, существует последовательность g : N —> 4 такая, что рд = А. Тогда, очевидно, д。/ есть последовательность, причем pgof = 〃力 т. е. множество pf счетно. Теорема доказана.
Пример 7. Действительное число назовем алгебраическим^ если оно является корнем некоторого многочлена с одним неизвестным и с целыми коэффициентами, т. е. многочлена вида: а^хп + -\-d\xn 1 + • • • + dn—\x + dn (а。,。1,... , dn — целые числа, а。济 0). Множество алгебраических чисел счетно. Действительно, каждый многочлен можно рассматривать как слово в алфавите {0,1,2,... ...,9,/,+,—}, если вместо жп писать хп (например, многочлен 4ж5 — 2ж2+3 записывать так: 4/5 —2/2+3). В силу примера 3 и теоремы 2 множество всех многочленов счетно. Рассмотрим функцию /, определенную на множестве всех многочленов, значением которой на данном многочлене является множество корней этого многочлена (конечное и, следовательно, счетное). По теореме 4 множество 〃/ является счетным. Теперь заметим, что множество всех алгебраических чисел — это в точности объединение всех элементов множества pf, счетное в силу теоремы 3.
Теорема 5. Все бесконечные счетные множества эквивалентны.
Доказательство. Докажем, что всякое бесконечное счетное множество эквивалентно натуральному ряду N. Отсюда и из теоремы 1 будет следовать утверждение теоремы.
Пусть А — бесконечное счетное множество, / : N —> Л — такая последовательность, что 〃/ = А. Определим новую функцию g : N —> 4 следующим образом: д(0) = /(0); д(п + 1) = /(к), где к — наименьшее число, такое, что /(к) @ {^(0),... , д(п)} (в силу бесконечности А такое число к существует для любого п). Очевидно, что д — взаимно однозначное соответствие между N и А. Теорема 5 доказана.
Упражнения.
Доказать, что множество всех конечных подмножеств счетного множества счетно.
Доказать, что любое множество попарно непересекающихся интервалов на действительной прямой счетно.
Доказать, что множество точек разрыва монотонной действительной функции счетно.
§ 5. Канторовский диагональный метод
Теорема 6. Множество F всех функций из N в множество {0,1} несчетно.
Доказательство. Предположим, что нам дана некоторая последовательность / : N —> F. Обозначим /(п) через /п. Подобно тому, как мы поступали при доказательстве теоремы 3, рассмотрим бесконечную таблицу, в строках которой выписаны значения функций /о, /1, /2, • • • • Теперь определим функцию д G F следующим образом:
Г 1, если /ж (ж) = 0;
g ⑺=1 п f1
0, если =1.
Иными словами, последовательные значения функции д получаются из чисел, стоящих на диагонали таблицы, изменением каждого из них. Функция д не входит в область значений функции /, поскольку д(〃)济 fp(р), каково бы ни было р. Таким образом, ни для какой последовательности / : N —> F множество ее значений не совпадает с 胤 т. е. F несчетно. Теорема 6 доказана.
Метод, использованный в доказательстве теоремы 6, называется канторовским диагональным методом.
Следствие. Множество 0(N) несчетно.
Доказательство. Достаточно показать, что 0(N) 〜胤 а затем воспользоваться примером 4 и теоремой 6. Взаимно однозначное соответствие между 0(N) и F задает функция, сопоставляющая каждому подмножеству М С N его характеристическую функцию, т. е. такую функцию хм С 胤 что
[1, если х 6 М;
储S n
[0, если х @ М.
Кардинальные числа, или мощности
Согласно Кантору, под кардинальным числом или мощностью множества А понимается то общее, что присуще всем множествам, эквивалентным множеству А. Независимо от способа представления того абстрактного объекта, который называется кардинальным числом, фундаментальное значение имеет то, что два множества А
и В имеют одно и то же кардинальное число, если и только если они эквивалентны, т. е. А 〜В.
Кардинальное число (мощность) множества А обозначается через Д или I川. В частности, как мы ранее установили, |0(N)| = Е где F — множество из теоремы 6.
Если множество А эквивалентно некоторому подмножеству множества В, то пишут А ^ В. Очевидно, что если А С В, то Л ^ В. Теорема Кантора-Бернштейна утверждает, что если одновременно А В и В А, то А = В. Если А и В не эквивалентны и выполнено неравенство Л В, то пишут А < В.
Согласно теореме 5, все бесконечные счетные множества имеют одну и ту же мощность. Эта мощность обычно обозначается N。(читается алеф-нуль; N (алеф) — первая буква еврейского алфавита).
Мощность множества P(N) (и, следовательно, мощность F) называется мощностью континуума и обычно обозначается с. Можно доказать, что она равна мощности множества всех действительных чисел. Согласно следствию из теоремы 6 с # N。. Очевидно также, что No < с.
Предположение о том, что не существует множества М, для которого ^о < ^ < с, называют континуум-гипотезой. Это правдоподобное с интуитивной точки зрения предположение долгое время не удавалось ни доказать, ни опровергнуть. Лишь сравнительно недавно проблема, связанная с континуум-гипотезой, была решена, но в несколько необычном смысле, который разъяснится для нас чуть позже.
Упражнения.
Доказать, что если Ai С А2 С А и Л1 = Л, то Д2 = N.
Доказать теорему Кантора-Бернштейна.
Доказать, что объединение счетного числа множеств мощности с имеет мощность с.
Теорема Кантора
Теорема 7 (теорема Кантора). Для любого множества М имеет место М < |Р(М)|.
Доказательство. Пусть д — такая функция из М в Р(М), что g⑺={/}. Эта функция устанавливает взаимно однозначное
соответствие между М и подмножеством Р(М), состоящим из одноэлементных подмножеств М, так что М < |Р(М)|.
Покажем, что М и Р(М) не эквивалентны. Пусть / — какая- либо функция из М в Р(М), и пусть S = {x\xEMhx^ /(ж)}. Очевидно, S С Р(М). Покажем, что S 串 р§. Действительно, пусть /(s) = S для некоторого s G М. Простые рассуждения показывают, что в этом случае предположения s Е S и s ^ S оба ведут к противоречию. Таким образом, ни для какой функции / : М —> Р(М) ее множество значений не совпадает с Р(М). Следовательно, не существует взаимно однозначного соответствия между М и Р(М), т.е. они не эквивалентны. Теорема 7 доказана.
Мощность множества Р(М) принято обозначать 2м. Таким образом, М < 2必.В частности, N。< 2”。< 22^0 < .... Заметим, что кардинальное число 2”。равно мощности континуума.
Парадоксы теории множеств
В 90-х годах XIX в., когда теория множеств стала получать признание среди математиков, в ней были обнаружены противоречия. Рассмотрим некоторые из них.
Парадокс Кантора связан с множеством всех множеств. Обозначим это множество через Т. Тогда 0(Т) есть некоторое множество множеств, откуда Р(Т) С Т. Но тогда |0(Т)| ^ Т. С другой стороны, для любого множества М имеет место неравенство М < \Р(М)\. Отсюда по теореме Кантора-Бернштейна получается f = |Р(Т)|, что противоречит теореме 7.
Вот еще один парадокс теории множеств — парадокс Рассела. Пусть R есть множество всех множеств, которые не являются элементами самих себя, т. е. Я = {х\х @ /}. Тогда оказывается, что R £ R выполняется тогда и только тогда, когда R 串 R.
Парадоксы Кантора, Рассела и другие теоретико-множественные парадоксы демонстрируют трудности, связанные с попытками построить теорию множеств на основе интуитивного понятия множества. Эти трудности вынуждают нас заняться вопросом: в чем же собственно подвели нас методы образования понятий и рассуждения, казавшиеся убедительными, пока не выяснилось, что они приводят к парадоксам? Различные математики высказывали разные взгляды по поводу причин возникновения парадоксов и предлагали некоторые способы избавления от них.
Один из возможных путей избавления от известных парадоксов состоит в различении совокупностей двух сортов, называемых классами и множествами. Точнее, произвольная совокупность объектов считается классом^ а множествами являются только те из классов, которые сами могут быть элементами других классов. При таком подходе рассуждения, используемые в парадоксах Кантора и Рассела, приводят не к противоречию, а всего лишь к результату о том, что некоторые совокупности не являются множествами. Чтобы убедиться, что это не просто игра терминами, попытаемся, например, провести парадокс Рассела, имея в виду, что совокупность R всех множеств, не являющихся элементами самих себя, — не множество, а, как говорят, собственный класс — класс, не являющийся множеством. Очевидно, что R не является своим элементом, потому что никакой собственный класс не может быть элементом никакого класса. Отсюда, однако, не следует, что мы должны включить его в Я в качестве элемента, потому что к классу R мы относим только множества. Так что никакого противоречия здесь нет.
Аксиоматическая теория множеств
Поскольку свободное пользование понятиями, исходящими из интуитивных представлений о множествах, приводит к противоречиям, Э. Цермело (1908 г.) предложил ограничиться рассмотрением множеств, существование которых может быть доказано на основе некоторого списка аксиом. Предложенная Цермело система аксиом впоследствии была несколько расширена А. Френкелем и носит название системы 口ермело—①ренкеля ZF. Основными (неопределяемыми) понятиями этой системы являются отношение принадлежности G и отношение равенства =. Система ZF имеет следующие аксиомы.
Аксиома объемности. Два множества равны, если и только если они состоят из одних и тех же элементов.
Аксиома пары. Для любых множеств А и В существует такое множество, что А и В являются единственными его элементами.
Аксиома объединения. Для любого множества А существует множество U4, состоящее в точности из всех элементов, принадлежащих элементам множества А.
Аксиома множества всех подмножеств. Для любого множества А существует множество 0(4) всех подмножеств А.
Аксиома выделения. Для любого множества А и свойства Ф такого, что для любого х Е А утверждение ①⑺ либо истино, либо ложно, существует множество {ж | / С А и Ф(ж)}, состоящее в точности из тех элементов А, для которых Ф истинно.
Аксиома бесконечности. Существует по крайней мере одно бесконечное множество — множество натуральных чисел {0,1, 2,...}.
Аксиома выбора. Для любого непустого множества S попарно непересекающихся множеств существует некоторое множество, содержащее в качестве своих элементов ровно по одному элементу из каждого элемента множества S.
Аксиома фундирования. Не существует бесконечной убывающей последовательности g 3 g 3 ….
Аксиома подстановки. Для каждого множества А и функции /, определенной на А, существует множество, содержащее в точности объекты /(ж) для х Е А.
Все аксиомы могут быть записаны совершенно формально — а именно, формулами языка теории множеств, описанного в § 7 следующей главы. Эта и другие известные системы аксиом для теории множеств сформулированы так, чтобы на их основе можно было доказать все обычные теоремы теории множеств, но без парадоксов.
Хотя в теории множеств, основанной на аксиомах I-IX, никаких противоречий не обнаружено, это еще не означает, что противоречия здесь невозможны. Чтобы установить недоказуемость противоречия, нужно прежде всего уточнить понятие доказательства, т. е. правильного рассуждения. Ведь пока мы не уточним, что такое «доказательство», мы не сможем строго математически доказать, что нечто невозможно доказать. Значит, необходимо строгое определение доказательства, нужна наука о доказательствах, о правильных рассуждениях, т. е. логика.
В заключение вернемся к вопросу, связанному с континуум- гипотезой. Именно с помощью уточнения понятия доказательства и методов математической логики в работах К. Гёделя и П. Коэна было доказано, что континуум-гипотеза не может быть ни доказана, ни опровергнута на основе обычных аксиом теории множеств. Это не единственный пример того, как математическая логика помогла получить нетрадиционное решение известных математических проблем.
У пражнение. На основе системы аксиом ZF доказать, что каковы бы ни были множества А, В, С, если АеВиВ ЕС, то С А.
ГЛАВА 2
ЯЗЫКИ ПЕРВОГО ПОРЯДКА
Высказывания и высказывательные формы
Чтобы логику можно было развивать математическими методами, необходимо прежде всего уточнить основные логические понятия. Нашей основной задачей является уточнение и изучение понятия правильного рассуждения, или доказательства. Всякое рассуждение состоит в последовательном переходе от одной мысли к другой, или, как говорят в логике, от одного суждения к другому. Материальным выражением суждения является предложение того или иного языка. Например, математические суждения мы обычно записываем в виде текстов на русском языке, обогащенном математической символикой. Предложения, выражающие определенные суждения, называются высказываниями. Они характеризуются тем, что могут быть истинными или ложными, и этим отличаются, например, от повелительных или вопросительных предложений.
Например, 2x2 = 4, «Рим — столица Франции» суть высказывания, а предложения «Который час?» или «Решить квадратное уравнение ж2 + Зж — 2 = 0» высказываниями не являются.
Если высказывание истинно, говорят, что его истинностное значение есть И («истина»), а если высказывание ложно, то его истинностное значение есть Л («ложь»). Например, высказывание 2x2 = 4 имеет истинностное значение И, а высказывание «Рим — столица Франции» — Л.
Однако, не всякое повествовательное предложение является высказыванием. Рассмотрим, например, предложение: «Остаток от деления числа п на 7 равен 3». В этом предложении не содержится никакого утверждения, и нельзя ставить вопрос о его истинности и ложности. Однако, подставив в это предложение вместо п обозначение какого-либо конкретного натурального числа, мы получим высказывание.
Буква п, входящая в это предложение, играет роль переменной. Вообще, переменная — это языковое выражение, служащее для обозначения произвольного объекта из некоторого фиксированного множества, называемого областью возможных значений этой пере-
менной. Если переменная употребляется таким образом, что допускается подстановка вместо нее обозначений (имен) объектов из области ее возможных значений, то эта переменная называется свободной. Таковы, например, переменные ж, у, г в выражениях х < у и г = ж + 1. Однако в математике встречается и такое употребление переменных, при котором не предполагается и не допускается возможность подстановки вместо них имен конкретных объектов, з
Например, в выражение / ж2 dx^ где / — действительная перемен- о
ная, т. е. переменная, областью возможных значений которой является множество действительных чисел, нельзя подставлять вместо / обозначения каких-либо конкретных действительных чисел. Вот другой пример: «Не существует такого рационального числа q, что q2 = 2». Хотя это предложение и содержит переменную q, подстановка в него обозначений каких-либо чисел вместо q лишена смысла. В том случае, когда по смыслу выражения, содержащего переменную, подстановка вместо нее имен конкретных объектов недопустима, эта переменная называется связанной. В одном выражении одна и та же переменная может употребляться и как свободная, и как связанная. Например, в выражении / /2 dx оба вхождения пере- о
менной х в подынтегральное выражение являются связанными, а ее вхождение в качестве верхнего предела интегрирования — свободным. Вообще, следует говорить именно о свободных и связанных вхождениях данной переменной в данное выражение.
Выражение, содержащее свободные вхождения переменных и превращающееся в имя некоторого объекта (или, соответственно, высказывание) всякий раз, когда вместо всех свободных вхождений каждой переменной подставляется имя какого-нибудь объекта из области ее возможных значений, называется именной формой (или, соответственно, высказывательной формой). Переменные, имеющие свободные вхождения в именную или высказывательную форму, называются ее параметрами. Именную или высказывательную форму будем называть k-местной^ если она содержит ровно к различных параметров. В частности, можно говорить и о 0-местных именных и высказывательных формах, понимая под ними соответственно имена и высказывания.
Иногда для ^-местной именной или высказывательной формы мы будем употреблять обозначение вида F(x±,...,/&), явно указывая все ее параметры. Тогда, если 例,…,а& — имена каких-либо объектов из областей возможных значений переменных /],...,/& со-
ответственно, то через F(a±,... , а&) обозначается выражение, полученное из F(xi,...,/&) подстановкой 例 вместо д,…,а& вместо х^.
Пример 1. Через F(/,g) обозначим именную форму
g + / • g • lim / sin x2y dx.
Тогда F(—7, 3) есть выражение
3 + (—7) • 3 • lim / sin/2g d/.
Вообще, F(a, b) имеет вид
b + a • b • lim / sin x2y dx.
Пример 2. Через A(i, k, m) обозначим высказывательную фор
му加
< lim log2 k.
i=k
Тогда, например, 4(5,2, 8) есть высказывание
EX吧…e=2
Логические операции
Из одних высказываний различными способами можно строить новые более сложные высказывания. Способ построения сложного высказывания из данных высказываний, при котором истинностное значение сложного высказывания полностью определяется истинностными значениями исходных высказываний, называется логической операцией.
Примером логической операции может служить отрицание^ преобразующее любое данное высказывание А в высказывание «Неверно, что А», которое мы будем обозначать ^А. Очевидно, что
высказывание ~>А истинно тогда и только тогда, когда А ложно. Этот факт можно выразить посредством следующей истинностной таблицы:
Эта таблица показывает, какое истинностное значение имеет высказывание -пА при данном истинностном значении высказывания А.
Вообще, для любой логической операции можно построить соответствующую ей истинностную таблицу. Некоторые из наиболее употребительных логических операций имеют специальные названия и обозначения. Кроме отрицания, это еще двуместные операции: конъюнкция (&, Л), дизъюнкция (V), импликация 今), эквивалентность (=, <->, о). Им соответствуют следующие истинностные таблицы:
4 В
АУ В
Аз В
А = В
И И
И
и л
И
л И
И
л л
л
В математической логике принято не различать логические операции с одинаковыми истинностными таблицами независимо от того, какое словесное оформление имеют эти логические операции. Например, высказывание A D В может передаваться посредством выражений «Если А, то В», «4 влечет В», «В случае А имеет место В», «Для А необходимо В», «А, только если В» и т. п. Вот языковые эквиваленты для других логических операций:「4 — «Не А», «4 не имеет места», «4 неверно»; А & В — «4 и В», «Не только А, но и В», «Как А, так и В»; AY В — «4 или В или оба», «4 или В», «А, если не В»; А = В — «А, если и только если В», «Если А, то и В, и обратно», «4 эквивалентно В», «4 равносильно В», «А тогда и только тогда, когда В».
Наконец, приведем пример операции над высказываниями, которая не является логической операцией: по высказыванию А строим высказывание «Я знаю, что А». Очевидно, что истинность или ложность такого высказывания зависит не только от истинностного значения А, но и от осведомленности субъекта, произносящего это высказывание.
Рассмотренные нами логические операции -i, &, V, D, = называются пропозициональными операциями^ а символы используемые
для их обозначения, — пропозицональными связками. Эти операции можно, очевидно, применять и к высказывательным формам, получая из них более сложные высказывательные формы.
У пражнение. Найти истинностные значения следующих высказываний:
Если 11 делится на 3, то 11 делится на 6.
Если 15 делится на 3, то 15 делится на 6.
11 делится на 3 тогда и только тогда, когда 15 делится на 6.
Логика высказываний
Переменная, допустимыми значениями которой являются произвольные высказывания, называется пропозициональной переменной. В качестве пропозициональных переменных мы будем использовать большие латинские буквы P〉Q〉R〉... (возможно с индексами; например, P3,Q^, Яц).
Формулами логики высказываний, или пропозициональными формулами^ назовем выражения, которые строятся из пропозициональных переменных с помощью скобок и пропозициональных связок по следующим правилам:
любая пропозициональная переменная является пропозициональной формулой;
если Дий — пропозициональные формулы, то「/, (/ & 吕), (/ V 吕),(/ D 吕),(/ 三 吕)一пропозициональные формулы.
Например, выражения
(Р D Q), (Р D (Q О 笈)),(Р D (Q О (Р & Q)))
являются пропозициональными формулами.
Если в пропозициональную формулу Д, построенную из пропозициональных переменных В,…,办,вместо этих переменных подставить конкретные высказывания, то получится некоторое высказывание. Пропозициональная формула называется тавтологией^ если она превращается в истинное высказывание при любой подстановке конкретных высказываний вместо переменных; каждая тавтология является схемой истинных высказываний и в этом смысле выражает некоторый логический закон. Приведем примеры логических законов: (Р V「Р) — закон исключенного третьего; (-i-iP = Р) — закон двойного отрицания; -i(P &「Р) — закон противоречия; (((Р D Q) D F) D Р) — закон Пирса.
Очевидно, что истинностное значение высказывания, полученного подстановкой в пропозициональную формулу конкретных высказываний вместо пропозициональных переменных, зависит только от истинностных значений подставляемых высказываний. Поэтому довольно легко можно проверить, является ли данная пропозициональная формула тавтологией. Для этого достаточно перебрать всевозможные подстановки в эту формулу значений И и Л вместо пропозициональных переменных (таких подстановок ровно 2П, где п — число переменных в формуле), и для каждой такой подстановки вычислить соответствующее значение формулы, пользуясь истинностными таблицами для логических операций. Формула является тавтологией тогда и только тогда, когда при любой подстановке она принимает значение И.
Упражнения.
Доказать интерполяционную теорему: если пропозициональная формула Дэй — тавтология, и формулы「/ и 吕 не являются тавтологиями, то существует пропозициональная формула С, содержащая только те переменные, которые входят как в Д, так и в S, такая, что формулы Д D С и С D В суть тавтологии.
Множество пропозициональных формул называется совместным^ если существуют такие истинностные значения пропозициональных переменных, при которых все формулы из этого множества принимают значение И. Доказать теорему компактности: множество пропозициональных формул совместно тогда и только тогда, когда каждое его конечное подмножество совместно.
4. Кванторы
Наряду с пропозициональными операциями в математической логике рассматриваются кванторы, позволяющие из данной высказы- вательной формы получать высказывательную форму с меньшим числом параметров, в частности, из одноместной высказывательной формы — высказывание.
Квантор общности позволяет из данной высказывательной формы с единственным параметром х получить высказывание с помощью оборота «Для всех /...». Результат применения квантора общности к высказывательной форме 4(/) будем обозначать V/ А^х). Высказывание V/ 4(/) считается истинным тогда и только тогда,
когда при подстановке в 4(/) вместо свободных вхождений переменной х имени любого объекта из области ее возможных значений всегда получается истинное высказывание. Высказывание V/ 4(/) может читаться также «Для любого х имеет место 4(/)», «4(/) при произвольном ж», «Для всех / верно 4(/)», «Каждый / обладает свойством 4(/)» и т. п.
Квантор существования соответствует образованию из данной высказывательной формы с единственным параметром х высказывания с помощью оборота «Существует такой ж, что ... ». Результат применения квантора существования к высказывательной форме 4(/) обозначается Зж А{х). Высказывание Зж 4(/) истинно тогда и только тогда, когда в области возможных значений переменной х найдется такой объект, что при подстановке его имени вместо свободных вхождений / в 4(/) получается истинное высказывание. Высказывание Зж 4(/) может читаться также «Для некоторых / имеет место 4(/)», «Для подходящего / верно 4(/)», «Существует ж, для которого 4(/)», «Хотя бы для одного х верно 4(/)» и т. п.
Отметим еще раз, что в предложениях V/ 4(/) и Зж 4(/) переменная / не является свободной переменной: кванторы «связывают» эту переменную. Очевидно также, что кванторы можно применять и к высказывательным формам, содержащим наряду ежи другие параметры. В результате получится высказывательная форма, имеющая те же параметры, что и исходная, кроме х.
Важное значение для логики имеет анализ логической структуры высказываний и высказывательных форм, т. е. выявление того, каким образом данное повествовательное предложение построено из более простых предложений с помощью пропозициональных операций и кванторов. Логический анализ предложений есть своего рода искусство, практические навыки которого можно приобрести путем упражнений. Рассмотрим некоторые примеры. Высказывание «2 — простое число, а 6 — составное число», очевидно, может быть представлено в виде «2 — простое число» & «6 — составное число». Предложение «Каждое рациональное число есть действительное число» можно иначе записать так:
V/ [(/ — рациональное число) D (ж — действительное число)], а предложение «Некоторые действительные числа яваляются рациональными» —так:
Зж [(/ — действительное число) & (ж — рациональное число)].
Упражнение. Найти истинностные значения следующих высказываний, где возможными значениями переменных являются действительные числа:
Ух Эу (ж + т/ = 3);г) Ух Уу (ж + т/ = 3) D 7 = 11;
Эу Vx + g = 7,;д) Va (Зж (а/ = 3)三 а # 0);
Эх Эу (х + у = П);е) За Vb Зж (川 + а/ + b = 0).
Субъектно-предикатная структура предложений
Логический анализ предложений во многом аналогичен грамматическому анализу сложно-сочиненных и сложно-подчиненных предложений. Однако иногда нас будет интересовать и внутренняя структура простых предложений: что и о чем говорится в данном предложении. В таком случае в грамматике используются понятия субъекта и предиката. Субъект (или подлежащее) — это то, о чем или о ком говорится в предложении, а предикат (называемый также сказуемым или группой сказуемого) выражает то, что говорится о субъекте. В математической логике используется более широкая трактовка субъектно-предикатной структуры предложения. Прежде всего, в качестве субъектов данного предложения мы можем выделить одно или несколько имен каких-либо предметов, входящих в это предложение. Заменив затем выделенные имена на переменные, мы получим высказывательную форму, «в чистом виде» выражащую то, что говорится о субъекте. Эту высказывательную форму тоже иногда называют предикатом.
Рассмотрим, например, высказывание «12 делится на 3», которое, используя общепринятую символику, можно записать так: «12 : 3». Выбрав в качестве субъекта число 12, мы получаем одноместный предикат «ж : 3». Если же в качестве субъекта взять 3, то получим другой предикат «12 : д». Наконец, считая 12 и 3 субъектами этого предложения, мы получаем двуместный предикат «/ : д».
Со всяким предикатом, понимаемым как высказывательная форма, естественным образом связана функция, которая каждому набору значений параметров сопоставляет высказывание, получающееся из данной высказывательной формы подстановкой вместо переменных имен объектов, выбранных в качестве значений этих параметров. Обобщая это наблюдение, мы приходим к представлению о предикате как о функции, значениями которой являются высказывания. Наконец, если мы не будем различать высказывания, имеющие одно и то же истинностное значение, то придем к следующему
определению предиката: А;-местным предикатом на множестве М называется произвольная функция Р : Mk —> {И, Л}, где Мк — декартова степень множества М, т. е. прямое произведение к одинаковых множеств, равных М.
Пример 1. На произвольном множестве М может быть определен двуместный предикат Е : М2 —> {И, Л} так, что Е(х, д) = И тогда и только тогда, когда /ид совпадают. Этот предикат называют предикатом равенства и обычно вместо Е(х, у) пишут х = у.
Пример 2. На произвольной совокупности множеств М можно определить двуместный предикат Р : М2 —> {И, Л} так, что Р(/,д) = И тогда и только тогда, когда / является элементом у. Этот предикат называют предикатом принадлежности и вместо Р(/,д) пишут х Е у.
Пример 3. В соответствии с нашим определением предиката рассмотренный выше предикат / : у можно трактовать как функцию £):№—> {И, Л} такую, что D(x, g) = И тогда и только тогда, когда х делится на у. Например, 0(12,3) = И, а 0(7,3) = Л.
Вообще, всякий раз, когда речь идет о «свойствах» объектов или «отношениях» между ними, их можно представлять как соответствующие предикаты. Например, свойство «быть четным числом» можно представить как такой предикат Ч : N —> {И, Л}, что
/、 ( И, если / четно;
4 ⑺=1 п
[если х нечетно.
Языки первого порядка
Рассмотренные нами логические понятия, подходящим образом уточненные, служат основой для превращения логики в математическую науку. Прежде всего сделаем точными математическими объектами математические утверждения. С этой целью в математической логике используются искусственные языки. Самый распространенный вид таких языков — так называемое логикоматематические языки первого порядка.
Каждый язык первого порядка задается своей сигнатурой — набором из трех множеств Q = (Cnst, Fn, Рг), где
Cnst — множество констант;
Fn — множество функциональных символов'^
Рг — множество предикатных символов.
При этом с каждым функциональным или предикатным символом однозначно связано некоторое натуральное число — количество аргументов (или валентность^ арность) этого символа. Валентность функционального символа положительна, а предикатные символы могут иметь и нулевую валентность. Функциональный или предикатный символ, валентность которого равна к, называют к- местным.
Во всяком языке первого порядка имеется счетный набор переменных. Условимся считать, что в качестве переменных во всех языках первого порядка используются строчные буквы из конца латинского алфавита с числовыми индексами или без них.
Язык первого порядка с сигнатурой Q будем называть языком Q.
Из переменных, констант, функциональных и предикатных символов с помощью скобок ( , ), запятых и логических символов =, -«, &, V, D, =, V, 3 строятся выражения, называемые термами и формулами. При этом термы играют роль имен и именных форм, а формулы —роль высказываний и высказывательных форм.
Определение терма носит индуктивный характер и содержит три пункта. Первые два пункта являются базисом индукции и указывают, какие объекты языка следует непосредственно считать термами. Третий пункт представляет собой шаг индукции и задает порождающее правило^ позволяющее из уже построенных термов построить новый терм:
Каждая переменная есть терм.
Каждая константа есть терм.
Если / есть k-местный функциональный символ и 力匕...,力& — термы, то выражение /(力匕...,力&) есть терм.
Пример. Пусть сигнатура содержит константу с и двуместные функциональные символы g и 儿 и пусть /, g — переменные. Тогда выражения
С,伤 g, М。,/), М*с), М*д), д(х,Цс,у)\ д(Цс,х\д(х,у))
суть термы.
Индуктивный характер определения терма дает возможность использовать в доказательствах принцип индукции по построению. А именно, пусть требуется доказать, что все термы обладают некоторым свойством Р. Для этого достаточно установить, что
каждая переменная обладает свойством Р;
каждая константа обладает свойством Р;
если 力 1,...,力九一термы, обладающие свойством Р, а / есть п- местный функциональный символ, то терм f(t±,...,力九)также обладает свойством Р.
Тогда в силу индуктивного определения терма можно быть уверенным, что всякий терм обладает свойством Р.
Аналогично индуктивный характер определения терма позволяет индукцией по построению терма задавать функции, определенные на множестве всех термов. А именно, пусть
каждой переменной х поставлен в соответствие некоторый объект 巳;
каждой константе с поставлен в соответствие некоторый объект 久;
задано правило, определяющее, какой объект 巧(% /几)ставится в соответствие терму /(й,..., tn), если термам 力匕...,力九 уже поставлены в соответствие объекты F^,... , F% . Тогда для любого терма 力 однозначно определен объект 瓦.
Атомные (или элементарные) формулы определяются как выражения вида Р(力 1,...,力&), где Р есть к-местный предикатный символ (к》1), а й,...,力& — термы. Всякий 0-местный предикатный символ также считается атомной формулой. Кроме того, к числу атомных формул относятся выражения вида 力i =力2, где 力i и 力2 —— термы.
Формулы определяются индуктивно с помощью следующих четырех пунктов, причем первый пункт представляет собой базис индукции, а остальные три пункта суть порождающие правила.
Каждая атомная формула есть формула.
Если А — формула, то выражение「/ есть формула.
Если Дий — формулы, то выражения (/ & 吕),(Д V S), (/ О 吕),(/ 三吕)суть формулы.
Если А — формула, / — переменная, то выражения V/ / и Зж Д суть формулы.
Пример. Если сигнатура содержит двуместный функциональный символ /, одноместный предикатный символ Р и двуместный предикатный символ Q, то следующие выражения являются формулами:
P(/O,g)), QO,z), х = у, Эу х = у,
Зж Q0,%), (Р(/(Хд)) & Зж Q0,%)),”(/也 g)) & Зж Q(n, z)) о 加 / = g),土((Р(/(Х g)) & Зж QO, z)) D3y x = у).
Индуктивный характер определения формулы позволяет использовать в рассуждениях индукцию по построению формулы. А именно, если требуется доказать, что все формулы обладают некоторым свойством Д то достаточно установить, что
каждая атомная формула обладает свойством Р;
если формула А обладает свойством Р, то формула「/ также обладает свойством Р;
если формулы Дий обладают свойством Д то формулы (/ & 吕),(/ V 吕),(/ О 吕),(/ 三吕)также обладают свойством Р;
если формула А обладает свойством Р, а ж — произвольная переменная, то формулы Ух А и Эх А обладают свойством Р.
Индукцией по построению формулы можно также задавать функции, определенные на множестве всех формул.
Практически, записывая формулы, принято опускать некоторые скобки. Полученные при этом выражения следует рассматривать как сокращенное обозначение для формул. В частности, обычно опускают внешние скобки у формул. Дальнейшая «экономия» скобок возможна, если принять соглашение о том, какие логические операции «сильнее». Для этого расположим логические символы в следующем порядке:
V3 - & V D =
и будем считать, что из всех возможных «в первую очередь» выполняется та операция, которая стоит в этом списке левее. (На самом деле кванторы V, 3 и отрицание「никогда не могут «конкурировать» друг с другом.)
Пример. Формулу
(V/ О = g О (土 Q(z) & (笈0) = Q(g)))) V Q(/)) можно сокращенно изобразить в виде
Ух (х = у D 3z Q(z) & (笈⑺=Q(g))) V Q{x).
В формулах вида Vx Д и Зж Д выражение V/ или Зж называется кванторной приставкой^ а формула А — областью действия соответствующего квантора (точнее — кванторной приставки).
Вхождение переменной / в формулу А называется связанным^ если оно находится в области действия квантора V/ или Зж или входит в кванторную приставку. Вхождение переменной, не являющееся связанным, называется свободным.
Пример. В формуле
V迈(Р(/(迈))& Зж ж = г D Зж Я (ж, ж)) V г = ж подчеркнуты все связанные вхождения переменной ж, причем вхождения, связанные одной и той же кванторной приставкой, подчеркнуты одинаковым числом черточек. Неподчеркнутое вхождение ж, а также все вхождения г являются свободными.
Формула, не содержащая свободных переменных, называется замкнутой (или закрытой!) формулой.
Выражение вида (归 力где ①匕・・・ 5 хп — различные перемен- ные,力 1,...,力九一термы, назовем подстановкой.
Пусть Е — терм (формула) языка Q, 8 =(::…;:)一подстановка. Через ЗЕ обозначим выражение, полученное одновременной заменой в Е всех (свободных) вхождений переменных /],... , хп на термы ti,...,力九 соответственно. Очевидно, что если 力匕...,力九一 термы языка П, а 石一формула языка Q, то ЗЕ — также формула языка Q, а если Е — терм языка Q, то ЗЕ также является термом языка Q. Выражение ОЕ называется результатом подстановки термов 力 1,...,力九 вместо переменных ①匕...,хп в Е. Заметим, что терм (формула) ЗЕ зависит лишь от того, какие термы подставляются вместо переменных, имеющих (свободные) вхождения в терм (формулу) Е. В частности, если А — замкнутая формула, то 8/ совпадает с Д, какова бы ни была подстановка в.
Примеры.
Пусть Е есть формула Эу Р(ж, у, г), а 8 = ( 〃;д)} Тогда 8石 есть формула Эу Р(/(/, g), z).
Если Е есть х = у I \/у Q(U), а 8 = ( f(x,y) г),то 8石一это формула /О, g) = zD^y Q(g).
Если Е — это формула Vg P(g, z) V Эу 笈也 g), a 0 — подстановка из примера 2, то 0Е — это формула
W/ Р@, %) V Эу 笈(/О, g), g).
Терм t называется свободным для переменной / в формуле Д, если никакое свободное вхождение / в / не находится в области действия кванторов по переменным, входящим в терм t. Например, терм /(ж, г) является свободным для / в формуле Эу Р(/, g, z) и не является свободным для / в формуле Зг Р(/,沙,%)• В дальнейшем мы увидим, что с логической точки зрения подстановка терма t
вместо / в формулу А является правильной и осмысленной, только если t свободен для х в А.
Иногда, имея в виду дальнейшее применение подстановки
к некоторому терму или формуле £ для Е употребляют обозначение 石(/],... ,жп) и затем вместо ЗЕ пишут 石(力匕...)tn).
У пражнения.
Какие вхождения переменных являются свободными, а какие связанными в следующих формулах:
V/ (P(/,g) D Vg Q(g));
V/ P(N,g) D Vg 笈(伤沙);
-dz Q(z, z) & 笈(/(g, z))?
Является ли терм t свободным для переменной g в /, если
a) t есть /(ж, у), А есть V/ Р(/,д);
б)力 есть /(g,z), А есть Р(у, г) D Зг Q(z)?
Доказать, что
терм, не содержащий переменных, свободен для любой переменной в любой формуле;
х свободна для / в любой формуле;
если формула А не содержит свободных вхождений ж, то любой терм свободен для х в Л.
Назовем подстановку (::;: ) свободной для формулы Д,
если для всех г = 1,..., п терм ti свободен для переменной Xi в формуле А. Выяснить, какие подстановки из примеров 1-3 на стр. 31 свободны для соответствующих формул.
7. Примеры языков первого порядка
Языки первого порядка используются для записи математических утверждений, причем для каждой конкретной области математики, или, как говорят, математической теории, выбирается язык с подходящей сигнатурой. Использование языка первого порядка для записи утверждений, относящихся к данной математической теории, становится возможным, если удается расклассифицировать все основные понятия теории на «объекты», «функции» и «предикаты». При этом функции и предикаты должны быть определены
только на объектах, и значениями функций являются только объекты. В частности, не допускается рассматривать предикаты, заданные на функциях, или функции, заданные на предикатах. Затем для некоторых конкретных, замечательных в том или ином отношении объектов, функций и предикатов, мы фиксируем их обозначения, которые и образуют соответственно множества констант Cnst, функциональных символов Fn и предикатных символов Рг. Таким образом, возникает язык первого порядка с сигнатурой (Cnst, Fn, Pr).
В математической логике разработаны языки для многих математических теорий. Рассмотрим два из них, играющих наиболее важную роль в логико-математических исследованиях.
Сигнатура языка формальной арифметики содержит единственную константу 0 и три функциональных символа: одноместный S и двуместные + и •. Условимся вместо +(力匕力2) писать 力i + 力2, а вместо •(力i,力2)——писать 力i •力2・ Подразумеваемый смысл символа S таков: S(n) = ж + 1. Для краткости вместо S(力)будем писать St. Имея в виду подразумеваемый смысл символов языка, можно ввести сокращенные обозначения для некоторых формул. Например, выражение х ^ у будем считать сокращением для формулы 3z х + z = у\ х < у — для формулы 3z х + Sz = у', х \ у — для 3z у - z = х.
Сигнатура языка теории множеств содержит только двуместный предикат символ G. Условимся писать 力 1 G 力2 вместо G (力 1,力2)・ Очевидно, что термами этого языка являются только переменные. Вот примеры формул языка теории множеств:
Vz (z С / D z С д). Имея в виду естественный подразумеваемый смысл символов языка, для этой формулы можно ввести сокращенное обозначение х С у.
-I/ = у. Ее можно было бы сокращенно обозначить х ^ у.
-их 6 у. Эту формулу можно обозначить х ^ у.
7g у Е х. Эту формулу естественно обозначить ж = 0.
8. Определение интерпретации
При построении конкретного логико-математического языка обычно подразумевается некоторый смысл составляющих его символов, однако при описании языка, определении термов и формул этот смысл никак не используется. После того как выбрана сигнатура языка, мы вправе наделять входящие в нее символы новым смыслом, отличным от того, который вкладывался в них на этапе построения языка. Более того, рассмотрение различных интер-
претаций одного и того же языка является одним из важнейших приемов, используемых в математической логике, и именно с его помощью были получены многие важные результаты.
Чтобы задать интерпретацию сигнатуры Q = (Cnst, Fn, Pr), нужно
фиксировать некоторое непустое множество М, называемое носителем интерпретации;
с каждой константой с G Cnst сопоставить элемент с Е М;
с каждым А;-местным функциональным символом / G Fn сопоставить некоторую /^-местную функцию / : Mk —> М;
с каждым А;-местным предикатным символом Р С Рг сопоставить k-местный предикат Р : Mk —> {И, Л}.
Если Р есть 0-местный предикатный символ, то с ним сопоставляется одно из двух истинностных значений И или Л.
Будем называть с, /, Р интерпретациями соответственно константы с, функционального символа / и предикатного символа Р.
Носитель интерпретации — множество М — объявляется областью возможных значений (или, что то же самое, областью изменения) для каждой переменной.
Пример 1. Пусть Q — сигнатура языка формальной арифметики. Рассмотрим две интерпретации этой сигнатуры.
Носитель — множество натуральных чисел; 0 = 0, S⑺=/ + 1, + 也沙)一сумма чисел / ид; :(/,д) — произведение чисел х и у.
Здесь в соответствии с соглашением через 千二,S, 0 обозначены интерпретации символов +, •, S, 0.
Мы употребили выражение «сумма чисел / ид» вместо более простого «ж + д», чтобы не запутаться. Дело в том, что в равенстве + (/, у) = /+д знак + используется в двух разных смыслах: слева от знака равенства он обозначает функциональный символ сигнатуры, который может иметь различные интерпретации, а справа от знака равенства знак + есть имя функции сложения на натуральных числах. То же относится к знаку •. В дальнейшем мы будем позволять себе использовать такие общеупотребительные знаки, как =, <, +, • в разных смыслах, не останавливаясь на разъяснениях.
Эта интерпретация называется стандартной интерпретацией языка формальной арифметики.
Носитель — множество натуральных чисел; 0 = 5; S(n) = 2”; :(/,g) = / + 2g; +(/,g) = 2/ + g. Эта интерпретация не имеет названия, мы выбрали ее случайным образом.
Пример 2. Пусть сигнатура состоит из двух двуместных функциональных символов + и •. Тогда любое кольцо и любое поле является интерпретацией этой структуры.
Пример 3. Пусть сигнатура состоит из двуместного предикатного символа <. Любое упорядоченное множество является интерпретацией этой сигнатуры, если интерпретировать < как предикат «быть меньше».
Разумеется, в этих примерах возможные интерпретации не исчерпываются приведенными.
Следует хорошо понимать различие между константами, функциональными символами, предикатными символами и их интерпретациями. Первые суть некоторые знаки, используемые при написании формул, а их интерпретации являются «настоящими» элементами, функциями и предикатами.
Упражнения.
В сигнатуре языка формальной арифметики записать формулу с одной свободной переменной ж, истинную в стандартной интерпретации тогда и только тогда, когда
х четно;
ж = 2 (mod 3);
х — простое число.
Записать замкнутую формулу в сигнатуре {Р}, где Р — двуместный предикатный символ, истинную в интерпретации I тогда и только тогда, когда носитель I линейно упорядочен отношением Р.
Пусть носитель интерпретации I сигнатуры {Р} есть множество всех подмножеств натуральных чисел, а Р(ж, у) = И означает, что х С у. Записать формулы, означающие x = yC\znx = y^Jz.
9. Формальное определение истинности
Если зафиксирована интерпретация данной сигнатуры, то каждая замкнутая формула этой сигнатуры превращается в высказывание, и с ней связывается ее истинностное значение И или Л.
三沙 0 = и • SS0, Зж SSSS0 = ж + ж三沙 0 = и • SS0, Зж SSSS0 = ж + жПример. Формулы
三沙 0 = и • SS0, Зж SSSS0 = ж + ж
三沙 0 = и • SS0, Зж SSSS0 = ж + ж
^х ^у 3z х + у = z,
Ух Уу х • Sy = х • у -\- X,
истинны, а формулы
V/ Vg Vz / + z = g, By SO = у • SSO
ложны в стандартной интерпретации языка формальной арифметики.
Дадим более строгое, формальное определение истинностного значения замкнутой формулы. Пусть М — носитель интерпретации I сигнатуры Q = (Cnst, Fn, Pr). С каждым элементом т Е М сопоставим новую (т. е. не входящую в Cnst) константу т — имя элемента т. Через Q(M) обозначим сигнатуру, полученную из Q добавлением имен всех элементов из М в качестве констант, т. е. Q(M) = (Cnst U{m I m G M}, Fn, Pr).
Подстановку вида (::二:“),где。匕...,ап Е М, назовем оценкой. Будем говорить, что 8 =(::二:")一оценка терма (формулы) £ если Е не содержит (свободных) вхождений переменных, отличных от Xi,... ,жп. Если 0 — оценка терма (формулы) £ то ОЕ будем называть оцененным термом (соответственно, оцененной формулой). Очевидно, что множество оцененных термов — это в точности множество всех термов языка Q(M), не содержащих переменных, а множество оцененных формул — это множество всех замкнутых формул языка Q(M).
Индукцией по построению оцененного терма t (т. е. терма языка Q(M), не содержащего переменных) определим его значение, обозначаемое \t\. Это будет элемент множества М.
Если t есть константа с С Cnst, то \t\ = с. Если t есть константа т, где m 6 М, то \t\ = т.
Если 力 имеет вид /(力匕...,tn), где 力匕...,力九一оцененные термы, то \t\ = 7(|й|,... , \tn\).
Теперь индукцией по количеству символов V, 3, &, -i, V, D,= в оцененной формуле (т. е. в замкнутой формуле языка Q(M)) определим ее истинностное значение в интерпретации Z Достаточно определить, в каких случаях истинностное значение формулы равно И, и условиться, что в остальных случаях оно равно Л. Утверждение о том, что истинностное значение оцененной формулы / в интерпретации I есть И (Л), будем сокращенно записывать так: / |= Д (соответственно, /戸 /).
Пусть А есть оцененная атомная формула вида Р (力匕...,力九). Тогда, очевидно,力匕...,力九一оцененные термы. Z |= Д тогда и только тогда, когда Р(|力… ,\tn\) = И.
Пусть А есть оцененная атомная формула вида 力i =力2・ Тогда 力1 и 力2 — оцененные термы. / |= / тогда и только тогда, когда I力1| = I力2〔・
Пусть А имеет вид「吕.Тогда 吕一оцененная формула. / |= / тогда и только тогда, когда /戸 8
Пусть / имеет вид (S & С), (S V С), (S D С) или (В = С). Тогда 吕 и С — оцененные формулы.
/ |=(吕 & С) тогда и только тогда, когда I \= В и I \= С.
/ |=(吕 V С) тогда и только тогда, когда / |=吕 или I |= С.
/ |=(吕 D С) тогда и только тогда, когда /戸 吕 или I |= С.
/ |=(吕 三 С) тогда и только тогда, когда истинностные значения формул 吕 и С в интерпретации I совпадают.
Пусть А имеет вид Зж В(х) или V/ 13⑺. Тогда 13(a) является оцененной формулой при любом а Е М.
I |= Зж 吕⑺ тогда и только тогда, когда существует такой элемент а Е М, что / |= В ④.
I |= V/ В(х) тогда и только тогда, когда I |=吕(包)для всех a G М.
Мы определили отношение / |= / для произвольной оцененной формулы А. Очевидно, что любая замкнутая формула языка Q является оцененной формулой. Поэтому приведенное определение с каждой такой формулой сопоставляет ее истинностное значение в интерпретации Z
10. Общезначимые формулы, выполнимые формулы, равносильные формулы
Формула называется общезначимой (или тождественно истинной), если она истинна в любой интерпретации при любой ее оценке.
Пример 1. Докажем, что формула Зж Vg Р(/,g) D Vg Зж Р(/,у) общезначима. Обозначим ее через А. Пусть I — произвольная интерпретация, М — ее носитель. Если I ^ Эх Уу Р(ж,у), то I |= Д, как видно из пункта 6) определения истинности. Рассмотрим случай, когда I |= Зж Vg Р(ж, у). По пункту 8) определения истинности найдется т G М)для которого I |= Vg P(m,У)> Тогда по пункту 9) определения истинности I |= P(m, Z1) для всех п G М. Значит, по пункту 8) того же определения I |= Зж Р(/,”) для всех n 6 М, а по пункту 9) I |= Vg Зж Р(ж,у). По пункту 6) определения истинности это означает, что I |= А.
В § 3 главы 2 было введено понятие тавтологии как пропозициональной формулы, которая превращается в истинное высказывание при любой подстановке в нее конкретных высказываний вместо пропозициональных переменных. Распространим понятие тавтологии на формулы языка первого порядка.
Очевидно, что если в пропозициональную формулу вместо всех пропозициональных переменных подставить какие-нибудь формулы языка первого порядка, то получится формула языка первого порядка. Пусть S(Pi,... , Рп) — пропозициональная формула с пропозициональными переменными Pi,... , Рп^ а 4,…,Дп — произвольные формулы языка первого порядка. Обозначим через 13(Ai,... , /九) формулу, полученную подстановкой в S(Pi,... , Рп) формул Д1,... , Ап вместо 尸i,…,Рп соответственно.
Формула А языка первого порядка называется тавтологией^ если существуют такая пропозициональная тавтология S(Pi,... , Рп) и такие формулы языка первого порядка УЦ,... , Ап, что А есть 吕(/•].•
Пример 2. Формула V/ R(x) V「Vn R(x) является тавтологией. Она получается из пропозициональной тавтологии Р V「Р подстановкой V/ 笈⑺ вместо Р.
Пример 3. Формула Эу Q(g) & (丸 Q(g) D 笈(%)) D 笈(z) также является тавтологией. Она получается из пропозициональной тавтологии В & (В D Р) D Р подстановкой By Q(y) вместо Pi и R(z) вместо р.
Теорема 1. Любая тавтология общезначима.
Доказательство. В дальнейшем мы будем употреблять знак «графического равенства» = для выражения одинаковости слов: А В означает, что слова А и В одинаковы, т. е. построены из одинаковых букв, расположенных в одинаковом порядке.
Пусть А ——формула языка Q, являющаяся тавтологией. Это означает, что А = В{А\^... , Ап) для некоторой пропозициональной тавтологии S(Pi,... , Рп) и формул УЦ,... , Ап языка Q. Пусть I — произвольная интерпретация, 8 — произвольная оценка формулы А. Очевидно, что ЗА = B(3Ai,... , 0Ап). Поэтому вычисление истинностного значения формулы А по существу состоит в вычислении значения, которое примет формула 吕(几…,Р^ при подстановке в нее истинностных значений формул ЗЛ±,... , вЛп вместо 尸1,…,Рп. Поскольку 吕(尸1,... , Рп) — тавтология, она всегда
принимает значение И. Значит, I |= ЗА. Таким образом, формула А истинна в любой интерпретации при любой оценке, т. е. она общезначима. Теорема 1 доказана.
Формула называется выполнимой, если она истинна хотя бы в одной интерпретации при хотя бы одной ее оценке.
Пример 4. Формула Зж Эу (Р(/)&^Р(у)) выполнима, но не общезначима. Обозначим эту формулу через А. Возьмем в качестве носителя интерпретации множество {0,1} и положим Р(0) = И, Р⑴=Л. Нетрудно видеть, что в этой интерпретации формула А ложна, следовательно, она не общезначима.
Формулы Дий называются равносильными^ если формула (Д = S) общезначима. Если Дий равносильны, будем писать
Теорема 2. Каковы бы ни были формулы А и В, справедливы следующие утверждения о равносильности:
Если 吕 не содержит свободных вхождений переменной х, то
Зж (/&吕)〜Зж Д&й;
V/〜V/ / &吕;
V/ V 吕)〜V/ / V 吕;
3ж (/ V吕,〜m// V吕;
Зж (/ V)В)〜Зж / V Зж R\
V/ (Д & S) - Vx Д & Vx 片
7/ /〜V/ -пД;
-iVx /〜三①-пД;
если /⑺ не содержит у, то
V/ /⑺〜^У 4и);
Зж 4外〜^У
Доказательство. Мы докажем только равносильности 1.в) и 2. Доказательство остальных равносильностей проводится по тому же образцу и предлагается в качестве упражнения.
Итак, докажем, что V/ (/ V 吕)〜V/ / V S, т. е. что формула V/ (ДУS) = (V/ ДУS), которую мы обозначим через С, общезначима, если 吕 не содержит свободных вхождений х. Пусть I — произвольная интерпретация, М — ее носитель, 8 — произвольная оценка формулы С. Надо доказать, что I |= ОС.
Переменная / не имеет свободных вхождений в С. Поэтому формула ОС не зависит от того, какой терм подставляется при оценке О вместо переменной ж, и можно считать, что оценка 0 вообще не содержит х.
Очевидно, что ОС = V/ (8/ V 8吕)=(V/ 0А V 吕).Формулу V/ (9AY9В) обозначим через Ci, а (V/ 0AVB) — через。2・ Заметим, что формула ЗЛ может содержать свободные вхождения переменной ж, поэтому для нее будем употреблять обозначение 0А(х). Формула же ЗВ замкнута, следовательно, либо I |= ЗВ, либо I ^ ЗВ. Пусть I |= ЗВ. Тогда, по пункту 5) определения истинности, I |= V/ ЗАУВ, т. е. / |= С2, и / |= ^Д(ш) VS для всех т е М, значит, / |= V/ (8/V)B), т.е. I |= Ci. Значит, & и 伪 обе истинны, и I |= ОС. Пусть /戸 88 Тогда, очевидно, какова бы ни была замкнутая формула 爲 истинностные значения формул 尸 V ЗВ и 尸 совпадают. Поэтому / |= V/ (0А(х)\/0В) О / |= e/侬)V。吕 для всех m 6 М о / |= ^Д(ш) для всех т е М ^ I \= Ух ЗА О / |= V/ ЗА V ЗВ. Таким образом, I |= Ci О / |=伪,т. е. I |= %. Равносильность 1 в) доказана.
Докажем равносильность 2. Требуется доказать общезначимость формулы Зж (/ V 吕)=(Зж / V 三① 吕),которую мы обозначим 0.
Пусть I — произвольная интерпретация, М — ее носитель, 8 — произвольная оценка формулы 0. Так как 0 не содержит свободных вхождений ж, можно считать, что / не входит в 3. Имеем 3D = н Зж (OV6>S) = (Зж ОЛУ Эх е@. Докажем, что / |= Зж (OV6>S) О О / |= (Зж 8/ V Зж вВ). Формулы 8/ и ев могут содержать свободные вхождения ж, поэтому будем употреблять для них обозначения 0А(х) и 913⑺.Имеем / |= Зж (0А V 0В) О / |= (0A(rri) V ^S(m)) для некоторого m 6 М О / |=。/(如)или / 1= 8吕3) для некоторого m 6 М О Z |= Зж ЗЛ или I |= Зж ЗВ О Z |= Зж ЗЛ V Зж 80 что и требовалось доказать. Теорема доказана.
Теорема 3. Пусть А — произвольная формула, а В и & — равносильные формулы. Тогда
(/&吕)〜(/&国);5) (/三吕)〜(/三国);
(/V 吕)〜(/V国);6)「吕〜」国;
(/ D吕)〜(/ D国);7)m/吕〜Зж国;
(S D Д)-(国 D /);8) V/ 吕〜V/ 国.
Доказательство. Утверждения 1)-6) немедленно следуют из определения истинности. Докажем 7). Утверждение 8) доказывается аналогично и предлагается в качестве упражнения.
Итак, требуется доказать, что формула (Зж В = Эх В±) общезначима. Пусть I — произвольная интерпретация, М — ее носитель. Пусть 0 — произвольная оценка формулы (Зж 吕=Зж Si). Так как эта формула не содержит свободных вхождений ж, можно считать, что х не входит в 仇 Имеем 80/ В = Эх В±) (Зж 0В = Зж 8吕1). Так как ЗВ и 8国 могут содержать свободные вхождения перемен-
ной ж, будем для них употреблять обозначения 9В⑺ и OBi(x). Докажем, что / |= Зж 9В ⑺ О / |=三① Si(x). Пусть / |= Зж 913 ⑺. Тогда найдется такой элемент m 6 М, что I |= ^S (m) • По условию, В 〜&. Значит, / |= О'{В = Si), где 夕一оценка, полученная из 0 добавлением подстановки т вместо х. Но 夕СВ =国)н (夕吕=夕国)н (0В(т) = 6>Si(m))—Таким образом, / |=(е)В(221) = OBi (m))« Учитывая, что / |= О В (ш), отсюда получаем I |= OBi (m) и Z |= Зж 8国. Аналогично доказывается, что если I |= Зж 8吕1(/), то I |= Зж 913 ⑺. Из доказанного следует / |= Зж 9В = Зж ^Si, т.е. / |= 80/ S = Зж Si). Таким образом, формула Зж S = Зж 吕1 истинна в любой интерпретации при любой оценке. Значит, она общезначима. Теорема 3 доказана.
Теорема 4. Если Л В и В С, то Л С.
Это утверждение очевидно.
Теорема 5. Пусть 13 и & — равносильные формулы, а А — произвольная формула. Пусть Д1 получена из А заменой некоторых вхождений формулы 吕 на &. Тогда /〜/1.
Доказательство. Утверждение несложно доказывается индукцией по построению формулы А с помощью теорем 3 и 4.
Теорема 6. Любая формула равносильна некоторой формуле, не содержащей связок &, D, = и квантора V.
Доказательство. Докажем теорему индукцией по построению формулы.
Пусть А — атомная формула. Тогда А не содержит символов &,D,=,V.
Пусть А имеет вид (4 & 4)・ По индуктивному предположению УЦ 〜吕1,』2 〜ft, где 吕1 и 吕2 не содержат &, D, =, V. Используем очевидную равносильность
/&吕〜吕).
Тогда по теоремам 4 и 5
Л н (4 & 4)〜_|(_|Л1 V「4)〜「(「国 v「&).
Последняя формула не содержит &, D, =, V.
Аналогично разбираются случаи А =「4; Д = (4 V 4); А н (4 э 4); Л н (4 = 4); / н V/ уЦ; / н 三① 4. При этом используются следующие равносильности:
Д D S ~「/ V S;
/ 三吕〜(/ о 吕)& СВ о /)〜「(「(「/ VS) V」(「吕 V/));
V/ / 〜-'Зж -|Д.
У пражнения.
Доказать, что формула А общезначима тогда и только тогда, когда -пД не выполнима.
Выполнимы ли следующие формулы:
Зж Р(/);
V/
Зж Уу {Q{x, /) &「QO, g));
Зж Vg (QO, g) D \/z 笈(伤 g, z))?
Являются ли общезначимыми следующие формулы:
Зж Р⑺ D V/ Р(/);
-п(3ж Р⑺ D V/ Р(/));
V/ Эу Q{x,y) D Эу V/ Q(/,g)?
Пусть /⑺—формула без кванторов и функциональных символов с единственной переменной х такая, что формула Зж /(/) общезначима. Доказать, что для некоторых констант ci,... , сп формула /(5)V ... V Д(сп) общезначима.
Равносильны ли формулы Р⑺ и V/ Р⑺?
11. Предваренные формулы
Формулу А будем называть предваренной формулой, если А имеет вид Q1x1Q2x2 ... QnxnB, где Qi, Q2, • • •, On — кванторы, а формула 吕 не содержит кванторов.
Теорема 7. Каждая формула равносильна некоторой предваренной формуле.
Доказательство. Пусть А — произвольная формула. По теореме 6 любая формула эквивалентна формуле, не содержащей &, D, =. Докажем теорему индукцией по построению А.
Пусть А — атомная формула. Тогда А сама является предваренной формулой.
Пусть А н ~>8 По индуктивному предположению
В z Q1 «^1 • • • Q n*^Tl^,
где 0 — бескванторная формула. Тогда где
« = {« = {V, если Qi н 3;
« = {
« = {
если Q н V.
Пусть А имеет вид (国 V &). По индуктивному предложению 吕 1 〜Q1X1 ... Qn^nDi,吕2 〜Q[yi - - - Q^gm02, где Pl и P2 — бескванторные формулы.
Выберем переменные 引,…,zn по следующему правилу: если Xi не входит в 02, то & н &; если же Xi входит в 02, то в качестве zi возьмем какую-нибудь переменную, не входящую в 3 и 02・ При этом должно соблюдаться условие: & = Zj тогда и только тогда, когда g н Xj. Обозначим через & формулу, полученную из 3 заменой переменных ①匕...,хп на ^i,..., гп соответственно. Тогда Qi/i ... QnxnVi 〜 QiZi ... QnznC\. Для доказательства этого достаточно п раз воспользоваться равносильностями 6.а) и 6.6) из теоремы 2.
Ту же операцию проделаем с формулой Q;gi …Q^%n02・ А именно, выберем переменные 〃…..,ит так, что если 仇 не входит в &, то Ui н д〃, а если yi входит в Ci, то 〃〃 一 какая-нибудь переменная, не входящая в 02 и Ci, причем 〃〃 = Uj тогда и только тогда, когда 仇=勿. Через 伪 обозначим формулу, полученную из 02 заменой т/i,... ,ут на Ui,... ,ит соответственно. Тогда Q;gi • • • Q^gzn。? ~ Q;〃i... Q^U/nCz.
Теперь
吕 1 V 吕2 ~ Q1%1 • • • Qn?nCl V Q]〃1 . . . QmUmC? ~
~ Ql^l • • • Qn^nQi^l • • • Qm"m(C] V。2)
(мы использовали n + m раз равносильности 1.в) и 1.г) из теоремы 2; замена переменных сделана именно для того,чтобы можно было воспользоваться этими равносильностями).
Пусть / н QxB, где Q — это квантор 3 или V. По индуктивному предложению 吕 〜Qi^i …Qm^mD где 0 — бескванторная формула. Тогда А 〜QxQ±x± ... QmxmD.
Поскольку любая формула без символов D, =, & имеет один из разобранных видов, теорема доказана.
В приведении данной формулы к предваренной форме (т. е. в построении предваренной формулы, равносильной данной) не обязательно следовать доказательству теоремы 7. Например, можно не избавляться от символов D и &, а использовать равносильности
(V/ Д D S) - Зж (Д D 吕);
0n/d@~Vn (Дэй);
(吕 о V/ /) ~ V/ (吕 D /);
(吕0m//)〜Зж (吕D /)
(всюду переменная / не является свободной в 吕)и равносильности 1.а) и 1.6) из теоремы 2.
Пример. Приведем формулу
V/ Р(/) & Эу Q(g) D Зг 笈(g, z)
к предваренной форме:
V/ P(N)& By Q(y) - V/ By (P(n) & Q(g));
V/ 3y (P(n) & Q(g)) D 土 笈(g, z)〜
〜V/ 3u (P(n) & Q(〃))D 3г R(y)z)〜
〜Зж Vu Зг (P(n) & Q(〃)D 笈(g, z)).
Таким образом,
V/ P(n) & 加 Q(y) D 3г R(y)z)〜Зж Vu Зг (P(n) & Q(〃)D 笈(g, z)).
§ 12. Истинность в конечных интерпретациях
Пусть к — положительное натуральное число. Формула А называется к-общезначимо^ если Л истинна во всех интерпретациях с носителем из к элементов при любой оценке. Формула называется конечно-общезначимо^ если она истинна во всех интерпретациях с конечным носителем при любой оценке. Очевидно, что любая общезначимая формула является ^-общезначимой для любого к, т. е. конечно-общезначимой.
Пример. ФормулаЗж Р(х) D V/ Р(х) является 1-общезначимой, но не общезначимой.
Теорема 8. Для каждого к》1 существует
формула 凡〉истинная в точности во всех интерпретациях с не более чем к-элементным носителем;
формула Gk〉истинная в точности во всех интерпретациях с не менее чем к-элементным носителем;
формула Ек〉истинная в точности во всех интерпретациях с к- элементным носителем.
Доказательство, а) Положим
Fk пг 3ж1 Зж2 •..玩 Vg (g = g V g = /2 V ... V g = /&)•
Положим
Gk н ЗЖ1 ...三/& (-1/1 =力2 & Fl = Жз & . . . & Fk — l = /к)
(в бескванторную часть G& входят формулы「g = Xj при г < j).
Положим Ек н Fk & Gk・
Теорема 8 доказана.
Теорема 9. Существует конечно-общезначимая, но не общезначимая формула.
Доказательство. Такова формула
-i(Vx Vg \/z (Р(/, у) & P(g, z) D P(n, z))&
& V/ -iP(n,n) & V/ 加 P(/,g)).
Действительно, она не общезначима, так как ложна в следующей интерпретации: носитель — множество натуральных чисел; Р(/, д) = И тогда и только тогда, когда х < у.
Докажем, что эта формула конечно-общезначима. Пусть I — какая-нибудь интепретация с конечным носителем М, в которой рассматриваемая формула ложна, т. е. истинна формула
V/ Vg \/z (Р(/, у) & P(g, z) D Р(/, z))&
Тогда предикат Р(/, g) определяет строгое частичное упорядочение на М в следующем смысле. Для a,b Е М положим a < Ь, если
Р(а,Ь) = И. Так как / |= V/ Уу Vz (P(/,g) & Р(у, г) D P(/,z)), отношение < транзитивно, и так как I |= V/ ^Р(х, ж), отношение < иррефлексивно. Но любое конечное частично упорядоченное множество имеет максимальный элемент, т. е. такой элемент а, что для всех b Е М неверно, что а < Ь. Получаем противоречие, так как / |= V/ Эу Р(/,д).
Теорема 9 доказана.
Упражнения.
Доказать, что формула
Зж Vg (P(/,g) D ^Р(у,х) D (P(n,n) = P(g,g))))
3-общезначима.
Доказать, что следующие формулы конечно-общезначимы, но не общезначимы:
Зж Уу Зг ((P(g,z) D Р(//)) 口(卩(伤力)Э P(g,/)));
V/VgVz (P(n,n)&(P(/,z) D (P(/,g)VP(g,z))) D By P(y,z).
Доказать, что формула сигнатуры {几…,办}, где 几… ...,Рп — одноместные предикатные символы, общезначима тогда и только тогда, когда она истинна во всех интерпретациях с 2П- элементным носителем.
Для каждого натурального числа к》1 построить формулу в сигнатуре из одноместных предикатных символов, не содержащую знака =, которая г-общезначима при всех г < А;, но не к- общезначима.
13. Изоморфизмы и элементарная эквивалентность
Пусть Q = (Cnst, Fn, Рг) — некоторая сигнатура, /匕厶—две ее интерпретации. Обозначим носитель 厶 через Mi, носитель 厶一 через М2- Интерпретации константы с, функционального символа / и предикатного символа Р в 厶 обозначим соответственно с, /, Д а в 厶一соответственно с, /, Р.
Пусть 夕一некоторая функция из М] в М?. Вместо 夕(ш) для краткости будем писать 屮т. Будем говорить, что 夕 сохраняет константу с, если срс = с; ср сохраняет функциональный символ /, если для всех а】,...,апЕМ± выполнено 夕/(。匕...,а^) = f 3ab 夕。九); 夕 сохраняет предикатный символ Д если для всех ai,... , ап С Mi выполнено Р(О],... , а^ = Р(夕а】,...,夕а^). Функция 夕 называется
изоморфизмом из 厶 в 厶,если 1)夕一биекция, т. е. взаимно однозначное соответствие между множествами М] и М2; 2)夕 сохраняет все константы, все предикатные символы и все функциональные символы сигнатуры Q. Интерпретация 厶 изоморфна интерпретации 厶,если существует изоморфизм из 厶 в 厶・ Изоморфность интерпретаций 厶 и 厶 будем обозначать 厶 + 厶・
Нетрудно видеть, что приведенное понятие изоморфизма является обобщением используемого в алгебре понятия изоморфизма групп, колец, полей и других алгебраических структур, которые можно рассматривать как интерпретации подходящих сигнатур.
Пример 1. Пусть сигнатура состоит из двуместного функционального символа /. Определим интерпретации 厶 и 厶 следующим образом. Носитель интерпретации 厶一множество четных целых чисел; /(ж, у) = / + д. Носитель интерпретации 厶 一 множество целых чисел, делящихся без остатка на 3; /(ж, у) = / + д. Функция 夕⑺=§/ — изоморфизм из 厶 в 厶・
Пример 2. Пусть сигнатура состоит из константы а, двуместного функционального символа / и двуместного предикатного символа Р. Носитель интерпретации 厶一множество натуральных чисел; 五= °; /(^, У)=力 + g; Р(/,д) = И О ж < т/. Носитель интерпретации 厶一множество всех натуральных чисел вида 2П, где n G N; й = 1; /(ж, у) = / • g; Р(/,д) = И О ж < т/. Функция 夕(/) = 2Ж — изоморфизм из 厶 в 厶,так как 2优+夕=2Ж • 2^, 2° = 1 и ж < т/ О 2Ж < 2У.
Теорема 10. Для любой интерпретации I выполнено / + /. Если /1 + 厶〉то /2 — Л- Если /1 ~ /2 и /2 — ^з; то 厶 ~ /3.
Доказательство. Тождественная функция является изоморфизмом из / в Z Пусть функция 夕 1 является изоморфизмом из 厶 в 厶・ Тогда 夕[1 является изоморфизмом из 厶 в 厶. Пусть 夕2 — изоморфизм из 厶 в /3. Тогда 夕i。夕2 ——изоморфизм из 7i в /3. Теорема 10 доказана.
Пример 2 (продолжение). Функция log2 ж является изоморфизмом из 厶 в 71. Действительно, log2 1 = 0, log2 сохраняет /, так как log2 (ж • у) = log2 ж + log2 у, и сохраняет Р, так как х < у О о log2 / < log2 у.
Говорят, что интерпретации Zi и 厶 одной и той же сигнатуры Q элементарно эквивалентны, если для любой замкнутой формулы А сигнатуры Q выполнено 厶 |= Д О 厶 |= Л. Элементарную эквивалентность 厶 и 厶 будем обозначать 厶=1^. Очевидно, что интерпретации 71 и 厶 не являются элементарно эквивалентными тогда
и только тогда, когда найдется замкнутая формула Д, для которой 厶 |= 厶 |=
Теорема 11. Если интерпретации 厶 и 厶 сигнатуры Q изоморфны, то они элементарно эквивалентны. Более того, если 夕一изоморфизм из 厶 в 厶〉а /(/],... , /九)一формула со свободными переменными /],... , хп и а±,... , an — произвольные элементы носителя 7b то厶I= /(包「)台厶|= /(空j …,空/•
Доказательство. Пусть Mi и 祕一соответственно носители интерпретаций 7i и 厶,м 夕:^ —> М2 ——изоморфизм из Zi в 厶・ Обозначим через Q1 и Q2 сигнатуры, полученные из сигнатуры Q добавлением имен элементов соответственно из М] и М?.
Для любого терма 力 и формулы А сигнатуры Q1 обозначим через 力 и / результаты замены в 力 и / для любого m G Mi его имени m на gm — имя элемента gm G М2 • Значение терма t в интерпретации Zi будем обозначать через 用 * а в /2 ——через 用 2
Лемма 1. Для любого замкнутого терма t сигнатуры Q1 выполнено 3用1 =乔・
Доказательство. Индукция по построению t.
Пусть 力 н с, где с — константа из Q. Тогда 力=с, |t|x = с, I司2 ="夕е = " так как 夕 сохраняет константы из Q.
Пусть t т, где т С Mi. Тогда t = <^m, |t|x = m, |t|2 = gm, t. e.夕用 1 = |t|2.
Пусть t н /&…..,力九)匕 причем 夕质卜=区『(г = 1,... ,п). Тогда 力 н /(力 1,…,力九),I力 1 = /(|ti I1,... , |tn|x). Так как 夕 сохраняет
то
3用1 =夕穴质|\...,1力/) = f(3比也…,夕|力/)=
=/(|Й|2,... ,|tn|2) = I司2.
Лемма доказана.
Лемма 2. Для любой замкнутой формулы А сигнатуры Q1 выполнено /1 |= Д О /2 |= /•
Доказательство. В силу теоремы 6 достаточно доказать лемму для формул Д, не содержащих &, D, =, V. Применим индукцию по количеству символов 3, -i, V в формуле Л.
Пусть А н Р(力 1,...,力九).Тогда А = Р(力匕...,力九)./i |= Д О О Pd^il1,... , |^П|1) = И. Так как сохраняет Р,то戸(141,... ,1力小)=
=Р(夕质|\…,夕I力小).По лемме 1 夕质卜=\ti\2. Поэтому /х |= Д о о 户(而匕...,I詳 |2) = И О /2 1= Л.
Пусть / н 力1 =力2・ Тогда / =力^ = t2-厶=/ О \t^ = |力2卜 О 03历11 =夕I力2卜0曲『=I石『0"=石=石台"1= Л.
Пусть А Н「吕,причем 厶 卜吕台A |=吕. Тогда А Н「吕.
/台厶戸吕台厶戸后台厶=4
Пусть А н (吕 V С), причем /i |= S О h |= S и /х |= С о |= С. Тогда Д (S V С). Ji |= Д О (厶 |=吕или 厶 |= С) О
О (,2 |= В ИЛИ /2 1= С) о,2 |=(吕 V С) О 厶 |= Л.
Пусть А н Зж В⑺,причем для любой замкнутой формулы вида 吕(力)имееt место 厶 |=吕(力)О A |=吕(力)• Тогда А Н Зж 吕(/). /1 |= Д О /i |= S(m) для некоторого т С Mi О 厶 |= В(т) для некоторого т С М」Легко видеть, что В{т)=吕(夕ш). Поэтому /1 |= S(m) О 厶 |= В^т). Так как 夕一биекция, то gm пробегает все множество М?)когда т пробегает М^. Поэтому мы имеем 厶=/ О 厶 |=吕(夕ш) для некоторого т С Mi О I» |=吕(竺)для некоторого n С М2 О 厶 |= Зж 吕⑺ О /2 |= 4
Лемма доказана.
Применим лемму 2 к произвольной замкнутой формуле А сигнатуры Q. Так как в этом случае А совпадает с Д, мы имеем 厶 |= Д О 厶 |= Л. В силу произвольности выбора А это означает, что厶仝а.
Пусть теперь /(/],... ,жп) — произвольная формула со свободными переменными /],... ,хп, и а±,... , ап — произвольные элементы из Mi. Положим 吕 н A(a±,... , а^. Тогда 吕=/(夕。匕...,夕。九). По лемме 2 имеем 厶 |=吕台A |=吕,T. е.厶 |= /(祖,...,0九)О О 厶 |= /(夕。1,...,夕。九),что составляет вторую часть утверждения теоремы. Теорема 11 доказана.
Переформулировав теорему 11, получим: не элементарно эквивалентные интерпретации неизоморфны. В таком виде теорема 11 обычно используется при доказательстве неизоморфности.
Пример 3. Обозначим через (N, <) упорядоченное множество натуральных чисел, а через (Z, <) — упорядоченное множество целых чисел. Говоря формально, (N, <) и (Z, <) — интерпретации сигнатуры {<} (т. е. сигнатуры Q = (Cnst, Fn, Рг), где Cnst = Fn = 0, Pr = {<}) с носителями соответственно N и Z и стандартной интерпретацией символа <, а именно, 4(/, д) = И О ж < т/. Изоморфны
ли (N, <) и (Z, <)? Разумеется, нет. Ведь в (N, <) есть наименьший элемент, а в (Z, <) его нет. Иными словами,
(N, <) \=Эх Уу (х < у У х = у);
(Z, <) |= 7/ Vg (х < у У х = у).
Таким образом, мы доказали, что (N, <) и (Z, <) не элементарно эквивалентны, а из этого уже вывели их неизоморфность.
Существуют ли неизоморфные интерпретации, неизоморфность которых нельзя доказать с помощью теоремы 11? Иными словами, существуют ли неизоморфные элементарно эквивалентные интерпретации? Оказывается, существуют. Без доказательства рассмотрим следующий пример.
Пример 4. Обозначим через (Q, <) и (肽,<) упорядоченные множества соответственно рациональных и действительных чисел. Рассмотрим их как интерпретации сигнатуры {<}. Тогда (Q, <) 步 步(肽,<),поскольку Q и 肽 неравномощны. С помощью так называемой элиминации кванторов можно доказать, что (Q, <)=(肽,<).
Упражнения.
Доказать, что интерпретации (肽,+, <) и (肽+, •, <), где 肽 + — множество положительных действительных чисел, изоморфны.
Доказать, что следующие интерпретации не являются элементарно эквивалентными:
(@<) и (%,<);
(%,+)и (@+);
(@ +, •) И(X +, •);
г)(Х+,<) и (©,+,•);
А)(N, +) и (%,+).
. Доказать, что (即 +) ~ (森,+), где сложение пар действительных чисел производится покомпонентно.
14. Выразимость. Доказательство невыразимости с помощью автоморфизмов
Пусть 4力1,…,/九)一формула сигнатуры Q со свободными переменными /],... ,хп, I — интерпретация сигнатуры Q с носителем М, а Я есть n-местный предикат на М. Говорят, что формула / выражает предикат R в интерпретации 7, если 笈(例,...,а九)=И О О / |= А^,...,包九)для всех а】,...,ап 6 М.
Предикат R назовем выразимым в интерпретации /, если существует формула, его выражающая.
Пример 1. Возьмем стандартную интерпретацию языка формальной арифметики (N, +, •, S, 0). Формула Эу х = у + у выражает предикат «ж четно». Формула Зг ж + г = у выражает предикат х & у. Формулы / + / = /и/ = 0 выражают один и тот же предикат ж = 0. Можно ли выразить в этой интерпретации двуместный предикат у = 2Ж? Оказывается, можно, хотя догадаться, как это сделать, довольно трудно.
Пример 2. Возьмем интерпретадию (Z, <).①ормула
/ < g & 7z (ж < г & г < 7/)
выражает предикат у = / +1. Можно ли в (Z, <) выразить предикат z = / + д? Чуть позже мы докажем, что нельзя. Этому примеру можно придать следующий смысл. Пусть некто знает, что такое целые числа и что такое х < у для целых / и д, но не знает никаких других отношений и функций на Z. Тогда на языке первого порядка ему можно объяснить, что такое g = / +1, но нельзя объяснить, что такое z = х + у.
Пусть в определении изоморфизма интерпретации 厶 и 厶 совпадают; изоморфизмы из / в / называются автоморфизмами интерпретации Z
Определение автоморфизма 夕 очевидно принимает такой вид:
срс = с для всех констант с;
2)寸(例,...,0九)^2(夕例,• • •,夕0九)Для всех / G Fn;
P(Qi,...,。九)=P(夕Qi,...,夕。九)для всех Р С Рг.
Пример 3. Для всех k С Z отображение 夕&(/) = / + к является автоморфизмом интерпретации (Z, <). Действительно,夕& — биекция, и 夕 & сохраняет <, так как x<y^x-\-k<y-\-k. В качестве упражнения предлагается доказать, что других автоморфизмов эта интерпретация не имеет. Например, отображение 夕(/) = 2/ хоть и сохраняет <, но автоморфизмом не является, так как оно не биективно.
Теорема 12. Множество всех автоморфизмов фиксированной интерпретации I образует группу относительно операции композиции.
Эта теорема доказывается аналогично теореме 10.
Пусть R есть n-местный предикат на некотором множестве М, а 夕一функция из М в М. Будем говорить, что 夕 сохраняет Я, если для всех а±,... ,an Е М выполнено R(a±,... , а九)=R((pa* 夕。九).
Пример 3 (продолжение). Все автоморфизмы интерпретации (Z, <) сохраняют двуместный предикат |/ — д| = 2. Действительно, любой автоморфизм (Z, <) имеет вид 夕&(/) = / + к, и \х — у\ = 2 О О |(/ + 衣)一(g + к)| = 2.
Теорема 13. Пусть 夕一автоморфизм интерпретации 丄 Тогда 夕 сохраняет все выразимые в I предикаты.
Доказательство. Пусть предикат 笈(д,... ,жп) выразим в Z Тогда для некоторой формулы /(①匕...,жп) выполнено
任(a1, • • • , ^n) - И 台 / (= /(包1 , • • •,包九)•
По теореме 11 для всех。匕...,an из носителя I выполнено
I 1= /(包0/= 4夕0ь…,夕0九)■
Из этих двух утверждений получаем
笈, 0九)=И О R(з01,...,夕0九)=И,
что и требовалось. Теорема 13 доказана.
Теорема 14. Предикат z = х + у невыразим в интерпретации (Z, <).
Доказательство. Возьмем автоморфизм 夕⑺ =ж + 1 интерпретации (Z, <). Функция 夕 не сохраняет предикат г =力+g, так как О = 0 + 0, но 夕(0)济 夕(0) +夕(0), ведь 夕(0) = 1. Теперь воспользуемся теоремой 13. Теорема 14 доказана.
Пример 4. Можно ли, используя только понятие «точки ж, д, г лежат на одной прямой», на языке первого порядка объяснить, что такое перпендикулярность прямых? Сформулируем точнее вопрос. Пусть (肽2, Т) обозначает интерпретацию сигнатуры с одним трехместным предикатным символом Т, носитель которой — множество точек плоскости, а Т(/, т/, г) = И тогда и только тогда, когда точки х〉у)2 лежат на одной прямой. Выразим ли в (啜,Т) четырехместный предикат Я(ж, у, г, и), определенный так: Я(ж, у, г, и) = И тогда и только тогда, когда х ^ у, z ^ и и прямая, проходящая через / ид, перпендикулярна прямой, проходящей через z и а? Ответ: не выразим, так как любое аффинное преобразование является автоморфизмом (啜,Т), а среди них есть преобразования, не сохраняющие углы.
У пражнения.Доказать, что группа автоморфизмов интерпретации (Z, <) изоморфна группе целых чисел по сложению.Какова группа автоморфизмов интерпретации (Q +)?невыразимость данного отношенияУ пражнения.Доказать, что группа автоморфизмов интерпретации (Z, <) изоморфна группе целых чисел по сложению.Какова группа автоморфизмов интерпретации (Q +)?невыразимость данного отношения
У пражнения.
Доказать, что группа автоморфизмов интерпретации (Z, <) изоморфна группе целых чисел по сложению.
Какова группа автоморфизмов интерпретации (Q +)?
невыразимость данного отношения
У пражнения.
Доказать, что группа автоморфизмов интерпретации (Z, <) изоморфна группе целых чисел по сложению.
Какова группа автоморфизмов интерпретации (Q +)?
невыразимость данного отношения
Доказать выразимость или в данной интерпретации:
ж < т/ в (Z, +);
г = 0 в (Z,ж = т/ + 1);
/ = g + 1 в (Z, д| = 1);
ж = т/ + 1 в (Z,x = т/ + 2);
т/ = ж + 17 в (N,т/ = ж + 1);
т/ = ж + 1 в (N, <);
— д| = 17 в (肽,|/ = д| = 1);
/ = 1 в (N, / : д);
М = ^ в (С, |/-д| = 1);
/ = 17 в (N, g = / + 1);
/ = 17 в (N, g : /);
м) «ж — простое число»
в (N, ж : д);
н) z = / . g в 供,+, g = /2); о)* z = х • у в (N, +,
«ж — полный квадрат»);
п) ж = 0 (mod 3) в (%,+);
р) ж = 1 (mod 3) в (%,+).
ГЛАВА 3
ЭЛЕМЕНТЫ ТЕОРИИ ДОКАЗАТЕЛЬСТВ
Аксиоматический метод
Л ксиоматический метод построения научной теории заключается в том, что некоторые исходные положения, называемые аксиомами или постулатами, принимаются «без доказательства», а все утверждения этой теории выводятся из них путем рассуждений.
Аксиоматический метод в математике впервые был использован Евклидом в III веке до н. э. в его книге «Начала» при изложении основ элементарной геометрии, теории чисел, алгебры и других разделов античной математики. «Начала» Евклида составлены по определенной схеме, сложившейся еще до Евклида в древнегреческой науке: сначала приводятся определения и постулаты, а затем формулировки теорем и их доказательства.
Некоторые определения в «Началах» Евклида — просто описания исходных понятий. Например: «Точка есть то, что не имеет частей», «Линия же — длина без ширины», «Прямая линия есть та, которая равно расположена по отношению к точкам на ней». Ясно, что такие «определения» вряд ли могут быть использованы в математических доказательствах. Однако наряду с ними имеются определения, являющиеся таковыми и в современном смысле: они «называют» понятия. Например: «Параллельные суть прямые, которые, находясь в одной плоскости и будучи неограниченно продолжены в обе стороны, ни с той, ни с другой стороны между собой не встречаются».
Вслед за определениями идут постулаты, в которых утверждается возможность выполнения элементарных построений:
Требуется, чтобы от каждой точки ко всякой другой точке можно было провести прямую линию.
И чтобы каждую ограниченную прямую можно было непрерывно продолжить по прямой.
И чтобы из всякого центра и всяким радиусом можно было описать круг.
И чтобы все прямые углы были равны между собой.
И чтобы всякий раз, когда прямая, падающая на две прямые, образует с ними внутренние односторонние углы, сумма которых меньше двух прямых, то эти прямые пересекаются с той стороны, где эта сумма меньше двух прямых.
За постулатами в «Началах» Евклида приводятся аксиомы — предложения о свойствах отношений равенства и неравенства. Вот примеры аксиом: «Равные порознь третьему равны между собой», «И если к равным прибавить равные, то получим равные», «И целое больше части».
На основе определений, постулатов и аксиом путем доказательства выводятся новые геометрические утверждения — теоремы.
Поскольку предполагалось, что геометрия есть описание реального физического пространства, вполне естественно, что Евклид полагал значение таких понятий, как «точка», «прямая», достаточно ясным, а относящиеся к ним постулаты и аксиомы считал «самоочевидными истинами».
В дальнейшем совершенствование аксиоматического изложения геометрии шло в основном по пути выявления утверждений, которые использовались Евклидом в доказательствах, но не были сформулированы им явно в виде аксиом. Полностью эта работа была завершена лишь в XIX веке Пашем и Гильбертом.
Вместе с тем, много усилий было потрачено на попытки исключить из числа основных допущений V постулат Евклида, который казался слишком сложным, чтобы его можно было причислить к ^самоочевидным истинам55. Хотя все попытки доказать V постулат на основе отдельных аксиом оказались неудачными, они все же привели к некоторым положительным результатам. А именно, благодаря им был обнаружен ряд геометрических утверждений, эквивалентных V постулату, в частности, следующее: «Через каждую точку, не лежащую на прямой %, проходит в точности одна прямая, параллельная %».
К началу XIX века начало возникать подозрение о недоказуемости V постулата Евклида. Это подозрение перешло почти в полную уверенность, когда в 1826 году Лобачевский построил геометрическую теорию, основанную на системе постулатов, в которой V постулат Евклида заменен утверждением, несовместимым с ним: «Если на плоскости точка А не лежит на прямой Z, то существует более чем одна прямая, проходящая через А и параллельная %». Хотя «истинность» такой аксиомы кажется сомнительной, при выводе следствий из нее Лобачевский не встретил каких-либо противоречий. Это, однако, не означало, что противоречия здесь вообще невозможны.
Следующим событием на пути укрепления позиций неевклидовой геометрии явилось построение различных моделей геометрии Лобачевского средствами геометрии Евклида. Типичным примером такого рода моделей может служить модель, предложенная Ф. Клейном в 1871 г. В этой модели основные геометрические понятия: плоскость, точка и прямая — интерпретируются соответственно как внутренность какого-нибудь круга в евклидовой плоскости, точка внутри этого круга и хорда этого круга, рассматриваемая без своих концов. В такой интерпретации оказываются истинными все аксиомы геометрии Лобачевского; правда, при этом расстояния и углы измеряются не так, как на обычной евклидовой плоскости, а по правилам, разработанным для проективной геометрии. Подробное описание интерпретации Клейна и других моделей геометрии Лобачевского можно найти в учебных пособиях по высшей геометрии). Наличие таких моделей показывает, что геометрия Лобачевского столь же непротиворечива, как и геометрия Евклида.
Построение моделей геометрии Лобачевского имело принципиальное значение для развития аксиоматического метода, поскольку оно привело к осознанию возможности рассматривать аксиоматическую теорию чисто формально, т. е. не предполагая заранее какое-либо определенное значение основных понятий. Более того, мы вольны выбирать значения этих понятий каким угодно образом, лишь бы при этом оказывались истинными данные аксиомы.
В XIX в. аксиоматический метод получил широкое распространение в математике. Дж. Пеано (1891 г.) предложил аксиоматику для натурального ряда. Были построены аксиоматические теории для действительных чисел. Наконец, как мы уже говорили в главе 1, была выработана система аксиом для теории множеств. Особенно широкое распространение формальные аксиоматики получили в современной алгебре, где система аксиом по существу выступает в роли определения той или иной алгебраической структуры.
Пример 1. Теория групп. В алгебре группа определяется как непустое множество G, на котором задана бинарная операция •, удовлетворяющая следующим аксиомам:
операция • ассоциативна;
во множестве G существует единичный элемент, т. е. такой элемент е, что для любого a G G выполняются равенства а • е = а и е • а = а;
для любого а С G имеется обратный элемент, т. е. такой элемент 优 С G, что а •优=е и 优• а = е.
Очевидно, что эти аксиомы могут быть записаны на языке первого порядка, сигнатура которого содержит константу е и двуместный функциональный символ •, в виде следующих формул:
G1. \/х \/у \/z {х - у) - z = х - {у - z);
G2. V/ (х • е = х к е • х = х);
G3. Vx Эу (/ • g = е & g • / = е).
Систему аксиом G1-G3 назовем системой аксиом для теории групп и обозначим ее G. Всякая интерпретация, в которой истинны аксиомы теории групп, является (или называется) группой.
Пример 2. Теория линейно упорядоченных множеств. Аксиомы линейно упорядоченного множества записываются в виде формул языка первого порядка, сигнатура которого содержит только двуместный предикатный символ <. Вот эти аксиомы:
LO1. V/ -I/ < /;
LO2. Ух Уу Уz (х < у у < z D х < z);
LO3. V/ Vg (х<у\/х = у\/у<х).
Формулы LO1 и LO2 называются аксиомами предпорядка, а формула LO3 — аксиомой линейной упорядоченности. Систему аксиом для теории линейно упорядоченных множеств обозначим LO. Линейно упорядоченное множество — это такая интерпретация рассматриваемого языка, в которой истинны аксиомы LO1-LO3.
Пример 3. Теория полей. Аксиомы поля записываются в виде формул языка первого порядка, сигнатура которого содержит константы 0 и 1, а также двуместные функциональные символы + и •. Вот аксиомы поля:
F1. V/ Vg / + g = g + /;
F2. V/ Vg Vz (x + у) + z = x + (у + z);
F3. Vx ж + 0 = ж;
F4. V/ 加 / + g = 0;
F5. V/ Vg / • g = g • /;
F6. V/ Vg Vz (x • y) • z = x • (y • z);
F7. V/ / • 1 = /;
F8. V/(F = 0 D 加 / • g = 1);
F9. V/ Vg Vz (/ + g) • z = (/ • z) + (g • z);
F10.「0 = 1.
Систему аксиом F1-F10 обозначим F. Поле — это такая интерпретация, в которой истинны все формулы F1-F10.
Логическое следование
Теперь рассмотрим вопрос: какие утверждения следует считать относящимися к данной аксиоматической теории? Например, можно ли считать фактом теории групп утверждение, выражаемое формулой Ух Уу х • у = g • /? Очевидно, нет, потому что существуют группы, в которых это утверждение неверно. (Группы, в которых это утверждение истинно, называются абелевыми^ Иными словами, можно сказать, что это утверждение не вытекает логически из аксиом. Это наблюдение помогает выразить понятие логического следования в виде точных определений.
При рассмотрении аксиоматических теорий в общем виде приходится считаться с тем, что любое множество замкнутых формул данного языка первого порядка может быть принято в качестве системы аксиом. Итак, пусть Т — произвольное множество замкнутых формул сигнатуры Q. Моделью множества Т называется интерпретация I сигнатуры Q, в которой истинны все формулы из Т. Множество Т называется совместным^ если оно имеет хотя бы одну модель.
Таким образом, модели системы аксиом G — это в точности все группы, модели системы аксиом LO — все линейно упорядоченные множества, модели системы аксиом F — это все поля. Очевидно, что все эти системы аксиом совместны. А вот пример несовместного множества формул (доказательство предлагается в качестве упражнения):
{V/ Vg / = g, By Зг (P(y) & ^P{z^}.
Будем говорить, что замкнутая формула А сигнатуры Q логически следует (семантически следует или просто следует) из Г, и писать Т |= Д, если А истинна во всех моделях множества Т. В этом случае будем говорить также, что А является логическим следствием множества формул Т.
Теорема 1. Пусть Т — некоторое множество замкнутых формул сигнатуры Q, а Л и 13 — замкнутые формулы сигнатуры Q. Тогда
(Г |= Д и Г |= S) О Г |= Д & S;
Т U {/}卜吕台Т = / О片
Г |= Д О множество Т U {「/} несовместно.
Доказательство. Утверждение а) очевидно.
Докажем б). Пусть Т U {/} |= 0 и пусть I — произвольная модель множества Т. Если /戸 4 To по определению истинности I \= A D В. Если же I |= Д, то I является моделью множества Т U {Д}, и по условию I |= В. Значит, и в этом случае I \= A D В. Таким образом, формула / D 吕 истинна в любой модели множества Т, т. е. Г |= Д D В.
Обратно, если Т \= A D В и I — произвольная модель множества Т U {Д}, то Z |= Д D S и Z |= Д. Отсюда немедленно следует, что I |= В. Значит,吕 истинна в любой модели множества Т U {Д}, т. е. Т U {/} |= 8
Теперь докажем в). Пусть Т |= А. Допустим, что множество Т U {「/} совместно, т. е. существует его модель Z Тогда I |=и I является также моделью для Т. По условию в этом случае I |= А. Значит, Z |= Д и Z |=「/, т. е. I 戸 А. Полученное противоречие показывает, что множество Т U {「/} на самом деле несовместно.
Пусть множество Т U {「/} несовместно, т. е. не имеет модели, и пусть I — произвольная модель множества Т. Тогда I |= Д, так как иначе I |=「/ и I была бы моделью множества Т U {「/}. Значит, А истинна в любой модели множества Т, т. е. Т |= А. Теорема доказана.
Множество Т замкнутых формул сигнатуры Q будем называть семантически полным, если Т совместно и для любой замкнутой формулы А сигнатуры Q выполнено Г |= Д или Т |= -)/.
Пример 1. Пусть сигнатура не содержит никаких констант, функциональных и предикатных символов (пустая сигнатура). Рассмотрим следующее одноэлементное множество формул этой сигнатуры: Т = {V/ Уу х = у}. Это множество семантически полно, поскольку оно имеет единственную, с точностью до изоморфизма, модель — одноэлементное множество, и любая замкнутая формула либо истинна, либо ложна в этой модели.
Теорема 2. Совместное множество формул Т семантически полно тогда и только тогда, когда любые две его модели элементарно эквивалентны.
Доказательство. Пусть множество Т семантически полно, и пусть 厶 и 厶一две его модели. Допустим, что существует такая замкнутая формула Д, что 厶 |= / и 厶 戸 4 Тогда Т 戸 /, так как 厶 ^ А^Т ^「/, так как 厶 戸 ^А. Полученное противоречие определению семантической полноты показывает, что такой формулы А не существует, т. е.厶 仝 厶・
Обратно, пусть любые две модели множества Т элементарно эквивалентны. Пусть / — произвольная замкнутая формула. По условию Т совместно, т. е. имеет некоторую модель Iq. Очевидно, /о |= А или /о |= -пД. Пусть для определенности Zq |= / и пусть I — произвольная модель множества Т. Так как I = Iq, то I \= Л, т. е. А истинна в любой модели множества Г, и Г |= А.
Аналогично доказывается, что если Zq |=「4 то Т |= ^А. Теорема доказана.
Ни одна из систем аксиом G, LO, F не является семантически полной. Без доказательства приведем два нетривиальных примера семантически полных систем аксиом. Первая получается добавлением к LO аксиом
\/хЗу х < д;
Ух Эу у <
Vx V?/ (ж < т/ D Зг (ж < г & г < д)).
Эта система аксиом задает понятие плотного линейного порядка без первого и последнего элементов и обозначается DLO.
Другой нетривиальный пример семантически полной системы аксиом — это система аксиом алгебраически замкнутых полей характеристики ноль 4CF0, которая получается добавлением к F двух бесконечных множеств формул {4 | k С N, к》2} и {& I k С N, к》2}, где
4 н -i(... ((1 +1) +1)... +1) +1 = о, к единиц
Вк н Vt/oVt/1 ..Уук (「" = 0 О 为(” •丿 + ... + % • Z + % = 0))
(здесь zn- z) - z) - ... - z) - z).
п раз
Итак, мы уточнили, что значит, что данное утверждение логически следует из данной системы аксиом. Как же практически можно искать логические следствия из аксиом? Ясно, что нет смысла действовать в полном соответствии с определением логического следования, т. е. перебирать все модели данной системы аксиом и убеждаться, что в них истинно данное утверждение, поскольку, во- первых, нам не всегда известны все модели, а, во-вторых, их может оказаться бесконечно много (как, например, групп). Все же иногда
(и даже очень часто) путем некоторого рассуждения удается доказать, что то или иное утверждение логически следует из аксиом. Тогда такое рассуждение мы называем доказательством, а полученное с его помощью следствие из аксиом — теоремой. Оказывается, что таким образом можно доказать любое утверждение, логически вытекающее из аксиом, записанных в виде формул языка первого порядка, а необходимые для этого методы доказательства можно полностью обозреть и систематизировать. Это делается с помощью так называемого исчисления предикатов.
У пражнения. 1. Доказать, что аксиомы теории групп логически следуют из множества формул
{V/ Vg Vz / • (д • z) = (/ • д) • z, ▽//•£ = /, \/х Эу х • у = е}
и не следуют из множества формул, полученного из этого заменой последней формулы на формулу \/х Эу у • х = е.
оказать, что формулы \/х \/у (х • у = О D х = О У у = 0) и V/ / • 0 = 0 логически следуют из аксиом поля, а формула
Vx (ж + ж = О D ж = 0)
не следует.
Тавтологическое следствие
В § 10 главы 2 было введено понятие тавтологии как формулы языка первого порядка, которая получается из некоторой пропозициональной тавтологии подстановкой каких-либо формул языка первого порядка вместо пропозициональных переменных. Будем говорить, что формула А языка первого порядка является тавтологическим следствием формул Д1,... , Ап того же языка, если формула УЦ & ... & Ап D / есть тавтология.
Пример 1. ①ормула P(z) является тавтологическим следствием формул By Q(y) и By Q(y) D P(z)・ Действительно, формула By Q(y) & (三沙 Q(y) D P(z)) D P(z) есть тавтология: она получается подстановкой в пропозициональную тавтологию Р & (Р D Q) D Q формулы By Q(y) вместо пропозициональной переменной Р и P{z) вместо Q.
Теорема 3. Тавтологическое следствие общезначимых формул общезначимо.
Доказательство. Пусть / — тавтологическое следствие общезначимых формул Д1,... , Ап. Пусть I — произвольная интерпретация, 0 — произвольная оценка формулы А. Произвольным образом расширим оценку 丛 чтобы она стала оценкой формул Д1,... , Дп, т. е. придадим какие-нибудь значения и тем переменным, которые входят свободно в эти формулы, но не получают значений при оценке 3. Полученную оценку обозначим 夕. Очевидно, что О' А н 9 А. По условию формула Д1 & ... & Ап D Д — тавтология. По теореме 1 из главы 2 она общезначима. Значит, /卜夕(/1 九 D Д). Н0
少(4 & ... & Дп э Д) (少 4 &...&&Ап э 少/).
Так как формулы Д1,... , Ап общезначимы, то I |= О' А±^ ..., I |= О'Ап. Отсюда немедленно следует, что I |=夕/, т. е. I |= ЗА. Таким образом, формула А истинна в любой интерпретации при любой оценке, т. е. А общезначима. Теорема доказана.
Исчисление предикатов
Фиксируем некоторую сигнатуру Q. Аксиомами исчисления предикатов в сигнатуре Q называются следующие формулы:
(al) любая тавтология сигнатуры Q;
(а2) /(力)D ЗжД(ж);
(aз) V/ /⑺D厶⑴;
(a4) V/ (/⑺ D 吕)D (Зж /⑺ 口 吕);
(а5) V/ (吕 D D D V/ /(/)>;
(аб) й =厶;
(a7)力1 =力2 D力2 =力1;
(a8)力1 =力2 &力2 =力3 D厶=力3;
(a9)力 1 = <§]_&...&力九=sn D /(力 i,...,力九)= /(<§1,... , s^);
(alO)力 1 = S] & ... & tn = sn ZD (P (力 i,... , tn) = -P(<^i,--- ч ^n^ •
Здесь /(/) — любая формула сигнатуры Q, х — любая переменная, терм 力 свободен для / в /(/); В — любая формула сигнатуры Q, не содержащая свободных вхождений /;力匕...,力九,si,... , sn — любые термы, / — любой n-местный функциональный символ из Q, Р — любой n-местный предикатный символ из Q.
Множество аксиом в каждой из групп бесконечно: фиксируя /(/), S,й,... ,tn,si,... ,sn,f,P, можно получить любую конкретную аксиому. Аксиомы (аб)-(аЮ) называются аксиомами равенства.
Пример 1. Формула 0 + 0 = у D Эх х + х = у является аксиомой из группы (а2), или просто аксиомой (а2). Здесь /(/)= = / + / = д,力=0. Формула \/х х - у = у • х Э (zi+ Z2)- у = у - (^1 + ^2) является аксиомой (аЗ). Здесь /(/)=岂• у = у • % 力=%] + %2・
Пример 2. Вот примеры аксиом (а9), (а10):
x = y& z = u3x + z = y + u;
x = y& z = uD (х < z = у < и).
Любое множество фигур вида ——…工,―-,где 4,... , Ап, / — формулы, называется правилом вывода. Будем говорить, что формула А получена из формул 4,…,Ап по правилу П, если
, . . . , />тг тт
В исчислении предикатов два правила вывода: правило тавтологического следствия
(Gen)(Gen)(Тaut) = { 4 …工'4 J А — тавтологическое следствие 4,..., и правило обобщения
(Gen)
(Gen)
А — любая формула сигнатуры Q, / — любая переменная
Вот некоторые часто применяющиеся виды фигур, содержащиеся в правиле (Taut):
A Ad В
—^^ , где Л и В — произвольные формулы сигнатуры Q. Совокупность таких фигур называют правилом заключения или modus ponens, сокращенно (МР).
д 3 ^ В э С
/ g с, где 40 С — произвольные формулы сигнату
ры Q. Совокупность таких фигур называется правилом силлогизма.
「6 口「4 6口/ ' 6 口「4「6口4 ГДе 4 " — произвольные формулы сигнатуры Q. Совокупность таких фигур называют
правилом контрапозиции.
Последовательность формул Si,... , Sn называется выводом^ если для всех г < п формула 吕〃 либо есть аксиома исчисления предикатов, либо получена из предыдущих формул этой последовательности по одному из правил вывода (Taut) или (Gen). Формула S выводима, если существует вывод Si,... ,Sn такой, что Вп = В.
Пример 3. Установим выводимость формулы
Уу P(/,g) D Уу Зж Р(ж,у).
\/у P(/,g) D Р(х,у) (аксиома (аЗ));
Р(% у) D Зж Р(% у) (аксиома (а2));
Vg P(/,g) D Зж P(/,g) (получена из 1. и 2. по правилу силлогизма);
V/ (Vg Р(ж, т/) D Зж Р(/,д)) (получена из 3. по правилу (Gen));
V/ (Vg P(/,g) D Зж P(/,g)) D (Зж Vg P(/,g) D 3x P(/,g)) (аксиома (a4));
3x Vg P(x, 7/) D Зж P(x, 7/) (получена из 4. и 5. по (MP));
Vg (Зж Vg P(/,g) D 3x P(/,g)) (получена из 6. no (Gen));
Vg (Зж Vg Р(/, g) D 3x P(n, g)) D 0/ Vg P(n, g) D Vg 3x P(n, g)) (аксиома (a5));
3x Vg Р(ж, у) D Vg Зж P(x,y) (получена из 7. и 8. по (MP)).
Теорема 4 (теорема о корректности исчисления предикатов) . Любая выводимая формула общезначима.
Доказательство. Сначала докажем, что все аксиомы общезначимы. Общезначимость (al) следует из теоремы 1 главы 2. Общезначимость аксиом равенства очевидна. Докажем общезначимость аксиомы (а2).
Итак, пусть С = /(力)э Зж /(/), причем терм 力 свободен для переменной х в формуле /(/). Пусть I — некоторая интерпретация сигнатуры Q с носителем 必 а 8 — некоторая оценка формулы С. Требуется доказать, что / |= ОС. Очевидно, что ОС = 0A(t) D ^ Зж /(/). Здесь и далее подстановка считается старшей операцией по отношению к операции оценивания, таким образом, 8/(力)一это ЗВ для 吕 н /(力),а не С (力)для С = О А. Оценка 0 сопоставляет всем свободным переменным формулы С имена элементов из М. Какие же переменные входят свободно в С? Во-первых, это все свободные переменные формулы /⑺ кроме х. Во-вторых, это все переменные, входящие в терм t (в том числе, возможно, и /). Действительно, поскольку терм 力 свободен для / в /(/), переменные, содержащиеся в 力 не связываются кванторами формулы /(/) и остаются свободными в /(力)• Если х входит в 仇 то через 夕 обозначим оценку, которая получается из 8 выбрасыванием столбца, соответствующего переменной ж, т. е. О' сопоставляет всем переменным кроме / те же имена элементов из М)что и 仇 а переменной х ничего не сопоставляет. Очевидно, что 0 Зж /(/) = О' Зж /(/) = Зж 8'/(/). С другой стороны 0A(t) н 0A(0t). Формула /(况)не содержит свободно ж,
так что 8/(况)н 夕/(况)• Таким образом, ОС = О'A(0t) D Зж 夕/⑺• Пусть I |=夕/(况),и пусть с Е М есть значение оцененного терма 处 Тогда, очевидно, I |=夕/©• По определению истинности это означает, что / |= ЭхОгЛ(х).
Таким образом, если в интерпретации I истинна посылка формулы ОС, то истинно и ее заключение, т. е. I |= ОС, что и требовалось доказать.
Аналогично доказывается общезначимость аксиомы (аЗ). Докажем общезначимость аксиомы (а4).
Пусть /⑺ и ^ — произвольные формулы, причем 吕 не содержит свободных вхождений переменной х. Очевидно
V/ (/⑺ D 吕)〜Vn(-i/(n) V 吕).
По теореме 2 из главы 2 имеем
Vn(-i/(n) V 吕)〜Vn-i/(n) V 吕〜-пЗжД(ж) V 吕〜ЗжД(ж) D В.
Мы доказали, что Vn(/(n) V 吕)〜ЗжД(ж) D 吕.Отсюда следует, что формула Vn(/(n) V 吕)D (ЗжД(ж) D 吕)общезначима.
Общезначимость аксиомы (а5) доказывается аналогично.
Теперь докажем, что любая выводимая формула общезначима. Пусть 吕1,... , Sn — произвольный вывод. Индукцией по г докажем, что формула & общезначима. Если г = 1, то ^ ——аксиома, и по доказанному она общезначима. Пусть г = А; + 1, и для любого / < к формула Bj общезначима. Докажем, что 鸟 общезначима. По определению вывода формула 鸟 получена из формул с меньшими номерами по правилам (Taut) или (Gen). Пусть Bi получена из формул 民1,... , Bim по правилу (Тaut). По индуктивному предположению S^,... , &е общезначимы. Так как 3 — их тавтологическое следствие, то по теореме 1 главы 3 鸟 также общезначима.
Пусть формула ^ получена из формулы Bj, где J ^ к, по правилу (Gen), т.е. & = V/ 13j. Пусть I — произвольная интерпретация с носителем 必 а 8 — произвольная оценка формулы 吕加 Нужно доказать, что I |= 9&. Так как / не входит свободно в ^, можно считать, что 0 не содержит х. Формула 学 может содержать / свободно, поэтому для нее будем употреблять обозначение 13j (ж). Очевидно, что OBi = V/8学⑺. По индуктивному предположению формула Bj(x) общезначима, т. е. истинна в I при любой оценке. В частности, если т — произвольный элемент из М)то I |=夕学⑺, где 8’ 一 оценка, которая всем переменным из 0 сопоставляет те же имена, что и 8, и, кроме того, переменной / сопоставляет т.
Очевидно, что 夕学⑺=OBj (m)• Таким образом, каков бы ни был элемент т G М, имеет место I |= OBj (m) • По определению истинности это означает, что I |= V/8学(/), т. е. I |= 8学,что и требовалось доказать.
Итак, мы доказали, что если последовательность формул 国,… ...,Sn является выводом, то все эти формулы общезначимы. Всякая выводимая формула является последней формулой в некотором выводе, следовательно, она тоже общезначима. Теорема доказана.
Теперь можно понять, почему существенно условие, что терм t свободен для / в /⑺ в аксиомах (а2) и (аЗ). Пусть, например, /(/) ^ Уу х = у, t ^ у. Очевидно, что t не свободен для / в /(/). Имеем: /(力)н Vg g = g, ЗжД(ж) ^ Эх Уу х = у. Аксиома (а2) принимает вид Ру у = у D 0х \/у х = у. Очевидно, что эта формула не общезначима. Тот же эффект иллюстрируем на примере аксиомы (аЗ). Пусть /⑺ н 加 f =沙,力=У・ Тогда аксиома (аЗ) примет вид V/ Эу^х = у D Эу ^у = у. Эта формула также не общезначима.
Таким образом, если условие, что терм 力 свободен для / в /(/), не соблюдается, то аксиомы (а2) и (аЗ) могут оказаться не общезначимыми.
Также в аксиомах (а4) и (а5) существенно условие, что 吕 не содержит свободных вхождений х. Например, если /⑺ =Р(х) и 吕 н Р(/), то аксиома (а4) принимает вид
V/ (Р⑺ D Р⑺)D 0/p⑺ D Р⑺),
а аксиома (а5) — вид
V/ (P(n) D Р(/)) 口(Р(/) 3 V/P(/)).
Нетрудно проверить, что обе эти формулы не общезначимы.
Правило вывода П называется производным, если для каждой . Ап
фигуры ——…工,―- С П существует последовательность формул 吕1,... , Bk такая, что)В& = /, и любая формула в этой последовательности либо является аксиомой, либо принадлежит множеству {Д1,... ,/九}, либо получена из предыдущих по правилам (Taut) или (Gen).
Теорема 5. Следующие правила вывода являются производными:
){ Б D Д(ж)и S — произвольные формулы, причем^
I 6 Z)УжЛ(ж)丨吕 не содержит свободных вхождений / J '
6)С Л(ж) э Б ]/(/) 口吕 一 произвольные формулы, причем^
I ЗжЛ(ж) D Б 1й не содержит свободных вхождений / J
Доказательство. Для каждого из этих правил вывода построим требуемую в определении производного правила последовательность формул:
1.吕 D /⑺;
V/ (吕 D /(/)) (из 1 по (Gen));
V/ (吕 D /力 D (吕 D Vn/(n)) (аксиома (a5));
吕 D УхА(х) (из 2 и 3 по (МР)).
1. /⑺D片
V/ (/⑺ О 吕)(из 1 по (Gen));
V/ (Д(ж) D S) D (ЗжД(ж) D В) (аксиома (а4));
三①厶(/) D 吕(из 2 и 3 по (МР)).
Теорема доказана.
Правила а) и б) из теоремы 5 называются правилами Бернайса.
При доказательстве выводимости формул можно пользоваться производными правилами вывода. А именно, назовем сокращенным выводом любую такую последовательность формул 吕1,...,吕九,что для всех г формула ^ либо является аксиомой, либо получена из предыдущих формул по правилам (Тaut) или (Gen), либо получена из предыдущих формул по какому-либо производному правилу.
Теорема 6. Если Si,... , Вп — сокращенный вывод, то все формулы )В] ,... , Sn являются выводимыми.
Доказательство. Утверждение доказывается индукцией по п. Пусть n = 1. Очевидно, если сокращенный вывод состоит из одной формулы, то эта формула — аксиома и потому выводима.
Пусть утверждение верно для любого п & к. Докажем, что оно верно для n = А; + 1. Итак, пусть Si,... ,S^,S^+i — сокращенный вывод. Очевидно, что последовательность 吕],...,吕& является сокращенным выводом, и по индуктивному предположению все формулы 吕1,... ,Bk выводимы. Докажем, что 吕&+1 также выводима. Рассмотрим четыре случая, возможные для формулы S^+i в силу определения сокращенного вывода.
1)吕&+1 является аксиомой. В этом случае 吕&+1 выводима.
2)吕&+1 получена из предыдущих формул S^,... , Bim по правилу (Taut). Как мы только что доказали, исходя из индуктивного предположения, все формулы S^,... , Bim выводимы. Выпишем подряд выводы формул 吕〃1,... , Bim, а затем напишем формулу &+i・ Нетрудно проверить, что полученная последовательность ...,吕〃1,... , Bim,吕&+1 является выводом формулы S^+i.
3)吕&+1 получена из некоторой предыдущей формулы ^ по правилу (Gen). Как и в предыдущем случае, строится вывод формулы
4)吕&+1 получена из предыдущих формул S^,...,吕〃小 по производному правилу вывода. По определению производного правила вывода это означает, что существует последовательность формул Ci,... ,С/ такая, что С/ =吕&+1, и любая формула С〃 либо является аксиомой, либо принадлежит множеству {吕^,...,吕〃小}, либо получена из предыдущих формул по правилу (Taut) или (Gen). Все формулы 羯,...,Bim выводимы. Преобразуем последовательность Ci,... ,С/ следующим образом: всюду, где в ней встречается какая- нибудь из формул Bi】,...,Bim, заменим ее на вывод этой формулы. Очевидно, что полученная последовательность является выводом формулы &+]_. Теорема доказана.
Заметим, что верно и обратное: если все формулы последовательности 吕1,... , Bk выводимы, то эта последовательность является сокращенным выводом. Действительно, для всех г правило, состоящее из единственной фигуры 耳,является производным. Таким образом, последовательность &〉...〉口卜 является сокращенным выводом тогда и только тогда, когда для любого i ^ к формула ^ выводима.
Теорема 7. Для любой формулы А выводимы формулы
~Nx / = Зж -1/.
Доказательство. Построим сокращенный вывод формулы
Д D Зж Д (аксиома (а2));
7/ A D -|/ (из 1. по правилу контрапозиции);
7/ Д D Vx -пД (из 2. по правилу Бернайса);
V/ -пД D -пД (аксиома (аЗ));
Д D -iVx -пД (из 4. по правилу контрапозиции);
三① / D -iVx -пД (из 5. по правилу Бернайса);
7/ /三 V/ -пД (из 3. и 6. по правилу контрапозиции). Аналогично доказывается выводимость второй формулы.
У пражнение. Доказать выводимость формул:
V/ Уу P(/,g) D Уу V/ Р(/,д);
Зж Эу P(/,g) D 三沙 Зж Р(/,д);
V/ Р⑺ D Зж Р(/);
V/ Р⑺ V V/ Q(n) D V/ (Р(/) V Q(/)); д) Зж (P(n) & Q(/)) D Зж P⑺ & Зж Q(n);
V/ (P(n) & Q(/)) D V/ P⑺ & V/ Q(n);
3x (P(n) V Q(/)) D Зж P⑺ V Зж Q(n);
3)V/ (P(n) D Q(/)) D (Зж P⑺ D 3x Q(/))・
Вывод из гипотез
Пусть Г — произвольное (возможно, бесконечное) множество формул сигнатуры Q. Выводом из Г называется такая последовательность формул 国,…,Вп сигнатуры Q, что при любом г (г = 1,... , п) формула 鸟 либо есть аксиома, либо получена из предыдущих формул по правилу (Taut), либо получена из какой-либо предыдущей формулы А по правилу (Gen), т.е. имеет вид V/ Д, причем переменная / не входит свободно ни в одну из формул множества Г. Будем говорить, что формула 吕 выводится аз Г и писать Г Н В, если существует такой вывод Si,... ,Sn из Г, что Вп =°= В.
Таким образом, формулы из Г при построении вывода из Г играют ту же роль, что и аксиомы; обычно эти формулы называются гипотезами. Очевидно, что если множество гипотез Г пусто, то определение выводимости из Г превращается просто в определение выводимости. Условимся вместо 0 Н В писать Н В. Заметим, что если в Г входят только замкнутые формулы, то ограничение на применение правила (Gen) в определении вывода из Г выполняется автоматически. Вместо {Д1,... , Ап}卜 А будем писать УЦ,... , Ап 卜 А.
Пример. Докажем, что P(n), Vg (P(g) D Q(g))卜 Q(/)・ Действительно, следующая последовательность является выводом:
Vg (P(g) D Q(y)) (гипотеза);
Vg (P(y) D Q(血 D (P(n) D Q(/)) (аксиома (a3));
P(n) D Q⑺(из 1. и 2. по (MP));
Р⑺(гипотеза);
Q(n) (из 3. и 4. по (МР)).
Установим некоторые простые, но важные свойства отношения выводимости Г Н S.
Теорема 8. Пусть Г и Д — произвольные множества замкнутых формул сигнатуры Q, причем Д С Г. Пусть 吕一формула сигнатуры Q. Тогда, если Д Н то Г Н S.
Доказательство. Пусть Si,... ,Sn — вывод формулы 吕 из △ . Очевидно, что он является также выводом из Г. Действительно, каждая из формул ^ (г = 1,... , п) либо является аксиомой, либо принадлежит △ (а, значит, и Г), либо получена по правилам (Taut) или (Gen) из предыдущих формул. Кроме того, поскольку Г состоит только из замкнутых формул, выполняется ограничение на применение правила (Gen), т. е. выполняются все требования, содержащиеся в определении вывода из Г. Теорема доказана.
Теорема 9. Пусть Г — произвольное (возможно, бесконечное) множество формул сигнатуры Q, В — произвольная формула сигнатуры Q, причем Г Н S. Тогда существует такое конечное множество Д С Г, что △ I- 8
Доказательство. Пусть Г Н S. Это означает, что существует такой вывод Si,... ,Sn из Г, что ВП^В. Пусть △ = {吕^,... ,Bim}— множество всех формул из Г, входящих в этот вывод. Очевидно, что вывод 吕1,... ,Sn удовлетворяет всем требованиям, содержащимся в определении вывода из △. Значит 吕 выводима из конечного множества Д С Г. Теорема доказана.
Теорема 10. Пусть Г и Д — произвольные множества замкнутых формул сигнатуры Q, причем всякая формула С С △ выводима из Г, и пусть 吕一произвольная формула сигнатуры Q и Д Н S. Тогда ГИЙ.
Доказательство. Пусть Si,... ,Sn — вывод формулы 吕 из △ . Преобразуем его следующим образом. Всюду, где в этом выводе встречается какая-нибудь из формул С С △, заменим ее на вывод этой формулы из Г. Нетрудно проверить, что полученная новая последовательность формул является выводом формулы S из Г. Теорема доказана.
Теорема 11 (теорема о дедукции). Если Г U {/} 卜 吕〉то ГН Дэй.
Доказательство. Пусть Si,... ,Sn — вывод формулы 吕 из Г U {/}. Докажем сначала, что если ^ С Г U {/} или ^ ——аксиома, то Г \~ Л D Bi,Если ^ 6 Г, то Г Н Д D Si, так как Д D ^ ——тавтологическое следствие формулы 吕九 Если же ^ =°= Д, то Г Н Д D ^, так как Д D Д — тавтология, т. е. аксиома. Если 鸟一аксиома, то Г Н Д D Si, так как Г Н ^, и Д D ^ ——тавтологическое следствие формулы Bi・
Теперь индукцией по г докажем, что для всех г ^ п имеет место V \~ A D Bi,Этого достаточно, так как В 工 13n.
Пусть г = 1. В этом случае ^ 6 Г U {/} или ^ ——аксиома, и мы уже доказали, что Г Н Д D ^.
Пусть г = к + 1, и для любого / < к имеет место Г Н Д D Sj. Возможны три случая.
Bi — аксиома или ^ 6 Г U {/}. В этом случае утверждение уже доказано.
Bi получена из формул S^,... , Bim с меньшими номерами применением правила (Taut), т. е.鸟一тавтологическое следствие формул %,... , &小. Нетрудно проверить, что в этом случае Д D ^ является тавтологическим следствием формул Дэй^,... , A^Bim. По индуктивному предположению Г Н Д D S^,... , Г Н Д D Bim. Выпишем подряд вывод из Г формул A D В^ (Z = 1,... , т) и добавим к полученной последовательности формулу Д D ^. Нетрудно проверить, что возникающая при этом последовательность ...,Д D Bi】,...,/ D Bim, Д D Si является выводом формулы Ad Bi из Г.
& получена из Sj по правилу (Gen), причем j ^ к. Тогда Bi ^ Ух Bj и х не входит свободно в Д и формулы из Г. По индуктивному предположению Г Н Д D Bj. Пусть Ci,... , Ст, Л D 吕歹一 вывод формулы Д D Sj из Г. Дополним эту последовательность следующими формулами: V/ (Д D 吕歹)(получена из предыдущей по правилу (Gen)); V/ (Д D Sj) D (Д D V/ 学)(аксиома (а5)); А 3 \/х Bj (получена из двух предыдущих по правилу (ТИР)). Полученная последовательность формул очевидно является выводом формулы Д D Vx Bj из Г. Теорема доказана.
Будем говорить, что множество формул Г противоречиво^ и писать Г Н ±, если существует такая формула S, что Г Н S и Г I—\В. В противном случае множество Г будем называть непротиворечивым.
Теорема 12. а) Если Г Н ± и С — любая формула, то Г Н С. б) Если Г, -пД Н то Г Н Д.
Доказательство, а) По условию Г Н S и Г I—iS для некоторой формулы В. Выпишем подряд друг за другом выводы формул 吕 и -|)В из Г. К полученной последовательности добавим формулу С. Новая последовательность формул ...,吕,...,S, С является выводом формулы С из Г, поскольку формула С является тавтологическим следствием формул 吕 и「吕.
По условию Г, -пД Н S и Г,「/ Н「吕 для некоторой формулы В. По теореме о дедукции Г I—|Д D 吕 и Г I—|Д D「吕.Выпишем подряд друг за другом выводы формул「/ D 吕 и -пД D「吕 из Г
и добавим к ним формулу А. Полученная последовательность формул ...,-пД D 吕,...,-пД D -iS, Д является выводом формулы / из Г, поскольку А является тавтологическим следствием формул -|Д D 吕 и -пД D「8. Теорема доказана.
Теорема 13. Множество замкнутых формул Г непротиворечиво тогда и только тогда, когда любое конечное его подмножество непротиворечиво.
Доказательство. 1) Докажем, что если множество замкнутых формул Г непротиворечиво, то любое его подмножество Д С Г непротиворечиво. Пусть Г непротиворечиво. Допустим, что некоторое его подмножество △ противоречиво. Это означает, что для некоторой формулы 吕 имеет место Д Н S и Д IiS. По теореме 8 отсюда следует, что Г Н S и Г IiS. Это невозможно в силу предположения о непротиворечивости Г. Значит, △ непротиворечиво.
Пусть любое конечное подмножество Д С Г непротиворечиво. Допустим, что Г противоречиво, т. е. для некоторой формулы 吕 имеет место Г Н S и Г Н「8 По теореме 9 существуют конечные множества Ai С Г и Д2 С Г такие, что Ai Н S и Д2 Н「吕. Пусть Д = Ai U △?. В силу теоремы 8 △卜 吕 и △ IiS. Значит, △ — противоречивое конечное множество. Это противоречит нашему предположению. Значит, Г непротиворечиво. Теорема доказана.
У пражнение. Доказать, что
V/ (Р(/) D Q(/)), P(g)卜 Q(g);
(P(/) D Q(/)),P⑺ I- Q(n);
b) G \~ ^x ^z 3y x - у = z',
r) F H Vx ж • 0 = 0;
д) F \~\/x \/y (/ • g = 0 D / = 0 V g = 0), где G и F — системы аксиом групп и полей соответственно.
Теории первого порядка
Пусть нам дана какая-либо система аксиом, т. е. (вообще говоря, произвольное) множество Г замкнутых формул сигнатуры Q. Математика интересуют прежде всего те предложения, которые являются логическим следствием аксиом, т. е. такие замкнутые формулы А сигнатуры Q, что Г |= А. Следующая теорема показывает, что построение вывода предложения / из аксиом Г является одним из способов установления того факта, что А логически следует из Г.
Теорема 14 (обобщенная теорема о корректности исчисления предикатов). Пусть Г — произвольное множество замкнутых формул сигнатуры Q; S — замкнутая формула той же сигнатуры, причем ГИЙ. Тогда Г |= В.
Доказательство. Пусть Г Н S. По теореме 9 существует конечное множество {3,… ,Pm} С Г такое, что 3,…,0^ 卜 b Применяя m раз теорему о дедукции, получаем, что формула
3 О (02 О (…О (ТЛп о 吕)…))
выводима в исчислении предикатов. В силу теоремы о корректности исчисления предикатов (теорема 4) эта формула общезначима, т. е. истинна в любой интерпретации. В частности, если I — произвольная модель множества Г, то Z |= 7?i D (02 D (... D (Pm D 吕)...)). Принимая во внимание, что 3,…,0^ G Г, а потому I |= 3,… …,/ |= 0n а также определение истинности для формул, имеющих вид импликации, получаем, что I |= В. Значит,吕 истинна в любой модели Г, т. е. Г |= В. Теорема доказана.
Доказанная теорема дает важный способ установления непротиворечивости множества формул.
Теорема 14'. Пусть множество замкнутых формул Г сигнатуры Q имеет модель. Тогда Г непротиворечиво.
Доказательство. Пусть Г имеет модель. Допустим, что множество Г противоречиво, т. е. для некоторой формулы А сигнатуры Q Г Н Д и Г I1/. Тогда Z |= Д и Z |=по теореме 14. А это невозможно в силу определения истинности. Теорема доказана.
Предъявление вывода формулы А из множества аксиом Г можно рассматривать как доказательство утверждения А на основе аксиом, а само предложение Д, для которого построен такой вывод,— как теорему. Это вполне соответствует представлению о теореме как об утверждении, имеющем доказательство на основе аксиом.
Множество замкнутых формул, которые логически следуют из данного множества аксиом, называется неформальной аксиоматической теорией (или семантической теорией).
Множество замкнутых формул, которые выводимы в исчислении предикатов из данного множества аксиом, называется формальной аксиоматической теорией (или дедуктивной теорией).
Множество формул Г сигнатуры Q называется дедуктивно за- мкнутым^ если для любой замкнутой формулы 吕 сигнатуры Q из ГИЙ следует 吕 е Г.
Теорема 15. Всякая формальная аксиоматическая теория дедуктивно замкнута.
Доказательство. Пусть Г — некоторая система аксиом, Т — соответствующая ей дедуктивная теория, т. е. множество всех замкнутых формул, выводимых из Г, и пусть Т \~ В. Мы находимся в условиях теоремы 10: всякая формула из Т выводима из Г, и Г Н В силу этой теоремы Г Н т. е. S 6 Т. Теорема доказана.
Теорема 16. Всякая неформальная аксиоматическая теория дедуктивно замкнута.
Доказательство. Пусть Г — некоторая система аксиом, Т — соответствующая ей семантическая теория, т. е. множество всех замкнутых формул, логически следующих из Г, и пусть Т \~ В. По теореме 9 существует конечное множество формул {3,…,Pm} С Т такое, что 0匕...,Pm к 吕.Пусть / — произвольная модель множества Г. Так как 3,…,0^ принадлежат теории Г, то I |= 3,… ...,I |= 0n т. е. I — модель множества {0,0^}. В силу обобщенной теоремы о корректности исчисления предикатов (теорема 14) {2)i,... ,0加} |= В. Значит, I |= В. Таким образом,吕 истинна в любой модели множества Г, значит,吕 логически следует из Г, т. е. 吕 С Г. Теорема доказана.
В силу теоремы 14, если Г — некоторая система аксиом, Т]- задаваемая ею дедуктивная теория, аТ?——соответствующая ей семантическая теория, то Т] С 7^. Нашей ближайшей целью будет доказательство одной из важнейших теорем математической логики, что Т]=厶,т. е. что можно говорить об аксиоматической теории, опуская эпитеты “формальная" и “неформальная".
Как видно из теорем 15 и 16, любая дедуктивная теория и любая семантическая теория дедуктивно замкнуты. Это свойство лежит в основе следующего определения.
Теорией первого порядка (элементарной теорией или просто теорией) в сигнатуре Q называется произвольное дедуктивно замкнутое множество замкнутых формул сигнатуры Q. Таким образом, для теории Т утверждения А Е Т и Г Н Д равносильны.
Семантическая и дедуктивная теории, задаваемые некоторой системой аксиом, — примеры теорий первого порядка. Рассмотрим еще один способ задания теорий, который наряду с аксиоматическим широко используется в математике. А именно, пусть зафиксирована некоторая интерпретация I сигнатуры Q. Рассмотрим множество Т(/) замкнутых формул сигнатуры Q, истинных в этой интерпретации. Очевидно, что I — модель множества Т(/).
Теорема 17. Какова бы ни была интерпретация I, множество Т(/) дедуктивно замкнуто и, следовательно, является теорией первого порядка.
Доказательство. Докажем, что если замкнутая формула / сигнатуры Q такова, что Т(/) Н Д, то Д 6 Т(/). Пусть Т(/)卜 Л. В силу обобщенной теоремы о корректности исчисления предикатов (теорема 14) Т(/) |= Д, т. е. А истинна в любой модели множества Т(/), в частности, I |= А. Это как раз и означает, что А С Т(/)・ Теорема доказана.
Теория Т(1) называется элементарной теорией интерпретации I. К теориям первого порядка применимо понятие непротиворечивости, введенное нами для произвольных множеств формул. Из теоремы 12 следует, что если теория противоречива, то она содержит все замкнутые формулы данной сигнатуры. Из теоремы 13 непосредственно вытекает, что теория Т непротиворечива тогда и только тогда, когда любое конечное множество Д С Г непротиворечиво.
Теория первого порядка Т в сигнатуре Q называется полной (или дедуктивно полной), если Т непротиворечива, и для любой замкнутой формулы А сигнатуры Q либо Д 6 Т, либо「/ С Т. В противном случае непротиворечивая теория называется неполной.
Теорема 18. Какова бы ни была интерпретация I, ее элементарная теория Т(/) полна.
Доказательство. Какова бы ни была замкнутая формула Д, выполняется ровно одно из условий: / |= / или /戸 / и, значит, / |= -пД. В первом случае А С Т(/), во втором —С Т(/). Теорема доказана.
Пусть К — некоторый класс интерпретаций сигнатуры Q. Рассмотрим множество Т(К) всех замкнутых формул сигнатуры Q, истинных в любой интерпретации I G К, т. е. Т(К) = Р|/Е^ ^^Y Из теоремы 17 следует, что множество Т(К) дедуктивно замкнуто (как пересечение дедуктивно замкнутых множеств). Т(К) называется элементарной теорией класса К. Очевидно, что если К] С К?, то Т(К?) U Т(К1). Таким образом, например, элементарная теория групп — это множество предложений языка теории групп, истинных в любой группе. Из дальнейших результатов будет видно, что оно совпадает с множеством предложений, выводимых из аксиом группы.
Заметим, что указанные два способа задания элементарных теорий —аксиоматический и с помощью интерпретаций — принципиально не различаются между собой. Действительно, произвольная элементарная теория может рассматриваться как формальная аксиоматическая теория, аксиомами которой являются все предложения этой теории. В то же время, как следует из теоремы Гёделя, доказанной в гл. 4, любая непротиворечивая теория первого порядка может рассматриваться как элементарная теория некоторого класса интерпретаций, а именно, класса всех ее моделей. Тем не менее, в математической логике очень часто рассматриваются вопросы нахождения простой (например, конечной) аксиоматики для данной теории, если известны все ее модели, а также вопросы описания всех моделей данной аксиоматической теории, т. е. задачи перехода от одного способа задания элементарных теорий к другому. Очень часто эти задачи оказываются весьма содержательными и приводят к глубоким математическим результатам. Позднее мы рассмотрим некоторые из них.
Формальная арифметика
Напомним, что описанный нами в § 7 главы 2 язык формальной арифметики имеет сигнатуру, состоящую из единственной константы 0, одноместного функционального символа S и двух двуместных функциональных символов + и •. Стандартная интерпретация этого языка имеет своим носителем множество натуральных чисел N, константа 0 и функциональные символы + и • интерпретируются обычным образом, a Sx обозначает ж + 1. Эту интерпретацию обозначим через 9^. Очевидно, что с математической точки зрения главный интерес представляет изучение элементарной теории этой интерпретации Т (旳,поскольку именно она составляет содержание элементарной теории чисел. Можно сказать, что неявно изучением этой теории и занималась математика, начиная с античных времен.
Аксиоматика арифметики была осуществлена сравнительно недавно. Рассмотрим аксиоматику натурального ряда, предложенную Пеано (1891 г.). Исходные (неопределяемые) понятия этой аксиоматической теории — число 0 и операция перехода от числа п к следующему за ним числу п'.
Аксиомы Пеано:
Р1. О — натуральное число.
Р2. Если п — натуральное число, то п' — натуральное число.
РЗ. Если шип — натуральные числа, то т' = п' только в том случае, если т = п.
Р4. Если п — натуральное число, то п' ^ 0.
Р5. Пусть Р — некоторое свойство натуральных чисел, причем 1) 0 обладает свойством Р; 2) если какое-нибудь натуральное число п обладает свойством Р, то следующее за ним число п' обладает свойством Р. Тогда каждое натуральное число обладает свойством Р. Аксиома Р5 выражает принцип математической индукции.
Попытаемся записать аксиомы Пеано на языке формальной арифметики, добавив к ним еще аксиомы, описывающие свойства сложения и умножения. В результате получим следующую систему аксиом:
А1. V/ Vg (Sn = Sy 3 х = у);
А2. V/ -iSn = 0;
АЗ. Vx ж + 0 = ж;
А4. Ух Уу х + Sy = S(n + g);
А5. V/ / • 0 = 0,
Аб. \/х\/у х・ Sy = x・y + x>
А7. 4。)& V/ (/⑺ D /(Sn)) D Vn /(/)•
Поясним смысл этих аксиом. Аксиомы А1 и А2 выражают соответственно аксиомы Пеано РЗ и Р4. (Аксиомы Пеано Р1 и Р2 не нуждаются в специальной записи: их выполнимость обусловлена наличием в языке константы 0 и функционального символа S.) Аксиомы АЗ-А6 естественным образом задают индуктивные определения операций сложения и умножения. Выражение А7 представляет собой схему аксиом: какова бы ни была формула /(/) языка формальной арифметики, формула вида А7 является аксиомой. Таким образом, А7 представляет бесконечное множество аксиом. Заметим, однако, что схема аксиом А7 не вполне соответствует аксиоме Пеано Р5, поскольку последняя распространяется на любое из 2»° свойств натуральных чисел, в то время как схема аксиом А7 имеет дело лишь со счетным числом свойств, записываемых формулами. Тем не менее, схему аксиом А7 принято называть принципом математической индукции.
Задаваемая аксиомами А1-А7 формальная аксиоматическая теория называется арифметикой Пеано и обычно обозначается РА. Очевидно, что интерпретация 况 является моделью теории РА, так что РА С Т(“). Оказывается, что теории РА и Т(“)не совпадают, т. е. не любая формула, истинная в стандартной интерпретации,
выводима из аксиом теории РА. В этом состоит основное содержание классической теоремы Гёделя о неполноте формальной арифметики.
Эта теорема впоследствии была наполнена следующим более общим смыслом: какова бы ни была система аксиом формальной арифметики, удовлетворяющая некоторым разумным (см. ниже) требованиям, существует истинная в стандартной интерпретации замкнутая формула, не выводимая из этой системы аксиом. ^Разумные требования55 состоят в следующем: 1) каждая аксиома истинна в стандартной интерпретации; 2) существует алгоритм, распознающий по любой замкнутой формуле рассматриваемой сигнатуры, является ли она аксиомой или нет.
У пражнение. Вывести в РА формулы
SS0 + SSS0 = SSSSS0 и SS0 • SS0 = SSSS0.
ГЛАВА 4
ТЕОРЕМА ГЁДЕЛЯ О ПОЛНОТЕ
Расширение теории
Цель этой главы — доказать теорему Гёделя о полноте (первая форма) — теорему, обратную к теореме 14': любое непротиворечивое множество замкнутых формул имеет модель. Достаточно доказать эту теорему только для теорий. Действительно, пусть Г — произвольное непротиворечивое множество замкнутых формул. Определим Т как множество всех замкнутых формул, выводимых из Г. Тогда Т — теория первого порядка, причем Т непротиворечива, так как Г непротиворечиво. Если же Т имеет модель, то эта модель является и моделью множества Г, так как Г С Г.
Теорема 1. Пусть Т — произвольное множество замкнутых формул,履 一 замкнутая формула. Множество Т U {§} непротиворечиво тогда и только тогда, когда Т I/「В.
Доказательство. Пусть множество Т U {吕} непротиворечиво. Докажем, что Т I/ В. Допустим обратное: Т к「В. Тогда по теореме 8 из главы 3 Т U {吕} IS. Кроме того, Т U {吕} к В. Следовательно, множество Т U {吕} противоречиво вопреки предположению.
Пусть множество Т U {吕} противоречиво. По теореме 12 из главы 3 отсюда, в частности, следует, что Т U {吕} IiS. По теореме о дедукции Г Н S D「吕. Заметим теперь, что「吕 является тавтологическим следствием формулы 吕 D S, значит Т IiS. Таким образом, если Т I/「0 то множество Т U {吕} непротиворечиво. Теорема доказана.
Теорема 2. Пусть Т — полная теория сигнатуры Q. Тогда для любых замкнутых формул А и В сигнатуры Q :
Н Д V S О Г Н Д или Г Н S;
S)T^ ЛЭ Вот V ЛилиТ в-
^)Т^А = В^(Т^АиТ^В)или(Т\/АиТ\/В).
Доказательство. Утверждение 1) очевидно.
Докажем 2). Пусть Г Н Д V S. Докажем, что Г Н Д или Т V В. Допустим противное: Т I/ Л и Т I/ В. Тогда в силу полноты Т имеем Т Н「/ и Т IiS. В силу 1) формула「/ &「吕 выводима из Т. Следовательно, Т I1(/ V Б), ибо эта формула есть тавтологическое следствие формулы「/ &「吕. Получили, что Г Н Д V S и Т I—|(Д V S). Это невозможно в силу непротиворечивости Т. Значит Т \~ А или Т \~ В.
Пусть Т \~ А или Т V В. Тогда Т к / V 吕,так как Д V S — тавтологическое следствие как формулы Д, так и формулы В.
Теперь докажем 3). Пусть Т \~ A D В. Тогда, очевидно, если Г Н Д, то Г Н т. е. или Г I/ Д, или Т V В.
Пусть TI// или Т V В. Если Г I/ Д, то Г I—i/ в силу полноты Г, и Г Н Д D S, так как Д D S — тавтологическое следствие ^А. Аналогично, если Г Н S, то Г Н Д D S, ибо / О 吕一тавтологическое следствие формулы В.
Утверждение 4) доказывается так же, как 2) и 3). Теорема доказана.
Будем говорить, что теория Т1 является расширением теории Г, если Т С Т'.
Следующую теорему называют леммой Линденбаума.
Теорема 3. Если Si U S2 С ... С Sn С ... — возрастающая последовательность непротиворечивых теорий в сигнатуре Q, то U^i Sn есть непротиворечивая теория.
Доказательство. Докажем сначала, что множество формул U^i ^п дедуктивно замкнуто. Пусть А — замкнутая формула в сигнатуре Q, причем U^i Sn 卜 А. Тогда существует конечное множество Г С U^i Sn> для которого Г Н Д. В силу конечности Г существует такое т, что Г С Sm. Тогда Sm 卜 Д, следовательно, AeSmnAe\J^=1Sn.
Теперь докажем, что множество U^i Sn непротиворечиво. Допустим противное: для некоторой формулы 吕 выполнено U^i Sn \~ В и U^i S九 I—|吕.Тогда существуют конечные Гх, Г2 С U^i S九,для которых Г1 Н S, Г2 I|吕.Вновь существует такое т, что Г1 С Sm, Г2 С Sm. Следовательно, Sm Н S и Sm к S, что противоречит условию теоремы. Теорема доказана.
Теорема 4 (теорема Линденбаума). Пусть Т — непротиворечивая теория в сигнатуре Q. Тогда существует полная теория Т' в сигнатуре Q, являющаяся расширением Т.
Доказательство. Докажем теорему в предположении счетности сигнатуры Q. В общем случае теорема доказывается с использованием аксиомы выбора, точнее, леммы Цорна, эквивалентной аксиоме выбора.
Множество всех замкнутых формул сигнатуры Q счетно, так как каждая формула сигнатуры Q является словом в счетном алфавите, полученном добавлением к Q предметных переменных (их счетное множество) и символов: =,-i,&,V,D,=,V, 3,(,),,, а множество всех слов в любом счетном алфавите счетно.
Пусть ^1,^2,...,吕九,... 一пересчет всех замкнутых формул сигнатуры Q. Определим последовательность теорий So, Si, S2,... ...,S^,... следующим образом. Положим So = Т・ Пусть Sn уже определена. Если ^Bn^± С Sn, то положим S九+1 = Sn. В этом случае ^Вп^\ С S九+】.Если же ^Вп^\ g Sn, то пусть S九+1 —— множество всех замкнутых формул, выводимых из Sn U {吕九+1}. В этом случае 吕九+1 G S九+1. Определение последовательности S°, Si, S2,... закончено. Очевидно, So, Si, S2,... — возрастающая последовательность теорий. Докажем индукцией по п, что Sn непротиворечива. При п = 0 это нам дано по условию. Пусть n = А; + 1, и все теории So, Si, S2,... , S^ непротиворечивы. Если ~>&+i G S&, то S&+i = S&. По индуктивному предположению Sk непротиворечива, следовательно, S&+1 непротиворечива. Пусть ~>&+i g S&. Тогда S&+1 есть множество всех замкнутых формул, выводимых из Sk U {&+1}. Так как S& I/ &+i, то по теореме 1 множество Sk U {&+1} непротиворечиво, следовательно, и S&+1 непротиворечиво.
Положим Т1 = U^o S九.По лемме Линденбаума (теорема 3) Т1 — непротиворечивая теория. Докажем, что Т1 полна. Пусть 吕一произвольная формула сигнатуры Q. Тогда 吕 имеет некоторый номер в пересчете, скажем, п + 1, т. е.吕=吕九+1・ По построению теории S九+1 выполнено 吕九+1 G S九+1 или ^Bn^± G S九+1. Следовательно, 吕九+i е Т1 или「吕九+i С Т1. Теорема доказана.
Каноническая интерпретация теории
Пусть Т — теория в сигнатуре Q, содержащей хотя бы одну константу. Определим каноническую интерпретацию теории Т, которую мы будем обозначать Iq.
Пусть М — множество всех замкнутых термов сигнатуры Q, т. е. термов, не содержащих переменных. Два замкнутых терма 力i и 力2
назовем подобными^ если Г Н ti =力2・ Из аксиом равенства (а6)-(а8) следует, что подобие является отношением эквивалентности. Запись 力 1 〜 力2 будет означать, что термы 力i и 力2 подобны.
Определим носитель интерпретации /° равным множеству классов эквивалентности замкнутых термов по отношению подобия. Эти классы будем называть далее классами подобия. Класс подобия, содержащий терм 力 обозначим 罔. Итак, носитель /о — это Mo = {[t] I t С М}. Теперь определим интерпретацию любой константы с G Q, любого функционального символа / G Q и любого предикатного символа Р G Q.
Положим с = [с].
Пусть [ti],... , [tn] — произвольные элементы Mq- Тогда 力匕 … ...,tn — замкнутые термы. Положим /([力 J …,[力") = [/(力…力九)]. Поскольку /(力 1,... , tn) и с — замкнутые термы, [/(力i,...,力九)]и [с] принадлежат Mq. Заметим, что если t — значение замкнутого терма t, то t =罔. Действительно, с = с,
/(力 1,力/г) = / (Й , • • •,原)=/([力1] , • • •,[力 7l]) = [/ , • • •,力九)]•
Положим P([ti],... , [tn]) = И 台 T I- P(力...,力九).
Надо показать, что это определение корректно, т. е. что значения / и Р на [ti],... , [tn] не зависят от выбора представителей из классов [й],... , [tn]. Пусть [力i] = [si],... , [tn] = [sj Требуется доказать, что [/(й,... , %)] = [/(si,... , s九)]и что Т I- Р(й,... ,tn) О Г Н P(si,…,s九). Но это следует непосредственно из аксиом (а9)-(а10) исчисления предикатов.
Определение канонической интерпретации закончено.
Теория Т в сигнатуре Q называется теорией Генкина, если для любой замкнутой формулы сигнатуры Q вида ЗжД(ж) выполнено Т Н Д(с) для некоторой константы с из Q, если Т Н ЗжД(ж).
Мы сначала докажем теорему Гёделя о полноте для полных теорий Генкина, а затем сведем общий случай к этому частному случаю.
Теорема 5. Пусть Т — полная теория Генкина. Тогда каноническая интерпретация теории Т является моделью теории Т.
Доказательство. Пусть Т — полная теория Генкина в сигнатуре Q, Zq ——каноническая интерпретация теории Т. Индукцией по количеству символов 3, V, -«, &, V, D, = в формуле докажем, что для любой замкнутой формулы А сигнатуры Q выполнено /о |= Д О ОТ НА
Пусть А н Р(й,...,力九),где 力 1,...,力九一замкнутые термы. По определению канонической интерпретации
戸([力1],... ,%]) = И О Г Н Р(5 ...
Значение любого замкнутого терма 力 в /° равно 罔.Таким образом, по определению истинности атомной формулы Р(力匕...,tn) имеем /о |= Р(й,... , tn) О Р(质],…,[力")=И. Таким образом, /0 |= Д о ОТ НА
Пусть / н 力1 =力2・ В этом случае
/0 |= Д О /g |=力1 =力20质]=[力2]0力1〜力20T卜4
Пусть / н -)Ь Докажем, что Г Н Д О /0 |= Л. Если Г Н Д, то Г У S, так как Т непротиворечива. По индуктивному предположению /о |= S О Г Н S. Значит, /о 戸 В. Следовательно, /о |= А. Докажем, что Iq \= А Т \~ Л. Пусть /о |= /, т. е. /о 戸 8 По индуктивному предположению Т I/ В. Тогда Т I—|吕 в силу полноты Г, т. е. Т 卜 Л.
Пусть для формул 吕 и С доказываемое утверждение верно, т. е. /о |= S О Г Н S и Zq |= СоТЬС. Докажем это утверждение для формул 吕 V С,吕 & С,吕 О С,吕三 С.
А н 吕 V С. Принимая во внимание теорему 2, индуктивное предположение и определение истинности, получаем:
Т 卜 / О (Т 卜吕 или Т Н С) О (/о |=吕 или /о |= С) О /о |= А.
/ н 吕 & С. Аналогично 4), имеем
Th (Th В нТ^ С) ^(10^ Вн 10 ^С) ^10^ Л.
/ н 吕 О С. В этом случае
Т |- / 台(Т |/吕 или Т I- С)台(4 戸吕 или /0 |= С)台 А |= А.
Л В = С. Тогда
т |-/ 台(Т |-吕 и Т I-С) или (Т I/吕 и Т 1/С)台
О (/о |=吕 и /о |= С) или (Iq 戸吕 и /о 戸 С) О /0 |= 4
Пусть для любой замкнутой формулы вида 吕(力)верно доказываемое утверждение, т. е. /о |=吕(力)О Т к 吕(力). Докажем его для формул V/ В(х) и Зж В(х).
/ н ЭхВ(х). Пусть Г Н Д. Так как Т — теория Генкина, то для некоторой константы с из Q выполнено Т к S(c). По индуктивному предположению /о |= S(c). Следовательно, /о |= ЭхВ(х).
Пусть /о |= ЭхВ(х), т. е. для некоторого элемента т из носителя /о выполнено /о |= S(m)« Но все элементы носителя — классы подобия замкнутых термов. Следовательно, т =罔 для некоторого замкнутого терма t. Тогда для этого терма 力 выполнено /о |= 13(t). По индуктивному предположению отсюда следует Т Н 13 (t). Но Т \~ В(t) D 三/吕⑺(аксиома (а2)). Следовательно, Т к ЗхВ(х).
/ н VxS(x). Пусть Г Н Д. Для любого замкнутого терма 力 формула V/ /(/) D 吕(力)является аксиомой (аЗ). Поэтому для любого замкнутого терма t выполнено Т к 吕(力). По индуктивному предположению из этого следует /о |=吕(力)для всех замкнутых термов t. Отсюда и из определения канонической интерпретации вытекает /0 |= V/ 吕⑺.
Пусть Zq |=Vx 吕⑺. Докажем, что THVx 吕⑺. Допустим противное: Т I/ VxS(x). Тогда в силу полноты Т выполнено Т I—Nx 吕(/). По теореме 7 из главы 3 формула ~Nx 吕(/) = Зж「8 ⑺ выводима в исчислении предикатов, а, значит, и в любой теории. Отсюда получаем, что Т к Зх^В(х). Так как Т — теория Генкина, для некоторой константы с мы имеем Т Н -iS(c). С другой стороны, из /о |= VxB(x) следует, что /о |= В (с). По индуктивному предположению Т Н В (с). Таким образом, Г Н S(c) и Г I—'В (с), что невозможно в силу непротиворечивости Т. Значит, предположение Г I/ Vx 吕⑺ неверно, и Г Н Vx Б(х).
Итак, мы доказали, что /о |= Д О Г Н Д для любой замкнутой формулы / сигнатуры Q. Из этого следует, что все формулы из Т истинны в /о, т.е. /о является моделью Т.
3. Доказательство теоремы о полноте
Теорема 6 (теорема Генкина). Пусть Т — непротиворечивая теория в сигнатуре Q. Тогда существуют такие сигнатура Qz D Q и теория Т1 в сигнатуре П; что
Т1 — расширение теории Т;
Т' полна;
Т' — теория Генкина.
Доказательство. Определим последовательность непротиворечивых теорий So С Si С S2 С ... и сигнатур Qq U 出 С Q2 U …
таких, что S〃 一 теория в сигнатуре П〃. Положим So = Г, Qq = ^> Пусть Qn и Sn уже определены. Определим S九+匕 Qn+i.
Если п четно, положим Qn+i = Qn, a S九+i равной любому полному расширению теории Sn в сигнатуре Qn. (По теореме Лин- денбаума (теорема 5) такое расширение существует.)
Если п нечетно, то поступаем следующим образом. Для каждой замкнутой формулы А в сигнатуре Qn вида 三/吕(/), принадлежащей теории Sn, введем новую константу, не содержащуюся в Qn. Обозначим эту константу е/ и назовем ^свидетелем55 формулы А. Для разных формул возьмем разные константы. Положим Qn+i = Qn U {ед I А — замкнутая формула сигнатуры Qn вида Зж В(х) и Д G Sn}; S九+1 ——множество замкнутых формул сигнатуры Qn+i, выводимых из множества Sn U {й(ед) | 吕(/) — формула сигнатуры П九,/ н 三①吕(/) — замкнутая формула и / С S九}. Определение Sn и Qn закончено.
Лемма 1 (лемма Генкина). Пусть S — непротиворечивая теория в сигнатуре Qn. Тогда множество замкнутых формул сигнатуры Qn+i, выводимых из множества S' = S U {й(ед) | 吕(/) — формула сигнатуры Qn, А =°= ЭхВ(х) — замкнутая формула и А С S}, непротиворечиво.
Доказательство. Очевидно, достаточно доказать, что само множество S' непротиворечиво. Допустим, что S' противоречиво. В силу теоремы 12 из главы 3 из S' выводима любая формула. В частности, если 0 — замкнутая формула сигнатуры Qn, то S'卜 Р &「О. Фиксируем одну такую формулу 0. Пусть 吕i(£/i), •…,^п(едп) — все формулы, не принадлежащие S, использованные в выводе из S' формулы 0 &「D Тогда S U {吕1 (е/1),...,吕九(е/几)} Н Р & -пР. По теореме о дедукции S〃卜 йп(еЛп) D Р & -Р, где S〃 = S U {B^eA1l... .В^е^}. Пусть Ci,... ,Ст — вывод формулы 吕九(e/几) D 0 & 「0 из S〃, и пусть у — любая переменная, не входящая ни в одну из формул Ci,... ,Ст. Через Ci обозначим формулу, полученную из Ci заменой всех вхождений константы едп на у. Индукцией по т нетрудно доказать, что последовательность Ci,... ,Ст является выводом из но уже формулы 吕九(沙)D Р &「О. По правилу Бернайса получаем S"卜 Эу Bn{y) D Р &「О. Нетрудно доказать, что формула Зж Вп(х) = Эу 吕九匂)выводима в исчислении предикатов. Отсюда получаем S"卜 3ж 吕九(/) D Р &「0. Но по условию S f 三/ 吕九(/). Так как S С S", то S"卜 Зж 吕九(/). Значит S"卜 0 &「О.
Применяя описанную процедуру еще п — 1 раз, мы получим S к 0 & -пР, т. е. вопреки условию теория S противоречива. Значит, предположение о противоречивости S' неверно.
Лемма доказана.
Продолжим доказательство теоремы 6.
В силу леммы 1 построенные нами теории So, Si, ... непротиворечивы. Положим Qz = U黑0口〃,Т‘ = U黑о S〃. По лемме Линден- баума (теорема 3) Т1 — непротиворечивая теория.
Докажем, что Т' полна. Пусть А — произвольная замкнутая формула сигнатуры Qz. Тогда А является формулой сигнатуры Qn при некотором п. Очевидно, можно считать, что п четно. По построению теория S九+1 полна, следовательно, А С S九+i или「/ С S九+】. Так как Sn+i С Т; то А Е Тг илиС Т'.
Докажем, что Т1 — теория Генкина. Пусть Зж 吕(/) — замкнутая формула, выводимая в Т1. Тогда при некотором п формула ЗхВ(х) принадлежит Sn. Очевидно, можно считать, что п нечетно. По построению теории S九+i, в сигнатуре Qn+i имеется такая константа с, что S(c) С S九+1. (А именно, в качестве с следует взять ед, где / н Зжй(ж).) Следовательно, S(c) С Т; что и требовалось.
Теорема Генкина доказана.
Теорема 7 (теорема Гёделя о полноте). Любое непротиворечивое множество замкнутых формул имеет модель.
Доказательство. Пусть Т — произвольная непротиворечивая теория. По теореме Генкина (теорема 6) существует полная теория Генкина Т; являющаяся расширением теории Т. Пусть I — каноническая интерпретация теории Т'. По теореме 5 I — модель для Т‘. Но так как Т С Т; интерпретация I является моделью теории Т. Теорема доказана.
Отметим важное свойство модели теории Г, построенной при доказательстве теоремы Гёделя о полноте.
Теорема 8 (теорема о существовании счетной модели непротиворечивой теории). Если Т — непротиворечивая теория в счетной сигнатуре, то Т имеет счетную модель.
Доказательство. Нетрудно заметить, что если сигнатура Q счетна, то все сигнатуры 出,电,построенные в доказательстве теоремы 6, счетны. Следовательно, каноническая интерпретация теории Т также счетна. Теорема доказана.
Некоторые следствия теоремы Гёделя о полноте
Теорема 9 (вторая форма теоремы Гёделя о полноте). Пусть А — общезначимая формула сигнатуры Q. Тогда А выводима в исчислении предикатов сигнатуры Q.
Доказательство. Достаточно рассмотреть случай, когда А — замкнутая формула, поскольку всякая формула Д, содержащая свободные переменные д,…,жп, общезначима тогда и только тогда, когда общезначима формула Vg …V/九 Д, и выводима тогда и только тогда, когда выводима формула Vg …V/九 А. Итак, пусть А — замкнутая общезначимая формула сигнатуры Q. Допустим, что / не выводима в исчислении предикатов. По теореме 12 из главы 3 в этом случае множество {「/} непротиворечиво, тогда по теореме Гёделя о полноте (теорема 7) это множество имеет модель, т. е. существует такая интерпретация 7, что I |= -)/. Но это невозможно, поскольку / общезначима. Значит, формула А выводима. Теорема доказана.
Теорема 10. В исчислении предикатов выводимы все общезначимые формулы и только они.
Доказательство. Это утверждение непосредственно вытекает из теоремы 9 и теоремы о корректности исчисления предикатов (теорема 4 из главы 3).
Теорема 11. Пусть Г — произвольное множество замкнутых формул сигнатуры Q; S — замкнутая формула сигнатуры Q, причем Г |= В. Тогда Г Н
Доказательство. Пусть Г |= В. Рассмотрим множество формул Г U {「吕}. Если бы это множество было непротиворечиво, то по теореме Гёделя о полноте у него существовала бы модель. Но это невозможно, ибо в любой интерпретации, где истинны все формулы из Г, обязательно истинна формула S, а формула「吕 ложна. Значит, множество Г U {「吕} противоречиво. По теореме 12 из главы 3 Г Н S. Теорема доказана.
Теорема 12. Замкнутая формула 吕 является логическим следствием множество замкнутых формул Г тогда и только тогда, когда
Доказательство. Это утверждение непосредственно вытекает из теоремы 11 и обобщенной теоремы о корректности исчисления предикатов (теорема 14 из главы 3).
Теорема 12 может быть переформулирована так: неформальная аксиоматическая теория с аксиомами Г совпадает с формальной аксиоматической теорией с аксиомами Г. Мы уже объявляли ранее это совпадение, но без доказательства. Теперь мы имеем доказательство.
Теорема 13 (локальная теорема Мальцева). Пусть Г — произвольное множество замкнутых формул сигнатуры Q, причем любое конечное подмножество Д С Г имеет модель. Тогда множество Г имеет модель.
Доказательство. Достаточно доказать, что множество Г непротиворечиво, а затем применить теорему Гёделя о полноте. Допустим, что Г противоречиво. Применяя теорему 13 из главы 3, получаем, что противоречиво некоторое конечное множество Д С Г. Но это невозможно, ибо △ имеет модель. Значит, Г непротиворечиво и имеет модель. Теорема доказана.
Теорема 14 (теорема Мальцева о компактности). Пусть Г — произвольное множество замкнутых формул сигнатуры Q; S — произвольная замкнутая формула сигнатуры Q, причем Г |= В. Тогда существует такое конечное подмножество Д С Г, что Д |= В.
Доказательство. Пусть Г |= В. В силу теоремы 11 Г Н S. По теореме 9 из главы 3 существует конечное множество Д С Г такое, что Д Н S. Согласно обобщенной теореме о корректности исчисления предикатов Д |= В. Теорема доказана.
Математические применения теоремы о полноте и ее следствий
Рассмотрим некоторые применения теоремы Гёделя о полноте и ее следствий, значение которых выходит за рамки математической логики.
Пример 1. Нестандартные модели арифметики. Пусть Т — произвольная теория первого порядка в сигнатуре языка формальной арифметики, причем все формулы из Т истинны в стандартной интерпретации 况 этого языка (отсюда, очевидно, следует, что Т непротиворечива) . Примерами таких теорий являются, в частности, арифметика Пеано РА и 7(况)一элементарная теория интерпретации 9^. Сейчас мы докажем, что любая такая теория наряду с 况 имеет и другие, не изоморфные ей, счетные модели. Интерпретации
языка формальной арифметики, не изоморфные 况,называются нестандартными .
Заметим, что в языке формальной арифметики для любого натурального числа п имеется терм п, значение которого в стандартной интерпретации есть п: 00, 1 SO, 2 = SS0, = SS ...SO.
п раз
Расширим сигнатуру языка формальной арифметики, добавив новую константу с. Рассмотрим следующее множество формул этой расширенной сигнатуры:
= Т U {-ic = 0, -ic = X, -ic = 2,... ,= n, ... }.
Докажем, что любое конечное подмножество множества Т1 имеет модель. Пусть △ — конечное подмножество множества Т‘. Оно содержит лишь конечное число формул вида「с = ”. Пусть это будут формулы -ic = Hi,... ,「с = 71&, и пусть т — какое-либо натуральное число, отличное от g …,п^. Дополним стандартную интерпретацию 况 языка формальной арифметики до интерпретации расширенной сигнатуры, положив с = т. Очевидно, эта интерпретация является моделью множества △. Значит, каждое конечное подмножество Д С Tz имеет модель. По теореме 13 множество Т1 имеет модель, следовательно, имеет счетную модель. Обозначим эту модель через Ш1, а ее носитель — через М. Рассматривая Ш1 как интерпретацию языка формальной арифметики, нетрудно заметить что Ш1 является моделью теории Т. Докажем, что модели Ш1 и 况 не изоморфны. А именно, мы докажем, что не существует такого взаимно однозначного соответствия между множествами N и М, которое сохраняет константу 0 и функциональный символ S. Допустим противное. Пусть 夕:N —> Л/ — такое взаимно однозначное соответствие, которое сохраняет 0 и S, т. е.夕0 = 0,夕(тг + 1) = S屮% где 0 и S — соответственно интерпретации константы 0 и символа S в модели ШТ. Рассмотрим элемент с 6 М, являющийся интерпретацией константы с в модели ШТ. Поскольку 夕一взаимно однозначное соответствие между N и М, то существует такое n G N, что 屮п = с. С другой стороны, поскольку п = (... (О + 1) + ... + 1) + 1) и 夕 со-
п раз
храняет 0 и S, то 夕тг = S ... SO. Отсюда получаем, что с = S ... SО, п разп раз
т. е. Ш1 |= с = п. Но это невозможно, ибо в Ш1 истинна формула -ic = п. Значит, не существует взаимно однозначное соответствие между N и Ш1, сохраняющее 0 и S. Таким образом, модель Ш1, рассматриваемая как интерпретация языка формальной арифметики, не изоморфна стандартной модели арифметики 9^.
Теорема 15. Существуют счетные нестандар тные модели арифметики Пеано РА.
Доказательство. Это утверждение вытекает из приведенных построений, когда Т есть РА.
Теорема 16. Существует счетная интерпретация, элементарно эквивалентная стандартной интерпретации языка формальной арифметики, но не изоморфная ей.
Доказательство. Пусть Т — есть элементарная теория стандартной интерпретации языка формальной арифметики, то есть Т = Г (9^). Построенная нами нестандартная модель Ш1 этой теории элементарно эквивалентна X. Действительно, какова бы ни была замкнутая формула 吕 языка формальной арифметики, если 9^ |= S, то S 6 Т(旳(гю определению теории 7(旳)и ШТ |=吕(так как Ш1 — модель теории 7(况)). С другой стороны, если 耽 |=吕, то 吕 С Т 即)(так как по теореме 18 из главы 3 теория Т 即)полна, а формула「吕 ложна в модели Ш1 теории 7(况))и 9^ |= S (по определению теории Т(“)). Теорема доказана.
Теорема 17. Никакая система аксиом в сигнатуре языка формальной арифметики не задает однозначно, с точностью до изоморфизма, стандартную интерпретацию 9^.
Иными словами, невозможно указать конечную или даже бесконечную систему аксиом, единственной (с точностью до изоморфизма) счетной моделью которой была бы интерпретация 9^. Это утверждение немедленно следует из нашего построения нестандартной модели, если в качестве Т взять произвольную систему аксиом, истинных в стандартной модели.
Пример 2. Поля нулевой характеристики. Обратимся к описанной в § 1 главы 3 системе аксиом для теории полей, которую мы обозначили F. Для каждого поля, т. е. модели этой системы аксиом, однозначно определена его характеристика. Это такое простое число 夕,для которого р • 1 = 0, где р • 1 есть сокращенное обозначение для суммы р слагаемых 1 + ... + 1. Если же такого числа р нет, то говорят, что поле имеет характеристику 0.
Теорема 18. Пусть А — произвольная замкнутая формула в сигнатуре теории полей, истинная во всех полях характеристики 0. Тогда существует такое простое число q, что формула А истинна во всех полях характеристики》q.
Доказательство. Пусть / — замкнутая формула, истинная во всех полях характеристики 0. Через Ср обозначим формулу
р • 1 = 0. Рассмотрим множество формул 尸,полученное присоединением к системе аксиом F формул ^Ср для всех простых 夕, т.е. F' = F U {「С2, 「Сз, ~1c5, •••}• Любая модель множества F' — это поле характеристики 0, следовательно, в ней истинна формула А. Значит, F' |= А. По теореме о компактности (теорема 14) существует такое конечное множество △ С F\ что △ |= А. Пусть ^Cqi,... , ^Cqn — все формулы вида -пС^ содержащиеся в Д, и пусть q — произвольное простое число, большее каждого из чисел Qi,... , qn. Тогда в каждом поле характеристики》q истинны все формулы из множества Д, а, значит, и формула Д, являющаяся их логическим следствием. Теорема доказана.
Теорема 19. Понятие поля характеристики 0 не может быть задано никаким конечным числом аксиом.
Доказательство. Любую конечную систему аксиом 4,… ...,Ап можно заменить одной аксиомой А — их конъюнкцией Д1 & ... & Ап. В силу теоремы 18 эта аксиома не может быть истинной только в полях характеристики 0. Теорема доказана.
Пример 3. Неразличимость конечного и бесконечного.
Теорема 20. Пусть Т — произвольная теория первого порядка, причем для любого натурального числа п теория Т имеет модель, содержащую не менее п элементов. Тогда теория Т имеет бесконечную модель.
Доказательство. Пусть теория Т удовлетворяет условию теоремы. Положим
& н三①/ =
& н ЗЖ1 Зж2 = /2;
£九 н 3ж1 ... Зжп (-«Xi =力2 & • • • & = жп)
(т. е. конъюнкция всех формул вида「g = Xj при 1 ^ i < j ^ п). Очевидно, что формула £九 истинна во всякой интерпретации, содержащей не менее п элементов. Рассмотрим множество формул Т, = Г U {£1/2,…}. Очевидно, что любое конечное подмножество множества Т1 имеет модель. В силу теоремы 13 множество Т1 имеет модель, которая не может быть конечной. Эта модель является моделью теории Т. Теорема доказана.
Теорема 21. Не существует замкнутой формулы, истинной во всех конечных интерпретациях данной сигнатуры и ложной во всех бесконечных интерпретациях.
Доказательство. Допустим, такая формула А существует. Рассмотрим теорию Т, единственной аксиомой которой является А. Эта теория, очевидно, удовлетворяет условию теоремы 20. Следовательно, теория Т должна иметь бесконечную модель, т. е. формула А истинна в некоторой бесконечной интерпретации. Теорема доказана.
Категоричность
Пусть m — какое-нибудь кардинальное число. Теория первого порядка Т называется т-категорнчной^ если Т имеет хотя бы одну модель мощности m и любые две ее модели мощности m изоморфны.
Пример 1. Рассмотрим сигнатуру, не содержащую никаких констант, функциональных и предикатных символов, и теорию в этой сигнатуре, задаваемую единственной аксиомой 8n & -i£n+i, где £九—формула, построенная в доказательстве теоремы 20. Очевидно, любая модель этой теории содержит ровно п элементов, и все такие модели изоморфны между собой. Значит, эта теория является п-категоричной.
Пример 2. Арифметика Пеано РА и элементарная теория стандартной модели арифметики Т(п) не являются No-категоричными, как следует из существования нестандартных моделей арифметики.
Пример 3. Примером No-категоричной теории может служить теория плотного линейного порядка без первого и последнего элементов DLO〉описанная в § 2 главы 3. Установление изоморфизма между любыми двумя бесконечными счетными плотными линейными порядками без первого и последнего элементов является несложным упражнением.
Упражнения.
Доказать No-категоричностъ теории DLO.
Доказать дедуктивную полноту теории DLO.
ГЛАВА 5
ТЕОРИЯ АЛГОРИТМОВ
Вычислимые функции
В наше время, когда об алгоритмах говорят повсюду, понятие алгоритма вряд ли требует объяснения. Первые примеры алгоритмов встречаются уже в начальной школе: алгоритм сложения натуральных чисел столбиком, алгоритм деления с остатком (уголком).
В пунктах 1°-4° мы фиксируем некоторую систему общих понятий, относящихся к алгоритмам.
1°. С каждым алгоритмом связано множество возможных исходных данных этого алгоритма. Например, в случае алгоритма сложения столбиком (а также в случае, скажем, алгоритма деления уголком) множество возможных исходных данных есть множество пар натуральных чисел.
2°. Пусть / — возможное исходное данное алгоритма 21. Применим 21 к /; при этом возможны три исхода. 1) Применение 21 к / закончится (в конечное число шагов) и 21 выдаст некоторый результат или ответ. 2) Применение 21 к ж закончится, но безрезультатно. 3) Применение 21 к ж вовсе не закончится, т. е. алгоритм будет работать бесконечно. В первом случае будем говорить, что 21 применим к х, в двух других случаях будем говорить, что 21 не применим к х. То есть, 21 применим к исходному / тогда и только тогда, когда применение 21 к ж заканчивается получением результата. Например, алгоритм сложения столбиком применим ко всем возможным исходным данным, результатом будет сумма исходных чисел. Алгоритм деления уголком применим к парам натуральных чисел, в которых вторая компонента не равна нулю. Результатом будет частное и остаток.
Множество тех ж, к которым применим 21, будем называть областью применимости алгоритма.
В следующем пункте мы определим понятие функции, вычислимой алгоритмом. При этом не всюду применимые алгоритмы будут вычислять не всюду определенные функции.
Частичной функцией из X в Y называется любое множество А С X х Y такое, что (ж, у±) С А,〈伤銓〉С 4 влечет 力=у^. В частности, если А пусто, получаем нигде не определенную функцию.
В этой главе частичные функции мы будем называть просто функциями. При этом обычные функции из X в У будем называть всюду определенными функциями.
3°. Пусть 以一алгоритм, X — множество возможных исходных данных 21, а результаты применения 21 принадлежат множеству У. Будем говорить, что алгоритм 21 вычисляет частичную функцию / из X в У, определенную равенством /(ж) + (результат применения 21 к ж).
Примечание. Знак + называется «условное равенство» и имеет следующий смысл. Если А и В суть какие-то выражения, то А В есть высказывание, утверждающее, что А и В одновременно определены или не определены и, если определены, то имеют совпадающие значения. Например, высказывание 看 + Н истинно, а высказывание 「ложно (здесь / и “ 一 действительные переменные).
Таким образом, вычислимая алгоритмом 21 функция определена на тех / С X, к которым применим 21, причем ее значение на таком / равно результату применения 21 к ж, и не определена на тех / С X, к которым 21 не применим. Например, алгоритм сложения столбиком вычисляет всюду определенную функцию / : N х N —> N, /(ж, у) = / + у. Алгоритм деления уголком вычисляет функцию / из N х N в N х N, определенную на тех (ш,п), для которых п ^ О, и при 71 # О
/(т, п) = (частное от деления т на п, остаток от деления т на п).
Функция называется вычислимо^ если существует вычисляющий ее алгоритм. Например, функции / + у, х • у вычислимы. Композиция вычислимых функций вычислима (покажите это). Нигде не определенная функция вычислима.
4°. Понятие алгоритма имеет смысл, лишь если исходные данные и результаты — «конструктивные объекты». Так, не имеет смысла (во всяком случае без дополнительных уточнений и соглашений) говорить об алгоритме, входом которого является произвольное множество действительных чисел, и даже об алгоритме, входом которого является действительное число. Мы будем избегать таких ситуаций, рассматривая алгоритмы, работающие с конструктивными объектами, такими, как натуральные числа, слова в конечном алфавите и т. п. Таким образом, вопрос о вычислимости функции
/ : X —> У осмыслен, лишь если X и У являются подмножествами «ансамблей конструктивных объектов». Примеры ансамбля конструктивных объектов: множество N натуральных чисел, множество Б* слов конечного алфавита Б.
В общем понимании, ансамбль — это собрание конструктивных объектов «одного и того же типа». Разумеется, сказанное не является определением в математическом смысле этого слова. Понятие ансамбля конструктивных объектов мы рассматриваем как интуитивное, неопределяемое понятие (так же, как и понятие конструктивного объекта, натурального числа, множества).
Ансамбли обладают свойством: если X и У — ансамбли, то X х Y — также ансамбль (наличие у ансамблей этого свойства мы принимаем как аксиому).
Замечание. Часто возникающее заблуждение состоит в том, что для доказательства вычислимости функции / нужно не просто доказать существование вычисляющего ее алгоритма, но и предъявить его. Ничего подобного! Функция
(1, если гипотеза Ферма верна;
=1 a品
[если гипотеза Ферма неверна, вычислима, так как она равна либо функции, тождественно равной 0, либо функции, тождественно равной 1, а обе они вычислимы.
Задача. Будет ли вычислима функция / : N —> N, определяемая так: /(п) равно нулю, если в десятичном разложении тг есть по крайней мере п девяток подряд, и единице в противном случае?
Если X бесконечно, а У непусто, то существует невычислимая функция из X в У. Действительно, множество всех функций из X в У несчетно (так как множество всех подмножеств X несчетно, а у равных функций равные области определения), а множество всех вычислимых функций из X в У счетно. Более того, если У содержит по крайней мере два элемента, то существует всюду определенная невычислимая функция из X в У (потому что в этом случае уже одно только множество всюду определенных функций несчетно).
Разрешимые множества
Буквами X и Y мы будем обозначать ансамбли конструктивных объектов.
Подмножество А ансамбля конструктивных объектов X называют разрешимым^ если существует алгоритм, который для любого
х Е X отвечает на вопрос «ж С 4?», т. е. алгоритм, который применим к любому элементу / из X и дает ответ И или Л в зависимости от принадлежности ж к А. Другими словами, А разрешимо, если характеристическая функция А
(1, если ж 6 А, К4⑺片人 [0, если /任 вычислима.
Теорема 1. Пересечение, объединение и дополнение разрешимых множеств разрешимо.
Доказательство. Пусть А, В С X — разрешимые множества. Тогда функции Ха(х) и Хв(х) вычислимы. Характеристическая функция множества А А В вычисляется таким алгоритмом: «если Х/(/) = 1 и хз(/) = 1, то Х/п8(/) = 1, иначе х/пз(/) = О»
Функция Х/и8(/) вычисляется алгоритмом: «если Х/(/) = 1 или Х8(/) = 1, ТО X/U8(N)= 1 иначе х/из(/) = 0»・
Наконец, Хх\а(х) вычисляется алгоритмом: «если ха(х) = 1, то Хх\/О) = 0, иначе Хх\/О) = 1»・
Пример. Разрешимы следующие множества: множество четных чисел, множество простых чисел, множество квадратов натуральных чисел.
Если X бесконечно, то существует неразрешимое подмножество X. Действительно, множество всех подмножеств X несчетно, а множество разрешимых подмножеств счетно, так как счетно множество вычислимых функций. В дальнейшем бесконечность любого ансамбля конструктивных объектов мы примем как аксиому.
Полуразрешимые множества
Множество 4 U X называется полуразрешимым, если существует алгоритм, который применим к элементам А (с каким-то ответом) и не дает ответа на элементах X \ А. Другими словами, А полу- разрешимо, если А есть область определения какой-то вычислимой функции. Очевидно, значения этой функции несущественны, так что (А полуразрешимо) » (функция /, равная нулю на 4 и не определенная на X \ 4, вычислима).
Очевидно, не любое множество полуразрешимо, так как если X бесконечно, то множество всех подмножеств X несчетно, а множество полуразрешимых множеств счетно, так как счетно множество алгоритмов.
Теорема 2. Любое разрешимое множество полуразрешимо.
Доказательство. Пусть А С X — разрешимое множество. По определению, ха вычислима. Тогда А совпадает с областью применимости следующего алгоритма:
«если ха(х) = 1, то дать ответ 0 и закончить работу, иначе закончить работу, не давая ответа (т. е. безрезультатно)».
Замечание. Как мы увидим позднее, обращение теоремы 2 неверно.
Теорема 3. Любое конечное подмножество А С X разрешимо.
Доказательство. Очевидно.
Мы принимаем в качестве аксиомы, что любой ансамбль конструктивных объектов счетно-бесконечен. Более того, мы принимаем как аксиому следующее свойство ансамблей.
Свойство вычислимой равномощности ансамблей. Если X и Y — два ансамбля, то существует вычислимая биекция / : X т У.
Пример. Пусть X = N, а У — множество всех слов в некотором конечном алфавите Б. Тогда построенная нами в первой главе при доказательстве счетности Б* биекция / : X —> У является вычислимой функцией.
Из свойства вычислимой равномощности следует возможность «перебора всех объектов» любого ансамбля.
Теорема 4. Для любого ансамбля X существуют такое 窃 G X и такая вычислимая функция СЛЕДУЮЩИИ :X —> У, что последовательность
/О,
g = СЛЕДУЮЩИЙ^),
/2 = СЛЕДУЮЩИЙ^),
есть пересчет X без повторений.
Доказательство. По свойству вычислимой равномощности существует вычислимая биекция g : N —> X. Положим /° = д(°), СЛЕДУЮЩИЙ (ж) = g(g—1(/) + 1). Тогда последовательность /о,д,
力2,… есть просто g(0),g⑴,g⑵,… (докажите это, воспользовавшись методом математической индукции).
Докажем вычислимость функции СЛЕДУЮЩИЙ. Так как композиция вычислимых функций снова вычислимая функция и так как функция п + 1 вычислима, достаточно доказать вычислимость функции д—1(/). Значение д~г(х) вычисляется следующим алгоритмом: «перебирать все натуральные числа п = 0,1, 2,..., пока не найдется такое п, что д(п) = /; это п выдать в качестве ответа».
Теорема 5. Если / — (частичная) вычислимая взаимно однозначная функция из X в Y, то /-1 — вычислимая взаимно однозначная функция из У в X.
Доказательство. Очевидно, что /-1 — взаимно однозначная функция из У в X. Требуется доказать, что /-1 вычислима. Значение /—1(g) вычисляется следующим алгоритмом:
«Перебирать все элементы ансамбля X, пока не найдется такой элемент / G X, что /(ж) = у. Выдать первый такой элемент х в качестве результата (на самом деле такой х может быть только один).»
Если у С %—1, то такой алгоритм выдаст результат 厂气),а иначе он будет работать бесконечно долго, перебирая все элементы ансамбля X.
Пусть X и У — два ансамбля конструктивных объектов. Напомним, что мы приняли как аксиому, что X х Y — снова ансамбль конструктивных объектов.
Пример. Ансамблями являются N х N, N3, N х {а, Ь}*.
Задача. Доказать, что множество
{п I (3x,y,z С N)(/,g,z > 0^хп + уп = zn)} полуразрешимо.
Пусть А С X х Y.
Первой проекцией (или просто проекцией) А называется множе
ство
пр4 = {ж 丨(加 е У)〈/,и〉е 4}・
Теорема 6. Проекция разрешимого множества В С X х Y по- луразрешима.
Доказательство. Проекция В есть область применимости следующего алгоритма:
«Перебирать все элементы из У, пока не найдется такой у Е Y, что (ж, у) G В. Если нашелся хотя бы один такой у, то выдать в качестве результата О».
Заметим, что наш алгоритм будет работать бесконечно, если не существует такого у Е Y, что〈/,沙〉С В, т. е. если / @ пр В, так как перебор элементов У в этом случае никогда не закончится. Таким образом, алгоритм неприменим ко всем х @ пр В. Если же х 6 прВ, то как только перебор дойдет до такого у, что (ж,у) С В, алгоритм выдаст результат и закончит работу.
Функция / : N —> X называется вычислимой последовательностью^ если / — всюду определенная вычислимая функция.
Теорема 7. Множество значений вычислимой последовательности полуразрешимо.
Доказательство. Пусть / : N —> X — вычислимая последовательность. Тогда pf является областью применимости следующего алгоритма:
«Исходное данное: х. Перебирать все натуральные числа, пока не найдется такое n G N, что /(п) = х. Если такое п нашлось, то выдать в качестве результата О».
Свойство пошагового выполнения алгоритма и его следствия
Любой алгоритм работает шагами. Каждый шаг работы алгоритма обязательно заканчивается. Если алгоритм работает бесконечно долго, это означает, что алгоритм делает бесконечное число шагов. Пусть 以一любой алгоритм, исходными данными которого являются объекты ансамбля X, а значениями — объекты ансамбля У. Тогда существует алгоритм £, в следующем смысле информирующий о выполнении 21 по шагам: исходными данными £ являются пары (ж,п), х Е X, n Е ^ алгоритм £, примененный к паре (ж,п), сообщает, заканчивается ли применение 21 к ж не более, чем за п шагов, и, если да, то каков ответ. Формально, возьмем любой объект, не входящий в У, обозначим его НЕОПР (не определено). Тогда
£ на входе пары (ж, п) дает результат НЕОПР, если применение 21 к X не заканчивается за ^ п шагов, и результат у, если применение 21 к ж дает у за《п шагов.
Используя свойство пошагового выполнения, докажем следующее усиление теорем 6 и 7.
Теорема 8. Следующие свойства подмножества А ансамбля X эквивалентны:
А есть область определения некоторой вычислимой функции (т. е. А полуразрешимо);
А есть проекция некоторого разрешимого множества;
4 = 0 или А есть множество значений некоторой вычислимой последовательности;
А есть множество значений некоторой вычислимой функции.
Доказательство. Мы докажем, что (1) т (2) т (3) т (4) т ⑴.
—> (2). Пусть / — вычислимая функция из X в Y, и А = 6f. Тогда А — проекция разрешимого множества В = {〈①,小 | / С X, n G N и алгоритм, вычисляющий /, в применении к / дает ответ за < п шагов}.
т (3). Пусть В С X х Y разрешимо и А = пр В. Если А = 0, то доказывать нечего. Поэтому пусть А ^ 0. Требуется доказать существование вычислимой последовательности /, для которой pf = А. Неформально: нужно по очереди перебирать все элементы ансамбля X х У, и если n-ый элемент〈/九,g九〉ансамбля X х Y попал в В, то положить /(п)=①九,а иначе положить /(п) равным какому-нибудь фиксированному элементу а。из А.
Теперь формально. По свойству вычислимой равномощности ансамблей существует вычислимая биекция с : N —> X х У. Обозначим с(п) через (хп,уп). Зафиксируем некоторый элемент а。С А. Тогда А — является множеством значений последовательности, вычисляемой следующим алгоритмом:
«Исходное данное: п; если {хп^у^ е В, то выдать хп как ответ, иначе выдать а。как ответ».
⑶т•⑷.Если А = 0, то А — множество значений нигде не определенной функции (очевидно, она вычислима). Если А — множество значений вычислимой последовательности, то так как вычислимая последовательность является вычислимой функцией, А удовлетворяет (4).
—> (1). Пусть А = pf, где / — функция из У в X, вычисляемая алгоритмом 21. Требуется построить вычислимую функцию g
с областью определения, равной А. Неформально, д(/) вычисляется алгоритмом:
«Перебирать все пары〈тг, g〉, тг С N, g С У, и для каждой пары (п, у) делать п шагов вычисления /(g); как только для хотя бы одной пары будет получен ответ /(g) = ж, то выдать в качестве результата 0».
Описанный алгоритм не остановится, если нет такого у Е Y, что /(g) = х (как нам и нужно), и остановится, если /(g) = / для некоторого у в момент обработки пары (m, д〉,где т — число шагов вычисления /(g).
Формально, А — область применимости следующего алгоритма. «Исходное данное: х.
Перебирать все пары из N х У, пока не найдется такая пара (п, д〉,что алгоритм 21 на исходном данном т/ за ^ п шагов дает ответ, равный /; если нашлась хотя бы одна такая пара, то выдать 0 в качестве ответа и закончить работу».
Вспомним, что множество А называется счетным, если 4 = 0 или А есть множество значений некоторой последовательности.
Подмножество А ансамбля X называется перечислимым^ если А = 0 или А есть множество значений некоторой вычислимой последовательности .
Понятие перечислимого множества — вычислимый аналог понятия счетного множества. По теореме 8 множество перечислимо тогда и только тогда, когда оно полуразрешимо. В дальнейшем мы будем употреблять термин «перечислимый» как более традиционный.
Теорема 9. Пусть А С X, В С X — перечислимые множества. Тогда A U В и А А В — перечислимые множества. Пусть С С X xY перечислимо, тогда пр С перечислимо.
Доказательство. Докажем, что АиВ пречислимо. Если хотя бы одно из А, В пусто, то A U В, очевидно, перечислимо. Пусть А ^ 0, В ^ 0. Тогда по теореме 8 А и В — множества значений вычислимых последовательностей, скажем / ид. Тогда A U В — множество значений последовательности /г, определенной так:
以2衣)=/(衣), 以2衣 + 1) =g(k).
Функция h(k) вычисляется алгоритмом:
«если п четно, то 九⑺=/ (号),иначе 九⑺=g (几 В».
Докажем, что А А В перечислимо. Пусть А — область применимости алгоритма 21, а В — область применимости алгоритма С Тогда А А В — область применимости алгоритма 3:
«Применять 21 к ж; если получен результат, то применить £ к / и в качестве результата выдать результат применения £ к ж».
Если 21 неприменим к ж, то £ не будет применяться к ж, следовательно, 3 не даст ответа. Если 21 применим к ж, то 3 применим к / тогда и только тогда, когда £ применим к х.
Докажем, что пр С перечислимо. По теореме 8, С есть множество значений некоторой вычислимой функции f : Z X х Y. Пусть g : X х У —> X — функция взятия первого элемента пары, т. е. ^((ж, у)) = х. Очевидно, д вычислима. Имеем
пр。= {х\(3у С Х)〈/,д〉С С}=
={g(〈/,g〉)l〈/,g〉е С} = {g(/(z))|z е z} = pfog.
Функция g(/(z)) вычислима как композиция вычислимых функций.
Теорема 10 (теорема Поста). Подмножество А ансамбля X разрешимо тогда и только тогда, когда А и X \ А перечислимы.
Доказательство. В одну сторону теорема очевидна. Действительно, если А разрешимо, то и X \ 4 разрешимо и, следовательно, они оба перечислимы.
Обратно, пусть А и X \ А перечислимы. Если одно из них пусто, то утверждение очевидно. Пусть 4 и X \ 4 не пусты. Тогда по любому / G X можно узнать, принадлежит ли он А, построив вычислимые последовательности, перечисляющие А и Х\А, и ожидая появления / в одной из них. Формально, если А = {/(0), /(1),... }, Х\А = {g(0),g⑴,…}, то следующий алгоритм отвечает на вопрос «ж е 4?»
«Исходное данное: х.
Перебирать все натуральные числа, пока не найдется такое п, что /(п) = х или g{n) = х. (Из того, что объединение множеств значений /ид равно X, следует, что такое п обязательно найдется, а из того, что pf^pg = 0, следует, что для этого п будет верно только одно из равенств /(п) = ж, g(n) = /.)
Возьмем первое такое п. Если /(п) = ж, то ж 6 Л, иначе х g 4».
Теорема Поста показывает, что перечислимое неразрешимое множество (которое мы еще построим) обязательно имеет неперечислимое дополнение.
Мы видим, что можно определить разрешимость через перечислимость (теорема Поста). Можно также определить вычислимость через перечислимость. Именно, верен такой факт.
Теорема 11. Функция f из X в Y вычислима тогда и только тогда, когда ее график {(ж, у)\у = /(/)} ——перечислимое подмножество X х Y.
Доказательство. Пусть / вычислима. Докажем, что ее график —перечислимое множество. Если / нигде не определена, то утверждение очевидно. Пусть % #0. Представим % в виде {д(°), g⑴,…}, гДе 9 — вычислимая последовательность. Тогда график / есть {〈g(0) J(g(0))〉,〈g(l) J(g(l))〉,... }. Тем самым график / перечислим как множество значений вычислимой функции 九⑺=Sd) J(gd))〉・
Обратно, пусть график / перечислим. Докажем, что / вычислима. Если график пуст, то / нигде не определена и, очевидно, вычислима. Пусть график / не пуст и есть область значений всюду определенной функции g : N —> X х У. Обозначим g(n) через (^п,Уп) •
Функция / вычислима таким алгоритмом.
«Исходное данное: /;
Перебирать все n G N пока не найдется такое п, что хп = ж; если такое п нашлось, то взять первое такое п и в качестве результата выдать g九》.
Отметим, что если /(ж) не определено, то алгоритм не заканчивает работу.
Задача. Доказать, что образ и прообраз перечислимого множества при вычислимой функции перечислимы.
У к аз ание. Это легко следует из теоремы о графике, перечислимости пересечения и проекции перечислимых множеств.
У пражнения.
Доказать, что непустое множество А С N разрешимо тогда и только тогда, когда оно есть множество значений вычислимой возрастающей последовательности.
Доказать, что любое бесконечное перечислимое множество включает бесконечное разрешимое подмножество.
Доказать, что если множества А и В перечислимы, то существуют перечислимые множества 4 и В1 такие, что 4 С А, В1 С В, 4 G 强=0 и 4 U 强=4 U В
5. Универсальная вычислимая функция
Пусть X и Y — ансамбли конструктивных объектов. Будем рассматривать всевозможные алгоритмы, исходными данными для которых являются объекты X, а значения лежат в У. Обозначим через Сот(Х, У) множество всех вычислимых функций из X в У. Пусть Р — некоторый третий ансамбль.
Функция F'.PxX^Y называется универсальной для Сош(Х, У), если для всех / С Сот(Х, У) найдется такое р Е Р, что выполнено (V/ е х)尸伪,①)+ /(/)•
Существование универсальной функции для Сош(Х, У) очевидно.
Действительно, множество Сот(Х, У), как отмечалось, счетно. Пусть {/о, /1, /2, • • • } — пересчет Сот(Х〉У). Положим Р = N и положим F(n, ж) + /п(ж) для всех n G N, ж G X.
Если F — функция из Р х X в У, а т? G F, то через Fp будем обозначать функцию из X в У, получающуюся из F фиксацией первого аргумента равным 夕,т. е. V/匕⑺ + F(,/).
Теорема 12 (об универсальной функции). Для любых ансамблей X и Y существуют ансамбль Р и вычислимая функция F из Р х X в Y, универсальная для Сотп(Х)У).
Доказательство. Мы постулируем существование алгоритмического языка, на котором можно записать программу любого алгоритма с множеством возможных исходных данных X и результатов из У. Сами программы будут элементами какого-то ансамбля конструктивных объектов Р. Определим F : Р 义 X —> У так: 尸(夕,/) = у » (夕 есть синтаксически правильная программа, которая на входе / дает результат д). Функция F(p, ж) вычислима (вычисляющий ее алгоритм называют интерпретатором соответствующего языка программирования). Функция F универсальна. Действительно, пусть / С Сот(Х, У) и / вычисляется алгоритмом 21. Пусть р — программа алгоритма 21. Тогда по определению для всех х Е X /(/) + F(p^ ж). Теорема доказана.
Пусть F — какая-нибудь функция из Р х X в У, универсальная для Сот(Х, У). Пусть / С Сот(Х, У), а р G Р таково, что
Fp = f. Функция F не обязана быть интерпретатором некоторого языка программирования, однако по аналогии мы и в этом случае будем называть р программой функции / относительно универсальной функции F. Разумеется, одна и та же функция / может иметь несколько (и даже бесконечно много) программ относительно одной и той же функции F.
Замечание. В теореме об универсальной функции можно ограничиться ансамблем Р = N, т. е. справедлива
Теорема 12'. Для любых ансамблей X и Y существует вычислимая функция G из ^ х X в Y, универсальная для Сот(Х)У).
Действительно, по теореме 12, существует ансамбль Р и вычислимая универсальная для Сош(Х, У) функция F из Р х X в Y. Пусть g — вычислимая биекция из N в Р Обозначим д(п) через Рп. Положим G(n, ж) + F(Pn, ж). Тогда, очевидно, G — также универсальная вычислимая функция из N х X в Y.
Если G — универсальная функция из NxX в У, а / 6 Сот(Х〉У), то программу / относительно G называют также номером / относительно G, а соответствие п 1 Gn — нумерацией вычислимых функций, соответствующей универсальной функции G.
Пусть G — вычислимая функция из N х N в N, универсальная для класса всех вычислимых функций из N в N. Построим функцию /(п) = G(n, n) + 1. Кажется, что мы пришли к противоречию, так как / — вычислимая функция, отличающаяся от каждой из функций из Gn на аргументе n: /(n) = G(n,n) + 1 = Gn{n) + 1. Пусть q — номер функции / относительно нумерации п 1 G九. Тогда G(q,/) = j(N)= G(q,/) + 1 и G(q,q) = G(q, q) + 1.
Разгадка парадокса состоит в том, что значение G(q, q) может быть не определено, и само употребление знака «=» здесь некорректно. А утверждение G(q, q) + G(q, q) + 1 как раз и означает, что G(q, q) не определено.
Рассмотрим произвольное всюду определенное продолжение / функции /. Мы называем д продолжением Л, если из того, что Л(ж) определено, следует g(/) = h(x). Теперь уже /(п) 步 Gn(n): если Gn(n) не определено, то /(п)步 Gn(n) уже потому, что левая часть определена, а правая нет; если же Gn(n) определено, то и /(п) определено и равно Gn(n) +1, тогда /(п) совпадает с /(п) и не равно
Итак, / отлична от всех Gn и, следовательно, невычислима. Мы доказали такой факт:
Теорема 13. Существует вычислимая функция / из N в N не имеющая всюду определенного вычислимого продолжения.
Теорема 14. Существует перечислимое неразрешимое множество.
Доказательство. Пусть А — область определения функции / из теоремы 13. Тогда, по определению, А перечислимо. Докажем от противного, что А неразрешимо. Допустим, А разрешимо. Тогда функция
工f /О), если х е А,
=1 пл
[0, если / g
—всюду определенное вычислимое продолжение /. Теорема доказана.
Существование перечислимых неразрешимых множеств доказывает, что существуют такие программы 夕, для которых задача: «определить по данному ж, заканчивает ли р работу на /» алгоритмически неразрешима. Тем более неразрешима и общая задача: «определить по данной программе р и входу ж, заканчивает ли р работу на /».
Упражнения.
Назовем множество 石 g N х N универсальным^ если для любого перечислимого множества А С N найдется такое n G N, что Л = {ж G N I (п,х) 6 Е}. Доказать, что существует перечислимое универсальное множество.
Доказать, что любое универсальное множество неразрешимо.
Доказать, что существует универсальная вычислимая функция, относительно которой нигде не определенная функция имеет единственный номер.
Доказать, что существует бесконечное множество А С N, не имеющее ни одного бесконечного перечислимого подмножества.
Доказать, что существуют непересекающиеся перечислимые множества А, В С N, для которых не существует разрешимого множества С U N такого, что ACC, BCN\C (такие перечислимые множества А и В называются неотделимыми).
Доказать, что существует бесконечное семейство попарно не- пересекающихся множеств, каждая пара которых неотделима.
Доказать, что не существует всюду определенной вычислимой функции, универсальной для семейства всех всюду определенных вычислимых функций.
Перечислимость множества теорем
Пусть Q — сигнатура, состоящая из конечного числа символов. Сопоставим с каждой формулой сигнатуры Q слово в некотором конечном алфавите, расширяющем Q. Для этого примем следующее соглашение. До сих пор мы не накладывали ограничений на переменные, используемые в формулах. Теперь договоримся, что разрешается применять только переменные /о,/】,/2, • • •, где индекс может быть равен любому натуральному числу. Тогда любая формула сигнатуры Q является словом в бесконечном алфавите Q U {=(,)V&-iD=V3xoXiX2 …}. Обозначим этот алфавит Bi(Q). Как видно, все символы из Q содержатся в Bi(Q), запятая также содержится в Bi(Q). Например, любая формула сигнатуры {0, S, +, •} является словом в алфавите
{0S+-=(,)V&-iD=V3xoXiX2 ... }.
Мы хотим уметь записывать формулы в конечном алфавите. Для этого договоримся переменную Xi записывать словом /а, где и — двоичная запись числа г. Например, /19 записывается как /10011, а /о — как /0. Тогда любая формула сигнатуры Q является словом в алфавите
B(Q) = QU {=(,)v&-D=V3x01}.
Например, Vxl3xl01P(/(xl,ж101)).
Очевидно, имея произвольное слово в алфавите B(Q), можно выяснить, является ли оно формулой. Более точно, справедлива
Теорема 15. Для любой конечной сигнатуры Q множество формул сигнатуры Q является разрешимым подмножеством в (B(Q))*.
Теория первого порядка называется разрешимо аксиматизируе- 儿。位,если она имеет хотя бы одно разрешимое множество аксиом.
Замечание. Если теория разрешима, то она и разрешимо аксиоматизируема.
Теорема 16. Множество теорем любой разрешимо аксиоматизируемой теории перечислимо.
Доказательство. Пусть В — разрешимое множество аксиом теории Т. По определению формула А принадлежит Т тогда и только тогда, когда имеется вывод Ai,..., Ап из В такой, что Ап н А. Любая последовательность формул является словом в ал-
фавите B(Q), при этом по любым словам а, о можно сказать, является ли и выводом формулы V из В. Точнее, справедлива
Лемма. Множество D = {〈也。〉| о — формула сигнатуры N а а — вывод формулы v из В} — разрешимое подмножество (Е(П))* х (Eg*.
Доказательство. Вот алгоритм, отвечающий на вопрос
«Если а не является последовательностью формул сигнатуры Q, то ответ = нет. Иначе а = 4],..., Ап для некоторых формул 4],..., Ап. Для всех г от 1 до п проверяем, верно ли, что 4〃 一 аксиома исчисления предикатов, или 4〃 G В, или Ai получена из предыдущих формул по одному из правил вывода (Taut), (Gen). Если для хотя бы одного г это не так, то ответ = нет. Иначе смотрим, совпадают ли Ап и о. Если да, то ответ = да, иначе — ответ = нет».
Лемма доказана.
Внимательный читатель, наверное, заметил, что в построении алгоритма мы использовали следующие утверждения:
множество конечных последовательностей формул разрешимо (это очевидно);
множество аксиом исчисления предикатов разрешимо (это очевидно);
множество В разрешимо (это дано);
множество {〈&,…,以,С〉|С получена из С±,... ,Ck по (Gen) или (Taut)} разрешимо (это очевидно).
На самом деле, каждое из правил (Gen), (Taut), если его рассматривать как множество кортежей формул, разрешимо.
Из этого замечания следует, что если заменить исчисление предикатов любой другой формальной системой с разрешимым множеством аксиом и конечным числом разрешимых правил вывода, то лемма остается верной.
Продолжим доказательство теоремы. Множество Т представимо в виде Т = {v\(3u С B(Q)*)(u,v) G D}.
Множество T перечислимо как проекция разрешимого множества. Теорема доказана.
Теорема 16 утверждает, что теория с разрешимым множеством аксиом перечислима. Мы знаем, что существуют перечислимые неразрешимые множества. А существует ли неразрешимая теория
с разрешимым множеством аксиом? А может быть, любая теория неразрешима? На первый вопрос ответ положительный — формальная арифметика неразрешима, а множество ее аксиом, очевидно, разрешимо. Неразрешимость формальной арифметики мы доказывать не будем. На второй вопрос ответ отрицательный — существуют разрешимые теории, например, элементарная теория упорядоченного множества рациональных (или целых) чисел. Это утверждение мы тоже не будем доказывать. Обе эти теории разрешимо аксиоматизируются.
Упражнение. Доказать, что элементарная теория любой конечной интерпретации разрешима и, следовательно, разрешимо аксиоматизируема.
Теорема 17. Любая полная разрешимо аксиоматизируемая теория разрешима.
Доказательство. Пусть Т — полная теория в сигнатуре Q с разрешимым множеством аксиом. Тогда, по теореме 16, Т перечислима. Дополнение к Т также перечислимо, так как для любого слова и алфавита B(Q), u ^ Т тогда и только тогда, когда слово「и принадлежит Т или и не является формулой.
По теореме Поста теория Т разрешима. Теорема доказана.
Машины Тьюринга
Рассмотрим одно из возможных уточнений понятия алгоритма — машины Тьюринга. Машина Тьюринга имеет бесконечную вправо ленту〉разделенную на ячейки. В каждой из ячеек может быть записан любой символ из рабочего алфавита (или просто — алфавита) машины. Машина имеет читающе-записывающую головку и управляющее устройство (УУ). Управляющее устройство может находиться в одном из конечного множества состояний Q. Множество Q и рабочий алфавит свои для каждой машины Тьюринга. УУ может двигать головку вправо и влево по ленте и записывать в ячейки любой из символов алфавита, при этом прежде записанный символ стирается. Ячейка, на которую смотрит головка, называется обозреваемой ячейкой. Действие машины на любом шаге полностью определяется состоянием управляющего устройства и символом в обозреваемой ячейке {обозреваемым символом}. Это
действие состоит в записывании в обозреваемую ячейку нового символа (возможно, совпадающего со старым) и последующем сдвигании головки вправо или влево на одну ячейку или просто в записи нового символа. То, какое действие нужно предпринять в каждой из возможных ситуаций, записано в программе машины. В множестве состояний выделены два состояния — начальное и заключительное^ будем обозначать их соответственно 史 и q°. Будем считать, что алфавит содержит символ 0 (ноль). Если головка находится в крайней левой ячейке, а программа требует сдвига головки влево, то происходит отказ, т. е. безрезультатная остановка.
Формально, машина Тьюринга — это тройка М = (A, Q, Р), где А — конечное множество такое, что 0 Е A, Q — конечное множество, не пересекающееся с 4 и содержащее два выделенных элемента q°, qi, а Р — это множество выражений одного из трех видов: qa —> 6г, qa т 6Яг, qa т 6Lr, где q)T G Q)a)b G А. Элементы множества Р называются командами, а само множество Р — программой машины М. Для каждого состояния q С Q\{q。} и символа а Е А в программе Р имеется ровно одна команда с левой частью qa.
Программа указывает, что делать в каждой из возможных ситуаций: если состояние управляющего устройства равно q и q # q°, то надо найти команду с левой частью qa, где a — обозреваемый символ (по определению, в программе есть ровно одна такая команда). Если правая часть этой команды есть Ьг, то машина М записывает в обозреваемую ячейку символ 仇 и УУ переходит в состояние г. Если правая часть команды есть bRr или Ь£丁, то машина записывает в обозреваемую ячейку символ 仇 УУ переходит в состояние г, и головка сдвигается на одну ячейку вправо или, соответственно, влево. Если состояние машины М равно q°, она заканчивает работу.
Пример 1. Пусть М = ({0,1}, {q0,q1,q2}, Р), где
Р = {^10 —>。笈q2, Qil -> lgo, 42。T lqo, q21T l^Rq?}.
Проследим работу машины M, начиная с положения
00101000
Qi
Вот последовательность действий машины М:
На этом работа машины М заканчивается, так как УУ пришло в состояние qo.
Состояние вычисления любой машины Тьюринга на любом его шаге полностью определяется тройкой: (состояние УУ; положение головки на ленте; содержимое ленты, т. е. последовательность символов, записанных в ячейках). Будем считать, что только конечное число ячеек ленты может содержать символ, отличный от 0, т. е. начиная с некоторого места на ленте записаны одни нули. Тройка (состояние УУ; положение головки на ленте; содержимое ленты) называется конфигурацией (или машинным словом, мгновенным описанием) машины М. Мы будем записывать конфигурацию в виде слова uqv, где q — состояние управляющего устройства, и — слово, записанное на ленте в ячейках до обозреваемой ячейки (исключая ее саму), a v — слово, записанное в ячейках, начиная с обозреваемой и до любого такого места, после которого идут уже одни нули. Таким образом, слово о не определяется однозначно конфигурацией. Например, конфигурацию
О а b с b а 0100...
можно записать как в виде слова OabqcbaOlO, так и в виде слова OabqcbaOlOO.
Последовательность конфигураций из примера 1 можно изобразить так: OqiOIOI, OOQ2IOI, OOIQ2OI, OOlqoll.
Пусть к — конфигурация некоторой машины М. Обозначим через к1 конфигурацию, в которую М переходит из конфигурации к за один шаг. Конфигурация к' определена, если состояние в конфигурации к не равно q°, и программа не требует сдвига за край ленты. Будем говорить, что М перерабатывает конфигурацию к в конфигурацию I и писать к 今从 Z, если существуют конфигурации k(),ki,... ,kt такие, что ко =衣,岛=%, и для всех г < t ^+1 =(衣損・ Иными словами, М перерабатывает конфигурацию к в конфигурацию %, если I получается из к за несколько шагов работы машины М.
Пусть М — машина Тьюринга с алфавитом 4, а а — слово в алфавите А. Назовем конфигурацию д^Оа начальной конфигурацией (или начальным положением) на исходном данном {входе) и. Таким образом, в начальной конфигурации на исходном данном и на ленте написано слово Ou, а дальше — одни нули, головка смотрит на первый символ, УУ находится в начальном состоянии. Последовательность конфигураций 如=%0",历=(史0"); k?=隔)一 получающуюся при работе машины М на начальной конфигурации QiOu, назовем вычислением машины М на входе и. Формально, вычисление на входе и — это конечная или бесконечная последовательность конфигураций 衣0,衣1,... такая, что 衣。=qiOu, и для всех п ^ 0 либо конфигурация (衣九)‘ не определена, и кп — последний член последовательности, либо конфигурация (衣九)‘ определена и равна kn+i,
Если вычисление на входе и конечно, то будем говорить, что машина Тьюринга М останавливается на входе и. Если М останавливается на входе и, то в последней конфигурации либо М находится в состоянии q°, либо происходит отказ, т. е. программа требует выхода за край ленты. В случае отказа вычисление считается безрезультатным. Возможны различные договоренности, что считать результатом вычисления в том случае, когда машина остановилась в состоянии q°. Пусть в качестве результатов вычисления рассматриваются только слова в алфавите Д, включенном в алфавит машины М и не содержащем символа 0. Слово о С △* будем называть результатом вычисления в сильном смысле^ если вычисление конечно, и последняя конфигурация может быть записана в виде слова 我0。・ Непустое слово о С △* будем называть результатом вычисления в слабом смысле^ если вычисление конечно, и последняя конфигурация имеет вид wiq??iQo^2^2, где。1。2 =。, причем 。2 # А, а,0 必△. Пустое слово Л С △* будем считать результатом вычисления в слабом смысле, если вычисление конечно, и последняя конфигурация имеет вид wiQo^2, где /3 必△. Заметим, что
результат вычисления в слабом смысле существует всегда, когда машина завершает работу в состоянии q°.
Пусть £ и △ — произвольные алфавиты такие, что。必 X, 0 必△, и пусть / — частичная функция из Е* в Д*, а М — машина Тьюринга с алфавитом, включающим алфавиты £ и △. Будем говорить, что машина М вычисляет функцию / в слабом (сильном) смысле^ если для всех “е£*, oG/V вычисление машины М на входе и завершается остановкой с результатом вычисления в слабом (сильном) смысле о тогда и только тогда, когда /(а) = о. Иными словами, если машина М вычисляет функцию / (в слабом или сильном смысле), и значение /(а) определено, то вычисление машины М на входе и завершается остановкой с результатом /(а) (соответственно в слабом или сильном смысле). Если же значение /(а) не определено, и машина М вычисляет функцию / в слабом смысле, то вычисление машины М на входе и либо вовсе не заканчивается, либо завершается отказом. Если же машина М вычисляет функцию / в сильном смысле, и значение /(а) не определено, то вычисление машины М на входе и либо вовсе не заканчивается, либо завершается отказом, либо завершается остановкой в состоянии q°, но никакое слово в алфавите △ не является результатом вычисления в сильном смысле.
Функция / из Е* в △* называется вычислимой по Тьюрингу в слабом (сильном) смысле^ если существует машина Тьюринга, которая вычисляет функцию / в слабом (соответственно, сильном) смысле. Заметим, что рабочий алфавит машины М, вычисляющей функцию / из £* в △*, может быть шире, чем алфавит Е U Д U {0}.
Пример 2. Пусть функция / из {а, Ь}* в {а, Ь}* определена равенством
(Л, если число букв а в слове и четно;
/(")-〈
[не определено в противном случае.
Функция / вычисляется в сильном смысле машиной Тьюринга М с алфавитом {#, 0, а, Ь}, состояниями 40,41,42,43,^4 и следующими командами:
史0 T #石q2
42。Т ОМз
42。Т 0Д^2
43。т ОМ2
дзЬ т ОЯ^з
^2。~^ OZ/Q4
4з0 —> О^з
Q4O —OZ/Q4
44# Т Oqo
Недостающие команды с левыми частями 史生 史仇 史#, 42#, 4з# и т. д. можно взять произвольно. Машина М, начиная работу на входе и, записывает символ # в первую ячейку ленты и затем двигает головку по слову а, стирая его буквы. При этом движении машина М находится в состоянии q?, если число букв а в прочитанной части слова и четно, и в состоянии Q3, если это число нечетно (обозреваемая ячейка прочитанной не считается). Прочитав слово а, т. е. дойдя до первого символа 0 справа, машина М «зацикливается», если она находится в состоянии Q3, и начинает движение влево, если она находится в состоянии q? (т. е. число букв а четно). Дойдя до символа #, машина М заменяет его на 0 и заканчивает работу. При этом на ленте записаны одни нули, т. е. результат в сильном смысле равен пустому слову.
А вот пример машины Тьюринга, вычисляющей ту же функцию / в слабом смысле. Пусть машина Тьюринга М' имеет алфавит {О, а, Ь}, состояния 40,41,42,43, а ее программа состоит из следующих команд:
Q10 —> 0Rq2
42。Т ОД^з
42。Т 0Д^2
Q2O —> Oqo
дз。т ОМ2
4зЬ —> ОЯ^з
4з0 —> О^з
Недостающие команды с левыми частями q、a s q、b можно взять произвольно. Машина М; начиная работу на входе а, двигает головку по слову и, стирая его буквы. При этом она находится в состоянии Q2, если число букв а в прочитанной части слова и четно, и в состоянии Q3, если это число нечетно. Прочитав слово а, т. е. дойдя до первого символа 0 справа, машина М‘ «зацикливается», если она находится в состоянии Q3, и останавливается в состоянии q°, если
она находится в состоянии q? (т. е. число букв а четно). При этом в обозреваемой ячейке записан символ 0, т. е. результат в слабом смысле равен пустому слову.
Теорема 18. Если частичная функция / из Е* в Д* вычислима по Тьюрингу в сильном смысле, то существует машина Тьюринга, вычисляющая функцию / в сильном смысле, которая работает бесконечно долго на всех входах a G £*〉для которых значение /(а) не определено.
Доказательство. Пусть М — машина Тьюринга, вычисляющая функцию / в сильном смысле. Построим машину N, вычисляющую функцию / в сильном смысле и не останавливающуюся на тех входах а С £*, для которых М не дает результата. Мы ограничимся лишь описанием работы машины N, а программу для N читатель сможет написать самостоятельно. По условию, работа машины N на входе и должна отличаться от работы машины М на входе и в следующих двух случаях:
если машина М при работе на входе и пытается выйти за край ленты;
если машина М при работе на входе и остановилась в заключительном состоянии, но при этом заключительная конфигурация не может быть записана в виде слова 我0。ни для какого слова 。е △*.
Машину «М мы устроим следующим образом. Она «запускает» машину М, и если в своем вычислении М пытается выйти за край ленты, то «М зацикливается. Если машина М не останавливается, то тем самым и машина «М не останавливается. Если же М остановится, то после окончания работы машины М машина «М находит место на ленте, начиная с которого написаны одни нули, и выясняет, имеет ли заключительная конфигурация вид q()0。, где v G Д*. Однако, вообще говоря, невозможно определить, с какой ячейки начинаются одни нули, поскольку машина М могла побывать в сколь угодно далеких ячейках. Чтобы решить эту проблему, мы изменим машину М, заставив ее помечать все ячейки, в которых она побывала, и будем вместо М использовать эту новую машину.
Более подробно, работа машины N происходит в три этапа.
Машина N пишет вместо самого левого нуля специальный символ #, затем сдвигает входное слово на одну ячейку вправо, записав в освободившуюся ячейку символ 0.
М — это.М — это.Машина N запускает новую машину М. Машина
М — это.
М — это.
по определению, немного измененная машина М. Именно, работа
машины М отличается от работы машины М тем, что она пишет новый специальный символ о, а при чтении воспринимает его так же, как и нуль. Это нужно для того, чтобы после окончания работы машины М можно было выяснить, в каких ячейках побывала бы машина М при работе на входе и. Кроме того, как только машина М видит символ #, она зацикливается. Формально, программа машины М получается из программы машины М добавлением для каждой команды вида qO —> aq qO —> aLr или qO —> aRr соответственно команды qo —> ar, qo —> aLr или qo —> aRr, затем заменой нуля в правой части любой команды на о и добавлением новых команд q# —> #q для всех состояний q машины М.
Про работу машины М можно утверждать следующее. Если М во время работы на входе и пытается выйти за край ленты, то М на том же входе работает бесконечно. Если М на входе и работает бесконечно долго, то и М на входе и работает бесконечно долго. Если М останавливается на входе и в заключительном состоянии, и V — слово, записанное на ленте слева направо от крайней левой ячейки до крайней правой из посещенных машиной М ячеек, то М также останавливается на входе и в том же состоянии и в той же ячейке, а на ленте записано слово 万,полученное из слова о заменой всех нулей на о.
Теперь «М проверяет, имеет ли текущая конфигурация вид #qooo... о, где о G Д* a q — заключительное состояние машины М. Если имеет, то М дала результат на слове а; в этом случае N заменяет все символы о на нули, сдвигает слово о на одну ячейку влево и заменяет # на нуль. Если же конфигурация не имеет такого вида, то N зацикливается.
Теорема доказана.
Теорема 19. Каковы бы ни были алфавиты £ и △ такие, что 。必 U 0 必△〉и частичная функция / из £* в △*〉функция / вычислима по Тьюрингу в сильном смысле тогда и только тогда, когда / вычислима по Тьюрингу в слабом смысле.
Доказательство. Пусть функция / из Е* в Д* вычислима по Тьюрингу в сильном смысле. В силу теоремы 18 существует машина Тьюринга N, вычисляющая функцию / в сильном смысле, которая работает бесконечно долго на всех входах a С £*, для которых значение /(а) не определено. Пусть N имеет состояния qo,qi, • • • , qn. Построим машину N\ вычисляющую функцию / в слабом смысле. Машина N будет иметь тот же алфавит, что и машина N)и состояния qo, qi, • • • , Qn, q^+i. Программа машины N строится следующим
образом: в программе машины N во всех командах состояние q° заменяется на состояние Qn+i, и к полученной программе добавляется команда Qn+iO —> ОМо・
Покажем, что машина Ы' вычисляет функцию / в слабом смысле. Если значение /(а) не определено, то машина N на входе и зацикливается, а тогда, очевидно, машина N также зацикливается. Если значение /(а) определено и равно пустому слову, то машина ^ на входе и завершает работу в конфигурации 我0, а тогда, очевидно, машина N на входе и завершает работу в конфигурации 0我0, т. е. пустое слово является результатом вычисления в слабом смысле. Наконец, если значение /(а) определено и равно непустому слову V С Д* то машина N на входе и завершает работу в конфигурации QoO^O... О, а тогда, очевидно, машина N на входе и завершает работу в конфигурации Oq。。。... О, т. е. слово о является результатом вычисления в слабом смысле.
Докажем теперь, что если функция / из X* в △* вычислима по Тьюрингу в слабом смысле, то она вычислима и в сильном смысле. Пусть машина Тьюринга М вычисляет функцию / в слабом смысле. Подобно тому, как это было сделано в доказательстве теоремы 18, построим машину М, которая вместо самого левого нуля пишет символ #, сдвигает входное слово на одну ячейку вправо, записав в освободившуюся ячейку нуль, и затем работает, как М, за тем лишь исключением, что вместо нуля она пишет символ о, который при чтении воспринимает так же, как и нуль, а увидев символ #, машина М зацикливается.
Таким образом, если М во время работы на входе и пытается выйти за край ленты, то М на том же входе работает бесконечно; если М на входе и работает бесконечно долго, то и М на входе и работает бесконечно долго; если М останавливается на входе и в заключительном состоянии, и #。一 слово, записанное на ленте от крайней левой ячейки до крайней правой из посещенных машиной М ячеек, то М также останавливается на входе и в том же состоянии и в той же ячейке, а на ленте записано слово #万,полученное из слова V заменой всех нулей на о.
Построим теперь машину N, которая сначала работает, как М, а в случае остановки последней проверяет, принадлежит ли обозреваемый символ алфавиту △. Если нет, то машина N стирает с ленты все символы, заменяя их на нули, и останавливается в крайней левой ячейке (где был написан символ #). Если же обозреваемый символ принадлежит алфавиту Д, машина N двигается по ленте вправо, не меняя содержимое ячеек, пока не закончатся символы
из алфавита Д, затем, продолжая движение вправо, стирает все остальные символы, пока не встретится нуль. После этого машина двигается влево, пока не начнутся символы из алфавита △. Не меняя их, машина продолжает движение влево, пока не закончатся символы из алфавита Д, затем, продолжая движение влево, стирает все остальные символы, пока не встретится символ #. После этого машина сдвигает оставшееся на ленте непустое слово в алфавите △ влево, записывая его буква за буквой справа от ячейки, содержащей символ #. Затем машина возвращается в ячейку, содержащую символ #, заменяет его на нуль и останавливается в этой ячейке в состоянии q°. Очевидно, что так построенная машина вычисляет функцию / в сильном смысле.
Теорема доказана.
Будем говорить, что функция / вычислима по Тьюрингу, если она вычислима по Тьюрингу в сильном или слабом смысле, что в силу теоремы 19 одно и то же. Обычно, как в рассмотренном примере 2, программа для вычисления функции в слабом смысле несколько проще, чем программа для вычисления той же функции в сильном смысле. Однако в теоретических конструкциях программа для вычисления функции в сильном смысле предпочтительнее, так как она представляет результат вычисления в виде, пригодном для применения к нему другой программы. Это факт используется, например, при доказательстве следующей теоремы.
Теорема 20. Если функция / из Е* в △* и функция д из △* в Г* вычислимы по Тьюрингу, то их композиция fog вычислима по Тьюрингу.
Мы не будем доказывать эту теорему, поскольку ее доказательство не использует новых идей и проводится путем непосредственного описания процедуры получения программы машины Тьюринга для вычисления функции fog в сильном смысле из программ машин Тьюринга, вычисляющих в сильном смысле функции / ид.
Общее понятие функции, вычислимой по Тьюрингу, позволяет следующим образом определить вычислимые по Тьюрингу функции натурального аргумента. Отождествим натуральные числа и слова в алфавите {|}. А именно, пусть пустое слово обозначает натуральное число 0, слово I обозначает число 1, слово || — число 2, и вообще, слово I ... I,состоящее из п букв |, обозначает число п. Таким образом, вычислимая по Тьюрингу частичная функция из N в N — это вычислимая по Тьюрингу частичная функция из {|}* в {|}*.
Наконец, определим понятие вычислимой функции из X* х Г* в Д* для произвольных алфавитов Е, Г, Д. Пусть символ # не содержится в алфавитах Е и Г. Функцию / из Е* х Г* в △* будем считать вычислимой по Тьюрингу, если вычислима функция / из X* U Г* U {#} в Д* определенная следующим образом:
7f /("№), если w = u^v,
[не определено, если w не имеет такого вида.
Таким образом, машина Тьюринга, вычисляющая функцию /, должна на входе а#。дать результат /(и, о). Аналогично определяется вычислимость по Тьюрингу функции из £; х ... х Е* в △*.
Упражнения.
Доказать, что по программе машины Тьюринга нельзя определить, вычисляет ли она всюду определенную функцию из N в N.
Доказать, что по программе машины Тьюринга нельзя определить, вычисляет ли она где-то определенную функцию из N в N.
Доказать, что по программе машины Тьюринга нельзя определить, останавливается ли она, начиная работу с пустой лентой.
8. Универсальная вычислимая по Тьюрингу функция
Пусть Е, Д — два алфавита. Мы собираемся для каждой машины Тьюринга, ленточный алфавит которой включает Е и Д, записать ее программу как слово в некотором алфавите Б. Положим Б = {1, q, —>, Я, L, *}. Каждую букву алфавитов £ и △ закодируем последовательностью единиц. Например, если Е = {а, Ь}, △ = {с, d}, то закодируем а» 1, b <-> 11, с <-> 111, d <-> 1111. Зафиксируем любое такое кодирование букв £ и △. Пусть М — произвольная машина Тьюринга, алфавит которой включает £ и △. Закодируем каждое состояние М последовательностью букв q: состояние q° последовательностью q, состояние 史一qq и т. д. Каждый символ ленточного алфавита М, не содержащийся в Е U Д, закодируем любым способом последовательностью единиц, которая не была использована при кодировании EU Д. Каждой команде М сопоставим слово, составленное из кодов левой и правой частей команд, разделенных знаком —>. Программе М сопоставим слово, полученное из слов, сопоставленных ее командам, записанных в любом порядке и разделенных символом *. Будем называть это слово записью программы М. Например, запись программы машины из примера 2
имеет вид
qqlll —> llllRqqq * qqql —> lllRqqqq * qqqll T R ….
Здесь мы закодировали а» 1, Ь» 11, 0» 111,才 仆 1111.
Определим функцию F из Б* х Е* в △* следующим образом. (F(P, u)=o)» (Р является записью программы некоторой машины М, дающей на выходе и результат о).
Теорема 21 (теорема об универсальной вычислимой по Тьюрингу функции).
Функция F вычислима по Тьюрингу.
Функция F универсальна для вычислимых по Тьюрингу функций из Е* в Д* в следующем смысле: для любой вычислимой по Тьюрингу функции / из £* в △* существует слово Р G Б* для которого /(а) + F(P, а) для всех u С X*.
Вторая часть теоремы очевидна. Доказательство первой части требует аккуратного построения машины Тьюринга, вычисляющей F. Это построение мы не приводим.
В дальнейшем ограничимся для простоты однобуквенными алфавитами Е = {|}, △ = {|}. Напомним, что множество всех слов в алфавите {|} мы отождествили с множеством натуральных чисел.
Теорема 22 (теорема о неразрешимости проблемы остановки машины Тьюринга). Функция Ост : Б* х N —> N; определенная равенством
Ост(Р, п) = < О,Ост(Р, п) = < О,если Р — запись программы машины Тьюринга, останавливающейся на входе п;
Ост(Р, п) = < О,
Ост(Р, п) = < О,
если Р не является записью программы никакой машины или машина с записью программы Р не останавливается на входе п,
не является вычислимой по Тьюрингу.
Доказательство от противного. Предположим, что функция Ост вычислима по Тьюрингу.
Перенумеруем все слова в алфавите Б в порядке возрастания длины, а при одной длине — в лексикографическом порядке; обозначим n-е слово Рп. Машину с записью программы Рп будем обозначать М^. Нетрудно доказать, что функция / : N —> Б* переводящая п в Дг, вычислима по Тьюрингу. Тогда и функция
Ост(Рп,т) двух натуральных аргументов пит вычислима по Тьюрингу. Пусть МПо — машина Тьюринга, которая на входе m С N работает так: вычисляет Ост(Рт,т) и если Ост(Рт,т) = 1, то зацикливается, а иначе останавливается. Тогда для любой машины Мт следующие два утверждения равносильны:
Мт останавливается на входе т;
машина МПо не останавливается на входе т.
Взяв m = по, мы получим противоречие.
Тезис Чёрча
Нетрудно проверить, что вычислимые по Тьюрингу функции из Е* в Е* удовлетворяют всем свойствам вычислимых функций, сформулированным в §§ 1-6 или неявно использованым там. Точнее, если ограничиться ансамблями вида Е* (среди них есть и N, так как мы отождествили {|}* и N) и заменить всюду слова «вычислимая функция» на «вычислимая по Тьюрингу функция», то все теоремы §§ 1-6 останутся справедливыми. Возникает предположение о совпадении класса вычислимых по Тьюрингу функций и класса функций, вычислимых в интуитивном смысле (использованном в §§ 1-6). Это предположение носит название тезиса Чёрча. Поскольку очевидно, что всякая вычислимая по Тьюрингу функция вычислима в интуитивном смысле, тезис Чёрча имеет следующий вид:
для любой функции / С Сош(Е*, £*) существует алфавит Г D Е и машина Тьюринга с алфавитом Г, которая вычисляет /.
Тезис Чёрча невозможно ни доказать, ни опровергнуть, так как понятие вычислимой функции не определено формально. Все до сих пор предложенные формальные уточнения понятия вычислимости не вывели за класс вычислимых по Тьюрингу функций. Это служит некоторым подтверждением тезиса Чёрча. Кроме того, до сих пор никому не удавалось привести пример (или доказать существование такового) вычислимой, но не вычислимой по Тьюрингу функции.
Если верить в тезис Чёрча, то первую часть теоремы об универсальной вычислимой по Тьюрингу функции доказывать не нужно: ведь функция F вычислима; более того, для установления вычислимости по Тьюрингу любой функции достаточно предъявить неформальный алгоритм, вычисляющий ее.
СПИСОК РЕКОМЕНДУЕМОЙ ЛИТЕРАТУРЫ
Верещагин Н.К., Шень А. Вычислимые функции. — М.: МЦНМО, 1999. - 176 с.
Верещагин Н.К., Шень А. Языки и исчисления. — М.: МЦНМО, 2000. - 288 с.
Гиндикин С.Г. Алгебра логики в задачах. — М.: Наука, 1972. — 288 с.
/. Ершов Ю.Л., Палютин Е.А. Математическая логика. — М.: Наука, 1987. — 336 с.
Катленд Н. Вычислимость. Введение в теорию рекурсивных функций. — М.: Мир, 1985. — 256 с.
Клини С.К. Математическая логика. — М.: Мир, 1973. — 480 с.
Колмогоров А.Н., Драгалин А.Г. Введение в математическую логику. — М.: Изд-во моек, ун-та, 1982. — 120 с.
Колмогоров А.Н., Драгалин А.Г. Математическая логика. Дополнительные главы. — М.: Изд-во Моск, ун-та, 1984. — 119 с.
Лавров И.А., Максимова Л.Л. Задачи по теории множеств, математической логики и теории алгоритмов. — М.:①ИЗМАТЛИТ, 2002. — 256 с.
Марков А.А. Элементы математической логики. — М.: Изд-во Моск, ун-та, 1984. — 80 с.
Мендельсон Э. Введение в математическую логику. — М.: Наука, 1971. — 320 с.
72. Новиков П.С. Элементы математической логики. — М.: Наука, 1971. — 400 с.
73. Столл Р.Р. Множество. Логика. Аксиоматические теории. — М.: Просвещение, 1968. — 231 с.
7/. Успенский В.А. Лекции о вычислимых функциях. — М.: ①изматтиз, 1960. — 492 с.
15. Чёрч А. Введение в математическую логику. — М.: ИЛ, 1960. — 484 с.
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ
modus ponens, 63
автоморфизм, 51
аксиома, 56
—бесконечности, 18
—выбора, 18
— выделения, 18
—множества всех подмножеств, 17
—объединения, 17
—объемности, 17
—пары, 17
—подстановки, 18
—фундирования, 18
аксиомы Пеано, 77
—равенства, 63
алгоритм, 93
алфавит, 10
—рабочий, 109
ансамбль, 95
арифметика Пеано, 77
буква, 10
валентность, 28
вывод, 63
—из гипотез, 69
—сокращенный, 67
высказывание, 19
вычисление, 112
—безрезультатное, 112
гипотезы, 69
дизъюнкция, 22
доказательство, 61, 73
закон Пирса, 23
—двойного отрицания, 23
—исключенного третьего, 23
—логический, 23
—противоречия, 23
запись программы, 119
значение функции, 7
изоморфизм, 47
импликация, 22
имя, 20
индукция по построению, 28
интерпретатор, 104
интерпретации элементарно эквивалентные, 47
интерпретация, 34
—изоморфная, 47
—стандартная, 34
истинностная таблица, 22
истинностное значение, 19, 36
исчисление предикатов, 62
каноническая интерпретация теории, 81
квантор, 24
—общности, 24
—существования, 25
кванторная приставка, 30
класс, 17
команда, 110
композиция отношений, 7
константа, 27
конструктивный объект, 94
континуум-гипотеза, 15
конфигурация, 111
—начальная, 112
конъюнкция, 22
кортеж длины п, 7
лемма Генкина, 85
—Линденбаума, 80
логическая операция, 21
логический символ, 28
логическое следствие, 58
машина Тьюринга, 109 множества равномощные, 9
—эквивалентные, 10
множество, 6
—семантически полное, 59
—дедуктивно замкнутое, 73
—значений, 7
—линейно упорядоченное, 57
—непротиворечивое, 71
—перечислимое, 101
—полуразрешимое, 96
—противоречивое, 71
—пустое, 6
—разрешимое, 95
—совместное, 58
—строго частично упорядоченное, 8
—счетное, 10
—универсальное, 106
—частично упорядоченное, 8
модель, 58
—арифметики нестандартная, 88
мощность, 14
—континуума, 15
номер вычислимой функции, 105
носитель интерпретации, 34 нумерация вычислимых функций, 105
область определения, 7
—применимости алгоритма, 93
объединение, 6
операция пропозициональная, 23
отношение антисимметричное, 8
—бинарное, 7
—иррефлексивное, 8
—обратное, 7
—рефлексивное, 8
—симметричное, 8
—транзитивное, 8
—эквивалентности, 8
отрицание, 21
оценка, 36
парадокс Кантора, 16
—Рассела, 16
параметр, 20
переменная, 19, 28
—пропозициональная, 23
—свободная, 20, 30
—связанная, 20, 30
пересечение, 6
подмножество, 6
—собственное, 6
подстановка, 31
поле нулевой характеристики, 90
порядок плотный линейный, 60
—частичный, 8
строгий, 8
последовательность, 8
—вычислимая, 99
постулат, 56
правила Бернайса, 67
правило вывода, 63
производное, 66
—заключения, 63
—контрапозиции, 63
—обобщения, 63
—силлогизма, 63
—тавтологического следствия, 63
предикат, 26
—выразимый, 51
—равенства, 27
предикатный символ, 28
принцип математической индукции, 77
программа, 105, 110
проекция, 98
произведение декартово, 7
—отношений, 7
—прямое, 7
равные множества, 6
разность, 6
расширение теории, 80
результат вычисления в сильном смысле, 112
в слабом смысле, 112
связка пропозицональная, 23
сигнатура, 27
слово, 10
соответствие взаимно однозначное.
9
субъект, 26
схема аксиом, 77
тавтологическое следствие, 61
тавтология, 23, 38
тезис Чёрча, 121
теорема, 61, 73
—Генкина, 84
—Гёделя о полноте, 86
—Кантора, 15
—Кантора-Бернштейна, 15
—Линденбаума, 80
—Мальцева локальная, 88
о компактности, 88
—Поста, 102
—интерполяционная, 24
—компактности, 24
—об универсальной функции, 104
теория, 74
—Ш-категоричная, 92
—Генкина, 82
—групп, 56
—дедуктивная, 73
—дедуктивно полная, 75
—линейно упорядоченных множеств, 58
—неполная, 75
—первого порядка, 74
—полей, 57
—полная, 75
—разрешимо аксиматизируемая, 107
—семантическая, 73
—элементарная, 74, 75
терм, 28
терм оцененный, 36
форма к-местная, 20
—высказывательная, 20
—именная, 20
формальная арифметика, 76
формула, 29
—атомная, 29
—выводимая, 63
—выполнимая, 39
—закрытая, 31
— замкнутая, 31
—конечно-общезначимая, 44
—общезначимая, 37, 44
—оцененная, 36
—предваренная, 42
—пропозициональная, 23
—тождественно истинная, 37
—элементарная, 29
формулы равносильные, 39
функциональный символ, 28
функция, 7
—взаимно однозначная, 9
—вычислимая, 94
по Тьюрингу, 113
—тождественная, 8
—универсальная, 104
—характеристическая, 14, 96
—частичная, 94
характеристика поля, 90
число кардинальное, 14
эквивалентность, 22
элемент максимальный, 9
язык первого порядка, 27
—теории множеств, 33
—формальной арифметики, 33
Учебное издание
УСПЕНСКИЙ Владимир АндреевичВЕРЕЩА ГИН Николай КонстантиновичПЛИС КО Валерий Егорович
ВВОДНЫЙ КУРС МАТЕМАТИЧЕСКОЙ ЛОГИКИ
Редактор И. Л. ЛегостаеваОригинал-макет: И.Л. ПанкратьеваОформление переплета: А.А. Логунов
ЛР №071930 от 06.07.99. Подписано в печать 04.12.03.
Формат 60x90/16. Бумага офсетная. Печать офсетная.
Ус л. печ. л. 8. Уч.-изд. л. 8. Заказ №
Издательская фирма «Физико-математическая литература»МАИК «Наука/Интерпериодика»
117997, Москва, ул. Профсоюзная, 90
E-mail: fizmat@maik.ru
Отпечатано с готовых диапозитивов в ПФ «Полиграфист»160001, г. Вологда, ул. Челюскинцев, 3Тел.: (8172) 72-55-31, 72-61-75, факс: (8172) 72-60-72E-mail: form.pfp@votel.ru http://www.vologda/~pfpv
ISBN 5-9221-0278-8
УДК 510.7
ББК 22.12
У 77
Успенский В. А., Верещагин Н. К., Пл и с к о В. Е. Вводный курс математической логики. — 2-е изд. — М.: ФИЗМАТЛИТ, 2004.— 128 с. - ISBN 5-9221-0278-8.
В учебном пособии содержится материал основного курса «Введение в математическую логику», читаемого на механико-математическом факультете МГУ. Излагаются элементы теории множеств, основные понятия, относящиеся к семантике формализованных логико-математических языков первого порядка, исчисление предикатов и теорема о его полноте, дается введение в теорию алгоритмов и вычислимых функций.
Для студентов математических факультетов университетов, педагогических институтов, а также других вузов с углубленным изучением информатики и кибернетики.
Библиогр. 15 назв.
ISBN 5-9221-0278-8ISBN 5-9221-0278-8© ФИЗМАТЛИТ, 2002, 2004
ISBN 5-9221-0278-8
ISBN 5-9221-0278-8
Введение 5
ГЛАВА 1
ЭЛЕМЕНТЫ ТЕОРИИ МНОЖЕСТВ
Основные понятия теории множеств 6
Бинарные отношения и функции 6
Взаимно однозначные соответствия и эквивалентные множества9
Счетные множества 10
Канторовский диагональный метод 14
Кардинальные числа, или мощности 14
Теорема Кантора 15
Парадоксы теории множеств 16
Аксиоматическая теория множеств 17
ГЛАВА 2
ЯЗЫКИ ПЕРВОГО ПОРЯДКА
Высказывания и высказывательные формы 19
Логические операции 21
Логика высказываний 23
Кванторы 24
Субъектно-предикатная структура предложений 26
Языки первого порядка 27
Примеры языков первого порядка 32
Определение интерпретации 33
Формальное определение истинности 35
Общезначимые формулы, выполнимые формулы, равносильные формулы 37
Предваренныеформулы 42
Истинность в конечных интерпретациях 44
Изоморфизмыи элементарная эквивалентность 46
Выразимость. Доказательство невыразимости с помощью автоморфизмов 50
ГЛАВА 3
ЭЛЕМЕНТЫ ТЕОРИИ ДОКАЗАТЕЛЬСТВ
Аксиоматический метод 54
Логическое следование 57
Тавтологическое следствие 61
Исчисление предикатов 62
Вывод из гипотез 69
Теории первого порядка 72
44Оглавление
4
4
Формальная арифметика 76
ГЛАВА 4
ТЕОРЕМА ГЁДЕЛЯ О ПОЛНОТЕ
Расширение теории 79
Каноническая интерпретация теории 81
Доказательство теоремы о полноте 84
Некоторые следствия теоремы Гёделя о полноте 87
Математические применения теоремы о полноте и ее следствий 88
Категоричность 92
ГЛАВА 5
ТЕОРИЯ АЛГОРИТМОВ
Вычислимые функции 93
Разрешимые множества 95
Полуразрешимые множества 96
Свойство пошагового выполнения алгоритма иего следствия 99
Универсальная вычислимая функция 104
Перечислимость множества теорем 107
Машины Тьюринга 109
Универсальная вычислимая по Тьюрингу функция 119
Тезис Чёрча 121
Список рекомендуемой литературы 122
Предметный указатель 123