专题二、关于和式的探讨(6)—— 无限和式

在这个专题中,我们将探讨和式与递归式的关系,建立起和式的一般性求解方法,并探讨和式与微积分的关系,体会离散数学与连续数学之间的联系。

参考资料:《具体数学 第 2 2 2 版》

六、无限和式

前面我们所探讨的和式都只有有限多个非零项,本篇文章中我们重点探讨具有无限非零项的和式。无限和式需要更加仔细地定义,以免陷入荒谬。

例如,我们可以定义无限和式 S = 1 + 1 2 + 1 4 + 1 8 + 1 16 + ⋯ S = 1 + \frac{1}{2} + \frac{1}{4} + \frac{1}{8} + \frac{1}{16} + \cdots S=1+21+41+81+161+等于 2 2 2,因为如果将它加倍就得到 2 S = 2 + 1 + 1 2 + 1 4 + 1 8 + 1 32 + ⋯ = 2 + S 2S = 2 + 1 + \frac{1}{2} + \frac{1}{4} + \frac{1}{8} + \frac{1}{32} + \cdots = 2 + S 2S=2+1+21+41+81+321+=2+S

同样的推理提示我们应该定义 T = 1 + 2 + 4 + 8 + 16 + ⋯ T = 1 + 2 + 4+ 8 + 16 + \cdots T=1+2+4+8+16+等于 − 1 -1 1,因为如果将它加倍就得到 2 T = 2 + 4 + 8 + 16 + 32 + ⋯ = T − 1 2T = 2 + 4+ 8 + 16 + 32 + \cdots = T - 1 2T=2+4+8+16+32+=T1然而我们并不能接受这样的定义,因为正数加起来无论如何也不会得到一个负数。或者应该定义 T = ∞ T = \infin T=,因为 T T T 中的相加的项会大于任何指定的有限数。

我们尝试对一般和式 ∑ k ∈ K a k \sum_{k \in K} a_k kKak 的值构想一个好的定义,其中 K K K 可以是无限的。

1. 非负项无限和式

首先,让我们假设所有的项 a k a_k ak 都是非负的,那么就可以找到一个合适的定义:
如果有一个常数 A A A 为界,使得对所有有限子集 F ⊂ K F \sub K FK 都有 ∑ k ∈ F a k ≤ A \sum_{k \in F} a_k \le A kFakA那么我们就定义 ∑ k ∈ K a k \sum_{k \in K} a_k kKak最小的 A A A。如果找不到这样的 A A A 为界,我们就说 ∑ k ∈ K a k = ∞ \sum_{k \in K} a_k = \infin kKak=,这就意味着,对任何实数 A A A,都存在有限多项 a k a_k ak 组成的一个集合,它的和超过 A A A

K K K 是非负整数集合的特殊情形下,我们对于非负项 a k a_k ak 的定义就意味着 ∑ k ≥ 0 a k = lim ⁡ n → ∞ ∑ k = 0 n a k \sum_{k \ge 0} a_k = \lim\limits_{n \to \infin} \sum_{k = 0}^n a_k k0ak=nlimk=0nak因为实数的任何一个非减序列都有极限。如果极限是 A A A,且 F F F 是任意的一个非负整数的有限集合,其元素均 ≤ n \le n n,就有 ∑ k ∈ F a k ≤ ∑ k = 0 n a k ≤ A \sum_{k \in F} a_k \le \sum_{k = 0}^n a_k \le A kFakk=0nakA因此 A = ∞ A = \infin A= 或者 A A A 是一个有界常数。又如果 A ′ A' A 是任何一个小于所述极限 A A A 的数,那么就存在一个 n n n,使得 ∑ k = 0 n a k > A ′ \sum_{k = 0}^n a_k > A' k=0nak>A,则该有限集合 F F F 就证明了 A ′ A' A 不是有界常数。

