« 日本映画感想「それでも僕はやっていない。」 | トップページ | 連分数と近似分数(2) »

2015年2月14日 (土)

連分数と近似分数(1)

 Happy。。。バレンタイン。。


 久しぶりに科学記事をアップします。なんとか復活です。!!


 今回のテーマは2013年の入院中に学んだときのノートがタネです。

 2013年の8月に右足人指指切断手術のため順天の形成外科にその年

2回目の入院したときは,最初に持参した理系関係の本は「数論入門講義」(J.S.Chahal著:織田進訳;裳華房),および,ブルーバックスの「数論入門」

(芹沢昭三著;講談社)の2冊だけでした。


私,近年,自宅ではほとんど数論はやらないのですが,長期入院中はいつも

ヒマで退屈なことがわかってたので,できるだけ過去に興味があって購入は

したけれど自宅ではほとんど読まなくなった系列の本を持参するようにして

います。


 そして,このときは,理系の「フェルマーの大定理」のワイルズ(Wiles)など

正統派の証明手順の中で重要な役割を果たす楕円曲線の有理点に

ついて基礎的知見が詳述された前者の専門書,および,関連した軽い読み

物としてブル-バックスの数論の書を持参しました。

 この後者のブルーバックスは入院中にひと通り精読したのですが,そのうちの原始根関連については以前,2013年10月退院直後に記事にしました。

