諸概念の迷宮(Things got frantic)

歴史とは何か。それは「専有(occupation)=自由(liberty)」と「消費(demand)=生産(Supply)」と「実証主義(positivism)=権威主義(Authoritarianism)」「敵友主義=適応主義(Snobbism)」を巡る虚々実々の駆け引きの積み重ねではなかったか。その部分だけ抽出して並べると、一体どんな歴史観が浮かび上がってくるのか。はてさて全体像はどうなるやら。

【自然対数eとの邂逅】【誰かがこれをやらねばならぬ。期待の人が俺たちならば】ネイピアの「0.9999999」誕生の秘密

f:id:ochimusha01:20190322003932j:plain

小数点「・」の発明者たるジョン・ネイピアJohn Napier, 1550年〜1617年)は、その著書「素晴らしき神の数表解説MIRIFICI Logarithmorum Canonis descriptio、1614年)」の表題においてlogos神の言葉)とarithmos)を合わせたlogarithmsなる造語を生み出しました。そして後世、この言葉が英語で「対数」を表す言葉に採用される展開を迎えた訳です。MIRIFICIとは奇蹟の事。まさしくプロテスタントであったネイピアらしいディスクール仏discours、英discourse=「言説」)といえましょう。

素晴らしき神の数表解説MIRIFICI Logarithmorum Canonis descriptio、1614年)」序文

数学的手法を実践している仲間の数学者にとって何よりうんざりするのは、長々しい掛け算や割り算、比の計算、平方根や立方根の開平など、……うっかりした間違いをたくさん起こしかねない退屈な作業に煩わされて、大幅に遅れることである。そこで私は発想を転換し、確実で手早い手法によってこれらの面倒を改善できるかもしれないと考えた。そしてあれこれ考えた末にようやく、その手順を短縮する驚きの方法を見つけた。……数学者に広く使ってもらうための手法を発表するというのは、愉快な仕事である。

かくして彼は「計算を大幅に省略出来る特別な数表」なる概念に辿り着いたのです。

イアン・スチュアート「世界を変えた17の方程式In Pursuit of the Unknown: 17 Equations That Changed the World)」より

その表を作るための計算は、とてつもない大事業となる。しかし1回だけやればいい。誰か自分を犠牲にする恩人が最初にその努力を割いてくれれば、その後の世代は大量の計算をしなくて済むようになるのだ。

まさしく数学史そのものに深く関わってくる英断です。

数は、家畜や土地などの資産の記録、および課税や貸し借りなどの金融取引といった、現実的な問題から生まれた。…知られているもっとも古い数の表記は、粘土の包みの外側に見つかっている。紀元前8000年頃、メソポタミアの会計係は、さまざまな形をした小さな粘土片を使って記録を付けていた。

考古学者のデニーズ・シュマント=ベスラーによれば、穀物には球形、油には卵形などと、形状の違いによってそれぞれ基本的な商品を区別していたという。それらの粘土片は、安全のために粘土の包みのなかに封入されたが、包みを割ってなかの粘土片を数えるのは面倒だったため、古代の会計係は、なかに何が入っているかを表す記号を外側に刻んだ。やがて彼らは、その記号を刻んでしまえば粘土片を捨ててもかまわないことに気づいた。

こうして、数を表す一連の記号が誕生し、その後のあらゆる数の記号や、おそらく文字の起源となった。数とともに、算術、つまり数を足したり引いたり掛けたり割ったりする方法も誕生した。そして、そろばんのような道具を使って計算をおこない、その結果を記号で記録するようになった。しばらくすると、道具の助けを借りずに記号を使って計算をおこなう方法が見つかったが、そろばんはいまでも世界の多くの地域で広く使われている。それ以外のほとんどの国では、電卓が紙とペンによる計算に取って代わっている。

この「事業」の発端となったのはフランソワ・ヴィエト(François Viète、1540年~1603年)が発見した三角法の公式だったとされています。 

