Научная статья на тему 'Nullstellensatz для моноида натуральных чисел'

Nullstellensatz для моноида натуральных чисел Текст научной статьи по специальности «Математика»

CC BY
109
46
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
УНИВЕРСАЛЬНАЯ АЛГЕБРАИЧЕСКАЯ ГЕОМЕТРИЯ / НАТУРАЛЬНЫЕ ЧИСЛА / РАДИКАЛ / UNIVERSAL ALGEBRAIC GEOMETRY / NATURAL NUMBERS / RADICAL

Аннотация научной статьи по математике, автор научной работы — Шевляков А. Н.

Приведены два алгоритма, работающих с системами уравнений над моноидом натуральных чисел N. Первый алгоритм находит разложение произвольного алгебраического множества над N в объединение неприводимых компонент. Второй алгоритм вычисляет радикал системы S над N.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Nullstellensatz for monoid of natural numbers

We present two algorithms which work with equations over natural numbers. The first one finds the decomposition of a given algebraic set into the union of its irreducible components. The second algorithm calculates the radical of a system of equations over natural numbers.

Текст научной работы на тему «Nullstellensatz для моноида натуральных чисел»

МАТЕМАТИКА

Вестн. Ом. ун-та. 2011. № 2. С. 49-55.

УДК 512.53 А.Н. Шевляков

Омский филиал Института математики им. С.Л. Соболева СО РАН

ШЬЬБТЕЬЬЕ^ЛТг

ДЛЯ МОНОИДА НАТУРАЛЬНЫХ ЧИСЕЛ

Приведены два алгоритма, работающих с системами уравнений над моноидом натуральных чисел N. Первый алгоритм находит разложение произвольного алгебраического множества над N в объединение неприводимых компонент. Второй алгоритм вычисляет радикал системы £ над N.

Ключевые слова: универсальная алгебраическая геометрия, натуральные числа, радикал.

Введение

Алгебраическая геометрия над полем является одной из классических математических дисциплин. В ней изучаются решения систем алгебраических (полиномиальных) уравнений над полем к. Подмножества пространства к", являющиеся решениями систем уравнений, называются алгебраическими. Радикал алгебраического множества У, определяемый как совокупность уравнений, удовлетворяющих всем точкам У, полностью определяет множество У. Следовательно, классификация алгебраических множеств (основная задача алгебраической геометрии) может быть заменена на эквивалентную ей задачу классификации радикалов.

В связи с этим особую важность приобретает задача построения радикала алгебраического множества, заданного системой уравнений 3. Для алгебраически замкнутого поля к данная задача решается с помощью теоремы Гильберта о нулях (Nullstellensatz).

Теорема. Пусть к-алгебраически замкнутое поле и £ = {/і (X) = 0| (X) є к[X]} -конечная система алгебраических ура.в-

нений с решением У. Уравнение /(X) = 0 принадлежит радикалу множества У тогда и только тогда, когда существует натуральное число т и многочлены gi (X) є к[X] такие, что

Г (X) = Х gi (X)/, (X).

Понятие уравнения и решения можно определить не только для поля, а для произвольной алгебраической системы в языке без предикатов (см.: [1; 2]). В данной работе мы рассматриваем уравнения над аддитивным моноидом натуральных чисел N, которые уже изучались нами в [3-5]. Для систем уравнений над N мы решаем две алгоритмические проблемы. Во-первых, мы приводим алгоритм разложения алгебраического множества над N в конечное объединение неприводимых алгебраических множеств. Второй алгоритм решает проблему вычисления радикала системы £ над моноидом натуральных чисел, а именно: по заданной системе уравнений £ над N мы строим систе-

©А.Н. Шевляков, 2011

му уравнений £ такую, что радикал системы уравнений £ совпадает с конгруэнтным замыканием системы £.

Алгоритмические проблемы для моноида N изучались в целом ряде работ. К настоящему времени известно несколько алгоритмов, вычисляющих полное множество решений систем линейных уравнений над N [6-10]. В статье [11] предложен критерий совместности систем линейных уравнений над N.

