反演

\(\text{Definition}\)

给定一个集合\(U\),一个交换群\(<G,+>\),一个环\(<R,+,\times>\)
其中\(R\)是由\(G\mapsto G\)的映射构成的集合,\(\forall f,g\in R,(f+g)(x)=f(x)+g(x),(f\times g)(x)=g(f(x))\)
\(G\)的单位元为\(0\)\(F\)的零元为\(\epsilon\),一元为\(I\)
\(n=|U|-1\),构造一个\(U\mapsto[0,n]\cap\mathbb Z\)的双射\(t\),其逆映射为\(r\)
给定\(U\mapsto G\)的映射\(f,g\),之后我们默认\(f(x),g(x)\)\(f(r(x)),g(r(x))\)
(也就是把\(f,g\)的定义域挪到\(\{0,\cdots,n\}\)上)
\(f,g\)满足\(g=h(f)\)\(g(m)=\sum\limits_{i=0}^na_{m,i}(f(i))\),其中\(a_{i,j}\in F\)
\(h^{-1}\)使得\(f=h^{-1}(g)\)\(f(m)=\sum\limits_{i=0}^nb_{m,i}(g(i))\),其中\(b_{i,j}\in F\)

\(h,h^{-1}\)写成\(n+1\)阶矩阵\(\mathbf A,\mathbf B\)\(\mathbf A_{i,j}=a_{i,j},\mathbf B_{i,j}=b_{i,j}\)
要解的就是\(\mathbf {BA}=\mathbf I\)
\(\mathbf B\)存在的充要条件是\(\operatorname{rank}(\mathbf A)=n+1\)
且解\(\mathbf B\)满足\(\sum\limits_{k=0}^na_{i,k}b_{k,j}=[i=j]\)
这里的Iverson括号为\([p]=\begin{cases}\epsilon&p\text{ is false}\\I&p\text{ is true}\end{cases}\)

注意如果满足\(R\)是一个交换环,那么\(\mathbf A,\mathbf B\)是互逆的,且\(\mathbf{A^TB^T}=\mathbf{B^TA^T}=\mathbf I\)
这样可以得到一些小小的Extension,下面就不强调了。
一般的应用中\(G\)为复数和复数意义下加法构成的交换群,\(R\)为数乘及其加法、复合构成的交换群。

Some Examples

二项式反演

