ぺるせんたげの学習帳

手作り数学のブログです

斜辺を共有するピタゴラス数たち(解決編)

これの続きです。↓↓↓

percentage011.hatenablog.com

今回はこれの解決編として、非原始解も含めた二平方和分解の正確な個数とその具体的な値を与えます。これにより、斜辺を共有するピタゴラス数たちについての完全な情報の記述を目指します。



1. 前回の復習

斜辺を共有するピタゴラス数の二平方和分解の方法について、前回の記事で以下のような結果を得ました。

斜辺の長さ

\displaystyle{c=(\prod_{i=1}^{N}p_i^ {s_i})(\prod_{i=1}^{M}q_i^ {t_i})}

について、
1) t_i=0の場合:
 1つのcに対して原始ピタゴラス数は少なくとも2^ {N-1}個存在する
 非原始解を含めるともっとたくさん存在すると予想される
2) s_i=0の場合:
 ピタゴラス数にならない
3) t_iが非負偶数のとき:
 原始解を持たないが、非原始解を少なくとも2^ {N-1}個持つ

c の素因数を 4 で割ったあまりで分類することで、分解できる条件と原始解の個数の下限が得られました、というのが前回までのあらすじです。

逆にわかっていないのは、非原始解の個数とその具体的な値、分解と再構成の方法がガウス整数の範囲での因数分解とブラーマグプタの二平方恒等式によるもの以外に存在するのかしないのか、でした。これが原因で少なくともという控えめな主張に留まっています。
ということで、前回手をつけなかった非原始解について調べます。

2. 非原始解の構成

これまで非原始解についてはあまり触れてきませんでした。先に原始解について考察した方が見通しが良くなるだろうという直感があったからです。
前回の記事では、一度分解した素因数が再生しないように分割することで原始解を構成しました。そうしなければ分解した素因数が再生して非原始解になってしまうからでした。よって、今回は一部だけ分解しないまま残すことで非原始解を構成します。
4で割って3余る素数q_iはいくつあっても分解の個数に影響しないので、4で割って1余る素数p_iのみを素因数に持つ場合を考えます。つまり上の式においてt_i=0として考えます。

分解しない素因数として、例えばs_N個あるp_Nのうち一つだけを分解しないことを考えると、まず思いつく非原始解\frac{c}{p_N}の原始解p_Nをかけた形のものです。\frac{c}{p_N}の原始解D\left(\frac{c}{p_N}\right)個存在し、それぞれにp_Nをかけることで同数の非原始解が生成されるので、このようなタイプの非原始解の個数はD\left(\frac{c}{p_N}\right)です。
また、前回の記事で示したように、原始解の個数は素因数の指数に依存しません。素因数の種類の個数のみが大事でした。なので一般にD(c)=D\left(\frac{c}{p_N}\right)=D\left(\frac{c}{{p_N}^{2}}\right)=D\left(\frac{c}{{p_N}^{3}}\right)=\cdots =D\left(\frac{c}{{p_N}^{s_N-1}}\right)となります。

ここでp_Nを全く分解せず完全に保存すると、分解の対象は\displaystyle{\prod_{i=1}^{N-1}p_i^ {s_i}}となり、分解の対象に含まれる素因数の種類が減るので、指数が原始解の個数に影響しないことを考慮することで、原始解の個数は\displaystyle{D\left(\prod_{i=1}^{N-1} p_i\right)}となります。

これは非原始解の個数を考える上で大事な点です。
分解の対象に含まれる素因数の種類の個数が変わらないうちは、その素因数の指数がなんであれ原始解の個数が一定なので、分解の対象に含まれる素因数p_iの指数を\sigma_i (1\leq \sigma_i \leq s_i)、分解の対象に含まれない素因数の添字をl_\lambdaとすれば、L_n=\{l_1, l_2, \cdots , l_n\}として
\displaystyle{D\left(\frac{c}{(\prod_{i \notin L_n}p_i^ {s_i-\sigma_i})(\prod_{i \in L_n}p_i^ {s_i})}\right)=D\left(\prod_{i\notin L_n}p_i ^{\sigma_i}\right)=D\left(\prod_{i\notin L_n}p_i\right)}です。
ここで、nにはn \lt Nという条件を課しておきます。n=Nのときは分解の対象が1となり、この場合は考えても意味がないからです。

こうして得られた原始解に、分解しないまま保存しておいた素因数を全てかけることで、分解の対象に含まれる素因数の種類の個数がN-nのときの分解が全て得られることになります。\forall i, \sigma_i=s_iの場合が原始解、それ以外の場合が非原始解に相当し、\{ \sigma_i | i \notin L_n \}の選び方は\displaystyle{\prod_{i \notin L_n}s_i}通りあるので、あるL_nに関する(非原始解も含めた)分解の個数をE(L_n)とすると、ここまでの議論は次の式としてまとめられます:
\displaystyle{E(L_n)=\left(\prod_{i\notin L_n}s_i\right) \times D\left(\prod_{i\notin L_n}p_i\right)}


3. 非原始解の網羅

次に、あるnに対して可能な全てのL_nについて考えます。