Зная полное множество системы £ над N нетрудно получить радикал системы £ как множества уравнений, удовлетворяющих всем точкам из решения. Однако такой алгоритм является достаточно сложным, поскольку связан с переходом от уравнений к их решениям, а затем от решений обратно к удовлетворяющим им уравнениям. В настоящей работе предложен алгоритм вычисления радикала над N, оперирующий только уравнениями системы £ и являющийся более простой процедурой по сравнению с алгоритмами, использующими полное множество решений над N.

Алгебраическая геометрия

над моноидом натуральных чисел

Пусть N - множество натуральных чисел с определенной на них операцией сложения. Мы будем рассматривать N как алгебраическую систему языка

Ь = {+,0,1,...} с операцией + и константами 0,1... Уравнением над N будем называть атомарную формулы языка Ь. Непосредственно проверяется, что любая атомарная формула над N эквивалентна выражению вида

АХ1 +в2 Х2 +---+ДА + а =

= Ї1 Х1 +Ї2 Х2 +—+Г"Х" + а\ (1)

где а, а' є N , и выражения віхі (уіхі) служат для сокращения суммы переменной х, взятой Д. (Уі) раз. Так как моноид N является моноидом с сокращениями, то можно считать, что для коэффициентов формулы (1) выполнено соотношение: если Д. Ф 0, то уі = 0.

В своей работе уравнения над N мы будем записывать в виде

а1х1 + а2 х2 +... + апхп = а (2)

с целыми коэффициентами а{, а. Выражение (2) является формальной записью уравнения (1), в котором все переменные

из правой части перенесены в левую с противоположными знаками.

Произвольную совокупность уравнений над N будем называть системой уравнений (системой) над N. Линейную комбинацию а х1 + а2 х2 +... + апхп для краткости будем называть термом и обозначать с помощью греческих букв Решение системы уравнений £ определяется естественным образом и обозначается через (£).

Множество У с Nn называется алгебраическим, если существует система уравнений £ с решением У. Непустое алгебраическое множество называется неприводимым, если его нельзя представить в виде конечного объединения алгебраических множеств. Пусть алгебраическое множество У представимо в виде объединения неприводимых множеств

У1,У2,...,Ут , тогда множества У; мы будем называть неприводимыми компонентами множества У.

Радикал алгебраического множества У (обозначается Кайьг (У)) определяется как множество всех уравнений (следствий), удовлетворяющих всем точкам множества У. Для системы уравнений £ понятие радикала определяется как Яаёьг (£) =

= Кай^, V (£)).

В [1] было сформулировано понятие конгруэнтного замыкания системы уравнений. Пользуясь результатами [5], мы дадим эквивалентное ему (над Л) определение.

Множество всех линейных комбинаций уравнений системы £, взятых с рациональными коэффициентами, будем называть конгруэнтным замыканием системы 8 и обозначать через (£).

Замечание. Не любая линейная комбинация уравнений над N, взятых с рациональными коэффициентами, имеет вид (2). Поэтому под линейной ком.бина-цией уравнений системы Б, взятых с рациональными коэффициентами, мы будем понимать уравнение вида (2), полученное приведением всех коэффициентов к общему знаменателю.

Конгруэнтное замыкание содержит лишь элементарные следствия из системы уравнений Б, поэтому справедливо включение

£ с RadN (£). (3)

Из теорем линейной алгебры следует, что если мы будем рассматривать системы уравнений вида (2) над полем рациональных чисел Q, то будет справедливо равенство

(£) = Яай<2 (£). (4)

Переменную х системы 3 будем называть фиксированной, если радикалу системы 3 принадлежит уравнение вида х = а, а є N.

Пусть 3 - некоторое множество уравнений. Уравнение вида т(X) = а будем

называть вырожденным в £, если в нем все переменные нефиксированные в £ и все коэффициенты перед переменными неотрицательны. Например, вырожденными являются уравнения х + у = 1, х + у + 2 = 0.

Вырожденные уравнения играют важную роль в описании неприводимых множеств над N, а именно справедлива следующая теорема.

