一、复合
\(F(x)\) 与 \(G(x)\) 的复合,记作 \(F \circ G = F(G(x))\)。
二、复合逆
设 \(F(x)\) 和 \(G(x)\) 都是常数项为 \(0\),一次项系数非 \(0\) 的形式幂级数。
\[F \circ G = x \Longleftrightarrow G \circ F = x
\]
证明:
\[\exists H, H \circ F = x
\]
\[\because F \circ G = x
\]
\[H(F(G(x))) = H(x) = G(x)
\]
\[\therefore H = G, G \circ F = x
\]
由此可以定义若 \(F \circ G = x\),则称 \(F\) 和 \(G\) 互为复合逆。
三、拉格朗日反演
设 \(F(x)\) 和 \(G(x)\) 为两个互为复合逆,常数项为 \(0\),一次项系数不为 \(0\) 的形式幂级数。
\[[x ^ n] F ^ k (x) = \dfrac{k}{n} [x ^ {-k}] G ^ {-n}(x)
\]
\[[x ^ n] F ^ k (x) = \dfrac{k}{n} [x ^ {n - k}] {\left( \dfrac{x}{G(x)} \right)} ^ n
\]
-
扩展拉格朗日反演:
- 设 \(H\) 为任意一个形式幂级数,将形式二线性组合可得:
\[[x ^ n] H(F(x)) = \dfrac{1}{n}[x ^ {n - 1}] H'(x){\left(\dfrac{x}{G(x)}\right)} ^ n
\]
-
另类拉格朗日反演:
- EI 科技,无需对 \(n\) 求逆,对 \(H\) 求导:
\[[x ^ n] F ^ k (x) = [x ^ {n - k}] G'(x) {\left(\dfrac{x}{G(x)}\right)} ^ {n + 1}
\]
\[[x ^ n] H(F(x)) = [x ^ n]H(x)G'(x){\left(\dfrac{x}{G(x)}\right)}^{n + 1}
\]
四、如何求解复合逆
对于一个形式幂级数的封闭形式,例如 \(\ln(1 - x)\),直接解方程即可。
对于一个方程,将等式一边只留下一个 \(x\),另一边的 \(F\) 全部换成 \(x\) 即为复合逆。
五、例题
题意可以转化为求 \(n\) 个点带标号无根树的数量 \(\times (n - 1)!\) 的结果。
问题变成如何求 \(n\) 个点带标号无根树数量。
设 \(F(x)\) 表示答案的 EGF,\(F = x \exp(F)\)。
\(F\) 的复合逆 \(G\) 为 \(\dfrac{x}{e ^ x}\)。
\[[x ^ n] F(x) = \dfrac{1}{n}[x ^ {n - 1}] {\left(\dfrac{x}{G(x)}\right)} ^ n
\]
\[[x ^ n] F(x) = \dfrac{1}{n} [x ^ {n - 1}] e ^ {nx} = n ^ {n -2}
\]
所以答案为 \(n ^ {n - 2} \times (n - 1)!\)。
考虑如何判断一棵二叉树是否为美丽的 \(n\) 阶二叉树。
所以充要条件如上所述。
设 \(f_{n, 1}\) 表示美丽的 \(n\) 阶二叉树的数量。
设 \(f_{n, 0}\) 表示根节点为 \(0\),以根节点的儿子节点为根的子树为美丽二叉树,一共 \(n\) 个节点数字为 \(1\) 的二叉树的数量。
\[f_{n, 0} = 2f_{n, 1} + \sum_{i = 1} ^ {n - 1} f_{i, 1} f_{n - i, 1}
\]
\[f_{n, 1} = 2(f_{n - 1, 1} + f_{n - 1, 0}) + \sum_{i = 1} ^ {n - 2} (f_{i, 0} + f_{i, 1})(f_{n - 1 - i, 0} + f_{n - 1 - i, 1})
\]
边界 \(f_{1, 0} = 0, f_{1, 1} = 1\),定义 \(f_{0, 0/1} = 0\)。
设 \(F_0 = \sum_{n \ge 0} f_{n, 0} x ^ n, F_1 = \sum_{n \ge 0} f_{n, 1} x ^ n\)。
\[F_0 = 2F_1 + {F_1}^2
\]
\[F_1 = x + 2x(F_0 + F_1) + x{(F_0 + F_1)} ^ 2
\]
\[F_1 = x{(F_0 + F_1 + 1)} ^ 2 = x{({F_1} ^ 2 + 3F_1 + 1)} ^ 2
\]
设 \(F = F_1\),\(F\) 的复合逆 \(G\) 为 \(\dfrac{x}{{(x ^ 2 + 3x + 1)} ^ 2}\)。
\[[x ^ n] F(x) = \dfrac{1}{n} [x ^ {n - 1}] {\left(\dfrac{x}{G(x)}\right)} ^ n
\]
\[[x ^ n] F(x) = \dfrac{1}{n} [x ^ {n - 1}] {(x ^ 2 + 3x + 1)} ^ {2n}
\]
\[= \dfrac{1}{n} [x ^ {n - 1}] \sum_{i = 0} ^ {2n} \binom{2n}{i} x ^ {2i} \sum_{j = 0} ^ {2n - i} \binom{2n - i}{j} 3 ^ j x ^ j
\]
\[= \dfrac{1}{n} \sum_{i = 0} ^ {2n} \sum_{j = 0} ^ {2n - i} [2i + j = n - 1] \binom{2n}{i} \binom{2n - i}{j} 3 ^ j
\]
\[= \dfrac{1}{n} \sum_{i = 0} ^ {\lfloor\frac{n - 1}{2}\rfloor} \binom{2n}{i} \binom{2n - i}{n - 1 - 2i}3 ^ {n - 1 - 2i}
\]
时间复杂度 \(\Theta(n)\)。