北京航空航天大学计算机学院 具体数学 Concrete Mathematics 赵启阳 2015年10月31日星期六 2.4 多重和 Multiple Sums 2015/10/31 多重和的表示方法 • 一个和的项可能是由两个或多个指标来确定, 而不仅仅是由一个指标来确定。例如 a b 1 j ,k 3 j k  a1b1  a1b2  a1b3  a2b1  a2b2 

Download Report

Transcript 北京航空航天大学计算机学院 具体数学 Concrete Mathematics 赵启阳 2015年10月31日星期六 2.4 多重和 Multiple Sums 2015/10/31 多重和的表示方法 • 一个和的项可能是由两个或多个指标来确定, 而不仅仅是由一个指标来确定。例如 a b 1 j ,k 3 j k  a1b1  a1b2  a1b3  a2b1  a2b2 

北京航空航天大学计算机学院
具体数学
Concrete Mathematics
赵启阳
2015年10月31日星期六
2.4 多重和
Multiple Sums
2015/10/31
2
多重和的表示方法
• 一个和的项可能是由两个或多个指标来确定,
而不仅仅是由一个指标来确定。例如
a b
1 j ,k 3
j k
 a1b1  a1b2  a1b3  a2b1  a2b2  a2b3  a3b1  a3b2  a3b3
• 对于一般的多指标求和情形,有两种表达方法:
• 1:利用“Iverson约定”对所有整数对j和k求和
a
P ( j ,k )
j ,k
  a j ,k [ P( j, k )]
j ,k
• 2:如果想表现出求和过程是有次序、逐步地,
就采用多个∑,如:
2015/10/31


a j ,k [ P( j, k )]     a j ,k [ P( j, k )]

j
k
j  k

3
求和次序的交换
• 具有多个指标的求和式可从任一指标开始求和。
作为交换律和结合律的推广形式,可以在多指标
求和中使用“交换求和次序”的基本法则:
 a
j
k
j ,k
[ P( j, k )] 
a
P ( j ,k )
j ,k
  a j ,k [ P( j, k )]
k
j
• 从任一指标开始求和得到的结果是一致的。但是
一般来说,从不同的指标入手,计算难度是不一
样的。实际计算中往往选择从较简单的指标入手。
2015/10/31
4
求和次序交换的例子
a b
1 j , k  3
j k
  a j bk [1  j , k  3]
(a1b1  a1b2  a1b3 ) 
j ,k
(a2b1  a2b2  a2b3 ) 
  a j bk [1  j  3][1  k  3]
(a3b1  a3b2  a3b3 )
j ,k
  a j bk [1  j  3][1  k  3]
j
a1 (b1  b2  b3 ) 
k
  a j [1  j  3] bk [1  k  3]
j
a2 (b1  b2  b3 ) 
k
a3 (b1  b2  b3 )


  a j [1  j  3]  bk [1  k  3] 
j
 k






   a j [1  j  3]   bk [1  k  3] 

 j
 k
 3
 3 
   a j   bk 
 1
 1 
2015/10/31
(a1  a2  a3 )(b1  b2  b3 )
推广:一般分配律
5
交换求和次序中的两种情形
• 1:vanilla—香草冰激凌—绵软
 a   a   a
jJ kK
j ,k
jJ
kK
j ,k
kK jJ
j ,k
• 适用人群:被加项的下标之间独立
• 2:rocky-road—石板街冰激凌—层次
  a j ,k    a j,k
jJ kK ( j )
kK jJ ( j )
• 适用人群:内层下标范围取决于外层
• 额外条件:j, k,  j  J k  K ( j)  k  K  j  J (k )
2015/10/31
6
“Rocky road冰激凌”的例子
• 对下面的两重for循环,如果更换循环的顺
序,应该怎么写?
int s = 0;
for (unsigned int j = 1; j < n + 1; j ++) {
for (unsigned int k = j; k < n + 1; k ++) {
s += a[j][k];
}
}
2015/10/31
7
“Rocky road冰激凌”的例子
n
n
• 前面的代码相当于计算  a
• 在Iverson约定下考察如何变换循环的
顺序:
1  j  n j  k  n  1  j  k  n  1  k  n1  j  k 
j 1 k  j
n
n
n
k
j ,k
• 因此有  a   a   a
• 一般来说,从j或k开始求和的难度是不
同的。往往选择从容易的下标开始。
j 1 k  j
2015/10/31
j ,k
1 j  k  n
j ,k
8
k 1 j 1
j ,k
“Rocky road冰激凌”的例子
• 考虑具有n2个乘积aj ak的阵列
 a1a1

 a2 a1
