4.5. Диофантово представление экспоненты
Воспользуемся теперь полученным в предыдущем разделе диофантовым представлением предиката Q(a, x, y, n) для построения диофантова представления экспоненты, т.е. предиката n
E(u, v, n) <-> u=vn & v>=3.
Будем следовать рассуждениям Дж.Робинсон, относящимся еще к 1952 г. (она установила тогда, что предикат u=vn "диофантово выразим" через предикат Q, но, разумеется, не имела диофантова представления для Q, полученного Ю.В.Матиясевичем 18 лет спустя).
Возьмем наше основополагающее равенство
(a+sqrt(a2-1))n = xn(a)+yn(a)sqrt(a2 -1)
и обозначим v=a+sqrt(a2-1). Тогда слева будем иметь просто vn , а справа вместо sqrt(a2-1 можем подставить v-a. Таким образом, уравнение
vn - xn(a) - yn(a) (v - a) = 0
имеет корень v1=a+sqrt(a2-1). Поскольку коэффициенты уравнения рациональны, то число v2=a-sqrt(a2-1) также должно быть его корнем. С другой стороны, v1, v2 - корни квадратного уравнения
v2 - 2av + 1 = 0.
Это значит, что трехчлен v2-2av+1 является делителем полинома vn-xn(a)-yn(a)(v-a) в поле рациональных чисел. Более того, частное от этого деления должно быть полиномом с целыми коэффициентами (старший коэффициент делителя равен 1). Отсюда nследует, что если v - целое число, то vn-xn(a)-yn(a)(v-a) делится на v2-2av+1. В этом и состоит утверждение следующей леммы Дж.Робинсон:
ЛЕММА 9. При a>=1 и n>=0
vn = xn(a)+yn(a)(v - a) mod(v2-2av+1).
Упражнение 4.13. а) Проверьте, что лемма 9 действительно выполняется и для n=0, 1 (наше рассуждение проходит только при n>=2).
б) Проверьте, что на самом деле
vn - xn(a) - yn(a)(v - a) = (v2-2av+1)(y1vn-2 + y2vn-3 + ... + yn-2v + yn-1).
(Это будет по существу новым доказательством леммы 9, уже без использования алгебры полиномов.)
Значение леммы 9 состоит в том, что она связывает произвольную степень v с хорошо изученными числами xn(a), yn(a), причем связь эта достигается посредством полиномов фиксированной степени (v-a, v2-2av+1). Отсюда легко получается диофантово представление для u=vn.
В самом деле, мы должны исходить из произвольных u, v, n, и, накладывая на них диофантовы условия, добиться выполнения nравенства u=vn. Возьмем сначала числа a, x, y и подчиним их условию
F1: Q(a, x, y, n),
т.е. x=xn(a) & y=yn(a). Тогда по лемме 9
vn = x+y(v-a) mod(v2-2av+1).
Чтобы как-то "привязать" число u к числу v , потребуем
F2: u = x+y(v-a) mod(v2-2av+1).
Тогда
u = vn mod(v2-2av+1).
Чтобы отсюда можно было заключить, что u=vn, надо обеспечить достаточную величину модуля - он должен быть больше как u, так и vn. Этого можно добиться, увеличивая свободный параметр a - тогда модуль будет расти (по абсолютному значению). В частности, условие
F3: u < 2av-v2-1
обеспечивает половину требуемого. Но как (с помощью диофантовых условий) добиться неравенства vn<2av-v2-1? Проще ли это по сравнению с обеспечением сразу равенства u=vn? Проще, поскольку с помощью диофантовых условий мы умеем "заставить" величину расти со скоростью экспоненты, но не умеем пока "заставить" ее в точности следовать экспоненте. В самом деле, из леммы 2 мы знаем, что xn(v)>=vn, а обеспечить условие xn(v)<2av-v2-1 очень легко. Вводим числа X, Y такие, что
F4: Q(v, X, Y, n),
т.е. X=xn(v) & Y=yn(v), и требуем, чтобы число a было настолько велико, чтобы имело место
F5: X < 2av -v2 - 1.
Отсюда следует
vn < xn(v) = X < 2av-v2-1,
что совместно с F3 и (1) влечет u=vn.
Таким образом, мы сумели вывести u=vn из условия
E axyXY (F1&F2&F3&F4&F5). (2)
Одновременно мы обеспечили также неравенство v>=3 (оно содержится в F4), т.е. из (2) выведена истинность предиката E(u, v, n).
Упражнение 4.14. а) Покажите, как преобразовать (2) в диофантово представление вида (E)P=0. Оцените число кванторов E, степень полинома P и сумму модулей его коэффициентов.
б) Чтобы завершить доказательство, покажите, что (2) вытекает из E(u, v, n), т.е. u=vn & v>=3.
Итак, следуя работам Ю.В.Матиясевича и Дж.Робинсон, мы получили для предиката u=vn & v>=3 диофантово представление вида
(Ez1...Ezk) P(u, v, n, z1, ..., zk) = 0.
Полагая v=3 и добавив квантор En, мы получаем диофантово представление предиката:
"u является степенью числа 3".
Существует, таким образом, диофантово уравнение
P(u, v1, ..., vs)=0
с параметром u, которое имеет решения в натуральных числах, если и только если u имеет вид 3n. Этот результат оказался неожиданным для многих специалистов по теории чисел.
4.6. Диофантовы представления числа сочетаний и факториала
Еще в 1952 г. Дж.Робинсон показала, что предикаты x=Cyz, x=z! диофантово выразимы через экспоненту. Теперь, имея диофантово представление экспоненты, можно построить диофантовы представления и этих предикатов.
Метод Дж.Робинсон, относящийся к сочетаниям, был усовершенствован Ю.В.Матиясевичем. Будем исходить из формулы бинома Ньютона
(1 + p)y = sum {Cyz pz | for z =0 to y} (1)
При p=1 мы имели бы
2y = sum {Cyz | for z =0 to y},
таким образом, Cyz <= 2y для всех z<=y. Поэтому если p - большое натуральное число, например, p=3y , то Cyz < p для всех z<=y, и мы можем смотреть на числа Cyz как на цифры в системе счисления с основанием p. Сумма в (1) представляет тогда p-ичную запись числа (1+p)y. Если мы хотим теперь наложить на число x условие, приводящее к равенству x= Cyz, надо потребовать, чтобы x было цифрой при степени pz в записи числа (1+p)y , т.е.
x < p & (1+p)y = u + xpz + vpz+1,
где
u = sum {Cyi pi | for i=0 to z-1}, vpz+1 = sum {Cyi pi | for i=z+1 to y}
Число v однозначно определяется тем, что оно стоит у множителя pz+1 (как частное от деления (1+p)y на pz+1). Для выделения же u (не обращаясь к формуле, содержащей Cyi) мы должны потребовать, чтобы имело место неравенство u<pz (тогда u определяется однозначно как остаток от деления (1+p)y на pz). В самом деле (учитывая, что Cyi < p),
sum {Cyi pi | for i=0 to z-1} <= (p-1) sum {Cyi | for i=0 to z-1} = (p-1)(pz-1)/(p-1) < pz.
Таким образом, если x=Cyz & z<=y, то
Epuv (p=3y & (1+p)y = u + xpz + vpz+1 & x<p & u<pz). (2)
Покажем теперь, что из z<=y вместе с (2) вытекает x=Cyz. Согласно (2) число u является остатком от деления (1+p)y на pz. Согласно же (1) этот остаток выражается также суммой
sum {Cyi pi | for i=0 to z-1},
т.е. u равно этой сумме. Рассмотрим тогда число
q = ((1+p)y - u)/pz = x + vp.
Так как x<p, то x является остатком от деления q на p. С другой стороны,
q = Cyz + sum {Cyi pi-z | for i=z+1 to y},
где Cyz <= 2y < p и большая сумма делится на p. Это значит, что Cyz также является остатком от деления q на p, т.е. x=Cyz, что и yтребовалось.
Упражнение 4.15. Покажите, как преобразовать z<=y & (2) в диофантово представление вида (E)P=0. Оцените число кванторов E, степень полинома P и сумму модулей его коэффициентов.
Займемся, наконец, предикатом x=z!. Рассуждения Дж.Робинсон исходят из следующей идеи. Как известно,
Cyz = y(y-1)...(y-z+1)/z!.
Если y значительно больше z, то числитель незначительно отличается от yz, т.е. z! ~ yz/Cyz. Чтобы оценить необходимую величину y, изучим частное yz/Cyz подробнее:
yz/Cyz = z! (y/y) (y/y-1) ... (y/y-z+1).
Отсюда вытекает, что
z! <= yz/Cyz <= z! (y/y-z)z = z! (1+z/y-z)z.
Если возьмем y=z+zt, то
z! <= yz/Cyz <= z! (1+1/t)z = z! (1+ sum{ Czi t-i | for i=1 to z}.
Учитывая, что Czi <=2z, возьмем t=2zu, тогда
z! <= yz/Cyz <= z! (1+z/u).
Наконец, взяв u=2zzz, получаем (поскольку z!<=z z)
z! <= yz/Cyz <= z! + 1/2.
Таким образом, если y=z+2z2 2z zz, то
z! = [yz/Cyz ],
где [ ] - символ целой части (наибольшее целое, не превосходящее число в скобках).
Упражнение 4.16. Покажите, как отсюда получить для предиката x=z! диофантово представление вида (E)P=0. Оцените число кванторов E, степень полинома P и сумму модулей его коэффициентов.
В 1960 г. Х.Патнэм заметил, что всякое множество A натуральных чисел, имеющее диофантово представление, т.е. обладающее свойством
x in A <-> (Ez1...Ezn) P(x, z1, ..., zn) = 0
для некоторого полинома P с целыми коэффициентами, представимо как множество всех положительных значений некоторого (другого) полинома Q (также с целыми коэффициентами).
Упражнение 4.17. Покажите, что можно взять Q = x (1 - P2).
Упражнение 4.18. Исходя из теоремы Вильсона (см. А.А.Бухштаб [1966]):
"x - простое число" <-> x>1 & x2 делит x!+x,
постройте диофантово представление для множества всех простых чисел. Оцените, как всегда, число кванторов и степень полинома P под ними. Полином Q = x (1 - P2) представляет множество всех простых чисел как множество всех своих положительных значений. Таким образом, "формула для простых чисел", о невозможности которой все время говорили специалисты по теории чисел, в определенном смысле все-таки существует.
4.7. Устранение ограниченного квантора всеобщности
Теперь мы подошли к своей конечной цели - научиться преобразовывать формулы вида
(Ay<=t)(Ez1...Ezn) P(a1, ..., am, y, z1, ..., zn) = 0 (1)
(P - полином с целыми коэффициентами, t - полином первой степени с натуральными коэффициентами от a1, a2, ..., am) в диофантовы представления вида
(Ev1...Evk) Q(a1, ..., am, v1, ..., vk) = 0.
Именно этого не хватило нам в разделе 4.2 для преобразования формул, представляющих вычислимые функции, в диофантовы представления. Наши рассуждения будут следовать в основном по пути, намеченному в 1960-1961 гг. М.Дэвисом, Х.Патнэмом и Дж.Робинсон. Некоторые усовершенствования были внесены (уже после 1970 г.) совместно Ю.В.Матиясевичем и Дж.Робинсон.
При фиксированных a1, ..., am формула (1) действительно представляет собой утверждение о существовании (несмотря на присутствие квантора всеобщности) - о существовании (t+1)n чисел (по n на каждое значение y = 0, 1, ..., t). Введем специальные обозначения для этих чисел:
y=0; z1(0), ..., zn(0),
y=1; z1(1), ..., zn(1),
...
y=t; z1(t), ..., z n(t),
Избавиться от квантора A<= можно, закодировав эту таблицу ограниченным (не зависящим от t) числом натуральных чисел. Можно попытаться, например, закодировать одним числом каждый из n столбцов таблицы. Для кодирования можно использовать китайскую теорему об остатках. Если бы имелись попарно взаимно простые числа u0, u1, ..., uz, то по этой теореме можно было бы подобрать числа w1, ..., wn такие, чтобы всякое zi(y) оказалось остатком от деления wi на uy, т.е.
zi(y) <uy & wi = zi(y) mod uy (2)
для всех y<=t и i=1, ..., n (для этого делители uy должны быть, разумеется, достаточно большими).
Но если все это будет сделано, какие условия надо наложить на w1, ..., wn, чтобы остатки zi(y) удовлетворяли уравнению (1)? Выбор у нас небольшой - попытаемся подставить числа w1, ..., wn в уравнение P=0 вместо чисел zi(y). Вместо y подставим iнеопределенное пока число x. Что можно сказать о значении P(a1, ..., am, x, w1, ..., wn)? Если в дополнение к (2) мы потребуем еще, чтобы для всех y = 0, 1, ..., t имело место
x = y mod uy, (3)
то можно будет утверждать, что
P(a1, ..., am, x, w1, ..., wn) = P(a1, ...,am, y, z1(y), ..., zn(y)) mod uy.
Так как значение P справа равно нулю, то получаем
P(a1, ..., am, x, w1, ..., wn) = 0 mod uy
для всех y<=t, т.е. значение слева делится на все числа uy. Но эти числа попарно взаимно просты, поэтому значение P должно делиться и на их произведение:
P(a1, ..., am, x, w1, ..., wn) = 0 mod u0u1...uz. (4)
Посмотрим теперь на (4) с другой стороны - не как на следствие каких-то предположений, а как на условие, налагаемое на числа w1, ... ,wn. Тогда если числа zi(y) - остатки от деления wi на uy, то согласно (1) и (2) должно иметь место
P(a1, ..., am, y, z1(y), ..., zn(y)) = 0 mod uy.
Чтобы получить отсюда не только = 0 mod uy, но и = 0, значение слева должно было меньше модуля uy. Грубую оценку значения полинома P можно получить следующим образом. Через z обозначим число, которое больше всех чисел zi(y), через N - степень полинома P, через M - сумму модулей его коэффициентов. Тогда
|P(a1, ..., am, y, z1(y), ..., zn(y))| <= M ((a1+1)...(am+1)(t+1)(z+1))N.
Упражнение 4.19. Убедитесь, что это действительно так.
Выражение справа обозначим через T. Чтобы интересующие нас значения полинома P оказались меньше всех uy, мы должны yпотребовать:
а) чтобы остаток от деления чисел wi на uy всегда был i yменьше z,
б) чтобы все uy были больше T (зависящего от z). Кроме того, мы должны найти достаточно простой генератор (больших и попарно взаимно простых) чисел uy. В принципе идею yгенератора можно было бы позаимствовать у бета-функции Геделя (см. раздел 3.3), определив
uy = 1 + T t! (1+y),
тем более что диофантово представление факториала мы уже имеем. К сожалению, в таком случае придется проводить специальную работу, чтобы получить диофантово представление для произведения u0u1...uz, т.е. для модуля в сравнении (4). В свое время М.Дэвис, Х.Патнэм и Дж.Робинсон приблизительно так и сделали.
Более удобным оказывается, однако, другой генератор чисел uy, предложенный позднее Ю.В.Матиясевичем и Дж.Робинсон. Представим число Cvt+1(при условии t+1<=v) следующим образом:
Cvt+1 = v(v-1)...(v-t) / (t+1)! = ((v+1)/1-1) ((v+1)/2-1) ... ((v+1)/(t+1)-1).
Если потребовать, чтобы v+1 делилось на (t+1)!, то все сомножители окажутся целыми числами. Если потребовать еще больше - чтобы v+1 делилось на ((t+1)!)z , то эти сомножители окажутся взаимно простыми.
Упражнение 4.20. Проверьте, что это действительно так (если d - общий делитель i-го и j-го сомножителей, рассмотрите их разность).
Итак, потребуем, чтобы v+1 делилось на ((t+1)!)z, и возьмем
uy = (v+1) / (y+1) - 1.
Тогда с произведением u0u1...uz никаких проблем не будет - оно равно Cvt+1, а диофантово представление для числа сочетаний мы строить умеем. Теперь мы можем объединить все свои условия (res(a, b) означает "остаток от деления a на b"):
G1: P(a1, ..., am, x, w1, ..., wn) = 0 mod Cvt+1,
G2: (Ay<=t) x = y mod ((v+1)/(y+1)-1)
G3i: (Ay<=t) res (wi, (v+1)/(y+1)-1) < z,
G4: (v+1)/(y+1)-1 > M((a1+1)...(am+1)(t+1)(z+1))N,
G5: v+1 делится на ((t+1)!)z.
Упражнение 4.21. Покажите, что (1) равносильно формуле
Ex Ev Ez Ew1 ... Ewn G1 & G2 & G31 & ... & G3n & G4 & G5.
Не забудьте воспользоваться китайской теоремой об остатках при построении чисел x, w1, ...,wn.
К сожалению, последнюю формулу нельзя сразу преобразовать в диофантово представление. Мешают этому кванторы Ay<=t в условиях G2, G3i. Однако в отличие от Ay<=t в исходной формуле (1), здесь этот квантор стоит не над произвольным диофантовым представлением, а над конкретными и достаточно простыми преди- катами. Можно надеяться, что эта простота позволит избавиться от кванторов Ay<=t полностью.
Сначала заметим, что если взять v=x, то условие G2 будет выполнено автоматически,т.е. в нашем списке требований его можно опустить. В самом деле,
(x+1)/(y+1)-1 = (x-y)/(y+1)
является целым числом, которое делит x-y (частное равно y+1), т.е.
x = y mod ((x+1)/(y+1)-1).
Займемся теперь условиями G3i. Если остаток от деления wi на (x+1)/(y+1)-1 меньше z, то одно из чисел wi, wi-1, ..., wi-z+1 делится на (x+1)/(y+1)-1, т.е. на это число делится и произведение
wi(wi-1)...(wi-z+1) = wi! / (wi-z)!.
Поскольку числа (x+1)/(y+1)-1 для различных y попарно взаимно просты, то условие
Ay<=t ( (x+1)/(y+1)-1 делит wi! / (wi-z)! )
равносильно условию
G3i': Cxt+1 делит wi! / (wi-z)!
(т.е. исчезает квантор Ay<=t). Это тем более приятно, что мы умеем строить диофантово представление факториала и для нас не составит труда записать G3i' диофантовыми средствами. Но, к сожалению, G3i' не равносильно G3i !. Из G3i вытекает G3i' (как мы только что убедились), однако из G3i' не вытекает G3i - если произведение делится на некоторое число, нет гарантии, что на это число будет делиться один из сомножителей. Что же тогда можно гарантировать?
Если число R делит прозведение P1P2.. Pk, то R можно разложить в прозведение R1R2...Rk , где каждое Ri делит свое Pi. Если Ri - наибольший из сомножителей R, то Rik >= R и Ri >= k-root(R). Таким образом, если произведение P1P2...Pk делится на R, можно утверждать только, что R и один из сомножителей Pi имеют общий делитель >= k-root(R). Большего гарантировать нельзя.
Поэтому если вместо условий G3i возьмем (с одной стороны, более удобные) условия G3i', то можно гарантировать только, что некоторое wi - j (где 0<=j<=z) имеет общий делитель с числом
uy = (x+1) / (y+1) - 1,
который по величине >= z-root(uy). К счастью, этого оказывается yдостаточно. В самом деле, "пройдем" следующим образом от w1 до wn (при фиксированном y<=t). При некотором z1(y) < z разность w1 - z1(y) делится на некоторый делитель S1 >= z-root(uy) числа uy. Далее, при некотором z2(y) < z разность w2 - z2(y) делится на некоторый делитель S2 >= z-root(S1) числа S1, т.е. w2 - z2(y) делится на делитель S2 >= z2-root(uy) числа uy. И так далее, до разности wn - zn(y), которая делится на делитель Sn >= zn-root(uy) числа uy (здесь также zn(y) < z).
Подводя итог, заключаем, что для всех i=1, ..., n
wi = zi(y) mod Sn,
где Sn делит uy (а следовательно, и Cit+1) и Sn >= zn-root(uy). По условию G1 имеем
P(a1, ..., am, x, w1, ..., wn) = 0 mod Sn,
Отсюда вытекает, что
P(a1, ..., am, y, z1(y), ..., zn(y)) = 0 mod Sn.
причем все zi(y) < z. Значение слева должно будет равняться нулю, если оно будет (по абсолютному значению) меньше модуля Sn, т.е. если zn-root(uy) будет больше
T = M((a1+1)...(am+1)(t+1)(z+1))N.
Это значит, что условие G4 можно заменить условием
G4': (x+1) / (t+1) - 1 > T**z**n,
где ** означает возведение в степень.
Упражнение 4.22. Проверьте еще раз, что (1) действительно равносильно формуле
Ex Ev Ez Ew1 ... Ewn G1' & G31'& ... & G3n' & G4' & G5'.
где G1', G5' отличаются от G1, G5 тем, что вместо v подставлено x. Покажите, как преобразовать эту последнюю формулу в диофантово представление.
Тем самым задача устранения A<= решена до конца.