闲话 25.1.25

闲话

符号化方法更新辣!上次没说所以说一句。

以后再也不读法语文献了。让我一夜回到出生前。

推歌;如果 by 合目p feat. 诗岸

那些你不要的:多元概率生成函数应用一例

抄自 D. Foata, B. Lass, and G.-N. Han, Les nombres hyperharmoniques et la fratrie du collectionneur de vignettes. Seminaire Lotharingien de Combinatoire 47, B47a (2001), 1–20. 前半部分。后半部分因为我没学过很厉害的数学或很高妙的法语,先咕了。

考虑一个赠券收集模型:有一名赠券收藏家,他的收集册中有 \(m\) 个位置,对应 \(m\) 种彼此不同的赠券。他可以无限次地均匀随机地抽取赠券,每次抽一张,目的是达到全收集。我们已经知道了全收集时其抽取次数的期望是 \(mH_m\),其中 \(H_n\) 为第 \(n\) 个调和数。

现在,模型发生了一些变化。收藏家是家中的大哥,他有 \(r\) 个弟弟,按年龄从大到小编号为 \(1, \dots, r\)。每个弟弟都都有一个和大哥一样的收集册,并在获得新贴纸的时候也会放进去。弟弟们的贴纸来源如下:每次大哥抽得一张新赠券时,他会把赠券放入自己的收集册,反之他会给年龄最大的弟弟;若后者没有这张赠券,他会把赠券放入自己的收集册,反之他会给年龄第二大的弟弟,以此类推。如果一张贴纸在大哥全收集前出现了超过 \(r\)(原文如此)次,它就会被扔掉。

\(T\) 为表示大哥完成全收集需要抽取的次数的随机变量,并设此时编号为 \(k\) 的弟弟的收集册中还有 \(M_T^{(k)}\) 个空位。下文将通过计算随机向量 \((T, M_T^{(1)}, M_T^{(2)}, \dots, M_T^{(r)})\) 的分布的表达式,推导出每个变量的分布情况,自然得到其数学期望。具体的手法是,引入一列(差分)随机变量 \(\{X_T^{(k)}\}_{k\ge 0}\),使得 \(\forall k \ge 1, M_T^{(k)} = X_T^{(1)} + \cdots + X_T^{(k)}\),来解决原问题。一种直接的启发是,对随机向量 \((T, X_T^{(1)}, X_T^{(2)}, \dots, X_T^{(r)})\) 建立多元生成函数,随后用线性性解决问题。

为分析这个问题,首先引入超调和数 \(K_m^{(k)}\),定义如下:

\[K_{m}^{(k)} = \left\{ \begin{aligned} &0, &&\ m = 1 \land k \ge 1 \\ &1, &&\ m \ge 1 \land k = 0 \\ &\sum_{i = 2}^{m} \dfrac{K_i^{(k - 1)}}{i}\ , &&\ \text{otherwise} \end{aligned} \right. \]

注意:\(\forall n \ge 1, K_n^{(1)} = H_n - 1\),以及 \(\forall k \ge 0, K_{2}^{(k)} = 2^{-k}\)。超调和数满足 \(K_m^{(k)}- \dfrac{K_{m}^{(k-1)}}m = K_{m - 1}^{(k)}\)。我们也可以推导出(过程见不务正业 21.)对 \(k\ge 0, m \ge 2\)

\[K_m^{(k)} = \sum_{n = 0}^{m - 2} \dfrac{(-m)^{\overline {n + 2}}}{n!(n + 2)^{k + 1}} \]

其中 \(m^{\overline n} = m(m + 1) \cdots (m + n - 1)\)\(m^{\overline 0} = 1\))为上升幂。

考察超调和数的列生成函数

\[F_m(t) = \sum_{k \ge 0} K_m^{(k)} t^k \]

那么根据上方的式子,得到 \((1 - t/m) F_m(t) = F_{m - 1}(t)\),并 \(F_1(t) = 1\),得到

