婆罗摩笈多-斐波那契恒等式

婆罗摩笈多-斐波那契恒等式(Brahmagupta–Fibonacci identity):
( a 2 + b 2 ) ( c 2 + d 2 ) = ( a c − b d ) 2 + ( a d + b c ) 2 = ( a c + b d ) 2 + ( a d − b c ) 2 \begin{aligned} \left(a^2 + b^2\right)\left(c^2 + d^2 \right) &= \left(ac - bd \right)^2 + \left(ad + bc\right)^2\\ &= \left(ac + bd \right)^2 + \left(ad - bc\right)^2\\ \end{aligned} (a2+b2)(c2+d2)​=(ac−bd)2+(ad+bc)2=(ac+bd)2+(ad−bc)2​

费马平方和定理

费马平方和定理(Fermat’s theorem on sums of two squares):
奇质数 p p p可以表示为 p = x 2 + y 2 p = x^2 + y^2 p=x2+y2 当且仅当 p ≡ 1 ( m o d 4 ) p \equiv 1\left(\mathop{mod} 4\right) p≡1(mod4), 其中 x , y x,y x,y为整数

证明:

充分性

设奇质数 p ≡ 1 ( m o d 4 ) p \equiv 1\left(\mathop{mod} 4\right) p≡1(mod4)

第一种证明

Thue’s Theorem

设 p p p是质数。对于任意整数 a a a,其中 p ∤ a p \nmid a p∤a
则存在 x , y ∈ { 1 , 2 , ⋯ , [ p ] } x,y \in \left\{1,2,\cdots,\left[ \sqrt{p}\right]\right\} x,y∈{1,2,⋯,[p ​]},使得 a x ≡ y ( m o d p ) ax \equiv y \left(\mathop{mod} p\right) ax≡y(modp)或者 a x ≡ − y ( m o d p ) ax \equiv -y \left(\mathop{mod} p\right) ax≡−y(modp)

证明:

S = { 0 , 1 , 2 , ⋯ , [ p ] } × { 0 , 1 , 2 , ⋯ , [ p ] } S = \left\{0,1,2,\cdots,\left[ \sqrt{p}\right]\right\} \times \left\{0,1,2,\cdots,\left[ \sqrt{p}\right]\right\} S={0,1,2,⋯,[p ​]}×{0,1,2,⋯,[p ​]}
则 ∣ S ∣ = ( [ p ] + 1 ) 2 \left|S\right| = \left(\left[\sqrt{p}\right] + 1\right)^2 ∣S∣=([p ​]+1)2

p < [ p ] + 1 \sqrt{p} < \left[\sqrt{p}\right] + 1 p ​<[p ​]+1,于是 p < ( [ p ] + 1 ) 2 p < \left(\left[\sqrt{p}\right] + 1\right)^2 p<([p ​]+1)2,也就是说 S S S中的元素至少有 p + 1 p+1 p+1个

设 ( x , y ) ∈ S \left(x,y\right)\in S (x,y)∈S,则 a x − y ax-y ax−y至少有 p + 1 p+1 p+1种表达,而一个数模 p p p有 p p p种可能
因此至少存在2对不同的 ( x , y ) \left(x,y\right) (x,y)使得 ( a x 1 − y 1 ) ≡ ( a x 2 − y 2 ) ( m o d p ) \left(a x_1 - y_1\right) \equiv \left(a x_2 - y_2\right)\left(\mathop{mod} p\right) (ax1​−y1​)≡(ax2​−y2​)(modp)
进而 a ( x 1 − x 2 ) ≡ ( y 1 − y 2 ) ( m o d p ) a\left(x_1 - x_2\right) \equiv \left(y_1 - y_2\right)\left(\mathop{mod} p\right) a(x1​−x2​)≡(y1​−y2​)(modp)
令 x = ∣ x 1 − x 2 ∣ , y = ∣ y 1 − y 2 ∣ x = \left|x_1 - x_2\right|, y = \left|y_1 - y_2\right| x=∣x1​−x2​∣,y=∣y1​−y2​∣,则 ( x , y ) ∈ S \left(x,y\right) \in S (x,y)∈S

接着要排除0
如果 x = 0 x = 0 x=0,则 x 1 = x 2 x_1 = x_2 x1​=x2​
a ( x 1 − x 2 ) = 0 ≡ ( y 1 − y 2 ) ( m o d p ) a\left(x_1 - x_2\right) = 0 \equiv \left(y_1 - y_2\right)\left(\mathop{mod} p\right) a(x1​−x2​)=0≡(y1​−y2​)(modp)
又因为 y 1 , y 2 ∈ { 0 , 1 , 2 , ⋯ , [ p ] } y_1,y_2 \in \left\{0,1,2,\cdots, \left[\sqrt{p}\right]\right\} y1​,y2​∈{0,1,2,⋯,[p ​]},有 y 1 = y 2 y_1 = y_2 y1​=y2​,矛盾

如果 y = 0 y=0 y=0,则 a ( x 1 − x 2 ) ≡ 0 ( m o d p ) a\left(x_1 - x_2\right) \equiv 0 \left(\mathop{mod}p\right) a(x1​−x2​)≡0(modp)
又因为 p ∤ a p \nmid a p∤a,所以 x 1 − x 2 ≡ 0 ( m o d p ) x_1 - x_2 \equiv 0 \left(\mathop{mod}p\right) x1​−x2​≡0(modp),进而 x 1 = x 2 x_1 = x_2 x1​=x2​矛盾

所以 a x ≡ ± y ( m o d p ) ax \equiv \pm y \left(\mathop{mod} p\right) ax≡±y(modp)

引理1

如果 a 2 + 1 ≡ 0 ( m o d p ) a^2 + 1 \equiv 0\left(\mathop{mod} p\right) a2+1≡0(modp)关于 a a a有解,则 p p p可以表示为2个平方数的和
证明:
如果 p ∣ a p \mid a p∣a,则 a 2 + 1 ≡ 1 ( m o d p ) a^2 + 1\equiv 1\left(\mathop{mod}p\right) a2+1≡1(modp),故 p ∤ a p\nmid a p∤a
由Thue’s Theorem,存在 x , y ∈ { 1 , 2 , ⋯ , [ p ] } x,y\in\left\{1,2,\cdots,\left[\sqrt{p}\right]\right\} x,y∈{1,2,⋯,[p ​]},使得 a x ≡ ± y ( m o d p ) ax \equiv \pm y \left(\mathop{mod} p\right) ax≡±y(modp)

