Опубликован: 04.03.2008 | Доступ: свободный | Студентов: 1626 / 46 | Оценка: 4.56 / 3.67 | Длительность: 30:07:00
ISBN: 978-5-9556-0099-4
Специальности: Программист, Математик
Лекция 6:

Алгоритмы вычисления размерностных многочленов

13.11. ПРИМЕР. Вычислим многочлен Гильберта \omega_E(t) матрицы

E=\begin{pmatrix}
2&0&0\\0&2&0\end{pmatrix}.

Сначала находим a=2. Применяя (13.9), получаем

\omega_E(t)=\Delta_2\Delta^{-1}\omega_{E_1}(t)+\omega_H(t-2),
где E_1 =(2,0) и H=\begin{pmatrix} 0&0&0\\0&2&0\end{pmatrix}. Ясно, что \omega_H(t)=0 (см. теорему 12.8(6)) и \omega_{E_1}(t)=\binom {t+2}2 - \binom {t+2-2}2, следовательно, (см. 13.8)
\begin{align*}
  \omega_E(t)&{} = \Delta_2\Delta^{-1}\omega_{E_1}(t) =
  \omega_{E_1}(t) + \omega_{E_1}(t-1) \\
  &{}= \binom {t+2}2 - \binom t2 + \binom {t+1}2-\binom {t-1}2 = 4t.
\end{align*}

Заметим, что вычисление многочлена Гильберта \omega_E(t) по одному из алгоритмов A9, A10, A11 или A12 приводит к представлению этого многочлена в виде \omega_E(t) = \binom
{t+3}3-2\binom {t+3-2}3 + \binom {t+3-4}3. Однако, применяя лемму 13.10, мы получаем многочлен \omega_E(t) в виде суммы многочленов вида a_k\binom
{t+i}k (i \in\mathbb Z, k \in
\mathbb N, a_k\in\mathbb Z). Максимальная степень этих многочленов меньше степени многочленов, фигурирующих в подобном представлении для \omega_E(t), когда \omega_E(t) вычисляется по одному из алгоритмов A9, A10, A11 или A12.

Следующая лемма дает возможность оценивать степень многочлена Гильберта и вычислять его старший коэффициент, не вычисляя многочлен Гильберта полностью.

13.12. ЛЕММА. Пусть E = (e_{ij})_{\substack{1\leq i\leq n\\ 1\leq j\leq
m}} - n\!\times\! m -матрица над \mathbb N и \tau\le m - неотрицательное целое число. Тогда \deg\omega_E(t)<\tau если и только если для любого подмножества I, состоящего из m-\tau элементов множества \{1,\dots,m\}, существует строка e_I матрицы E , такая, что все элементы этой строки, стоящие в столбцах с индексами из I , равны нулю. В частности, \omega_E(t)=\const тогда и только тогда, когда E содержит диагональную подматрицу.

Доказательство леммы проводится индукцией по сумме элементов матрицы E и оставляется читателю в качестве упражнения.

Матрицу E над \mathbb N назовем нормализованной, если каждый столбец матрицы E содержит нуль. Ниже будет показано, что если E - нормализованная n\!\times\!m -матрица, то алгоритм вычисления размерностного многочлена \omega_E(t), основанный на лемме 13.10, требует меньшего числа операций, чем для произвольной n\!\times\!
m -матрицы. В то же время, для сведения задачи вычисления размерностного многочлена произвольной n\!\times\! m -матрицы над \mathbb N к аналогичной задаче для нормализованной n\!\times\! m -матрицы можно воспользоваться теоремой 12.8(9).

13.13. ЛЕММА. Пусть E = (e_{ij})_{\substack{1\leq i\leq n\\ 1\leq j\leq
m}} - n\!\times\!
m -матрица над \mathbb N и предположим, что \deg
\omega_E=0.

  1. Если e_{1j}=0 при j=2,\dots,m и e_{i1}=0 при i=2,\dots,n, то \omega_E = e_{11}\omega_{E_1}, где (n-1)\!\times\! (m-1) - матрица E_1 получена из E удалением первой строки и первого столбца.
  2. Если матрица H получена из E посредством обнуления первого столбца, то \omega_H=0.
  3. Если a=\min_{1\leq i\leq n}\{ e_{i1}| e_{i1}\neq0\} , то
    \begin{equation}
  \omega_E = a\omega_{E_1} + \omega_{E_2},
\end{equation} ( 13.10)
    где матрица E_1 получена из E удалением первого столбца и всех строк, содержащих ненулевые элементы в первом столбце, а E_2=
