Homeに戻る  一覧に戻る 

Perfect 23-powers in Fibonacci Sequence


[2004.02.16]Fibonacci数列に現れる完全23乗数



■J.McLaughlin[1]の方法により、次の素数n=23に対して、Fibonacci数列に現れる完全23乗数は、0,1に限ることを証明する。

詳細は、参考文献[1]を参照のこと。
ほとんどn=19の場合と同様なので、違う部分のみ記述する。


■初等的考察
少しの議論により、23次Thue方程式
     ±1 = B23Σj=011(-1)j22j(C(23,2j)*(A/B)23-2j-C(23,2j+1)*(A/B)23-2j-1)
の整数解(A,B)を求めることに帰着できる。
ここで、C(m,n)={m!}/{n!*(m-n)!}である。

     f23(x) = Σj=011(-1)j22j(C(23,2j)*x23-2j-C(23,2j+1)*x23-2j-1)
         = x23 - 23x22 - 1012x21 + 7084x20 + 141680x19 - 538384x18 - 6460608x17 + 15690048x16 + 125520384x15 - 209200640x14 - 1171523584x13 + 1384527872x12 + 5538111488x11 - 4686094336x10 - 13388840960x9 + 8033304576x8 + 16066609152x7 - 6615662592x6 - 8820883456x5 + 2321285120x4 + 1857028096x3 - 265289728x2 - 96468992x + 4194304

とすると、f23(x)はQ上で既約であり、その根θ1,...,θ23は全て実数である。

これらの根の1つをθi[以下では、添字iを省略して単にθと書くこともある]とすると、
     ±1 = Πk=123(A-θkB)= NormK/Q(A-θiB)
を得る。ただし、K=Qi)である。

(A-θiB)は、代数体Qi)の単数である。
Qi)の単数群のrankは22である。その基本単数をε1(i),...,ε22(i)とし、βi=A-θiBとする。
よって、整数u1,...,u22が存在して、
     βi = ±Πk=122εk(i)uk
となる。

U=max1<=k<=22|uk|とする。
Uの上限を求めれば良い。

[pari/gpによる計算]
bash-2.05a$ gp
Reading GPRC: /home/his/.gprc ...Done.

                  GP/PARI CALCULATOR Version 2.1.5 (released)
                       i386 running netbsd 32-bit version
                (readline v1.0 enabled, extended help available)

                       Copyright (C) 2002 The PARI Group

PARI/GP is free software, covered by the GNU General Public License, and 
comes WITHOUT ANY WARRANTY WHATSOEVER.

Type ? for help, \q to quit.
Type ?12 for how to get moral (and possibly technical) support.

   realprecision = 28 significant digits
   seriesprecision = 16 significant terms
   format = g0.28

