拉格朗日反演 (Lagrange Inversion)
复合逆
对于(F(G(x))=x (Leftrightarrow G(F(x))=x)),则称(F(x))与(G(x))互为复合逆,下文中记为(hat F(x))
存在复合逆的条件为([x^0]F(x)=0,[x^1]F(x) e 0)
拉格朗日反演
对于(G(x)=hat F(x))得到关于(F(x))的拉格朗日反演表达式
(displaystyle [x^n]G(x)=frac{1}{n}[x^{-1}](frac{1}{F(x)})^n)
由于([x^0]F(x)=0)无法求逆,所以上式更通用的形式是
(displaystyle [x^n]G(x)=frac{1}{n}[x^{n-1}](frac{x}{F(x)})^n)
求解复合逆
对于给定的(F(x)),求其复合逆(G(x)=hat F(x))
带入拉格朗日反演的式子
(displaystyle G(x)=sum frac{1}{i}[x^{i-1}](frac{x}{F(x)})^i x^i)
求这个式子的核心是 分块+暴力
(i=acdot S+b,S=sqrt n),对于每个(a,b)卷积求出(displaystyle (frac{x}{F(x)})^{Sa},(frac{x}{F(x)})^b)
然后直接对于每个位置把两个式子暴力(O(n))合并即可
两部分复杂度总和为(O(nsqrt nlog n+n^2))
扩展拉格朗日反演
对于(G(x)=hat F(x)),有(displaystyle [x^n]H(G(x))=frac{1}{n}[x^{n-1}]H'(x) (frac{x}{F(x)})^n)
特殊情况例如
(displaystyle [x^n]G^k(x)=frac{k}{n}[u^{n-k}](frac{u}{F(u)})^n=frac{k}{n}[u^{-k}]F(u)^{-n})
也就是(displaystyle n[x^n]G^k(x)=k[x^{-k}]F(x)^{-n})
该式子也可以用于处理(F(G(x))=H(x))的情况
此时,有(hat H(F(G(x)))=x)
(G(x)=widehat {hat G(F(x))}=H(hat F(x)))
带入得到(displaystyle [x^n]G(x)=[x^n]H(hat F(x))=frac{1}{n}[x^{n-1}]H'(x)(frac{x}{F(x)})^n)
即(displaystyle [x^n]G(x)=frac{1}{n}[u^{n-1}]H'(u)(frac{u}{F(u)})^n)
另类拉格朗日反演
依然设(G(x)=hat F(x)),则
(displaystyle [x^n]G^k(x)=[x^{-k-1}]frac{F'(x)}{F^{n+1}(x)})
改一下是
(displaystyle [x^n]G^k(x)=[x^{n-k}] F'(x)(frac{x}{F(x)})^{n+1})
更一般的
(displaystyle [x^n]H(G(x))=[x^n]H(x)F'(x)(frac{x}{F(x)})^{n+1})
用途:
你会发现对于不同的(k),([x^n]G^k(x))对应的系数居然来自同一个函数(displaystyle frac{F'(x)}{F^{n+1}(x)})
因此用于处理求多个(k)的问题
后记:
明明自己什么都不会还要写博客。。。