Python 中具有模系数库的多项式

问题描述 投票:0回答:2

有人知道一个简单的图书馆可以做吗
具有模系数的多项式的计算?

我见过numpy,但是这个好像不支持 模系数...

谢谢, 谢.

python polynomial-math modular
2个回答
0
投票

将系数提升为整数就足够了。例如如果你想计算

(1+2x+3x^2)(3+2x+x^2)
Z/5[x]
,只需计算
(1+2x+3x^2)(3+2x+x^2)
Z[x]
并将其减少到
Z/5[x]

因此

>>> import numpy.polynomial.polynomial
>>> c1 = (1,2,3)
>>> c2 = (3,2,1)
>>> numpy.fmod(numpy.polynomial.polynomial.polymul(c1,c2),5)
>>> numpy.fmod(numpy.polynomial.polynomial.polymul(c1,c2),5)

给予

array([ 3.,  3.,  4.,  3.,  3.])

0
投票

您可以使用 Sympy:https://docs.sympy.org/latest/modules/polys/index.html,特别是https://docs.sympy.org/latest/modules/polys/domainsref.html #gf-p

from sympy import Poly, Symbol
x = Symbol('x')
p2 = Poly(x**2 + 1, modulus=2)
© www.soinside.com 2019 - 2024. All rights reserved.