数轴与数系的四层嵌套
数从数数开始。此后每一次扩充都由一件做不成的事推动:自然数里减法可能无解,整数里除法可能无解,有理数里开方与取极限可能无解。本页排出这四层的嵌套关系,交代每一层补上了哪种封闭性,再看有理数在数轴上的分布——处处都有,却没能占住每个点。
小数展开的形态、无理性的证明、以及那些空位如何补上,分别在 有理数与小数展开、无理数:反证、递降与超越 与 实数的完备性 三页。
1 · 数系的嵌套层级
数系层层包含:自然数 在整数 里,整数在有理数 里,有理数又在实数 里;无理数是 里去掉 剩下的部分,记作 。判断一个数属于哪种,就是找它能落进的最靠里的一层。
本系列采用 的约定,自然数含 。另有两处容易看走眼:根号不等于无理,被开方数是完全平方数时结果仍是整数, 落回 ; 写成小数虽然无限,却是循环的,仍属 。
2 · 运算的封闭性与扩张的动因
一个数集对某种运算封闭,指的是任取集内两数做这个运算,结果仍在集内。四层嵌套的次序不是随手排的,每一层都恰好补齐了上一层缺的那一种封闭性。
| 数系 | 新补上的封闭性 | 上一层的反例 |
|---|---|---|
| 加法、乘法 | 无 | |
| 减法 | 在 内无解 | |
| 除法(除数非零) | 在 内无解 | |
| 非负数开方、单调有界序列取极限 | 在 内无解 |
前三步的动因都是代数的:某个方程在旧集里无解,把解添进来就得到新集。 走完了这条路——加、减、乘、除四种运算在 内全部封闭,它已经是一个域。 到 这一步的性质不同:缺的不再是某个具体方程的解,而是「取极限」这个动作的落点。这是后面两页的主题。
注 · 扩张并非只赚不赔。从 到 的四层里,序关系与四则运算的相容性一直保留着;再往下扩到复数时这条就保不住了,复数集上装不出与乘法相容的序(见 复数的概念与复平面)。每次扩张换来一种封闭性,代价要单独结算。
3 · 有理数的稠密性
定义 3.1(稠密) 数集 在数轴上稠密,指任取两个不相等的实数 ,开区间 内总有 的元素。
定理 3.2 在数轴上稠密,且任意两个有理数之间有无穷多个有理数。
证明 设 均为有理数。中点 由一次加法与一次除以 得到,两种运算在 内封闭,故它也是有理数,且严格落在 与 之间。对 与这个中点再取中点,得到第二个;如此下去,每一个都严格大于 、严格小于前一个,两两不等。这个过程没有终止条件,故区间内的有理数有无穷多个。∎
稠密说的是「哪儿都有」,没说「随便哪个分数都行」。区间一窄,落在里面的分数分母就必须够大:
与
之间分母最小的是
,而
与
之间分母最小的是
,
与
之间是
——这两个正好是历史上最有名的两个圆周率近似分数。这批数由 simplestBetween 在 Stern–Brocot 树上做中位数下降算出,实测的一处意外是
与
之间:分母最小的不是熟脸
,而是
,
只是分母第二小的那个。
另一头的代价也能量出来。从 与 出发逐次取中点,分母按 的幂增长,第 个中点已经是 ,分母 位。要在一个宽度为 的区间里找有理数,分母大约得到 这个量级。
稠密不等于填满。数轴上仍有位置没被任何有理数占住,最短的例子是平方等于 的那个点。这件事的证明在 无理数:反证、递降与超越,而「补上全部空位」这个要求的严格形式在 实数的完备性。
4 · 参考文献
- Number. Wikipedia. 各类数系的定义与它们的包含关系。https://en.wikipedia.org/wiki/Number
- Dense set. Wikipedia. 稠密的一般定义,以及有理数在实数中稠密的证明。https://en.wikipedia.org/wiki/Dense_set
- Stern–Brocot tree. Wikipedia. 中位数下降与「区间内分母最小的分数」。https://en.wikipedia.org/wiki/Stern%E2%80%93Brocot_tree
- Closure (mathematics). Wikipedia. 运算封闭性的定义与常见例子。https://en.wikipedia.org/wiki/Closure_(mathematics)