牛顿迭代相关

OI-Wiki

(具体证明等请看 OIwiki)

描述

  • 给定多项式 \(g(x),f(x)\) 满足:

\[g(f(x))\equiv 0\pmod {x^n} \]

  • 求出模 \(x^n\) 意义下的 \(f(x)\)

公式表现形式

  • 假设已经求出了模 \(x^{\lfloor \frac{n}{2}\rfloor}\) 意义下的解 \(f_0\) ,那么

\[f(x)\equiv f_0(x)-\frac{g(f_0(x))}{g'(f_0(x))}\pmod {x^n} \]

  • 这个 \(g\) 需要我们构造

多项式求逆

设常数函数 \(h(x)\) ,求它在模 \(x^n\) 意义下的逆函数 \(f(x)\)

\[g(f(x))=f^{-1}(x)-h(x) \]

\[f(x)\equiv f_0(x)-\frac{f_0^{-1}(x)-h(x)}{-f_0^{-2}(x)} \pmod {x^n} \]

\[f(x)=f_0(x)(2-h(x)f_0(x)) \]

  • 注意这里 \(h(x)\) 是个常函数,所以求导后就没了
  • 参考代码

多项式开根

设常数函数 \(h(x)\) ,求它在模意义下的开根 \(f(x)\)

\[g(f(x))\equiv f^2(x)-h(x)\pmod {x^n} \]

\[f(x)=f_0(x)-\frac{f_0^2(x)-h(x)}{f_0(x)} \]

\[f(x)=\frac{f_0(x)+h(x)+f_0^{-1}(x)}{2} \]

多项式 exp

设常数函数 \(h(x)\) ,求它在模意义下的 exp \(f(x)\)

\[g(f(x))\equiv \ln(f(x))-h(x) \]

\[f(x)=f_0(x)[1-\ln(f(x))+h(x)] \]

多项式 ln

  • 先求导,再积分

\[\frac{d \ln(f(x))}{dx}=\frac{f'(x)}{f(x)} \]

\[\int \frac{f'(x)}{f(x)}dx=\ln(f(x)) \]

  • 积分和求导都是 \(O(n)\) 的,所以总复杂度为 \(O(n\log n)\)
  • 参考代码

值得一提的是 \(\ln,\exp\)\(n^2\) 推法,具体见:多项式 lnexp 暴力解法

posted @ 2022-06-04 11:23  Kzos_017  阅读(27)  评论(0编辑  收藏  举报