\[F_m(t) = \dfrac{1}{\prod_{k = 2}^m (1 - t/k)} \]

\(F_m\) 的形式有点眼熟啊!熟知次数为 \(d\)\(n\) 变量完全齐次对称多项式定义为

\[h_d(x_1, \dots, x_n) = \sum_{1\le i_1 \le i_2 \le \cdots \le i_d \le n} x_{i_1} \cdots x_{i_d} \]

那么不妨固定 \(n\) 个变量 \(x_1, \dots, x_n\),知道 \(h_d\) 中的每一项都是从 \(\{x_1^k\}_{k \ge 0}, \{x_2^k\}_{k \ge 0},\dots, \{x_n^k\}_{k \ge 0}\) 中分别选择一个,使得它们的幂之和为 \(d\),将它们乘起来得到的。故根据这个组合意义,得到 \(h_d\) 的生成函数为

\[\sum_{d\ge 0} h_d(x_1, \dots, x_n) t^d = \prod_{i = 1}^n\left(1 + x_it + (x_it)^2 + \cdots\right) = \dfrac{1}{\prod_{i = 1}^n (1 - x_i t)} \]

而这个形式和 \(F_m(t)\) 相同,故将 \(1/2, 1/3, \dots, 1/m\) 带入 \(x_1, \dots, x_{m - 1}\) 得到 \(K_m^{(k)} = h_k(1/2, 1/3, \dots, 1/m)\)。虽然到目前为止我们仍然没有开始解决原问题,但你先别急。

尽管最初提到的模型是一个概率论模型,其仍然具有足够优秀的组合意义。事实上,其组合上可以视作计数特定的满射类。取定 \(n\),记 \([n] := \{1, 2, \dots, n\}\),并令 \(\mathrm{Surj}(l, m)\) 为所有从 \([l]\)\([m]\) 的满射组成的集合。取 \(f \in \mathrm{Surj}(l, m)\),对 \(s\ge 1\),记 \(\nu_s(f)\) 为使 \(f^{-1}(i)\) 的基数为 \(s\)\(i\) 的数量,即可以被 \(s\)\([l]\) 中的元素映射到的 \([m]\) 中的元素的数量。取定一个由自然数组成的向量 \(\bm n = (n_1, n_2, \dots)\),令 \(\mathrm{Surj}(l, m; \bm n) = \{f \in \mathrm{Surj}(l, m) \mid \forall s > 0, \nu_s(f) = n_s\}\),并令 \(\mathrm{surj}(l, m, \bm n)\)\(\mathrm{Surj}(l, m; \bm n)\) 的基数。

\(t, s_1, s_2, \dots\) 为一系列两两交换的形式变元。定义映射 \(f \in \mathrm{Surj}(m, l)\) 的权值为 \(\pi(f) := \prod_{k\ge 1} s_k^{\nu_k(f)}\),并有:\(\sum_i \nu_i(f) = m\)\(\sum_i i \nu_i(f) = l\)。那么据组合意义,固定 \(m\),自然能得到

\[\left(\sum_{i\ge 1} s_i \dfrac{t^i}{i!}\right)^m = \sum_{l\ge m} \dfrac{t^l}{l!} \sum_{f\in \mathrm{Surj}(l, m)} \pi(f) = \sum_{l\ge m} \dfrac{t^l}{l!} \sum_{\bm n} \mathrm{surj}(l, m;\bm n) \prod_{k\ge 1} s_i^{n_i} \]

