§A4.11連分数

最終更新

ユークリッドの互除法では、整数を割ったときの商と余りが順に現れます。たとえば、4343と3030に互除法を適用すると、商として1,2,3,41,2,3,4が現れます。この商の列は最大公約数を求める計算に使われますが、もとの二つの整数の比を表す情報も持っています。

商の列を使って、整数と逆数を重ねた式で数を表す方法が連分数です。連分数は互除法を有理数の表示として捉え直すとともに、無理数を分数で近似するための基本的な道具にもなります。その近似の精度を調べることは、二次無理数と整数解を結び付けるペル方程式への準備になります。

本記事では、連分数による数の表示と、有理数近似の基本的な性質について解説します。

1 有限連分数と互除法

定義 1.1. 整数a0a_0と正整数a1,…,aka_1,\ldots,a_kから作る

[a0;a1,…,ak]=a0+1a1+1⋯+1ak[a_0;a_1,\ldots,a_k] =a_0+\cfrac1{a_1+\cfrac1{\cdots+\cfrac1{a_k}}}

を有限単純連分数 (finite simple continued fraction) という。k=0k=0のときは[a0]=a0[a_0]=a_0とする。

命題 1.2. すべての有理数は、a0a_0を整数、a1,…,aka_1,\ldots,a_kを正整数とする有限単純連分数で表される。k≥1k\ge1のときに末項をak≥2a_k\ge2とする条件のもとで、この表示はただ一つである。整数は一項の[a0][a_0]で表され、a0a_0に22以上という条件は課さない。逆に、すべての有限単純連分数の値は有理数である。

証明. 有理数をp/qp/qと書く。ただしp∈Zp\in\Z、q∈N≥1q\in\NNとする。除法の原理によりp=a0q+rp=a_0q+r、0≤r<q0\le r<qと書く。r=0r=0ならp/q=[a0]p/q=[a_0]である。r>0r>0なら

pq=a0+1q/r\frac pq=a_0+\frac1{q/r}

としてq/rq/rに同じ操作を行う。この操作で現れる分母は余りの列であり、正整数のまま狭義に減少するので、有限回で停止する。二番目以降に整数部分を取り出す数は11より大きいから、商は正整数である。最後に余りが00になる数も11より大きいので、整数である末項は22以上となる。

末項が22以上の表示では、後ろから順に計算すると、各[aj;…,ak][a_j;\ldots,a_k](1≤j≤k1\le j\le k)は11より大きい。したがって、k≥1k\ge1ならa0<[a0;a1,…,ak]<a0+1a_0<[a_0;a_1,\ldots,a_k]<a_0+1であり、a0a_0はもとの数以下の最大の整数に等しい。整数部分を引いて逆数を取ると次の末尾の式が定まり、同じ議論で各項が順に定まる。整数に達した時点では、複数項の表示は上の狭義不等式に反するから、一項で停止する。よって、項と表示の長さは一意である。

有限単純連分数は、正の末尾から有限回の有理数の四則計算で求められるので、その値は有理数である。▨

例 1.3.43/3043/30の整数部分を取り出して逆数を取ると、

4330=1+1330=1+130/13,3013=2+413=2+113/4,134=3+14\frac{43}{30}=1+\frac{13}{30}=1+\frac1{30/13},\qquad \frac{30}{13}=2+\frac4{13}=2+\frac1{13/4},\qquad \frac{13}{4}=3+\frac14

となる。したがって43/30=[1;2,3,4]43/30=[1;2,3,4]である。この計算に現れる項は、ユークリッドの互除法

43=1⋅30+13,30=2⋅13+4,13=3⋅4+1,4=4⋅143=1\cdot30+13,\qquad 30=2\cdot13+4,\qquad 13=3\cdot4+1,\qquad 4=4\cdot1

の商の列である。

例 1.4. 末項の条件を外すと

4330=[1;2,3,4]=[1;2,3,3,1]\frac{43}{30}=[1;2,3,4]=[1;2,3,3,1]

となる。一般に、k≥1k\ge1、ak≥2a_k\ge2のとき、ak=(ak−1)+1/1a_k=(a_k-1)+1/1から

[a0;a1,…,ak]=[a0;a1,…,ak−1,1][a_0;a_1,\ldots,a_k]=[a_0;a_1,\ldots,a_k-1,1]

が成り立つ。負の数では、−7/3=−3+2/3-7/3=-3+2/3から−7/3=[−3;1,2]-7/3=[-3;1,2]となる。整数の表示は、たとえば0=[0]0=[0]、−2=[−2]-2=[-2]である。

2 無理数の展開