于是 a 2 x 2 + x 2 ≡ y 2 + x 2 ≡ 0 ( m o d p ) a^2x^2 + x^2 \equiv y^2 + x^2 \equiv 0\left(\mathop{mod} p\right) a2x2+x2≡y2+x2≡0(modp)
于是 ∃ k ∈ Z , s . t . x 2 + y 2 = k p \exists k \in \mathbb{Z},s.t. \ x^2 + y^2 = kp ∃k∈Z,s.t. x2+y2=kp
x 2 , y 2 ≤ ( [ p ] ) 2 < ( p ) 2 = p x^2,y^2 \le \left(\left[\sqrt{p}\right]\right)^2<\left(\sqrt{p}\right)^2=p x2,y2≤([p ​])2<(p ​)2=p
于是 1 ≤ x 2 + y 2 < 2 p 1 \le x^2 + y^2 <2p 1≤x2+y2<2p,故 k = 1 k=1 k=1
进而 x 2 + y 2 = p x^2 + y^2 = p x2+y2=p

证明

设 p = 4 k + 1 p = 4k +1 p=4k+1
( ( 2 k ) ! ) 2 ≡ ( 1 ⋅ 2 ⋯ 2 k ) ( 1 ⋅ 2 ⋯ 2 k ) m o d p ≡ ( 1 ⋅ 2 ⋯ 2 k ) ( − 1 ) ( − 1 ) ( − 2 ) ⋯ ( − 2 k ) ( − 1 ) 2 k m o d p ≡ ( 1 ⋅ 2 ⋯ 2 k ) ( − 1 ) ( p − 1 ) ( p − 2 ) ⋯ ( p − 2 k ) m o d p ≡ ( 1 ⋅ 2 ⋯ 2 k ) ( − 1 ) ( p − 1 ) ( p − 2 ) ⋯ ( 2 k + 1 ) m o d p ≡ ( p − 1 ) ! m o d p ≡ − 1 m o d p \begin{aligned} \left(\left(2k\right)!\right)^2 &\equiv \left(1\cdot 2 \cdots 2k\right) \left(1\cdot 2 \cdots 2k\right) \mathop{mod} p\\ &\equiv \left(1\cdot 2 \cdots 2k\right) \left(-1\right)\left(-1\right)\left(-2\right)\cdots\left(-2k\right)\left(-1\right)^{2k} \mathop{mod} p\\ &\equiv \left(1\cdot 2 \cdots 2k\right) \left(-1\right)\left(p-1\right)\left(p-2\right)\cdots\left(p-2k\right)\mathop{mod} p\\ &\equiv \left(1\cdot 2 \cdots 2k\right) \left(-1\right)\left(p-1\right)\left(p-2\right)\cdots\left(2k+1\right)\mathop{mod} p\\ &\equiv \left(p-1\right)!\mathop{mod} p\\ &\equiv -1 \mathop{mod} p\\ \end{aligned} ((2k)!)2​≡(1⋅2⋯2k)(1⋅2⋯2k)modp≡(1⋅2⋯2k)(−1)(−1)(−2)⋯(−2k)(−1)2kmodp≡(1⋅2⋯2k)(−1)(p−1)(p−2)⋯(p−2k)modp≡(1⋅2⋯2k)(−1)(p−1)(p−2)⋯(2k+1)modp≡(p−1)!modp≡−1modp​
(其中最后一个等号成立是因为威尔逊定理(Wilson’s Theorem))

也就是说 a 2 + 1 ≡ 0 m o d p a^2+1 \equiv 0 \mathop{mod} p a2+1≡0modp
进而根据引理1 p p p可以表示2个平方数的和

欧拉的证明

第一步:婆罗摩笈多-斐波那契恒等式
第二步:如果一个能表示为两个平方数之和的整数被另一个能表示为两个平方数之和的质数整除,则他们的商也能表示为两个平方数之和
证明:
设 p 2 + q 2 p^2+q^2 p2+q2为质数,且 p 2 + q 2 ∣ a 2 + b 2 p^2 + q^2 \mid a^2 +b^2 p2+q2∣a2+b2
( p b − a q ) ( p b + a q ) = p 2 b 2 − a 2 q 2 = p 2 ( a 2 + b 2 ) − a 2 ( p 2 + q 2 ) \left(pb-aq\right)\left(pb+aq\right) = p^2b^2-a^2q^2 = p^2\left(a^2+b^2\right) - a^2\left(p^2 + q^2\right) (pb−aq)(pb+aq)=p2b2−a2q2=p2(a2+b2)−a2(p2+q2)
因此 ( p 2 + q 2 ) ∣ ( p b − a q ) ( p b + a q ) \left(p^2+q^2\right) \mid \left(pb-aq\right)\left(pb+aq\right) (p2+q2)∣(pb−aq)(pb+aq)
设 ( p 2 + q 2 ) ∣ ( p b − a q ) \left(p^2 + q^2\right) \mid \left(pb-aq\right) (p2+q2)∣(pb−aq)

由于
( a 2 + b 2 ) ( p 2 + q 2 ) = ( a p + b q ) 2 + ( a q − b p ) 2 \left(a^2 + b^2\right)\left(p^2 + q^2 \right) = \left(ap + bq \right)^2 + \left(aq - bp\right)^2 (a2+b2)(p2+q2)=(ap+bq)2+(aq−bp)2
因此 ( p 2 + q 2 ) ∣ ( a p + b q ) 2 \left(p^2 + q^2 \right) \mid \left(ap + bq \right)^2 (p2+q2)∣(ap+bq)2
由 p 2 + q 2 p^2+q^2 p2+q2是质数,所以 ( p 2 + q 2 ) ∣ ( a p + b q ) \left(p^2 + q^2 \right) \mid \left(ap + bq \right) (p2+q2)∣(ap+bq)
a 2 + b 2 p 2 + q 2 = ( a p + b q p 2 + q 2 ) 2 + ( a q − b q p 2 + q 2 ) 2 \frac{a^2 + b^2}{p^2 + q^2}=\left(\frac{ap+bq}{p^2 + q^2}\right)^2 + \left(\frac{aq - bq}{p^2 + q^2}\right)^2 p2+q2a2+b2​=(p2+q2ap+bq​)2+(p2+q2aq−bq​)2
也就他们的商能表示为两个平方数之和