根据公式:
\(\sum\limits_{k=j}^i(-1)^{k-j}{i-j\choose k-j}=[i=j]\)(或者说\(\sum\limits_{k=j}^i(-1)^{i-k}{i-j\choose k-j}=[i=j]\)
可以得到:
\(a_{i,j}={i\choose j}\Leftrightarrow b_{i,j}=(-1)^{i-j}{i\choose j}\)
\(a_{i,j}=(-1)^j{i\choose j}\Leftrightarrow b_{i,j}=(-1)^j{i\choose j}\)
写成映射形式就是:
\(f(m)=\sum\limits_{i=0}^n{m\choose i}g(i)\Leftrightarrow g(m)=\sum\limits_{i=0}^n(-1)^{m-i}{m\choose i}f(i)\)
\(f(m)=\sum\limits_{i=0}^n(-1)^i{m\choose i}g(i)\Leftrightarrow g(m)=\sum\limits_{i=0}^n(-1)^i{m\choose i}f(i)\)

Mobiüs反演

根据公式:
\(\sum\limits_{d|n}\mu(d)=[n=1]\)
可以得到:
\(a_{i,j}=[j|i]\Leftrightarrow b_{i,j}=[j|i]\mu(\frac ij)\)
写成映射形式就是:
\(f(m)=\sum\limits_{d|m}g(d)\Leftrightarrow g(m)=\sum\limits_{d|m}\mu(\frac md)f(d)\)

子集反演

根据公式:
\(\sum\limits_{T\subseteq S}(-1)^{|T|}=[S=\varnothing]\)
可以得到:
\(a_{S,T}=[T\subseteq S]\Leftrightarrow b_{S,T}=[T\subseteq S](-1)^{|S|-|T|}\)
写成映射形式就是:
\(f(S)=\sum\limits_{T\subseteq S}g(T)\Leftrightarrow g(S)=\sum\limits_{T\subseteq S}(-1)^{|S|-|T|}f(T)\)

Stirling反演

根据公式:
\(\sum\limits_{k=0}^n(-1)^{i-k}\left\{i\atop k\right\}\left[k\atop j\right]=\sum\limits_{k=0}^n(-1)^{i-k}\left[i\atop k\right]\left\{k\atop j\right\}=[i=j]\)
可以得到:
\(a_{i,j}=\left\{i\atop j\right\}\Leftrightarrow b_{i,j}=(-1)^{i-j}\left[i\atop j\right]\)
\(a_{i,j}=\left[i\atop j\right]\Leftrightarrow b_{i,j}=(-1)^{i-j}\left\{i\atop j\right\}\)
写成映射形式就是:
\(f(m)=\sum\limits_{i=0}^n\left\{m\atop i\right\}g(i)\Leftrightarrow g(m)=\sum\limits_{i=0}^n(-1)^{m-k}\left[m\atop i\right]f(i)\)
\(f(m)=\sum\limits_{i=0}^n\left[m\atop i\right]g(i)\Leftrightarrow g(m)=\sum\limits_{i=0}^n(-1)^{m-k}\left\{m\atop i\right\}f(i)\)

快速Walsh–Hadamard变换

这里我们认为下标为\(0,\cdots,n-1\)
利用Hadamard矩阵的性质:
\(\frac1n\sum\limits_{i=0}^{n-1}(-1)^{\operatorname{bit}(i\operatorname{and}x)}=[x=0]\)
可以得到:
\(a_{i,j}=(-1)^{\operatorname{bit}(i\operatorname{and}j)}\Leftrightarrow b_{i,j}=\frac1n(-1)^{\operatorname{bit}(i\operatorname{and}j)}\)
写成映射形式就是:
\(f(m)=\sum\limits_{i=0}^{n-1}(-1)^{\operatorname{bit}(i\operatorname{and}m)}g(i)\Leftrightarrow g(m)=\frac1n\sum\limits_{i=0}^{n-1}(-1)^{\operatorname{bit}(i\operatorname{and}m)}f(i)\)

快速Fourier变换

这里我们认为下标为\(0,\cdots,n-1\)
根据公式:
\(\frac1n\sum\limits_{k=0}^{n-1}\omega_n^{k(i-j)}=[i=j]\)
可以得到:
\(a_{i,j}=\omega_n^{ij}\Leftrightarrow b_{i,j}=\frac1n\omega_n^{(n-i)j}\)
写成映射形式就是:
\(f(m)=\sum\limits_{i=0}^{n-1}\omega_n^{mi}g(i)\Leftrightarrow g(m)=\frac1n\sum\limits_{i=0}^{n-1}\omega_n^{(n-m)i}f(i)\)

单位根反演

其实就是快速Fourier变换的扩展。
根据公式:
\(\frac1n\sum\limits_{i=0}^{n-1}\omega_n^{ki}=[n|k]\)
可以得到:
\(f(x)=\sum\limits_{i=0}^nx^ig(i)\Leftrightarrow\sum\limits_{i=0}^n[k|i]g(i)=\frac1k\sum\limits_{i=0}^{k-1}f(\omega_k^i)\)

Lagrange反演

有两个多项式\(F(x),G(x)\),若满足\(G(F(x))\equiv x\pmod{x^n}\),则称\(F(x),G(x)\)互为复合逆。
充要条件是\([x^0]G(x)=[x^0]F(x)=0,[x^1]F(x)[x^1]G(x)\equiv1\pmod p\)
一次多项式除外,自己手玩。

\([x^n]F(x)=\frac1n[x^{-1}]\frac1{G(x)^n}\)
\([x^n]H(F(x))=\frac1n[x^{-1}]\frac{H'(x)}{G(x)^n}\)
我们发现\([x^{-1}]\)不在我们的数组内,所以进行一些小小的变形。
\([x^n]F(x)=\frac1n[x^{n-1}](\frac x{G(x)})^n\)
\([x^n]H(F(x))=\frac1n[x^{n-1}]H'(x)(\frac x{G(x)})^n\)

Min-Max容斥(最值反演)

这其实应该是简单容斥。
与子集反演一样,根据公式:
\(\sum\limits_{T\subseteq S}(-1)^{|T|}=[S=\varnothing]\)
可以得到:
\(\max(S)=\sum\limits_{T\subseteq S}(-1)^{|T|-1}\min(T)\)
\(\min(S)=\sum\limits_{T\subseteq S}(-1)^{|T|-1}\max(T)\)
\(\operatorname{Kthmax}(S)=\sum\limits_{T\subseteq S}(-1)^{|T|-k}{|T|-1\choose k-1}\min(T)\)
\(\operatorname{Kthmin}(S)=\sum\limits_{T\subseteq S}(-1)^{|T|-k}{|T|-1\choose k-1}\max(T)\)
并且这些式子在期望意义下也成立。

posted @ 2020-01-01 11:34  Shiina_Mashiro  阅读(498)  评论(0编辑  收藏  举报