算術は、とくに天文学や測量など他の分野にも欠かせないことが明らかとなった。物理科学の基本的な輪郭が浮かび上がってくると、駆け出しの科学者は、次々に複雑な計算を手でおこなわなければならなくなった。それにはかなりの時間を要することが多く、ときには何カ月や何年もかかることもあり、もっと創造的な活動の妨げになった。そこで、計算のプロセスをスピードアップすることが必要となった。そのために無数の機械的道具が発明されたが、もっとも重要なブレークスルーは概念的なものだった。まず考え、それから計算をする。巧妙な数学を使えば、難しい計算をはるかに簡単にできるのだ。

その新しい数学は急速に発展し、実用的な意義とともに理論的に深い意味合いも持っていることが明らかとなった。現在では、そうした初期の考え方は科学全般にわたって欠かせない道具となっており、心理学や人文学にもおよんでいる。それが広く使われていたのは、コンピュータによって実用目的では時代遅れになった1980年代までだったが、数学や科学における重要性はいまだに大きくなりつづけている。

ネイピアが数の累乗について考えはじめた16世紀後半には、すでに数学者のあいだで、掛け算を足し算へ簡単化するという考え方が広まっていた。デンマークでは「加減法(Subtraction method)」と呼ばれる、三角関数を含んだ公式に基づくかなり複雑な方法が使われていた。

  • 加減法(Subtraction method)」…もとになったのは、フランソワ・ヴィエト(François Viète、1540年〜1603年)が発見したという三角法の公式「sin*1/2」であった。サインの数表さえあれば、この公式を使って、和と差と2で割るという操作だけで、任意の数の積を計算できるのである。

興味を持ったネイピアは、定数の累乗を使えば同じことをもっと単純におこなえると気づいた。それに必要な表は存在していなかったが、その問題は簡単に解決できた。そのためには、誰か公共精神のある人が、その計算をおこなわなければならない。

大航海時代の航海術にはサインやコサインの三角法が必須で、三角法も有効数字が10桁以上もある精密なものが作られていましたが、その計算、特にかけ算と割り算が困難を極めたのです。1590年に、ネイピアの友人がある事情でデンマークに行き、ティコ・ブラーエの天文台を見ました。そこで三角法の式を利用して積を和に直す方法(積和の公式)が使われていることを知りネイピアに伝えたところ、彼はこの話に刺激されて対数の研究を始めたそうです。

対数表に関する)正確な答を求めるには、1.000001のようにもっとずっと1に近い数の累乗が必要となる。そうすると表がはるかに長くなり、累乗の数が100万個などになってしまう。その表を作るための計算は、とてつもない大事業となる。しかし1回だけやればいい。誰か自分を犠牲にする恩人が最初にその努力を割いてくれれば、その後の世代は大量の計算をしなくて済むようになるのだ。

 ジョン・ネイピア(John Napier, 1550年〜1617年) - Wikipedia

スコットランド貴族出身のネイピアは、科学で扱われる計算(特に掛け算や割り算)をいかに簡単に行うかといったことに尽力し、その成果の一つとして得られた道具の一つが「ネイピアの骨Napier's bones)」 であり、また20年の歳月を費やして作成した「対数表Table of logarithms)」だったのである。

ネイピアの骨Napier's bones

f:id:ochimusha01:20190322022528j:plain

ジョン・ネイピアが発明したかけ算や割り算などを簡単に行うための道具。その死後、様々に改良されたが特にドイツ人のテュービンゲン大学ヘブライ語教授ウィルヘルム・シッカード(Wilhelm Schickard,1592年〜1635年)による改良(1623年)が重要である。

f:id:ochimusha01:20190322022635j:plain

シッカードは、ネイピアの骨を歯車などを用いて自動化した。ネイピアの骨は、かけ算を足し算だけにする計算道具であるが、足し算の回数もそれなりに多い。その部分の労力をいくらか軽減できる道具である。シッカードの計算機には、足し算の機能も組み込まれており、ダイヤルを回したりしていくと 6 桁と 1 桁のかけ算ができる。このシッカードの計算機は、世界初の歯車式計算機としても知られ、その後のコンピュータの歴史へ繋がる第一歩でもあった。