如果 ( p 2 + q 2 ) ∣ ( p b + a q ) \left(p^2 + q^2\right) \mid \left(pb+aq\right) (p2+q2)∣(pb+aq)
则可以利用 ( a 2 + b 2 ) ( p 2 + q 2 ) = ( a p − b q ) 2 + ( a q + b p ) 2 \left(a^2 + b^2\right)\left(p^2 + q^2 \right) = \left(ap - bq \right)^2 + \left(aq + bp\right)^2 (a2+b2)(p2+q2)=(ap−bq)2+(aq+bp)2
然后类似证明

第三步
如果一个能表示为两个平方数之和的整数被另一个不能表示为两个平方数之和的整数整除,则它们的商也必有一个不能表示为两个平方数之和的因子
证明:
设 x x x不能表示为两个平方数之和, x ∣ ( a 2 + b 2 ) , a 2 + b 2 x = p 1 p 2 ⋯ p n x \mid \left(a^2 + b^2\right), \frac{a^2 + b^2}{x} = p_1 p _2 \cdots p_n x∣(a2+b2),xa2+b2​=p1​p2​⋯pn​
设 p i p_i pi​都能被两个平方数之和表示,
则根据第二步的结论, x = a 2 + b 2 p 1 ⋯ p n x = \frac{a^2 + b^2}{p_1 \cdots p_n} x=p1​⋯pn​a2+b2​也能被两个平方数之和表示,矛盾

第四步
如果 a , b a,b a,b互质,则 a 2 + b 2 a^2+b^2 a2+b2的所有因子都能表示为两个平方数之和
证明:
这一步用到了无穷递降法
设 x ∣ ( a 2 + b 2 ) x \mid \left(a^2 + b^2\right) x∣(a2+b2),且 x > 2 x>2 x>2(因为1和2都能表示为两个平方数之和)

a = m x ± c , b = n x ± d a = mx \pm c, \quad b = nx \pm d a=mx±c,b=nx±d
其中 ∣ c ∣ , ∣ d ∣ ≤ x 2 \left|c\right|, \left|d\right| \le \frac{x}{2} ∣c∣,∣d∣≤2x​
(举个例子, m = ⌊ a x ⌋ , c = ( a m o d x ) m = \lfloor \frac{a}{x}\rfloor,c = (a\mathop{mod} x) m=⌊xa​⌋,c=(amodx)如果 c ≤ x 2 c \le \frac{x}{2} c≤2x​, 则 a = m x + c a = mx + c a=mx+c,否则 a = ( m + 1 ) x − ( m − c ) a = (m+1)x - (m-c) a=(m+1)x−(m−c))

a 2 + b 2 = m 2 x 2 ± 2 m x c + c 2 + n 2 x 2 ± 2 n x d + d 2 = A x + ( c 2 + d 2 ) a^2 + b^2 = m^2x^2 \pm 2mxc + c^2 + n^2x^2 \pm 2nxd + d^2 = Ax+\left(c^2 + d^2\right) a2+b2=m2x2±2mxc+c2+n2x2±2nxd+d2=Ax+(c2+d2)
因此 x ∣ ( c 2 + d 2 ) x \mid \left(c^2 + d^2\right) x∣(c2+d2),设 c 2 + d 2 = y x c^2 + d^2 = yx c2+d2=yx

如果 c , d c,d c,d不互质,则他们的最大公约数和 x x x互质(否则它与 x x x的最大公约数能同时整除 a a a和 b b b,与 a , b a,b a,b互质矛盾)
因此他们的最大公约数能整除 y y y
于是 e 2 + f 2 = z x e^2 + f^2 = zx e2+f2=zx,其中 e , f e,f e,f互质
z x = e 2 + f 2 ≤ c 2 + d 2 ≤ ( x 2 ) 2 + ( x 2 ) 2 = 1 2 x zx = e^2 + f^2 \le c^2 +d ^2 \le \left(\frac{x}{2}\right)^2 + \left(\frac{x}{2}\right)^2 = \frac{1}{2}x zx=e2+f2≤c2+d2≤(2x​)2+(2x​)2=21​x
即 z z z不超过 x x x的一半
如果 c c c和 d d d互质,则我们直接使用 c c c和 d d d,不用转成 e e e和 f f f

如果 x x x不能表示为两个数之和,则根据第三步, z z z有一个因子不能表示为两个平方数之和,设为 w w w
w ≤ z ≤ 1 2 x < x w\le z\le\frac{1}{2}x <x w≤z≤21​x<x
x ∣ ( a 2 + b 2 ) , g c d ( a , b ) = 1 x\mid \left(a^2 + b^2\right),\quad gcd\left(a,b\right) =1 x∣(a2+b2),gcd(a,b)=1
w ∣ ( e 2 + f 2 ) , g c d ( e , f ) = 1 w\mid \left(e^2 + f^2\right),\quad gcd\left(e,f\right) = 1 w∣(e2+f2),gcd(e,f)=1
于是我们从 x x x推出了一个更小的整数 w w w,都不能表示为两个平方数之和,但是都能被两个互质的数的平方的和表示
由于这个无穷递降是不可能的,因此 x x x一定能表示为两个平方数之和

