最終更新:2019/04/27

ピタゴラス数の求め方とその証明

分野: 整数問題  レベル: 最難関大学

ピタゴラス数とは,直角三角形の3辺の長さとなるような3つの整数の組のことです。例えば,3辺の長さが $(3,4,5)$ であるような直角三角形が存在するので,$(3,4,5)$ はピタゴラス数です。

この記事では,ピタゴラス数の意味や,ピタゴラス数を生み出す公式について解説します。

ピタゴラス数とは

ピタゴラス数とは,直角三角形の3辺の長さとなるような3つの整数の組のことです。

ピタゴラスの定理(三平方の定理)を使うと,
$a^2+b^2=c^2$ を満たす自然数の組 $(a,b,c)$ をピタゴラス数と呼ぶ。
と言うこともできます。

例えば,
$3^2+4^2=5^2$
なので $(3,4,5)$ はピタゴラス数です。

他にも,
$5^2+12^2=13^2$
なので $(5,12,13)$ もピタゴラス数です。

ピタゴラス数を作り出す公式

正の整数 $m,n\:(m>n)$ を用いて,
$a=m^2-n^2,b=2mn,c=m^2+n^2$
とすると,$(a,b,c)$ はピタゴラス数になります。

この公式を使うと,いくらでもピタゴラス数を作ることができます。

例えば,$m=2,n=1$ とすれば,
$(a,b,c)=(3,4,5)$

$m=3,n=2$ とすれば,
$(a,b,c)=(5,12,13)$

となり,さきほどのピタゴラス数の例を作り出すことができました。

実際,
$(m^2-n^2)^2+(2mn)^2=(m^2+n^2)^2$
なので,
$a=m^2-n^2,b=2mn,c=m^2+n^2$
とすれば $(a,b,c)$ はピタゴラス数になることが分かります。

では,逆に「全てのピタゴラス数」をこの方法で生み出せるでしょうか?

原始ピタゴラス数とは

ピタゴラス数は,定数倍してもピタゴラス数なので最大公約数が $1$ のもののみを考えます。

例えば,$(3, 4, 5)$ がピタゴラス数なので $(6, 8, 10),(9,12,15)$ などもピタゴラス数ですが,それらは「同じ」ピタゴラス数とみなします。

最大公約数が $1$ のピタゴラス数を原始ピタゴラス数と言います。

全ての原始ピタゴラス数を生み出す

実は,さきほどの公式:
$a=m^2-n^2,b=2mn,c=m^2+n^2$
で「全ての原始ピタゴラス数」を作り出すことができます!

定理:
ピタゴラス数の中で $a,b,c$ の最大公約数が $1$ のものは,ある正の整数 $m,n$ を用いて
$a=m^2-n^2,b=2mn,c=m^2+n^2$
(または $b=m^2-n^2,a=2mn,c=m^2+n^2$)
という形で表せる。

この定理を知っていると,ピタゴラス数にまつわる入試問題の見通しが良くなることがあります。

全ての原始ピタゴラスが表せることの証明

上記の定理を証明してみます。

方針:以下の順番で証明していきます。
1:$a$ と $b$ のどちらか一方のみ奇数で他方は偶数。 $c$ は奇数である。
2:$\dfrac{c+a}{2}, \dfrac{c-a}{2}$ はともに平方数である。
3:公式の導出

1の証明

$(a,b,c)$ を原始ピタゴラス数とする。
$a,b$ ともに偶数だと $c$ も偶数となり最大公約数が1でなくなる。 $a,b$ ともに奇数だと $a^2+b^2$ は $4$ で割って2余るが,$c^2$ は4で割った余りは0か1なので不適。
つまり,$a$ と $b$ のどちらか一方のみ奇数で他方は偶数。
よって,$a^2+b^2$ が奇数なので $c$ も奇数
$a$ を奇数,$b$ を偶数としても一般性を失わない。

次に2を背理法で証明します。

2の証明

$\dfrac{c+a}{2}$ と $\dfrac{c-a}{2}$ のどちらか一方でも平方数でないとすると,それらの積は平方数である($\dfrac{c+a}{2}\cdot \dfrac{c-a}{2}=\dfrac{b^2}{4}$ に注意)ので
$\dfrac{c+a}{2}$ と $\dfrac{c-a}{2}$ は共通因数 $p\geq 2$ を持つ。つまり,$c+a=2up, c-a=2vp$ ただし $u,v$ は自然数,と書ける。
これを $a,c$ について解くと,
$a=(u-v)p, c=(u+v)p$
よって,$a,c$ はともに $p$ の倍数となり,さらに $b$ も $p$ の倍数となるので原始ピタゴラス数であるという仮定に矛盾。

最後に整理します。

3の証明

2より $\dfrac{c+a}{2}=m^2,\dfrac{c-a}{2}=n^2$ と書けるので,これを $a,c$ について解くと
$a=m^2-n^2,c=m^2+n^2$ となり証明完了。

なお,この証明中には整数問題の重要なテクニックが2つ含まれています。
「割った余りを考える(平方剰余)」により1の証明が,
「整数問題の不定方程式は因数分解すべし」により2の証明が自然と思いつくようになれば玄人です。

2015/4/2:大幅に追記・修正しました。

ピタゴラス数を全て作り出せるというのはすごい!

Tag: 不定方程式の解き方まとめ