(↑※2013年11・10の記事「原始根と指数(1)」に始まる「原始根と指数」(1~(4)のシリーズ記事参照)

 一方,第4章の連分数については他の書物にない珍しいものなので,,いつ

かはブログに書こうと思っていましたが,テキスト上では表記が結構ややこ

しいため,これはずっとPendingにしてましたが,今回敢えてテーマに選んだ

のでした。 


 ところで,最近,今更ながらご指摘を受けたこともありましたが,本文末に

参考文献と書きながら,ほぼ本のその部分の丸写し同然の記事もある

でしょう。

 今回もほぼ丸写しかも知れません。


 そもそも,高校までは理数系科目はそこまでしなくても勉強できましたが,

45年くらい前の大学時代から今も,ですが,さらっとは読めない類の本や

論文は,和書でも洋書でも基本的にそれを読んで解釈しながら

(洋書なら日本語訳して)そのままノートに付けるというのが私の読書

法,勉強法でした。


(※まあ頭が悪くスグ理解できる方じゃないので,これ,マナブというよりマネブ

という感じですかネ。。言い訳ですが,自分lで発見したモノでないなら所詮学問はマネですが。。。)


そのうち,後から読み返したときにノートよりも字の小さく目が悪くなりつつあった自分には読み辛いタネ本を持ち出して参照しなくてもノートだけで事が足りるように書くようになったので,最低でも元本のその項目全部,それに理解できないとき自分なりに行間を埋めるというプラスαで,ノートの方が幾分内容豊富なハズですが,中には単に丸写し同然の場合もあるかもしれません。


 でも元々,ブログは個人の日記ですし,私自身は自分の消えない回顧録の

ツモリで自己満足的なモノとして書いています。


 もっともブログは個人の覚え書き,日記とはいってもある意味全世界に

公開して,一応少しは読者もいます。また,少しばかり自己顕示欲も満た

されます。

 近頃の言論の自由や表現の自由と同じく自由だからといって誹謗中傷

のようなモノは書かず,一応自分の書いてしまったモノに責任は必要です。


 まさか全部の科学記事が私のオリジナルであるというような誤解は

されないにしても,結局,科学モノは元文献さえ挙げておけば盗作というより,

むしろ紹介や宣伝にでもなると軽い気持で開き直っています。


 あくまでも自分の自己満足主体でブログを書いてます。 


 さて,連分数についてはその存在自体はもっと前から知ってましたが,

 これに最初,特に注目したのは,1980年代始めの頃,勤務していた環境

 アセスメントの会社での大気汚染計算業務に関連して流体力学を勉強

 し,遅い層流でのStokes(ストークス)近似やOseen(オセーン)近似に

 ついて調べたときでした。


 当時は,1928年の古いGoldsteinの論文のコピーを日大数学科助手を

 していたM先輩に頼んで取り寄せてもらって読むと,その中でOseen

 近似の厳密解がレイノルズ数Rのベキ展開で与えられ,その導出過程

 で連分数が使用されていました。


 でも,記号式の定義さえ不明で,結局その部分はワケがわかりませんでした。


 しかし,,厳密解とはいっても,それはどうせニュートン流体を想定したとき

 に成立するナビエ・スト-クス方程式自体の解ではなく その近似方程

 式における解に過ぎないので">それ以上深くは追求せず,当時そのまま

 スルーしました。

(↑※2007年7/30の記事「遅い粘性流(4)(Oseen近似)」を参照)


 さて,,芹沢さんの書物の第4章連分数に従って手順を追ってみます。
;">

この章の始まりの紹介文を見たときには,これは円周率πなど超越数

の最良近似分数を求める話かな?と思っていたのですがそれについて

は入門程度で,主に平方根や整数係数の2次方程式の解である無理数

を連分数で近似する分数近似の話が主体でした。

それはそれで私には連分数自体が目新しい話で,πなどの近似に

ついては,いつになるか?わかりませんが改めてやろうと思います。


 §1.無理数の近似値
 無理数を定義する1つの流れとしては切断(cut)と呼ばれる有理数の集合

を実数と定義し,そのうち有理数でないものを無理数と定めるという謂わ

ゆるDedekind(デデキント)の切断があります。


 もう1つの流れはCantor(カントール)によって基本列と呼ばれた有理数列

を実数とみなす方法です。 


 私は,これらは似たようなものだと思いますが,同じ概念を表現したもの

なのでそれは当然といえば当然でしょう。


 しかし,,数学の基礎部分の公理の周辺の概念は細心の厳密さが要求

されるので,私のような数学的にはアバウトな物理屋の直感は当てに

はならないとは思っています。

例えば,無理数の1つである3の平方根√3の小数による近似は,高校

では「ひとなみにおごれや・・」と記憶したものです。


 これは,√3=1.7320508..のことですが,Cantor風に書けば,√3は

ある数列:a={an}n=1,2,.. ,or  {a1,a2,a3,a4,..,an,..}で与えられると考えます。

ただし,,a1=1,a2=1.7, a3=1.73. a4=1.732,,..,であり; 結局,

√3={1,1.7,1.73.1.732,..}と定義されます。


1.7320508..という表現の代わりに,10進小数の列{1,1.7,1.73.1.732,..}

に書き換えたからといって,何の意味があるのか?と常人の感覚

では訝しく感じるのですが,

少なくとも無限に続く小数というのは数学的には曖昧な概念で

確定的に定義されたものではないので,この数列がこれを定義した

ものと見なすという意味はあります。


 小数列1,1.7,1.73.1.732,..,は,分数では1,17/10,173/100.1732/1000です。

元々有理数は分数で定義され,小数というのは単に分母が1,10,100,1000,

.という10のべき乗である分数に過ぎません。

実際には,√3=1.7320508.は1,17/10,173/100.1732/1000..という列より,

もっと収束の早い分母が10のべき乗ではない分数列があります。

以下では,,結局,こうした近似分数列につながる連分数について述べる

予定です。 

例えば,連分数を用いて作った近似分数の列では,√3は17/10の次の

項は分母が100の173/100ではなく,71/41=1.7317で与えられる>こと

がわかります。 

では連分数とはどのようなものでしょうか?

これは,このブログのようなテキストのテンプレート上では表現が難しい

のですが。。。


 例えば, 2+1/(5+1/(8+1/..)  のような感じです。

 

 ところで,実数には代数的数と超越数の2種類があり,代数的数 

は有理数係数の代数方程式の根であるような実数であり超越数は 

それ以外の実数です。

 

 当然のことですが,代数的数には有理数と無理数がありますが, 

超越数は全て無理数です。

 

 √3は2次の代数方程式x2-3=0の根ですから,1つの代数的数

です。

 

 一方,円周率πやeは超越数です。

 

 これについては本ブログでは2007年5/27の過去記事 

代数的数と超越数」,および,2007年7/23の「eとπの超越性 

 があるので,これも参照してください。

 

 §4.有理数の連分数展開  

 本節では,まず,無理数をとりあえず小数点下6桁目を四捨五入 

した有理数で近似表現します。

 

 そして,その近似有理数を連分数で表現することをで近似すること

を試みます。

 

 すなわち,まず,√3 ~ 1.73205,3√2 ~ 1.25992,e ~ 2.71828, 

 π ~ 3.14159 etc.です。 

 a=1.73205とおくと,a=1+0.73205ですが,これは分数表記 

では­=173205/100000=1+73205/100000です。

 

 そして,100000/73205=1+26795/73205ですから, 

a=1+1/(1+26795/73205)を得ます。

 

さらに,73205/26795=2+19615/26795ですから, 

a=1+1/(1+26795/73205)1+1/{1+1/(2+19615/26795)} 

です。

 

 さらに, 26795/19615=1+7180/19615より, 

a=1+1/{1+1/(2+1/(1+7180/19615))} です。

 

 これをずっと繰り返すのですが,有理数なら有限回で終わります。

 

 系統的に行なうため, 173205と100000の対にユークリッド(Euclid) 

の互除法を適用します。

 

 173205=10000×1+73205,100000=73205×1+26795, 

73205=266795×2+19615,26795=19615×1+7180, 

19615=7480×2+5255,7180=5255×1+1925,  

5255=1925×2+1405,1925=1405×1+1+520, 

1405=520×2+365,520=365×1+155,365=155×2+55, 

155=55×2+45,55=45×1+10,45=10×4+5,10=5×2 

です。

 

 こうして,173205と100000の最大公約数は5であるということが 

わかるのですが,このことから,結局, 

 a=173205/100000=1+26795/100000 

=1+1/(2+19615/26795)1+1/{2+1/(1+7180/19615) 

=1+1/[2+1/{1+1/(2+5255/7180)}]  

..=1+1/(1+/(2+1/(1+1/(2+...+1/(4+1/2) 

 

なる連分数表示が得られます。

 

 この表現はスペースをとり過ぎるので,整数のみを並べて,  

a=1.73205=[1,1,2,1,2,1,2,1,2,1,2,2,1,4,2]と書くこと 

にします。

 

 例えば,371/114を連分数展開すると,

 互除法が371=114×3,114=29×3+27,29=27×1+2, 

 27=2×13+1,2=2×1なので,

 371/114=3+1/[3+1/{1+1/(13+1//2)}] となります。

 

 これを371/114=[3.3.1,13,2] と表現するわけです。

 

 最後に,「有理数の連分数展開は有限である。 

逆に有限連分数は有理数を表わす。」

 

 または,これの対偶として,  

「無限連分数は無理数を表わす。 

無理数の連分数展開は無限連分数となる。」

を本節の結論として記述しておきます。

 

§5.循環連分数

 前に有理数についてやったように,無理数√3を連分数展開 

します。

 

これには√3がx2=3の根であることを利用します。

 

まず,ω=√3-1と置きます。 

すると,(ω+1)2=3より,ω(ω+2)=2です。

 

故に,ω=2/(ω+2)=1/(1+ω/2)=1/{1+1/(2+ω)} 

=1/{1+(1/2)/(1+ω/2)}  

1/[1+1/{2+2/(2+ω)}] 

=1/[1+1/{2+1/(1+ω/2)}]  

1/[1+1/{2+1/(1+1/(2+ω))}=..  

です。

 

この展開は無限に続きます。

 

それ故, √3=ω+1=[1,1,2,1,2,1,2,1,2,..]と表わすことがで 

きますが,このように,何個かの項がまとまりとなって,無限に同じ 

列を繰り返す連分数を循環連分数といいます。

 

そして,こうした無限連分数展開の繰り返す講の塊りを循環節と呼び 

特にこれらに下線を引いて表わすことにします。

 

今の例では,√3=ω+1=[1,1,1,2,1,2,1,2,1,2,..]なので,  

これを,√3=[1,1,2]と書くわけです。

 

 もしも初項から直ちに循環するなら,この無理数の展開連分数を 

純循環連分数といいます。

 

ただし,連分数展開の初項は,単に整数を加えたり減じたりする 

だけで消すことができるのですから,これはさほど重要ではあり 

ません。

 

循環小数の場合,例えば1/7=0.142857,1/13=0.076923 

ですが,a=0.142857と置けば, 

これは10000000a-a=142857,つまり999999a=142857から 

逆にa=1/7を導くことが可能です。

 

一方,循環連分数ωをω=[1,1,2]と置くと,ω=[1,σ],σ=[1,2] 

と表わすことができて,このσはσ=[1,2,σ]と書けます。

 

そして,[1,2,σ]=1+1/(2+1/σ)=(σ+1)/(2σ+1)ですから, 

σ=(3σ+1)/(2σ+1)より,2σ2-2σ+1=0 です。

 

そして, σ>1ですから,σ=(1+√3)/2です。

 

したがって,ω=[1, σ]=1+1/σ=√3を得ます。

 

こうして,循環小数から簡単な計算で対応する有理数である分数 

を得たのと同様に循環連分数から無理数の√3を逆算できること 

がわかりました。

 

念のため,もう1つの具体例:ω=[2,3]の場合,つまり  

ω=2+1/[3+1/{2+1/(3+1/(2+..))}の場合のωを 

求めてみます。

 

ω=[2,3,ω]=2+1/(3+1/α)=(7ω+2)/(3ω+1)より, 

2-6ω-2=0 です。

 

ω>0ですからω=(3+√15)/3=2.29099..を得ます。

 

 循環連分数の別の例として,aを正整数として

ω=[]=[a,a,a,..] 

=a+1/[a+1/{a+1/(a+..)}]  

の場合:ω=[]=[a,ω]=a+1/ω,

 

故にω2-aω-1=0 より, ω={a+(a2+4)1/2}/2 です。

 

特に[1]=[1,1,1,..]=1+1/[1+1/{1+1/(1+..)}]は1では 

なくて[1]=(1+√5)/2です。(フィボナッチ数列)

 

ここで2次の無理数の定義です。 

[定義]:有理数係数の2次方程式の根となる無理数を2次の無理数 

という。

 

2次の無理数については,次の命題を示すことができます。

 

「2次の無理数の連分数展開は循環連分数となる。 

逆に循環連分数は2次の無理数である。」

です。

 

一方,超越数である自然対数の底:eの近似有理数は,  

e=1+1/1!+1/2!+1/3!+1/4+1/5!+..=2.71828.. 

から与えられます。

 

まず,eの近似有理数としてe1=2.71828と置いてこれの連分数 

展開をしてみます。

 

12.71828=271858/100000ですから,271828と100000 

について,Euclidの互除法を実行します。

 

271828=100000×2+71828,100000=71828×1+28172, 

71828=28112×2+15484,28172=15484×1+12688, 

15484=12688×1+2796,12688=2796×4+1504,  

2796=1504×1+1292,1504=1292×1+212, 

1212=212×6+20.212=20×10+12,  

20=12×1+8,12=8×1+4,8=4×2 

です。

 

したがって,e1=[2,1,2,1,1,1,4,1,1,6、10,1,1,2]です。

 

この展開は循環的ではないのですが,なんらかの規則が有りそう 

に見えます。

 

もしも分子が1の分数にこだわらないなら, 

e=2+2/(2+3/(3+4/(4+5/(5+..という  

美しい規則性があります。

 

πについては,Pending..

 

さて,無理数ωの無限連分数展開:ω=[k0,k1,k2,k3,..] 

の右辺の整数列のうち,添字がjのkjまでで止めて得られる 

分数=有理数をαjとして,これを無理数ωの第j近似分数と 

呼ぶことにします。

 

そしてjは既約分数の形ではαj=pj/qjと書けるとします。

 

つまり,pj とqjは互いに素な整数であるとします。

 

αj=pj /qj=[k0,k1,..,kj] です。

 

例えば,ω=√3=[1,1,2]=[1,1,2,1,2,1,2,..] なら,

α1[1,1]=1+1/1=2, 

α2=[1,1,2]=1+1/(1+1/2)=5/3=1.6666.., 

です。

 

α3[1,1,2,1]=1+1/{1+1/(2+1/1)=7/4=1.75,  

α4[1,1,2,1,2]=1+1/[1+1/{2+1/(1+1/2)}] 

=19/11=1.7272727..,

これを繰り返して,結果だけ書くと,α11=1351/780=1.7320513

が得られます。 

 ヒースの研究によれば古代ギリシャのArchimedes(アルキメデス)

 は証明無しで,α8=265/153<√3<1351/780なる不等式を得ていた

 ということです。

 また,日本の和算の学者竹部建部賢宏(1684-1739)は,その著書

「級数算経」の中で,連分数展開によって円周率πをその近似

 分数から,41桁まで求めているそうです。

 ところで,理科年表によれば,太陽が同じ位置に観測される

平均周期=1年は,正しくは365日と5時間48分46秒=約365.2422日

です。

そこで,有理数αをα=365.2422=3652422/10000

=[365,4,7,1,3,4,1,1,1,2]

と置きます。

 そして無理数ωの場合と同じく有理数

α=[365,4,7,1,3,4,1,1,1,2]においても右辺の整数列の添字を

順に 0.1,2,..として添字jの整数までで止めて得られる分数

をαjとします。

 すると,まず,α0=365ですが,このときのαとの誤差は0.2422日

です。

次に1=365+1/4=365.25で,これのαとの誤差は0.078日です。

そこで4年間に1度,1年が366日の閏年にすれば,1年当たりの

平均誤差が0.078日に抑さえられます。

さらに2=365+1/(4+1/7)=365+7/29 ~ 365..24137931..

なので,これだとαとの誤差は約0.0082日です。

そこで,4年間に1度の閏年ではなく29年間に7度の閏年とした

方が誤差が一桁小さくなります。

あるいは3=365+1/|4+1/(7+1/1)}

=365+8/33 ~ 365.242424..なら平均誤差は0. 00022日ですから

33年間に8度の閏年の方がもっとよしです。

 さらに4=365+31/128 ~ 365.2421875,128年間に31度の閏年

で誤差は0.00001日です。

α5=365+132/545 ~ 365.242201834では,さらにαとの誤差は

縮まります。

 現在のグレゴリオ暦では基本的に西暦の年数が4で割り切れれば

閏年てすが,100で割り切れる場合で400で割り切れないなら閏年から

除外されます。

 つまり,西暦2000年は閏年ですが1900年や未来の2100年は閏年で

はないのです。366日になるのは,400年に100-3=97回ですね。

 

 これなら,1年の平均日数は365+97/400=365+0.2425 です。

 長くなったしきりがいいいので,ここで一旦終わって続きは次の

 記事にします。

 久しぶりに数学記事というか,科学記事をやっとのことでアップ

 できましたが,どうも整理がむずかしく,復活の科学記事としては

 ややテーマの選択を誤ったようですね。

 2013年の入院中に書いたネタノートからブログ用に記事をまとめる

 のに2ヶ月もかかってしまいました。

 しかし,とにかくこうした記事もセッセと書かないと,ここは

 「TOSHIの宇宙」ではないと思うし,

 植物人間やひどい認知症のように,まるで家畜のように食っちゃ

 寝で生命を維持してるだけでもなく,PCやTVなどそれなりに受け身

 的な娯楽もあり,本来怠け者の極楽トンボには楽なのですが,

 結局,私の緒場合は生きていく気力も枯渇してしまうような気

 がするので,なんとかブログ書き程度のモチベーションは維持

 したいものです。(つづく)

|

« 日本映画感想「それでも僕はやっていない。」 | トップページ | 連分数と近似分数(2) »

303. 代数学・数論」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: 連分数と近似分数(1):

« 日本映画感想「それでも僕はやっていない。」 | トップページ | 連分数と近似分数(2) »