a a
 3 1
 
a a
 n 1
a1a2
a1a3
a2 a2
a3 a2
a2 a3
a3 a3
an a2
an a3
 a1an 

 a2 an 
 a3 an 


 
 an an 
• 目标是计算所有上三角元素之和,即
S 
2015/10/31
a a
1 j  k  n
9
j k
“Rocky road冰激凌”的例子
• 容易看出,该矩阵是对称的。因此 S 应该
大约等于矩阵所有元素之和的一半:
S 
• 由于
a a
1 j k n

j k
a a
1k  j n
k
j
a a

1k  j n
j k
 S
1  j  k  n 1  k  j  n  1  j, k  n 1  j  k  n
• 因此
2S  S  S 
2015/10/31
1 j ,k n
j k

n
j 1
j
n
1 j  k  nj
j 1
k 1
j2 k
10
k
a a
1 j k n
 a   a 1  
 a a  a
2  
  a 
n
S
a a
n
k 1
j k
n  2
n

a
2j 

1 j

a


k
k
 k 1 
2
另外一个例子
• 目标是计算
S
 a
1 j k n
k
 a j bk  b j 
• 注意到j和k的对称性,可以写成
S
 a
1k  j n
j
 ak b j  bk  
 a
1k  j n
k
 a j bk  b j 
• 而且,在Iverson约定下有
1  j  k  n 1  k  j  n  1  j, k  n 1  j  k  n
2015/10/31
11
另外一个例子
• 因此将S的两个表达式相加,得到
2S 
 a
1 j ,k n
j
 ak b j  bk  
 a
1 j k n
j
 ak b j  bk 
• 显然第2项为0。对于第1项,可以展成4项:
a b
1 j , k  n
?
2015/10/31
 2
j
j

1 j , k  n
a b
1 j , k  n
 2n 
a b
k k
a b
1 k  n
k k
j k
 2

a b
1 j , k  n
k
j

a b
1 j , k  n
a b
j k
k k
消去一个下标,就



 2   要增加一个因子
a   b 




1 j , k  n
n
k 1
12
n
k
k 1
k
Chebyshev单调不等式
• 因此得到 
n
 n 
  ak   bk   n   ak bk   ak  a j bk  b j 
k 1
1 j  k  n
 k 1  k 1 
n
• 如果有 a1    an , b1    bn ,则有
Chebyshev不等式
n
 n
 n 
  ak   bk   n   ak bk
k 1
 k 1  k 1 
   bn ,则有
• 如果有 a1    an , b1 彼得堡学派创始人
n
 n
 n 
  ak   bk   n   ak bk
k 1
 k 1  k 1 
1821—1894
2015/10/31
13
多重和与单一和的联系
• 对于单一求和中改变求和指标的一般操作,
可以用多重求和来证明其正确性:


1
1
a

a
#
f
(
k
)
,
这里
f
(k )  { j f ( j )  k}.
 f ( j)  k
jJ
kK
• 简略推导过程:
a
jJ
f ( j)
  ak [ f ( j )  k ]
jJ
kK


   ak  [ f ( j )  k ]    ak # f 1 (k )
kK 
jJ
 kK

2015/10/31
14

一个多重和的concrete example
1
• 目标是计算 Sn  
1 j  k  n k  j
• 先尝试从j开始:
先对j求和 S n 
1


1 k  n 1 j  k k  j
用k-j替换j
1


1 k  n 1 k  j  k j
简化j的上下界
这里记H0 = 0 使用调和数记号

1
  
1 k  n 1 j  k 1 j

H
1 k  n
用k+1替换k