チャールズ・バベッジは機械式の自動計算機としては非常に大規模なものを設計し制作。1833年には数表作成用の階差機関の開発からより汎用的な解析機関へと興味を移したが、この時にジャカールのパンチカードをプログラムの表現に使った(ジャカード織機では、カードの穴は経糸の上げ下げを直接示すだけだが、これはコード化である)。

1835年に記されたその解析機関についての記述によれば汎用のプログラム可能なコンピュータであり、入力にはパンチカード、動力源には蒸気機関を採用し、歯車や軸の位置で数値を表すものとされている。元々は対数表を高精度で作成することを目的としていたが、すぐにそれ以外の用途にも使える汎用プログラム可能コンピュータとして構想を発展させたが、機械製作を担当した職人との不和など様々な要因が重なって頓挫。プロジェクトへのイギリス政府の出資も中止となった。
*ちなみに発明を思い立った動機は「世に出回ってる化学数表があまりにも誤計算だらけなのに憤慨したから」とされる。彼もまた「誰かがこれをやらねばならぬ。期待の人が俺たちならば」なる良心の声に突き動かされた一人なのだった。

ちなみにこの頃、ジョージ・ゴードン・バイロンの娘エイダ・ラブレスがFederico Luigi, Conte Menabrea の著した "Sketch of the Analytical Engine" を英訳し、大量の注釈を付記している。これが世界初のプログラミングについての出版物とされる。またダブリン出身の会計士 Percy Ludgate はバベッジの業績を知らなかったが、独自にプログラム可能なコンピュータを設計し、1909年に出版した著作にそれを記している。 

 対数表Table of logarithms

ネイピアの考え出したもののうち、最も科学に影響を与え、受け入れられたのが対数である。対数は、かけ算を足し算に、割り算を引き算に変える。そのため、巨大な数のかけ算や割り算が、対数を使うと容易になる。

その概念の発見自体はスイス出身の時計職人・天文機器製作者ヨスト・ビュルギ(Jost Bürgi またはJoost Bürgi またはJobst Bürgi 、1558年〜1632年)の方が先だったが、ビュルギが長い間、発表しなかったために対数はネイピアの業績として知られている。

ヨスト・ビュルギ(Jost Bürgi またはJoost Bürgi またはJobst Bürgi 、1558年〜1632年) - Wikipedia

天文学の膨大な計算を簡単に行えるようにした対数について、フランス人のピエール=シモン・ラプラスPierre-Simon Laplace, 1749年〜1827年)は、対数は天文学者の寿命を 2 倍にしたと賞賛している。

ピエール=シモン・ラプラス(Pierre-Simon Laplace, 1749年〜1827年) - Wikipedia


現在では「対数関数と指数関数は互いに逆関数の関係」にあるとはっきり教わるが、当時はそうではなかった。スイス出身で後に米国へと移住した数学史家フロリアン・カジョリ(Florian Cajori, 1859年〜1930年)は「ネイピアが指数を用いる以前に対数を構成したことは、じつに科学史上の一大驚異である。」と絶賛する。

フロリアン・カジョリ(Florian Cajori, 1859年〜1930年) - Wikipedia

ただしネイピア自身が考案したのは現代的なloga(x)形式ではなく、掛け算を足し算に、割り算を引き算に変える目的に特化した定義だった。これを基準に採用して 20年間計算を続け 7桁の数の対数表を作成し1614年に発表した訳である。
*ネイピアが対象とした掛け算は三角関数同士のもので、作成したのは1°刻みの角度に対する8桁の三角関数に対する8桁の対数。当時はまだ指数表記も小数点もなかった。

そして1620年に英国人エドムント・ガンター(Edmund Gunter, 1581年 - 1626年)が対数尺(ガンター尺、 Gunter's scale)を作成(1620年)。対数の原理を用いた計算尺のはしりである。この後、計算尺は電卓が広まり始める1970年頃まで広く使われ続ける事になる。

f:id:ochimusha01:20190322023815j:plain 

発表後ずっと忘れ去られてきたネイピアの対数表に130年後、再照明の光を当てたのがスイス出身のレオンハルト・オイラーLeonhard Euler, 1707年〜1783年)だったのです。

