・あるもやもや                             GAI 氏

 ある現象を計算して、その結果をOEISで検索した時、「A157809」に出会いました。

 それは、ベルヌーイ数B(n)では B(1)=-1/2 と定義されていたり、ときには、B(1)=1/2 で使用
されたりすることが不思議で、これは、ベルヌーイ多項式というものを導入して、

gp > for(n=0,10,print(n";"bernpol(n)))

 0; 1
 1; x - 1/2
 2;x^2 - x + 1/6
 3;x^3 - 3/2*x^2 + 1/2*x
 4;x^4 - 2*x^3 + x^2 - 1/30
 5;x^5 - 5/2*x^4 + 5/3*x^3 - 1/6*x
 6;x^6 - 3*x^5 + 5/2*x^4 - 1/2*x^2 + 1/42
 7;x^7 - 7/2*x^6 + 7/2*x^5 - 7/6*x^3 + 1/6*x
 8;x^8 - 4*x^7 + 14/3*x^6 - 7/3*x^4 + 2/3*x^2 - 1/30
 9;x^9 - 9/2*x^8 + 6*x^7 - 21/5*x^5 + 2*x^3 - 3/10*x
10;x^10 - 5*x^9 + 15/2*x^8 - 7*x^6 + 5*x^4 - 3/2*x^2 + 5/66


で定義されていくもので、その x に 0 と 1 を使用して各多項式を計算すると、

gp>for(n=0,10,print(n";"subst(bernpol(n),x,0)))

 0;1
 1;-1/2
 2;1/6
 3;0
 4;-1/30
 5;0
 6;1/42
 7;0
 8;-1/30
 9;0
10;5/66
  gp>for(n=0,10,print(n";"subst(bernpol(n),x,1)))

 0;1
 1;1/2
 2;1/6
 3;0
 4;-1/30
 5;0
 6;1/42
 7;0
 8;-1/30
 9;0
10;5/66

となり、x=0、1を使う場合に応じて、x=0では-1/2であったり、x=1では1/2となっていたり(他の
場所では全く同じ)と解釈すればいいんだと思えた。

 そこで、他の x の値でも何かしら数値が決まると思って、x=2、3 を使うと、

gp>for(n=0,10,print(n";"subst(bernpol(n),x,2)))

 0;1
 1;3/2
 2;13/6
 3;3
 4;119/30
 5;5
 6;253/42
 7;7
 8;239/30
 9;9
10;665/66
  gp>for(n=0,10,print(n";"subst(bernpol(n),x,3)))

 0;1
 1;5/2
 2;37/6
 3;15
 4;1079/30
 5;85
 6;8317/42
 7;455
 8;30959/30
 9;2313
10;338585/66

となって、これらを分子に着目して検索し、ここに出会ったものでした。

 なお、これらの数列は、x*exp(x)^2/(exp(x)-1),x*exp(x)^3/(exp(x)-1) の指数型母関数で
上手く対応できる。

gp > serlaplace(x*exp(x)^2/(exp(x)-1))
%177 = 1 + 3/2*x + 13/6*x^2 + 3*x^3 + 119/30*x^4 + 5*x^5 + 253/42*x^6 + 7*x^7
    + 239/30*x^8 + 9*x^9 + 665/66*x^10 + 11*x^11 + 32069/2730*x^12 + 13*x^13
    + 91/6*x^14 + 15*x^15 + O(x^16)

gp > serlaplace(x*exp(x)^3/(exp(x)-1))
%178 = 1 + 5/2*x + 37/6*x^2 + 15*x^3 + 1079/30*x^4 + 85*x^5 + 8317/42*x^6 + 455*x^7
    + 30959/30*x^8 + 2313*x^9 + 338585/66*x^10 + 11275*x^11 + 67124549/2730*x^12
    + 53261*x^13 + 688219/6*x^14 + 245775*x^15 + O(x^16)

 一般に、ベルヌーイ多項式に、x=r を代入した時の各値は、serlaplace(x*exp(x)^r/(exp(x)-1))
で観察すればよい。

 話は元に戻って、例のサイトで表が構成されていて、第1列には、subst(bernpol(n),x,2)の数
列が、第1行には、subst(bernpol(n),x,3)の数列が配置されいて、残りに、
11/3,53/6/,629/30,31,6,182/15,209/30,・・・
等が埋められると言うのですが、一体これらはどうしてこの値を入れるのか、残りには何の
値になるのかを色々考えてみるのですが、全く手掛かりが掴めず、困っています。
(右上がり対角線の和がn*2^(n-1)に成ると言う。)

 何方か解明に協力してください。


 GAI さんからのコメントです。(令和3年12月31日付け)

 例の規則がやっと解明でき、スッキリしました。空欄には次の数値が当てはまります。
(年末丸々3日間の日にちを要しました。)

M =
[     1     5/2    37/6      15 1079/30      85  8317/42      455  30959/30      2313 338585/66]

[   3/2    11/3    53/6  629/30 1471/30 4747/42 10793/42 17309/30  38431/30 185927/66         0]

[  13/6    31/6  182/15      28 2689/42     144  9599/30      704 101381/66         0         0]

[     3  209/30      16   251/7      80 5279/30      384 54917/66         0         0         0]

[119/30  269/30  841/42      44 1444/15     208 29573/66        0         0         0         0]

[     5  463/42      24 1559/30     112 7895/33        0        0         0         0         0]

[253/42  547/42  839/30      60 8453/66       0        0        0         0         0         0]

[     7  449/30      32 4493/66       0       0        0        0         0         0         0]

[239/30  509/30 2381/66       0       0       0        0        0         0         0         0]

[     9 1259/66       0       0       0       0        0        0         0         0         0]

[665/66       0       0       0       0       0        0        0         0         0         0]


#対角線の和なので、下半分は省略しました。

gp > for(n=1,11,print1(n*2^(n-1)","))

 1,4,12,32,80,192,448,1024,2304,5120,11264

に対し、Mでの右上がり各対角線での和は、

gp > for(n=1,11,print(n";"sum(j=0,n-1,M[n-j,j+1])))

 1;1
 2;4
 3;12
 4;32
 5;80
 6;192
 7;448
 8;1024
 9;2304
10;5120
11;11264


となり、条件を満たしました。

 なお、n*2^(n-1) だけの数列を産み出すには、行列Mの第1行から第1列を単に引けば、
即ち、

gp > for(n=2,11,print1(M[1,n]-M[n,1]","))

 1,4,12,32,80,192,448,1024,2304,5120

は並ぶ。また、

gp > M3=Vec(serlaplace(x*exp(x)^3/(exp(x)-1)))
%398 = [1, 5/2, 37/6, 15, 1079/30, 85, 8317/42, 455, 30959/30, 2313,338585/66, 11275,
                             67124549/2730, 53261, 688219/6, 245775]
gp > M4=Vec(serlaplace(x*exp(x)^4/(exp(x)-1)))
%399 = [1, 7/2, 73/6, 42, 4319/30, 490, 69553/42, 5558, 555839/30, 61362,13329365/66,
                 660814, 5870460269/2730, 6961994, 134611351/6, 71990310]

の2つでは、各成分での差は、

gp > for(n=2,16,print1(M4[n]-M3[n]","))
1,6,27,108,405,1458,5103,17496,59049,196830,649539,2125764,6908733,22320522,71744535

となり、今度は、

gp > for(n=1,15,print1(n*3^(n-1)","))
1,6,27,108,405,1458,5103,17496,59049,196830,649539,2125764,6908733,22320522,71744535

の数列が対応することが起こる。



  以下、工事中!



              投稿一覧に戻る