コラム 人と星とともにある数学 数学

Pythonでアルキメデスのπ|Pythonで数学を学ぼう! 第17回

はじめに|レポート

私が毎月開催している桜井進の算数・数学教室(Zoomオンラインセミナー)ですが、1/16(日)桜井進のPython・UNIX・Math教室のテーマは「Pythonでπ、アルキメデスのアルゴリズム」でした。

4000年前のπは3.1

紀元前二千年、古代バビロニアでは円周率πは3.125、古代エジプトの『リンドのパピルス』には、円の面積について「直径からその1/9を減じた長さの2乗」と書かれてあります。

円の半径をrとすれば、(2r-2r×1/9)2=256/81×r2ということです。円の面積はπr2ですから円周率πは256/81=3.16049…となります。

つまり、どちらもπの真値(3.14159265…)に対して正しい桁数は2桁(3.1)です。

1/16(日)の教室では円周と直径の実測による比の算出を行ってみました。はたして参加者の誰も3.1をはじき出すことができませんでした。

πが約3であることは目分量でも分かります(直径と円周を目視で比べるだけ)が、次の3.1からとたんに難しくなるということです。

難しい「πが3.14」

紀元前三百年、古代ギリシャのアルキメデスはついにこの壁を乗り越えます。円を多角形で近似することで、多角形の周長をπの近似値とするアイディアです。

アルキメデスは正6角形からはじめて、正12角形、正24角形と角数を2倍していき、内接正96角形および外接正96角形の周長からπが3.14…である結論を得ました。

古代バビロニア・古代エジプトの3.1からアルキメデスが3.14を得るまでに1700年かかったことになります。

わが国では算数でπが3.14であることを習います。しかし、中学・高校でπについての情報はほとんど更新されません。

大学入試の数学で「πが3.14…であることを証明せよ」という問題は出題されたことがありません。

2003年の東京大学の入試問題では「πが3.05より大きいことを証明せよ」という中途半端な問題が出題されていることからも「πが3.14」は難しいことがわかります。

ちなみにこの問題は正8角形の周長から解くことができます。

アルキメデスのアルゴリズム

アルキメデスは、正6角形の周長と正12角形の周長の間にある興味深い関係を発見しました。

それは、正12角形の周長と正24角形の周長、正24角形の周長と正48角形の周長、そして正48角形の周長と正96角形の周長の間にも成り立つものでした。

その関係を表すのに便利な数学が数列と漸化式です。次の図のように数列aとbを定義します。

数列のナンバリングはPythonのゼロスタートのルールに従って、ゼロスタートにします。

ステップ数をNとしてN=0、1、2、3、4と計算することでアルキメデスが行ったステップを再現できます。

プログラム「arch1.py」

>> # arch1.py
>> import numpy
>>
>> def arch(N):
>>    a = numpy.empty(N+1)
>>    b = numpy.empty(N+1)
>>    a[0] = 2*numpy.sqrt(3)
>>    b[0] = 3
>>    for n in range(0, N):
>>       a[n+1] = (2*a[n]*b[n])/(a[n]+b[n])
>>       b[n+1] = numpy.sqrt(a[n+1]*b[n])
>>     print('\nN=' + str(N) + ' 正' + str(6*2**N) + '角形')
>>     print(str(b[N]) + ' < π < ' + str(a[N]))
>>
>> for N in range(5):
>>    arch(N)

このプログラムファイルは次からダウンロードできます
https://drive.google.com/file/d/1yOGYplXi3ZClP1ob07hQuk8YqprdSjGh/view?usp=sharing

コーディングで注意すべき点は、数列aとbの定義の順序です。a、bの順に定義します。bn+1は先に計算したan+1を必要とするからです。

コードを見てわかるように2つの漸化式は数式そのままPythonコードに翻訳できます。

実行結果

次が実行結果です。N=4(正96角形)でπ=3.14…であることが確認できます。

もちろんNの値を大きくすれば、さらにπの正しい桁数も大きくなります。N=167とすれば、正しい100桁が得られることが分かります。

それにしても、2300年前のアルキメデスの数学が今なお燦然と電子計算機の中で輝くことに驚かされます。

四千年前の古代バビロニア・古代エジプトとアルキメデスとでは、いったい何が違うのか。

アルキメデスこそ、現代に続く数学の礎をつくった張本人です。実際に紙に描くことができない正96角形をアルキメデスは自分の頭の中に描くことを思いついたのです。

これこそが数学です。

π、微分法、積分方、自動計算機、天文学、力学、彼の偉業は語ることさえ容易ではありません。

フィールズメダルの中のアルキメデスは現代の私たちに言っているようです、「私の言ったとおりだろう」と。

  • この記事を書いた人
  • 最新記事

桜井進(さくらいすすむ)様

1968年山形県生まれ。 サイエンスナビゲーター®。株式会社sakurAi Science Factory 代表取締役CEO。 (略歴) 東京工業大学理学部数学科卒、同大学大学院院社会理工学研究科博士課程中退。 東京理科大学大学院非常勤講師。 理数教育研究所Rimse「算数・数学の自由研究」中央審査委員。 高校数学教科書「数学活用」(啓林館)著者。 公益財団法人 中央教育研究所 理事。 国土地理院研究評価委員会委員。 2000年にサイエンスナビゲーターを名乗り、数学の驚きと感動を伝える講演活動をスタート。東京工業大学世界文明センターフェローを経て現在に至る。 子どもから大人までを対象とした講演会は年間70回以上。 全国で反響を呼び、テレビ・新聞・雑誌など様々なメディアに出演。 著書に『感動する!数学』『わくわく数の世界の大冒険』『面白くて眠れなくなる数学』など50冊以上。 サイエンスナビゲーターは株式会社sakurAi Science Factoryの登録商標です。

あわせて読みたい

-コラム, 人と星とともにある数学, 数学
-,