本原勾股数组
本原勾股数组(简称PPT)是一个三元组(a,b,c),其中a,b,c没有公因数,且满足
a 2 + b 2 = c 2 a^2+b^2=c^2 a2+b2=c2
下面的定理可以求它的所有解。
勾股数组定理
每个本原勾股数组都可以由以下公式得出:
a
=
s
t
,
b
=
s
2
−
t
2
2
,
c
=
s
2
+
t
2
2
a=st,b=\frac{s^2-t^2}{2},c=\frac{s^2+t^2}{2}
a=st,b=2s2−t2,c=2s2+t2
其中 s > t ⩾ 1. s>t\geqslant1. s>t⩾1.
证明
证明分两部分,一是正证(推出定理),二是反证(定理反推)。
(一)正证
从公式 a 2 + b 2 = c 2 a^2+b^2=c^2 a2+b2=c2可知,a与b的奇偶性不同且c为奇数。(通过假设排除可得)
通过因式分解,我们可以得到:
a
2
=
(
c
−
b
)
(
c
+
b
)
a^2=(c-b)(c+b)
a2=(c−b)(c+b)
(实际列举时发现(c-b)和(c+b)都是平方数,那如何证明呢?)
首先可以证明(c-b)和(c+b)都没有公因数。
证明如下:
假设d是(c-b)和(c+b)的公因数,则
d|(c-b)+(c+b)
d|(c-b)-(c+b)
化简如下:
d|2c
d|2b
根据条件可知c和b没有公因数,所以d=1/2
又因为d|a^2 所以d=1
证毕。
其次,通过素数唯一分解定理可知
对于 a 2 = ( c − b ) ( c + b ) a^2=(c-b)(c+b) a2=(c−b)(c+b) 来说,只有当 c − b c-b c−b 和 c + b c+b c+b 本身都是平方数时,该式才能成立。
所以可以记成: c − b = s 2 c-b=s^2 c−b=s2 , c + b = t 2 c+b=t^2 c+b=t2
整理后可得:
a
=
s
t
,
b
=
s
2
−
t
2
2
,
c
=
s
2
+
t
2
2
a=st,b=\frac{s^2-t^2}{2},c=\frac{s^2+t^2}{2}
a=st,b=2s2−t2,c=2s2+t2
其中 s > t ⩾ 1 s>t\geqslant1 s>t⩾1 且 g c d ( s , t ) = 1 gcd(s,t)=1 gcd(s,t)=1
(二)反证
首先,通过代数运算可得:
(
s
t
)
2
+
(
s
2
−
t
2
2
)
2
=
(
s
2
+
t
2
2
)
2
(st)^2+(\frac{s^2-t^2}{2})^2=(\frac{s^2+t^2}{2})^2
(st)2+(2s2−t2)2=(2s2+t2)2
然后还要证明 ( a , b , c ) (a,b,c) (a,b,c)无公因数
通过
(
s
,
t
)
(s,t)
(s,t)无公因数这个条件,分别用反证法证明
(
s
t
,
s
2
−
t
2
2
)
(st,\frac{s^2-t^2}{2})
(st,2s2−t2)
(
s
t
,
s
2
+
t
2
2
)
(st,\frac{s^2+t^2}{2})
(st,2s2+t2)
(
s
2
−
t
2
2
,
s
2
+
t
2
2
)
(\frac{s^2-t^2}{2},\frac{s^2+t^2}{2})
(2s2−t2,2s2+t2)都没有公因数即可。
(自己写的太冗余了就不放出来了- -)
结尾
其实数论不仅有公式,还有证明。看一下还蛮有意思的,下次更新 线性同余定理!
参考书目:《A Friendly Introduction to Number Theory》