对于域
A 上的
n 阶二元多项式矩阵
A(x,y),其中
x 的次数都小于
a,
y 的次数都小于
b。我们想要求
detAmodxamodyb。
其中主要问题在于消元的过程中,可能出现常数项为
0 的情况,如果是一元多项式我们还可以用低次消去高次的方法,但多元多项式就显得要复杂了。
因此我们考虑构造占位多项式
xiyj→xiyjti+j,在这样的情况下我们做插值,问题就变为了
ab 个
a+b 次一元多项式矩阵的行列式问题,因此我们通过低次消去高次的方法就可以完成消元。朴素实现是
Θ(n3(a+b)2ab),如果使用 FFT,那么就变成了
Θ(n3(a+b)ablog(a+b))。
这个方法也可以用于更多元的情况,其实如果上来就让你解决子集卷积的形式,可能反而容易想到。