小截断多元多项式行列式求算

对于域 A \mathbb A 上的 n n 阶二元多项式矩阵 A ( x , y ) \mathbf A(x, y) ,其中 x x 的次数都小于 a a y y 的次数都小于 b b 。我们想要求 det A m o d x a m o d y b \det \mathbf A \bmod x^a \bmod y^b

其中主要问题在于消元的过程中,可能出现常数项为 0 0 的情况,如果是一元多项式我们还可以用低次消去高次的方法,但多元多项式就显得要复杂了。

因此我们考虑构造占位多项式 x i y j x i y j t i + j x^iy^j \rightarrow x^iy^jt^{i+j} ,在这样的情况下我们做插值,问题就变为了 a b ab a + b a+b 次一元多项式矩阵的行列式问题,因此我们通过低次消去高次的方法就可以完成消元。朴素实现是 Θ ( n 3 ( a + b ) 2 a b ) \Theta(n^3(a+b)^2ab) ,如果使用 FFT,那么就变成了 Θ ( n 3 ( a + b ) a b log ( a + b ) ) \Theta(n^3(a+b)ab\log (a+b))

这个方法也可以用于更多元的情况,其实如果上来就让你解决子集卷积的形式,可能反而容易想到。

猜你喜欢

转载自blog.csdn.net/EI_Captain/article/details/106506930