Пожалуйста, проясните ситуацию. Был выбран курс " Компьютерная алгебра" для самостоятельного изучения. Как теперь записаться на этот курс с целью получения диплома о повышении квалификации? На данный момент он имеет статус " изучаю". Если я пройду экзаменационный тест в таком статусе без оформления документов и оплаты диплома, придется ли еще раз регистрироваться на этот курс и заново проходить тестирование? |
Алгоритмы вычисления размерностных многочленов
В предыдущем параграфе (см.12.7) мы отмечали, что размерностный многочлен любого множества равен размерностному многочлену, ассоциированному с множеством всех минимальных элементов множества . Значит, достаточно уметь вычислять размерностные многочлены только для конечных множеств (более того, можно предполагать, что элементы множества попарно несравнимы относительно порядка произведения).
Пусть обозначает -матрицу над , т. е. матрицу с строками и столбцами, элементы которой - неотрицательные целые числа. Рассматривая строки матрицы как элементы множества и обозначая -ю строку через , мы получим подмножество , ассоциированное с . Напомним, что размерностный многочлен -матрицы в точности совпадает с размерностным многочленом множества и называется многочленом Гильберта матрицы .
Пусть - размерностный многочлен -матрицы над . По определению для всех достаточно больших , где обозначает множество всех элементов из , которые не превосходят ни одного элемента из относительно порядка произведения, так что если и только если неравенство не выполняется ни для одного .
Как было отмечено, для того, чтобы уметь вычислять размерностный многочлен любого подмножества в , достаточно уметь вычислять его для любой -матрицы над . Один из методов вычисления основан на формуле (12,4).
Пусть обозначает -матрицу над . Воспользуемся следующими обозначениями, введенными в параграфе 12:
для любого подмножества и . По предложению 12.9 (см. 12.4) мы можем записать где обозначает множество всех -элементных подмножеств множества .Пользуясь выписанной формулой, можно предложить следующий алгоритм вычисления размерностного многочлена , ассоциированного с -матрицей .
Легко видеть, что асимптотическая сложность алгоритма A9 имеет порядок , где - число строк матрицы (по теореме 12.8 мы можем считать, что строки попарно несравнимы относительно порядка произведения на ).
Мора и Меллер модифицировали алгоритм вычисления многочлена Гильберта [ 27 ] . Их алгоритм основан на следующих соображениях. Легко видеть, что в формуле (12.5) может выполняться равенство для двух различных подмножеств и множества , таких, что и являются четным и нечетным числами соответственно (мы пользуемся обозначениями предложения 12.9). Тогда соответствующие слагаемые в формуле (12.5) сократятся. Более того, можно сгруппировать все слагаемые, соответствующие одному и тому же элементу .
Пусть - множество всех элементов , которые равны, по крайней мере, одному из элементов , где . Тогда из формулы (12.4) следует, что
( 13.1) |
( 13.2) |
Очевидно, если матрица получена присоединением строки к матрице , и - множество коэффициентов (13.2) в соотношении (13.1) для многочлена , так что
для каждого , то( 13.3) |
Таким образом, вычисление многочлена , т. е. вычисление коэффициентов , в (13.1) может быть основано на формуле (13.3), если мы начнем с пустой матрицы (число строк которой равно нулю и многочлен Гильберта которой равен ) и последовательно будем присоединять строки матрицы , вычисляя множество и коэффициенты на каждом шаге (см. алгоритм A10 ).
Поскольку на -м шаге алгоритма каждый элемент является наименьшим общим кратным некоторого подмножества множества (т. е. для некоторого ), существует не более различных возможностей для выбора каждой координаты вектора , следовательно, на -м шаге множество содержит не более элементов. Вычисление всех элементов требует не более сравнений, и можно предполагать (используя достаточно эффективный метод сортировки), что число проверок на принадлежность не превосходит для всех достаточно больших . Таким образом, асимптотическая сложность (по ) алгоритма A10 не превосходит . Поскольку , асимптотическая сложность имеет порядок .
Следующие алгоритмы вычисления размерностного многочлена произвольной -матрицы сводят эту задачу к аналогичной задаче для матрицы с числом строк меньшим, чем в . По одному из этих алгоритмов (см. ниже алгоритм A11 ) можно вычислить коэффициенты в (13.1) размерностного многочлена , что дает выражение для размерностного многочлена. Для обоснования этого алгоритма нам нужны некоторые свойства коэффициентов , которые сформулированы ниже в леммах 13.1-13.5, 13.7 и 13,9. Последняя из этих лемм устанавливает соотношения, на которых основан алгоритм вычисления .
Чтобы подчеркнуть зависимость коэффициентов от матрицы , будем обозначать эти коэффициенты и продолжим это обозначение на случай произвольного вектора , полагая
(Напомним, что - множество всех элементов , таких, что каждый равен либо , либо наименьшему общему кратному некоторых строк матрицы ; элементы множества будем называть допустимыми элементами или допустимыми векторами матрицы .)