Теорема 1 [4]. Совместная над N система уравнений £ определяет неприводимое алгебраическое множество и (£} = КайЬ! (£) тогда и только тогда, когда радикал Яаёы(£) не содержит вырожденных уравнений.

Процедура нахождения

неприводимых компонент

алгебраического множества над N

Вход: конечная система уравнений £ над N.

Выход: множество систем

Ь = {£1, £2,..., £к } таких, что Уы (£) =

= Уы(£1) и Уы(£2) и... и Уы(£к) и множества Ум(£і) неприводимы. В случае несовместности системы £ над N множество Ь пусто.

Шаг 0. Полагаем Ь = {£}.

Шаг 1. Находим вырожденное уравнение т(X) = а , принадлежащее радикалам всех систем уравнений из Ь. Если такого вырожденного уравнения нет, то переходим на шаг 3. Если уравнение т(X) = а несовместно над N, то полагаем Ь = 0, и процедура заканчивает свою работу.

Шаг 2. Пусть Xт = {хт, х^,..., х",} -

множество переменных, входящих в вырожденное уравнение т(X) = а с положительными коэффициентами, и

Р1 = (Р1и Pl2,., Р" X

Р2 = (Р 21,Р 22, •••, Р2пт ),

Р = (Рі^ Рі2, * * *, Ріпт )

- все решения уравнения т(X) = а в натуральных числах. Тогда каждую систему £ 'є Ь заменяем набором систем уравнений £1, £2,..., £„т, где

£і = £ 'и {х = Р^ х2 = Рг 2,..., х1 = Рі1}.

Возвращаемся на шаг 1.

Шаг 3. Из множества систем уравнений Ь исключаем все несовместные над целыми числами Z системні уравнений. Процедура заканчивает свою работу, и в качестве ответа возвращается полученное множество Ь.

Рассмотрим работу процедуры на следующем примере. Пусть дана система уравнений £ = {х + у + г = 1, х + 2и = 2у, и + 2у = 2 у + г}.

Радикалу £, очевидно, принадлежит вырожденное уравнение х + у + г = 1, имеющее три решения (1,0,0), (0,1,0),

(0,0,1). Тогда во множество Ь вместо системы 3 добавляются следующие три системы (для простоты вместо переменных, входящих в вырожденное уравнение, мы будем сразу подставлять их новые значения):

' х = 1, у = 0, г = 0,

1 + 2и = 2у, и + 2 w = 0,

£1 =

£2 =

х = 0, у = 1, г = 0, 2и = 2у, и + 2 w = 2,

£3 =

х = 0, у = 0, г = 1, 2и = 2у, и + 2 w = 1.

Третье уравнение в системах £1; £2, £3 вырожденное, следовательно, вместо

£1, £3 мы добавляем системы

£11 =

£31 =

х = 0, у = 0, г = 1, 2 = 2у, и = 1, w = 0.

х = 1, у = 0, г = 0,

1 = 2у, и = 0, w = 0.

Система £2 дает две новых системы уравнений

' х = 0, у = 1, г = 0, Г х = 0, у = 1, г = 0,

4 = 2у, £22 = і 0 = 2у,

и = 2, w = 0, и = 0, w = 1.

£21 =

Система £11 несовместна, оставшиеся

системы уравнений определяют одноточечные множества. Таким образом, решение системы Б равно объединению решений систем £31, £21, £22 и представляет собой множество, состоящее из трех точек, {х = у = w = 0, г = и = V = 1} и и{х = г = и = w = 0, V = 2, у = 1} и и{х = г = и = V = 0, у = w = 1}.

Перейдем к теоретическому обоснованию изложенной выше процедуры. Для этого необходимо доказать:

1) правильность работы, т. е. соответствие выходных данных процедуры заявленной спецификации;

2) конечность времени работы;

3) рекурсивность, т. е. реализуемость процедуры в виде программы на вычислительной машине.

Правильность работы процедуры следует из результатов работы [4], где были доказаны следующие утверждения.

