2025年5月2日金曜日

250502

Ruby


An identity motivated by an amazing identity of Ramanujan

James Mc Laughlin氏が得た結果を確認してみた。

# a(n) = 99*a(n-1) - 99*a(n-2) + a(n-3)
def A(n, a, b, c)
  ary = [a, b, c]
  (3..n).each{|i| ary << 99*ary[-1] - 99*ary[-2] + ary[-3]}
  ary
end

n = 10

# A261004
a_ary = A(n, -3, -461, -45343)
# A269548
b_ary = A(n, -1, -233, -22961)
# A269549
c_ary = A(n,  1, -199, -19799)
# A269550
d_ary = A(n,  7,  465,  45347)
# A269551
e_ary = A(n,  5,  237,  22965)
# A269552
f_ary = A(n,  3,  203,  19803)
# A269553
p_ary = A(n, -3, -435, -42763)
# A269554
q_ary = A(n, -1, -343, -33861)
# A269555
r_ary = A(n,  7,  439,  42767)
# A269556
s_ary = A(n,  5,  347,  33865)
# A010701
t_ary = [3] * (n + 1)

a = [
  a_ary,
  b_ary,
  c_ary,
  d_ary,
  e_ary,
  f_ary,
  p_ary,
  q_ary,
  r_ary,
  s_ary,
  t_ary
]

(0..n).each{|i|
  (1..5).each{|j|
    ary = (0..10).map{|k| a[k][i]}

    terms = ary.each_with_index.map{|x, idx|
      display = x < 0 ? "(#{x})^#{j}" : "#{x}^#{j}"
      operator = idx == 0 ? "" : (idx < 6 ? " + " : " - ")
      operator + display
    }
    expression = terms.join

    # 実際の数値計算
    sum = ary.each_with_index.map{|x, idx| idx < 6 ? x ** j : -x ** j}.sum

    puts "#{expression} = #{sum}"
  }
  p ""
}