H
1 k 1 n
简化k的上下界
2015/10/31
15

k 1
H
0 k  n
k
k
一个多重和的concrete example
• 再尝试从k开始:
先对k求和 S n 
1
 
1 j  n j  k  n k  j
用k+j替换k
1
  
1 j  n j  k  j  n k
简化k的上下界
1
  
1 j  n 0  k  n  j k
这里记H0 = 0 使用调和数记号

H
1 j  n
用n-j替换j

n j
H
1 n  j  n
简化j的上下界

H
0 j  n
2015/10/31
16
j
j
结果和
方法1一致
一个多重和的concrete example
• 第三种方法:
• 在将Sn表达成多
重和之前,用k+j
替换k。
计算目标
用k+j替换k
先在j上求和
算出j上的和

很容易
采用调和数记号
17
1

1 j  k  n k  j
1
 
1 j  k  j  n k

使用结合律
2015/10/31
Sn 
1


1 k  n 1 j  n  k k
nk
 k
1 k  n
n
   1
1 k  n k
1 k  n
1

 n     n
 1 k  n k 
 n  Hn  n
一个多重和的concrete example
• 综合前面的三种不同方法,可以得到
H
0k n
n
n  H n  n
• 从代数、几何两种角度总结三种方法中的经验:
• 代数:如果在被加项中有k+f(j)之类的表达式,可
以将k替换成k-f(j),然后在j上求和;
k 1 k  2 k  3 k  4
• 几何:
j 1
1

1
j2
j 3
2015/10/31
j4
18
1

2
1

1
1
3
1
2
1
1
2.5 General Methods
常用求和方法列举
2015/10/31
19
2.5 常用求和方法
• 在掌握了求和的记号、求和与递归的关系,
以及多重求和的有关技巧之后,对常见的
求和方法做一个简明的列举和介绍。通过
具体问题展开介绍:
• 计算目标:求前n个平方和的封闭形式解。
在解未知之前,将其记做□n
k
0 k  n
2015/10/31
20
2
方法0~1
• 方法0(查找书籍):
n(n  1)( 2n  1)
去书里面查找到答案为
。注:(1)
6
知道去找什么书往往并不容易,也需要积累;
(2) 计算机科学或者数学自身内部也有很多方
向,而且基本上是“隔行如隔山”,我们很难
成为全能选手,所以快速、准确地找到需要的
工具和结论是非常重要的,也是研究和开发工
作中的关键本领。
1
• 方法1(猜测证明):
n(n  )(n  2)
2
Guess—Prove。首先猜出
再用数
3
学归纳法证明。
2015/10/31
21
方法0~1
• 尽管方法0和方法1是常用的基本数学
工具,但并不是CM的主旨和主推方法。
• 我们的目标是,在下面的条件下,计
算出正确的结果:
• 1、没有现成结论或参考资料;
• 2、没有灵光一现地猜出结论。
• 所以继续看后面的方法>>>>>>>>>>>>>
2015/10/31
22
方法2
• 方法2(摄动求和):
• 回顾摄动求和方法,要将□n + 1表示含有□n的
多个表达式,然后联立方程求解得到□n 。
• 先抽出□n + 1的第一项,得到:
□n + 1 = 1 + (1 + 1)2 + … + (n + 1)2
= 1 + (12 + … + n2) + 2(1 + … + n) + n
= 1 + □n + 2(1 + … + n) + n
• 再抽出□n + 1的最末项,得到:
□n + 1 = □n + (n + 1)2
• 联立两个方程……???!!!......□n消失了!
2015/10/31
23
方法2
• 方法2(摄动求和):
• 但是前面的摄动法并非一无所获,尽管方
程联立后平方和项消失了,但是容易得到
2(1 + 2 + … + n) = (n + 1)2 – n – 1
• 换言之,通过对平方求和的摄动,意外地
得到了整数求和的封闭解(出现了次数的
降低!)。那么要求平方和的封闭解,是
否需要对立方求和进行摄动呢?
2015/10/31
24
方法2
• OK,抽出前n + 1个正整数立方求和Cn+1的第1项:
Cn+1 = 13 + 23 + … + (n + 1)3
= 1 + (1 + 1)3 + … + (n + 1)3
= 1 + (13 + 3·12 + 3·11 + 1) + … + [n3 + 3n2 + 3n + 1]
= 1 + (13 + … + n3) + 3(12 + … + n2) + 3(1 + …+ n) + n
= 1 + Cn + □n + 3(1 + … + n) + n
• 然后,抽出前n+1个正整数立方求和Cn+1的第末项:
Cn+1 = Cn + (n + 1)3 = Cn + n3 + 3n2 + 3n + 1
• 联立方程,得到
1 + Cn + □n + 3(1 + … + n) + n = Cn + n3 + 3n2 + 3n + 1
• 很容易解出□n = n3 + 3n2 + 3n + 1 – [3(1 +…+ n) + n + 1]
2015/10/31
25
方法3
• 方法3(清单求和):
• 对递归方程
R0 = α;
Rn = Rn-1 + β + γn + δn2
• 猜想封闭形式解为
Rn = A(n)α + B(n)β + C(n)γ + D(n)δ
• 令δ = 0,可以很容易地解出A、B和C的表达式。
然后在(α, β, γ, δ) = (0, 1, -3, 3)上求得Rn = n3,因
此有D(n) = (n3 + 3C(n) - B(n)) / 3。
• 最后令(α, β, γ, δ) = (0, 0, 0, 1),即可求得□n 。
2015/10/31
26
方法4
• 方法4(积分替换):
• 注意到,积分在实质上是离散求和的连续
化(应该限定为黎曼积分,而不是勒贝格
积分)。因此,尝试用积分中的一些技巧
来解决求和问题。
3
n
n
• 首先计算平方求和的积分版本:0 x 2 dx  3
• 因此可以认为平方求和的结果近似等于n3/3。
2015/10/31
27
方法4
• 方法4(积分替换):
• 下面考察近似结果与精确结果间的误差En :
En = □n – n3/3 = □n-1 + n2 – n3/3
= En-1 + (n-1)3/3 + n2 – n3/3
= En-1 + n – 1/3
• 同时可以得到E0 = 0。根据此递归方程,可
以解出En = (1 + … + n) – n/3,并进而得到□n
的精确解。
2015/10/31
28
方法4
• 方法4(积分替换):
• 对于En的计算,还可直接从积分的概念入手:
3
2
n