Лемма 2 [4]. Решение исходной системы Б равно объединению решений систем уравнений из множества Ь

VN (£) = и ^ (£). (5)

£,еЬ

Кроме того, все системыы уравнений из Ь определяют неприводимые множества.

Лемма 3 [5]. Пусть система АХ = Ь совместна над целыми числами, но несовместна над N. Тогда существует вырожденное уравнение т( X) = а, принадлежащее конгруэнтному замыканию системы1 АХ = Ь и несовместное над N .

Следовательно, для несовместной над N системе Б на некоторой итерации процедуры на шаге 1 будет выбрано несовместное уравнение т(X) = а, что влечет Ь = 0. Это означает, что при выполнении шага 3 каждую систему из множества Ь достаточно проверить на совместность над целыми числами, поскольку несовместность системы над N распознается на шаге 1.

Конечность работы процедуры следует из строгого возрастания на каждой итерации числа фиксированных переменных.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Докажем рекурсивность процедуры построения неприводимых компонент для алгебраического множества, заданного системой уравнений £. Очевидно, что для этого достаточно показать рекурсив-

ность всех шагов процедуры. Рассмотрим шаги процедуры в следующей последовательности: 2, 3, 1.

Так как все координаты всех решений вырожденного уравнения т(X) = а ограничены, то они могут быть найдены с помощью перебора векторов (х/,х-Т,...х"") с

натуральными координатами х. < а . Следовательно, шаг 2 рекурсивен.

Шаг 3 связан с проверкой совместности системы уравнений £. є Ь, определяющей неприводимое алгебраическое множество над Z. Запишем систему £. в

виде AX = Ь, где вектор Ь и матрица А состоят из целых чисел.

Проверка совместности системы линейных уравнений над целыми числами алгоритмически разрешима, что следует из следующей известной теоремы целочисленного программирования.

Теорема 4 [12]. Пусть м,атрица А состоит из т строк и п столбцов (п > т). Введем следующие обозначения:

М0 = {определители всех м,атриц размера т х т, составленных из столбцов м,атрицы А},

М1 = {определители всех м.атриц размера т х т, составленных из столбцов расширенной матрицы (А | Ь ) }.

Пусть строки м,атрицы А линейно независимыы над полем рациональных чисел. Систем.а Ах = Ь имеет целочисленное решение тогда и только тогда, когда наибольший общий делитель множества М0 равен наибольшему общему делителю множества М1.

Таким образом, мы доказали, что шаг 3 в процедуре рекурсивен.

Рассмотрим шаг 1 процедуры. Ввиду формулы (5) мы имеем

