Maxima で綴る数学の旅

紙と鉛筆の代わりに、数式処理システムMaxima / Macsyma を使って、数学を楽しみましょう

-数学- 終結式、平方剰余の相互法則、リュカ多項式 (1)

f:id:jurupapa:20200618183849j:plain

 この記事のコードをJupyter notebook形式で見るにはこちら。


数学者が運営している数学ブログを見つけては読んでいます。そんな中、とても面白い記事を見つけました。

ジョージア工科大学数学科のMatt Baker教授のブログの記事で、「リュカ多項式を使った平方剰余の相互法則の新しい証明」というものです。世の中には300以上の、平方剰余の相互法則の異なる証明があるけれど、教授の知っている限り、この証明は今まで知られていなかったそうです。 

新証明、も興味を惹かれますが、もっと素敵なのは、「終結式の基本的な結果」を認めれば本当に簡単に理解できる証明になっていることです。

上記の記事ではリュカ多項式(Lucas Polynomials)から始めていますが、この記事では終結式の説明から始めます。2回連載の記事で、今回は終結式の話と相互法則の証明方針を説明します。次回はルカ多項式を導入し、証明を完結します。

 

終結式、英語ではresultantといい、maximaではresultant(P1,P2,var)という形式で呼び出せます。ここにP1, P2はvarに関する多項式で、f, gに共通解があれば0になる、という性質があります。

以下、ちゃんと定義してみます(簡単のために最大次数の係数を1に制限します)。まずxに関する多項式P1を\(a_i,\, i=1\cdots m\)を根とする多項式、P2を\(b_j,\, j=1\cdots n\)を根とする多項式とします。

(%i1) P:[P1=product(x-a[i],i,1,m),P2=product(x-b[j],j,1,n)];
$$ \tag{${\it \%o}_{1}$}\left[ P_{1}=\prod_{i=1}^{m}{\left(x-a_{i}\right)} , P_{2}=\prod_{j=1}^{n}{\left(x-b_{j}\right)} \right] $$

P1とP2の終結式は以下の式で定義されます。根の差積ですね。
(%i2) product(product(a[i]-b[j],i,1,m),j,1,n);
$$ \tag{${\it \%o}_{2}$}\prod_{j=1}^{n}{\prod_{i=1}^{m}{\left(a_{i}-b_{j}\right)}} $$

m=3, n=4として具体的な形を見てみます。
(%i3) %,m=3,n=4,nouns;
$$ \tag{${\it \%o}_{3}$}\left(a_{1}-b_{1}\right)\,\left(a_{2}-b_{1}\right)\,\left(a_{1}-b_{2}\right)\,\left(a_{2}-b_{2}\right)\,\left(a_{3}-b_{1}\right)\,\left(a_{3}-b_{2}\right)\,\left(a_{1}-b_{3}\right)\,\left(a_{2}-b_{3}\right)\,\left(a_{3}-b_{3}\right)\,\left(a_{1}-b_{4}\right)\,\left(a_{2}-b_{4}\right)\,\left(a_{3}-b_{4}\right) $$

maximaの関数resultant()でも同じように計算できることを確認しましょう。
(%i4) resultant(product((x-a[i]),i,1,3),product((x-b[i]),i,1,4),x);
$$ \tag{${\it \%o}_{4}$}\left(a_{1}-b_{1}\right)\,\left(a_{2}-b_{1}\right)\,\left(a_{1}-b_{2}\right)\,\left(a_{2}-b_{2}\right)\,\left(a_{3}-b_{1}\right)\,\left(a_{3}-b_{2}\right)\,\left(a_{1}-b_{3}\right)\,\left(a_{2}-b_{3}\right)\,\left(a_{3}-b_{3}\right)\,\left(a_{1}-b_{4}\right)\,\left(a_{2}-b_{4}\right)\,\left(a_{3}-b_{4}\right) $$

終結式の面白いところは、元の多項式の係数で表すことができるのです。maximaで例を実際に計算させてみましょう。
(%i5) res13:resultant(x+a,x^3-b*x+c,x),expand;
$$ \tag{${\it \%o}_{5}$}c+a\,b-a^3 $$

終結式の値は係数の環に属する、ともいえます。環をZにとれば、

\(f,\,g \in Z[X]\) ならば \(resultant\left(f,g,X\right) \in Z\)

以下、整係数モニックな多項式を考えることにします。

 

fとgの終結式はf, gの係数の和、差、積で表されます。そこゆえ、一方の多項式gの係数を適当な自然数dでmod dして得られる多項式g mod dを作ると、fとg mod dの終結式はfとgの終結式とmod dで合同になります。

