逻辑、集合与证明的语言

康托尔对角线论证

康托尔对角线论证是一个出奇简单的证明,表明实数无法被列举,从而是不可数的。它是反证法:假设你确实拥有 (0, 1) 中全部实数的完整清单,每行一个,写成无穷小数。论证制造出一个实数,按其构造,它与清单上每一项都不同——于是这份清单终究并不完整。

其构造是“对角线”一招。沿对角线读下来造一个新数 d——它的第 n 位小数被选得与清单上第 n 个数的第 n 位不同(例如把每个对角位都改成 5,若原本已是 5 则改成 6)。于是 d 不可能等于清单的第一个数(它们在第 1 位不同),也不等于第二个(在第 2 位不同),如此下去:d 与第 n 个数在第 n 位不同。故 d 是 (0, 1) 中一个不在清单上的实数,即所求矛盾。

需要一处技术上的当心:小数展开并非完全唯一(0.4999… 等于 0.5000…),故须选取避开 0 与 9 的替换数字以躲开这一歧义。修补之后结论成立:不存在实数的枚举。同样的对角线想法施于特征函数,便证明康托尔的一般定理:没有集合能满射到自己的幂集上;它还以哥德尔不完备性与停机问题不可解的核心姿态在逻辑中重现。

列出各行 0.1357…、0.2486…、0.3690…、…… 取对角数字 1、4、9、……;把每个都改成 5(5 则改成 6)得 d = 0.555… 于是 d 与第 1 行在第 1 位不同、与第 2 行在第 2 位不同,依此类推——d 不在任何一行上。

更改对角线产生一个不在任何一行上的实数。

又称
diagonalization对角线方法對角線方法