(£) = єь (£і X (б)

поэтому уравнение т(X) = а принадлежит

радикалу системы £.

Следующая лемма позволяет искать вырожденное уравнение т(X) = а в конгруэнтном замыкании системы £.

Лемма 5 [4]. Пусть вырож:денное уравнение т'(X) = а' принадлежит радикалу системы £. Тогда конгруэнтное за-

мыкание ^£^ содержит вырожденное

уравнение г(X) = а.

Докажем рекурсивность поиска вырожденного уравнения т(X) = а в конгруэнтном замыкании ^£^. Пусть система £ задана в виде линейных уравнений AX = Ь с целыми коэффициентами. Обозначим через £0 однородную систему

АX = 0, соответствующую системе £.

Задача поиска вырожденного уравнения т(X) = а є (£) сводится к поиску

рациональных чисел а., 1 < і < т таких,

что линейная комбинация уравнений системы £, взятых с коэффициентами аі равна т( X) = а.

Заметим, что однородное уравнение т( X) = 0 принадлежит конгруэнтному замыканию системы ^£0^ тогда и только тогда, когда т(X) = а є(£). Следовательно, достаточно найти такие рациональные числа У = (у1,у2,..., ут), что линейная комбинация уравнений системы £0, взятых с коэффициентами уі , является уравнением с неотрицательными коэффициентами. Таким образом, задача сводится к поиску рационального ненулевого решения следующей системы однородных неравенств

АУ > 0. (7)

Если ранг матрицы А меньше чем число неизвестных т, то система уравнений АУ = 0 определяет ненулевое векторное пространство. Очевидно, что поиск ненулевой точки в таком пространстве алгоритмически разрешим.

Рассмотрим случай, когда ранг матрицы А‘ совпадает с числом неизвестных т.

Теорема 6 [13]. Пусть ранг г матрицы А‘ системы (7) больше единицы и совпадает с числом неизвестных в ней. Если система имеет ненулевые решения, то в

матрице А существует такой отличный от нуля минор А г-1-го порядка, что среди определителей, полученных окаймлением А с помощью хотя бы одного не входящего в него столбца матрицы А, не встречаются определители противоположных знаков.

Если в м.атрице А‘ системы (7) существует хотя бы один отличный от нуля

минор А (необязательно порядка г-1), удовлетворяющий этому условию, то систем,а (7) имеет ненулевые решения.

Данная теорема позволяет эффективно найти ненулевое решение системы (7):

1. Последовательно перебираем все

миноры матрицы А‘.

2. Для каждого минора

А' =

а

Ші"і

а

а

а

* 0

т1п1 " ■ т1п1

порядка I ищем столбец матрицы А‘ такой, что все окаймляющие миноры

а

а

т,щ

а

а

а

mlnl

а

а

т

либо

mln

а

(8)

і"

неположи-

либо неотрицательны, тельны при j = 1,2,..., m.

З. Пусть все миноры А j (А) неотрицательны (аналогично рассматривается случай А j (А) < 0). Также будем считать, что

минор А образован первыми l строками и

столбцами матрицы A' и n = l +1. Пусть

Y = (Уі,У2,...,ym), где координата у при

1 < i < l +1 равна определителю, составленному из первых l строк и столбцов с номерами 1,2,...,i -1,i +1,...,l +1 и взятому

со знаком (-1)l+‘+1; при i > l +1 полагаем

Уі = °.

Покажем, что найденный на третьем шаге вектор неизвестных Y будет ненулевым решением системы однородных неравенств.

Поскольку у1 = А * 0, то вектор Y содержит ненулевые координаты. Пусть а у + а2 зу2 +• • • + am}ym > 0 - произвольное

неравенство системы (7). Подставляя вместо переменных выбранные выше значения, получаем разложение минора А j (А)

по последней строке. Поскольку А j (А) > 0 ,

то числа у, удовлетворяют рассматриваемому неравенству. Рекурсивность шага l процедуры доказана.

Процедура вычисления радикала

Вход: конечная система уравнений S над N.

Вьход: конечная система уравнений S со свойством (S) = RadN (S).

Шаг 1. Для системы S запустить процедуру вычисления неприводимых компонент множества VN (S). Получить множество систем уравнений L.

Шаг 2. Если множество L пусто, то полагаем S = {0 = 1}, и процедура заканчивает свою работу.

Шаг З. Пусть множество L состоит из систем S1,S2,...,Sm , и x1,x2,...,Xj - фиксированные переменные систем уравнений из множества L. Обозначим через р. є N1 (1 < i < m ) точки с l координатами, составленные из значений фиксированных переменных в системе S,. Множество точек Pi определяет линейное многообразие W в пространстве Ql (Q - множество рациональных чисел). Пусть S - система уравнений от переменных x1, x2,..., X], задающая многообразие W в пространстве Ql.

Полагаем, S = S u S. Процедура заканчивает свою работу.

Для описанной выше процедуры необходимо доказать:

1) правильность работы, т. е. результат S всегда обладает свойством

S = RadN (S);

2) рекурсивность, т. е. реализуемость процедуры в виде программы на вычислительной машине.

Докажем сначала рекурсивность. Рекурсивность шагов 1, 2 была доказана выше. Построение системы уравнений S на шаге З является стандартным алгоритмом линейной алгебры задания линейного пространства, порожденного фиксированными точками Pi .

Докажем правильность работы процедуры.

Пусть т(X) = а - произвольное уравнение (необязательно вырожденное), принадлежащее радикалу системы S. Докажем, что т(X) = а є ^S^j.