引入 \(\mathrm{Surj}(l, m;\bm n)\) 的一个子集 \(A(l, m;\bm n)\),其由满足如下性质的 \(f\) 构成:\(f\) 在集合 \([l - 1]\) 上的子映射 \(f \rvert_{[l - 1]}\) 是由 \([l - 1]\)\([m] \setminus\{f(l)\}\) 的满射,但不能是到 \([m]\) 的满射;即 \(\forall j < l, f(j) \neq f(l)\)。令 \(a(l, m; \bm n)\)\(A(l, m; \bm n)\) 的基数。若 \(f \in A(l, m;\bm n)\),那么由于 \(l\) 一定对 \(\nu_1(f)\)\(1\) 的贡献,\(\nu_1(f) \ge 1\)\(\pi(f)\) 可以被 \(s_1\) 整除;并取 \(g := f\rvert_{[l-1]}\),那么 \(\pi(f) = \pi(g) s_1\),且根据 \(f(l)\) 相对于 \(g\) 的值域中 \(m - 1\) 个元素的位置关系,可以得到

\[\sum_{\bm n} \sum_{f\in A(l, m;\bm n)} \pi(f) = m s_1 \sum_{g \in \mathrm{Surj}(l - 1, m - 1)} \pi(g) \]

从而

\[\begin{aligned} & \sum_{l\ge m} \dfrac{t^{l-1}}{(l - 1)!} \sum_{\bm n} \sum_{f \in A(l, m ; \bm n)} \pi(f) \\ = \ & \sum_{l\ge m} \dfrac{t^{l-1}m s_1}{(l - 1)!} \sum_{g\in\mathrm{Surj}(l - 1, m - 1)} \pi(g) \\ = \ & m s_1\sum_{l\ge m - 1} \dfrac{t^{l}}{l!} \sum_{g\in\mathrm{Surj}(l, m - 1)} \pi(g) \\ = \ & m s_1\left(\sum_{i\ge 1}s_i\dfrac{t^i}{i!}\right)^{m - 1} \end{aligned} \]

不妨对所有 \(i > r\)\(s_i = 1\),那么上式可以继续化为

\[=m s_1 \left((s_1 - 1)t + (s_2 - 1)\dfrac{t^2}{2!} + \cdots + (s_r - 1)\dfrac{t^r}{r!} + (e^t - 1)\right)^{m - 1} \]

接着使用多项式定理得到

\[= ms_1 \sum_{a + b + c_1 + \cdots + c_r = m - 1} \binom{m - 1}{a,b,c_1,\dots,c_r} e^{at} (-1)^b \prod_{i = 1}^r \left(\dfrac{(s_i - 1)t^i}{i!}\right)^{c_i} \]

考虑形式 Laplace 变换。令(形式)Laplace 算子为 \(\mathcal L\),其作用在形式变元 \(t\) 上的作用是将所有形如 \(a_n t^n / n!\) 的项替换为 \(a_nt^n\),即实现了指数生成函数到普通生成函数的变换。特别地,\(\mathcal L(t^n e^{at}) = n!t^n / (1 - at)^{1 + n}\)。对上面的等式链两侧施 Laplace 变换得到(格式影响,下面不写对 \(a,b,c_1,\dots\) 的限制)

\[\begin{aligned} & \sum_{l\ge m}t^{l} \sum_{\bm n} a(l, m;\bm n) \prod_{k = 1}^r s_k^{n_k} \\ = \ & ms_1t \sum_{a,b,\bm c} (-1)^b \binom{m - 1}{a,b,c_1,\dots,c_r} \left(\prod_{k = 1}^r \left(\dfrac{s_k - 1}{k!} \right)^{c_k}\right) \dfrac{ t^{\sum_i ic_i}\left(\sum_i ic_i\right)!}{(1 - at)^{1 + \sum_i ic_i}} \end{aligned} \]

