结式的计算方法

本文最后更新于:2023年1月23日 上午

结式计算

结式,是用来判断两个多项式之间是否互素的一种方式。

对于给定的多项式 f(x,y),g(x,y)f(x,y),g(x,y) ,如果 gcd(f,g)!=1gcd(f,g)!=1,那么 f,gf,g 的结式为0。

有如下三种方式计算 $res_x(f,g) $。

1.sylvester_matrix

1
h = f.sylvester_matrix(g, x).det().univariate_polynomial().monic()

2.resultant

1
2
P.<x, y> = PolynomialRing(ZZ)
f.resultant(g, x).univariate_polynomial().change_ring(Zmod(n)).monic()

3.groebner basis

1
2
3
P = Zmod(n)["x, y"]
I = ideal([g, f])
I.groebner_basis()[0].univariate_polynomial().monic()

结式的计算方法
https://algellar.github.io/2023/01/22/Math/resultant/
作者
algellar
发布于
2023年1月22日
许可协议