评估多项式符号极限的最快方法

计算科学 计算几何 多项式
2021-12-01 15:07:17

考虑一个多元多项式f(x)=f(x1,,xn)最大程度d. 遵循Seidel 1998中描述的线性符号扰动方案,我想评估极限

limϵ0+sign f(x+ϵy)

对于一些x,yRn. 该限制由多项式的最低次非零系数给出

g(ϵ)=f(x+ϵy)

如果多项式给出为大小的加/乘表达式 DAGm,我们可以评估fi(x+ty)对于每个节点fi表达式 DAG,最多取O(m(d+1)2)使用朴素多项式乘法(实际上可能更少,因为大多数节点的度数较低)。

或者(如论文中所述),我们可以评估g(ϵ)为了ϵ=0,,n1并使用多项式插值来恢复系数。这需要时间O(m(d+1)+h(d))在哪里h(d)是多项式插值所需的时间。

问题:有更快的方法吗?特别是O(m(d+1))可能的?

1个回答

当我写这个问题时,我意识到事实上这两个给定的方案都实现了O(m(d+1)). 这是因为我们总是有md. 在表达式树方案中,树中较高节点的二次多项式乘法的成本可以分摊到较低的节点。在多项式插值方案中,最坏的情况是h(d)=O(d2)通过预先计算必要的矩阵,以及O(m(d+1)+d2)=O(m(d+1))自从md. 多项式插值方案也很好地模块化,因为它即使在f(x)以黑盒子的形式给出。