多元多项式系数包括零

时间:2017-03-15 14:29:02

标签: sage polynomials

我想得到多元多项式的系数,包括零系数(在它们的正确位置)。我找到了关于两个变量x,y

的多项式f的类似answer

现在,我想扩展这个解决方案,用于n个变量的多元多项式[xo,x1,... xn-1] 使用以下代码定义多项式:(注意:q=next_prime(10000)

A1 = [(', '.join('x%i'%i for i in [0.. n-1]))]; ### construct a suitable multivariate ring
        V = var(A1[0])                               ### define a str variable
        x=vector(list(V)) ### convert to vector                                                                            
        P1=PolynomialRing(GF(q),V)

我该怎么做?

1 个答案:

答案 0 :(得分:3)

首先,给定多项式g,您可以P1.monomial_all_divisors(lcm(g.monomials()))获取相关单项式的列表。您可能希望对该列表进行排序 - 我无法告诉您默认情况下的顺序 - 但是您可以执行此操作:

sage: P1.<x0, x1, x2> = PolynomialRing(GF(7)) # my simple setup
sage: g = 3*x0*x1 - x1^2 + 2*x1*x2

sage: [(m, g.monomial_coefficient(m)) for m in P1.monomial_all_divisors(lcm(g.monomials()))]
[(x0, 0),
 (x1, 0),
 (x0*x1, 3),
 (x1^2, 6),
 (x0*x1^2, 0),
 (x2, 0),
 (x0*x2, 0),
 (x1*x2, 2),
 (x0*x1*x2, 0),
 (x1^2*x2, 0),
 (x0*x1^2*x2, 0)]
相关问题