■円周率の計算(その28)

【1】BBP公式

 1996年にベイリー,ボールウェイン,プラウフにより,BBP公式が見いだされた.

  π=Σ1/16^n(4/(8n+1)−2/(8n+4)−1/(8n+5)−1/(8n+6))

はコンピュータのために発見された異色の式である.

 この公式の不思議な点は円周率を16進法で表すとき,任意の桁(たとえば1000桁目)を直接計算できるという点である.自己修正できるとでもいうべきか,たとえば,527桁目で間違えようと,その後の計算は無効にならず,1000桁目は正しい.

 円周率πの計算(や巨大な素数の発見)はコンピュータシステムの信頼性や処理速度といった性能をテストするのに最適ということであるが,BBP公式は16進法に関係していて,BBP公式を使うと任意の位置にある数を非常に効率よく求めることができる.たとえば,πを2進数展開したとき1000兆桁目の数字は何か?

 n番目の桁をそれ以前のn−1番目の桁を計算することなしに直接計算できるのだが,求めるのは小数部分だけであるから整数部分はどんどんカットしながら計算していけばよいので,計算が簡単になるのである.

===================================

【2】BBP公式の導出

 (その27)の繰り返しになるが,少し丁寧に記してみたい.

 0<t<1のとき,

  1/(1−t^8)=Σt^8=1+t^8+t^16+・・・

  t^k-1/(1−t^8)=t^k-1Σt^8=t^k-1(1+t^8+t^16+・・・)

 また, 上式を0から1/√2まで積分する

  Ik=∫(0,1/√2)t^k-1/(1−t^8)dt

=∫(0,1/√2)Σt^k+8n-1dt

=Σ∫(0,1/√2)Σt^k+8n-1dt

=Σt^k+8n/(k+8n)

=1/2^k/2Σ(1/16^n・1/(8n+k)

  S(a,b)=Σ(1/16^n・1/(an+b)

とおいて,S(a,b)=πとなる組み合わせを考える.

 BBP公式は

  4S(8,1)−2S(8,4)−S(8,5)−S(8,6)

=Σ1/16^n{4/(8n+1)−2/(8n+4)−1/(8n+5)−1/(8n+6)}

=∫(0,1/√2)(4√2−8t^3−4√2t^4−8t^8)/(1−t^8)dt

=∫(0,1)16(x^5+x^4+2x^3−4)/(x^8−16)dx

=∫(0,1)16(x−1)/(x^4−2x^3+4x−4)dx

=∫(0,1)16(x−1)/(x^2−2)(x^2−2x−2)dx

=4∫(0,1)x/(x^2−2)dx−4∫(0,1)(x−1)/(x^2−2x+2)dx+4∫(0,1)1/(x^2−2x−2)dx

  ∫x/(x^2−2)dx=1/2log(x^2−2)

  ∫(x−1)/(x^2−2x+2)dx=1/2log(x^2−2x+2)

  ∫1/(x^2−2x−2)dx=arctan(x−1)

より

  Σ1/16^n{4/(8n+1)−2/(8n+4)−1/(8n+5)−1/(8n+6)}=π

となるというわけである.

===================================