首页 > 其他分享 >下降幂学习笔记

下降幂学习笔记

时间:2024-07-09 21:32:56浏览次数:17  
标签:frac sum 下降 学习 笔记 Delta binom aligned underline

下降幂学习笔记

还原精灵还我笔记——来自打完笔记但关电脑前没有保存的某人的呐喊。

定义

下降幂就是形如 \(n^{\underline{m}}\) 的式子,表示

\[n^{\underline{m}}=\prod_{i=n-m+1}^{n}=\frac{n!}{(n-m)!} \]

同理声明一个上升幂 \(n^{\overline{m}}\),表示

\[n^{\overline{m}}=\prod_{i=n}^{n+m-1}i=\frac{(n+m-1)!}{(n-1)!} \]

注意这里 \(n,m\) 均可以取负数即可。

性质

上升下降之间的转换

首先是幂相加的求解

\[n^{\underline{a+b}}=n^{\underline{a}}(n-a)^{\underline{b}}\\ n^{\overline{a+b}}=n^{\overline{a}}(n+a)^{\overline{b}} \]

这个性质常用于倍增求解一些多项式,因为有

\[x^{\underline{2n}}=x^{\underline{n}}(x-n)^{\underline{n}}\\ x^{\underline{2n+1}}=x^{\underline{2n}}(x-2n) \]

这样良好的性质,于是可以设 \(x^{\underline{n}}=f(x)=\sum_{i=0}^{n}a_ix^i\),则有

\[\begin{aligned}x^{\underline{2n}}&=f(x)f(x-n)\\&=(\sum_{i=0}^{n}a_ix^i)(\sum_{i=0}^{n}a_i(x-n)^i)\\&=(\sum_{i=0}^{n}a_ix^i)(\sum_{i=0}^{n}a_i\sum_{j=0}^{i}\binom{i}{j}x^j(-n)^{i-j})\\&=(\sum_{i=0}^{n}a_ix^i)(\sum_{j=0}^{n}x_j\sum_{i=j}^{n}a_i\binom{i}{j}(-n)^{i-j})\\&=(\sum_{i=0}^{n}a_ix^i)(\sum_{j=0}^{n}x^j\sum_{i=j}a_i(-n)^{i-j}\frac{i!}{j!(i-j)!})\\&=(\sum_{i=0}^{n}a_ix^i)(\sum_{i=0}^{n}\frac{x^i}{i!}\sum_{j=i}^{n}(a_jj!)\frac{(-n)^{j-i}}{(j-i)!}) \end{aligned} \]

