Անցումբովանդակո ւթյանը

Полиномиальные вычисления

8.1 Вычисление значения полинома в точке

Для вычисления значения функции в точке необходимо выполнить команду value(f, [var1, var2,…, varn]), где $f$ — это полином, в который на позиции переменных кольца подставляем соответствующие значения $var1, var2, …, varn$.

Դեռ արդյունք չկա

8.2 Приведение полиномов к стандартному виду и разложение полиномов на множители

Для приведения полинома к стандартному виду необходимо выполнить команду expand(f), где $f$ — это полином.

Для разложения полинома на множители необходимо выполнить команду factor(f), где $f$ — это полином.

Դեռ արդյունք չկա

8.3 Суммирование полинома по переменным. Геометрические прогрессии

Для суммирования полинома по переменным необходимо выполнить команду SumOfPol(f, [x, y], [x1, x2, y1, y2]), где $f$ — полином, $x, y$ — переменные по которым ведется суммирование, $x1, x2$ — интервал суммирования по $x$, $y1, y2$ — интервал суммирования по $y$.

Если интервалы суммирования для всех переменных совпадают, то можно записать SumOfPol(f, [x, y], [x1, x2]), где $x1, x2$ — интервал суммирования по $x$ и $y$.

Դեռ արդյունք չկա

Для преобразования полинома с помощью формулы суммы геометрической прогрессии необходимо выполнить команду SearchOfProgression(f). Данная команда ищет геометрическую прогрессию с наибольшим числом членов среди мономов полинома, затем делает это еще раз для оставшихся членов и так далее. Найденные прогрессии записываются в виде $S_n=b_1(q^n-1)/(q-1)$, где $S_n$ — сумма первых $n$ членов, $b_1$ — первый член геометрической прогрессии, $q$ — знаменатель прогрессии.

Դեռ արդյունք չկա

8.4 Вычисление базисов Гребнера

Для вычисления базиса Гребнера полиномиального идеала $[p_{1}, p_{2}, …, p_{N}]$ над рациональными числами можно воспользоваться командой groebnerB(p_{1, p_{2}, …, p_{N})} или командой groebner(p_{1, p_{2}, …, p_{N})}. Команда groebnerB() вычисляет базиса Гребнера, используя алгоритм Бухбергера, а команда groebner() использует матричный вариант алгоритма, предложенный Фужером. Используется обратное лексикографическое упорядочение переменных. Порядок на переменных определяется в команде SPACE.

Դեռ արդյունք չկա

Դեռ արդյունք չկա

8.5 Вычисления в факторкольце по идеалу

Функция reduceByGB(f, [g_1, …, g_N]) редуцирует полином $p$ с помощью данного множества полиномов $g_1, …, g_N$.

Դեռ արդյունք չկա

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

Դեռ արդյունք չկա

8.6 Решение систем нелинейных алгебраических уравнений

Для решения системы нелинейных алгребраических уравнений вида:

$p_{1} = 0,$

$p_{2} = 0,$

...

$p_{N} = 0,$

use the command solveNAE(p_1, p_2, …, p_N).

Перед нахождением корней вычисляется базис Гребнера системы. Если базис содержит уравнения от одной переменной, они решаются, и корни подставляются в оставшиеся уравнения. Корни вычисляются численно. Ответом является вектор решений, в котором каждый элемент в свою очередь является вектором с элементами, соответствующими одному решению. Переменные в решении перечисляются в том же порядке, в котором они указаны при объявлении SPACE.

Դեռ արդյունք չկա

Դեռ արդյունք չկա

8.7 Другие полиномиальные функции

Для полиномов от нескольких переменных (f,g) можно вычислять НОД, НОК, результант (как определитель их матрицы Сильвестра), дискриминант:

GCD(f,g),

LCM(f,g),

resultant(f,g),

discriminant(f).

При этом главной переменной является старшая (последняя) переменная, которая определена в операторе окружения SPACE.

Դեռ արդյունք չկա

Անցումբովանդակո ւթյանը