2023.5.14 闲话

今天是恋恋日,本应发一篇闲话的,不过没有什么题材,就和 K8He 洽谈整的扰动法,隔壁 K8He 写的 .

恋恋日要不要做一下恋恋题:Luogu3708 koishi的数学题,这个 DSF-like 的东西最后可以导出 整除版本 Möbius 反演,似乎有点 educational .

别的 Koishi 题也太难了,Koishi 咋这么厉害 .

推歌:季節の頬とワンダーランド / Kai feat. 初音ミク

推歌:月に叢雲華に風 / 幽閉サテライト

無意識レクイエム 没听过,不过 char_phi 好像很赞扬,是不是应该推一下(?


K8He 推的扰动法 (Perturbation Technique/Method),好像有点厉害啊 .

比如等比数列求和,\(a_n=q\cdot a_{n-1}\)(其中 \(q\neq 1\)),\(S_n\) 是部分和,那么:

\[\begin{aligned}&S_n+a_{n+1}=a_1+\sum_{k=2}^{n+1}a_k\\&S_n+a_n\cdot q=a_1+q\cdot S_n\\&S_n=\dfrac{a_1(1-q^n)}{1-q}\end{aligned} \]

好像就是补一项转写为递推形式 .

类似内容

试一下:

\[S_n=\sum_{i=1}^nia^i\qquad\text{ where } a\neq 1 \]

那么补一项:

\[\begin{aligned}&S_n+(n+1)a^{n+1}=\sum_{k=1}^{n+1}ka^k\\&S_n+(n+1)a^{n+1}=aS_n+\sum_{k=1}^{n+1}a^k\\&S_n=\dfrac{n\cdot a^{n+2}-(n+1)a^{n+1}+a}{(a-1)^2}\end{aligned} \]

直接推广:BZOJ3157 国王奇遇记 / Luogu4948 数列求和 .

以上是比较简单的情况,下面是一个不那么简单的情况:

\[S_n=\sum_{i=1}^ni^2 \]

如果还是按上一个内容的方法扰动的话,最终可以得到的是:

\[S_n+(n+1)^2=S_n+(n+1)+2\sum_{k=1}^nk \]

两边的 \(S_n\) 消掉了,无法得出结果 .

不过经过一些观察,这个还是得到了 \(\mathrm{Id}\) 的前缀和的,所以试对 \(\mathrm{Id}_3\) 扰动以求得到 \(\mathrm{Id}_2\) 的前缀和,令 \(\displaystyle T_n=\sum_{i=1}^ni^3\),则:

\[\begin{aligned}&T_n+(n+1)^3=T_n+3S_n+(n+1)+3\sum_{k=1}^nk\\&S_n=\dfrac{n(n+1)(2n+1)}6\end{aligned} \]

类似内容

自然数幂和:

\[S_k(n)=\sum_{i=1}^ni^k\qquad\text{ where } k\ge0 \]

经过扰动最后可以得到

\[S_k(n)=(n+1)^k=\sum_{i=0}^k\dbinom kiS_k(n) \]

做代换 \(k\gets k+1\) 后可以得到 \(S_k\) 的递推:

\[S_k(n)=\dfrac1{k+1}\left((n+1)^{k+1}-\sum_{i=0}^{k-1}\dbinom{k+1}iS_i(n)\right) \]

不过没啥用 .


求调和级数部分和的前缀和:

\[S_n=\sum_{k=1}^nH_k \]

如果直接扰动你会得到 \(S_n+H_{n+1}=S_n+H_{n+1}\),太对了 .

\(\displaystyle T_n=\sum_{k=1}^nkH_k\),对 \(T\) 扰动,最终可以得到 :

\[T_n+(n+1)T_{n+1}=T_n+n+1+S_n \]

那么就可以得到 \(S_n=(n+1)(H_{n+1}-1)\) 了 .

类似上一个问题也可以得到

\[S^{\star}_k(n)=\sum_{i=1}^ni^kH_i\qquad\text{ where } k\ge0 \]

的递推,不过麻烦一点,扰动最终得到的结果是:

\[S^{\star}_k(n)+(n+1)^kH_{n+1}=1+\sum_{i=0}^{k-1}\dbinom{k-1}iS_i(n)+\sum_{i=0}^k\dbinom kiS^{\star}_i(n) \]

可以看一下具体数学习题 2.21 以明确扰动法咋用的:

\[S_k(n)=\sum_{k=0}^n(-1)^{n-k}k\tag{$k=0,1,2$} \]

应该能对于任意 \(k\) 导出 \(S_k\) 的递推,可以试试 .

以上是有限求和的情况,看起来这类扰动在无限求和上会更简单,尝试一下:

欲求形式幂级数 \(\displaystyle F(z)=\sum_{k\ge 0}z^k\) 的封闭形式,那么应用扰动法:

\[1+zF(z)=F(z) \]

即可得到 \(F(z)=\dfrac1{1-z}\) .

其实这个可能也不太叫扰动了,可能就是把递推翻译成 OGF 形式,不过普通扰动好像也是类似这种的 .

但是从 OGF 截取的方面看普通扰动的结果却是平凡的 . 具体的,还是用等比数列求和做示例,则不难得到的是 \(F(z)+z^{n+1}=1+z\cdot F(z)\) . 可以解得 \(F(z)=\dfrac{1-z^{n+1}}{1-z}\),这就是 \(\dfrac1{1-z}\bmod z^n\) . 然而这样和不用 OGF 的形式是一模一样的,没有什么意义 .

不过对于 Binomial Sums 问题来说,具体过程是对于 \(F(G(z))\),先提取 \(G(z)\) 的常数项 \(c\),变成 \(F^{\star}(z)=F(G(z)-c)\),于是 \(F^{\star}\) 在提取某项系数的时候是幂零的(具体可以看 EI 的 \(c\) 处 Taylor 展开).

那么可以对其取截取 \(\mathcal F^{\star}(z)=F^{\star}(z)\bmod x^{n+1}\) 不影响答案,则令 \(\mathcal F(z)=\mathcal F^{\star}(z+c)\) 之后可以对 \(F\) 的 ODE 做一些调整来得到 \(\mathcal F\) 的一个和 ODE 差不多的东西,因为 \(\mathcal F\) 被截取过了所以可以根据这个朴素递推 .

那么整个过程的关键其实就是先把常数项 \(c\) 抽离出来,这样就有比较好的性质,可以进行截取,之后再补常数项,是不是也算扰动法啊 .(EI:很好,我想这就是所谓的“扰动法”在 GF 上的体现了。)

posted @ 2023-05-14 18:42  Jijidawang  阅读(125)  评论(3编辑  收藏  举报
😅​