于是可以设 \(F_i=a_ii!,G_i=\frac{(-n)^{i}}{i!},G'_i=G_{n-i}\)。那么原式等于

\[\begin{aligned}&=(\sum_{i=0}^{n}a_ix^i)(\sum_{i=0}^{n}\frac{x^i}{i!}\sum_{j=i}^{n}F_jG_{j-i})\\&=(\sum_{i=0}^{n}a_ix^i)(\sum_{i=0}^{n}\frac{x^i}{i!}\sum_{j=i}^{n}F_jG'_{n-(j-i)}) \end{aligned} \]

如果令 \(W_i=(FG')_i\),则原式等于

\[\begin{aligned}&=(\sum_{i=0}^{n}a_ix^i)(\sum_{i=0}^{n}\frac{W_{n+i}}{i!}x^i)\end{aligned} \]

于是转换成两个多项式相乘,依旧利用 \(\text{FFT}\) 求解即可。于是我们便能在

\[T(n)=T(\frac{n}{2})+O(n\log n)=O(n\log n) \]

的时间复杂度内,得到 \(x^{\underline{n}}\) 的展开形式,上升幂同理。

接着有

\[n^{\underline{m}}=(-1)^m(-n)^{\overline{m}}=(n-m+1)^{\overline{m}}\\ n^{\overline{m}}=(-1)^m(-n)^{\underline{m}}=(n+m-1)^{\underline{m}} \]

关于组合数

下降幂和组合数结合往往有意想不到的效果。

首先先简单将组合数转化成下降幂的形式

\[\binom{n}{m}=\frac{n!}{m!(n-m)!}=\frac{n^{\underline{m}}}{m!} \]

这个性质可以将组合数拓展到实数域

\[\binom{r}{n}=\frac{r^{\underline{n}}}{n!} \]

此处的 \(r\) 是任意实数。然后可以用这个表示牛顿二项式定理

\[(x+y)^r=\sum_{i\ge 0}\binom{r}{i}x^iy^{r-i} \]

只需要注意 \(i\) 没有上界即可。二项式定理其实是 \(r\) 取任意非负整数时的特殊情况,因为当 \(i>r\) 时,\(\binom{r}{i}\equiv 0\),因此省略了后面的无穷项。

然后有一个组合数的转换

\[\binom{n}{m}=\frac{n^{\underline{m}}}{m!}=\frac{(-1)^m(-n)^{\overline{m}}}{m!}=(-1)^m\frac{(m-n-1)^{\underline{m}}}{m!}=(-1)^m\binom{m-n-1}{m} \]

接着考虑下降幂与组合数相乘

\[\binom{n}{k}k^{\underline{i}}=\frac{n!}{k!(n-k)!}\frac{k!}{(k-i)!}=\frac{(n-i)!}{(n-k)!(k-i)!}\frac{n!}{(n-i)!}=\binom{n-i}{k-i}n^{\underline{i}} \]

通过这个性质,不妨将 \(n,i\) 视作参数,那么我们成功将变化的 \(k^{\underline{i}}\) 转换成了不变的 \(n^{\underline{i}}\),那么预处理将会容易许多。

更常见的,对于多项式乘组合数的情况,即 \(f(k)\binom{n}{k}\) 的形式,不难考虑到将 \(f(x)=\sum_{i\ge 0}a_ix^i\) 的形式改写成 \(f(x)=\sum_{i\ge 0}b_ix^{\underline{i}}\) 的形式,那么则有

\[\begin{aligned}f(k)\binom{n}{k}&=\binom{n}{k}\sum_{i\ge 0}b_ik^{\underline{i}}\\&=\sum_{i\ge 0}b_ik^{\underline{i}}\binom{n}{k}\\&=\sum_{i\ge 0}b_i\binom{n-i}{k-i}n^{\underline{i}} \end{aligned} \]

于是我们看出来只需要求出 \(b_i\),便能求出整个表达式的值。

于是我们考虑

\[x^n=\sum_{x=1}^{n}\begin{Bmatrix}n\\i\end{Bmatrix}i!\binom{x}{i}=\sum_{x=1}^{n}\begin{Bmatrix}n\\i\end{Bmatrix}x^{\underline{i}} \]

考虑组合意义,即 \(n\) 个不同的球放进 \(x\) 个不同的盒子里,盒子可以为空。那么就是枚举具体放进了多少个盒子,从 \(x\) 个盒子中选出来,将 \(n\) 个球放入有多少方案,接着考虑不同的盒子,因此需要乘上 \(i!\)。

那么有

\[\begin{aligned}f(x)&=\sum_{i\ge 0}a_ix^i\\&=\sum_{i\ge 0}a_i\sum_{j=0}^{i}\begin{Bmatrix}i\\j\end{Bmatrix}x^{\underline{j}}\\&=\sum_{i\ge 0}x_i\sum_{j\ge i}a_j\begin{Bmatrix}i\\j\end{Bmatrix} \end{aligned} \]

所以有 \(b_i=\sum_{j\ge i}a_j\begin{Bmatrix}j\\i\end{Bmatrix}\),预处理第二类斯特林数可以对于 \(n\) 次多项式做到 \(O(n^2)\) 求解。

接着考虑一个推导:求 \(F(x)=\sum_{i\ge 0}\binom{2i}{i}x^i\) 的封闭形式。

首先有一个显然成立的等式

\[x^{\underline{k}}(x-\frac{1}{2})^{\underline{k}}=\frac{(2x)^{\underline{2k}}}{2^{2k}} \]

其实只需要将左边展开后每一项均乘 \(2\) 即可得到。那么就有

\[\begin{aligned}\binom{2n}{n}&=\frac{(2n)^{\underline{n}}}{n!}\\&=\frac{(2n)^{\underline{2n}}}{(n!)^2}\\&=\frac{2^{2n}n^{\underline{n}}(n-\frac{1}{2})^{\underline{n}}}{(n!)^2}\\&=(2^2)^n\frac{(n-\frac{1}{2})^{\underline{n}}}{n!}\\&=4^n\binom{n-\frac{1}{2}}{n}\\&=4^n(-1)^n\binom{n-(n-\frac{1}{2})-1}{n}\\&=(-4)^n\binom{-\frac{1}{2}}{n} \end{aligned} \]

所以

\[\begin{aligned}F(x)&=\sum_{i\ge 0}\binom{2i}{i}x^i\\&=\sum_{i\ge 0}(-4)^i\binom{-\frac{1}{2}}{i}x^i\\&=\sum_{i\ge 0}(-4x)^i\binom{-\frac{1}{2}}{i}\\&=(1-4x)^{-\frac{1}{2}}\\&=\frac{1}{\sqrt{1-4x}} \end{aligned} \]

对于下降幂也有二项式定理

\[(x+y)^{\underline{n}}=\sum_{i=0}^{n}\binom{n}{i}x^{\underline{i}}y^{\underline{n-i}}\\(x+y)^{\overline{n}}=\sum_{i=0}^{n}\binom{n}{i}x^{\overline{i}}y^{\overline{n-i}}\\ \]

考虑证明:

\[\begin{aligned}\sum_{i=0}^{n}\binom{n}{i}x^{\underline{i}}y^{\underline{n-i}}&=\sum_{i=0}^{n}\frac{n!}{i!(n-i)!}x^{\underline{i}}y^{\underline{n-i}}\\&=n!\sum_{i=0}^{n}\binom{x}{i}\binom{y}{n-i}\\&=n!\binom{x+y}{n}\\&=(x+y)^{\underline{n}} \end{aligned} \]

考虑组合意义,\(\binom{x}{i}\binom{y}{n-i}\) 就表示从 \(x+y\) 个中选出 \(n\) 个的方案数。上升幂相关的证明同理。

有限微积分

重定义

在微积分中我们引入了算子 \(D\) 的概念,表示一个无穷小量上的斜率

\[Df(x)=\frac{df(x)}{dx}=\lim_{h\to 0}\frac{f(x+h)-f(x)}{h} \]

此时我们定义另一个算子 \(\Delta\) 表示 \(h=1\) 时的斜率,也就是

\[\Delta f(x)=f(x+1)-f(x) \]

本质上就是差分。

在 \(D\) 算子下,最基本的函数是

\[Dx^m=mx^{m-1} \]

但在 \(\Delta\) 算子下,\((x+1)^m-x^m\),没什么能够化简的地方,于是我们考虑下降幂

\[\Delta x^{\underline{m}}=(x+1)^{\underline{m}}-x^{\underline{m}}=mx^{\underline{m-1}} \]

我们发现这和上面的形式一样。

接着考虑无限微积分上定义积分

\[g(x)=Df(x)\Leftrightarrow\int g(x)dx=f(x)+C \]

类似的,我们也可以定义

\[g(x)=\Delta f(x)\Leftrightarrow\sum g(x)\delta x=f(x)+C \]

这个 \(C\) 只需要满足在差分后能够消掉,即周期为 \(1\) 的函数。

类似定义定积分

\[\int_{a}^{b}g(x)dx=f(x)\mid_{a}^{b}=f(b)-f(a)\\ \sum_{a}^{b}g(x)\delta x=f(x)\mid_{a}^{b}=f(b)-f(a)=\sum_{i=a}^{b-1}g(i) \]

根据定积分的性质,同样的,定义

\[\sum_{a}^{b}g(x)\delta x=-\sum_{b}^{a}g(x)\delta x\\ \sum_{a}^{b}g(x)\delta x+\sum_{b}^{c}g(x)\delta x=\sum_{a}^{c}g(x)\delta x \]

函数的对应关系

对 \(x^{\underline{m}}\) 进行积分,得

\[\sum_{i=0}^{n-1}i^{\underline{m}}=\frac{i^{\underline{m+1}}}{m+1}\mid_{0}^{n}=\frac{n^{\underline{m+1}}}{m+1} \]

可惜当 \(m=-1\) 时无法使用,于是当 \(m=-1\) 时我们暴力展开,有

\[\sum_{i=0}^{n-1}i^{\underline{m}}=\sum_{i=1}^{n}\frac{1}{i}=H_n \]

所以我们知道

\[\sum x^{\underline{m}}\delta x=\left\{\begin{matrix}\frac{x^{\underline{m+1}}}{m+1}+C&m\ne 1\\H_x+C&m=1\end{matrix} \right . \]

联想到 \(\int x^{-1}dx=\ln x+C\),于是我们找到了能和 \(\ln x\) 相互对应的函数 \(H_x=\sum_{i=1}^{x}\frac{1}{i}\)。

考虑无限微积分中的 \(De^x=e^x\),找到一个类似的函数,不难发现 \(\Delta2^x=2^x\)。考虑对于所有 \(a^x\) 的差分和逆差分,有

\[\Delta f(x)=a^{x+1}-a^x=(a-1)a^x\\ \sum f(x)\delta x=\frac{a^x}{a-1} \]

更进一步,令 \(\Delta_k f(x)=f(x+k)-f(x)\),同样试图找到一个函数 \(a^x\),满足 \(e^x\) 的性质,于是有

\[\begin{aligned}&\frac{a^{x+k}-a^x}{k}=a^x\\\Rightarrow&a^k-1=k\\\Rightarrow&a=\sqrt[k]{k+1}\end{aligned} \]

那么当 \(\lim_{k\to 0}\),有

\[e=\lim_{k\to 0}(k+1)^{\frac{1}{k}}=\lim_{n\to\infin}(1+\frac{1}{n})^n \]

运算法则

显然有 \(\Delta(f+g)=\Delta f+\Delta g,\Delta(cg)=c\Delta g\),\(c\) 是常数。

接着考虑乘法运算,则有

\[\begin{aligned}\Delta(f(x)g(x))&=f(x+1)g(x+1)-f(x)g(x)\\&=f(x+1)g(x+1)-f(x+1)g(x)-f(x)g(x)+f(x+1)g(x)\\&=f(x+1)\Delta g(x)+g(x)\Delta f(x) \end{aligned} \]

定义位移算子 \(E(f(x))\) 表示 \(f(x+1)\),则有

\[\Delta fg=Ef\Delta g+g\Delta f \]

对两边同时逆差分后可以得到

\[\sum g\Delta f=fg-\sum Ef\Delta g \]

考虑利用有限微积分计算的具体的问题。

  1. 求 \(\sum_{k=0}^{n-1}k^2\)。

    将 \(k^2\) 拆成 \(k^{\underline{2}}+k^{\underline{1}}\),那么因为 \(\sum_{i=0}^{n-1}i^{\underline{m}}=\frac{n^{\underline{m+1}}}{m+1}\) 可以得到

    \[\begin{aligned}\sum_{k=0}^{n-1}k^2&=sum_{k=0}^{n-1}(k^{\underline{2}}+k^{\underline{1}})\\&=\sum_{k=0}^{n-1}k^{\underline{2}}+\sum_{k=0}^{n-1}k^{\underline{1}}\\&=\frac{n^{\underline{3}}}{3}+\frac{n^{\underline{2}}}{2}\end{aligned} \]

    展开后化简可以得到我们日常使用的公式

    \[\sum_{k=0}^{n-1}k^2=\frac{n(n-1)(2n-1)}{6} \]

    事实上,通过斯特林数,很多时候一般幂和下降幂间转化。

  2. 求 \(\sum_{k=0}^{n}k2^k\)。

    我们想利用上面的公式,不妨令 \(\Delta f(x)=2^x,g(x)=x\),则有 \(f(x)=2^x,\Delta g(x)=1\)。那么所求即为 \(\sum_{i=0}^{n}g(k)\Delta f(k)=\sum_{i=0}^{n+1}g(k)\Delta f(k)\delta k\)。

    定义 \(F(k)=\sum g(k)\Delta f(k)\delta k\),则所求即为 \(F(k)\mid_{0}^{n+1}\),于是考虑计算 \(F(k)\),有

    \[\begin{aligned}F(k)&=\sum g(k)\Delta f(k)\delta k\\&=f(k)g(k)-\sum E(f(k))\Delta g(k)\delta k\\&=k2^k-\sum 2^{k+1}\delta k\\&=k2^k-2^{k+1}\end{aligned} \]

    所以

    \[\begin{aligned}F(k)\mid_{0}^{n+1}&=F(n+1)-F(0)\\&=((n+1)2^{n+1}-2^{n+2})-(02^0-2^{1})\\&=(n-1)2^{n+1}+2 \end{aligned} \]

    \[\sum_{k=0}^{n}k2^k=(n-1)2^{n+1}+2 \]

  3. 求 \(\sum_{i=0}^{n-1}H_i\)。

    依旧考虑相同的思路,但是不难发现我们难以对 \(H_x\) 进行逆差分,但是我们知道 \(H_x\) 的差分,于是应该令 \(\Delta f(x)=1,g(x)=H_x\),则有 \(f(x)=x,\Delta g(x)=x^{\underline{-1}}\)。那么所求即为 \(\sum_{i=0}^{n-1}g(i)\Delta f(i)=\sum_{i=0}^{n}g(i)\Delta f(i)\delta i\)。定义 \(F(i)=\sum g(i)\Delta f(i)\delta i\),则所求即为 \(F(i)\mid_{0}^{n}\),考虑计算 \(F(i)\),有

    \[\begin{aligned}F(i)&=\sum g(i)\Delta f(i)\delta i\\&=f(i)g(i)-\sum E(f(i))\Delta g(i)\delta i\\&=iH_i-\sum (i+1)i^{\underline{-1}}\delta i\\&=iH_i-i \end{aligned} \]

    于是

    \[\begin{aligned}F(i)\mid_{0}^{n}&=F(n)-F(0)\\&=(nH_n-n)-(0H_0-0)\\&=nH_n-n \end{aligned} \]

    \[\sum_{i=0}^{n-1}H_i=nH_n-n \]

  4. 求 \(\sum_{i=0}^{n-1}kH_k\)。

    事实上,根据前面的思路,这没有什么难的。

    令 \(\Delta f(x)=x=x^{\underline{1}},g(x)=H_x\),则 \(f(x)=\frac{x^{\underline{2}}}{2},\Delta g(x)=x^{\underline{-1}}\)。则所求即为 \(\sum_{i=0}^{n-1}g(i)\Delta f(i)=\sum_{i=0}^{n}g(i)\Delta f(i)\delta i\)。定义 \(F(i)=\sum g(i)\Delta f(i)\delta i\),则所求即为 \(F(i)\mid_{0}^{n}\),考虑计算 \(F(i)\),有

    \[\begin{aligned}F(i)&=\sum g(i)\Delta f(i)\delta i\\&=f(i)g(i)-\sum E(f(i))\Delta g(i)\delta i\\&=\frac{i^{\underline{2}}H_i}{2}-\sum\frac{(i+1)^{\underline{2}}}{2}i^{\underline{-1}}\delta i\\&=\frac{i^{\underline{2}}H_i}{2}-\sum \frac{i^{\underline{1}}}{2}\delta i\\&=\frac{i^{\underline{2}}H_i}{2}-\frac{i^{\underline{2}}}{4}\\&=\frac{i^{\underline{2}}(2H_i-1)}{4} \end{aligned} \]

    \[\begin{aligned}F(i)\mid_{0}^{n}&=F(n)-F(0)\\&=\frac{n^{\underline{2}}(2H_n-1)}{4}-\frac{0^{\underline{2}}(2H_0-1)}{4}\\&=\frac{n^{\underline{2}}(2H_n-1)}{4} \end{aligned} \]

    化成正常形式可以得到

    \[\sum_{i=0}^{n-1}kH_k=\frac{n(n-1)(2H_n-1)}{4} \]

标签:frac,sum,下降,学习,笔记,Delta,binom,aligned,underline
From: https://www.cnblogs.com/DycBlog/p/18292766

相关文章

  • 比赛获奖的武林秘籍:05 电子计算机类比赛国奖队伍技术如何分工和学习内容
    比赛获奖的武林秘籍:05电子计算机类比赛国奖队伍技术如何分工和学习内容摘要本文主要介绍了在电子计算机类比赛中技术层面上的团队分工和需要学习的内容,分为了嵌入式硬件、嵌入式软件、视觉图像处理、机械、上位机软件开发和数据分析等六个方向,并结合自身经历给出相关建议。正......
  • 学习老算法,争做老东西
    目录DancingLinksDancingLinks考虑这样一个问题:给定一个\(N\)行\(M\)列的矩阵,矩阵中每个元素要么是\(1\),要么是\(0\)。你需要在矩阵中挑选出若干行,使得对于矩阵的每一列\(j\),在你挑选的这些行中,有且仅有一行的第\(j\)个元素为\(1\)。这类问题统称为精确覆盖问......
  • 根本听不懂的也看不懂的上课笔记
    https://qoj.ac/problem/8008不难发现,随机到某些位置,之后最短路先O(nm)预处理出能到的点,考虑最小的随机位置CF741C考虑二分图染色,对于每一对情侣,相互连边,相邻的2i和2i-1也连边,都代表颜色不同,CF1656G限制是只有一个环,先随便造一个回文排列现有一个排列p如果i,j处在同一......
  • 设计模式学习(二)工厂模式——抽象工厂模式+注册表
    目录前言使用简单工厂改进使用注册表改进参考文章前言在上一篇文章中我们提到了抽象工厂模式初版代码的一些缺点:①客户端违反开闭原则②提供方违反开闭原则。本文将针对这两点进行讨论使用简单工厂改进对于缺点①,我们可以使用简单工厂的思路来改进抽象工厂的初版代码。对于上......
  • 信创学习笔记(二),信创之CPU芯片架构思维导图
    创作不易只因热爱!!热衷分享,一起成长!“你的鼓励就是我努力付出的动力”各架构,操作系统,指令,代表生产商,服务器使用产品主要供应商......
  • 信创学习笔记(一),信创内容思维导图
    创作不易只因热爱!!热衷分享,一起成长!“你的鼓励就是我努力付出的动力”用一张图归纳学习信创内容信创内容思维导图......
  • 昇思25天学习打卡营第11天|基于MindSpore的GPT2文本摘要
    数据集准备nlpcc2017摘要数据,内容为新闻正文及其摘要,总计50000个样本。数据需要预处理,如下原始数据格式:article:[CLS]article_context[SEP]summary:[CLS]summary_context[SEP]预处理后的数据格式:[CLS]article_context[SEP]summary_context[SEP]代码示......
  • 快速傅里叶变换复习笔记
    .real()成员函数FFT的本质是快速计算多项式的点值表示对负实数的四舍五入需要-0.5编写函数接收数组地址时,注意不能破坏原数组FFT有较为严重的精度问题,double甚至难以准确计算两个\(10^9\)级别的整数相乘的结果,即使采用longdouble也时常无法得到准确的答案,这或许也是模板题中......
  • Bullet 学习笔记之 软体仿真流程(二) 软体碰撞检测与响应
    简述Bullet中软体的碰撞检测与响应算法,仅针对Soft类型,Deformable类型不包含在这篇文章中。1.软体碰撞检测在BulletPhysics中,软体的碰撞检测采用的是“点-面”的方法,即分别用两个软体的m_ndbvt和m_fdbvt做碰撞检测,两个bvh树之间的遍历方法不在此展开,当Node......
  • 文案板块:5分钟掌握批量创作100条小红书爆款笔记文案(机器人实操训练)
    引言在数字营销的世界里,内容为王。但如何在短时间内制作出大量高质量的内容,以吸引并保持受众的注意力呢?作为普通人,你要有结果,你除非有非常过人的内容制作能力,不然就是批量化,否则大概率很难有办法突破短时间内的流量爆发。这种搞流量的方法确实也适合小白,因为基本上都是重复......