■ペル数列とヘロン数列

 フィボナッチ数列:an=an-1+an-2は有名な数列ですが,他にはどのような数列があるのでしょうか? トリボナッチ数列,テトラナッチ数列,ペンタナッチ数列,ヘキサナッチ数列・・・とその変形(an=an-2+an-5,an=an-2+an-3(パドヴァン数列・ペラン数列),an=an-1+an-3,an=2an-1+an-2(ペル数列),an=an-2+an-3+an-4)・・・

 [参]フラナリー「√2の森とアンドリュー少年」シュプリンガー・ジャパン

は丸ごと1冊,√2の最良近似分数列

  1/1,3/2,7/5,17/12,41/29,99/70,239/169,577/408,・・・

だけを扱った稀少な本ですが,そこではペル数列やヘロン数列の話題が取り上げられています.

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

【1】√2の近似値とペル数列

 素数が無限に存在すること・√2が無理数であることは,ギリシア数学のなかでも有名な定理です.それぞれユークリッドとピタゴラスが背理法を用いて証明しています.√2は2つの整数の比p/qではないので,√2=p/qすなわちp^2=2q^2になるような2つの整数p,qを見つけることはできません.しかし,誤差±1を許すことにすると

  2q^2=p^2±1  (ペル方程式)

なる2つの整数p,qを見つけることができます.

  2^2+2^2=3^2−1

  5^2+5^2=7^2+1

  12^2+12^2=17^2−1

  ・・・・・・・・・・・・・

このとき,±1は交互に繰り返し現れます.

 √2の最良近似値は1/1,3/2,7/5,17/12,41/29,・・・です.このような分数を全部求めるには1/1から出発して1+1=2が次の分母になり,1+2=3が次の分子になる,3+2=5が第3の分母,2+5=7が第3の分子になる,すなわち,1つ前の分数の分子と分母の和が次の分母になり,ひとつ前の分数の分母を2倍したものとその分子の和が次の分子になり,同様に続いていくという算術的な規則があります.

  1,2,5,12,29,70,169,408,・・・

はペル数列(an=2an-1+an-2)と呼ばれます.

  1/1↓ ↑3/2↓ ↑7/5↓ ↑17/12↓ ↑41/29↓ ・・・

 すなわち,ペル方程式:p^2−2q^2=±1を満たすp/qがひとつの分数で,P/Qが次の分数だとすると

  Q=p+q,P=q+Q=p+2q

  P^2−2Q^2=2q^2−p^2=±1

となって,P/QもまたP^2−2Q^2=±1となる分数を与えることができることになります.1/1から始まって次々に解となる分数を見つけることができるというわけです.

  p/q→P/Q=(p+2q)/(p+q)

(−1) 1/1<7/5<41/29<239/169<・・・<√2<・・・<577/408<99/70<17/12<3/2 (+1)

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

【2】√2の近似値とヘロン数列

  p/q→(p+2q)/(p+q)

に次ぐ第3の近似分数は

  p/q→(p+2q)/(p+q)→(3p+4q)/(2p+3q)

となりますが,

  (3p+4q)/(2p+3q)

にp=1,q=1を代入すると過小評価(−1)側の分数列

  (−1) 1/1<7/5<41/29<239/169<・・・<√2

p=3,q=2を代入すると過大評価(+1)側の分数列が得られます.

  √2<・・・<577/408<99/70<17/12<3/2 (+1)

すなわち(3p+4q)/(2p+3q)では分数を1つ飛び越えているので収束が加速されます.ここでは別の収束加速法を紹介します.

 aがx^2=0の解ならばa=2/aが成り立ちます.aがいくらか不正確,たとえば過小評価であるならば,2/aは過大評価となります.過小評価と過大評価の中間(算術平均)はaと2/aのいずれよりもよい評価となります.かくして算術平均:

  an+1=1/2(an+2/an)

によって定義される数列は√(2)に収束することになります(ヘロンのアルゴリズム).

 ヘロンのアルゴリズムは,算術平均・幾何平均の不等式

  (a+b)/2≧√ab

において,b=2/aの場合となっています.

  1/2(a+2/a)≧√2

 また,この場合,2の平方根をニュートン法x:=x-f(x)/f'(x)で求めるのと同じことになります.ニュートン法の幾何学的意味は「初期値x0における関数の勾配を求めて,接線とx軸の交点を求める.この点において,同様の作業を行うとxは順次解に近づいていく.」と解釈されます.

 a=1を1/2(a+2/a)に代入すると3/2が得られますが,これを繰り返すと

  1→3/2→17/12(1つ飛び越え)→577/408(3つ飛び越え)→665857/470832(7つ飛び越え)→(15飛び越え)→・・・

  1,3/2,17/12,577/408,665857/470832,・・・

はヘロン数列と呼ばれます.

 また,a=p/qから始めることにすると

  1/2(a+2/a)=(p^2+2q^2)/2pq

  p/q→(p^2+2q^2)/2pq

  p/q→(p+2q)/(p+q)

は1次分数列でしたが,

  p/q→(p^2+2q^2)/2pq

は2次分数列になっています.

 さらに,高次分数列

  p/q→(p^3+6pq^2)/(3p^2q+2q^2)

  p/q→(p^4+12p^2q^2+4q^4)/4pq(p^2+2q^2)

  p/q→(p^5+20p^3q^2+20pq^4)/(5p^4q+20p^2q^3+4q^5)

  p/q→(p^6++30p^4q^2+60p^2q^4+8q^6)/(6p^5q+40p^3q^3+24pq^5)

は驚異的なスピードで√2に近づきます.

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