parisize = 100000000, primelimit = 500000
gp>  read("fibo23.gp")
time = 756 ms.
gp>  f(23,x)
time = 5 ms.
%1 = x^23 - 23*x^22 - 1012*x^21 + 7084*x^20 + 141680*x^19 - 538384*x^18 - 6460608*x^17 + 15690048*x^16 + 125520384*x^15 - 209200640*x^14 - 1171523584*x^13 + 1384527872*x^12 + 5538111488*x^11 - 4686094336*x^10 - 13388840960*x^9 + 8033304576*x^8 + 16066609152*x^7 - 6615662592*x^6 - 8820883456*x^5 + 2321285120*x^4 + 1857028096*x^3 - 265289728*x^2 - 96468992*x + 4194304
gp>  nf=bnfinit(f(23,x));
time = 10mn, 5,723 ms.
gp>  rr
time = 0 ms.
%3 = [-22.55160078487508743254086954, -8.736569681586608396701401470, -5.287202799274056333786909026, -3.676452880742439444483123669, -2.715472298252218310354276274, -2.056754264584863839353425129, -1.561190685707284074052300600, -1.161661890215628537087222296, -0.8212083802439807779994301719, -0.5171298401970578339332363360, -0.2339228013788851843001437687, 0.04032264549462965799296964150, 0.3160922445776509402435291258, 0.6041089392131663974210228181, 0.9170763491079165124611321735, 1.272146578312449047549062246, 1.695249584078147892980012551, 2.229938560627507286251890353, 2.958168616185028413569591148, 4.058044258369300104645978887, 6.008644871000129258863956951, 10.70330272383774246644630431, 41.51607093625444218616688807]~
gp>  nf.fu[1]
time = 0 ms.
%4 = 37829/549755813888*x^22 - 1780679/1099511627776*x^21 - 75611633/1099511627776*x^20 + 36030089/68719476736*x^19 + 1301286247/137438953472*x^18 - 2894494641/68719476736*x^17 - 28998637501/68719476736*x^16 + 701036533/536870912*x^15 + 17045350923/2147483648*x^14 - 40048056539/2147483648*x^13 - 151653802041/2147483648*x^12 + 17866378889/134217728*x^11 + 83146390141/268435456*x^10 - 65557880793/134217728*x^9 - 88521559705/134217728*x^8 + 475120761/524288*x^7 + 2600090321/4194304*x^6 - 13210979923/16777216*x^5 - 3103558813/16777216*x^4 + 271454877/1048576*x^3 - 23224617/2097152*x^2 - 12993741/1048576*x + 564719/1048576
gp>  nf.fu[2]
time = 0 ms.
%5 = 8151/137438953472*x^22 - 194263/137438953472*x^21 - 4043471/68719476736*x^20 + 8059649/17179869184*x^19 + 34408791/4294967296*x^18 - 331573115/8589934592*x^17 - 1507375395/4294967296*x^16 + 328189259/268435456*x^15 + 1724528945/268435456*x^14 - 4764565679/268435456*x^13 - 7338613831/134217728*x^12 + 4279236291/33554432*x^11 + 465922167/2097152*x^10 - 7754848671/16777216*x^9 - 3433682119/8388608*x^8 + 855200219/1048576*x^7 + 576489103/2097152*x^6 - 1299899979/2097152*x^5 - 8710307/1048576*x^4 + 37830113/262144*x^3 - 619507/65536*x^2 - 1016007/131072*x + 19633/65536
gp>  nf.fu[3]
time = 0 ms.
%6 = 3395/137438953472*x^22 - 80807/137438953472*x^21 - 1685349/68719476736*x^20 + 3343395/17179869184*x^19 + 14352997/4294967296*x^18 - 137161415/8589934592*x^17 - 629281029/4294967296*x^16 + 135395377/268435456*x^15 + 720466013/268435456*x^14 - 1961198055/268435456*x^13 - 3067404581/134217728*x^12 + 1759141481/33554432*x^11 + 389518537/4194304*x^10 - 3188450723/16777216*x^9 - 1435195673/8388608*x^8 + 352067073/1048576*x^7 + 241561035/2097152*x^6 - 535490219/2097152*x^5 - 3902641/1048576*x^4 + 15693635/262144*x^3 - 224749/65536*x^2 - 326099/131072*x + 8087/65536
gp>  nf.fu[4]
time = 0 ms.
%7 = 140925/2199023255552*x^22 - 3373915/2199023255552*x^21 - 17409931/274877906944*x^20 + 140696885/274877906944*x^19 + 1171684183/137438953472*x^18 - 5766052423/137438953472*x^17 - 6265214421/17179869184*x^16 + 5593686847/4294967296*x^15 + 27450125441/4294967296*x^14 - 77303101827/4294967296*x^13 - 27108568619/536870912*x^12 + 62675469519/536870912*x^11 + 48926621639/268435456*x^10 - 92844767915/268435456*x^9 - 9668467353/33554432*x^8 + 6916162687/16777216*x^7 + 6360087441/33554432*x^6 - 5162397535/33554432*x^5 - 52212943/4194304*x^4 + 20706101/4194304*x^3 - 61891061/2097152*x^2 - 30326947/2097152*x - 758345/262144
gp>  nf.fu[5]
time = 0 ms.
%8 = 228571/2199023255552*x^22 - 5282025/2199023255552*x^21 - 57676101/549755813888*x^20 + 205441737/274877906944*x^19 + 2010647143/137438953472*x^18 - 7895013961/137438953472*x^17 - 22783287049/34359738368*x^16 + 7278856791/4294967296*x^15 + 54818697355/4294967296*x^14 - 98331540985/4294967296*x^13 - 126059620389/1073741824*x^12 + 82435608835/536870912*x^11 + 145545184979/268435456*x^10 - 141140225597/268435456*x^9 - 84692013229/67108864*x^8 + 15192362191/16777216*x^7 + 47808495887/33554432*x^6 - 24542782341/33554432*x^5 - 6026594673/8388608*x^4 + 976274329/4194304*x^3 + 305985267/2097152*x^2 - 48330461/2097152*x - 4056733/524288
gp>  nf.fu[6]
time = 0 ms.
%9 = 65625/1099511627776*x^22 - 1472853/1099511627776*x^21 - 33612503/549755813888*x^20 + 53413387/137438953472*x^19 + 595522973/68719476736*x^18 - 1873433129/68719476736*x^17 - 13739590313/34359738368*x^16 + 1524824849/2147483648*x^15 + 16850565701/2147483648*x^14 - 17181254509/2147483648*x^13 - 79050091627/1073741824*x^12 + 10733911313/268435456*x^11 + 46465807997/134217728*x^10 - 10095692741/134217728*x^9 - 54584094897/67108864*x^8 - 126239631/8388608*x^7 + 15068204669/16777216*x^6 + 2951983087/16777216*x^5 - 3293324643/8388608*x^4 - 268132149/2097152*x^3 + 41513481/1048576*x^2 + 12482547/1048576*x - 854757/524288
gp>  nf.fu[7]
time = 0 ms.
%10 = 48293/549755813888*x^22 - 2231367/1099511627776*x^21 - 97533777/1099511627776*x^20 + 21705755/34359738368*x^19 + 1703856853/137438953472*x^18 - 3343996805/68719476736*x^17 - 38813411617/68719476736*x^16 + 1549005197/1073741824*x^15 + 23581505577/2147483648*x^14 - 42202411795/2147483648*x^13 - 220835545473/2147483648*x^12 + 2238636683/16777216*x^11 + 131497143567/268435456*x^10 - 62281615189/134217728*x^9 - 161202673941/134217728*x^8 + 3410482131/4194304*x^7 + 1542074401/1048576*x^6 - 11288098371/16777216*x^5 - 13761494925/16777216*x^4 + 122105933/524288*x^3 + 364540085/2097152*x^2 - 25842977/1048576*x - 9324757/1048576
gp>  nf.fu[8]
time = 0 ms.
%11 = 151447/1099511627776*x^22 - 3513609/1099511627776*x^21 - 19071415/137438953472*x^20 + 34488597/34359738368*x^19 + 1327935203/68719476736*x^18 - 5365887187/68719476736*x^17 - 1880503031/2147483648*x^16 + 2512674065/1073741824*x^15 + 36264718191/2147483648*x^14 - 69309791549/2147483648*x^13 - 41933125253/268435456*x^12 + 7468083369/33554432*x^11 + 98046403015/134217728*x^10 - 106263813923/134217728*x^9 - 14614703673/8388608*x^8 + 6035914423/4194304*x^7 + 34412386507/16777216*x^6 - 21168715789/16777216*x^5 - 2274826775/2097152*x^4 + 243362743/524288*x^3 + 210357839/1048576*x^2 - 55511383/1048576*x - 88525/16384
gp>  nf.fu[9]
time = 0 ms.
%12 = 197/8589934592*x^22 - 151335/274877906944*x^21 - 6224541/274877906944*x^20 + 25428695/137438953472*x^19 + 209765369/68719476736*x^18 - 527520375/34359738368*x^17 - 1127018795/8589934592*x^16 + 1046456091/2147483648*x^15 + 2488400465/1073741824*x^14 - 58811507/8388608*x^13 - 9878097087/536870912*x^12 + 13117751745/268435456*x^11 + 8634525639/134217728*x^10 - 11006165037/67108864*x^9 - 326389019/4194304*x^8 + 1992596455/8388608*x^7 - 83882691/4194304*x^6 - 392347029/4194304*x^5 + 220368131/4194304*x^4 - 58928481/2097152*x^3 + 3027137/1048576*x^2 + 869449/524288*x - 32753/131072
gp>  nf.fu[10]
time = 0 ms.
%13 = 81637/1099511627776*x^22 - 1815021/1099511627776*x^21 - 42012381/549755813888*x^20 + 1004301/2147483648*x^19 + 187140195/17179869184*x^18 - 2178827119/68719476736*x^17 - 17389843765/34359738368*x^16 + 840362481/1073741824*x^15 + 21512441415/2147483648*x^14 - 17167500353/2147483648*x^13 - 102046013725/1073741824*x^12 + 2109068097/67108864*x^11 + 30425083707/67108864*x^10 - 982471311/134217728*x^9 - 72778336841/67108864*x^8 - 929821437/4194304*x^7 + 20488290005/16777216*x^6 + 7415985311/16777216*x^5 - 4490576905/8388608*x^4 - 66361181/262144*x^3 + 712729/16384*x^2 + 24961629/1048576*x - 520985/524288
gp>  nf.fu[11]
time = 0 ms.
%14 = 57203/2199023255552*x^22 - 1408533/2199023255552*x^21 - 6949769/274877906944*x^20 + 61932599/274877906944*x^19 + 455844747/137438953472*x^18 - 2667972993/137438953472*x^17 - 1167874373/8589934592*x^16 + 2718186629/4294967296*x^15 + 9454345539/4294967296*x^14 - 39547657021/4294967296*x^13 - 7823365647/536870912*x^12 + 33995320757/536870912*x^11 + 7901621447/268435456*x^10 - 53883221837/268435456*x^9 + 52342841/1048576*x^8 + 4174530437/16777216*x^7 - 6671461913/33554432*x^6 - 1594409969/33554432*x^5 + 475500591/4194304*x^4 - 99535049/4194304*x^3 - 7755513/2097152*x^2 - 5325157/2097152*x + 6753/131072
gp>  nf.fu[12]
time = 0 ms.
%15 = 109123/2199023255552*x^22 - 2312333/2199023255552*x^21 - 3593057/68719476736*x^20 + 71656049/274877906944*x^19 + 1053880377/137438953472*x^18 - 1925509061/137438953472*x^17 - 396267521/1073741824*x^16 + 859770399/4294967296*x^15 + 32806535951/4294967296*x^14 + 3539521683/4294967296*x^13 - 1288435309/16777216*x^12 - 18993695909/536870912*x^11 + 106266163545/268435456*x^10 + 68531642183/268435456*x^9 - 8834877939/8388608*x^8 - 12746006217/16777216*x^7 + 46207479183/33554432*x^6 + 33429268807/33554432*x^5 - 786075103/1048576*x^4 - 2079469951/4194304*x^3 + 181410597/2097152*x^2 + 61299031/2097152*x - 50243/32768
gp>  nf.fu[13]
time = 0 ms.
%16 = 197295/1099511627776*x^22 - 1185267/274877906944*x^21 - 194872115/1099511627776*x^20 + 50020255/34359738368*x^19 + 3299754879/137438953472*x^18 - 2095920851/17179869184*x^17 - 71841104271/68719476736*x^16 + 2117989991/536870912*x^15 + 20387147777/1073741824*x^14 - 31529636267/536870912*x^13 - 342893460411/2147483648*x^12 + 29270704353/67108864*x^11 + 170017605385/268435456*x^10 - 55665013271/33554432*x^9 - 145741702771/134217728*x^8 + 6640828427/2097152*x^7 + 7757091705/16777216*x^6 - 11689713047/4194304*x^5 + 8245991273/16777216*x^4 + 464317911/524288*x^3 - 715396329/2097152*x^2 - 3947551/262144*x + 13992885/1048576
gp>  nf.fu[14]
time = 0 ms.
%17 = 544437/2199023255552*x^22 - 12407685/2199023255552*x^21 - 276752445/1099511627776*x^20 + 467341977/274877906944*x^19 + 304108823/8589934592*x^18 - 17257608349/137438953472*x^17 - 111448193141/68719476736*x^16 + 15111047343/4294967296*x^15 + 135922159287/4294967296*x^14 - 190264195077/4294967296*x^13 - 636899035309/2147483648*x^12 + 143884638275/536870912*x^11 + 188924019413/134217728*x^10 - 208761783057/268435456*x^9 - 458626902969/134217728*x^8 + 16559499255/16777216*x^7 + 137767796165/33554432*x^6 - 12120253329/33554432*x^5 - 36868918537/16777216*x^4 - 567484599/4194304*x^3 + 207194517/524288*x^2 + 138226655/2097152*x - 1560441/1048576
gp>  nf.fu[15]
time = 0 ms.
%18 = 2573/17179869184*x^22 - 3894325/1099511627776*x^21 - 164155821/1099511627776*x^20 + 159233225/137438953472*x^19 + 2817473895/137438953472*x^18 - 6470048765/68719476736*x^17 - 62608514697/68719476736*x^16 + 6349404923/2147483648*x^15 + 36699927269/2147483648*x^14 - 92008875205/2147483648*x^13 - 325804566453/2147483648*x^12 + 83461442731/268435456*x^11 + 178542110309/268435456*x^10 - 156037513281/134217728*x^9 - 190915193045/134217728*x^8 + 18491446459/8388608*x^7 + 11429926629/8388608*x^6 - 32992223073/16777216*x^5 - 7416750313/16777216*x^4 + 1413591049/2097152*x^3 - 14407897/2097152*x^2 - 42964065/1048576*x - 2756557/1048576
gp>  nf.fu[16]
time = 0 ms.
%19 = 320001/2199023255552*x^22 - 7481815/2199023255552*x^21 - 40134895/274877906944*x^20 + 298880233/274877906944*x^19 + 2782177829/137438953472*x^18 - 11863273235/137438953472*x^17 - 3920672185/4294967296*x^16 + 11382585243/4294967296*x^15 + 75205401193/4294967296*x^14 - 161698451167/4294967296*x^13 - 86451874453/536870912*x^12 + 144633365163/536870912*x^11 + 200804902465/268435456*x^10 - 269680640519/268435456*x^9 - 29689593521/16777216*x^8 + 32536242139/16777216*x^7 + 69159355117/33554432*x^6 - 61248266795/33554432*x^5 - 4549706687/4194304*x^4 + 2958208233/4194304*x^3 + 480465305/2097152*x^2 - 139438367/2097152*x - 35575/2048
gp>  nf.fu[17]
time = 0 ms.
%20 = 1435337/1099511627776*x^22 - 34584317/1099511627776*x^21 - 707311347/549755813888*x^20 + 1464386837/137438953472*x^19 + 371993929/2147483648*x^18 - 61295274973/68719476736*x^17 - 255933083655/34359738368*x^16 + 61406670119/2147483648*x^15 + 283860655307/2147483648*x^14 - 894367978109/2147483648*x^13 - 1145703691099/1073741824*x^12 + 793663965727/268435456*x^11 + 264718846893/67108864*x^10 - 1383472628433/134217728*x^9 - 405575576875/67108864*x^8 + 140018910007/8388608*x^7 + 43372213737/16777216*x^6 - 182863743849/16777216*x^5 + 2115511209/8388608*x^4 + 5275848245/2097152*x^3 - 53015751/262144*x^2 - 131290401/1048576*x + 2751069/524288
gp>  nf.fu[18]
time = 0 ms.
%21 = 252537/2199023255552*x^22 - 6038767/2199023255552*x^21 - 31246743/274877906944*x^20 + 251882907/274877906944*x^19 + 2116105289/137438953472*x^18 - 10387569687/137438953472*x^17 - 5736584149/8589934592*x^16 + 10252436685/4294967296*x^15 + 51588921209/4294967296*x^14 - 147037924591/4294967296*x^13 - 53258110409/536870912*x^12 + 128281331289/536870912*x^11 + 102940701101/268435456*x^10 - 218920697587/268435456*x^9 - 5501396487/8388608*x^8 + 21444279365/16777216*x^7 + 14391538421/33554432*x^6 - 26174298515/33554432*x^5 - 490445759/4194304*x^4 + 658391147/4194304*x^3 + 38059517/2097152*x^2 - 15773603/2097152*x - 284443/131072
gp>  nf.fu[19]
time = 0 ms.
%22 = 216779/1099511627776*x^22 - 2455253/549755813888*x^21 - 221089373/1099511627776*x^20 + 91173181/68719476736*x^19 + 3902690813/137438953472*x^18 - 3307987537/34359738368*x^17 - 89841756641/68719476736*x^16 + 2833763267/1073741824*x^15 + 6891062693/268435456*x^14 - 34718346685/1073741824*x^13 - 520459518453/2147483648*x^12 + 25366726831/134217728*x^11 + 311185810115/268435456*x^10 - 35154603517/67108864*x^9 - 380147769693/134217728*x^8 + 2579000203/4194304*x^7 + 57287694233/16777216*x^6 - 1323521585/8388608*x^5 - 30862379129/16777216*x^4 - 144499155/1048576*x^3 + 704860693/2097152*x^2 + 27419339/524288*x - 2775717/1048576
gp>  nf.fu[20]
time = 0 ms.
%23 = 27115/274877906944*x^22 - 626131/274877906944*x^21 - 13691381/137438953472*x^20 + 6080881/8589934592*x^19 + 955900161/68719476736*x^18 - 934199107/17179869184*x^17 - 10861206621/17179869184*x^16 + 430888649/268435456*x^15 + 13131456595/1073741824*x^14 - 11672103619/536870912*x^13 - 7614710729/67108864*x^12 + 615379739/4194304*x^11 + 71378496871/134217728*x^10 - 17076079535/33554432*x^9 - 42565258567/33554432*x^8 + 943447403/1048576*x^7 + 779670535/524288*x^6 - 3226880263/4194304*x^5 - 1633964791/2097152*x^4 + 36839599/131072*x^3 + 152585561/1048576*x^2 - 8462847/262144*x - 1189805/262144
gp>  nf.fu[21]
time = 0 ms.
%24 = 348973/2199023255552*x^22 - 8201367/2199023255552*x^21 - 87253873/549755813888*x^20 + 330802997/274877906944*x^19 + 3005090161/137438953472*x^18 - 13237713563/137438953472*x^17 - 33491914897/34359738368*x^16 + 12771273943/4294967296*x^15 + 78704629181/4294967296*x^14 - 181622202159/4294967296*x^13 - 174674425833/1073741824*x^12 + 161488639103/536870912*x^11 + 190395191845/268435456*x^10 - 296133015679/268435456*x^9 - 99827322317/67108864*x^8 + 34620734791/16777216*x^7 + 44969559769/33554432*x^6 - 62114428043/33554432*x^5 - 2787852125/8388608*x^4 + 2825312341/4194304*x^3 - 113726779/2097152*x^2 - 108632807/2097152*x + 1121483/524288
gp>  nf.fu[22]
time = 0 ms.
%25 = 452153/2199023255552*x^22 - 10333973/2199023255552*x^21 - 229426447/1099511627776*x^20 + 391449939/274877906944*x^19 + 2008863869/68719476736*x^18 - 14547035321/137438953472*x^17 - 91311694191/68719476736*x^16 + 12856783777/4294967296*x^15 + 109747671391/4294967296*x^14 - 164930762989/4294967296*x^13 - 500541241519/2147483648*x^12 + 130474999321/536870912*x^11 + 17660533095/16777216*x^10 - 212761810261/268435456*x^9 - 313448382347/134217728*x^8 + 23048715633/16777216*x^7 + 80678962945/33554432*x^6 - 43025527249/33554432*x^5 - 17234772915/16777216*x^4 + 2335308083/4194304*x^3 + 125175447/1048576*x^2 - 165187549/2097152*x + 7127205/1048576
■Uの最初の上限を計算する。
jを|βj|=min1<=i<=23i|を満たすものとする。jは予め分からないので、j=1,...,23のそれぞれの場合に対して(並行して)議論する。

