如何证明一加一等于二?

Posted hjlweilong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何证明一加一等于二?相关的知识,希望对你有一定的参考价值。

https://www.guokr.com/article/6556/

特斯拉的信徒 发表于  2011-02-09 13:27
技术分享图片

有这个必要吗?

如果你期待这里有哥德巴赫猜想的完整证明,我只能说哥们儿你失望了。我说的 1 和 2 可都是纯粹的自然数。你开始不屑一顾了吧:1 + 1 = 2 不是显然的吗?可是你是否考虑过,以前学几何的时候,我们总是从一些公理开始,逐渐推出需要的结论。然而,代数的学习却不是这样。我们有的是加法表和乘法表,而这些表早已成为计算的直觉刻在脑子里。一个靠直觉构建起来的体系似乎不太让人觉得可信。如果连 1 + 1 = 2 这样简单的算式都无法证明,那么所有经由此类运算得到的结果都是不可信的,至少是不科学的。看来,我们需要挖掘一些比 1 + 1 = 2 更基本的东西。

什么是 1,什么是 2?

在证明之前,首先我们要明白什么是自然数,什么是加法。类似于几何的公理化理论体系,我们需要提出几个公理,然后据此定义自然数,进而定义加法。

先来定义自然数。根据自然数的意义(也就是人类平时数数时对自然数的运用方法),它应该是从一个数开始,一直往上数,而且想数几个就可以数几个(也就是自然数有无限个)。据此我们得到以下公理:

公理 1. 0 是一个自然数。
公理 2. 如果 n 是自然数,则 S(n) 也是自然数。

在这里, S(n) 就代表 n 的“后继”,也就是 n 往上再数一个。没错,我们平时所说的 0, 1, 2, 3, ??,无非就是表示上述这种叫做“自然数”的数学对象的符号而已。我们用符号“0”来表示最初的那个自然数,用“1”来表示 0 的后继 S(0),而 1 的后继 S(1) 则用符号“2”来表示,等等。

可是仅有这两个公理还不够完整地描述自然数,因为满足这两条的有可能不是自然数系统。比如考虑由 0, 1, 2, 3 构成的数字系统,其中 S(3) = 0(即 3 的后一个数变回 0)。这不符合我们对于自然数系统的期望,因为它只包含有限个数。因此,我们要对自然数结构再做一下限制:

公理 3. 0 不是任何一个数的后继。

但这里面的漏洞防不胜防,此时仍不能排除如下的反例:数字系统 0, 1, 2, 3,其中 S(3) = 3。看来,我们设置的公理还不够严密。我们还得再加一条:

公理 4. 若 n 与 m 均为自然数且 n ≠ m,则 S(n) ≠ S(m)。

也就是说,互不相同的两个自然数,它们各自的后继也是两个不同的数。这样一来,上面说到的反例就可以排除了,因为 3 不可能既是 2 的后继,也是 3 的后继。

最后,为了排除一些自然数中不应存在的数(如 0.5),同时也为了满足一会儿制定运算规则的需要,我们加上最后一条公理。

公理 5. (数学归纳法)设 P(n) 为关于自然数 n 的一个性质。如果 P(0) 正确,
且假设 P(n) 正确,则 P(S(n)) 亦真实。那么 P(n) 对一切自然数 n 都正确。

有了这以上的努力,我们就可以这样定义自然数系了:存在一个自然数系 N,称其元素为自然数,当且仅当这些元素满足公理 1 - 5。

什么是加法?

我们定义,加法是满足以下两种规则的运算:

1. 对于任意自然数 m,0 + m = m;
2. 对于任意自然数 m 和 n,S(n) + m = S(n + m)。

有了这两条仅依赖于“后继”关系的加法定义,任意两个自然数相加的结果都能确定出来了。

如何证明一加一等于二?

至此,我们可以证明 1 + 1 = 2 了:

   1 + 1
= S(0) + 1  (根据自然数的公理)
= S(0 + 1)  (根据加法定义 2)
= S(1)      (根据加法定义 1)
= 2         (根据自然数的公理)

事实上,根据加法的定义,我们不但可以证明每一个加法等式,还可以进一步证明自然数的加法结合律和交换率等一般规律。类似于加法的定义,还可以定义自然数的乘法并据此证明乘法的结合律、交换率和分配率等。如果大家对这方面问题感兴趣的话,可以看看参考文献[1].

看到这里,不知道你会不会有一种如释重负的感觉。原来,我们所知道的关于数学的一切,关于人类认识世界的一切,都不是建立在直觉之上,而是在接受几个公理的条件下通过理性的方法推导出来的。同时或许你还会有一种自由的感觉:正如你可以不接受欧几里得的公理而构造自己的几何体系一样,你也可以不接受上面的几个公理而建立自己的一套关于数的体系。你可以建立无数种奇奇怪怪的体系。不过如果是为了解释自然的话,至少从目前的角度看,现有的这套还是更好一些。

一些历史背景

上面所说的公理 1 - 5 便是著名的皮亚诺公理,它是意大利数学家皮亚诺在 1889 年发表的。虽然描述这套公理体系的数学语言发生过不少变化,但这套体系本身一直延用至今。根据这个建立在公理基础之上的自然数体系,通过引入减法可以得到整数系,再引入除法得到有理数体系。随后,通过计算有理数序列的极限(由数学家康托提出)或者对有理数系进行分割(由戴德金提出)得到实数系 [2]。这一套公理化实数体系连同同时期魏尔斯特拉斯在微积分分析化过程中的贡献(例如极限定义中的 ε-δ 语言)一道,使得早已被人类应用两百多年的微积分学能建立在一个坚实的基础上 [3]。

参考文献
[1] Analysis [M]. Terence Tao
[2] 数学史概论(第二版)[M]. 李文林
[3] A History of Mathematics, an Introduction (Second Edition) [M]. Victor J. Katz
 

以上是关于如何证明一加一等于二?的主要内容,如果未能解决你的问题,请参考以下文章

java统计图表百分比和如何等于百分之百

差分数组(定义+性质+证明+代码实现+巩固练习)

LeetCode 66. 加一(java)

联合省选 选做

如何证明加倍函数的反转等于 Isabelle 中反转函数的加倍?

Meteor / MongoDB - 如何证明数组中的任何项目是不是等于特定值,而不是在“真”的情况下从另一个数组中提取项目?