\(resultant\left(f,g\right) \equiv resultant\left(f,g\, mod\, d\right)\,mod\,d\)

res13を例にとって、計算で確認しておきましょう。
(%i6) res13, [a=2,b=3,c=4];
$$ \tag{${\it \%o}_{6}$}2 $$
(%i7) res13, [a=2,b=3,c=26];
$$ \tag{${\it \%o}_{7}$}24 $$
(%i8) [mod(2,11),mod(24,11)];
$$ \tag{${\it \%o}_{8}$}\left[ 2 , 2 \right] $$

確かに一致しています。

終結式の定義をよくみてみると、差積の\(a_i\)をすべてxに置き換えるとP2になります。逆にいえば、P2のxに重複度を込めてP1のすべての根を代入すると終結式の定義が得られます。

\(resultant\left(f,g,x\right)=\prod_{i=1}^m{g\left(a_i\right)}\)

やってみましょう。
(%i9) P2,P;
$$ \tag{${\it \%o}_{9}$}\prod_{j=1}^{n}{\left(x-b_{j}\right)} $$
(%i10) product(ev(P2,P,x=a[i],eval),i,1,m);
$$ \tag{${\it \%o}_{10}$}\prod_{i=1}^{m}{\prod_{j=1}^{n}{\left(a_{i}-b_{j}\right)}} $$

確かに定義式に一致しました。

 

最後にresultant(f, g, x)とresultant(g, f, x)の関係を考えます。(%i5)で、第1引数と第2引数を入れ替えて終結式を求めると以下のようになります。
(%i11) resultant(x^3-b*x+c,x+a,x),expand;
$$ \tag{${\it \%o}_{11}$}-c-a\,b+a^3 $$

符号が反転しています。

定義に戻って考えると、差積の個々の項で符号が反転し、それが(fの次数)x(gの次数)の分だけあるわけですから、以下の式が成り立つはずです。
(%i12) 'resultant(f(x),g(x),x)=(-1)^('hipow(f(x),x)*'hipow(g(x),x) )*'resultant(g(x),f(x),x); 
$$ \tag{${\it \%o}_{12}$}{\it resultant}\left(f\left(x\right) , g\left(x\right) , x\right)=\left(-1\right)^{{\it hipow}\left(f\left(x\right) , x\right)\,{\it hipow}\left(g\left(x\right) , x\right)}\,{\it resultant}\left(g\left(x\right) , f\left(x\right) , x\right) $$

ここまでで、終結式については色々と勉強をしてきました。maximaで簡単に試せますからやってみてください。終結式は判別式とも深く関係しています。

 

さて、最後の式はとても印象的で、その形はなんとなく平方剰余の相互法則と似た感じがします。というボヤッとした言い方を式できっちりと表してみましょう。今、nでパラメタライズされた\(F_n\left(x\right)\)を整係数のxの多項式とします。またp, qを異なる奇素数とします。もし\(F_n\left(x\right)\)が、
(%i13) 'resultant(F[p](x),F[q](x) )=jacobi(p,q);
$$ \tag{${\it \%o}_{13}$}{\it resultant}\left(F_{p}(x) , F_{q}(x)\right)={\it jacobi}\left(p , q\right) $$
(%i14) 'hipow(F[n](x),x)=(n-1)/2;
$$ \tag{${\it \%o}_{14}$}{\it hipow}\left(F_{n}(x) , x\right)=\frac{n-1}{2} $$
​という2つの性質を満たしているとすると、

\(jacobi\left(p,q\right)=\left(-1\right)^{\frac{\left(p-1\right)}{2}\frac{\left(q-1\right)}{2}}\,jacobi\left(q,p\right)\)

が成立し、平方剰余の相互法則は証明されたことになります。これがMatt Baker教授の新証明の証明方針となります。もちろん課題は明らかで、こんな都合の良い多項式\(F_n\left(x\right)\)が存在するのか、ということです。そもそも終結式と相互法則にはなんの関係もなさそうです。そんなことからもこの課題の困難さが伺えます。

 

次回、リュカ多項式\(L_n\left(x\right)\)を導入し、そこから自然に導かれる多項式\(H_n\left(x\right)\)がこの性質を満足することを示し、平方剰余の相互法則の証明とします。

 

追記:WikipediaなどをみているとLucasさんはリュカさんと呼ばれているようです。この記事でもLucasのカタカナ表記を「リュカ」に変更しました。