定数c1,c2,c2a,c3,c4,c5,c6,c7,K1,K2,K3,C0をpari/gpで計算すると、以下のようになる。

[pari/gpによる計算]
gp>  for(i=1,nn,print("c1_",i,"=",cc1(nn,rr,i)))
c1_1=13.81503110328847903583946806
c1_2=3.449366882312552062914492444
c1_3=1.610749918531616889303785356
c1_4=0.9609805824902211341288473951
c1_5=0.6587180336673544710008511454
c1_6=0.4955635788775797653011245287
c1_7=0.3995287954916555369650783036
c1_8=0.3404535099716477590877921249
c1_9=0.3040785400469229440661938358
c1_10=0.2832070388181726496330925673
c1_11=0.2742454468735148422931134102
c1_12=0.2742454468735148422931134102
c1_13=0.2757695990830212822505594843
c1_14=0.2880166946355154571774936922
c1_15=0.3129674098947501150401093553
c1_16=0.3550702292045325350879300725
c1_17=0.4231030057656988454309503058
c1_18=0.5346889765493593932718778018
c1_19=0.7282300555575211273177007951
c1_20=1.099875642184271691076387738
c1_21=1.950600612630829154217978064
c1_22=4.694657852837613207582347360
c1_23=30.81276821241669971972058376
time = 65 ms.
gp>  print("c2=",cc2(nn,rr))
c2=152.2358683201362507344899897
time = 315 ms.
gp> for(i=1,nn,print("c2a_",i,"=",cc2a(nn,rr,i))))
c2a_1=4.637533657515913764969138838
c2a_2=14.56865631647459732213602886
c2a_3=29.05682204112420210807527830
c2a_4=47.02750985861543913329978124
c2a_5=67.14791606395144566029102852
c2a_6=87.92580217361615947910752033
c2a_7=107.8201674273598826539046334
c2a_8=125.3555377649776062806523210
c2a_9=139.2313949875097269439311913
c2a_10=148.4186302425839998355229046
c2a_11=152.2358683201362507344899897
c2a_12=151.2358683201362507344899897
c2a_13=149.4000021346566613402075505
c2a_14=142.0471894825932944843034481
c2a_15=129.7227548414700134351067798
c2a_16=113.3407451480820240908611887
c2a_17=94.11613911868027321998030586
c2a_18=73.47473783574490135300619101
c2a_19=52.94741960430362724625888628
c2a_20=34.05660171135008596895123182
c2a_21=18.20332970026317301726290729
c2a_22=7.083562753910259652202989850
c2a_23=2.079257250742957158136174532
time = 319 ms.
gp>  for(i=1,nn,print("c3_",i,"=",cc3(nn,rr,i)))
c3_1=64.06767172112952961870775761
c3_2=50.25264061784105058286828954
c3_3=46.80327373552849851995379710
c3_4=45.19252381699688163065001174
c3_5=44.23154323450666049652116434
c3_6=43.57282520083930602552031320
c3_7=43.07726162196172626021918867
c3_8=42.67773282647007072325411037
c3_9=42.33727931649842296416631824
c3_10=42.03320077645150002010012441
c3_11=41.74999373763332737046703184
c3_12=41.47574829075981252817391843
c3_13=41.19997869167679124592335894
c3_14=40.91196199704127578874586525
c3_15=40.59899458714652567370575590
c3_16=40.24392435794199313861782582
c3_17=39.82082135217629429318687552
c3_18=39.28613237562693489991499772
c3_19=38.55790232006941377259729692
c3_20=37.45802667788514208152090918
c3_21=35.50742606525431292730293112
c3_22=33.25490350871282989898717385
c3_23=64.06767172112952961870775761
time = 16 ms.
gp>  for(i=1,nn,print("c5_",i,"=",cc5(nn,rr,i)))
c5_1=4.001017718564592085452223154
c5_2=3.825645057309525282184713048
c5_3=3.774309536858536361173280548
c5_4=3.749031300201958326561740806
c5_5=3.733519478014773815506961326
c5_6=3.722691849215757199684072050
c5_7=3.714438305132242722130285103
c5_8=3.707715266094203947355114728
c5_9=3.701936836288653374099466782
c5_10=3.696736688862165471974511891
c5_11=3.691859819266829447945255503
c5_12=3.687105885128421781191445104
c5_13=3.682293772002239823909654301
c5_14=3.677233749587209187801674991
c5_15=3.671695179213529047016746059
c5_16=3.665359996634201045705085571
c5_17=3.657738123129818346135472433
c5_18=3.647990242138296474028558396
c5_19=3.634499703134967000065004412
c5_20=3.613636279105674369112180915
c5_21=3.575089511454620745124177427
c5_22=3.527914801117874257122774831
c5_23=4.001331821078308050757746578
time = 6,708 ms.
gp>  for(i=1,nn,print("c6_",i,"=",cc6(nn,rr,i)))
c6_1=7.175835440972580719560783434
c6_2=10.27112124052420144065670148
c6_3=6.717651434390209293447015858
c6_4=11.01653903879310924018695668
c6_5=5.160984070119251091720765112
c6_6=4.737773235833614255090515407
c6_7=8.190841806848264788830346719
c6_8=5.841668899673837178519447059
c6_9=7.025197890303796737628579050
c6_10=5.914837356047371372314038419
c6_11=7.770328195092859134012320056
c6_12=6.550493660604732233595903774
c6_13=5.567653524305376028435883610
c6_14=5.374456425024141121148940361
c6_15=6.565841985414708657222968587
c6_16=9.383950368601449617266736843
c6_17=7.104792418990127631780801144
c6_18=7.462549105454362581670080488
c6_19=7.988318795250250426548024236
c6_20=5.502208325143269043604009322
c6_21=5.586236239656660738155299155
c6_22=5.172109119425641856383435737
c6_23=7.964819178453212810963916007
time = 9,509 ms.
gp>  for(i=1,nn,print("c7_",i,"=",cc7(nn,rr,i)))
c7_1=1.879130310845260950092913870 E186
c7_2=3.228192718015351270147642651 E186
c7_3=4.041834103024776128619106566 E186
c7_4=4.609276813006250272787859222 E186
c7_5=5.029031616712137082343203090 E186
c7_6=5.346760547716853076452734356 E186
c7_7=5.587148990595946851482692844 E186
c7_8=5.764742307227135028306996376 E186
c7_9=5.888469259002276852231760533 E186
c7_10=5.963777485192608663826658333 E186
c7_11=5.993705584530582539372873968 E186
c7_12=5.985938508076291600079839674 E186
c7_13=5.971544561646899603119692627 E186
c7_14=5.912066055872026261088237746 E186
c7_15=5.805102011633546928744210335 E186
c7_16=5.645998200905088734076429928 E186
c7_17=5.426943966620934936372713283 E186
c7_18=5.135151768839046690276250553 E186
c7_19=4.749012262997605138996867107 E186
c7_20=4.228951581640602820303238287 E186
c7_21=3.490691408788609370080468596 E186
c7_22=2.378353073834376297480152794 E186
c7_23=9.337387257047325523722648615 E185
time = 1,843 ms.
gp>  for(i=1,nn,print("K1_",i,"=",KK1(nn,rr,i)))
K1_1=1.510580739523743679555870469 E-17
K1_2=0.001094538215928226681109062192
K1_3=44217.09120873518537074342793
K1_4=6379707959.318762382348545966
K1_5=37770015229378.56630724235748
K1_6=26299720244179507.73864089241
K1_7=3729330796611051724.979596084
K1_8=147879208381718205384.2989555
K1_9=1988676497890609946684.726730
K1_10=10205725745002767065174.37374
K1_11=21381102079032074179533.58390
K1_12=21381102079032074179533.58390
K1_13=18822181923847859956298.62494
K1_14=6928363401364929468531.830216
K1_15=1025078733536138568353.840242
K1_16=56235284076292867590.33080429
K1_17=997645712634514478.1544337153
K1_18=4580454594579945.784765933584
K1_19=3758885554363.304532609363747
K1_20=285979199.5152103381827825084
K1_21=541.2086013857066928094793803
K1_22=0.0000009127379731299228371553849656
K1_23=1.467000945716664761311634905 E-25
time = 6,670 ms.
gp>  for(i=1,nn,print("K2_",i,"=",KK2(nn,rr,i)))
K2_1=3.205201706365033730216929918
K2_2=2.239288142102211416391045569
K2_3=3.423815633281337550394318676
K2_4=2.087770026412915099467788988
K2_5=4.456514433587189078172330133
K2_6=4.854601276828128979215581701
K2_7=2.808014187353731494876311777
K2_8=3.937231019937500801916995064
K2_9=3.273929127568731165210983041
K2_10=3.888526195311970498390317085
K2_11=2.959977934332944737647888602
K2_12=3.511185750521995436679305776
K2_13=4.131004183287338184777406717
K2_14=4.279502554511210500766939442
K2_15=3.502977995981620428686703574
K2_16=2.450993355309895750774877505
K2_17=3.237251511884313553361745324
K2_18=3.082056771082329612173088735
K2_19=2.879204071534488372027932592
K2_20=4.180139798578258188529536779
K2_21=4.117262323552148558434290731
K2_22=4.446928606671417183735518294
K2_23=2.887698952691937413928435919
time = 9,395 ms.
gp>  for(i=1,nn,print("K3_",i,"=",KK3(nn,rr,i)))
K3_1=2.543376135200138410158753846 E188
K3_2=6.267010030942851112968284143 E188
K3_3=5.129545639354364119619567470 E188
K3_4=9.606996055687192284695910714 E188
K3_5=4.902918432824996954262698659 E188
K3_6=4.784961475531906629314702190 E188
K3_7=8.656142644918783782789677645 E188
K3_8=6.365249853507521209159815883 E188
K3_9=7.822859523346740720330770934 E188
K3_10=6.668210570336359796681929184 E188
K3_11=8.809635270895335232962761106 E188
K3_12=7.414079634219246543821348719 E188
K3_13=6.284123096739523737180045327 E188
K3_14=6.005016986855532015022347726 E188
K3_15=7.206474998244437072276436921 E188
K3_16=1.002486592149836130145845876 E189
K3_17=7.290223987187757903388552930 E188
K3_18=7.245502006731924374272106669 E188
K3_19=7.172599394525277730897509877 E188
K3_20=4.394384507373154632453831393 E188
K3_21=3.681136779196238687145812615 E188
K3_22=2.319706649530424738256943069 E188
K3_23=1.400828673539275187898959625 E188
time = 17,881 ms.
gp>  for(i=1,nn,print("c0_",i,"=",cc0(nn,rr,i)))
c0_1=8.299138694796420697907883964 E4144
c0_2=3.430272141405054110523089728 E4153
c0_3=4.185388351223328177013144412 E4151
c0_4=4.139305425180332086386908793 E4157
c0_5=1.548826248254170527357111879 E4151
c0_6=9.064123249136137061604168574 E4150
c0_7=4.179620982036945485476696248 E4156
c0_8=4.829920947584808319201180215 E4153
c0_9=4.508599881362445608975804444 E4155
c0_10=1.343398081621406651795251617 E4154
c0_11=6.152823070503320002882563015 E4156
c0_12=1.384393086896958369286686956 E4155
c0_13=3.642361444008401345491138386 E4153
c0_14=1.340643434870317882447021785 E4153
c0_15=7.411454616242410341762504419 E4154
c0_16=1.056157292360007530836310536 E4158
c0_17=9.556507002821435723903955133 E4154
c0_18=8.346542008482113597203467374 E4154
c0_19=6.681664339512811241904217560 E4154
c0_20=1.392378175916497893701548330 E4150
c0_21=2.828804955296824273970706248 E4148
c0_22=1.095285865291146287179071586 E4144
c0_23=1.661385822693352361371999295 E4139
time = 17,829 ms.
よって、Uの最初の上限として、
     K3=10190 (j!=16の場合)
     K3=10191 (j=16の場合)
