関孝和すげえという話をします。
【算聖】関 孝和【新助、自由亭】
先月、上野健爾、小川束、小林龍彦、佐藤賢一 による『関孝和全集』が岩波書店から出版されました:岩波書店のページ。
最近はこの本を勉強しているのですが、すこぶる面白いです。
私は元々「関・ベルヌーイ数」という数学的対象がものすごく好きです。これは「ベルヌーイ数」と呼ばれることの方が多いですが、ヤコブ・ベルヌーイとは独立に関孝和も発見しているという話だけをとっても、私が関孝和のことを好きになることに不思議はありません*1。なお、関・ベルヌーイ数が書かれているのは、遺著『括要算法』*2です*3。
実際は関・ベルヌーイ数の発見だけではなく、関孝和には他にも多数の業績があります。「天元術」を超えた「傍書法」を考案した上で、『解伏題之法』でまとめられている終結式の理論を作ったことが関孝和の一番の業績と目されているそうです*4。
この記事では、この「一番の業績」に関係することをほんの少しだけ紹介します。具体的には、沢口一之の提出した15問の問題のうちの1つについて、関孝和による解法を見てみましょう。
関孝和は時代を超越している
当然、現代数学の視点のみから関孝和の業績を評価してはいけません。我々から見れば関孝和のやったことの一部はいとも簡単に得られるかもしれませんが、全く知られていない状況から新しい概念や記法・手法を生み出すことはもの凄く難しいことです。むしろ、現代において、いかに基本的な数学がよく整理されているのかがわかります*5。
まずは関孝和が生きた時代を、数学を革命的に発展させた歴史的大数学者であるオイラーおよびガウスと比べてみましょう。
関孝和(生年不詳*6-1708)
オイラー(1707-1783)
ガウス(1777-1855)
関孝和が生きた江戸時代はよく知られているように鎖国中でしたが、そもそもオイラーやガウスより前を生きているので、我々の知るオイラーやガウスの数学は当時は世界中のどこでも知られていなかったことになります。
生前唯一出版された関孝和の本である『発微算法』以前に出版された日本の数学書が [一巻] p.157〜に31冊まとめられています。その4冊目が有名な吉田光由の『塵劫記』の初版であり、1627年に出版されています。
関孝和が数学研究の初期にどのような数学書を読んだのかはわかっていないということですが、例えば1433年に出版された『楊輝算法』の朝鮮版の写本を作成しているとのことです*7。
関孝和は中国の数学書や初期の日本の数学書を学んで数学研究の土台を作ったのだと想像しますが、関孝和の数学は中国伝統数学の延長線上にあります。特に、その記述は現代的な数式の記法とは全く異なりますし(我々が今使っている数式記号の殆どはなかったと言っていいでしょう)、ユークリッドの『原論』以降に見る演繹的な体系は、『九章算術』を典型とする東アジア諸地域の数学では確立されなかったそうです*8。
さて、関孝和の凄さは、中国伝統数学を学んだ延長線上での数学において、他の中国の数学者や和算家にはたどり着けなかった境地に達していることです。
例えば、 ルドルフ・ファン・コーレンが1596年に円周率を20桁求めているそうですが*9、それに比べると関孝和が増約術(エイトケン法)によって11桁求めた*10というのは、数値的には世界トップではなかったと言えます*11。
ですが、関以前の日本の数学書が円周率として などを採用しているものが多かったことを考えると*12、他の和算家を圧倒しています。
また、関孝和の数学の特徴は、『九章算術』以来の伝統とは異なり、現代数学の立場に近い「一般論の構築」を志していたことにあるようです。ただ、「証明」の概念もなければ一般論を述べるための用語も確立されてなかったため、アルゴリズムを与える形で一般論を構築したそうです*13。
このように「中国伝統数学の延長線上」という制限下において超越的だったということだけでも凄いですが、驚くべきことに、幾つかの概念については西洋をも超えていました。まさに、関孝和は世界史的な偉人であると思います。
『古今算法記』と『発微算法』
『発微算法』(1674年)は関孝和の生前に出版された唯一の関孝和の著作です*14。この書籍が出版された経緯を簡単にまとめておきます。
はじまりは吉田光由自身によって『塵劫記』を改訂して1641年に出版された『新編塵劫記』です。この版には最後に解答の載っていない問題が12問出題されています。その後、解答なし問題を解いた人が数学書にその解答を載せ、更に新しい問題を解答なしで出題するという流れができたのです(最初にこの流れを作ったのは榎並和澄『参両録』(1653年)*15)。この流れを「遺題継承」といいます*16。
その流れで
→ 磯村吉徳『算法闕疑抄』(1659年)
→ 野沢定長『童介抄』(1664年)
→ 佐藤正興『算法根源記』(1669年)
→ 沢口一之『古今算法記』(1671年)
ときます*17。
この『古今算法記』は少なくとも次の2つの点で歴史的にかなり重要と言えると思います。
1つには、それまでの和算家が正しく理解できていなかった天元術を初めて正しく理解して使用した著作になっていること*18。天元術は、12、13世紀には既に中国で用いられていた、未知数を設定して題意に従って1変数代数方程式を得る方法です*19。その方程式は算木によって表現されます( に相当する部分は書かれず、また、未知数 に対応する文字もありません)。
もう1つは、関孝和の『発微算法』が生まれるきっかけを与えたことです。『発微算法』は『古今算法記』の巻七にある遺題15問に解答を与える書籍であり、新たな問題の提出はありません。序文には本書の出版の経緯について次のような旨が書かれています*20:多くの数学者を苦しめている沢口の難題に挑んで全部解けたけれども、解答を書いた解義書は箱の底に仕舞い、人に見られるのを恐れていた。ところが門人たち*21が刊行を強く勧めたので、消極的ではあったが出版することにした。
このように沢口一之は重要な和算家ですが、その師匠は橋本正数です。そして、久留重孫という人物が橋本正数と関孝和の両方の門人だったそうです*22。
『発微算法』は解答のみが掲載されており、その導出法の説明がありませんでした。そのため、読者が正しく解法を理解することは困難で、誤っている等の非難の声があがったようです。これらの人々を正すために、関孝和の門人である建部三兄弟が『発微算法』の導出部分を詳細に解説した原稿を持って関に出版の許可を求め、その結果1685年に出版されたのが『発微算法演段諺解』という著作です*23。
『発微算法演段諺解』のおかげで関孝和の傍書法などの技法が伝わるようになりましたが、関孝和自身はそこに書かれている手法は十分な一般論ではなかったこともあり、『発微算法演段諺解』の出版についても許可はしたものの積極的ではなかったようです*24。
傍書法と消去法
沢口一之までの数学では天元術があったので1変数代数方程式は扱えましたが、当時の中国伝統数学には多変数の連立高次代数方程式を記述する方法がありませんでした*25。朱世傑の『四元玉鑑』(1303年)において最大4変数までなら記述可能な方法が論じられていたようですが*26、関孝和は制限なく多変数の連立高次代数方程式を記述する傍書法を考案しました*27。
『古今算法記』の遺題はまさに多変数の連立高次代数方程式として立式できる問題だったのです。(ということは、傍書法の創出を促す問題を出題したという観点でも沢口一之は凄いなと思います。)
すると、傍書法で題意に沿う数式を立式できても、その方程式を解く方法がなければなりません。そのために、関孝和が必要としたのが未知数の消去法です。つまり、与えられた多変数の連立高次代数方程式を1変数代数方程式に帰着する方法があればよいのです*28。
『発微算法』で実際に行われた未知数の消去は『発微算法演段諺解』に詳述されており*29、その段階ではまだ完全な一般論は完成しておらず、幾つかのアドホックな技によって未知数消去を実行していたようです*30。
「一貫の神術」と呼ばれた一般論はその後、写本伝承された関孝和の著作『解伏題之法』(1683年)で解説されています。
この記事では、沢口一之『古今算法記』の遺題の第5問を、『発微算法演段諺解』で解説されている「消長の式による術」による消去法*31ではなく、「一貫の神術」によって解きたいと思います。
ホーナー法
ところで、1変数代数方程式に帰着された後にそれをどう解くかについて少し述べておきます。現代の人々は、細かい進展は追えてなくとも、4次方程式までは代数的に厳密解を求めることができて、5次以上になると一般には代数的には解けないということを知っている人は多いでしょう。ですが、関孝和の時代にはこれらの結果は伝わっていなかったり*32、知られていません。
代数学の基本定理をガウスが証明したのは1799年ですし、ガロアが決闘を行ったのは1832年なので、関孝和の時代には当然これらのことはわかっていません*33。むしろ、当時の数学のあり方から、方程式の厳密解を求めることよりも、(正の)実数解の満足いく精度での数値解法があれば十分でした*34。
ちなみに、例えば中間値の定理をボルツァノが証明したのは1817年だそうですが、和算においてはグラフの概念や関数の概念はなかった、あるいは未成熟だったそうです*35。特に、微分積分はありません。
さて、1変数代数方程式の具体的な数値解法ですが、それは写本伝承された関孝和の著作『解隠題之法』(1685年)、『開方飜変之法』(1685年)にまとめられており*36、現在では「ホーナー法」の名前で知られている方法を関孝和は自家薬籠中のものとしていました。なお、ホーナーの仕事は1819年であり、それよりも先にルフィニが1804年に発見しているそうです*37。関孝和はそれより早かったのです。
このように、1変数代数方程式を数値的に解くアルゴリズムがあるため、関孝和の『発微算法』では沢口一之の各問題について、最終的な1変数代数方程式に到達した時点で解答したことになっています(つまり、答えとなる数値は書いていない)。もう少し正確に述べると、その1変数代数方程式ですら、求まることが確定した時点で解答をやめている問題もあります(後述)。
解けることがわかったら満足して実際には解かないという数学あるある仕草が関孝和の時代からあったことは興味深いですね。
第5問
沢口一之が『古今算法記』に出題した遺題の第5問について、[一巻] p.306にある現代語訳を私の言葉で現代的な数学の問題の形で言い換えると
となります*38。
これは、一番小さい立方体の一辺の長さを , 各一辺の長さの公差をとおいて数式で表現すれば、
という連立方程式を解く問題であることがわかります(これはもちろん現代的な記法で書いたものであり、『発微算法演段諺解』では傍書法で記述されます)。
展開して整理すると、
を得ます。ゴールはこれら2式からを消去して、の満たす1変数代数方程式を求めることです。ここでは、[一巻] p.307の『発微算法演段諺解』による解説および [一巻] p.288にある「消長の式による術」の解説にある方法ではなく、より一般の場合にも適用可能な『解伏題之法』にある方法に従います。
まずは与えられた連立方程式から「換式」を求めます。2変数3次方程式の場合に換式を求める方法が [一巻] p.622で解説されている『解伏題之法』の例題18にあります。一般に連立方程式
が与えられたとき(符号の付け方は関孝和に従っています)、 を計算して、1つ目の式
を得ます。次に、 を計算して、2つ目の式
を得ます。最後に を計算して、3つ目の式
を得ます。こうして換式(今の場合は換三式)が得られたら、そこからを消去します。換三式を
と置き直すとき、[一巻] p.626の例題23によれば(そして、戸板保佑『生剋因法伝』を参考にしたとする補足説明によれば*39)、
を計算すると と の項が見事に消えて、
すなわち、
が得られます。
さて、元の第5問の設定に戻ると、考えている連立方程式に対する換三式を求めると
となります。そして、上の方法に従って、得られた換三式からを消去することにより、 の満たす9次方程式が
と求まりました*40。
ところで、これは複3次式(っていう言い方あるんですかね?)なので、厳密解が求まりますね。
近似値は
です。
終結式と行列式
さて、前節で述べた計算が一体何をやっているのかということですが、まず換三式を求めた後のを消去する式の左辺は行列式に他なりません。
換三式を行列表示すると、
は連立方程式が非自明解を持つことを示しているので、係数行列の行列式は確かにになることがわかります。
は行列式を
で定義していると考えることもできます。
『解伏題之法』の第5節*41ではより一般の行列式を取り扱っており、「交式」と「斜乗」と呼ばれる方法を組み合わせて行列式を求めています。2次、3次の行列式は斜乗だけで求まりますが、この方法で3次の行列式を求めることは、いわゆるサラスの方法と同じです(サラスは1833年らしいので関孝和の方がだいぶ早い*42)。
関孝和の求めた4次の行列式は正しかったけれども、5次の行列式については(斜乗の時点で)符号間違いがあったということです*43。
現代的な行列式の定義の1つは
ですが*44、符号の付け方を除いてこの形になることを関孝和は理解していたと考えられるようです*45。符号部分の法則についても関孝和は考察し、間違いもあったわけですが、対称群の概念のない時代においてここまで到達していたとは本当に驚きです。なお、ライプニッツも同時期に3, 4次行列式を考えていたようです。
換式を求める部分については一般の場合を視野にいれたアルゴリズムになっており、実はベズー行列と呼ばれる行列を計算することと同等です*46。そして、それの行列式をとったものは、現代においてシルベスター行列を用いて学ぶことが多い、終結式と本質的に一致するのです*47。ちなみに2つの多項式 , に対して終結式 が定まり、が係数体の代数閉包において共通根を持つことと が同値になります。
ベズーの仕事が1764年、シルベスターの仕事が1840年らしいので、関孝和の「一貫の神術」は当時の西洋の数学を超えていたのです。
1458次方程式
第5問の最終方程式は9次方程式でしたが、『発微算法』で扱われる最終方程式の中で次数が最大のものは沢口一之の15問の遺題のうちの第14問の最終方程式であり、それは1458次方程式です*48。
この問題は平面図形の問題で、現れる6つの辺の長さを と設定するとき、問題文で要求されている条件
および、平面図形が成立するための条件*49
からなる連立方程式から変数を消去し、最終的にに関する1変数代数方程式を得ることを目指すものです。
『発微算法演段諺解』では「一貫の神術」ではなく「3乗化」と呼ばれる方法で変数消去を行うことが指示されます。この3乗化の方法は単純なので説明します*50。
の形(, は多項式)をした連立方程式からを消去することを考えます。まず、をに関する多項式を係数とするに関する多項式として整理します。その後、に関する次数をで割った余りで分けて、
の形に整理します(, , は2変数多項式)。の両辺を3乗すると
となることが確認できるので、この方程式に を代入すれば
というだけの方程式が得られました。
沢口一之の第14問は3乗化の方法を5回実行すれば最終方程式が得られる形をしており、実際に関孝和は(少なくとも『発微算法演段諺解』では)これを指示しています。すると、3乗化を実行するたびに方程式の総次数が
と変遷して、に関する1458次方程式が得られることがわかります。
得られることがわかるため、そこで解けたことにして、『発微算法』および『発微算法演段諺解』では実際には得ていません。
でも3乗化の方法は単純なため、コンピューターを用いれば計算できる気がするんですよね。見たいじゃないですか。その1458次方程式を。
それで、とりあえず1回3乗化を実行して を消去してみると
となります(入力ミスがなければ)。
これを後4回やらないといけないんですが、途中で結構大変な量になってしまうので、どうやら素人がちょっとしたプログラムを組んで短時間で計算しきるのは難しそうです。
本気を出したり専門家に依頼してまで1458次方程式を見たいかと言うと、得られたところで虚無になるだけかもしれないので一旦諦めました。
ならば、既にこの方程式を計算しきった先人を探そうという気持ちになりました。
少し検索してみると、やはりこの1458次方程式を見てみたいと思う人は一定数いるようで、実際に見たことがある人の言葉も見つけました*51。
ところで、そもそもの参考文献に戻って[一巻] p.337の脚注(32)を見ると、さらっと恐ろしいことが書いてあるんですよね。
この1458次方程式は宮城清行『和漢算法大成』で具体形が求められている.
あるんならこれを見ればいいじゃないかと思われるかもしれませんが、この本の出版年がおかしいんですよ。
1712年らしいのです。
宮城清行『和漢算法大成』
ネット検索すると、この本のPDFを見られるサイトがありました*52。
この本の巻七の第14問の部分に「8ページと少し」にわたって漢文が書き連ねられていることを確認できます。
最後は
千四百五十七乗方飜法開之得商巳斜推前術得各合問
と締められています*53。関孝和の『発微算法』にある当時の方程式の記述と比べることにより、これが「1458次方程式の具体形」そのものでしょう。
そして、巻九まるまる一冊、約60ページにわたって、この方程式を得る方法が解説されています(傍書法による記述が大量に出てきます)。
コンピューター無しで人間がこんなに大量の計算を実行すれば、計算ミスがある方が自然だと思います。実際にミスがあるかどうかは確かめていませんが、江戸時代に関孝和の1458次方程式を実際に求めた人がいたのだという事実に驚きを隠せません。正直、狂気を感じます。
それにしても関孝和のことを調べていたら、これまで全く知らなかった宮城清行という人物を知ることができて興奮がおさまりません。
宮城清行 おそるべし!
謝辞
本記事を執筆するにあたって、対話をして有益なコメントをくださったYu. K.氏とふみ川まうり氏に感謝申し上げます。
参考文献
[一巻] 上野健爾、小川束、小林龍彦、佐藤賢、『関孝和全集 第一巻 現代語訳』、岩波書店、2023年
*1:私の苗字が「関」であることは恐縮しつつも嬉しい偶然です。もし関孝和の子孫であればそのことを誇りに思えそうですが、関孝和の家は養子である新七郎の代で断絶しています([一巻] p.62)。なお、関孝和は内山七兵衛の息子で、関家の養子です([一巻] p.54)。
*2:荒木村英と大高由昌によって1712年に出版されています([一巻] p.100)。
*3:『括要算法』はまだ殆ど勉強できていないですが、関・ベルヌーイ数の導出は現代的な視点とは異なるようです。例えば、私は冪乗和の公式を何通りかの現代的な方法で学んだことがありますが、それらはどれも「冪乗和の公式の証明」を与えるものになっています。一方で、関孝和らの数学は証明の概念には至っていないため、関による導出が現代的な視点と異なることは当たり前と言えるでしょう。その導出の流れは大体次のようです。 〔①中国における暦の計算で補間法が必要となり、授時暦で使われた補間法は「招差法」としてまとめられている。[一巻] p.252 ②関は招差法を一般化して「累裁招差之法」を作り、より一般のデータに対する多項式補間のアルゴリズムを与えた。[一巻] p.197 ③累裁招差之法により、冪乗和の公式を少なくとも乗和まで見出す。[一巻] p.352(証明の概念に至っていないということなので、冪乗和が多項式として表されることの証明もしていないのでしょう。) ④(方法が書かれていないので資料から判読することは難しいということですが [一巻] p.198)得られた結果から、係数の満たす法則を推測し、関・ベルヌーイ数の漸化式(関孝和にとっては関・ベルヌーイ数の計算アルゴリズム)を得る。〕累裁招差之法を使って個々の冪乗和の公式を求めるだけでは何か法則があるか分からないので一般の冪乗和の公式を求めたことにはならないですが、ひとたび関・ベルヌーイ数の漸化式の成立を確信できたのであれば、何乗であっても冪乗和の公式を求めるアルゴリズムを与えたことになります。『括要算法』は後々勉強する予定ですが、このようにして中国の学者による天体の運行予測の計算がまわりまわって関孝和による関・ベルヌーイ数の発見に繋がったのだということを知ると、非常に感慨深いです。
*4:[一巻] p.182
*5:もちろん、今後も改善されていくべきです。
*6:[一巻] p.54によれば、1642年生まれとする俗説が流布したが、後に捏造とわかっているとのこと。1630年代前半から1640年代に生まれた可能性が高いそうです([一巻] p.60)。
*7:[一巻] p.80
*8:[一巻] p.224
*9:その後、死ぬまでに35桁目までを正しく得たそうです。
*10:実際は18桁まで求まっていたようです([一巻] p.533)。
*11:とは言っても、関孝和はアルキメデスの方法を超えて加速法を見出していることは驚異的です。
*12:村松茂清の『算俎』(1663年)([一巻] p.161)、村瀬義益『算法勿憚改』(1673年)、池田昌意『数学乗除往来』(1674年)([一巻] p.167)などはもう少し精度がよかったようです。
*13:[一巻] p.151
*14:[一巻] p.277
*15:[一巻] p.160
*16:[一巻] p.156
*17:[一巻] p.161〜p.166
*18:[一巻] p.166
*19:[一巻] p.230 「変数」概念や「代入」概念には到達していなかったようなので([一巻] p.182)、[一巻]では「未知数」という用語が使われていますが、この記事では「変数」と表現してしまいます。
*20:[一巻] p.93
*21:三瀧四郎右衛門郡智、三俣八左衛門久長の2人の名前が最後に書かれているようです([一巻] p.278)。建部賢弘の入門は1676年頃だそうなので([一巻] p.54)、『発微算法』の刊行後のことになります。
*22:[一巻] p.75 しかも、この久留重孫について、建部家と久留家の間には姻戚関係があったらしいです([一巻] p.71)。
*23:[一巻] p.96
*24:[一巻] p.279 ただ、その一般論が記された『解伏題之法』の年紀である1683年は『発微算法演段諺解』の出版年よりも早いです。
*25:前述の通り、「未知数」と書いた方がいいと思われますが、ここでは(現代的な響きに慣れているので)「変数」と書いてしまいます。
*26:[一巻] p.242
*27:ただ、江戸時代には『四元玉鑑』は手に入らなかったそうです([一巻] p.182)。
*28:当時は当然グレブナー基底は知られていません。
*29:ただ、『発微算法演段諺解』は最初に関孝和が求めた方法よりも洗練されている可能性があります([一巻] p.589)。
*30:[一巻] p.284
*31:[一巻] p.288, p. 307
*32:カルダノやフェラーリが生きた時代は16世紀でした。
*33:ただ、次方程式が高々個の実数解しか持たないことは理解していたそうです([一巻] p.191)。
*34:当時の和算家たちが円周率として を採用していたことなども、数値的に答えが出せれば十分と考えていたことが想像できます。
*35:[一巻] p.192
*36:[一巻] p.190
*37:[一巻] p.571
*38:実際は「坪」という単位がついています。
*39:この内容が口伝として生徒に伝えられていたと考えられるそうです。[一巻] p.626
*40:『発微算法演段諺解』で得られると思われる9次方程式が[一巻] p.308の(19)に書いてありますが、倍だけずれています。
*41:[一巻] p.625
*42:[一巻] p.188
*43:[一巻] p.188, p.632 (48)
*44:ちなみに、多数の先行研究があった上で、1812年に現代的な意味での"determinant"という言葉がコーシーによって初めて使われたようです。
*45:[一巻] p.187
*46:2つの次多項式 に対して、ベズー行列を と表すことにすると、という綺麗な等式が成立するそうです。, としてコンピューターで計算すると、 と出力されるので、, , と並べた連立方程式の係数行列がこの , に対するベズー行列に一致していることがわかります。
*47:[一巻] p.594
*48:[一巻] p.336
*49:『発微算法演段諺解』で解説されています。[一巻] p.338 tsujimotterさんの動画でも解説されています。 www.youtube.com
*50:[一巻] p.287
*51:https://www.jstage.jst.go.jp/article/bjsiam/14/1/14_KJ00003574716/_pdf PDF直リンク注意。
*52:http://www.wasan.jp/wakansanpo/wakansanpo.html
*53:和算では1ずれるそうなので、千四百五十八ではなく千四百五十七と書かれています。