数学を生み出す魔法のるつぼ:実験数学への招待


オライリージャパンから出版された数学を生み出す魔法のるつぼ:実験数学への招待が出ました。訳者の伊知地さんからご献本いただいたのです。ありがとうございました。

まだ、数章しか読んでいないので無責任な紹介になりますので、ちゃんと読んだあかつきに改めて紹介したいと思います。この本のタイトルの実験数学というのはコンピュータを道具に数学的な実験をして、数学への理解を深めるということです。

プロの数学者の生態はぼくが想像するもの((道をボーッと歩きながらブツブツと呟き、いきなりしゃがみこんだと思ったら、木の枝で何時間も地面に数式を描くような。。。))とはかなりギャップがあるようです。コンピュータにいろんな式を入力する「実験」の結果を観察し、そこから発想を得るというのです。

ところが、著者の Borwein さんと Devlin さんによれば、現代の数学者にとってコンピュータを道具として使いこなすことはあたり前のことのようです。なんと

> 古代のギリシャ人がコンピュータを使えたならば、「実験数学」という表現の「実験」という単語は不必要になり、ある種の「実験」的に数学を行う活動や過程は、単に「数学」と見なされたことでしょう。

ですって!ちょっと大袈裟かもしれないけれども、目から鱗でした。だって、周囲の数学者たちは、常日頃、「コンピュータ苦手だから、設定して!」って頼んでくるんですから。ずっと騙されてたんだな。

ところで、どんな実験をするのかは、内容を読まないと具体的なところは掴めないのですが、1章「実験数学とは何?」では以下のような例が挙げられています。

+ MathematicaあるいはMapleのような数式処理システムを使った記号計算。
+ データ視覚化手法。
+ PSLQアルゴリズムのような整数関係手法 (integer-relation methods)。
+ 高精度整数と浮動小数点算術。
+ 積分と無限級数の和の高精度数値計算。
+ 積分と無限級数の和の高精度数値計算。
+ 総和が等しくなることを示すためにウィルフ・ザイバーガーアルゴリズムを利用。
+ 連続関数の反復近似。
+ グラフ特性に基づく関数の同一化。

そういえば、[[先月の PTT:http://ken-wakita.net/ja/2010/02/ptt-362-waseda/%5D%5Dで石井さんが報告して下さった「非線形算術制約のための区間解析にもとづく求解手法」は、求められた精度で浮動小数点数演算をすることを目的としていました。あれも実験数学を支える技術の一つといえるのでしょうね。

頭が悪いのであまり理解していないのですが、2章の「πの10進数表現で1000兆桁目の数字は何?」はとても興味深い内容です。πはもちろん円周率のこと。円周率の計算はスーパーコンピュータにもしばしば使われていて、この本の原書が出た時点で小数点以下1.25兆桁まで求まっていたようです。ですから、1000兆桁目についてはまだ誰も知らないと言えそうです。

「でも、それって本当なの?」という疑問から、この章の内容が始まります。ひょっとしたら1000兆の桁をすべて計算するよりは、途中の桁は飛して1000兆桁目の数だけをビシッと言いあてる方がはるかに簡単かもしれないという直感に支えられた議論になります。詳しいことは理解していないのですが、対数関数の(log 2)についてはとてもうまく計算ができることが分っているようです。その応用で、円周率の1000兆桁目の数についても知りたいですね。

ちなみに、ここでの議論で上で紹介したPSLQアルゴリズムが登場します。また、計算が苦手な人は、Mathematicaを使いたくなることでしょう。そこまで手をつけてしまったあなたはすでに実験数学者かも?

オライリーのコンピュータ関係の本の表紙には動物の絵が描かれています。Objective Caml ならば、当然に[[ラクダだろうと思いきや、馬:http://www.amazon.fr/Développement-dapplications-avec-Objective-CAML/dp/2841771210%5D%5Dだったり、やや微妙な絵もありますよね。本書の絵は%5B%5B%%鍋%%るつぼ:http://www.oreilly.co.jp/books/images/picture_large978-4-87311-436-1.jpeg%5D%5Dです。

原書の書名は ”The Computer as Crucible” だったようです。両者を合せ読むと「るつぼとはコンピュータのことである」ことがわかりますね。分らない方は、是非、[[買いましょう:http://www.amazon.co.jp/dp/4873114365%5D%5D。