を取ることができる。
定数C0をK322より大きいものとする。例えば、C0=104300とする。

■LLL-algorithmにより、K3の上限を下げる。
pari/gpでrealprecision=4500として、j=1,...,23の場合に対して、LLL-algoithmをそれぞれ適用すると、K3の新しい上限
nK3_1=2454
nK3_2=2662
nK3_3=2604
nK3_4=2543       (C0=10^4400)
nK3_5=2455
nK3_6=2529
nK3_7=2220
nK3_8=2093
nK3_9=2322
nK3_10=2313
nK3_11=3159
nK3_12=2553
nK3_13=2076
nK3_14=2342
nK3_15=3141
nK3_16=2263      (C0=10^4400)
nK3_17=2236
nK3_18=2285
nK3_19=2582
nK3_20=1754
nK3_21=1977
nK3_22=2120      (C0=10^4350)
nK3_23=3229
を得る。

■さらにLLL-algorithmを1〜2回適用すると、最終的に、
nK3_1=111
nK3_2=175 → 125
nK3_3=135
nK3_4=196 → 124
nK3_5=125
nK3_6=117
nK3_7=191 → 153
nK3_8=139
nK3_9=162
nK3_10=115
nK3_11=200 → 167
nK3_12=149
nK3_13=152
nK3_14=115
nK3_15=156
nK3_16=207 → 115
nK3_17=141
nK3_18=116
nK3_19=130
nK3_20=86
nK3_21=100
nK3_22=96
nK3_23=371 → 135
を得る。よって、K3=167として良い。