到这里,我们已经获得所有需要的工具了。重新说明一下随机变量:令 \(T\) 为大哥全收集时间对应的随机变量,对 \(t = 0, 1, \dots\),令 \(X_t^{(0)}\) 为大哥在 \(t\) 时刻收集册的空缺数对应的随机变量,那么 \(X_0^{(0)} = m, X_T^{(0)} = 0\)。对 \(k = 1, 2, \dots\),令 \(X_n^{(k)}\) 为抽取 \(n\) 次贴纸后恰好出现 \(k\) 次的贴纸数量,那么显然地,\(\sum_k X_T^{(k)} = m\)。此外,第 \(k\) 个弟弟的集邮册在时刻 \(T\) 的空缺数为 \(M_T^{(k)} = X_T^{(1)} + X_{T}^{(2)} + \cdots + X_T^{(k)}\)。按照前面提到的思路,我们需要考察随机向量 \((T, X_T^{(1)}, X_T^{(2)}, \dots, X_T^{(r)})\)

\(Y_1, Y_2, \dots \in [m]\) 为大哥每次得到的赠券的编号,根据模型得到 \(Y_n\)\([m]\) 上独立地均匀随机分布。那么,大哥在 \(l\) 次抽取后完成全收集,且 \(\forall 1 \le k \le r\)\(l\) 次抽取后恰好出现 \(k\) 次的贴纸数为 \(n_k\),当且仅当 $ : [l] \to [m], i \mapsto Y_i$ 属于集合 \(A(l, m;\bm n)\)。前者可以表示为事件 \([T = l, X_T^{(1)} = n_1, \dots, X_T^{(r)} = n_r]\),后者的概率显然是 \(a(l, m;\bm n) / m^l\)

因此,根据上面的结果,随机向量 \((T, X_T^{(1)}, X_T^{(2)}, \dots, X_T^{(r)})\) 的生成函数按下式给出:

\[\begin{aligned} & \sum_{l\ge m} \sum_{\bm n} \mathbb P[T = l, X_T^{(1)} = n_1, \dots, X_T^{(r)} = n_r] s_1^{n_1} \cdots s_r^{n_r} t^l \\ = \ & \sum_{l\ge m} \left(\dfrac{t}{m}\right)^l \sum_{\bm n} a(l,m;\bm n) \prod_{k = 1}^r s_k^{n_k} \\ = \ & s_1t \sum_{a,b,\bm c} (-1)^b \binom{m - 1}{a,b,c_1,\dots,c_r} \left(\prod_{k = 1}^r \left(\dfrac{s_k - 1}{k!} \right)^{c_k}\right) \dfrac{ (t/m)^{\sum_i ic_i}\left(\sum_i ic_i\right)!}{(1 - at/m)^{1 + \sum_i ic_i}} \end{aligned} \]

用这个可以轻松算出 \(\mathbb E[T] = m H_m\)。当然,重要的是,我们一旦获得了 \(X_T^{(k)}\) 的概率生成函数,就能通过求导并带入 \(s_k = 1\) 得到期望值了。具体地,有

\[\begin{aligned} G_{X_T^{(1)}}(s) & := \sum_{n\ge 1} \mathbb P[X_T^{(1)} = n] s^n \\ & = s \sum_{a + b + c = m - 1} (-1)^b \binom{m - 1}{a,b,c}(s - 1)^c \dfrac{(t/m)^cc!}{(1 - at/m)^{c + 1}} \\ & = \sum_{a + b + c = m - 1} (-1)^b \binom{m - 1}{a,b,c} \dfrac{ms(s - 1)^cc!}{(m - a)^{c + 1}} \end{aligned} \]

\(k\ge 2\),有

\[\begin{aligned} G_{X_T^{(k)}}(s) & := \sum_{n\ge 1} \mathbb P[X_T^{(k)} = n] s^n \\ & = \sum_{a + b + c = m - 1} (-1)^b \binom{m - 1}{a,b,c} \dfrac{(s-1)^c}{(k!)^c} \dfrac{(1/m)^{kc}(kc)!}{(1 - a/m)^{kc + 1}} \\ & = \sum_{a + b + c = m - 1} (-1)^b \binom{m - 1}{a,b,c} \dfrac{(s-1)^cm(kc)!}{(k!)^c(m - a)^{kc + 1}} \end{aligned} \]