k

(
k

1
)
1

2
2


2
    k  
En    k   x dx    k 
k

1
 k 1 
3
3
k 1 
 k 1 
n
k
n
• 同样可以得到En = (1 + … + n) – n/3,并进而
得到□n的精确解。
2015/10/31
29
方法5
• 方法5(扩展收缩):
• 使用多重求和。使用形式上更复杂的多重
求和来表达原求和问题。在多重求和下,
对容易计算的和进行化简,将其转化成类
似摄动法的方程求解问题。
[]   k   k    k
2
n
1 k  n
1 j  k  n
1 j  n j  k  n
 jn
 1
2



n

j

1

    n(n  1)  j  j

2
 2 1 j  n
1 j  n 
1
1 1
1
  n  n(n  1)    n(n  1)   []n
2
2 2
2


2015/10/31
30

方法6~7
• 方法6(有限和分):下一节讲解的主要内
容。与前面的几种方法不同,方法6是以前
很少接触到、比较陌生的一种方法,该方
法具有较为系统的演算法则和规律,是解
求和问题的新工具,值得掌握和熟悉。
• 方法7(母函数法):留作课外学习。
2015/10/31
31
3rd Homework
• 练习题(不必上交)
2.19、2.20、2.21、2.22
• 作业(可见课程网站,请用英文解答)
Please find the closed form for the sum of the first n positive integers
to the 5th power (or, the first n positive integers to the power 5) in at least
3 different ways. Remember,
(1) You might refer to Chap. 2.5 of CM for its 8 methods for the sum
of n squares, but
(2) Method 0, 6 and 7 in CM are not allowed because of what you
know well, and
(3) New methods, especially those not mentioned in CM, are very
welcome. And, some smart guys would be invited for short talks in the
next time.
2015/10/31
32