[pari/gp-2.2.7による計算(一部のみ)]
gp>  read("fibo23.gp")
time = 50 ms.
gp>  nf=bnfinit(f(23,x));
time = 39,026 ms.
gp>  \p 4500
   realprecision = 4508 significant digits (4500 digits displayed)
gp> read("fibo23.gp");
time = 10,805 ms.
gp>  K3=10^189;C0=10^4250;floor(nKK3(23,rr,C0,K3,17))
NG
time = 33mn, 3,532 ms.
%2 = []
gp>  K3=10^189;C0=10^4300;floor(nKK3(23,rr,C0,K3,17))
time = 34mn, 54,012 ms.
%3 = 2236
gp>  K3=10^189;C0=10^4300;floor(nKK3(23,rr,C0,K3,21))
time = 34mn, 56,995 ms.
%4 = 1977
gp>  K3=10^189;C0=10^4300;floor(nKK3(23,rr,C0,K3,20))
NG
time = 35mn, 10,164 ms.
%6 = []
gp>  K3=3229;C0=10^500;floor(nKK3(23,rr,C0,K3,23))
time = 5mn, 3,307 ms.
%7 = 371
gp>  K3=371;C0=10^60;floor(nKK3(23,rr,C0,K3,23))
NG
time = 4mn, 46,282 ms.
%10 = []
gp>  K3=371;C0=10^70;floor(nKK3(23,rr,C0,K3,23))
NG
time = 4mn, 58,830 ms.
%11 = []
gp>  K3=371;C0=10^80;floor(nKK3(23,rr,C0,K3,23))
NG
time = 4mn, 53,922 ms.
%12 = []
gp>  K3=371;C0=10^200;floor(nKK3(23,rr,C0,K3,23))
time = 4mn, 49,366 ms.
%13 = 135
gp>  K3=3229;C0=10^200;floor(nKK3(23,rr,C0,K3,23))
  ***   user interrupt after 32,337 ms.
