1. 程式人生 > 其它 >記:關於費馬平方和定理的證明

記:關於費馬平方和定理的證明

前言

最近,筆者在一道 OI 題的 Hint 裡看到了這樣一個定理:

費馬平方和定理:一個奇素數能被表成兩個平方數之和,當且僅當它是 模4餘1 型素數。

網上的幾個證法看了之後寫下這篇筆記。

法一:構造

核心:證明方程 \(4xy+z^2=p\)\(p\)模4餘1型素數時,必有 \(x=y\) 的解。

前置知識

基數:集合的元素個數。

對合:逆函式的函式,即滿足 \(f(f(x))=x\) 的函式。

Step1

設集合 \(S=\left\{ (x,y,z) \vert 4xy + z^2 = p , x \in N , y \in N , z \in Z \right\}\)

其中 \(p\) 是一固定素數。

顯然是個有限集。

再設 \(T=\left\{ (x,y,z) \in S | z >0 \right\}\) ,容易發現此時這個集合就是方程 \(4xy + z^2 =p\) 的解集了。

這裡的 \(x\)\(y\) 事實上是處於相同地位的(函式 \(f:T \to T , (x,y,z) \to (y,x,z)\) 是對合),那我們只要證明 \(T\) 的基數是奇數就行了。

Step2

這時候我們開始考慮基數。

先是 \(S\) ,構造一個函式 \(g:S \to S , (x,y,z) \to (y,x,-z)\) (跟 \(f\) 類似)。

由於 \(z \not= 0\) ,所以 \(g\) 一定沒有不動點,也就是說 \(S\) 的基數是偶數。

同時,這個函式實現了 \(T\)\(S/T\) 之間的一一對映。

因此 \(T\) 的基數是 \(S\) 的一半。

Step3

這個一半就很巧了呀。

嘗試構造一個新的集合,其基數也是 \(S\) 一半的,並構造這個集合上的函式,以此證明 \(T\) 的基數是奇數。

這一步算得上是整個證明過程中的點睛之筆:

發現 \(g\) 也將 \(x-y\)\(z\) 的正負性同時改變。當然 \(x-y + z\) 是一定不為 \(0\) 的,具體套入原式驗證。

\(U = \left\{ (x,y,z) \in S | (x-y) + z > 0 \right\}\)

,那麼 \(g\) 也實現了 \(U\)\(S/U\) 之間的一一對映。

所以 \(U\) 的基數也是 \(S\) 的一半,與 \(T\) 相同。

\(U\) 上構造對映, \(h:U \to U , (x,y,z) \to (x-y+z,y,2y-z)\)

它是合法的因為 \(4y(x-y+z) + (2y-z)^2=4xy + z^2\) ,同時這是一個對合。

於是考慮它是否有不動點,就可以判斷基數奇偶性了。

如果有,那麼 \(y=z\) ,又因為 \(4xy + z^2=p\)

所以 \(y(4x+y)=p\) ,這就要求 \(y=z=1\)\(x=\frac{p-1}{4}\)

這時 \(p\)模4餘1型素數,\(T\) 的基數為奇數,一定有滿足 \(x=y\) 的解。