出力結果
(-3)^1 + (-1)^1 + 1^1 + 7^1 + 5^1 + 3^1 - (-3)^1 - (-1)^1 - 7^1 - 5^1 - 3^1 = 1
(-3)^2 + (-1)^2 + 1^2 + 7^2 + 5^2 + 3^2 - (-3)^2 - (-1)^2 - 7^2 - 5^2 - 3^2 = 1
(-3)^3 + (-1)^3 + 1^3 + 7^3 + 5^3 + 3^3 - (-3)^3 - (-1)^3 - 7^3 - 5^3 - 3^3 = 1
(-3)^4 + (-1)^4 + 1^4 + 7^4 + 5^4 + 3^4 - (-3)^4 - (-1)^4 - 7^4 - 5^4 - 3^4 = 1
(-3)^5 + (-1)^5 + 1^5 + 7^5 + 5^5 + 3^5 - (-3)^5 - (-1)^5 - 7^5 - 5^5 - 3^5 = 1
""
(-461)^1 + (-233)^1 + (-199)^1 + 465^1 + 237^1 + 203^1 - (-435)^1 - (-343)^1 - 439^1 - 347^1 - 3^1 = 1
(-461)^2 + (-233)^2 + (-199)^2 + 465^2 + 237^2 + 203^2 - (-435)^2 - (-343)^2 - 439^2 - 347^2 - 3^2 = 1
(-461)^3 + (-233)^3 + (-199)^3 + 465^3 + 237^3 + 203^3 - (-435)^3 - (-343)^3 - 439^3 - 347^3 - 3^3 = 1
(-461)^4 + (-233)^4 + (-199)^4 + 465^4 + 237^4 + 203^4 - (-435)^4 - (-343)^4 - 439^4 - 347^4 - 3^4 = 1
(-461)^5 + (-233)^5 + (-199)^5 + 465^5 + 237^5 + 203^5 - (-435)^5 - (-343)^5 - 439^5 - 347^5 - 3^5 = 1
""
(-45343)^1 + (-22961)^1 + (-19799)^1 + 45347^1 + 22965^1 + 19803^1 - (-42763)^1 - (-33861)^1 - 42767^1 - 33865^1 - 3^1 = 1
(-45343)^2 + (-22961)^2 + (-19799)^2 + 45347^2 + 22965^2 + 19803^2 - (-42763)^2 - (-33861)^2 - 42767^2 - 33865^2 - 3^2 = 1
(-45343)^3 + (-22961)^3 + (-19799)^3 + 45347^3 + 22965^3 + 19803^3 - (-42763)^3 - (-33861)^3 - 42767^3 - 33865^3 - 3^3 = 1
(-45343)^4 + (-22961)^4 + (-19799)^4 + 45347^4 + 22965^4 + 19803^4 - (-42763)^4 - (-33861)^4 - 42767^4 - 33865^4 - 3^4 = 1
(-45343)^5 + (-22961)^5 + (-19799)^5 + 45347^5 + 22965^5 + 19803^5 - (-42763)^5 - (-33861)^5 - 42767^5 - 33865^5 - 3^5 = 1
""
(-4443321)^1 + (-2250073)^1 + (-1940399)^1 + 4443325^1 + 2250077^1 + 1940403^1 - (-4190475)^1 - (-3318283)^1 - 4190479^1 - 3318287^1 - 3^1 = 1
(-4443321)^2 + (-2250073)^2 + (-1940399)^2 + 4443325^2 + 2250077^2 + 1940403^2 - (-4190475)^2 - (-3318283)^2 - 4190479^2 - 3318287^2 - 3^2 = 1
(-4443321)^3 + (-2250073)^3 + (-1940399)^3 + 4443325^3 + 2250077^3 + 1940403^3 - (-4190475)^3 - (-3318283)^3 - 4190479^3 - 3318287^3 - 3^3 = 1
(-4443321)^4 + (-2250073)^4 + (-1940399)^4 + 4443325^4 + 2250077^4 + 1940403^4 - (-4190475)^4 - (-3318283)^4 - 4190479^4 - 3318287^4 - 3^4 = 1
(-4443321)^5 + (-2250073)^5 + (-1940399)^5 + 4443325^5 + 2250077^5 + 1940403^5 - (-4190475)^5 - (-3318283)^5 - 4190479^5 - 3318287^5 - 3^5 = 1
""
(-435400283)^1 + (-220484321)^1 + (-190139599)^1 + 435400287^1 + 220484325^1 + 190139603^1 - (-410623923)^1 - (-325158121)^1 - 410623927^1 - 325158125^1 - 3^1 = 1
(-435400283)^2 + (-220484321)^2 + (-190139599)^2 + 435400287^2 + 220484325^2 + 190139603^2 - (-410623923)^2 - (-325158121)^2 - 410623927^2 - 325158125^2 - 3^2 = 1
(-435400283)^3 + (-220484321)^3 + (-190139599)^3 + 435400287^3 + 220484325^3 + 190139603^3 - (-410623923)^3 - (-325158121)^3 - 410623927^3 - 325158125^3 - 3^3 = 1
(-435400283)^4 + (-220484321)^4 + (-190139599)^4 + 435400287^4 + 220484325^4 + 190139603^4 - (-410623923)^4 - (-325158121)^4 - 410623927^4 - 325158125^4 - 3^4 = 1
(-435400283)^5 + (-220484321)^5 + (-190139599)^5 + 435400287^5 + 220484325^5 + 190139603^5 - (-410623923)^5 - (-325158121)^5 - 410623927^5 - 325158125^5 - 3^5 = 1
""
(-42664784581)^1 + (-21605213513)^1 + (-18631740599)^1 + 42664784585^1 + 21605213517^1 + 18631740603^1 - (-40236954115)^1 - (-31862177823)^1 - 40236954119^1 - 31862177827^1 - 3^1 = 1
(-42664784581)^2 + (-21605213513)^2 + (-18631740599)^2 + 42664784585^2 + 21605213517^2 + 18631740603^2 - (-40236954115)^2 - (-31862177823)^2 - 40236954119^2 - 31862177827^2 - 3^2 = 1
(-42664784581)^3 + (-21605213513)^3 + (-18631740599)^3 + 42664784585^3 + 21605213517^3 + 18631740603^3 - (-40236954115)^3 - (-31862177823)^3 - 40236954119^3 - 31862177827^3 - 3^3 = 1
(-42664784581)^4 + (-21605213513)^4 + (-18631740599)^4 + 42664784585^4 + 21605213517^4 + 18631740603^4 - (-40236954115)^4 - (-31862177823)^4 - 40236954119^4 - 31862177827^4 - 3^4 = 1
(-42664784581)^5 + (-21605213513)^5 + (-18631740599)^5 + 42664784585^5 + 21605213517^5 + 18631740603^5 - (-40236954115)^5 - (-31862177823)^5 - 40236954119^5 - 31862177827^5 - 3^5 = 1
""
(-4180713488823)^1 + (-2117090440081)^1 + (-1825720439399)^1 + 4180713488827^1 + 2117090440085^1 + 1825720439403^1 - (-3942810879483)^1 - (-3122168268781)^1 - 3942810879487^1 - 3122168268785^1 - 3^1 = 1
(-4180713488823)^2 + (-2117090440081)^2 + (-1825720439399)^2 + 4180713488827^2 + 2117090440085^2 + 1825720439403^2 - (-3942810879483)^2 - (-3122168268781)^2 - 3942810879487^2 - 3122168268785^2 - 3^2 = 1
(-4180713488823)^3 + (-2117090440081)^3 + (-1825720439399)^3 + 4180713488827^3 + 2117090440085^3 + 1825720439403^3 - (-3942810879483)^3 - (-3122168268781)^3 - 3942810879487^3 - 3122168268785^3 - 3^3 = 1
(-4180713488823)^4 + (-2117090440081)^4 + (-1825720439399)^4 + 4180713488827^4 + 2117090440085^4 + 1825720439403^4 - (-3942810879483)^4 - (-3122168268781)^4 - 3942810879487^4 - 3122168268785^4 - 3^4 = 1
(-4180713488823)^5 + (-2117090440081)^5 + (-1825720439399)^5 + 4180713488827^5 + 2117090440085^5 + 1825720439403^5 - (-3942810879483)^5 - (-3122168268781)^5 - 3942810879487^5 - 3122168268785^5 - 3^5 = 1
""
(-409667257120241)^1 + (-207453257914553)^1 + (-178901971320799)^1 + 409667257120245^1 + 207453257914557^1 + 178901971320803^1 - (-386355229235355)^1 - (-305940628162963)^1 - 386355229235359^1 - 305940628162967^1 - 3^1 = 1
(-409667257120241)^2 + (-207453257914553)^2 + (-178901971320799)^2 + 409667257120245^2 + 207453257914557^2 + 178901971320803^2 - (-386355229235355)^2 - (-305940628162963)^2 - 386355229235359^2 - 305940628162967^2 - 3^2 = 1
(-409667257120241)^3 + (-207453257914553)^3 + (-178901971320799)^3 + 409667257120245^3 + 207453257914557^3 + 178901971320803^3 - (-386355229235355)^3 - (-305940628162963)^3 - 386355229235359^3 - 305940628162967^3 - 3^3 = 1
(-409667257120241)^4 + (-207453257914553)^4 + (-178901971320799)^4 + 409667257120245^4 + 207453257914557^4 + 178901971320803^4 - (-386355229235355)^4 - (-305940628162963)^4 - 386355229235359^4 - 305940628162967^4 - 3^4 = 1
(-409667257120241)^5 + (-207453257914553)^5 + (-178901971320799)^5 + 409667257120245^5 + 207453257914557^5 + 178901971320803^5 - (-386355229235355)^5 - (-305940628162963)^5 - 386355229235359^5 - 305940628162967^5 - 3^5 = 1
""
(-40143210484294963)^1 + (-20328302185186241)^1 + (-17530567468999199)^1 + 40143210484294967^1 + 20328302185186245^1 + 17530567468999203^1 - (-37858869654185443)^1 - (-29979059391701841)^1 - 37858869654185447^1 - 29979059391701845^1 - 3^1 = 1
(-40143210484294963)^2 + (-20328302185186241)^2 + (-17530567468999199)^2 + 40143210484294967^2 + 20328302185186245^2 + 17530567468999203^2 - (-37858869654185443)^2 - (-29979059391701841)^2 - 37858869654185447^2 - 29979059391701845^2 - 3^2 = 1
(-40143210484294963)^3 + (-20328302185186241)^3 + (-17530567468999199)^3 + 40143210484294967^3 + 20328302185186245^3 + 17530567468999203^3 - (-37858869654185443)^3 - (-29979059391701841)^3 - 37858869654185447^3 - 29979059391701845^3 - 3^3 = 1
(-40143210484294963)^4 + (-20328302185186241)^4 + (-17530567468999199)^4 + 40143210484294967^4 + 20328302185186245^4 + 17530567468999203^4 - (-37858869654185443)^4 - (-29979059391701841)^4 - 37858869654185447^4 - 29979059391701845^4 - 3^4 = 1
(-40143210484294963)^5 + (-20328302185186241)^5 + (-17530567468999199)^5 + 40143210484294967^5 + 20328302185186245^5 + 17530567468999203^5 - (-37858869654185443)^5 - (-29979059391701841)^5 - 37858869654185447^5 - 29979059391701845^5 - 3^5 = 1
""
(-3933624960203786301)^1 + (-1991966160890337193)^1 + (-1717816709990600999)^1 + 3933624960203786305^1 + 1991966160890337197^1 + 1717816709990601003^1 - (-3709782870880938195)^1 - (-2937641879758617703)^1 - 3709782870880938199^1 - 2937641879758617707^1 - 3^1 = 1
(-3933624960203786301)^2 + (-1991966160890337193)^2 + (-1717816709990600999)^2 + 3933624960203786305^2 + 1991966160890337197^2 + 1717816709990601003^2 - (-3709782870880938195)^2 - (-2937641879758617703)^2 - 3709782870880938199^2 - 2937641879758617707^2 - 3^2 = 1
(-3933624960203786301)^3 + (-1991966160890337193)^3 + (-1717816709990600999)^3 + 3933624960203786305^3 + 1991966160890337197^3 + 1717816709990601003^3 - (-3709782870880938195)^3 - (-2937641879758617703)^3 - 3709782870880938199^3 - 2937641879758617707^3 - 3^3 = 1
(-3933624960203786301)^4 + (-1991966160890337193)^4 + (-1717816709990600999)^4 + 3933624960203786305^4 + 1991966160890337197^4 + 1717816709990601003^4 - (-3709782870880938195)^4 - (-2937641879758617703)^4 - 3709782870880938199^4 - 2937641879758617707^4 - 3^4 = 1
(-3933624960203786301)^5 + (-1991966160890337193)^5 + (-1717816709990600999)^5 + 3933624960203786305^5 + 1991966160890337197^5 + 1717816709990601003^5 - (-3709782870880938195)^5 - (-2937641879758617703)^5 - 3709782870880938199^5 - 2937641879758617707^5 - 3^5 = 1
""
(-385455102889486762703)^1 + (-195192355465067858801)^1 + (-168328507011609898999)^1 + 385455102889486762707^1 + 195192355465067858805^1 + 168328507011609899003^1 - (-363520862476677757803)^1 - (-287858925156952833301)^1 - 363520862476677757807^1 - 287858925156952833305^1 - 3^1 = 1
(-385455102889486762703)^2 + (-195192355465067858801)^2 + (-168328507011609898999)^2 + 385455102889486762707^2 + 195192355465067858805^2 + 168328507011609899003^2 - (-363520862476677757803)^2 - (-287858925156952833301)^2 - 363520862476677757807^2 - 287858925156952833305^2 - 3^2 = 1
(-385455102889486762703)^3 + (-195192355465067858801)^3 + (-168328507011609898999)^3 + 385455102889486762707^3 + 195192355465067858805^3 + 168328507011609899003^3 - (-363520862476677757803)^3 - (-287858925156952833301)^3 - 363520862476677757807^3 - 287858925156952833305^3 - 3^3 = 1
(-385455102889486762703)^4 + (-195192355465067858801)^4 + (-168328507011609898999)^4 + 385455102889486762707^4 + 195192355465067858805^4 + 168328507011609899003^4 - (-363520862476677757803)^4 - (-287858925156952833301)^4 - 363520862476677757807^4 - 287858925156952833305^4 - 3^4 = 1
(-385455102889486762703)^5 + (-195192355465067858801)^5 + (-168328507011609898999)^5 + 385455102889486762707^5 + 195192355465067858805^5 + 168328507011609899003^5 - (-363520862476677757803)^5 - (-287858925156952833301)^5 - 363520862476677757807^5 - 287858925156952833305^5 - 3^5 = 1
""