単行本この商品を含むブログを見るをお持ちの方はp281に記載されている定理13.10をご覧になってください。\,4\right)\)となる素数を\(p=4\,n+1\)と表す。\left(mod\,p\right)\)を満たすようにとるとき\(p=a^2+b^2\)が成立する。この定理、短いし、二項係数と階乗しか出てこないし、、、もっと広く世間に知られても良いと思うのですが、大抵の整数論の本には載っていません。その理由は後回しにして、この定理が述べている\(a,\,b\)の求め方をMaximaで実際にいくつかの\(4\,n+1\)型素数に対して確認して見ましょう。準備として\(gnorm\left(k,p\right)\)という関数を定義します。\(k\,mod\,p\)という数を、\(-\frac{p}{2}\)から\(\frac{p}{2}\)の範囲に調整するためのものです。m)$では早速実際にやってみます。\(10037\)は4で割ると1余る素数です。$$次に\(p=4\,n+1\)の\(n\)を求めます。$$後は定理の通りにやれば良いのです。aを二項係数を使って求め、gnormを使って範囲を調整します。$$bを階乗を使って求め、gnormを使って範囲を調整します。$$最後に\(a,\,b\)を平方して足すと\(p\)に戻ることを確認します。$$もう一つくらいやってみましょう。$$ではなぜこの定理は紹介されないのか、、、おそらく証明も定理の成り立つ背景の説明も面倒だからなのだと思います。橋本先生の本では「この定理のガウスによる証明は、初等的であっても決して単純ではなく、その本質を理解することはむしろ困難です」と述べ、ガウスによる証明自身は紹介されていません。\left(mod\,p\right)\)が成立すること、この左辺が実はヤコブスタール和と一致することなどからこの二項係数が\(a\)を計算していることを説明しています。問題もアルゴリズムも超初等的なのに、その背景や証明に楕円曲線やハッセ不変量が出てくるようでは初等整数論の本では説明できないでしょう。ここで紹介したMaximaのコードは非常に簡単ですが、遅いです。階乗を求める際の乗算を\(mod\,p\)で計算するように変更し、二項係数もその階乗\(mod\,p\)で定義しなおせばずっと早くなると思います。引き続き、黒川教授のこちらの本からです。使って、数学を楽しみましょう。Androidのサポート」などの記事を書いていきます。test.天気はてなブログをはじめよう!jurupapaさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。