レオンハルト・オイラー(Leonhard Euler, 1707年〜1783年) - Wikipedia

  • 対数の発明者であるネイピアが20年もかけた対数表は、指数も小数点もないことに加え(底を10とする使いやすい常用対数表と異なり)不思議な数0.9999999を底に使用していたせいで人々に全く理解されなかった。ただ一人、英国人の天文学者ヘンリー・ブリッグス(Henry Briggs、1561年〜1630年)だけがその本質を見抜き、ネイピアとの議論を経て底を10にした常用対数表を産み出してこれが普及したのである。
  • それでは「不思議な底0.9999999」の正体とは一体何だったのか? 少数が存在しない、すなわち整数だけの世界に生きていたネイピアは「扱う数の範囲を1から100000000、すなわち10000000を上限とする」と決めた(それ以前には「数表を共有して使い回す」という概念自体が存在しなかったので、そうした約束事すらも存在しなかったのである)。そして同時に対数の底として「1からほんの僅か小さい値=減少関数の減少の度合いを可能な限り最も抑え混んだ1の一つ前の数字」すなわち「1-1/10000000=0.9999999」を選んだのである。かくして最初に製作された対数表は「Sinus三角比θ=10000000*0.9999999Logarithms対数)」を展開する形式を選択し、例えば「Sinusθが3173047の時に11478926」「3173048の時に11478923」とそれぞれ整数値を返す体裁に整えられたのだった。

    人と星とともにある数学 第7回 | 空間情報クラブ

    f:id:ochimusha01:20190322074522j:plain

  • ところで底が1より小さい指数関数のグラフは減少関数となる。またネイピアは10000000を「N=計算上の上限」と設定しているので「Sinusθ=10000000*0.9999999Logarithms」なる式は「(1-1/N)^N」の形に整理可能で、ここから「1/e0.3678794⋯)」が導出されるのだった。
    *動作はほぼ「お見合い問題」で導出された式「(1/N)^N」のそれと重なる。

オイラーはこの事に気付いて「自然対数Nature Logarithmsの発見者」となり、かつ「無限解析入門Introductio in analysin infinitorum)」といった著作でそうした知識を惜しみなく披露した事でその発見者ともなったのだった。

ちなみに今日なお人類は対数抜きに膨大な数字や浮動小数点を扱う他の手段を有していません。それはコンピューター言語が扱うデータ型の形式の構造を見ても明らか。

一方、今日なお人類はコンピューターを使った計算においてその表現能力上の桁溢れや(底が1未満となる対数を利用した)減少系計算と(底が1以上となる対数を利用した)増加関数の交差が現出させるある種の「パニック状態」に備え続けねばならない状態に置かれ続けています。
*そう、コンピューターはある種の処理限界に到達すると人類の馴染んだ10進法表示を保てなくなり「対数表示の世界」へと回帰してしまうのである。まるで限界を超えて働かされた使い魔が正体を露わにする様に…
f:id:ochimusha01:20190315003232g:plain
*江戸時代の和算家が考案した「2の81乗」を計算する例題の結果表示ですら、現代のコンピューターの性能をもってしても中々の鬼門だったりする有様…

*油断してるとすかさずこれがこれに化けてしまう…

f:id:ochimusha01:20190315025625p:plain

*この現象はコンピューター言語の世界だけでなくExelの様な表計算ソフト上でも起こり得る。それもしばしば「画面表示上は何とか10進法表示を保ったが、印刷したら限界を迎えた」みたいな最悪の顕現の仕方をしたりする。「WYSIWYG原則どうした!!」とか怒っても、この状態に追い込まれたコンピューターにはもう為す術がない。

f:id:ochimusha01:20190322082255j:plain

改めて全ての始まりとなった「ネイピアの覚悟」に敬礼…

そして今日なお続く「10進数表記世界への対数表記世界の侵入」との戦いの最前線に立つ者達に幸あれ…あれ、本末転倒?

*1:x+y)/2)*cos((x-y)/2)=(sin(x)+sin(y