\[\begin{aligned} & \mathbb E[X_T^{(1)}] = G_{X_T^{(1)}}'(1) \\ = \ & \sum_{a = 0}^{m - 1} (-1)^{m-1-a} \binom{m - 1}{a} \dfrac{m}{m - a} + \sum_{a = 0}^{m - 2} (-1)^{m - 2 - a} \binom{m - 2}{a} \dfrac{m(m-1)}{(m - a)^{2}} \\ = \ & -\sum_{b = 0}^{m - 1} \dfrac{(-m)^{\overline{b + 1}}}{(b + 1)!} + \sum_{b = 0}^{m - 2} \dfrac{(-m)^{\overline{b + 2}}}{b!(b + 2)^2} \\ = \ & 1 + K_m^{(1)} = H_m \end{aligned} \]

此外,对于 \(k\ge 2\),同样地有

\[\mathbb E[X_T^{(k)}] = G_{X_T^{(k)}}'(1) = \sum_{b = 0}^{m - 2} \dfrac{(-m)^{\overline{b + 2}}}{b!(b + 2)^{k+1}} = K_m^{(k)} \]

综上,我们得到了 \(\mathbb E[T] = m H_m\)\(\mathbb E[M_T^{(1)}] = H_m\)\(\forall k \ge 2, \mathbb E[M_{T}^{(k)}] = 1 + K_m^{(1)} + \cdots + K_m^{(k)}\)


例题...?

YDRG#011 bonus

给定赠券数 \(n\),以及 \(m\),求 \(X_T^{(1)}\) 的前 \(m\) 阶矩。

\(n,m\le 3\times 10^5\)

\(G_{X_T^{(1)}}\)\(G\),那么 \(m\) 对应的答案就是 \([x^m/m!] G(e^x)\)。为此,我们只需要求得

\[\begin{aligned} G(x + 1) &= n(x + 1) \sum_{a,b,c} (-1)^b \binom{n - 1}{a,b,c} \dfrac{c!}{(n - a)^{c + 1}} x^c \\ &= n(x + 1) \sum_{c = 0}^{n - 1} \binom{n - 1}{c} c!x^c \sum_{a = 0}^{n - 1 - c} (-1)^{n - 1 - a - c} \binom{n - 1 - c}{a} (n - a)^{-c-1} \\ &= (-1)^{n - 1} n(x + 1) \sum_{c = 0}^{n - 1} \binom{n - 1}{c} c!(-x)^c \sum_{a = 0}^{n - 1 - c} (-1)^{a} \binom{n - 1 - c}{a} (n - a)^{-c-1} \end{aligned} \]

而考虑(鱼鱼强大喵)

\[\begin{aligned} & \sum_{k \ge 0} \sum_{i = 0}^{k} \binom{k}{i} \dfrac{(-1)^i}{(n - i)^{n - k}} \dfrac{x^k}{k!} \\ = \ & \sum_{i \ge 0} \dfrac{(-1)^i}{i!(n - i)^n} \sum_{k \ge i} \dfrac{[(n - i)x]^k}{(k - i)!} \\ = \ & \sum_{i \ge 0} \dfrac{(-1)^i}{i!(n - i)^n} (n - i)^i x^i e^{(n - i)x} \\ = \ & e^{nx} \sum_{i \ge 0} \dfrac{(-1)^i}{i!} (n - i)^{i - n} (xe^{-x})^i \end{aligned} \]

那么就能在 \(O(n \log^2 n)\) 的时间内算得 \(G(x + 1)\)。随后复合 \(e^x - 1\) 即可。总时间复杂度 \(O(n \log^2 n + m \log^2 m)\)

希望能进一步得到加强。使用后向微分迭代列的另解 by fyyy

posted @ 2025-01-25 21:44  joke3579  阅读(180)  评论(2)    收藏  举报