第五步
任何形为 4 n + 1 4n + 1 4n+1的质数都能表示为两个平方数之和
证明:
如果质数 p = 4 n + 1 p = 4n + 1 p=4n+1,则根据费马小定理, 1 , 2 4 n , ⋯ , ( 4 n ) 4 n 1,2^{4n},\cdots, \left(4n\right)^{4n} 1,24n,⋯,(4n)4n模 p p p余1
因此他们的差 2 4 n − 1 , 3 4 n − 2 4 n , ⋯ , ( 4 n ) 4 n − ( 4 n − 1 ) 4 n 2^{4n} -1, 3^{4n} -2^{4n},\cdots, \left(4n\right)^{4n} - \left(4n -1\right)^{4n} 24n−1,34n−24n,⋯,(4n)4n−(4n−1)4n都能被 p p p整除
他们的差可以表示为
a 4 n − b 4 n = ( a 2 n + b 2 n ) ( a 2 n − b 2 n ) ( a = b + 1 ) a^{4n} - b^{4n} = \left(a^{2n} + b^{2n} \right)\left(a^{2n} - b^{2n}\right) \quad \left(a = b + 1\right) a4n−b4n=(a2n+b2n)(a2n−b2n)(a=b+1)
由于 p p p是质数,则 p p p一定能整除两个因子之一(以下称他们为"和因子"和"差因子"),
如果他能整除任何一个"和因子",则根据第四步的结论, p p p能表示为两个平方数之和
而如果 p p p能整除所有的 4 n − 1 4n-1 4n−1个"差因子" 2 2 n − 1 , 3 2 n − 2 2 n , ⋯ , ( 4 n ) 2 n − ( 4 n − 1 ) 2 n 2^{2n} -1 ,3^{2n} - 2^{2n}, \cdots, \left(4n\right)^{2n} -\left(4n -1\right)^{2n} 22n−1,32n−22n,⋯,(4n)2n−(4n−1)2n
则它也能整除 4 n − 2 4n -2 4n−2个一阶差(其实相当于 p ∣ ( b − a ) , p ∣ ( c − b ) ⇒ p ∣ ( c − 2 b + a ) p\mid \left(b-a\right),\ p\mid \left(c-b\right)\Rightarrow p\mid \left(c-2b+a\right) p∣(b−a), p∣(c−b)⇒p∣(c−2b+a))
也能整除 4 n − 3 4n -3 4n−3个二阶差, 4 n − 3 4n-3 4n−3个三阶差,以此类推
由于序列 1 k , 2 k , ⋯ 1^k,2^k,\cdots 1k,2k,⋯的 k k k阶差分为常数 k ! k! k!
故 1 2 n , 2 2 n , ⋯ , ( 4 n ) 2 n 1^{2n},2^{2n},\cdots,\left(4n\right)^{2n} 12n,22n,⋯,(4n)2n的 2 n 2n 2n阶差分为 ( 2 n ) ! \left(2n\right)! (2n)!,显然不能被 p p p整除

所以得证

必要性
设奇质数 p = x 2 + y 2 p = x^2 + y^2 p=x2+y2
证明:
奇质数只有 4 k + 1 4k+1 4k+1和 4 k + 3 4k+3 4k+3两种形式

一个数模4有0,1,2,3这4种可能
一个数的平方模4有0,1这两种可能
两个数的平方的和模4有0,1,2这3种可能,所以不可能出现形如 4 k + 3 4k+3 4k+3的数字
故只能是 4 k + 1 4k+1 4k+1,即 p ≡ 1 ( m o d 4 ) p \equiv 1\left(\mathop{mod} 4\right) p≡1(mod4)

两数平方和定理

一个正整数 n n n可以表示为两个数的平方和当且仅当 n n n的形如 4 k + 3 4k+3 4k+3质因子 p p p的幂均为偶数次

证明:
n = s 2 m n = s^2 m n=s2m,其中 s , m ∈ Z s,m \in \mathbb{Z} s,m∈Z, ∀ k > 1 , k ∈ N , s . t . k 2 ∤ m \forall k >1, k \in \mathbb{N}, s.t.\ k^2 \nmid m ∀k>1,k∈N,s.t. k2∤m
(这个一定是满足的,因为你把质因数出现奇数次幂的全部扔给 m m m就可以了)

充分性:设 n n n的形如 4 k + 3 4k+3 4k+3质因子 p p p的幂均为偶数次,则 p ∤ m p \nmid m p∤m

所以 m m m的质因数只有可能为2和形如 4 k + 1 4k+1 4k+1的质数
对于形如 4 k + 1 4k+1 4k+1的质数 p 0 p_0 p0​
由费马平方和定理, p 0 p_0 p0​可以表示为两个数的平方和
而 2 = 1 2 + 1 2 2 = 1^2 + 1^2 2=12+12,因此 m m m的所有因数都可以表示为两个数的平方和
再由婆罗摩笈多-斐波那契恒等式, m m m也可以表示为两个数的平方和
即 ∃ x , y ∈ Z , s . t . m = x 2 + y 2 \exists x,y \in \mathbb{Z},\ s.t.\ m = x^2 + y^2 ∃x,y∈Z, s.t. m=x2+y2
n = s 2 ( x 2 + y 2 ) = ( s x ) 2 + ( s y ) 2 n = s^2\left(x^2 + y^2 \right) = \left(sx\right)^2 + \left(sy \right)^2 n=s2(x2+y2)=(sx)2+(sy)2

必要性:设 n = x 2 + y 2 n = x^2 + y^2 n=x2+y2
当 m = 1 m=1 m=1时, n = s 2 n = s^2 n=s2,故每个质因数的幂均为偶数次

当 m > 1 m>1 m>1时
设 d = g c d ( x , y ) d = gcd\left(x,y\right) d=gcd(x,y)
于是 x = d x 1 , y = d x 2 x = dx_1, y = dx_2 x=dx1​,y=dx2​
n = d 2 ( x 1 2 + x 2 2 ) n d 2 = x 1 2 + x 2 2 s 2 m d 2 = x 1 2 + x 2 2 \begin{aligned} n &= d^2\left(x_1^2 + x_2^2\right)\\ \frac{n}{d^2} &= x_1^2 + x_2^2\\ \frac{s^2 m}{d^2} &= x_1^2 + x_2^2\\ \end{aligned} nd2n​d2s2m​​=d2(x12​+x22​)=x12​+x22​=x12​+x22​​