gp>  K3=2120;C0=10^200;floor(nKK3(23,rr,C0,K3,22))
time = 5mn, 12,549 ms.
%14 = 96
gp>  K3=1977;C0=10^200;floor(nKK3(23,rr,C0,K3,21))
NG
time = 5mn, 16,766 ms.
%15 = []
gp>  K3=1977;C0=10^210;floor(nKK3(23,rr,C0,K3,21))
time = 5mn, 582 ms.
%16 = 100
gp>  K3=2263;C0=10^250;floor(nKK3(23,rr,C0,K3,16))
time = 5mn, 59,980 ms.
%17 = 207

Q(θ)の代数的数 p=Σi=022aiθi, q=Σi=022biθiに対して、その積をp*q=Σi=022ciθi (ciQ)とする。
このとき、
     max0 <= i <= 22|ai| <= Ka,
     max0 <= i <= 22|bi| <= Kb
ならば、
     max0 <= i <= 22|ci| <= M*Ka*Kb
となる定数Mを求める。

定数Mをpari/gpで計算すると、
     M = 126359463349180729840011754845271720352153608
であることが分かる。

また、Q(θ)の基本単数の巾乗数
     {εk(i)uk : 1 <= k <= 22, |uk| <= 167, 1 < =i <= 23 }
をθの多項式で表現した場合の係数の絶対値の上限をvとすると、
     v = 239283029276590090344805449182788902249810130614444389744004996560663799900548747539936882227134878597579048422361023050171274441895609032484317915459283993703041292238032838207958718022639748167260143103339549186524049149112466987774589870427940583568123208002377564251099089733121812820957901684427348523971992447902314620312743380705737528381989335531190008797204755962348191948665609537993197401369657908325155351321804079950681159633377367130149220947462270472322887208820639218014448267477751929897726563360191647055572068227328404460243604691094028192578764228019259647216849/16777216
