看一个例子:
∑
i
=
0
a
i
2
\sum_{i=0}a_i^2
∑i=0ai2
现在我们尝试使用多种方法来求这个式子的封闭形式——即通项公式。
方法0:可以查找公式。最好的资料来源是Sloane所著的《Handbook of Integer Sequences》,里面列出了数以千计的序列的封闭形式。可以去参考。还有些软件如:Axiom、MACSYMA、Maple或者Mathematica可以处理一些庞大的公式。其中,Mathematica很有名,大家可以去试用一下。
方法1:打表,猜测答案,然后用归纳法法证明。
方法2:对和式用扰动法
按照一般的做法,我们在其后加上一项:
S
n
+
1
=
S
n
+
(
n
+
1
)
2
=
∑
0
≤
k
≤
n
(
k
+
1
)
2
=
∑
0
≤
k
≤
n
(
k
2
+
2
k
+
1
)
=
∑
0
≤
k
≤
n
k
2
+
2
∑
0
≤
k
≤
n
k
+
n
+
1
=
S
n
+
2
∑
0
≤
k
≤
n
+
(
n
+
1
)
\begin{aligned} S_{n+1}=S_n+(n+1)^2 &=\sum_{0\leq k \leq n}(k+1)^2 \\ &=\sum_{0\leq k\leq n}(k^2+2k+1) \\ &=\sum_{0\leq k \leq n}k^2+2 \sum_{0\leq k \leq n} k+n+1 \\ &=Sn+2\sum{0\leq k \leq n}+(n+1) \end{aligned}
Sn+1=Sn+(n+1)2=0≤k≤n∑(k+1)2=0≤k≤n∑(k2+2k+1)=0≤k≤n∑k2+20≤k≤n∑k+n+1=Sn+2∑0≤k≤n+(n+1)
发现Sn消掉了,扰动法失效。
那我们尝试从整数的立方和出发,来用一下扰动法。
设G(n)表示整数的立方和。
G
(
n
)
+
(
n
+
1
)
3
=
∑
0
≤
k
≤
n
(
k
+
1
)
3
=
∑
0
≤
k
≤
n
(
k
3
+
3
k
2
+
3
k
+
1
)
=
∑
0
≤
k
≤
n
k
3
+
3
∑
0
≤
k
≤
n
k
2
+
3
n
(
n
+
1
)
2
+
n
+
1
\begin{aligned}G(n)+(n+1)^3&=\sum_{0\leq k \leq n}(k+1)^3=\sum_{0 \leq k \leq n}(k^3+3k^2+3k+1)\\ &=\sum_{0 \leq k \leq n}k^3+3\sum_{0\leq k\leq n}k^2+\frac{3n(n+1)}{2}+n+1 \end{aligned}
G(n)+(n+1)3=0≤k≤n∑(k+1)3=0≤k≤n∑(k3+3k2+3k+1)=0≤k≤n∑k3+30≤k≤n∑k2+23n(n+1)+n+1
发现G(n)消掉了,里面刚好有S(n).
3
S
(
n
)
=
(
n
+
1
)
3
−
3
n
(
n
+
1
)
2
+
n
+
1
3S(n)=(n+1)^3-\frac{3n(n+1)}{2}+n+1
3S(n)=(n+1)3−23n(n+1)+n+1
化简可得:
3
S
(
n
)
=
(
n
+
1
)
(
n
+
1
2
)
n
3S(n)=(n+1)(n+\frac{1}{2})n
3S(n)=(n+1)(n+21)n
方法三:建立成套方法
设递归式
(1)
R
0
=
α
;
R
n
=
R
n
−
1
+
β
+
γ
n
+
δ
n
2
,
n
>
0
\begin{aligned} R_0&=\alpha ;\\ R_n &=R_{n-1}+\beta+\gamma n+\delta n^2, n>0 \end{aligned}\tag{1}
R0Rn=α;=Rn−1+β+γn+δn2,n>0(1)
的解的一般形式是
(2)
R
n
=
A
(
n
)
α
+
B
(
n
)
β
+
C
(
n
)
γ
+
D
(
n
)
δ
R_n=A(n)\alpha+B(n)\beta+C(n)\gamma+D(n)\delta \tag{2}
Rn=A(n)α+B(n)β+C(n)γ+D(n)δ(2)
则
S
n
Sn
Sn对应于递归式取
α
=
0
,
β
=
0
,
γ
=
0
,
δ
=
1
\alpha=0,\beta=0,\gamma=0,\delta=1
α=0,β=0,γ=0,δ=1时
R
n
Rn
Rn的值。.
设
R
n
=
1
Rn=1
Rn=1,则可得
α
=
1
,
β
=
0
,
γ
=
0
,
δ
=
0
\alpha=1,\beta=0,\gamma=0,\delta=0
α=1,β=0,γ=0,δ=0,于是
A
(
n
)
=
1
A(n)=1
A(n)=1
设
R
n
=
n
Rn=n
Rn=n,则可得
α
=
0
,
β
=
1
,
γ
=
0
,
δ
=
0
\alpha=0,\beta=1,\gamma=0,\delta=0
α=0,β=1,γ=0,δ=0,于是
B
(
n
)
=
n
B(n)=n
B(n)=n
设
R
n
=
n
2
Rn=n^2
Rn=n2,则可得
α
=
0
,
β
=
−
1
,
γ
=
2
,
δ
=
0
\alpha=0,\beta=-1,\gamma=2,\delta=0
α=0,β=−1,γ=2,δ=0,于是
C
(
n
)
=
n
2
+
n
2
C(n)=\frac{n^2+n}{2}
C(n)=2n2+n
设
R
n
=
n
3
Rn=n^3
Rn=n3,则可得
α
=
0
,
β
=
1
,
γ
=
−
3
,
δ
=
3
\alpha=0,\beta=1,\gamma=-3,\delta=3
α=0,β=1,γ=−3,δ=3,于是
n
3
=
B
(
n
)
−
3
C
(
n
)
+
3
D
(
n
)
n^3=B(n)-3C(n)+3D(n)
n3=B(n)−3C(n)+3D(n),有
D
(
n
)
=
2
n
3
−
2
n
+
3
n
(
n
+
1
)
6
=
n
(
n
+
1
)
(
2
n
+
1
)
6
D(n)=\frac{2n^3-2n+3n(n+1)}{6}=\frac{n(n+1)(2n+1)}{6}
D(n)=62n3−2n+3n(n+1)=6n(n+1)(2n+1)
现在
A
(
n
)
,
B
(
n
)
,
C
(
n
)
,
D
(
n
)
A(n),B(n),C(n),D(n)
A(n),B(n),C(n),D(n)都已经求出来了。将
α
=
0
,
β
=
0
,
γ
=
0
,
δ
=
1
\alpha=0,\beta=0,\gamma=0,\delta=1
α=0,β=0,γ=0,δ=1代入式子
(
2
)
(2)
(2)中,则可求得
S
n
=
D
(
n
)
=
n
(
n
+
1
)
(
2
n
+
1
)
6
Sn=D(n)=\frac{n(n+1)(2n+1)}{6}
Sn=D(n)=6n(n+1)(2n+1)
成套方法是先从特殊到一般,再从一般到特殊的一个经典应用。
首先对一个具体的递归式,将其表示为一个系数待确定的方程,递归式变量为
α
,
β
,
γ
,
δ
\alpha,\beta,\gamma,\delta
α,β,γ,δ,各变量的系数分别为
A
(
n
)
,
B
(
n
)
,
C
(
n
)
,
D
(
n
)
A(n),B(n),C(n),D(n)
A(n),B(n),C(n),D(n),该方程是一个通用的方程,可以表示符合这种形式的任意递归式(f(n)与f(n-1)的倍数关系不能变)。然后再从一般到特殊,通过一些特殊的数列,求出系数的值。于是该方程的编程了一个系数确定的方程。只要代入
α
,
β
,
γ
,
δ
\alpha,\beta,\gamma,\delta
α,β,γ,δ的值,就可以确定方程在那一组变量下的值,即为原递归式的封闭形式。
方法四:用积分替换和式。
∑
0
≤
k
≤
n
k
2
\sum_{0\leq k \leq n}k^2
∑0≤k≤nk2可以看做宽度为1,高度为
k
2
k^2
k2的小矩形的面积之和,它可以近似的表示为:
∫
0
n
x
2
d
x
=
n
3
/
3
\int_{0}^{n}x^2dx=n^3/3
∫0nx2dx=n3/3
我们检查这个误差,设误差
E
n
=
S
n
−
n
3
/
3
E_n=S_n-n^3/3
En=Sn−n3/3.
因为Sn满足递归式,所以有:
E
n
=
S
n
−
n
3
/
3
=
S
n
−
1
+
n
2
−
n
3
/
3
=
E
n
−
1
+
(
n
−
1
)
3
/
3
+
n
2
−
n
3
/
3
=
E
n
−
1
+
n
−
1
/
3
\begin{aligned}E_n=Sn-n^3/3&=S_{n-1}+n^2-n^3/3\\&=E_{n-1}+(n-1)^3/3+n^2-n^3/3 \\ &=E_{n-1}+n-1/3 \end{aligned}
En=Sn−n3/3=Sn−1+n2−n3/3=En−1+(n−1)3/3+n2−n3/3=En−1+n−1/3
可以很容易计算出
E
n
=
(
n
+
1
)
n
/
2
−
n
/
3
E_n=(n+1)n/2-n/3
En=(n+1)n/2−n/3
则
S
n
=
E
n
+
n
3
/
3
=
(
n
+
1
)
n
/
2
−
n
/
3
+
n
3
/
3
=
n
(
n
+
1
)
(
2
n
+
1
)
6
S_n=E_n+n^3/3=(n+1)n/2-n/3+n^3/3=\frac{n(n+1)(2n+1)}{6}
Sn=En+n3/3=(n+1)n/2−n/3+n3/3=6n(n+1)(2n+1)
方法五:展开和收缩
S
n
=
∑
1
≤
k
≤
n
k
2
=
∑
1
≤
j
≤
k
≤
n
k
=
∑
1
≤
j
≤
n
∑
j
≤
k
≤
n
k
=
∑
1
≤
j
≤
n
(
j
+
n
2
)
(
n
−
j
+
1
)
=
1
2
∑
1
≤
j
≤
n
(
n
(
n
+
1
)
+
j
−
j
2
)
=
1
2
n
2
(
n
+
1
)
+
1
4
n
(
n
+
1
)
−
1
2
S
n
=
1
2
n
(
n
+
1
2
)
(
n
+
1
)
−
1
2
S
n
\begin{aligned}S_n=\sum_{1\leq k\leq n}k^2&=\sum_{1\leq j \leq k\leq n}k\\ & =\sum_{1\leq j\leq n}\sum_{j\leq k\leq n} k\\ &=\sum_{1\leq j\leq n}\left(\frac{j+n}{2}\right)(n-j+1)\\ & =\frac{1}{2}\sum_{1\leq j\leq n }(n(n+1)+j-j^2)\\&=\frac{1}{2}n^2(n+1)+\frac{1}{4}n(n+1)-\frac{1}{2}S_n\\&=\frac{1}{2}n(n+\frac12)(n+1)-\frac12S_n\end{aligned}
Sn=1≤k≤n∑k2=1≤j≤k≤n∑k=1≤j≤n∑j≤k≤n∑k=1≤j≤n∑(2j+n)(n−j+1)=211≤j≤n∑(n(n+1)+j−j2)=21n2(n+1)+41n(n+1)−21Sn=21n(n+21)(n+1)−21Sn
从单重和式变换到多重和式,初看是一种倒推,但实际上是进步。
我们不能指望不断的简化简化再简化,就像你不可能只向上爬坡而登上最高的山峰!
方法六:有限微积分
方法七:无限微积分