按照刚刚给出的定义,我们可以很容易地计算某种无限和式的值。例如,如果 a k = x k a_k = x^k ak=xk,则
∑ k ≥ 0 x k = lim ⁡ n → ∞ 1 − x n + 1 1 − x = { 1 / ( 1 − x ) , 0 ≤ x < 1 ∞ , x ≥ 1 \sum_{k \ge 0} x^k = \lim_{n \to \infin} \frac{1 - x^{n + 1}}{1 - x} = \begin{cases} 1 / (1 - x), & 0 \le x < 1 \\ \infin, & x \ge 1 \end{cases} k0xk=nlim1x1xn+1={1/(1x),,0x<1x1再如 ∑ k ≥ 0 1 ( k + 1 ) ( k + 2 ) = ∑ k ≥ 0 k − 2 ‾ = lim ⁡ n → ∞ ∑ k = 0 n − 1 k − 2 ‾ = lim ⁡ n → ∞ k − 1 ‾ − 1 ∣ 0 n = 1 \sum\limits_{k \ge 0} \frac{1}{(k + 1)(k + 2)} = \sum\limits_{k \ge 0} k^{\underline{-2}} = \lim\limits_{n \to \infin} \sum_{k = 0}^{n - 1} k^{\underline{-2}} = \lim\limits_{n \to \infin} \frac{k^{\underline{-1}}}{-1} \mid_0^n = 1 k0(k+1)(k+2)1=k0k2=nlimk=0n1k2=nlim1k10n=1

2. 一般项无限和式

现在,我们考虑和式中既有非负项又有负项的情形。例如 ∑ k ≥ 0 ( − 1 ) k = 1 − 1 + 1 − 1 + 1 − 1 + ⋯ \sum_{k \ge 0} (-1)^k = 1 - 1 + 1 - 1 + 1 - 1 + \cdots k0(1)k=11+11+11+如果将它成对分组,我们得到 ( 1 − 1 ) + ( 1 − 1 ) + ( 1 − 1 ) + ⋯ = 0 (1 - 1) + (1 - 1) + (1 - 1) + \cdots = 0 (11)+(11)+(11)+=0但是,如果延迟一项再成对分组,我们得到 1 − ( 1 − 1 ) − ( 1 − 1 ) − ( 1 − 1 ) − ⋯ = 1 1 - (1 - 1) - (1 - 1) - (1 - 1) - \cdots = 1 1(11)(11)(11)=1我们或许也可以尝试在公式 ∑ k ≥ 0 x k = 1 / ( 1 − x ) \sum_{k \ge 0} x^k = 1 / (1 - x) k0xk=1/(1x) 中令 x = − 1 x = -1 x=1,虽然我们并没有证明该公式在 x < 0 x < 0 x<0 时成立,不过这样就迫使我们得出结论:这个无限和是 1 / 2 1 / 2 1/2

另一个例子是双向无限和 ∑ k a k \sum_k a_k kak,当 k ≥ 0 k \ge 0 k0 a k = 1 / ( k + 1 ) a_k = 1 / (k + 1) ak=1/(k+1),当 k < 0 k < 0 k<0 时, a k = 1 / ( k − 1 ) a_k = 1 / (k - 1) ak=1/(k1)。我们可以把它写成 ⋯ + ( − 1 4 ) + ( − 1 3 ) + ( − 1 2 ) + 1 + 1 2 + 1 3 + 1 4 + ⋯ \cdots + (-\frac{1}{4}) + (-\frac{1}{3}) + (-\frac{1}{2}) + 1 + \frac{1}{2} + \frac{1}{3} + \frac{1}{4} + \cdots +(41)+(31)+(21)+1+21+31+41+如果我们从中心位置开始往外计算这个和式 ⋯ + ( − 1 4 + ( − 1 3 + ( − 1 2 + ( 1 ) + 1 2 ) + 1 3 ) + 1 4 ) + ⋯ \cdots + \bigg(-\frac{1}{4} + \bigg(-\frac{1}{3} + \bigg(-\frac{1}{2} + (1) + \frac{1}{2}\bigg) + \frac{1}{3}\bigg) + \frac{1}{4}\bigg) + \cdots +(41+(31+(21+(1)+21)+31)+41)+就得到它的值为 1 1 1;如果我们将所有的括号都向左移动一步 ⋯ + ( − 1 5 + ( − 1 4 + ( − 1 3 + ( − 1 2 ) + 1 ) + 1 2 ) + 1 3 ) + ⋯ \cdots + \bigg(-\frac{1}{5} + \bigg(-\frac{1}{4} + \bigg(-\frac{1}{3} + \bigg(-\frac{1}{2}\bigg) + 1\bigg) + \frac{1}{2}\bigg) + \frac{1}{3}\bigg) + \cdots +(51+(41+(31+(21)+1)+21)+31)+同样得到值为 1 1 1,因为最内层 n n n 个括号可以写成 − 1 n + 1 − 1 n − ⋯ − 1 2 + 1 + 1 2 + ⋯ + 1 n − 1 = 1 − 1 n − 1 n + 1 -\frac{1}{n+1} -\frac{1}{n} - \cdots -\frac{1}{2} + 1 + \frac{1}{2} + \cdots + \frac{1}{n - 1} = 1 - \frac{1}{n} - \frac{1}{n + 1} n+11n121+1+21++n11=1n1n+11类似的讨论表明,如果将这些括号向左或者向右移动任意固定步,它的值都是 1 1 1,于是我们几乎可以确定这个和式的值就是 1 1 1。然而如果我们按照如下方式分组 ⋯ + ( − 1 4 + ( − 1 3 + ( − 1 2 + 1 + 1 2 ) + 1 3 + 1 4 ) + 1 5 + 1 6 ) + ⋯ \cdots + \bigg(-\frac{1}{4} + \bigg(-\frac{1}{3} + \bigg(-\frac{1}{2} + 1 + \frac{1}{2}\bigg) + \frac{1}{3} + \frac{1}{4}\bigg) + \frac{1}{5} + \frac{1}{6}\bigg) + \cdots +(41+(31+(21+1+21)+31+41)+51+61)+那么最内层 n n n 个括号应写成 − 1 n + 1 − 1 n − ⋯ − 1 2 + 1 + 1 2 + ⋯ + 1 2 n − 1 + 1 2 n = 1 + H 2 n − H n + 1 -\frac{1}{n+1} -\frac{1}{n} - \cdots -\frac{1}{2} + 1 + \frac{1}{2} + \cdots + \frac{1}{2n - 1} + \frac{1}{2n} = 1 + H_{2n} - H_{n + 1} n+11n121+1+21++2n11+2n1=1+H2nHn+1在后面的专题中,我们将证明 lim ⁡ n → ∞ ( H 2 n − H n + 1 ) = ln ⁡ 2 \lim\limits_{n \to \infin}(H_{2n} - H_{n + 1}) = \ln 2 nlim(H2nHn+1)=ln2,于是我们得到该和式的值为 1 + ln ⁡ 2 1 + \ln 2 1+ln2

3. 无限和式的定义

通过上述例子的探讨,不难发现,按照不同方式对其项相加可能会得出不同的值,这似乎对我们定义无限和式造成了不小的困扰。关于分析学的高等教材中有类似于 “条件收敛” 这样精巧的改进,然而这会限制我们对记号 ∑ \sum 所能进行的操作。因此,下面给出我们关于无限和式的定义。

首先我们定义,任何实数 x x x 都可以写成其正的部分减去负的部分 x = x + − x − ,其中 x + = x × [ x > 0 ] , x − = − x × [ x < 0 ] x = x^+ - x^-,其中 x^+ = x \times [x > 0],x^- = -x \times [x < 0] x=x+x,其中x+=x×[x>0]x=x×[x<0] K K K 是任意一个集合,而 a k a_k ak 是对每一个 k ∈ K k \in K kK 定义的实值项。这样一来,我们的一般性定义就是 ∑ k ∈ K a k = ∑ k ∈ K a k + − ∑ k ∈ K a k − ,其中 { ∑ k ∈ K a k + = ∑ k ∈ K a k × [ a k > 0 ] ∑ k ∈ K a k − = ∑ k ∈ K − a k × [ a k < 0 ] \sum_{k \in K} a_k = \sum_{k \in K} a_k^+ - \sum_{k \in K} a_k^-,其中 \begin{cases} \sum_{k \in K} a_k^+ = \sum_{k \in K} a_k \times [a_k > 0] \\ \sum_{k \in K} a_k^- = \sum_{k \in K} -a_k \times [a_k < 0] \end{cases} kKak=kKak+kKak,其中{kKak+=kKak×[ak>0]kKak=kKak×[ak<0]当右边的两个和式都等于 ∞ \infin 时,我们不定义 ∑ k ∈ K a k \sum_{k \in K} a_k kKak。设 A + = ∑ k ∈ K a k + A^+ = \sum_{k \in K} a_k^+ A+=kKak+ A − = ∑ k ∈ K a k − A^- = \sum_{k \in K} a_k^- A=kKak,则

  • 如果 A + A^+ A+ A − A^- A 都是有限的,就说和式 ∑ k ∈ K a k \sum_{k \in K} a_k kKak 绝对收敛于值 A = A + − A − A = A^+ - A^- A=A+A
  • 如果 A + = ∞ A^+ = \infin A+= A − A^- A 是有限的,就说和式 ∑ k ∈ K a k \sum_{k \in K} a_k kKak 发散 + ∞ + \infin +
  • 如果 A − = ∞ A^- = \infin A= A + A^+ A+ 是有限的,就说和式 ∑ k ∈ K a k \sum_{k \in K} a_k kKak 发散 − ∞ - \infin

我们从对非负项所做的定义开始,然后再将它推广到实值的项。如果项 a k a_k ak 是复数,我们也可以将定义推广:和式 ∑ k ∈ K a k \sum_{k \in K} a_k kKak 定义为 ∑ k ∈ K ℜ a k + ∑ k ∈ K ℑ a k \sum_{k \in K} \Re a_k + \sum_{k \in K} \Im a_k kKak+kKak,其中 ℜ a k \Re a_k ak ℑ a k \Im a_k ak 分别是 a k a_k ak 的实部和虚部,若右边两个和式都有定义,则 ∑ k ∈ K a k \sum_{k \in K} a_k kKak 有定义,反之则没有。

4. 无限和式的运算法则

接下来我们必须证明分配律、结合律以及交换律,加上首先对某一个指标变量求和的法则,还要证明由这四种和式的基本运算所推导出来的每一个结论。

  • 分配律表述为:如果 ∑ k ∈ K a k \sum_{k \in K} a_k kKak 绝对收敛于 A A A,且 c c c 是任意一个复数,那么 ∑ k ∈ K c a k \sum_{k \in K} ca_k kKcak 绝对收敛于 c A cA cA。我们可以将和式分成实部和虚部,正的部分和负的部分,再通过证明 c > 0 c > 0 c>0 且每一项 a k a_k ak 都是非负的这一特殊情形来证明此结论。
  • 结合律表述为:如果 ∑ k ∈ K a k \sum_{k \in K} a_k kKak ∑ k ∈ K b k \sum_{k \in K} b_k kKbk 分别绝对收敛于 A A A B B B,那么 ∑ k ∈ K ( a k + b k ) \sum_{k \in K} (a_k + b_k) kK(ak+bk) 绝对收敛于 A + B A + B A+B
  • 交换律我们在本专题第 3 3 3 篇文章中将它作为交换求和次序的一般法则的一个特例,已经推导了出来。

我们需要证明的主要结果是多重和式的基本原理:经过两个或者多个指标集的绝对收敛的和式永远可以对这些指标中的任何一个首先求和。也就是说,我们需要证明:如果 J J J 是任意的指标集,并且 { K j ∣ j ∈ J } \{ K_j | j \in J \} {KjjJ} 的元素是任意的指标集,使得 ∑ j ∈ J k ∈ K j a j , k 绝对收敛于 A \sum\limits_{\begin{subarray}{l} j\in J \\ k \in K_j \end{subarray}} a_{j, k} 绝对收敛于 A jJkKjaj,k绝对收敛于A那么对每一个 j ∈ J j \in J jJ 都存在复数 A j A_j Aj,使得
∑ k ∈ K j a j , k 绝对收敛于 A j ,且 ∑ j ∈ J A j 绝对收敛于 A \sum_{k \in K_j} a_{j, k} 绝对收敛于 A_j,且 \sum_{j \in J} A_j 绝对收敛于 A kKjaj,k绝对收敛于Aj,且jJAj绝对收敛于A在所有的项都为非负时成立,因为我们可以把每一项分解成实部和虚部,正的部分和负的部分来证明一般的情形。因此,我们可以假设对所有的指标对 ( j , k ) ∈ M (j, k) \in M (j,k)M 都有 a j , k ≥ 0 a_{j, k} \ge 0 aj,k0,其中 M M M 是主指标集 { ( j , k ) ∣ j ∈ J , k ∈ K j } \{ (j, k) | j \in J, k \in K_j \} {(j,k)jJ,kKj}

给定 ∑ ( j , k ) ∈ M a j , k \sum_{(j, k) \in M} a_{j, k} (j,k)Maj,k 是有限的,即对所有有限子集 F ⊆ M F \sube M FM ∑ ( j , k ) ∈ F a j , k ≤ A \sum_{(j, k) \in F} a_{j, k} \le A (j,k)Faj,kA,而 A A A 是这样的最小上界。如果 j j j J J J 的任意一个元素,那么形如 ∑ k ∈ F j a j , k \sum_{k \in F_j} a_{j, k} kFjaj,k 的每一个和都以 A A A 为上界,其中 F j F_j Fj K j K_j Kj 的一个有限子集。从而这些有限和式必定有一个最小上界 A j ≥ 0 A_j \ge 0 Aj0,且根据定义有 ∑ k ∈ K j a j , k = A j \sum_{k \in K_j} a_{j, k} = A_j kKjaj,k=Aj

我们仍然需要证明对所有有限子集 G ⊆ J G \sube J GJ A A A ∑ j ∈ G A j \sum_{j \in G} A_j jGAj 的最小上界。假设 G G G J J J 的满足 ∑ j ∈ G A j = A ′ > A \sum_{j \in G} A_j = A' > A jGAj=A>A 的有限子集。我们可以求出至少一个有限子集 F j ⊆ K j F_j \sube K_j FjKj,使得对每个满足 A j > 0 A_j > 0 Aj>0 j ∈ G j \in G jG 均有 ∑ k ∈ F j a j , k > ( A / A ′ ) A j \sum_{k \in F_j} a_{j, k} > (A / A') A_j kFjaj,k>(A/A)Aj。但是此时有 ∑ j ∈ G , k ∈ F j a j , k > ( A / A ′ ) ∑ j ∈ G A j = A \sum_{j \in G, k \in F_j} a_{j, k} > (A / A') \sum_{j \in G} A_j = A jG,kFjaj,k>(A/A)jGAj=A,这与如下事实矛盾:对所有有限子集 F ⊆ M F \sube M FM ∑ ( j , k ) ∈ F a j , k ≤ A \sum_{(j, k) \in F} a_{j, k} \le A (j,k)Faj,kA。从而对所有有限子集 G ⊆ J G \sube J GJ 都有 ∑ j ∈ G A j ≤ A \sum_{j \in G} A_j \le A jGAjA

最后,设 A ′ A' A 是小于 A A A 的任何一个实数。如果我们能找到一个有限集合 G ⊆ J G \sube J GJ,使得 ∑ j ∈ G A j > A ′ \sum_{j \in G} A_j > A' jGAj>A,证明就完成了。我们知道存在一个有限集合 F ⊆ M F \sube M FM,使得 ∑ ( j , k ) ∈ F a j , k > A ′ \sum_{(j, k) \in F} a_{j, k} > A' (j,k)Faj,k>A,设 G G G 是这个 F F F 中那些 j j j 组成的集合,又设 F j = { k ∣ ( j , k ) ∈ F } F_j = \{ k | (j, k) \in F \} Fj={k(j,k)F},那么就有 ∑ j ∈ G A j ≥ ∑ j ∈ G ∑ k ∈ F j a j , k = ∑ ( j , k ) ∈ F a j , k > A ′ \sum_{j \in G} A_j \ge \sum_{j \in G} \sum_{k \in F_j} a_{j, k} = \sum_{(j, k) \in F} a_{j, k} > A' jGAjjGkFjaj,k=(j,k)Faj,k>A。证明完毕。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
Python是一种强大的计算机编程语言,具有优秀的计算思维训练能力,本文将探讨与输入和错误处理相关的内容。 在Python中,输入可以通过多种方进行处理。最简单的方是使用input()函数接收用户的输入,然后对输入进行处理和计算。例如,可以编写一个程序来计算两个数字的和: ``` num1 = int(input("请输入第一个数字:")) num2 = int(input("请输入第个数字:")) sum = num1 + num2 print("两个数字的和为:", sum) ``` 上述代码中使用input()函数接收用户输入的两个数字,并使用int()函数将输入转换为整数进行计算。这样,即使用户输入的是字符串,程序也能正确进行计算。 然而,在输入过程中,可能会出现一些错误。为了提高程序的健壮性,我们需要进行错误处理。Python提供了try-except语句来处理可能出现的错误。例如,如果用户输入的不是数字,而是字符串或其他类型的数据,程序就会产生ValueError错误。可以使用try-except语句来捕捉这个错误,然后给出相应的提示: ``` try: num1 = int(input("请输入第一个数字:")) num2 = int(input("请输入第个数字:")) sum = num1 + num2 print("两个数字的和为:", sum) except ValueError: print("输入错误,请输入数字!") ``` 上述代码中,如果用户输入的是非数字类型的数据,就会触发ValueError错误,程序会跳转到except代码块并执行其中的语句,打印出提示信息。 通过这样的错误处理机制,可以保证程序在接收输入时具有一定的容错能力,防止因为用户错误输入而导致程序崩溃或输出错误的结果。 综上所述,Python的计算思维训练涵盖了输入和错误处理的内容。通过良好的输入处理和合理的错误处理机制,可以编写出健壮性强的程序,提高计算的准确性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

朔北之忘 Clancy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值