证明自然数的算术性质

前言

我们很早就知道 a + b = b + a,a * b = b * a,而且也经常用到它,似乎这对于我们来说已经是不证自明的常识了。然而直觉告诉我,很多数学的常识是因为日常使用频繁,不需要知道它们是如何证明的,但是往往这样的常识会有很精彩的数学定义和证明过程。果不其然,查找资料[1]后,我了解到实数的算数性质(交换律,结合律,分配率)都是通过皮亚诺公理推导出来的,看完整个证明过程之后,不得不再一次深深体会到数学的绝妙之处,这篇文章就是对该过程的实现和总结。

证明过程

要证明自然数的算数性质,就需要用到皮亚诺公理(The Peano Postulates),它完美地用数学语言定义了什么是自然数,总共有六条:

  • P1:1 属于 N
  • P2: 如果 x 也属于 N,那么它的后继数 x’ 也属于 N.
  • P3: 不存在一个数 x 它的后继数 x’ 为 1.
  • P4: 如果 y 属于 N 且 y 不等于 1,则一定有一个 x 属于 N 使得 x’ = y.
  • P5: 如果 x,y 都属于 N 且 x’ = y’,则 x = y.
  • P6: 如果 S 是 N 的子集,1 属于 S,并且通过 S 中的一个数 x 可以得出它的后继数 x’ 也属于 S,则 S = N.

直观理解,如果 x 是一个自然数,那么 x 的后继数 x+1 也是自然数(P1,P2),任何自然数的后继数都不可能是1(P3),任何自然数都有它的后继数(P4),任何一个自然数的后继数是唯一的(P5),如果一个自然数的子集中的数的后继数都在这个子集中,那么这个子集就是自然数集(P6)。

递归定义自然数的加法

D+:设 a 和 b 属于 N.

  1. 如果 b = 1, 那么定义 a + b = a’ (P1,P2).
  2. 如果 b 不等于 1, 那么另 c’ = b, 则有 c 属于 N (P4), 同时定义 a + b = (a + c)’.

通过定义可知: D+(1):a + 1 = a’,D+(2):a + b’ = (a + b)’.

递归定义自然数的乘法

D*: 设 a 和 b 属于 N.

  1. 如果 b = 1, 那么定义 a * b = a.
  2. 如果 b 不等于 1, 那么另 c’ = b, 则有 c 属于 N (P4), 同时定义 a * b = (a * c) + a.

通过定义可知: D*(1): a * 1 = a,D*(2): a * b’ = (a * b) + a.

定理 1: 如果 a 是一个自然数, 那么 1 + a = a + 1.

证明:令 S 为所有满足 1 + x = x + 1 的 自然数 x 的集合,1 属于 S,假设 a 也在 S 中,则:

1
2
3
4
1 + a' = (1 + a)'  --D+(2)
= (a + 1)' --假设 a 属于 S
= (a')' --D+(1)
= a' + 1 --D+(1)

因此 a’ 也属于 S,根据 P6,S = N,所以证明成立

定理 2(加法交换律):如果 a,b 都是自然数, 那么 a + b = b + a.

证明:令 S 为自然数 y 的集合,使得所有属于自然数 N 的 x 都满足 x + y = y + x,类比定理1,1 属于 S,假设自然数 b 属于 S. 令 S(b’) 为所有满足 x + b’ = b’ + x 的自然数 x 的集合,类比定理1,假设自然数 a 属于 S(b’)

1
2
3
4
5
6
7
a' + b' = (a' + b)'    --D+(2)
= (b + a')' --假设 b 属于 S
= ((b + a)') --D+(2)
= ((a + b)')' --假设 b 属于 S
= (a + b')' --D+(2)
= (b' + a)' --假设 a 属于 T(b')
= b' + a' --D+(2)

因此 a’ 也属于 S(b’),根据 P6,S(b’) = N,因此 b’ 属于 S,再次根据 P6,S = N,所以证明成立

定理 3(加法结合律):如果 a,b 和 c 都是自然数, 那么 a + (b + c) = (a + b) + c.

证明:令 S 为自然数 z 的集合,使得所有属于自然数 N 的 x,y 都满足 x + (y + z) = (x + y) + z. 则:

1
2
3
a + (b + 1) = a + b'       --D+(1)
= (a + b)' --D+(2)
= (a + b) + 1 --D+(1)

因此 1 属于 S. 假设自然数 c 属于 S, 则:

1
2
3
4
a + (b + c') = a + (b + c)'    --D+(2)
= (a + (b + c)) --D+(2)
= ((a + b) + c)' --假设c属于S
= (a + b) + c' --D+(2)

因此 c’ 也属于 S,根据 P6,S = N,所以证明成立

使用同样的证明过程,还可以证明:

1 * a = a,进而证明

a * b = b * a,进而证明

(a + b) * c = (a * c) + (b * c),接着证明

(a * b) * c = a * (b * c)


证明自然数的算术性质
https://infiniture.cn/2019/09/29/证明自然数的算数性质/
作者
NickHopps
发布于
2019年9月29日
许可协议