numlib:: mroots

Модульные корни полиномов

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.

Синтаксис

numlib::mroots(P, m)

Описание

numlib::mroots (P,m) возвращает ошибку, если P не является полиномом по целым числам или m, не является натуральным числом.

Для одномерного полиномиального P по целым числам и для натурального числа m вызов функции numlib::mroots(P,m) возвращает отсортированный список всех целых чисел x ∈ {0, 1, …, m - 1} таким образом что.

Для многомерного полиномиального P numlib::mroots(P, m) возвращает лексикографически отсортированный список всех списков [x 1, …, x n] целых чисел между 0 и m - 1 таким образом что.

Для одномерного полиномиального P по целым числам и для натурального числа m вызов функции numlib::mroots(P,m) возвращает отсортированный список всех целых чисел x ∈ {0, 1, …, m - 1} таким образом что.

Для многомерного полиномиального P numlib::mroots(P, m) возвращает лексикографически отсортированный список всех списков [x 1, …, x n] целых чисел между 0 и m - 1 таким образом что.

Примеры

Пример 1

Определение полинома

P := poly(3*T^7 + 2*T^2 + T - 17, [T])

и вычисление его корней по модулю 1751:

numlib::mroots(P, 1751)

Полиномиальный P не имеет корней по модулю 1994:

numlib::mroots(P, 1994)

Пример 2

Мы используем numlib::mroots, чтобы найти все точки на конкретной эллиптической кривой по модулю 13:

numlib::mroots(poly(y^2 - x^3 - x - 2, [x, y]), 13)

Параметры

P

Полином по целым числам

m

Натуральное число

Возвращаемые значения

Если P является одномерным, numlib::mroots возвращает список неотрицательных целых чисел. Если P имеет больше чем одну переменную, numlib::mroots возвращает список списков неотрицательных целых чисел.

Алгоритмы

numlib::mroots использует factor.

Смотрите также

Функции MuPAD