由于 ∀ k > 1 , k ∈ N , s . t . k 2 ∤ m \forall k >1, k \in \mathbb{N}, s.t.\ k^2 \nmid m ∀k>1,k∈N,s.t. k2∤m
故 d 2 ∤ m d^2 \nmid m d2∤m,所以 d 2 ∣ s 2 d^2 \mid s^2 d2∣s2
于是 ∃ t ∈ Z , s . t . s 2 = t d 2 \exists t \in \mathbb{Z},s.t.\ s^2 = t d^2 ∃t∈Z,s.t. s2=td2
于是 t m = x 1 2 + x 2 2 tm = x_1^2 +x_2^2 tm=x12​+x22​

因为质因数 p p p满足 p ∣ m p\mid m p∣m,所以 p ∣ t m = x 1 2 + x 2 2 p \mid tm = x_1^2 + x_2^2 p∣tm=x12​+x22​
故 x 1 2 + x 2 2 ≡ 0 ( m o d p ) x_1^2 + x_2^2 \equiv 0\left(\mathop{mod} p\right) x12​+x22​≡0(modp)
即 x 1 2 ≡ − x 2 2 ( m o d p ) x_1^2 \equiv - x_2^2\left(\mathop{mod} p\right) x12​≡−x22​(modp)

假设 p = 4 k + 3 p=4k+3 p=4k+3,则 p − 1 = 4 k + 2 = 2 ( 2 k + 1 ) p-1=4k+2=2\left(2k+1\right) p−1=4k+2=2(2k+1)
x 1 2 ≡ − x 2 2 ( m o d p ) ( x 1 2 ) 2 k + 1 ≡ ( − 1 ) 2 k + 1 ( x 2 2 ) 2 k + 1 ( m o d p ) x 1 p − 1 ≡ − x 2 p − 1 ( m o d p ) \begin{aligned} x_1^2 &\equiv -x_2^2\left(\mathop{mod} p\right)\\ \left(x_1^2\right)^{2k + 1} &\equiv \left(-1\right)^{2k+1}\left(x_2^2\right)^{2k+1}\left(\mathop{mod} p\right)\\ x_1^{p-1} &\equiv -x_2^{p-1}\left(\mathop{mod} p\right)\\ \end{aligned} x12​(x12​)2k+1x1p−1​​≡−x22​(modp)≡(−1)2k+1(x22​)2k+1(modp)≡−x2p−1​(modp)​
由于 x 1 x_1 x1​和 x 2 x_2 x2​互质,故 p p p不能同时整除 x 1 x_1 x1​和 x 2 x_2 x2​
设 p ∣ x 1 p \mid x_1 p∣x1​,则 p ∣ x 1 2 p\mid x_1^2 p∣x12​,又因为 p ∣ t m p\mid tm p∣tm, 故 p ∣ t m − x 1 2 = x 2 2 p \mid tm - x_1^2 = x_2^2 p∣tm−x12​=x22​
由于 p p p是质数,所以 p ∣ x 2 p \mid x_2 p∣x2​
与 x 1 x_1 x1​和 x 2 x_2 x2​互质矛盾,故 p ∤ x 1 p\nmid x_1 p∤x1​且 p ∤ x 2 p \nmid x_2 p∤x2​

由费马小定理 x 1 p − 1 ≡ x 2 p − 1 ≡ 1 ( m o d p ) x_1^{p-1} \equiv x_2^{p-1} \equiv 1\left(\mathop{mod} p\right) x1p−1​≡x2p−1​≡1(modp)
进而 1 ≡ − 1 ( m o d p ) 1 \equiv -1 \left(\mathop{mod} p\right) 1≡−1(modp),但是当 p > 2 p>2 p>2时不成立
故 p ≡ 1 ( m o d 4 ) p \equiv 1\left(\mathop{mod} 4\right) p≡1(mod4)或者 p = 2 p=2 p=2
也就是说形如 4 k + 3 4k+3 4k+3的质因数 p p p一定满足 p ∣ s 2 p | s^2 p∣s2,即 p p p的次幂为偶数

勒让德三平方和定理

勒让德三平方和定理(Legendre’s three-square theorem):
n = x 2 + y 2 + z 2 ⇔ n ≠ 4 a ( 8 b + 7 ) n = x^2 + y^2 + z^2 \Leftrightarrow n \neq 4^a\left(8b + 7 \right) n=x2+y2+z2⇔n=4a(8b+7)
其中 n , a , b ∈ N + n, a, b \in \mathbb{N}_+ n,a,b∈N+​

证明:
充分性:设 n = 4 a ( 8 b + 7 ) n = 4^a\left(8b+7\right) n=4a(8b+7)
一个平方数模8只有0,1,4这3种可能
进而3个平方数的和模8只有 0 , 1 , 2 , ⋯ , 6 0,1,2, \cdots, 6 0,1,2,⋯,6这7种可能
4 a ( 8 b + 7 ) 4^a \left(8b +7\right) 4a(8b+7)模8只有0,4,7这3种可能
当 a = 0 a=0 a=0时, 8 b + 7 ≡ 7 m o d 8 8b+7 \equiv 7\mathop{mod} 8 8b+7≡7mod8,不能表示成三个平方数的和
当 a > 0 a>0 a>0时,
4 a ( 8 b + 7 ) 4^a \left(8b +7\right) 4a(8b+7)是一个偶数,所以 x , y , z x,y,z x,y,z要么3个偶数,要么2奇1偶
然而
( 2 x 0 + 1 ) 2 + ( 2 y 0 + 1 ) 2 + ( 2 z 0 ) 2 = 4 ( x 0 2 + y 0 2 + z 0 2 + x 0 + y 0 ) + 2 ≡ 2 m o d 8 \left(2x_0+1\right)^2 + \left(2y_0 + 1\right)^2 + \left(2z_0\right)^2 = 4\left(x_0^2 + y_0^2 + z_0^2 + x_0 + y_0\right) + 2 \equiv 2\mathop{mod}8 (2x0​+1)2+(2y0​+1)2+(2z0​)2=4(x02​+y02​+z02​+x0​+y0​)+2≡2mod8
所以 x , y , z x,y,z x,y,z是3个偶数,则
( x 2 ) 2 + ( y 2 ) 2 + ( z 2 ) 2 = 4 a − 1 ( 8 b + 7 ) \left(\frac{x}{2}\right)^2 + \left(\frac{y}{2}\right)^2 + \left(\frac{z}{2}\right)^2 = 4^{a-1}\left(8b + 7\right) (2x​)2+(2y​)2+(2z​)2=4a−1(8b+7)
这个过程可以一直进行,直到
x 2 + y 2 + z 2 = 8 b + 7 x^2 + y^2 + z^2 = 8b+7 x2+y2+z2=8b+7
所以 4 a ( 8 b + 7 ) 4^a \left(8b +7\right) 4a(8b+7)不能表示成3个平方数的和

