我想在整数环上快速分解多项式(原始多项式具有整数系数,所有因子都有整数系数)。具有整数系数的多项式的快速因式分解
比如我想分解4*x^6 + 20*x^5 + 29*x^4 - 14*x^3 - 71*x^2 - 48*x
为(2*x^4 + 7*x^3 + 4*x^2 - 13*x - 16)*(2*x + 3)*x
。
我应该选择哪种算法,以避免代码的方法效率低下的复杂性(谈到算术运算的总量和内存消耗)?
我打算使用C编程语言。
例如,也许有超过ring of integers modulo prime number因式分解一些好的算法?
为什么不使用matlab或类似的? – 2015-04-05 20:46:20
@NickRosencrantz,通常我使用Sage Math来达到这个目的。但是现在我正在实现显着依赖于多项式因式分解的算法,并且还将GPU(基于Cuda或Opencl)作为目标平台。所以应该是C. – petRUShka 2015-04-05 20:50:57
也许运行牛顿法,寻找因子,多项式除法,重复。 – Makoto 2015-04-05 22:24:21