Skip to content

双平方定理(费马平方和定理) ​

费马平方和定理 ​

费马平方和定理,也称双平方定理,是指由法国数学家费马在1640年提出的一个猜想,但他没有提出有力的数学证明,1747年,瑞士数学家莱昂哈德·欧拉提出证明后成为定理。

费马平方和定理的表述是:奇质数能表示为两个平方数之和的充分必要条件是该素数被4除余1。

费马平方和定理的证明 ​

以下采用欧拉的证明方法,证明共分五步。

第一步 ​

命题:(婆罗摩笈多-斐波那契恒等式)如果两个整数都能表示为两个平方数之和,则它们的积也能表示为两个平方数之和。(平方分解数的积是平方分解数。)

证明:婆罗摩笈多-斐波那契恒等式是以下两个恒等式:

(a2+b2)(c2+d2)=(ac+bd)2+(ad−bc)2(a2+b2)(c2+d2)=(ac−bd)2+(ad+bc)2

该恒等式在整数环、有理数环和任何的交换环中都成立。

其在数论中的应用是:费马平方和定理说明任何被4除余1的素数都能表示为两个平方数的和,则根据婆罗摩笈多-斐波那契恒等式,任何两个被4除余1的素数的积也都能表示为两个平方数的和。

第二步 ​

命题:如果一个能表示为两个平方数之和的整数被另一个能表示为两个平方数之和的素数整除,则它们的商也能表示为两个平方数之和。(平方分解数被素平方分解数整除的商是平方分解数。)

证明:设p2+q2∣a2+b2。其中,p2+q2为素数。则有p2+q2∣(ap+bq)(ap−bq)。

(ap+bq)(ap−bq)=a2p2−b2q2=a2(p2+q2)−q2(a2+b2)

由于p2+q2是质数,则它整除其中一个因子,不妨设p2+q2∣(ap+bq),另一种情况同理。整理上面的式子,有:(两侧同时乘以(p2+q2),并使用婆罗摩笈多-斐波那契恒等式)

(p2+q2)2∣(a2+b2)(p2+q2)=(ap+bq)2+(aq−bp)2(p2+q2)2|(aq−bp)2

推出p2+q2∣aq−bp,因此,

a2+b2p2+q2=(a2+b2)(p2+q2)(p2+q2)2=(ap+bqp2+q2)2+(aq−bpp2+q2)2

第三步 ​

命题:如果一个能表示为两个平方数之和的整数被另一个不能表示为两个平方数之和的整数整除,则它们的商也必有一个不能表示为两个平方数之和的因子。(平方分解数被非平方分解数整除的商必有一个非平方分解因子。)

证明:反证。假设a2+b2x=p1p2…pn,pi均是素数,x不为平方分解数。下面先假设p1p2…pn均是平方分解数。根据定理2,我们有:

a2+b2p1=x(∏i=2npi)=z2+r2

继续迭代:

a2+b2p1p2=z2+r2p2=x(∏i=3npi)=t2+h2

最后,可以得到:

a2+b2∏i=1npi=l2+m2=x

与条件矛盾。故原假设不成立,原命题得证。

第四步 ​

命题:如果a和b互素,则a2+b2的所有因子都能表示为两个平方数之和。

证明:(无穷递降法:数论中常用的一种方法,意在通过某数列无限次的递减和最小元已经存在的矛盾来对命题进行反证、从而使该种递减操作不存在,论证原命题的正确。)

设x∣a2+b2。记a=mx±c,b=nx±d。其中,c,d的绝对值不超过x的一半。(否则,可以通过扩大或缩小m,n的值来调整到c,d的绝对值不超过x的一半)。可得:

a2+b2=m2x2±2mxc+c2+n2x2±2nxd+d2=Ax+(c2+d2)

故x∣c2+d2。记c2+d2=x⋅y。

如果c和d不互素:记α=gcd(c,d)。则α必须与x互质。

证明:改写上面的方程:a=mx±c=mx±αe,b=nx±αf。

若gcd(α,x)≠1,则gcd(a,b)≠1,与假设矛盾。

现在,有

c2+d2=α2(e2+f2)=xy.

显然,α2∣y。于是我们得到e2+f2=x⋅z,其中e,f互素,z=yα2≤x2,这是因为

zx=e2+f2≤c2+d2≤(x2)2+(x2)2.

如果c和d互素:则我们可直接使用c和d,不必转换成e和f。

如果x不能表示为两个平方数之和,则根据第三步的结论,可知必有一个z的因子不能表示为两个平方数之和;设它为w。于是我们从x推出了一个更小的整数w,都不能表示为两个平方数之和,但都能被一个能表示为两个平方数之和的整数整除。由于这个无穷递降是不可能的,因此x一定能表示为两个平方数之和。

第五步 ​

命题:任何形为4n+1的素数都能表示为两个平方数之和。

证明:如果p=4n+1,则根据费马小定理可得1,24n,34n,…,(4n)4n被p除都余1。因此它们的差24n−1,34n−24n,…,(4n)4n−(4n−1)4n都能被p​整除。这些差可分解为

a4n−b4n=(a2n+b2n)(a2n−b2n).

由于p是素数,它一定能整除这两个因子之一〔以下称它们为“和因子”和“差因子”〕。如果它能整除任何一个“和因子”,则根据第四步的结论可得p能表示为两个平方数之和〔由于a和b仅相差1,它们必然互素〕。而如果它能整除所有的4n−1个“差因子”22n−1,32n−22n,…,(4n)2n−(4n−1)2n,则它也能整除4n−2个一阶差、4n−3个二阶差,依此类推。由于数列1k,2k,3k,…的第k阶差都等于k!,于是第2n阶差都等于(2n)!,显然它不能被p整除。因此,p不能整除所有的“差因子”,得证p能表示为两个平方数之和。

费马小定理:如果p是一个质数,而整数a不是p的倍数,则有ap−1≡1(mod p)。

参考文献 ​

  1. [Fermat's Sum of Two Squares Theorem part 1 · Charlie Spackman (rbind.io)](https://charlie-spackman.rbind.io/2018/07/07/fermats-sum-of-two-squares-theorem-part-1#:~:text=Fermat’s Sum of Two Squares,by Albert Girard in 1625)

  2. Fermat's Sum of Two Squares Theorem part 2 · Charlie Spackman (rbind.io)

  3. 费马平方和定理- MBA智库百科

  4. 费马平方和定理_百度百科

  5. 无穷递降法- 知乎