
- •Введение в геометрию чисел. Алгоритмы и приложения.
- •Список обозначений.
- •Решетки
- •Дискретные множества.
- •Решётка и подрешётка.
- •Конечно порожденные решётки.
- •Базис решётки
- •Эквивалентное определение решётки.
- •Гомоморфизм решёток
- •Изоморфизм решёток
- •Базисы решётки, матрица перехода.
- •Матрица гомоморфизма.
- •Изменение матрицы гомоморфизма при изменении базиса решёток.
- •Элементарные преобразования.
- •Нормальная диагональная форма Смита.
- •Существование нормальной диагональной формы Смита.
- •Единственность нормальной диагональной формы Смита.
- •Эрмитова форма матрицы.
- •Существование эрмитовой формы.
- •Единственность эрмитовой формы.
- •Базисы решётки и подрешёток.
- •Выбор базиса решётки.
- •Дополнение до базиса решётки.
- •Линейные преобразования решёток.
- •Двойственная решётка
- •Эффективные алгоритмы, связанные с построением базиса решётки.
- •Алгоритм, его трудоёмкость. Понятие эффективного алгоритма.
- •Решение системы линейных уравнений в целых числах.
- •Полностью целочисленный вариант метода Гаусса.
- •Решение системы линейных уравнений в целых числах
- •Некоторые задачи на построение базиса решётки.
- •Построение нормальной диагональной формы Смита.
- •Построение эрмитовой формы.
- •Теоремы Блихфельда и Минковского.
- •Теорема Блихфельда
- •Теорема Минковского
- •Теоремы о близости
Построение эрмитовой формы.
Описанный ранее алгоритм (см. п.2.7.1) построения эрмитовой формы матрицы не является эффективным из-за возможного роста промежуточных величин. Вначале опишем эффективный алгоритм построения эрмитовой формы невырожденной матрицы. При построении этого алгоритма воспользуемся тем же приёмом, что и при построении нормальной диагональной формы Смита. То есть все вычисления будем проводить по модулю d, где d - определитель матрицы A.
Алгоритм 4.9. Эффективный алгоритм построения эрмитовой формы невырожденной матрицы.
Вычислим определитель d матрицы A полностью целочисленным алгоритмом Гаусса (см. Алгоритм 4 .4).
Положим i=1.
Если i=m, то конец, алгоритм работу закончил. Иначе перейдём на следующий шаг.
Найдём номер
, при котором элемент
является отличным от нуля наименьшим по абсолютной величине. Переставим строки с номерамиi и j. Перейдём на следующий шаг.
Из строки с номером j, где j=1,…,i-1,i+1,…,m, вычтем строку i, умноженную на число
. Все операции делаем по модулюd. Перейдём на следующий шаг.
Если
, приj=i+1,…,m, то увеличим i на 1 и вернёмся на шаг 3. В противном случае вернёмся на шаг 4.
Покажем
корректность работы алгоритма. Матрица
B,
построенная в результате работы
алгоритма, имеет те же самые диагональные
элементы, что и эрмитова форма F
матрицы A
(Лемма 2 .3).
Обозначим
через P
- унимодулярную матрицу, в которой
накоплены все элементарные преобразования
со строками матрицы A,
совершаемые алгоритмом. Имеет место
равенство PA=B+dC,
где C
- матрица с целочисленными элементами.
Из этого равенства выводим
.
Матрица
- целочисленная с определителем по
абсолютной величине равным 1, то есть
унимодулярная. Таким образом,B=F
( Теорема 2 .9).
Оценим
трудоёмкость приведённого алгоритма.
Обозначим через
наибольший по абсолютной величине
элемент матрицыA.
Трудоёмкость первого шага алгоритма
не превосходит
.
Третий шаг алгоритма может повториться
не болееn
раз. Количество повторов шагов 4-6 без
изменения i
не превосходит
.
Число арифметических операций при
выполнении этих шагов не превосходит
и
,
следовательно, трудоёмкость алгоритма
не превосходит
.
При построении эрмитовой формы прямоугольной или вырожденной матрицы Алгоритм 4 .9 модифицируется следующим образом.
Применим Алгоритм 4 .5 для решения системы линейных уравнений
в целых числах. В результате вычислим: r- ранг матрицы A, d - наибольший общий делитель миноров r-го порядка матрицы A, P - унимодулярная матрица, что в матрице PA последние m-r строк равны нолю.
Строим эрмитову форму матрицы PA (Алгоритм 4 .9 шаги 2-6).
Теоремы Блихфельда и Минковского.
Теорема Блихфельда
Под объемом точечных множеств, если не оговорено противное, будет пониматься лебегова мера. Объём точечного множества M обозначим через V(M).
Если
векторы
являются базисом решётки
,
то параллелепипедK,
натянутый на векторы
(
),
называется фундаментальным параллелепипедом
решётки
.
Заметим, что объём фундаментального
параллелепипеда решётки, совпадает с
её определителем.
Теорема 5.15 (Блихфельдт)
Пусть m
- натуральное
число,
- решётка с определителем
,
аM
- множество точек объёма V(M).
Если V(M)>m
,
то найдётсяm+1
различных точек
изM,
что все
разности
содержатся в
.
Доказательство.
Пусть
- базис решётки
,K
- фундаментальный параллелепипед (
).
Произвольную точкуx
пространства
V
можно представить в виде суммы x=y+z,
где y
точка решётки
,
аz
принадлежит
K.
Указанное представление однозначно.
Обозначим через M(y)
множество таких точек из K,
что
их сумма с y
принадлежит
M.
Сумма объёмов множеств M(y)
по
всем векторам решётки равна объёму
множества M,
и, значит больше чем
.
Все множестваM(y)
содержатся
в K,
поэтому, найдётся точка z,
принадлежащая m+1
множествам
вида M(y),
скажем
,
гдеi=1,…,m+1.
Точки
,
гдеi=1,…,m+1,
очевидно,
удовлетворяют условиям теоремы.
Точка множества называется граничной, если в её сколь угодно малой окрестности найдутся как точки, принадлежащие этому множеству, так и не принадлежащие ему. Множество точек назовём замкнутым, если оно содержит все граничные точки. Легко убедиться, что пересечение замкнутых множеств - замкнуто. Для замкнутых ограниченных множеств условия теоремы можно ослабить.
Теорема 5.16.
Пусть m
- натуральное
число,
- решётка с определителем
,
аM
- ограниченное замкнутое множество
точек объёма V(M).
Если V(M)
m
,
то найдётсяm+1
различных точек
изM,
что все
разности
содержатся в
.
Доказательство.
Пусть
- бесконечно малая последовательность
положительных чисел. Множество
,
где
,
имеет объём строго больше чем
,
поэтому, для каждого
найдётсяm+1
точек
из
,
разность которых принадлежит решётке
(Теорема 5 .15). Для каждогоi=1,…,m+1
последовательность
точек
является ограниченной, и, по теореме
Вейерштрасса, в ней можно выделить
сходящуюся подпоследовательность.
Выделим из последовательности
такую подпоследовательность (которую
обозначим теми же индексами), что все
пределы
существуют. МножествоM,
в
силу своей замкнутости,
содержит пределы этих последовательностей.
Для каждого n
разность
принадлежит решётке
и отлична от нуля. Множество точек
решётки дискретно (Определение 1 .2),
следовательно, начиная с некоторого
номераm,
члены последовательности
перестают меняться. Отсюда, предельным
переходом выводим, что разность
принадлежит решётке
и отлична от нуля.