定義 2.1. 無理数α\alphaに対し、α0=α\alpha_0=\alphaとおき、各j∈N≥0j\in\Nについてaja_jをαj\alpha_j以下の最大の整数とし、

αj+1=1αj−aj\alpha_{j+1}=\frac1{\alpha_j-a_j}

と定める。各αj\alpha_jを完全商 (complete quotient) といい、項の列をα=[a0;a1,a2,…]\alpha=[a_0;a_1,a_2,\ldots]と書く。

αj\alpha_jが無理数なら、αj−aj\alpha_j-a_jは00と11の間の無理数です。その逆数αj+1\alpha_{j+1}も無理数であり、11より大きいため、操作は途中で止まりません。j≥1j\ge1ではaj≥1a_j\ge1となります。

例 2.2.2\sqrt2では

2=1+12+1,2+1=2+12+1\sqrt2=1+\frac1{\sqrt2+1},\qquad \sqrt2+1=2+\frac1{\sqrt2+1}

となるので、2=[1;2,2,2,…]\sqrt2=[1;2,2,2,\ldots]である。黄金比x=(1+5)/2x=(1+\sqrt5)/2は1<x<21<x<2とx=1+1/xx=1+1/xを満たすので、x=[1;1,1,1,…]x=[1;1,1,1,\ldots]である。

注意 2.3. 無理数の単純連分数が最終的に周期的になることと、その無理数が実二次無理数であることは同値である。実二次無理数とは、有理数係数の二次方程式の無理な実数解、すなわちQ\Q上の次数が22の実数をいう。単なるD\sqrt Dに限らず、有理数r,sr,sと平方数でない正整数DDを用いたr+sDr+s\sqrt D(s≠0s\ne0)も含む。ここでは周期性の一般定理は証明しない。

注意 2.4. 無限連分数の値を近似分数の列の極限として扱うには、その列の収束を示す必要がある。数列の極限と収束の理論は §D1 ε-論法と基礎解析 で扱う。以下の誤差の等式は、与えられた無理数に対する有限回の代入から導く。

3 近似分数の計算と誤差

定義 3.1.a0a_0を整数とし、a1,a2,…a_1,a_2,\ldotsを正整数とする。単純連分数を第kk項で打ち切った有限連分数[a0;a1,…,ak][a_0;a_1,\ldots,a_k]を、第kk近似分数 (convergent) という。収束分数ともいう。近似分数では、打ち切った位置を保つため、末項が11の表示もそのまま用いる。

命題 3.2.a0∈Za_0\in\Z、aj∈N≥1a_j\in\NN(j≥1j\ge1)とする。整数列pk,qkp_k,q_kを

p−2=0,p−1=1,q−2=1,q−1=0,p_{-2}=0,\quad p_{-1}=1,\quad q_{-2}=1,\quad q_{-1}=0,pk=akpk−1+pk−2,qk=akqk−1+qk−2(k≥0)p_k=a_kp_{k-1}+p_{k-2},\qquad q_k=a_kq_{k-1}+q_{k-2}\qquad(k\ge0)

によって定める。すべてのk≥0k\ge0についてqk>0q_k>0であり、

[a0;a1,…,ak]=pkqk,pkqk−1−pk−1qk=(−1)k+1[a_0;a_1,\ldots,a_k]=\frac{p_k}{q_k},\qquad p_kq_{k-1}-p_{k-1}q_k=(-1)^{k+1}

が成り立つ。pk/qkp_k/q_kは既約分数である。任意の実数t>0t>0に対し、末尾をak+1/ta_k+1/tとした式Fk(t)F_k(t)は

Fk(t)=[a0;a1,…,ak+1/t]=pkt+pk−1qkt+qk−1F_k(t)=[a_0;a_1,\ldots,a_k+1/t] =\frac{p_kt+p_{k-1}}{q_kt+q_{k-1}}

を満たす。k=0k=0のとき、左辺はa0+1/ta_0+1/tを表す。

さらに、無理数α\alphaの完全商αj\alpha_jと項aja_jから同じ漸化式でpk,qkp_k,q_kを定めると、すべてのk≥0k\ge0について

α=pkαk+1+pk−1qkαk+1+qk−1,α−pkqk=(−1)kqk(qkαk+1+qk−1),\alpha=\frac{p_k\alpha_{k+1}+p_{k-1}}{q_k\alpha_{k+1}+q_{k-1}},\qquad \alpha-\frac{p_k}{q_k} =\frac{(-1)^k}{q_k(q_k\alpha_{k+1}+q_{k-1})},∣α−pkqk∣=1qk(qkαk+1+qk−1)<1qkqk+1\left|\alpha-\frac{p_k}{q_k}\right| =\frac1{q_k(q_k\alpha_{k+1}+q_{k-1})} <\frac1{q_kq_{k+1}}

