Root One

数学中心のブログです。

正則でない連分数展開

最近ふと疑問に思ったのですが、なぜ正則な連分数展開では

連分数展開したい数 = 整数部分+小数部分

と分割するのかということです。

例えば、\sqrt{2}を連分数に展開するとき

 \displaystyle \sqrt{2} = 1 + (\sqrt{2}-1)

というように分けますが、別に

 \displaystyle \sqrt{2} = 1.4 + (\sqrt{2}-1.4)

でも良いのではないかと、むしろこちらのほうが収束がよさそうなので、計算面では優れているのではないかと思いました。

もちろんこんなことは連分数の専門家からすれば常識なのでしょうが、少し気になったので、どんな展開式が得られるかを試してみました。

\begin{align*} \sqrt{2} &= 1.4+(\sqrt{2}-1.4) \\  &= 1.4+\cfrac{2-1.4^2}{\sqrt{2}+1.4} \\ &= 1.4+\cfrac{0.04}{\sqrt{2}+1.4} \\ &= 1.4+\cfrac{0.04}{2.8 + (\sqrt{2}-1.4)} \\ &= 1.4+\cfrac{0.04}{2.8 + \cfrac{0.04}{\sqrt{2}+1.4} } \\ &= 1.4+\cfrac{0.04}{2.8 + \cfrac{0.04}{2.8 + (\sqrt{2}-1.4) } } \end{align*}

以下無限に続けると次が得られます。

 \displaystyle \sqrt{2} = 1.4+\cfrac{0.04}{2.8+\cfrac{0.04}{2.8+\cfrac{0.04}{2.8+\cfrac{0.04}{2.8+\cfrac{0.04}{ 2.8+\lower1ex\hbox{$\ddots$} }}}}}

これは正則でない連分数になりますが、収束はずっと改善されます。実際、最初の方で打ち切っても

 \displaystyle 1.4+\cfrac{0.04}{2.8} =1.4 + \frac{1}{70} = 1.41428\cdots

となり相当良い近似を与えます。

もう少し正則連分数の形に近づくように変形を行うと次のようになります。

 \displaystyle \sqrt{2} = 1.4+\cfrac{1}{70+\cfrac{1}{2.8+\cfrac{1}{70+\cfrac{1}{2.8+\cfrac{1}{70+\lower1ex\hbox{$\ddots$} }}}}}

考察

ポイントは、a \sqrt{2}に近い数としたとき、

 \displaystyle \sqrt{2} = a + (\sqrt{2}-a)

と変形することです。a\sqrt{2}に近い程、良い収束の連分数展開が得られると期待できるわけです。ただし、上で調べたようにこの方法では一般に正則連分数は得られません。

aとしていろいろな数を代入できます。たとえば収束は悪くなりますが、a=1.5とするともう少し係数がきれいになります。また、一般的に変数のまま連分数展開もできます。

結局、このaの選択は「美しさをとるか収束の良さをとるか」という問題になるのかもしれません。

追記

収束の話はさておき、次のような感じで、各段階で a の選択も結構自由にできますね。

\begin{align*} \sqrt{2} &= a_0 +(\sqrt{2}-a_0) \\ &= a_0+\cfrac{2-a_0^2}{\sqrt{2}+a_0} \\ &= a_0+\cfrac{2-a_0^2}{a_0 + a_1 + (\sqrt{2}-a_1)} \\ &= a_0+\cfrac{2-a_0^2}{a_0 + a_1 + \cfrac{2-a_1^2}{\sqrt{2}+a_1}} \\ &= a_0+\cfrac{2-a_0^2}{a_0 + a_1 + \cfrac{2-a_1^2}{a_1 + a_2 + (\sqrt{2}-a_2)}} \end{align*}