二项式反演&MIN-MAX容斥目害证
二项式反演
由于用了二项式反演,但是一直没证过,心里一直不踏实于是决定证一下
形式零
首先有多步容斥一开始的柿子:
\[|A_1\bigcup A_2 \bigcup A_3 ..... \bigcup A_n|=\sum\limits_{i=1}^n|A_i|-\sum\limits_{1<=i<j<=n}|A_i\bigcap A_j|+...+(-1)^{n-1}|A_1\bigcap A_2\bigcap A_3....\bigcap A_n|
\]
然后用\(A^c\)表示\(A\)的补集,则:
\[|A_1^c\bigcap A_2^c \bigcap A_3^c ..... \bigcap A_n^c|=|S|-\sum\limits_{i=1}^n|A_i|+\sum\limits_{1<=i<j<=n}|A_i\bigcap A_j|+...+(-1)^n|A_1\bigcap A_2\bigcap A_3....\bigcap A_n|
\]
然后原集变补集补集变原集:
\[|A_1\bigcap A_2 \bigcap A_3 ..... \bigcap A_n|=|S|-\sum\limits_{i=1}^n|A_i^c|+\sum\limits_{1<=i<j<=n}|A_i^c\bigcap A_j^c|+...+(-1)^n|A_1^c\bigcap A_2^c\bigcap A_3^c....\bigcap A_n^c|
\]
设\(f_i\)表示\(i\)个补集的交集大小,\(g_i\)表示\(i\)个原集的交集大小,根据上面则有:
\[f_n=\sum\limits_{i=1}^n(-1)^i\binom{n}{i}g_i
\]
\[g_n=\sum\limits_{i=1}^n(-1)^i\binom{n}{i}f_i
\]
这两个柿子相互等价,于是就有了形式零:
\[f_n=\sum\limits_{i=1}^n(-1)^i\binom{n}{i}g_i\Leftrightarrow g(n)=\sum\limits_{i=1}^n(-1)^i\binom{n}{i}f_i
\]
形式一
\[f_n=\sum\limits_{i=1}^{n}\binom{n}{i}g_i\Leftrightarrow g(n)=\sum\limits_{i=1}^{n}(-1)^{n-i}\binom{n}{i}f_i
\]
如果只证明上面的柿子,可以将形式零的\((-1)^ig_i\)设为\(h_i\)然后带入上式就能直接出。
再证明就把左边的柿子带到右边去,\(f_n\):
\[=\sum\limits_{i=1}^{n}\binom{n}{i}\sum\limits_{j=1}^{i}(-1)^{i-j}\binom{i}{j}f_j
\]
\[=\sum\limits_{i=1}^{n}\sum\limits_{j=1}^i(-1)^{i-j}\binom{n}{i}\binom{i}{j}f_j
\]
然后有\(\binom{n}{i}\binom{i}{j}=\binom{n}{j}\binom{n-j}{i-j}\)
\[=\sum\limits_{j=1}^{n}\binom{n}{j}f_j\sum\limits_{i=j}^n(-1)^{i-j}\binom{n-j}{i-j}(-1)^{i-j}
\]
\[=\sum\limits_{j=1}^{n}\binom{n}{j}f_j\sum\limits_{t=0}^{n-j}(-1)^t\binom{n-j}{t}(-1)^{t}1^{n-j-t}
\]
由二项式定理得:
\[=\sum\limits_{j=1}^{n}\binom{n}{j}f_j(1-1)^{n-j}
\]
\[=\sum\limits_{j=1}^{n}\binom{n}{j}f_j[n=j]
\]
\[=\binom{n}{n}f_n
\]
\[=f_n
\]
然后这样形式一就有了,由上面的证明可以一样证出:
\[f_n=\sum\limits_{i=m}^n\binom{n}{i}g_i\Leftrightarrow g_n=\sum\limits_{i=m}^{n}(-1)^{n-i}\binom{n}{i}f_i
\]
然后一般就把\(f_i\)设成钦定(至多)选i个,\(g_i\)设成恰好选\(i\)个。
形式二
\[f_n=\sum\limits_{i=n}^{m}\binom{i}{n}g_i\Leftrightarrow g_n=\sum\limits_{i=n}^{m}(-1)^{i-n}\binom{i}{n}f_i
\]
证明类似,把右边带到左边,\(f_n\):
\[=\sum\limits_{i=n}^{m}\binom{i}{n}\sum\limits_{j=i}^{m}\binom{j}{i}(-1)^{j-i}\binom{j}{i}f_j
\]
\[=\sum\limits_{j=n}^{m}f_j\sum\limits_{i=n}^{j}(-1)^{j-i}\binom{i}{n}\binom{j}{i}
\]
\[=\sum\limits_{j=n}^{m}f_j\sum\limits_{i=n}^{j}(-1)^{j-i}\binom{j}{n}\binom{j-n}{j-i}
\]
\[=\sum\limits_{j=n}^{m}\binom{j}{n}f_j\sum\limits_{t=0}^{j-n}(-1)^t\binom{j-n}{t}1^{j-n-t}
\]
\[=\sum\limits_{j=n}^{m}\binom{j}{n}f_j(1-1)^{j-n}
\]
\[=\sum\limits_{j=n}^{m}\binom{j}{n}f_j[j=n]
\]
\[=f_n
\]
于是就有了形式二,然后一般就把\(f_i\)设成钦定(至少)选i个,\(g_i\)设成恰好选\(i\)个。
min-max容斥
首先是有个柿子:
\[max(S)=\sum\limits_{T\subseteq S}(-1)^{|T|-1}min(T)
\]
考虑证明的话,我们构造一个函数f(|T|)使得
\[max(S)=\sum\limits_{T\subseteq S}f(|T|)min(T)
\]
考虑第\(x+1\)大的数会被统计到的贡献:
\[\sum\limits_{i=0}^{x}\binom{x}{i}f(i+1)
\]
意思的话就是枚举所在集合有多少个比它大的数。
那么有:
\[[x==0]=\sum\limits_{i=0}^x\binom{x}{i}f(i+1)
\]
根据二项式反演有:
\[f(x+1)=\sum\limits_{i=0}^x(-1)^{x-i}\binom{x}{i}[i==0]
\]
于是就有了:
\[f(x+1)=(-1)^x
\]
\[f(x)=(-1)^{x-1}
\]
于是就有:
\[max(S)=\sum\limits_{T\subseteq S}(-1)^{|T|-1}min(T)
\]
交换一下同样适用:
\[min(S)=\sum\limits_{T\subseteq S}(-1)^{|T|-1}max(T)
\]
然后有个kthmax扩展容斥:
\[kthmax(S)=\sum\limits_{T\subseteq S}(-1)^{|T|-K}\binom{|T|-1}{k-1}min(T)
\]
我们还是设\(f(|T|)\)有:
\[kthmax(S)=\sum\limits_{T\subseteq S}f(|T|)min(T)
\]
考虑x+1大的贡献,则:
\[[x==k-1]=\sum\limits_{i=0}^{x}\binom{x}{i}f(i+1)
\]
二项式反演:
\[f(x+1)=\sum\limits_{i=0}^{x}(-1)^{x-i}\binom{x}{i}[i==k-1]
\]
则:
\[f(x+1)=(-1)^{x-k}\binom{x}{k-1}
\]
则有:
\[kthmax(S)=\sum\limits_{T\subseteq S}(-1)^{|T|-k}\binom{|T|-1}{k-1}min(T)
\]
Everything that kills me makes me feel alive.