が成り立つ。

証明.q0=1q_0=1、q1=a1≥1q_1=a_1\ge1と漸化式から、すべてのk≥0k\ge0についてqk>0q_k>0である。F0(t)=a0+1/t=(p0t+p−1)/(q0t+q−1)F_0(t)=a_0+1/t=(p_0t+p_{-1})/(q_0t+q_{-1})である。k≥1k\ge1では、帰納法の仮定と漸化式から

Fk(t)=Fk−1(ak+1/t)=(akpk−1+pk−2)t+pk−1(akqk−1+qk−2)t+qk−1=pkt+pk−1qkt+qk−1F_k(t)=F_{k-1}(a_k+1/t) =\frac{(a_kp_{k-1}+p_{k-2})t+p_{k-1}} {(a_kq_{k-1}+q_{k-2})t+q_{k-1}} =\frac{p_kt+p_{k-1}}{q_kt+q_{k-1}}

を得る。k≥1k\ge1の近似分数はFk−1(ak)=pk/qkF_{k-1}(a_k)=p_k/q_kであり、k=0k=0では[a0]=p0/q0[a_0]=p_0/q_0である。

p0q−1−p−1q0=−1p_0q_{-1}-p_{-1}q_0=-1であり、k≥1k\ge1では

pkqk−1−pk−1qk=−(pk−1qk−2−pk−2qk−1)p_kq_{k-1}-p_{k-1}q_k =-(p_{k-1}q_{k-2}-p_{k-2}q_{k-1})

なので、行列式の等式が帰納的に従う。pk,qkp_k,q_kの共通の正の約数はこの差も割るので、pk,qkp_k,q_kは互いに素である。

αj=aj+1/αj+1\alpha_j=a_j+1/\alpha_{j+1}を有限回代入すると、α=Fk(αk+1)\alpha=F_k(\alpha_{k+1})である。この表示と行列式の等式から

α−pkqk=pk−1qk−pkqk−1qk(qkαk+1+qk−1)=(−1)kqk(qkαk+1+qk−1)\alpha-\frac{p_k}{q_k} =\frac{p_{k-1}q_k-p_kq_{k-1}}{q_k(q_k\alpha_{k+1}+q_{k-1})} =\frac{(-1)^k}{q_k(q_k\alpha_{k+1}+q_{k-1})}

を得る。αk+1>ak+1\alpha_{k+1}>a_{k+1}なので、

qkαk+1+qk−1>ak+1qk+qk−1=qk+1.q_k\alpha_{k+1}+q_{k-1}>a_{k+1}q_k+q_{k-1}=q_{k+1}.

両辺が正であることから、誤差の不等式が従う。▨

例 3.3.43/30=[1;2,3,4]43/30=[1;2,3,4]の近似分数は、漸化式から

11,32,107,4330\frac11,\qquad\frac32,\qquad\frac{10}{7},\qquad\frac{43}{30}

となる。最後の近似分数は元の有理数と一致する。

例 3.4.2=[1;2,2,…]\sqrt2=[1;2,2,\ldots]の近似分数は、漸化式から

1,32,75,1712,4129,9970,2391691,\quad\frac32,\quad\frac75,\quad\frac{17}{12},\quad \frac{41}{29},\quad\frac{99}{70},\quad\frac{239}{169}

となる。命題 3.2の誤差評価により

∣2−9970∣<170⋅169=111830<110000\left|\sqrt2-\frac{99}{70}\right| <\frac1{70\cdot169}=\frac1{11830}<\frac1{10000}

である。

問題 3.5. 整数ppと正整数qqが1<p/q<21<p/q<2を満たすとする。

∣2−pq∣>14q2\left|\sqrt2-\frac pq\right|>\frac1{4q^2}

を示せ。さらに、q≥4q\ge4である同じ範囲の分数について、∣2−p/q∣≤1/q3|\sqrt2-p/q|\le1/q^3は成り立たないことを示せ。

解答.

2\sqrt2は無理数なので、整数p2−2q2p^2-2q^2は00ではなく、∣p2−2q2∣≥1|p^2-2q^2|\ge1である。1<p/q<21<p/q<2と1<2<21<\sqrt2<2から

∣2−pq∣=∣p2−2q2∣q2(p/q+2)≥1q2(p/q+2)>14q2\left|\sqrt2-\frac pq\right| =\frac{|p^2-2q^2|}{q^2(p/q+\sqrt2)} \ge\frac1{q^2(p/q+\sqrt2)}>\frac1{4q^2}

