定义N(a,b) = {a + nb| n∈Z},例如N(1,3)就等于{…, -5, -2, 1, 4, 7, …}。每一个N(a,b)实质上都是一个以b为公差的“双向无限等差数列”。我们说整数集Z上的一个子集S是开的,如果集合S为空,或者对于任意一个a∈S,总能找到一个b>0使得N(a,b)⊆S。形象地说,开集的意思就是,集合中的每一个元素都能在集合内扩展出一个无限长的双向等差数列。我们又称一个集合S是闭的,如果它是某个开集的补集。 显然,有限个开集的并集仍然是开集。 假设S_1和S_2都是开集,如果a∈S_1∩S_2,并且N(a,b1)⊆S_1,N(a,b2)⊆S_2,那么S_1∩S_2中有一个公差为b1b2的含a的双向无限等差数列,也即a∈N(a, b1b2)⊆S_1∩S_2。这说明,有限个开集的交集仍然是开集。 再假设C_1和C_2都是闭集。由De Morgan定律,C_1和C_2的并集就相等于它们各自的补集相交后再取补集,由定义可知它们的补集都是开集,而由上面的结论可知开集的交集仍是开集。于是,C_1和C_2的并集是某个开集的补集,这说明闭集的并仍然是闭集。类似地,闭集的交集相当于补集的并集的补集,它也仍然是闭的。
还有两点值得引起我们注意:
- 任意非空开集都是无穷的。这由定义可以直接看出来。
- 任一双向无限等差数列N(a,b)既是开集又是闭集。由定义可知N(a,b)是开集,而同时N(a,b)又可以看作是N(a+1,b)∪N(a+2,b)∪N(a+3,b)∪…∪N(a+b-1,b)的补集,这是有限个开集的并集的补集,说明N(a,b)也是闭集。
好了,准备工作完成,下面我们开始证明素数是无穷多的。除了1和-1以外,每一个整数都有至少一个素因子,因此它们都包含在∪N(0,p)中(其中p取遍所有的素数)。把全体素数的集合记为P,于是我们有:
Z \ {1, -1} = ∪N(0,p), p∈P
现在,假如素数集合P是有限的,那么等式右边就是有限个闭集的并,它仍然是闭集;这样的话,它的补集{1, -1}就应该一个开集。然而,一个开集要么是空的,要么就是无穷的,这与{1, -1}是开集矛盾。