質問に対する回答(16)                    戻る

 当HPの掲示板「出会いの泉」に平成24年3月4日付けでHN「GAI」さんが、次のような質
問を書き込まれた。

 y2=x3+877x を満たす整数解(x,y)はどのようなものになりますか?数学ソフトで探せ
るものなら、使い方を知りたいです。


 空舟さんからのコメントです。(平成24年3月4日付け)

 数学ソフトではないですが、簡易的に調べる方法として、Google Chrome でF12キーを押し、
Console の所をクリックし、

 for(x=0;x<1000;x++)if(Math.sqrt(x*(x*x+877))%1==0)document.write("x="+x+", ");
document.write("end.");


と張り付けると、「x=0, end.」。同様にして、1,000,000 まででは、0 だけでした。この単純な
方法では、その辺りからコンピュータに負担がかかります。(いちいち平方根を計算させて1
で割った余りが0か調べています)

 もっと大きな数まで調べるには本格的なプログラムを使った方が良いと思います。数学ソ
フトについては詳しくないので分かりません...。S(H)さん紹介の「PARI/GP」は本格的に見え
ます。


 GAI さんからのコメントです。(平成24年3月4日付け)

 聞いてみるものですね。こんな機能があるなんて全く知りませんでした。ひょっとして私の
勘違いである可能性がありました。整数解ではなく、有理数解の場合はどう対応したらいい
のでしょうか?


 らすかるさんからのコメントです。(平成24年3月4日付け)

 (私の考察などが間違っていなければですが...) y2=x3+877x の解は、x≦1019700
の範囲で、(x,y)=(0,0) だけでした。(0,0) の他に、解は存在しない雰囲気です。


 S(H)さんからのコメントです。(平成24年3月4日付け)

 x2-5y2=1 程度なら、「Table[Sqrt[1 + 5*y^2], {y, 23169, 23186}]」を「Wolfram|Alpha」に挿入
すれば、立ちどころに求められる。

 空舟様、らすかる様により、自明な解以外存在しない予想で、証明は、GAI様の出番です。