必要性: n = x 2 + y 2 + z 2 n = x^2 + y^2 + z^2 n=x2+y2+z2
不会

欧拉四平方和恒等式

欧拉四平方和恒等式(Euler’s four-square identity):
( a 1 2 + a 2 2 + a 3 2 + a 4 2 ) ( b 1 2 + b 2 2 + b 3 2 + b 4 2 ) = ( a 1 b 1 − a 2 b 2 − a 3 b 3 − a 4 b 4 ) 2 + ( a 1 b 2 + a 2 b 1 + a 3 b 4 − a 4 b 3 ) 2 + ( a 1 b 3 − a 2 b 4 + a 3 b 1 + a 4 b 2 ) 2 + ( a 1 b 4 + a 2 b 3 − a 3 b 2 + a 4 b 1 ) 2 \begin{aligned} &\left(a_1^2 + a_2^2 + a_3^2 + a_4^2\right)\left(b_1^2 + b_2^2 + b_3^2 + b_4^2\right) = \\ &\quad \left(a_1 b_1 - a_2 b_2 - a_3 b_3 - a_4 b_4\right)^2 + \\ &\quad \left(a_1 b_2 + a_2 b_1 + a_3 b_4 - a_4 b_3\right)^2 + \\ &\quad \left(a_1 b_3 - a_2 b_4 + a_3 b_1 + a_4 b_2\right)^2 + \\ &\quad \left(a_1 b_4 + a_2 b_3 - a_3 b_2 + a_4 b_1\right)^2 \\ \end{aligned} ​(a12​+a22​+a32​+a42​)(b12​+b22​+b32​+b42​)=(a1​b1​−a2​b2​−a3​b3​−a4​b4​)2+(a1​b2​+a2​b1​+a3​b4​−a4​b3​)2+(a1​b3​−a2​b4​+a3​b1​+a4​b2​)2+(a1​b4​+a2​b3​−a3​b2​+a4​b1​)2​

拉格朗日四平方和定理

拉格朗日四平方和定理(Lagrange’s four-square theorem):
一个自然数可以表示为4个整数的平方的和,即:
p = a 0 2 + a 1 2 + a 2 2 + a 3 2 p = a_0^2 + a_1^2 + a_2^2 + a_3^2 p=a02​+a12​+a22​+a32​

证明:
1 = 0 2 + 0 2 + 0 2 + 1 2 1 = 0^2 + 0^2 + 0^2 + 1^2 1=02+02+02+12
有了欧拉四平方和恒等式,我们只需要证明质数能表示成4个整数的平方的和
又因为
2 = 0 2 + 0 2 + 1 2 + 1 2 2 = 0^2 + 0^2 +1^2 + 1^2 2=02+02+12+12
因此只需要考虑奇质数

由于 { a 2 : a ∈ { 0 , 1 , ⋯ , p − 1 2 } } \left\{ a^2: a\in \left\{0,1,\cdots, \frac{p - 1}{2}\right\} \right\} {a2:a∈{0,1,⋯,2p−1​}}模 p p p有 p + 1 2 \frac{p + 1}{2} 2p+1​个不同的结果
{ − b 2 − 1 : b ∈ { 0 , 1 , ⋯ , p − 1 2 } } \left\{ -b^2 - 1: b\in \left\{0,1,\cdots, \frac{p - 1}{2}\right\} \right\} {−b2−1:b∈{0,1,⋯,2p−1​}}模 p p p也有 p + 1 2 \frac{p + 1}{2} 2p+1​个不同的结果
但是一个数模 p p p只有 p p p个结果
因此存在 a , b ∈ { 0 , 1 , 2 ⋯ , p − 1 2 } a,b \in \left\{0,1,2\cdots, \frac{p-1}{2}\right\} a,b∈{0,1,2⋯,2p−1​},使得 a 2 ≡ − b 2 − 1 ( m o d p ) a^2 \equiv -b^2 -1 \left(\mathop{mod} p\right) a2≡−b2−1(modp)
也就是说 a 2 + b 2 + 1 2 + 0 2 ≡ 0 ( m o d p ) a^2 + b^2 +1^2 +0^2 \equiv 0 \left(\mathop{mod} p\right) a2+b2+12+02≡0(modp)
存在 n ∈ Z n \in \mathbb{Z} n∈Z,满足 n p = a 2 + b 2 + 1 np = a^2 + b^2 +1 np=a2+b2+1
则有 p ≤ n p ≤ 2 ( p − 1 2 ) 2 + 1 < p 2 p \le np \le 2\left(\frac{p - 1}{2}\right)^2 + 1 < p^2 p≤np≤2(2p−1​)2+1<p2,于是 1 ≤ n < p 1 \le n <p 1≤n<p

因此存在一个 1 ≤ n < p 1 \le n <p 1≤n<p满足 n p = a 2 + b 2 + 1 2 + 0 2 np = a^2 + b^2 + 1^2 +0^2 np=a2+b2+12+02
必然存在一个最小的正整数 m m m,满足 1 ≤ m ≤ n < p 1\le m \le n < p 1≤m≤n<p,
使得 m p = x 1 2 + x 2 2 + x 3 2 + x 4 2 mp = x_1^2 + x_2^2 + x_3^2 + x_4^2 mp=x12​+x22​+x32​+x42​

