如何用其他多项式推导多项式?

时间:2016-02-21 08:37:17

标签: math division symbolic-math macaulay2

这是关于除法算法的问题。考虑多项式f=-4x^4y^2z^2+y^6+3z^5和多项式G={y^6-z^5, x*z-y^2, x*y^4-z^4, x^2*y^2-z^3 *x^3-z^2}

如何计算f相对于G的计算结果,以满足线性组合f=\sum_i C_i*G_i

我知道余数为零但不是上述公式中的系数C_i,例如Macaulay2

enter image description here

这可能与关于理想here的更一般的数学问题有关。

2 个答案:

答案 0 :(得分:2)

这是一个非常晚的回应。你可能已经有了答案,但无论如何它都在这里。 " //"使用除法算法计算系数。

R=QQ[x,y,z,MonomialOrder=>Lex];
f=-4*x^2*y^2*z^2+y^6+3*z^5;
I=ideal(x*z-y^2,x^3-z^2);
G=gb(I);
f//(gens G)
o5 = {6} | 0             |
     {2} | 3x2z2-xy2z-y4 |
     {5} | 0             |
     {4} | 0             |
     {3} | -3z3          |

所以

F = -4 * X ^ 2 * Y ^ 2 * Z ^ 2 + Y ^ 6 + 3 * Z ^ 5

= 0 *(Y ^ 6-Z ^ 5)+(3 * X ^ 2 * Z ^ 2-X * Y ^ 2 * ZY ^ 4)的(X ZY ^ 2) + 0 *(X Y 1 4-Z ^ 4)0 (X ^ 2 * Y ^ 2-Z ^ 3)+( - 3 * Z ^ 3)*(X ^ 3- Z 2 2)。

另一个提示是复制和粘贴您的代码,以便其他人可以复制和粘贴它。如果您发布图像,我们必须手动输入。如果你在每行之前放置四个空格,那么它将显示为代码,就像我在这里所做的那样。

答案 1 :(得分:1)

也许仅仅做一次重复的多项式除法就足够了 像这样(粗略的伪代码..)

order G lexicographically
total_rest = 0
coefficients = {g[0]:None, g[1]:None,...}
while f > 0:
    for g in G:
        quotient, reminder = f / g     # polynomial division
        coefficients[g] += quotient
        if reminder == 0:
             return      # We are done. f was devisible by G.
        f = reminder
    total_rest += lt(f)    #  lt: leading term 
    f -= lt(f)

# Now it should hold that 
# f = coefficient[g]*g + ... + total_rest