Из теоремы l следует, что конгруэнтное замыкание каждой системы уравне-

ний St е L совпадает с радикалом RadN (S). По формуле (6) получаем равенство

RadN (S) = nse^S), (9)

и поэтому т(X) = а е nS eL (S^.

Разобьем множество переменных X на два множества: X0 = {х1,x2,...,хг} - множество фиксированных переменных и Xl - все остальные переменные систем из множества L.

Пусть уравнение т(X) = а явно зависит от переменных множества X1, запишем его в виде

Т0( X0) + T1(X1) = а е^,еЛ^} • (10)

Поскольку системы множества L отличаются от S лишь добавлением равенств вида х = b,b е N для всех х е X0, то существует уравнение

n(X0) + Ti(Xi) = a'e(S), (11) содержащее терм т1 (X1) . Из соотношений

(10) и (11) следует, что уравнение

To(Xo)-n(Xo) = а - а’, (12)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

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

S. Если мы докажем, что уравнение (12) принадлежит конгруэнтному замыканию системы S, то уравнение (10), являющиеся суммой (11) и (12), также будет принадлежать множеству S.

Действительно, уравнение (12) удовлетворяет всем точкам р , 1 < i < m и поэтому принадлежит радикалу линейного многообразия W, определенного системой S, в пространстве Q. Поскольку радикал любой системы линейных уравнений над полем Q совпадает с конгруэнтным замыканием, то получаем

То(Xо) - п(Xо) = а - а' е (S).

ЛИТЕРАТУРА

[1] Daniyarova E., Miasnikov A, Remeslennikov V. Unification theorems in algebraic geometry // Algebra and Discrete Math. 2008. № 1. Р. 80-112, arXiv:0808.2522v1 [math.AG].

[2] Daniyarova E., Miasnikov A., Remeslennikov V. Algebraic geometry over algebraic structures II: Foundations. 2010, arXiv:1002.3562v1 [math.AG].

[3] Morar P., Shevlyakov A. Algebraic Geometry over the Additive Monoid of Natural Numbers: Systems of Coefficient Free Equations // Combinatorial and

Geometric Group Theory: Dortmund and Carleton Conferences, 2010. Р. 261-278.

[4] Шевляков А. Н. Алгебраическая геометрия над моноидом натуральных чисел. Неприводимые алгебраические множества // Труды Института математики и механики УрО РАН. 2010. 16(4). 2010. С. 258-269.

[5] Shevlyakov A. Algebraic geometry over the additive monoid of natural numbers: The classifcation of coordinate monoids // Groups, Complexity and Cryptology. 2010. 2(1). Р. 91-111.

[6] Contenjean E., Devie H. Solving systems of linear Diophantine equations // Proc. 3rd Workshop on Unification, University of Kaiserslautern, Lam-brecht, 1989.

[7] Domenjoud E. Outils pour la deduction auto-matique dans les theories associatives-commutatives, Ph. D. Thesis, Universite de Nancy I, 1991.

[8] Clausen M., Fortenbacher A. Efficient solution of linear Diophantine equations // J. Symbolic Computation, 8, Nos. 1, 2. 1989. Р. 201-216.

[9] Clausen M., Fortenbacher A. Efficient solution of linear Diophantine equations // J. Symbolic Computation, 8, Nos. 1, 2. 1989. Р. 201-216.

[10] Filgueiras M., Tomas A. P. A fast method for finding the basis of nonnegative solutions to a linear Diophantine equation // J. Symbolic Computation, 19. 1995. № 2. Р. 507-526.

[11] Kryvyi S. L. Compatibility of systems of linear equations over the set of natural numbers // Cybernetics and Systems Analysis. V. 38. 2002. № 1. Р. 17-28.

[12] Ковалёв М. М. Целочисленное программирование. М. : УРСС, 2003. 192 с.

[13] Черников С. Н. Однородные линейные неравенства // Успехи мат. наук. Т. XII. 1957. Вып. 2(74). С. 187-192.

i Надоели баннеры? Вы всегда можете отключить рекламу.