となる。q≥4q\ge4なら1/q3≤1/(4q2)1/q^3\le1/(4q^2)なので、∣2−p/q∣≤1/q3|\sqrt2-p/q|\le1/q^3は成り立たない。▨

例 3.6. 円周率の展開はπ=[3;7,15,1,292,…]\pi=[3;7,15,1,292,\ldots]であり、

[3;7]=227=3.1428…,[3;7,15,1]=355113=3.1415929…[3;7]=\frac{22}{7}=3.1428\ldots,\qquad [3;7,15,1]=\frac{355}{113}=3.1415929\ldots

となる。355/113355/113の表示は末項が11であるが、第33近似分数として打切り位置を保っている。22/722/7はアルキメデスの円周率の評価に現れ、355/113355/113は五世紀の中国の数学者祖沖之による近似として知られる。355/113355/113は三桁の分母で円周率と小数第六位まで一致する。

注意 3.7. 無理数α\alphaの第kk近似分数をpk/qkp_k/q_kとする。近似分数には第二種の最良近似性がある。0<q<qk+10<q<q_{k+1}を満たす整数p,qp,qについて、p/q≠pk/qkp/q\ne p_k/q_kなら

∣qkα−pk∣≤∣qα−p∣|q_k\alpha-p_k|\le|q\alpha-p|

が成り立つ。ここでは、この定理を証明しない。

閑話休題:連分数と暦 季節の周期である回帰年は約365.2422365.2422日である。米国海軍天文台の解説では、グレゴリオ暦の平均年を365.2425365.2425日としている。365365日の暦と回帰年との一年あたりのずれ0.24220.2422日を閏日で補うには、閏日を置く回数と年数との比を0.24220.2422に近づければよい。0.2422=[0;4,7,1,3,…]0.2422=[0;4,7,1,3,\ldots]の近似分数は

14,729,833,31128,…\frac14,\qquad\frac7{29},\qquad\frac8{33},\qquad\frac{31}{128},\qquad\ldots

となる。1/41/4は四年に一回、8/338/33は三十三年に八回の閏日を置く割合である。グレゴリオ暦では四百年に九十七回の閏日を置き、その割合は97/40097/400である。97/40097/400は上の連分数の近似分数ではない。数値0.24220.2422に対する誤差を比較すると、

∣833−0.2422∣=37165000<310000=∣97400−0.2422∣\left|\frac8{33}-0.2422\right|=\frac{37}{165000} <\frac3{10000}=\left|\frac{97}{400}-0.2422\right|

となる。

歴史上、四年に一回の閏日を置く方式はユリウス暦に採用された。十一世紀のペルシャの数学者・詩人ウマル・ハイヤームが関わった暦には、三十三年に八回の閏日を置く方式が帰属されている。また、十七世紀のホイヘンスは、太陽系の模型を歯車で作る際に、惑星の公転周期の比を歯数の比で近似するために連分数を用いたとされる。歯数を整数で選ぶ問題でも、分母を抑えた有理数近似が必要になる。

例題

条件と何を求めるかを確認してから、式と答えの対応を見比べてください。

単純連分数の規約 a₀∈ℤ、aᵢ∈ℤ₊(i≥1、有限表示の末項は2以上)に従い、次の分数を[a0;a1,a2,…][a_0; a_1, a_2, \ldots] の形に展開せよ。

解法の型整数部分を引いて逆数を取る(=互除法の商を並べる)

  1. (1)119\dfrac{11}{9}
  2. (2)7255\dfrac{72}{55}
  3. (3)75\dfrac{7}{5}
  4. (4)5524\dfrac{55}{24}
  5. (5)114\dfrac{11}{4}

a0∈Za_{0}\in\mathbb{Z}、aᵢ∈Z\in\mathbb{Z}₊(i≥1i\ge1)の単純連分数の値を、既約分数で答えよ。

解法の型一番内側の分母から外へ向かって通分する

  1. (1)1+13+121 + \cfrac{1}{3 + \cfrac{1}{2}}
  2. (2)2+13+14+132 + \cfrac{1}{3 + \cfrac{1}{4 + \cfrac{1}{3}}}
  3. (3)3+14+143 + \cfrac{1}{4 + \cfrac{1}{4}}
  4. (4)3+12+133 + \cfrac{1}{2 + \cfrac{1}{3}}
  5. (5)3+12+13+133 + \cfrac{1}{2 + \cfrac{1}{3 + \cfrac{1}{3}}}

演習

問題を解いてから「解答・解説」を開けます。

演習を読み込み中…

演習を読み込み中…

前提記事