2.3 和式的处理
和式处理的目标是将一个求和表达式 ∑ 变换为另一个更简单或更接近目标的形式。
2.3.1 三大法则
设 K 是任意一个有限整数集合,则对 K 中元素的和式可以应用以下三条基本法则进行变换。
(1) 分配律
k∈K∑cak=ck∈K∑ak(2.15)
其中 c 为常数。该法则允许我们将常数因子移入或移出求和号。
(2) 结合律
k∈K∑(ak+bk)=k∈K∑ak+k∈K∑bk
此法则允许我们将一个和式拆分为两个和式的和,或将两个和式合并为一个。
(3) 交换律
k∈K∑ak=p(k)∈K∑ap(k)(2.17)
其中 p(k) 是所有整数的一个排列(permutation),即对于每个整数 n,恰好存在唯一的整数 k 使得 p(k)=n。
这一法则允许我们重新排列求和项的顺序。例如,若 K={−1,0,+1} 且 p(k)=−k,则有:
a−1+a0+a1=a1+a0+a−1
值得注意的是,交换律成立的前提是 p(k) 为双射。否则,变换可能不成立。
[!NOTE]
双射(bijection)是指一个函数同时满足单射(injective)和满射(surjective)的性质,即在定义域和值域之间建立一一对应关系。具体来说:
- 单射:不同的输入对应不同的输出,即若 x1=x2,则 f(x1)=f(x2)。
- 满射:值域中的每一个元素都有至少一个原像,即对任意 y,存在 x 使得 f(x)=y。
当一个函数是双射时,它可逆,且每个元素恰好被映射一次。
在和式的变换中,交换律
k∈K∑ak=p(k)∈K∑ap(k)
要求 p(k) 是一个排列,即整数集合上的双射。只有在这种情况下,重排求和顺序才不会改变和式的值。
下面给出两个案例,分别说明满足与不满足双射条件的情形。
案例一:满足双射的情形
设 K={0,1,2},定义变换 p(k)=2−k,即:
- p(0)=2
- p(1)=1
- p(2)=0
该映射将集合 K 映射到自身,且每个元素恰好出现一次。它是单射(无重复映射)且满射(覆盖所有元素),因此是双射。
于是可以安全使用交换律:
k∈{0,1,2}∑ak=a0+a1+a2=a2+a1+a0=k∈{0,1,2}∑a2−k
这说明在双射条件下,和式可以自由重排。
案例二:不满足双射的情形
设 K={−1,0,1},定义变换 p(k)=k2,即:
- p(−1)=1
- p(0)=0
- p(1)=1
此时有:
- p(−1)=p(1)=1,说明不是单射(两个不同输入映射到同一输出)
- 值域为 {0,1},而 −1 在值域中没有原像(若考虑反向映射),但更重要的是原映射存在重复
因此 p(k)=k2 不是双射。
若强行代入和式变换:
k∈{−1,0,1}∑ak=a−1+a0+a1
而
p(k)∈{−1,0,1}∑ap(k)=k2∈{−1,0,1}∑ak2
由于 k2 只能取 0 或 1,且 k=−1 和 k=1 都对应 a1,所以实际计算为:
a(−1)2+a02+a12=a1+a0+a1=a0+2a1
结果与原和式不同,说明变换破坏了和式的值。
因此,当 p(k) 不是双射时,交换律不成立。
综上,在和式变换中使用交换律时,必须确保变换函数 p(k) 在相关指标集上构成双射,否则可能导致错误结果。
三大法则的应用
高斯计算 1+2+⋯+n 的技巧,本质上是分配律、结合律与交换律的综合应用。
考虑一般等差级数的和:
S=0≤k≤n∑(a+bk)(2.18)
步骤1:应用交换律(倒序求和)
令 k′=n−k,这是整数集上的一个排列(对称变换),因此可应用交换律:
S=0≤k≤n∑(a+bk)=0≤n−k≤n∑(a+b(n−k))
由于 0≤n−k≤n 当且仅当 0≤k≤n,所以:
S=0≤k≤n∑(a+bn−bk)
步骤2:应用结合律(两式相加)
将原式与倒序式相加:
2S=0≤k≤n∑[(a+bk)+(a+bn−bk)]=0≤k≤n∑(2a+bn)
注意到 bk 与 −bk 抵消,得到常数项和。
步骤3:应用分配律(提取常数)
2S=(2a+bn)0≤k≤n∑1=(2a+bn)(n+1)
两边除以 2:
S=2(2a+bn)(n+1)=(a+21bn)(n+1)
即:
k=0∑n(a+bk)=(a+21bn)(n+1)(2.18)
解释:平均值 × 项数
- 首项:a+b⋅0=a
- 末项:a+b⋅n=a+bn
- 平均值:21(a+(a+bn))=a+21bn
- 项数:n+1
因此,和 = (首项 + 末项)/ 2 × 项数,这正是等差数列求和公式的标准形式。
关键点:高斯技巧的本质是利用交换律进行变量替换(倒序),再用结合律将两个和式相加,最后用分配律提取常数,从而将非常数和转化为常数和。
[!NOTE]
等差数列求和公式
设等差数列的首项为 a,公差为 d,项数为 n+1(从第 0 项到第 n 项),则其和为:
k=0∑n(a+kd)=(a+21dn)(n+1)
等价地,若记:
- 首项:a1=a
- 末项:an+1=a+nd
- 项数:n+1
则标准求和公式为:
k=0∑n(a+kd)=2(首项+末项)×项数=2(a+(a+nd))⋅(n+1)
即:
S=2(a1+an+1)⋅(n+1)
这是等差数列求和的通用公式。
同时等价的表述形式为:
设等差数列的:
- 首项为 a1
- 公差为 d
- 项数为 n
则前 n 项和 Sn 可表示为:
Sn=k=1∑nak=2n(a1+an)=na1+2n(n−1)d
其中,第n项(末项)为:
an=a1+(n−1)d
条件的放宽
实际上,我们只需保证:当 n∈K 时,恰好存在一个整数 k 使得 p(k)=n。对于 n∈/K 的情形,无论 p(k)=n 出现多少次,都不影响和式的值,因为这些项不在原求和范围内。
例如,由于对每个偶数 n∈K,存在唯一的 k 使得 2k=n,因此有:
k∈K∑ak=2k∈K∑a2k(2.19)
2.3.2 艾弗森约定的引入
引入艾弗森括号(Iverson bracket):
[P]={1,0,若命题 P 成立否则
利用该约定,任意和式可写为:
k∈K∑ak=k∑ak[k∈K](2.21)
这种统一表示法便于结合逻辑运算处理指标集。
2.3.3 集合合并法则
若 K 和 K′ 是任意整数集合,则有:
k∈K∑ak+k∈K′∑ak=k∈K∩K′∑ak+k∈K∪K′∑ak(2.20)
此式由以下逻辑恒等式推出:
k∈K∑ak=k∑ak[k∈K](2.21)
[k∈K]+[k∈K′]=[k∈K∩K′]+[k∈K∪K′](2.22)
[!NOTE]
k∈K∑ak+k∈K′∑ak=k∈K∩K′∑ak+k∈K∪K′∑ak
为何不重合?
- 左边:交集 K∩K′ 中的项被加 两次。
- 右边:并集 K∪K′ 加一次,交集 K∩K′ 额外再加一次 → 交集项也共加 两次。
- 所有其他项都只加一次。
该公式不是避免重复,而是精确反映重复结构。
利用艾弗森记号:
[k∈K]+[k∈K′]=[k∈K∩K′]+[k∈K∪K′]
对所有 k 成立,逐项相等,求和后仍相等。
应用
-
几乎不相交的和式合并
当 1≤m≤n 时:
k=1∑mak+k=m∑nak=am+k=1∑nak
-
分离首项
当 n≥0 时:
0≤k≤n∑ak=a0+1≤k≤n∑ak(2.23)
这类操作是扰动法的基础。
2.3.4 扰动法
扰动法是一种通过建立递推关系来求解和式的方法。
设未知和式为:
Sn=0≤k≤n∑ak
考虑 Sn+1 的两种展开方式:
Sn+an+1=0≤k≤n+1∑ak=a0+1≤k≤n+1∑ak
对右边的和式做变量替换 k→k+1,得:
a0+1≤k+1≤n+1∑ak+1=a0+0≤k≤n∑ak+1(2.24)
于是得到方程:
Sn+an+1=a0+0≤k≤n∑ak+1
若能将右边的和式用 Sn 表示,则可通过解方程求出 Sn。
应用一:几何级数求和
考虑一般几何级数:
Sn=0≤k≤n∑axk
应用扰动法:
Sn+axn+1=a+0≤k≤n∑axk+1=a+x0≤k≤n∑axk=a+xSn
整理得:
Sn(1−x)=a−axn+1
因此,当 x=1 时:
k=0∑naxk=1−xa−axn+1(2.25)
当 x=1 时,和式为 (n+1)a。
应用二:∑k2k
设:
Sn=0≤k≤n∑k2k
已知前几项:S0=0, S1=2, S2=10, S3=34, S4=98。
应用扰动法:
Sn+(n+1)2n+1=0≤k≤n∑(k+1)2k+1=0≤k≤n∑k⋅2k+1+0≤k≤n∑2k+1
第一项:
0≤k≤n∑k⋅2k+1=20≤k≤n∑k2k=2Sn
第二项为几何级数:
0≤k≤n∑2k+1=20≤k≤n∑2k=2⋅2−12n+1−1=2n+2−2
代入得:
Sn+(n+1)2n+1=2Sn+2n+2−2
解得:
Sn=(n+1)2n+1−2n+2+2=(n−1)2n+1+2
即:
0≤k≤n∑k2k=(n−1)2n+1+2
推广至一般底数 x
类似地,设 Sn=∑k=0nkxk,扰动后得:
Sn+(n+1)xn+1=xSn+1−xx−xn+2,x=1
解得:
k=0∑nkxk=(1−x)2x−(n+1)xn+1+nxn+2(2.26)
2.3.5 微积分方法计算
从几何级数出发:
k=0∑nxk=1−x1−xn+1,x=1
两边对 x 求导(利用"和的导数等于导数的和"):
k=0∑nkxk−1=dxd(1−x1−xn+1)=(1−x)21−(n+1)xn+nxn+1
两边乘以 x 得:
k=0∑nkxk=(1−x)2x−(n+1)xn+1+nxn+2(2.26)
结果与扰动法一致。