* Данный текст распознан в автоматическом режиме, поэтому может содержать ошибки
Пакет PolynomialTools системы Maple 9.5/10
> with(PolynomialTools); > with(PolynomialTools);
421
[CoefficientList, CoefficientVector, Hurwitz, IsSelfReciprocal, MinimalPolynomial, PDEToPolynomial, PolynomialToPDE, Shorten, Shorter, Sort, Split, Splits, Translate] В пакет входят функции расщепления, сортировки и преобразования полино мов (в том числе в дифференциальные уравнения и наоборот) и др.
5.7.2. Функции для работы с полиномами
Рассмотрим несколько функций пакета PolynomialTools общего характера. Функция IsSelfReciprocal(a,x,'p') – проверяет полином a(x) на условие coeff(a,x,k) = coeff(a,x,d-k) для всех k = 0..d, где d = degree(a, x) – порядок полинома. Если это условие выполняется, то возвращается логическое значение true, иначе – false. Если порядок d четный и если задан третий аргумент p, то p будет представлять полином P порядка d/2, такой, что x^(d/2)*P(x+1/x) = a. При нечетном d полином a будет взаимооб ратным, что подразумевает деление на x+1. В этом случае если p указано, резуль тат вычисляется в форме a/(x+1). Примеры применения этой функции представлены ниже:
> with(PolynomialTools): IsSelfReciprocal(x^4+x^3+x+1, x, 'p');
true
> p;
2 + x + x2
> IsSelfReciprocal(x^5-3*x^4+x^3+x^2-3*x+1, x, 'p');
true
> p;
3 – 4x + x2
> r := evalf( 1+sqrt(2) );
r := 2.414213562 Функция MinimalPolynomial(r, n, acc) возвращает полином минималь ной степени, не превышающей n, имеющий корень r. Необязательный аргумент acc задает погрешность приближения. Функция MinimalPolynomial(r, n) использует решетчатый алгоритм и находит полином степени n (или менее) с наи меньшими целыми коэффициентами. Корень r может быть действительным или комплексным. Результат зависит от значения переменной окружения Digits. По умолчанию acc задано как 10^(Digits-2). Примеры применения данной функции:
> MinimalPolynomial( r, 2 );
–1 – 2 _X + _X2
> r := 1+sqrt(2);