であることが分かる。
特に、βi=AiBならば、max{|A|,|B|} <= M21*v22である。
これより、
     x <= sqrt{5}*M21*v22,
     Fm = x23 <= (sqrt{5}*M21*v22)23
を得る。
また、
     Fm ≒ ((sqrt{5}+1)/2)m/sqrt{5}
より、Fm = x23であるならば、
     m <= 1492104
であることが分かる。

[pari/gpによる計算]
gp>  m=M(23)
time = 2,014 ms.
%1 = 126359463349180729840011754845271720352153608
gp>  v=vv(23,nf,167)
time = 57mn, 2,680 ms.
%2 = 239283029276590090344805449182788902249810130614444389744004996560663799900548747539936882227134878597579048422361023050171274441895609032484317915459283993703041292238032838207958718022639748167260143103339549186524049149112466987774589870427940583568123208002377564251099089733121812820957901684427348523971992447902314620312743380705737528381989335531190008797204755962348191948665609537993197401369657908325155351321804079950681159633377367130149220947462270472322887208820639218014448267477751929897726563360191647055572068227328404460243604691094028192578764228019259647216849/16777216
gp>  w=(sqrt(5)+1)/2
time = 0 ms.
%3 = 1.618033988749894848204586834
gp>  n=23;s=((n+1)/2*log(5)+n*(n-2)*log(m)+n*(n-1)*log(v))/log(w)
time = 2 ms.
%4 = 1492104.915747299743883066725