証明不可能であれば、反例探しで、らすかる様駆使の「PARI/GP」等の出番です。

 「SAGE」は、とてもよさげです。(→ 参考:例1例2

 (参考サイト) 2=x3+877x の有理点について


 空舟さんからのコメントです。(平成24年3月5日付け)

 webサイト:「楕円曲線上の有理点」で、楕円曲線上の有理点、及び、いろいろな不定方程
式の解について、このような方程式に関するデータがありました。

 x は、109までで調べているようですから、y2=x3+877x ではもちろん(0,0)のみとなって
います...。


 GAI さんからのコメントです。(平成24年3月5日付け)

 空舟さんから紹介していただいたwebサイト:「楕円曲線上の有理点」は凄い。この中を覗
いていたら、単なる日頃目にする数字の中に、摩訶不思議な繋がりが潜んでいることに思い
至らせてくれます。その中のいくつかを紹介します。

 (-296)3+(-881)3+8923=111 、203+353+(-37)3=222 、(-2)3+53+63=333

 34607953+48202893+(-14882930)3=444 、23+(-13)3+143=555 、13+(-6)3+93=666

 (-1005823)3+(-3912759)3+39347903=777 、(-37)3+(-46)3+533=888

 03+(-1)3+103=999

 また、(-34)3+(-45)3+513=2222 、(-5)3+(-23)3+253=3333 、123+(-13)3+173=4444

  33+(-11)3+193=5555 、28163+81713+(-8281)3=6666 、(-1)3+(-35)3+373=7777

  183+(-20)3+233=9999 ・・・ 1111、8888 は、無理なんだろうか?

 無数の数字を組合せる方法がまた無数にあり、その中で成り立つ関係なんだろうけど、ラ
ンダムの中に発生するキラリと光る砂金のような感覚が起こります。


 らすかるさんが、方程式の解について考察されました。(平成24年3月5日付け)

 y2=x3+877x に、非自明解が存在しないと思う根拠を書きます。もし間違いがあれば、
ご指摘下さい。

 自明な解を除けば、x>0 で、 y2=x(x2+877) とする。

 xが877の倍数でないとすると、877は素数なので、x と x2+877 は互いに素。ゆえに、x と

2+877 は両方とも平方数。 x2+877 が平方数になるためには、x≦438が必要。

元の式を、mod4、mod5 で考えると、x≡0 (mod 20) とわかるので、x=100、400 しかあり

得ないが、両方とも x2+877 が平方数にならない。よって、x は877の倍数。

 そこで、x=877k とおいて整理すると、 y2=8772・k(877k2+1)

 kと877k2+1は互いに素だから、両方とも平方数で、k=s2 とおけば、877s4+1 が平方数、

つまり、t2=877s4+1 となり、この解を求めれば良いが、解けそうにないので、t2=877k2+1 の

解 k が平方数になるかどうかを調べる。t2-877k2=1 というペル方程式の解 k は、

  a[0]=0 、a[1]=3933131148 、a[n]=232952953106a[n-1]+a[n-2]

という漸化式で表せる。ここで、3933131148=22・33・29・41・109・281 なので、t2-877k2=1 の

解 k は、すべて 29、41、109、281 で割り切れる。

 k は平方数でなければならないので、292、412、1092、2812 で割り切れなければならない。

 b[n]=a[n]/29 とすると、 b[0]=0、b[1]=135625212、b[n]=232952953106b[n-1]+b[n-2]

となるが、b[n]を29で割った余りは順に、

 0,13,3,7,18, 0,18,22,3,16, 0,16,26,22,11, 0,11,7,26,13, 0,13,3,7,18,…

と周期20で5個ごとに0になるので、平方数となる可能性があるのはa[5n]に限られる。同様に、

  a[n]/41を41で割った余りを考えると、a[10n]

  a[n]/109を109で割った余りを考えると、a[55n]

  a[n]/281を281で割った余りを考えると、a[140n]

 従って、(29・41・109・281)2で割り切れるのは、a[1540n]となる。

 c[n]=a[1540n] とおくと、同様の漸化式は理論的には簡単に立てられるが、c[1]で既に、約

6.615×10^17503 という17504桁の数になるので、漸化式の次の項を計算するだけで大変。

 ちなみに、c[1]を素因数分解すると、

  24・34・5・17・292・412・59・61・67・83・89・1092・113・139・233・2812・421・461・701・769・
 859・881・911・2243・3851・9241・11131・13859・27581・38921・51521・53861・58309・
 69661・…

となり、確かに、292、412、1092、2812 で割り切れるが、平方でない素因数が大きく増えてい
て、もし、上と同じことをやったとすると、これらすべての素因数が平方になる項は途方もな
い桁数になり、おそらくまた、非平方の素因数も莫大に増えるであろうから、非自明解は存
在しないと思われる。


 GAI さんからのコメントです。(平成24年3月5日付け)

 同じ問題を眺めても、こうも思考する深さが違うことが痛感されます。ペル方程式と楕円曲
線が密接に関係し合っていることがなんとなく感じられます。

 問題がちょっとちがって、y2=x2+877 なら、(x,y)=(438,439) という整数解は存在する
というのに・・・。


 空舟さんからのコメントです。(平成24年3月6日付け)

 Webサイト(リンク切れ?)によれば、y2=x3+877x の有理点として、

(375494528127162193105504069942092792346201/
                         6215987776871505425463220780697238044100,
-256256267988926809388776834045513089648669153204356603464786949/
         490078023219787588959802933995928925096061616470779979261000)

があるという。すごい数字ですね...


 らすかるさんの考察の続報です。(平成24年3月6日付け)

 考察といっても、答えが出せるわけではないので、ただの落書きです。

 x=s/t、y=p/q (sとtは互いに素、pとqは互いに素)を代入して整理すると、

  (p2t-877q2s)t2=q23

 sとtは互いに素だから、qはtで割り切れ、q=at とおける。このとき、pとqが互いに素なの
で、pとaは互いに素、pとtは互いに素となる。

 q=at を代入して整理すると、 p2t=a2(s3+877st2)

 pとaは互いに素だから、tは、a2で割り切れ、t=ba2 とおける。

このとき、sとtは互いに素なので、sとaは互いに素、sとbは互いに素となる。

 t=ba2 を代入して整理すると、 (p2-877sba4)b=s3

 sとbは互いに素だから、b=1、よって、t=a2、 q=at=a3 となる。

 b=1 を代入すると、 p2=s(s2+877a4)

 sが877の倍数の場合、s=877k とおいて整理すると、 p2=8772k(877k2+a4)

 kと877k2+a4は互いに素だから、kは平方数。k=m2 を代入して整理すると、

  {p/(877m)}2=877m4+a4 … (1)

 一方、sが877の倍数でない場合、sとaが互いに素から、sとs2+877a4は互いに素なので、

sは平方数。s=n2 を代入して整理すると、 (p/n)2=n4+877a4 … (2)

 従って、どちらの場合も u4+877v4=w2 を満たす整数 u、v、w を探すことに帰着する。逆

算して整理すると、u4+877v4=w2 を満たす u、v、w に対して、

  x=877(v/u)2 、y=877vw/u3 … (a)  と x=(u/v)2 、y=uw/v3 … (b)

が、y2=x3+877x を満たす。(y2=x3+877x を満たす解は必ずこのどちらかとなる。)

 Webサイト(リンク切れ?)には、y2=x3+877x の解が4つ書かれていますが、最初の3
個が上記(b)のタイプ(xが有理数の平方であるタイプ)、最後の1個が上記(a)のタイプ(x/877
が有理数の平方であるタイプ)です。

 最初の1個から、(b)により、u4+877v4=w2 を満たす u、v、w を逆算すると、

 u=612776083187947368101 、v=78841535860683900210 、

 w=418189082471629807342957247493327168750049

となりますが、これを(a)に当てはめると、最後の1個の解が出てきます。2番目と3番目は、
(u,v,w)の組が上記と異なる(b)のタイプですが、これから u、v、w を逆算して(a)に当ては
めると、このサイトに書かれていない解が2個見つかります。



   以下、工事中!