[整理][持续更新]多项式知识点大全(超简洁!)

前言

多项式博大精深啊……个人整理了一个易于背诵的简化版,如果想看详细证明请另寻资源(
日后可能会再开一个代码详解,用于帮助和我一样理解不了还背不过的人(
更新大致跟随真实学习进度,如果咕咕咕了也很正常(

约定

给定多项式(F(x)=sumlimits_{k=0}^n a_kx^k),非必要时会省略为(F)
运算均在模意义下进行。

求逆

(G(x))使(FGequiv1pmod{x^n})
(FHequiv1pmod{x^{n/2}}),又(ecause FGequiv1pmod{x^{n/2}})
( herefore H-Gequiv0pmod{x^{n/2}}, H^2-2HG+G^2equiv0pmod{x^n})
(F(H^2-2HG+G^2)equiv0pmod{x^n}Rightarrow FH^2-2H+Gequiv0pmod{x^n}Rightarrow Gequiv 2H-FH^2pmod{x^n})
倍增计算即可。

求导/积分

(F'(x)=sumlimits_{k=1}^n ka_kx^{k-1},int F(x) ext{d}x=sumlimits_{k=0}^n dfrac{a_k x^{k+1}}{k+1})

对数函数

(G(x))使(Gequivln Fpmod{x^n})
两边求导得:(G'equiv(ln F)'F'=F'F^{-1}pmod{x^n})
(F)求导、求逆,求出(G)来再积回去。

指数函数

前置知识:牛顿迭代

对于已知多项式(F),求一个多项式(G),使(F(G(x))equiv0pmod{x^n})
假设我们现在求一个函数(f)的零点,那么取一个值(x_0),作切线,以切线的横截距作为新的(x_0),即(x=x_0-dfrac{f(x_0)}{f'(x_0)})
对应到多项式上是一样的:假设(F(G_0(x))equiv0pmod{x^{n/2}}),则(Gequiv G_0-dfrac{F(G_0)}{F'(G_0)}pmod{x^n})

多项式 exp

给定多项式(F),求(G(x)equiv e^{F(x)}pmod{x^n})
求对数,得(ln G-Fequiv0pmod{x^n})
把左侧看成一个函数(H=ln G-F),则对于(H(G)equiv0pmod{x^n})可以牛顿迭代:
(H(G_0)equiv0pmod{x^{n/2}}),则(Gequiv G_0-G_0(ln G_0-F)equiv G_0(1-ln G_0+F)pmod{x^n})

幂函数(弱化版)

给定多项式(F),求(Gequiv F^kpmod{x^n})
想办法把(k)搞出来,那么(ln Gequiv kln Fpmod{x^n}),所以(Gequiv e^{kln F}pmod{x^n})
(需要保证(a_0=[x^0]F(x)=1),否则需要另行处理,这个以后再提)

开方

给定多项式(F),求(G)使得(G^2equiv Fpmod{x^n})
(H(G)=G^2-F,H(G_0)equiv0pmod{x^{n/2}}),则由牛顿迭代,
(Gequiv G_0-dfrac{H(G_0)}{H'(G_0)}equivdfrac{G_0^2+F}{2G_0}pmod{x^n})

内容来自_ajhfff_的博客(https://www.cnblogs.com/juruoajh/),未经允许,不得转载。
原文地址:https://www.cnblogs.com/juruoajh/p/14493727.html