假设 1 < m ≤ n < p 1 < m \le n <p 1<m≤n<p
令 y i ≡ x i ( m o d m ) , i = 1 , 2 , 3 , 4 y_i \equiv x_i\left(\mathop{mod} m\right),\quad i = 1,2,3,4 yi​≡xi​(modm),i=1,2,3,4
并且 − m 2 < y i ≤ m 2 -\frac{m}{2}< y_i \le \frac{m}{2} −2m​<yi​≤2m​
因此
y 1 2 + y 2 2 + y 3 2 + y 4 2 ≡ x 1 2 + x 2 2 + x 3 2 + x 4 2 ≡ m p ≡ 0 ( m o d m ) y_1^2 +y_2^2 + y_3^2 + y_4^2 \equiv x_1^2 + x_2^2 + x_3^2 + x_4^2 \equiv mp \equiv 0\left(\mathop{mod} m\right) y12​+y22​+y32​+y42​≡x12​+x22​+x32​+x42​≡mp≡0(modm)
令 m r = y 1 2 + y 2 2 + y 3 2 + y 4 2 mr = y_1^2 +y_2^2 + y_3^2 + y_4^2 mr=y12​+y22​+y32​+y42​,则 m r ≤ 4 ( m 2 ) 2 = m 2 mr \le 4 \left(\frac{m}{2}\right)^2 = m^2 mr≤4(2m​)2=m2

如果 r = m r=m r=m,则 y i = m 2 y_i = \frac{m}{2} yi​=2m​
进而 m p = x 1 2 + x 2 2 + x 3 2 + x 4 2 ≡ 4 ( m 2 ) 2 ≡ 0 ( m o d m 2 ) mp = x_1^2 + x_2^2 + x_3^2 + x_4^2 \equiv 4\left( \frac{m}{2}\right)^2 \equiv 0\left(\mathop{mod} m^2\right) mp=x12​+x22​+x32​+x42​≡4(2m​)2≡0(modm2)
m 2 ∣ m p ⇒ m ∣ p m^2 \mid mp\Rightarrow m\mid p m2∣mp⇒m∣p,与 p p p为质数矛盾
因此 1 ≤ r < m ≤ n < p 1 \le r <m \le n <p 1≤r<m≤n<p

进一步
( m p ) ( m r ) = ( x 1 2 + x 2 2 + x 3 2 + x 4 2 ) ( y 1 2 + y 2 2 + y 3 2 + y 4 2 ) = z 1 2 + z 2 2 + z 3 2 + z 4 2 \left(mp\right)\left(mr\right) = \left(x_1^2 + x_2^2 + x_3^2 + x_4^2\right)\left(y_1^2 +y_2^2 + y_3^2 + y_4^2\right) = z_1^2 +z_2^2 + z_3^2 + z_4^2 (mp)(mr)=(x12​+x22​+x32​+x42​)(y12​+y22​+y32​+y42​)=z12​+z22​+z32​+z42​
其中 z i z_i zi​如欧拉恒等式中表达的那样
y i ≡ x i ( m o d m ) ⇒ x i y j ≡ x j y i ( m o d m ) y_i \equiv x_i\left(\mathop{mod} m\right)\Rightarrow x_iy_j \equiv x_j y_i\left(\mathop{mod} m\right) yi​≡xi​(modm)⇒xi​yj​≡xj​yi​(modm)
因此 z i ≡ 0 ( m o d m ) , i = 2 , 3 , 4 z_i \equiv 0 \left(\mathop{mod} m\right),\quad i = 2,3,4 zi​≡0(modm),i=2,3,4
又因为
z 1 = x 1 y 2 + x 2 y 2 + x 3 y 3 + x 4 y 4 ≡ y 1 2 + y 2 2 + y 3 2 + y 4 2 ≡ 0 ( m o d m ) z_1 = x_1y_2+x_2 y_2 + x_3 y_3 + x_4 y_4 \equiv y_1^2 + y_2^2 + y_3^2 + y_4^2\equiv 0\left(\mathop{mod} m\right) z1​=x1​y2​+x2​y2​+x3​y3​+x4​y4​≡y12​+y22​+y32​+y42​≡0(modm)

因此 z i ≡ 0 ( m o d m ) , i = 1 , 2 , 3 , 4 z_i \equiv 0 \left(\mathop{mod} m\right),\quad i = 1,2,3,4 zi​≡0(modm),i=1,2,3,4
令 z i = w i m z_i = w_i m zi​=wi​m
( m p ) ( m r ) = z 1 2 + z 2 2 + z 3 2 + z 4 2 = ( w 1 2 + w 2 2 + w 3 2 + w 4 2 ) m 2 ⇒ p r = w 1 2 + w 2 2 + w 3 2 + w 4 2 \left(mp\right)\left(mr\right) = z_1^2 +z_2^2 + z_3^2 + z_4^2 =\left(w_1^2 +w_2^2 + w_3^2 + w_4^2\right)m^2\\ \Rightarrow pr = w_1^2 +w_2^2 + w_3^2 + w_4^2 (mp)(mr)=z12​+z22​+z32​+z42​=(w12​+w22​+w32​+w42​)m2⇒pr=w12​+w22​+w32​+w42​
因为 1 ≤ r < m 1 \le r <m 1≤r<m,与 m m m最小矛盾
因此一个奇质数可以表示为4个整数的平方的和

Leetcode633

一个数能否表示为2个整数的平方和

使用两数平方和定理:形如 4 k + 3 4k+3 4k+3的质因子的次幂为偶数

class Solution {public:bool judgeSquareSum(int c) {for(int i = 2; i * i <= c; ++i){if(c % i == 0){int cnt = 0;while(c % i == 0){++cnt;c /= i;}if(i % 4 ==3 && cnt % 2 != 0){return false;}}}return c % 4 != 3;}
};

Leetcode279

一个数最少需要几个数的平方和表示

