算术基本定理
学习辗转相除法的理解与回顾,参考《什么是数学》1一书. 若无额外说明,文中整数均指正整数.
1. 欧几里得辗转相除法
也许你了解著名的欧几里得算法可用于求两个整数的最大公因子,并且能很快速的用一门编程语言写出该算法,但是…背后的原理是什么呢?对此我一直很好奇,从刚开始的百思不得其解到现在的似懂非懂,可算是有一番体会了.
从学习加减乘除到现在,可能你都没有在意过这样一个事实:对于任意整数和,总可以用式子表示两者的关系. 其中为除以的商,为余数,且. 当时,也就意味着能整除,即是的整数倍. 比如对于,有. 基于上面这个简单的事实,可以得出重要的结论,从前面的式子可以看出,若一个整数能同时整除和,则也同时整除和. 因为当整除和时,也整除了. 换言之,所有能同时整除和的整数,也能整除和,反之亦然.
若用表示和的最大公因子,那么根据上面的讨论我们得到
也就是说,我们求,可以换成求,反复使用式(1)进行计算,直至余数为0. 比如我们要求和的最大公因子,因为,,故. 相信你已经看出欧几里得算法的玄机了,精致优雅的算法来自于对简单事实的观察和应用.
从辗转相除法可以得到下面的推论:
推论
- 设,则总能找到或正或负的整数和,使得
证明: 由前面的叙述可知
因此,得到
这儿,继续这个步骤有
如此一直计算到,可见始终可以将余数用和表示为式(1)的形式,这包括和的最大公因子. 证毕.
或许你也和我一样,并不知道这个推论到底有什么用,但又总是在某些地方看见它的身影(比如离散数学?),没关系,下面我们就会看见它的一个应用. 所谓书到用时方恨少,而“定理难证时方恨工具少”,工具就是这些不起眼的推论、引理、事实、定义、概念等,工具用的熟悉了,用它们做东西自然就更快了,你觉得呢…
2. 算术基本定理
算术基本定理讲的是任意一个大于的整数,将其分解为素因子的乘积的形式是唯一的. 比如就是整数的唯一素因子分解形式.
令人惊讶的是(至少我是惊讶的…),这个定理可以用前面讲述的辗转相除法及其推论加以证明,不过在此之前,我们先来看一条引理,平凡而优美.
引理
- 若素数能整除和的乘积,那么必能整除或.
证明: 假设不能整除,又是素数,它的因子只有和,故,由式得
又因为整除,故,在式两端同时乘以得
所以是的一个因子,因而整除,于是我们从假设不整除推出了必定整除. 证毕.
我们可以将上面的引理进行推广:
推论
- 若且素数整除,那么必定能整除中的某一个数.
证明: 用数学归纳法.
(1) 假设时命题成立,当时,
由上述引理知,必定整除或. 若整除,由假设可知,必定整除中的一个数;否则整除,因此,当时,命题也成立.
(2) 当时,整除,命题显然成立.
证毕.
讲完诸多引理推论后,终于该证明一下我们期待已久的算术基本定理了. 假设整数有两种不同的素因子分解形式
由于是的一个因子,所以整除,由上面的推论知,必定整除的一个数,而均为素数,因子只能是和自身,故一定等于中的一个数,假设这个数是,于是可以把等式两边的和约掉,然后重复上面的过程,最终等式两边只能是. 由于和始终是成对抵消的,因此上面的的两种分解形式其实是一样的. 证毕.
参考
-
R. 柯朗, H. 罗宾. 什么是数学(第3版)[M]. 左平等译. 上海:复旦大学出版社, 2015. ↩