L_nN個の素因数p_iのうち分解の対象に含まれないものの添字の集合なので、その選び方は{}_N C_n通りあり、前節で得たE(L_n){}_N C_nをかければ良い……となれば楽ですが、実際にはこうなりません。各素因数p_iの指数s_iが同じとは限らないために、L_nの中身が違えば\displaystyle{\prod_{i\notin L_n}s_i}が違ってくる可能性があるからです。
よって、\displaystyle{\sum_{L_n}}を「可能な全てのL_nについての総和」を得る記号として導入することで、あるnに関する(非原始解も含めた)分解の個数をE_nとすると、nが固定なら\displaystyle{D\left(\prod_{i\notin L_n}p_i\right)}L_nに依らず一定なので、
\displaystyle{E_n=\sum_{L_n} E(L_n)=\sum_{L_n} \left(\prod_{i\notin L_n}s_i\right) \times D\left(\prod_{i\notin L_n}p_i\right)}
となります。
更に、n0からN-1まで動かして足すことで、知りたかったcの分解の個数E(c)について、次の式が得られます:
\displaystyle{E(c)=\sum_{n=0}^{N-1}E_n=\sum_{n=0}^{N-1}\left\{\sum_{L_n} \left(\prod_{i\notin L_n}s_i\right) \times D\left(\prod_{i\notin L_n}p_i\right)\right\}}

さて、前回の記事で \displaystyle{D\left(\prod_{i\notin L_n}p_i\right) \geq 2^{N-n-1}}という不等式が得られているので、E(c)についても同様に
\displaystyle{E(c) \geq \sum_{n=0}^{N-1} 2^{N-n-1} \sum_{L_n}\prod_{i\notin L_n}s_i=\frac{1}{2} \sum_{n=0}^{N-1}\sum_{L_n}\prod_{i\notin L_n}2s_i}
と書けます。

この中で\displaystyle{\sum_{L_n}\prod_{i\notin L_n}2s_i}の部分は、可能な全ての組合せL_nに従ってN個の2s_iの中からN-n個選んで積を作り、それらを全て足したものです。これはN多項式\displaystyle{\prod_{i=1}^{N}(x+2s_i)}n次の項の係数に一致するので、
\displaystyle{E(c) \geq \frac{1}{2} \left\{\prod_{i=1}^{N}(1+2s_i)-1\right\}}
となります。最後に1を引いているのは、N多項式\displaystyle{\prod_{i=1}^{N}(x+2s_i)}N次の項に対応するn=Nの場合を除いているからです。


これで、原理的に特定できないs_iのみで書かれた式になりました。

4. ヤコビの二平方定理

限界まで情報を抽出することで、原始解の評価から更に進んで c の分解についての一定の評価ができました。
ここからどうしようか、という話になりますが、実はこの問題はほとんど解決されています。それを教えてくれるのがヤコビの二平方定理です。

ヤコビの二平方定理 自然数nを高々二個の平方数の和で表す方法の数r_2(n)
\displaystyle{r_2(n)=4\sum_{2\nmid d|n}^{}(-1)^{\frac{d-1}{2}}}
で与えられる


2\nmid dは「2dの約数ではない」、d\mid nは「dnの約数である」、という意味です。
この式を日本語に翻訳すると、「n の約数のうち、4 を法にして 1 と合同になるものの個数から 3 と合同になるものの個数を引いたものの 4 倍に等しい」くらいのことになります。

……これこそまさに求めていた分解の個数そのものですね。
正確には、ヤコビの二平方定理の言う「平方数の和」とは、n^ 2=0^ 2+n^ 2を含み、更にn^ 2=(\pm a)^ 2+(\pm b)^ 2=(\pm b)^ 2+(\pm a)^ 2のように左右や負号を入れ替えたものも区別します。この記事では前者を考えないため 4 通りを除外し、後者については全て同一視するので個数が \frac{1}{8} になるので、分解の個数は r'_2(n)=\frac{1}{8}\{r_2(n)-4\}とカウントします。

さて、c4 を法にして 1 と合同になる素因数p_i のみでできているので、c^2の約数のうち、4 を法にして 1 と合同になるものの個数は\displaystyle{\prod_{i=1}^{N}(2s_i+1)}です。
従って、上の式を使えば\displaystyle{r_2(c^2)=4\sum_{2\nmid d|c^2}^{}(-1)^{\frac{d-1}{2}}=4\prod_{i=1}^{N}(2s_i+1)}と書け、これを r'_2(c^2)に変換すると \displaystyle{r'_2(c^2)=\frac{1}{8}\left\{4\prod_{i=1}^{N}(2s_i+1)-4\right\}=\frac{1}{2}\left\{\prod_{i=1}^{N}(2s_i+1)-1\right\}}となります。


これはE(c)の下限そのものです。一方でヤコビの二平方定理は言わば分解個数の上限を与えるものなので、上限と下限が一致しました。

以上から、c の二平方和分解の正確な個数とその具体的な値が、前回の記事で行ったブラーマグプタの二平方恒等式による方法で完全に記述しきれていることがわかりました。

5. 結論

ピタゴラスの定理について「一つの斜辺の長さがどんな場合にいくつの解を持つのか」という疑問から始まって、最終的にヤコビの二平方定理の詳細について、完全な記述とその具体的な値の構成法が得られました。

ここで、得られた結果をまとめておきます。

斜辺の長さ \displaystyle{c=(\prod_{i=1}^{N}p_i^ {s_i})(\prod_{i=1}^{M}q_i^ {t_i})} について、
1) t_i=0の場合:
 原始解2^{N-1}
 非原始解を含めると\displaystyle{\frac{1}{2} \left\{\prod_{i=1}^{N}(2s_i+1)-1\right\}}
2) s_i=0の場合:
 ピタゴラス数にならない
3) t_iが非負偶数のとき:
 原始解はない
 非原始解\displaystyle{\frac{1}{2} \left\{\prod_{i=1}^{N}(2s_i+1)-1\right\}}


前回の課題を解決できてよかったです。

終わり




参考

ヤコビの二平方定理 - Wikipedia