反演的 GF 形式及多维反演

待学习:符号化方法,但是从集合幂级数推下来。

概述

定义

用多元 GF 定义集合幂级数:

  • 可重集 \(S\) 可能含有不同元素 \(x_1,x_2,\ldots,x_n\),个数分别为它们的指数。
  • 对于不可重集合 \(S\),将 GF \(\bmod x_1^2,\ldots,\bmod x_n^2\)
    • 进一步地,可以限制每个元素的个数。
  • 这样多元 GF 的卷积就是子集卷积。

为了方便,有时仍采用 \(x^S\) 的表示。

替代矩阵

我们用向量和矩阵的乘法表示正演/反演的过程,反演即矩阵求逆。

  • 在特殊情况下,可以用幂级数的卷积/复合代替矩阵乘法,用幂级数的乘法逆/复合逆(存疑)代替矩阵求逆,再使用多项式算法加速。
  • 对特定类型的问题,可以用 GF 来反演计算容斥系数。这个反演同样有矩阵形式,但由于特殊性可以用 GF 代替。

集合钦定

“钦定”子集/超集,得到“恰好”的结果。

若认为集合中每个元素都带有一个方案集合(不妨看成平面上一块区域),则子集可看做方案集合的交。

一种方案在且仅在它的“恰好集合”的子集合法,超集则反之。

使用 GF 乘法来表达矩阵乘法。

莫比乌斯反演

多重集子集反演:

\[\begin{gathered} H(x_1,\ldots,x_n)={1\over\prod_{i=1}^n(1-x_i)} \\ H^{-1}=\prod_{i=1}^n(1-x_i) \\ F=G\times H \Longleftrightarrow G=F\times H^{-1} \end{gathered} \]

多重集超集反演:

\[\begin{gathered} H(x_1,\ldots,x_n)={1\over\prod_{i=1}^n(1-x^{-1}_i)} \\ H^{-1}=\prod_{i=1}^n(1-x^{-1}_i) \\ F=G\times H \Longleftrightarrow G=F\times H^{-1} \end{gathered} \]

“乘 GF”对应的矩阵转置:

\[\begin{gathered} H_2(x_1,\ldots,x_n)=H_1(x_1^{-1},\ldots,x_n^{-1}) \\ H^{-1}_2(x_1,\ldots,x_n)=H^{-1}_1(x_1^{-1},\ldots,x_n^{-1}) \end{gathered} \]

子集/超集反演

\[\bmod x_1^2,\ldots,\bmod x_n^2 \]

二项式反演

只考虑集合大小,将集合幂级数转为 EGF。

子集:

\[\begin{gathered} \hat H(x)=e^x \\ \hat H^{-1}(x)=e^{-x} \\ \hat F(x)=\hat G(x)\times\hat H(x)\Longleftrightarrow\hat G(x)=\hat F(x)\times \hat H^{-1}(x) \\ f_i=[{x^i\over i!}]F(x),g_i=[{x^i\over i!}]G(x) \end{gathered} \]

超集:

\[\begin{gathered} \hat H(x)=e^{x^{-1}} \\ \hat H^{-1}(x)=e^{-x^{-1}} \\ F(x)=G(x)\times\hat H(x)\Longleftrightarrow G(x)=F(x)\times \hat H^{-1}(x) \\ f_i=[i!x^i]F(x),g_i=[i!x^i]G(x) \end{gathered} \]

“乘 GF”对应的矩阵转置:

\[\begin{gathered} \hat H_2(x)=\hat H_1(x^{-1}) \\ \hat H_2^{-1}(x)=\hat H_1^{-1}(x^{-1}) \end{gathered} \]

\(F(x),G(x)\) 也要变。

“集合钦定容斥”

可能错了,正确的做法见:link 及 2025.8.23 联考 T3。

我们有“恰好”的贡献系数的 GF \(F\)、贡献方式的 GF \(G\),想要求出容斥系数的 GF \(H\)

\[\begin{gathered} F=H\times G \\ H=F\times G^{-1} \end{gathered} \]

我们给 \(H\) 乘上方案数(这里设为 \(f_i\)),再乘 \(G\) 即可得到答案的 GF:

\[A=G\times\sum_{i}[x^i]H(x)f_ix^i \]

\(A(1)\) 即贡献和。

集合划分

将集合划分为若干部分 / 由若干部分合成,“恰好”是“钦定”继续划分/继续合成的结果。

常与 等价关系 有关,例如连通块数、颜色数(存疑)。

使用 GF 复合来表达矩阵乘法。

斯特林反演

咕。

集合划分容斥

\[G(H(x))=F(x) \]

\(G(x)\) 往往很简单,可以直接解出 \(H(x)\)。不知道这个叫不叫“复合逆”。

之前写过,不再赘述。

多维反演

拼合若干反演,每维分别独立。

矩阵形式

\(M_{i,j}=\prod_{k=1}^d{M_k \ }_{i_k,j_k}\)(维度编号为 \(1,\ldots,d\)\(M\) 表示正演的大矩阵,\(M_k\) 表示第 \(k\) 维正演的矩阵,\(i_k,j_k\) 分别表示 \(i,j\) 在第 \(k\) 维的值),\(M'_{i,j}=\prod_{k=1}^d{M^{-1}_k}_{i_k,j_k}\)(反演的矩阵),则可以验证 \(MM'=I,M'M=I\)

\[\begin{aligned} MM'_{i,j}&=\sum_k\prod_{t=1}^d{M_t\ }_{i_t,k_t}\ {M^{-1}_t}_{k_t,j_t} \\ &=\sum_{k_1}\sum_{k_2}\cdots\sum_{k_d}\prod_{t=1}^d{M_t\ }_{i_t,k_t}\ {M^{-1}_t}_{k_t,j_t} \\ &=\prod_{t=1}^d\sum_{k_t}{M_t\ }_{i_t,k_t}\ {M^{-1}_t}_{k_t,j_t} \\ &=\prod_{t=1}^d[i_t=j_t] \\ &=[i=j] \end{aligned} \]

\(M'M\) 同理。

概括:贡献系数为各维度贡献系数之积。

这是高维卷积的原理的一部分,可以使用 FWT 快速计算。

GF 形式

用 GF 表达上述矩阵。

若各维度的正演分别为乘 GF \(H_1(x),\ldots,H_d(x)\),则总的正演为乘 \(H(x_1,\ldots,x_d)=\prod_{i=1}^dH_i(x_i)\),注意每个维度要使用不同的 \(x_i\)(而非同一个 \(x\))。

反演为乘 \(H^{-1}(x_1,\ldots,x_d)=\prod_{i=1}^dH^{-1}(x_i)\)

复合的我还不会。

参考

2025.8.17

posted @ 2025-12-11 11:45  FirCone  阅读(6)  评论(0)    收藏  举报