(e'_{ij})_{\substack{1\leq i\leq n\\1\leq j\leq m}}, где
    e'_{ij}=\begin{cases} e_{ij}, & \text{если\quad } 2\leq
j\leq
  m,\\ \max\{ e_{i1}-a, 0\} ,& \text{если\quad } j=1\end{cases} \
(i=1,\dots,n).

ДОКАЗАТЕЛЬСТВО. (1) Если e_{11}=0, то в E имеется нулевая строка, следовательно, \omega_E=0 (см. теорему 12.8(6)). Если e_{11}>0, то применяя (12.2) к E и \textbf{e}=(1,0,\dots,0)\in\mathbb N^m, получаем

\omega_E = \omega_{E\cup\textbf{e}}+\omega_H = \omega_{E_1}+
\omega_H, \text{ где }
  H =\begin{pmatrix} e_{11}-1 & 0\dots0\\ \begin{matrix} 0\
   \vdots \\ 0\end{matrix} &   E_1\end{pmatrix}.
Таким образом, индукция по e_{11} дает требуемый результат.

(2) Лемма 13.12 утверждает, что E содержит строку, в которой ненулевой может быть только первая координата. Значит H содержит нулевую строку, следовательно, \omega_H=0.

(3) Соотношение (13.10) следует из (12.2), записанного для E и (a,0,\dots,0)\in\mathbb N^m.

Пользуясь леммой 13.13, можно предложить следующий метод вычисления многочлена Гильберта \omega_E матрицы E в случае, когда \deg\omega_E=0: применить соотношение (13.10) к \omega_E (где a - минимальный ненулевой элемент в первом столбце матрицы E ), затем выписать аналогичное представление для E_2 и т. д. После конечного числа таких шагов получим представление многочлена \omega_E в виде суммы многочленов Гильберта матриц F_1,\dots,F_r (r\in\mathbb N, r\geq
1) с (m-1) столбцами и многочлена Гильберта \omega_H, где элементы матрицы H=(h_{ij})_{\substack{1\leq i\leq
n\\1\leq j\leq m}} равны

h_{ij}=\begin{cases} e_{ij},&
\text{если } 1\leq
   i\leq n,\ 2\leq j\leq m\\ 0, &\text{если } 1\leq i\leq n,\
j=1,\end{cases}
так что \omega_H=0 (см. лемму 13.13(2)). Применяя описанную процедуру к каждой из матриц F_1,\dots,F_r, мы сводим вычисление многочлена \omega_E к вычислению многочленов Гильберта для некоторых матриц с (m-2) столбцами и т.д., пока не получим матрицы, состоящие из единственного столбца. Как мы знаем, многочлен Гильберта такой матрицы совпадает с ее минимальным элементом.

В общем случае (без условия \deg \omega_E=0 ) вычисление размерностного многочлена \omega_E(t) для n\!\times\!
m -матрицы E=(e_{ij})_{\substack{1\leq i\leq n\\ 1\leq j\leq
m}} по описанной схеме (используя (13.9) вместо (13.10)) можно свести к вычислению размерностных многочленов матриц, число столбцов в которых меньше m, и размерностных многочленов некоторых n\!\times\! m -матриц с нулевым первым столбцом. Более точно: если первый столбец матрицы E содержит ненулевые элементы, то мы полагаем a=\min_{1\leq i\leq n} \{ e_{i1} | e_{i1}\neq0
\} и применяем (13.19). Затем применяем то же самое соотношение к H (см. лемму 13.10) и т. д. В результате получим разложение многочлена \omega_E(t) в сумму многочленов вида \omega_{E_i}(t-a_i), где a_i\in
\mathbb N и E_i - либо матрица, число столбцов в которой меньше m, либо n\!\times\!
m -матрица с нулевым первым столбцом. Для вычисления размерностных многочленов матриц второго типа применяем описанный метод ко второму столбцу и т. д., пока не получим представление многочлена \omega_E(t) в виде суммы размерностных многочленов матриц, число столбцов в которых меньше m, и размерностных многочленов матриц с не более чем двумя ненулевыми столбцами. Размерностный многочлен матрицы последнего типа может быть найден с помощью следующего утверждения.

Марина Подлевских
Марина Подлевских

Пожалуйста, проясните ситуацию. Был выбран курс " Компьютерная алгебра" для самостоятельного изучения. Как теперь записаться на этот курс с целью получения диплома о повышении квалификации? На данный момент он имеет статус " изучаю". Если я пройду экзаменационный тест в таком статусе без оформления документов и оплаты диплома, придется ли еще раз регистрироваться на этот курс и заново проходить тестирование?