(上接 “熟悉又陌生的实数(2)”)
(注意:有些数学表达式较长,向左滑动可查看隐藏部分。)
实数的四则运算
我们运用数学理论和方法解决实际问题,最终要依靠数值计算。那么,实数的四则运算,是从什么样的现实情境中抽象而来?或者说,它们反映了什么样的现实场景?我们又该如何定义它们?例如,在实践中,将两根木棍拼接起来有多长?两杯水混合后的质量和体积分别是多少?从理论上看,两个实数的和究竟是什么?
本文将基于有尽小数的四则运算规则,给出无尽小数四则运算的定义。这个定义将与有尽小数的运算规则兼容,从而适用于所有实数的四则运算。
有尽小数意味着计数或度量过程的终结,以及所得数值的绝对精确。例如,测量某张写字台的长度(单位:米),恰好得到一个有尽小数 1.37,其示意图如下:

需要指出,每一个有尽小数都有其非规范表示。例如,1.37 是规范表示,而与之等同的非规范表示是 1.37000…。
由于基准单位可能与被测量物体不完全匹配,导致计数或度量的过程永不停止,最终得到一个无尽小数。例如,用直径作为基准单位去度量圆周长,会得到无尽不循环小数 π = 3.1415926…;用基准单位去度量其三分之一,会得到无尽循环小数 0.3333…。
有尽小数的四则运算是有明确定义的,其定义建立在加法公理之上。按照定义进行运算,就像小学生那样遵循既定法则机械地完成即可。
然而,无尽小数的四则运算,由于其无尽性,无法直接套用有尽小数的运算规则,必须另行定义。例如,在实践中,根据实际问题的精度要求,我们可能会舍弃小数点后第 n 位之后的所有数字(截断),得到两个精确到小数点后第 n 位的不足近似值,然后按照有尽小数的加法法则求和,得到一个近似的和。但在数学理论上,对于两个无尽小数的和,绝不能通过近似计算来定义,必须有一个令人信服的、经得起推敲的严格定义。这正是计算机科学与数学基础中构建严谨理论体系的关键一步。
引理1
引理1 设 x 是任意一个实数,则对任何正的有尽小数 ε(无论多么小),都存在有尽小数 a 和 b,满足条件:
a ≤ x ≤ b
且
b - a ≤ ε
(从数轴上看,对于任意实数点,我们都可以找到两个无限接近它的有尽小数点,将它夹在中间。我们可以设想一种无限逼近的情景:给定一个越来越小的 ε,每次都能找到满足条件的 a 和 b。这个定理表达了有尽小数与任意实数(特别是无尽小数)之间的关系,引导我们凭借有尽小数的运算规律来理解、把握并定义通用实数的运算规律。)
证明: 设正的有尽小数 ε 为:
ε = 0.0…0ε_{m}ε_{m+1}…ε_{k}
因为 ε > 0,设其第一位不为 0 的数字是 ε_{m},则有:
ε ≥ 10^{-m}
这里,用记号 10^{-m} 代替有尽小数 0.0…01(小数点后第 m 位为1)。
(若 ε_{m} = 1,则由于 ε_{m+1}…ε_{k} 可能非零,ε 严格大于 10^{-m};若 ε_{m} > 1,则数字 ε_{m} 的权值 ε_{m} × 10^{-m} ≥ 2 × 10^{-m},而 10^{-m} = 1 × 10^{-m},因此 ε > 10^{-m}。)
若 x 的规范小数表示为 x = x_{0}.x_{1}x_{2}…,则取:
a = x 的不足近似值 x^{(m)} = x_{0}.x_{1}x_{2}…x_{m}
b = x 的过剩近似值 x^{(m)} + 10^{-m}
(x ≥ 0 适用此情形)
若 x 的规范小数表示为 x = -y_{0}.y_{1}y_{2}…,则取:
a = -(y 的过剩近似值 y^{(m)} + 10^{-m})
b = -(y 的不足近似值 y^{(m)})
(对第一种情形取相反数,相当于在数轴上按原点 0 对称翻转。)
这两种情形,均满足 a ≤ x ≤ b 且 b - a = 10^{-m} ≤ ε。
注意:圆括号内的文字是为方便理解而补充的。
证明思路: 设想实数 x 的计数度量过程,度量结果取其规范表示,并且它被夹在其不足近似值和过剩近似值之间。过剩近似值与不足近似值之差(或距离),恰好是对应数位的权值(度量单位),即 10^{-n}。例如,π 的值夹在 3.14 与 3.15 之间,相应位的权值是 10^{-2}。n 越大,位数越多,权值 10^{-n} 就越小。无论给定的 ε 多么小,总可以找到足够大的 n,使得 10^{-n} ≤ ε。
随想: 任何实数都被其(不足有尽近似值,过剩有尽近似值)构成的嵌套式“金箍”层层夹住。随着位数 n 无限增长,这一层层的区间越来越紧,逐渐滤掉其他所有实数,最终只剩下这个数本身。这些区间的宽度依次为 10^{0}, 10^{-1}, 10^{-2}, 10^{-3},等等,越来越小。例如:
- 无尽不循环小数
π 被层层包裹如下:
[3, 4] ⊃ [3.1, 3.2] ⊃ [3.14, 3.15] ⊃ [3.141, 3.142] ⊃ …
- 无尽循环小数
0.333… 被层层包裹如下:
[0, 1] ⊃ [0.3, 0.4] ⊃ [0.33, 0.34] ⊃ [0.333, 0.334] ⊃ …
- 有尽小数
1.37 被层层包裹如下:
[1, 2] ⊃ [1.3, 1.4] ⊃ [1.37, 1.38] ⊃ [1.370, 1.371] ⊃ …
引理2
引理2 设 x 和 y 是实数,且 x ≤ y。如果对于任何正的有尽小数 ε,都存在有尽小数 a 和 b,满足条件:
a ≤ x ≤ y ≤ b
且
b - a ≤ ε
那么,只能有 x = y。
证明: 使用反证法。假定 x < y。根据有尽小数在实数中的稠密性,必然存在一个有尽小数 c,满足:
x < c < y
再次应用有尽小数的稠密性,必存在有尽小数 a₁ 和 b₁,满足:
x < a₁ < c < b₁ < y
即有:
b₁ - a₁ < y - x
取 ε₀ = b₁ - a₁(显然 ε₀ > 0)。如果存在有尽小数 a 和 b,满足条件:
a ≤ x ≤ y ≤ b
且
b - a ≤ ε₀
那么有:
b - a ≤ ε₀ = b₁ - a₁ < y - x ≤ b - a
这推导出了 b - a < b - a 的矛盾。因此,无法同时满足 x < y 和引理的条件。这一矛盾说明,要同时满足这两个条件,只能是 x = y。
引理3
引理3 设 ε 是正的有尽小数,p 和 q 是自然数,则存在正的有尽小数 ε₁ 和 ε₂,使得:
pε₁ + qε₂ ≤ ε
证明: 设有尽小数 ε 为:
ε = 0.0…0ε_{m}ε_{m+1}…ε_{k}
因为 ε > 0,设其第一位不为 0 的数字是 ε_{m},则有:
ε ≥ 10^{-m}
取自然数 N 和 M,使得:
N > p, \quad M > q
然后取:
ε₁ = 10^{-(m+N)}, \quad ε₂ = 10^{-(m+M)}
于是有:
pε₁ + qε₂ = p × 10^{-(m+N)} + q × 10^{-(m+M)} < N × 10^{-(m+N)} + M × 10^{-(m+M)}
由于 10^{-(m+N)} 和 10^{-(m+M)} 都非常小,且 N × 10^{-(m+N)} ≤ 10^{-m} × (N/10^N),当 N 足够大时,N/10^N 可以小于1/2,同理处理 M 项。更直接地,可以观察到 pε₁ + qε₂ 是两个远小于 10^{-m} 的数之和,因此存在这样的 ε₁ 和 ε₂ 使得 pε₁ + qε₂ ≤ 10^{-m} ≤ ε。(证明的核心在于利用 10 的负幂次可以取得任意小,并通过放大系数 p, q 来控制总和。)
定理1
(此处原文中定理1、定理2等仅存标题,无具体内容,根据优化规则“保留所有技术内容”,此处保留标题结构,不进行扩写或删减。)
定理2
三歧性
传递性
实数的绝对值
实数系的连续性
有界集
上确界
下确界
确界原理
确界原理讨论
延伸阅读
- 数学,到底怎么学?
- 微积分的逻辑起点
- 熟悉又陌生的实数(1)
- 熟悉又陌生的实数(2)
LaTeX公式备忘
$$ |x|=\left\{
\begin{array}{rl}
x, & x是非负实数\\
-x,& x是负实数
\end{array}\right. $$
参考公式(请忽略,仅供作者备忘)
(草稿更新于2025年4月20日)
理解实数运算的严格定义,是深入计算机数值计算与离散数学等领域理论根基的重要一步。本文探讨的从有尽到无尽的扩展思想,在许多计算机科学基础问题中都有体现。对这类严谨的数学讨论感兴趣,欢迎在云栈社区继续交流。