就地快速多项式模数余项
摘要:快速原地计算欧几里得多项式模除的方法,其中 A 和 B 的次数分别为 n 和 m ≤ n。如果两个次数为 k 的多项式的乘法可以在 M(k) 次操作和 O(k) 的额外空间下完成,则求余数的标准算法需要 O(n/m M(m)) 次算术操作,并且除了 A 和 B 外,至少需要 O(n - m) 的额外内存。这个额外的空间通常用于存储整个商数 Q(X),使得 A = BQ + R 且 deg R < deg B。我们避免了存储整个商数,提出了一种算法,仅使用 O(m) 的额外空间,但仍然需要 O(n/m M(m)) 次算术操作。当除数 B 是稀疏的,且非零项的数量为常数时,算术复杂度边界降低至 O(n)。当允许使用 A 或 B 的输入空间进行中间计算,但在完成求余计算后将 A 和 B 恢复到初始状态时,我们进一步提出了一种原地算法(即其额外所需空间仅为 O(1)),使用最多 O(n/m M(m) log(m)) 次算术操作。为了实现这一点,我们开发了 Toeplitz 矩阵操作的技术,输出也是输入的一部分。通过将其转化为累积多项式乘法,还获得了用于上述技术和多项式求余的原地累积版本,其中最近还开发了一种快速原地算法。
作者:Jean-Guillaume Dumas (CASC), Bruno Grenet (CASC)
论文ID:2302.13600
分类:Symbolic Computation
分类简称:cs.SC
提交时间:2023-07-26