■3<=m<=1492103である奇数mに対して、Fmが完全23乗数にならないことを確認する。

[gp2c-0.0.2pl6による計算]
bash-2.05a$ gp2c-run -g fibo23.gp
Reading GPRC: ./gp2c_gprc ...Done.

                  GP/PARI CALCULATOR Version 2.1.5 (released)
                       i386 running netbsd 32-bit version
                (readline v1.0 enabled, extended help available)

                       Copyright (C) 2002 The PARI Group

PARI/GP is free software, covered by the GNU General Public License, and 
comes WITHOUT ANY WARRANTY WHATSOEVER.

Type ? for help, \q to quit.
Type ?12 for how to get moral (and possibly technical) support.

   realprecision = 28 significant digits
   seriesprecision = 16 significant terms
   format = g0.28

parisize = 100000000, primelimit = 500000
gp>  ll=findp(23)
time = 44 ms.
%1 = [47, 139, 277, 461, 599, 691, 829, 967, 1013, 1151, 1289, 1381, 1427, 1657, 1933, 1979, 2347, 2393, 2531, 3037, 3083, 3221]
gp>  check(23,1492104)
#{k:0<=k<47, (k/47)_23}=3
#{k:0<=k<139, (k/139)_23}=7
#{k:0<=k<277, (k/277)_23}=13
#{k:0<=k<461, (k/461)_23}=21
#{k:0<=k<599, (k/599)_23}=27
#{k:0<=k<691, (k/691)_23}=31
#{k:0<=k<829, (k/829)_23}=37
#{k:0<=k<967, (k/967)_23}=43
#{k:0<=k<1013, (k/1013)_23}=45
#{k:0<=k<1151, (k/1151)_23}=51
#{k:0<=k<1289, (k/1289)_23}=57
#{k:0<=k<1381, (k/1381)_23}=61
#{k:0<=k<1427, (k/1427)_23}=63
#{k:0<=k<1657, (k/1657)_23}=73
#{k:0<=k<1933, (k/1933)_23}=85
#{k:0<=k<1979, (k/1979)_23}=87
#{k:0<=k<2347, (k/2347)_23}=103
#{k:0<=k<2393, (k/2393)_23}=105
#{k:0<=k<2531, (k/2531)_23}=111
#{k:0<=k<3037, (k/3037)_23}=133
#{k:0<=k<3083, (k/3083)_23}=135
#{k:0<=k<3221, (k/3221)_23}=141
pp=2.826369097221403420985977284 E-30
time = 31,037 ms.

■以上により、Fm=x23ならば、m<=2である。
m<=2の範囲で、F0=0, F1=F2=1は、(自明な)完全23乗数である。
よって、Fibonacci数列に現れる完全23乗数は、0,1に限ることが証明できた。

■不定方程式
     v2-5u46 = ±4
の整数解(u,v)は、
     (0,±1), (±1,±1)
の6個に限ることが分かる。


[参考文献]


Last Update: 2005.06.12
H.Nakao

Homeに戻る[Homeに戻る]  一覧に戻る[一覧に戻る]