由拉格朗日四平方和定理,最多4个
再根据勒让德三平方和定理,如果形如 4 a ( 8 b + 7 ) 4^a\left(8b+7\right) 4a(8b+7),则需要4个
否则就暴力看看需要1,2,还是3

class Solution {public:int numSquares(int n) {while(n%4==0)n/=4;if(n%8==7)return 4;for(int i=0;i*i<=n;++i){int j=sqrt(n-i*i);if(i*i+j*j==n){return !!i+!!j;}}return 3;}
};

参考
https://en.wikipedia.org/wiki/Brahmagupta%E2%80%93Fibonacci_identity
https://zh.wikipedia.org/wiki/%E8%B4%B9%E9%A9%AC%E5%B9%B3%E6%96%B9%E5%92%8C%E5%AE%9A%E7%90%86
https://en.wikipedia.org/wiki/Fermat%27s_theorem_on_sums_of_two_squares
https://en.wikipedia.org/wiki/Sum_of_two_squares_theorem
http://www.math.uchicago.edu/~may/VIGRE/VIGRE2008/REUPapers/Bhaskar.pdf
https://en.wikipedia.org/wiki/Legendre%27s_three-square_theorem
https://en.wikipedia.org/wiki/Lagrange%27s_four-square_theorem

两数平方和定理,勒让德三平方和定理,拉格朗日四平方和定理相关推荐

  1. 拉格朗日四平方和定理c语言,费马平方和定理 拉格朗日四平方和定理

    费马平方和定理 费马平方和定理:奇质数能表示为两个平方数之和的充分必要条件是该质数被4除余1.第一步 "如果两个整数都能表示为两个平方数之和,则它们的积也能表示为两个平方数之和." ...

  2. Pollard_rho大数质因数分解+拉格朗日四平方和定理(bzoj 2904: 平方和)

    2904: 平方和 Time Limit: 10 Sec  Memory Limit: 128 MB Submit: 160  Solved: 73 [Submit][Status][Discuss] ...

  3. 拉格朗日四平方和定理

    目录 一,拉格朗日四平方和定理 二,证明过程 三,推论 四,OJ实战 CSU 1404 Four-square Theorem 力扣 279. 完全平方数 一,拉格朗日四平方和定理 每个正整数均可表示 ...

  4. leetcode279 拉格朗日四平方和定理

    给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n.你需要让组成和的完全平方数的个数最少. 输入: n = 12 输出: 3 解释: 12 = 4 + ...

  5. xjoi 1542 玩玩拉格朗日四平方和定理

    题目描述: 拉格朗日四平方和定理: 每一个非负整数都可以表示成四个非负整数的平方和. 例如 5 = 0^2 + 0^2 + 1^2 + 2^2 给定一个正整数n,请你将n拆成 a^2+b^2+c^2+ ...

  6. 拉格朗日四平方和定理c语言,拉格朗日四平方定理的证明

    黄波 [摘 要]拉格朗日四平方定理又被称为Bachet猜想.说的是任何正整数都能被写成至多4个数的平方和.虽然定理由费马用无限下降的方法给出了证明,但证明过程很繁杂.欧拉没有成功证明定理.对这个定理第 ...

  7. P2669 金币,国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十

    题目描述 国王将金币作为工资,发放给忠诚的骑士.第一天,骑士收到一枚金币:之后两天(第二天和第三天),每天收到两枚金币:之后三天(第四.五.六天),每天收到三枚金币:之后四天(第七.八.九.十天),每 ...

  8. 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天)里,每天收到两枚金币;之后三天(第四、五、六天)里,每天收到三枚金币;之后四天(第七、八、九、十天)里

    描述 国王将金币作为工资,发放给忠诚的骑士.第一天,骑士收到一枚金币:之后两天(第二天和第三天)里,每天收到两枚金币:之后三天(第四.五.六天)里,每天收到三枚金币:之后四天(第七.八.九.十天)里, ...

  9. C语言中求两数最大公约数的三种方法

    1.穷举法 思路: 首先对输入的两个数x,y判断两者的大小,取两者中较小的数放入i中.然后用x%i;y%i,如果两者都为0,则此时i为最大公约数.如果其中有一个不为0,则i减1后再用x,y分别模上i( ...

最新文章

  1. 解压文件出错解决方法(invalid compressed data--format violated)
  2. 关于网站域名的配置过程
  3. destoon php,DESTOON_7.0_UTF8
  4. C# 指定Webbrowser控件所用IE内核版本
  5. mysql5.7命中率_MySQL5.7中 performance和sys schema中的监控参数解释(推荐)
  6. IOS开发基础之画板案例软件的开发
  7. linux网络编程之Socket编程
  8. 微软应提前发布专用于ARM处理器的Windows 8平板电脑系统
  9. jsp+easyui+DataGrid 例子
  10. micropython esp32驱动舵机_PCA9685舵机控制板与MicroPython-ESP32-1Z实验室
  11. hive中一个好用的函数reflect
  12. 【选手分享】拿不到周冠军,我就只能写个好点的经验分享上首页了
  13. 学习强化学习无法避开的两个词:Model-Based与Model-Free
  14. python创建图形界面_Python入门四:创建第一个图形界面-Go语言中文社区
  15. Tiny服务的开发配套的工具来了
  16. putty怎么进入文件夹_如何安装及使用PuTTY
  17. 遗传算法基本原理及在互联网中的应用
  18. linux加载scsi硬盘驱动程序使用,linux scsi硬盘的安装
  19. Unity Shader - Standard Shader 标准着色器
  20. Android游戏开发教程汇总

热门文章

  1. 船用碳纤维复合材料的发展趋势变化
  2. Linux的历史----Linux内核剖析(一)
  3. 【Python】输入某年某月某日,判断这一天是这一年的第几天?
  4. Java方法的定义和使用
  5. 自投递简历以来的第一次面试
  6. JavaScript事件——event对象事件冒泡 阻止默认行为事件捕获
  7. 局域网中,IP冲突怎么解决,思路陈列
  8. 解决手动添加打印机时无usb口的方法
  9. 科学计算机主板,电脑主板的科普知识大全
  10. 贺兰企业亮相北京地铁 国品专列助力“乡村振兴”