多项式牛顿迭代


多项式 Taylor 展开

泰勒公式是高等数学中的一个非常重要的内容,它将一些复杂的函数逼近近似地表示为简单的多项式函数,泰勒公式这种化繁为简的功能,使得它成为分析和研究许多数学问题的有力工具 [3] 。

--- baidu baike

多项式复合函数

G(f), f 是多项式。

多项式复合函数的导数是对 f 求导。

即, f = a0 + a1x + ..., A(x) = b0 + b1x + ..., G(f) = f2 + A(x), 那么 G(f) 对 f 求导得到 G'(f) = 2f, A(x)

不会随着 f 改变而改变, 所以算是常数项, 别忘了现在是在对 f 求导。

多项式泰勒展开

对于多项式复合函数 G(f), 若已知其在 f0 处的取值 G(f0), 那么其在任意 f 处的取值 G(f) 则可如此表示:

\[\begin{align} G(f) &= \sum_{n = 0}^{\infty}\frac{G^{(n)}(f_0)}{n!}(f - f_0)^n\\ &= G(f_0) + \frac{G'(f_0)}{1!}(f-f_0) + \frac{G''(f_0)}{2!}(f-f_0)+\cdots \end{align} \]

当然, 这里的 n 阶导数是对 f 求导的。


Newton's Method

多项式方程的解

给定多项式复合函数 G(x), 求多项式 F(x) mod xn 使得 G(F(x)) ≡ 0 ( mod xn)

考虑倍增法, 已知 \(G(f'(x)) \equiv 0 \mod x^{n/2}\), 考虑拓展到 \(G(f(x))\equiv 0 \mod x^n\), 泰勒展开一下有:

\[\begin{align} G(f(x)) &= G(f_0(x))\\ &+\frac{G'(f_0(x))}{1!}(f(x)-f_0(x))\\ &+\frac{G''(f_0(x))}{2!}(f(x)-f_0(x))^2\\ &+\cdots \end{align} \]

然而由于

\[f(x) - f_0(x) \equiv 0 \mod x^{n/2}\\ (f(x) - f_0(x))^2 \equiv 0 \mod x^n \]

那么就可以很 nice 地得出:

\[\begin{align} G(f(x)) &\equiv G(f_0(x)) + G'(f_0(x))(f(x) - f_0(x)) &\mod x^n\\ 0 &\equiv G(f_0(x)) + G'(f_0(x))(f(x) - f_0(x)) &\mod x^n\\ f(x)G'(f_0(x)) &\equiv f_0(x)G'(f_0(x)) - G(f_0(x)) &\mod x^n\\ f(x) &\equiv f_0(x) - \frac{G(f_0(x))}{G'(f_0(x))} &\mod x^n \end{align} \]

例子:多项式求逆

给定 A(x), 要求 B(x) 满足 A(x)B(x) ≡ 1 mod xn

\(A(x)B(x)\equiv 1\)\(\dfrac1{B(x)} - A(x) \equiv 0\), 是个多项式方程, \(G(f) = \dfrac 1f - A(x)\)\(G'(f) = -f^{-2} = -\dfrac 1{f^2}\)

代入牛顿迭代式:

\[\begin{align} f(x) &\equiv f_0(x) - \dfrac{\dfrac1{f_0(x)} - A(x)}{-\dfrac 1{f_0(x)^2}}\\ &\equiv f_0(x) + f_0(x) - f_0(x)^2A(x)\\ &\equiv f_0(x)(2 - f_0(x)A(x)) \end{align} \]

例子:多项式 exp

给定 A(x), 要求 B(x) 满足 B(x) ≡ eA(x) mod xn

首先两边取 ln, \(\ln B(x) - A(x) \equiv 0\), 是个多项式方程,\(G(f) = \ln f - A(x)\)\(G'(f) = \dfrac 1{f}\)

代入牛顿迭代式:

\[\begin{align} f(x) &\equiv f_0(x) + \dfrac{\ln f_0(x) - A(x)}{\dfrac1{f_0(x)}}\\ &\equiv f_0(x)(1 + \ln f_0(x) - A(x)) \end{align} \]

posted @ 2021-01-28 15:44  xwmwr  阅读(352)  评论(0编辑  收藏  举报