はじめに

1999/3/29作成

「フェルマーの最終定理」をというのをご存知でしょうか。「整数」というこのページのタイトルに興味を持たれた方なら大抵はご存知でじゃないかと思います。その内容は以下の通りです。

n≧3において、xn+yn=zn を満たす整数x,y,zは存在しない

私がこの問題をはじめて知ったのは高校生の時でしたから1985年頃だったと思います。フェルマーの最終定理の証明がまたしても失敗したという内容の新聞記事でした。一応理系だった私はこの記事を興味深く読んだものでした。とはいえ、この時は私にとって単に興味を引いただけで、特にどうという事はありませんでした。

次に私がこの問題と接したのは、1995年に定理が証明されたというニュースを聞いたときです。その証明とはいったいどんなものだろうと思っていたころ、たまたま書店で「フェルマーの最終定理」に関する書籍の小さなコーナーを見つけました。どれも数学の専門書というわけではなく、一般の人向けに書かれた数学ドキュメントという感じでした。この様な書籍が出版されるほどフェルマーの最終定理が一般に知られているという事を改めて驚きつつ、その中から比較的読みやすそうな1冊を買って帰りました。

その時買ってきたのは、富永裕久という方の書いた「フェルマーの最終定理に挑戦(ISBN:978-4816319334)」という本です。読んでみると、思った通りフェルマーの最終定理の証明は難解で、その証明どころかそこに至るまでの数論の数々の定理や概念ですら、私には理解不能でした。と、そこまでなら「やっぱり現代数学は一般人には理解できない難解なものだったね」で終わるはずだったのですが、この本には少し興味を引く章がありました。それは、おなじみの素数などに関する初期の整数論の記述です。

初期の整数論は紀元前のギリシアやエジプトで起こったもので、その内容は流石の私にも比較的容易に理解できるものでした。また、そこで扱われている巨大な素数を求めるなどの問題は、人間が手で計算するよりコンピュータで行う様な問題です。

「少しプログラムを書けば、私にもこれらの問題について調べてみる事ができるではないか」。それがこのページを作ろうと思ったきっかけです。

(2012/2/8追記)

久しぶりにこのページに手を入れています。全部のプログラムを実行しなおしているのですが、コンピュータの進化は物凄いですね。初めてこのページを作ったのは1997年のことでしたが、そのときに計算に使用したのはEPSON PC-486GR(CPU i80486SX 30MHz)でした。それが現在使用しているPCのCPUはAthlon 64 X2 5600+(2.9GHz)です。CPUクロックだけでも100倍近い高速化です。もちろん実際の処理速度は100倍以上速いのですけれど。ということで、初期には1ヶ月くらい掛かった計算が今数分で終わったりするのを感慨深く思っています。


あおやぎのさいと2.0初歩の整数論プログラミング