日中不定方程式の系譜*

其率術、鶴亀算そして百鶏術

The Origin of Indeterminate Equations in China and Japan

 

城地 茂 Shigeru Jochi**

 

                                    ABSTRACT

 

    The question of Hundred Hens 百鶏術in the Zhang Qiujian Suan Jing 張丘建算経 is one of the most famous questions for indeterminate equations.  But Yang Hui 楊輝 analyzed that this question was the development of the pheasants and rabbits 雉兎同籠 question in the Sungzi Suan Jing 孫子算経, was not the same as Chinese indeterminate equation of Dayan Zongshu Shu 大衍総数術.  Takebe Katahiro 建部賢弘 had the same opinion.

 The Tsurukame-san 鶴亀算 in Japanese was changed animals, which are from pheasants and rabbits to cranes and tortoises.  This question is the solving method for first-degree equation of two unknown numbers.  It, however, is not used algebraic method, is used the subjunctive method.  That is to say, firstly let the one unknown number become the zero, then correct the subjected number for the question's meaning.

    This mathematical thought was already appeared at the Jiu Zhang Suan Shu  九章算術, the questions of Qilu Shu 其率術 at the chapter 2 of Jiu Zhang Suan Shu.  The author thinks that the origin of the question of Hundred Hens is on the Jiu Zhang Suan Shu and reconsiders these kinds of questions in China and Japan.


1 はじめに

 

 和算に最も影響を与えた中国数学書の一つに『算学啓蒙』(朱世傑、1299年)が上げられる。この書は、天元術を比較的平易に解説したものであり、和算の点竄術の基礎となったものであることは明白である。当然、『算学啓蒙』は日本でも覆刻され[1]広く読まれている。この書に対して、日本数学史上最も重要な数学者の一人である建部賢弘(1664-1739)が注釈を施している。いわば、和算家のパラダイムとも言うべきもので、その影響力の大きさは、和算史上最も大きなものの一つと言って過言ではないだろう。

 その中で、建部は「百鶏術」に関する記述をしているが、それは「百鶏術」の問題ではなく、「鶴亀算」の問題への注釈としてである。『算学啓蒙諺解大成』(建部賢弘、1690年)巻中「求差分和門」には、

 

今有鶏兎一百、共足二百七十二隻。只云鶏足二兎足四。問鶏兎各幾何。」

            答曰。鶏六十四、兎三十六。

鶏ト兎ト合セテ百アリ。鶏ノ数モ兎ノ数モシレ(知)ズシテ其足二百七十二アルトキハ、ニワトリ、ウサギ各イクツヅツアルゾトナリ。

此類問ヲ二率ノ分身ト云ヘリ。又三率分身ト云アリ。張丘建算経ニ鶏翁鶏母鶏雛ノ問ノ類ナリ。和書ニモ如此ノ問、間々見ヘタリ。定レル術ナシ。只三色トモニ数ノ整フヲ詮トスル也[2]

 

今、鶏と兎が100羽おり、合計足の数は272足である。鶏の足は2本で兎の足は4本ということしか分からない。鶏と兎はそれぞれ幾らになるか。

            答。雉64羽、兎36羽。

(建部注)鶏と兎、合わせて百羽いる。鶏の数も兎の数も分からないが、その足は272足である。鶏、兎各幾つずつになるか。

この種類の問題は、「二率分身」という。また、「三率分身」もある。『張丘建算経』[3]に鶏の雄雌雛の問題である。和算書にも類似の問題があるが、確定した術はない。ただ、3種類の数値を合わせるように試行錯誤するのである。

 

とある。

 この問題自身は、動物の総数は100であるが、「百鶏術」ではない。動物の種類は違うが、所謂、「鶴亀算」である。つまり、建部は、「百鶏術」と「鶴亀算」には関連があると考えていることになる。これは、建部一人がこのように考えていたのではなく、『楊輝算法』以来の東アジアの伝統数学では、このように考えていたと考えられる。なぜなら、建部が使っている「三率分身」という術語は、『楊輝算法』のもの[4]で、この書では「二率分身」とは「鶴亀算」のことであるから、楊輝も同系統のもの(「百鶏術」の解法の過程で「鶴亀算」を使う)と考えていたからである。

 「百鶏術」とは、未知数が3つに対して与式は2つの問題である。鶏の総数とその価格がいずれも100(羽・文)になるので、この名前があるが、後世、100にならない問題も出題されている[5]。したがって、和算では中国数学から借用した「三率分身」という術語や「二組三色」「三組四色」[6]という術語からしても、未知数が与式より多い問題という事になり、現在の数学の範疇で言えば、不定方程式になる[7]

ところで、東アジアの数学[8]の内容で現代数学の観点からでは、不定方程式と分類されるものは2つある。

 一つは、「百鶏術」のように与式が未知数より少ない問題である。『楊輝算法』では先に述べたように「分身」術、和算では「二組三色」問題などと呼ばれているものである。本稿の主題であるので詳しく後述する予定である。

 もう一つは、「物不知其数」[9]問題である。ある数をいくつかの除数で割り、その余りから、被除数を求めるという剰余方程式である。中国剰余定理、あるいは「孫子定理」として広く世界中に知られている。秦九韶(1247年ごろ)は全体の計算を「大衍総数術」、その中で互に素である2数x,yで互に割って行った時の余りが1になる時の係数aを求める計算を「大衍求一術」と言っている。

 

1 = a x + b y  (x, y) = 1

 

 和算で言うと、「大衍総数術」が「百五減」「剪管術」、「大衍求一術」が「剰一術」ということになる[10]

このように、現代数学から見れば、同じ不定方程式とされる問題も、東アジア伝統数学の範疇では、前者は「鶴亀算」の拡張となり、後者は「上元積年」[11]の計算が起源とされ、「更相減損[12]」法の発展ということになり、少し種類の異なるものと言える。現代の分類のように同一に語ることは難しい。そこで、本稿では、「百鶏術」を建部と同じように「鶴亀算」の観点から考えてみたい。和算を考えるには和算家の考え方に沿って考えるべきだからである。なお、「百鶏術」の解釈に関しては、先人の研究を紹介し、東アジア数学史上での「百鶏術」の歴史的発展について考察して行きたい。

 

2 『張丘建算経』の「百鶏術」

 『張丘建算経』は、5世紀ごろにまとめられた数学書[13]で、このころは『孫子算経』、『夏侯陽算経』なども編纂されたが、時間的にはこれらよりやや新しい数学書である。計算過程である「草」を初めて掲載するようになった数学書で、唐代には、『算経十書』に含められ教科書として使われた。日本へも伝来した[14]が、大学寮の教科書になることはなかった。そのためか、江戸時代より前の日本の数学書には、この種の問題は発見されていない。

 同書の最後の問題が、有名な「百鶏術」である。巻下、第38題は、

今有鶏翁一直銭五、鶏母一直銭三、鶏雛三直銭一、凡百銭買鶏百隻。問鶏翁母雛各幾何。

     答曰。鶏翁四直銭二十、鶏母十八直銭五十四、鶏雛七十八直銭二十六

     又答。鶏翁八直銭四十、鶏母十一直銭三十三、鶏雛八十一直銭二十七

     又答。鶏翁十二直銭六十、鶏母四直銭十二、鶏雛八十四直銭二十八

術曰。鶏翁毎増四、鶏母毎減七、鶏雛毎益三即得。

草曰。置銭一百在地為実。又置鶏翁一(5カ)、鶏母一(3カ)各以鶏雛三因之。鶏翁得三(15カ)、鶏母得三(9カ)并鶏雛三併之共得九、為法、除実得一十一為鶏母、数不尽一返減下法九、余八為鶏翁数。別列鶏都数一百隻在地減去鶏翁八鶏母一十一余八十一為鶏雛数置翁八以五因之得四十即鶏翁直銭、又置鶏母一十一以三因之得三十三即鶏母直、又置鶏雛八十一以三除之得二十七即鶏雛直、合前問[15]

 

今、雄鳥1羽の価格が5文、雌鳥1羽の価格が3文、雛3羽の価格が1文である。 100文で鶏を 100羽買いたい。各々幾らづつになるか。

答。雄鳥4羽、価格が20文。雌鳥18羽、価格が54文。雛78羽、価格が26文。

答。雄鳥8羽、価格が40文。雌鳥11羽、価格が33文。雛81羽、価格が27文。

答。雄鳥12羽、価格が60文。雌鳥4羽、価格が12文。雛84羽、価格が28文。

術。雄鳥を4羽増やす毎に、雌鳥7羽減らし、雛を3羽増やせば良い。

 草。 100文を置き、「実」とする。また、雄鳥1(5カ)、雌鳥1(3カ)を置き、雛の3を掛けると、雄鳥3(15カ)、雌鳥3(9カ)になる。これらに雛の3を加えると、9になり、「法」とする「実」を「法」で割って、11を得る。これが雌鳥の数になる。余りが1になるが、「法」の9を戻して余り8として、雄鳥の数になる。別に総数 100を並べ、雄鳥8、雌鳥11を引くと81になり、雛の数とする。それぞれに価格を掛けると、設問に合う。

前法草。この答えに、雄鳥4羽を増やし12羽、雌鳥7羽を減らし4羽、雛3羽を増やし84羽としても、総数 100羽となり、設問に合う。

 

となっている。『張丘建算経』は全体に誤字・脱字が多く[16]、この部分の意味も不明である[17]。そこで、宋の楊輝の解説に従って[18]、その考え方を追ってみよう。これが建部ら関流和算家に大きく影響を及ぼしたのである[19]

 楊輝は、先ず、分数の計算は煩雑なので、全部を3倍にして、分母を消去する。

         雄      雌      雛      合計(分)

        15      9      1      300

 ここで、全部を雛とすると、100分にしかならないから、200分余ることになる。

         0      0    100     +200

 そこで、雛を雌鳥に変えると、1羽につき8分高いのだから、雌鳥は25羽になる。

         0     25     75        0 …@

 以下、雄鳥4羽を増やすごとに、雌鳥7羽を減らし雛3羽を増やしても、総数、総額が変わらないので、

         4     18     89        0

         8     11     81        0

         12      4     84        0

 が自然数の答えとなる。というのが、『楊輝算法』の解説である。

 ここで、@を求めるまでは、「鶴亀算」を使って、雌鳥25羽、雛75羽を得ている。次の、

                 x=0+4t

                 y=25−7t

                 z=75+3t

 係数4、―7、3の求め方が、「百鶏術」の秘訣で、楊輝はこれを「張丘建算経術」と呼んでいる。

この求め方であるが、『九章算術』以来の「方程」の伝統から考えて、与式の係数を加減法で操作して求めたと考えるのが自然だろう。

現代の数学史家、劉鈍(1947-)教授の解釈は、この考えに近いと思われる。ここでは、代数記号を使って表記してみたいと思うが、もちろん、張丘建は算木を使い、未知数の記号は、当時、無いので、算木の位置で未知数の種類x,y,zを表わしていたはずである。

          5 x   + 3 y   + 1/3 z  = 100 …1

      x   +   y   +     z  = 100

 1式を3倍する。

          15x   + 9 y   +     z  = 300 …2

      x   +   y   +     z  = 100 …3

 2式から3式を引く。

           14x  + 8y             = 200 …4

      x   +   y   +     z  = 100

4式を2で割る。

      7x   +   4y   +        = 100 …5

      x   +   y    +     z  = 100 …6

  6式を4倍し、5式から引くと、

      7x  +  4 y            = 100 …7

      -3x +        +    4z  = 300 …8

 となる。これは、

      7(x+4) +4(y-7)        = 100 …9

      -3(x+4)      + 4(z+3)  = 300

と同じになり、ここから、4、―7,3の比率を導いたというものである[20]

 つまり、一般に、

            b x    + a y           = nD

           -c x             + a z  = nD

 という式を導き、xをa増やし、yをb減らし、zをc増やすという関係を求めることになる。

 『続古摘奇算法』(『楊輝算法』を構成する数学書の一つ、楊輝、1275年)下巻では、「鶴亀算」を「双率分身術」、「百鶏術」を「三率分身術」と呼んでいる[21]。この「率」という術語に注意しなければならない。『九章算術』の「其率術」と同じ「率」の文字が使われている。この問題については、第4節で詳しく論じる予定である。

 

3 「鶴亀算」について

 ここで、「鶴亀算」について確認しておこう。「鶴亀算」とは、二種類のものの総数と価格(あるいは足の数など、それらのものに別個に与えられた固有の数値の合計)が与えられ、そして、それぞれ幾つずつになるかを問う問題のことである。

 解法は方程式を立てずに、先ず、全部が何方か一方だけと仮定して、設問との差から補正するという方法を取っている。鶴亀算は、仮定法的思考法を養成するものとして、初等教育ではよく取り扱われている。

  従来、この種の問題は、『孫子算経』(著者不詳、 400年頃)巻下第31題に始まるとされていた。有名な「雉兎同籠」問題である。

 

 今有雉兎同籠、上有三十五頭下有九十四足。問雉兎各幾何。

            答曰。雉二十三、兎一十二。

 (中略)又術曰。上置頭、下置足。半其足、以頭除足、以足除頭、即得[22]

 

 今、雉と兎が同じ籠に入っている。上には35の頭が、下には94の足がある。雉と兎はそれぞれ幾らになるか。

            答。雉23、兎12。

 (中略)もう一つの術。上に頭、下に足の数をならべる。足の数を半分にする。これから頭の数を引いて、これが答え(の兎の数)になる。

 

 動物の種類は違うが、四足獣と鳥であり、まさに、和算の「鶴亀算」そのものである。

  これは、始めに全部が何方か一方と仮定して計算する算法である。全部を雉と仮定する足の数は70になるが、実際は94本であり、数が余ってしまう。そこで、これを修正するに、兎を増やしてゆけばよい。兎が1羽増える毎に2本足が増えてゆくのだから余りを無くすためには、(余り÷2)羽の兎がいることになる。

              (94−70)/2=12

 

  『孫子算経』では、予め足の数を半分にして、計算を速くしているが、この計算をして

いる事になる。

         47(94/2)−35(70/2) =12

 

  この解法を使って「百鶏術」の未知数の一つを消去すると楊輝は考えている。ところで、これ以前に「鶴亀算」に類する計算は無かったのだろうか。

 

4『九章算術』の「其率術」

 このように、2種類のもののいずれか一方を0と仮定して計算する問題として、『九章算術』(著者不詳、A.D.25年頃)の巻2粟米章第38題から43題にかけての「其率術」題が考えられないだろうか[23]。この問題は、

   今有出銭五百七十六、買竹七十八箇。欲其大小率之、問各幾何。

        答曰。其四十八箇、箇七銭。其三十箇、箇八銭。

其率術曰。各置所買石鈞斤両以為法。以所率乗銭数為実。実如法而一。不満法者反以実減法。法賤実貴[24]

 

今、 576銭あり、大小2種類の竹78本を買いたい。その大小の比率は、幾らになるか。

        答。(小)48本、1本7銭。(大)30本、1本8銭。

 其率術。各問題で、買ったものの(個あるいは石、鈞、斤、両)数を「法」とし基準とする単位を銭の数に掛けて「実」とする。「実」を「法」で割る。「法」に満たない余りは「実」から(「商」と)「法」を(掛けたものを)引くと、「法」(から「実」の余りを引いたもの)が安い(小さい)方の数になり、「実」(の余り)が高い(大きい)方の数になる。

 

 これを術文のように計算すると、先ず、金額を総数で割って、その余りを大きな竹の数とするものである。

             576÷78=7・・・30

 小さな竹は、総数から大きな竹を引いた数になるのは、明白である。

              78−30=48

  「其率術」では、先ず、全部が安い方と仮定して割り算を実行する。こうすると、安い方の価格が求められる。しかし、実際には高いものもあるので、金銭が余る。

 ここで、高い物と安い物の差が1になることを言外に仮定しているので、高い方が1つ増える毎に分子が1増え、反対に、安い方が1つ増える毎に分子が1減ってゆく事になる。したがって、端数の分子個分が、高い物になる訳である。

したがって、残り、すなわち(分母(全体)−分子(高い方の数))個が安い方の数になる(30本)。また、価格は安い方が商、高い方が(商+1)になる。

 「其率術」という名称は、問題の一節、「欲其大小率之」から取ったものである。この問題では、大小になっているが、値段の貴賤という問題では、「欲其貴賤率之」となっている。汎用性を持たせる意味で、「其率術」としているが、楊輝は、「貴賤率除法」[25]と呼んでいる。

 この「率」が何を意味するのか諸説があるが、ものが1つにつき1銭を修正するという「率」と考えれば、「鶴亀算」と同種の問題と考えられる。

 「鶴亀算」と「其率術」のいずれも、最初に何れか一方だけを0と仮定して、後で修正するというものである。「其率術」は1つにつき1銭づつの「率」で修正するのに対し、「鶴亀算」は1羽につき2本づつの「率」で修正するのである。これだけの違いしかないのだから、「其率術」が「鶴亀算」の原型と考えてもよいのではないだろうか。先に「物不知其数」問題で、過不足分を先に半分にして、「率」を1として計算したこととも繋がるのではないだろうか。

 反論として、李継閔教授の、「其率術」を分数近似法の先鞭とする説がある。これは、「其」という漢字に「大概」の意味があるとするもの[26]である。

しかし、「其」に、こうした用法があるのか疑問である。例えば、『易経』系辞下に「子曰く、顔氏の子、其れ殆ど庶幾(ちか)き乎」(孔子は顔回を聖人に近いと言った)とあるが、同教授の主張するような「“其”は猶ほ“殆”のごとし」とはならないようである。

 「其率術」を「鶴亀算」、そして「百鶏術」の原型と考えれば、その歴史は 400年近く遡ることになる。また、更に『九章算術』もその成立年代が遡るという説もある。

  第1章から第6章までと、後の7〜9章では、少々、性質が異なっている[27]。前6章は計算の対象によって、例えば、正方形か台形かによって、問題を分類しているのに対し、後3章では、計算法(術)ごとに分類しているのである。

 『九章算術』の成立年代が紀元50年ごろと言うのは、全9章が現在の形になった時点を言うのであって、前6章は、それ以前に成立していた可能性もある。

 なお、最古の数学書とされる『算数書』には、『九章算術』の第4章と酷似した問題が残されている[28]。「其率術」は現在、『九章算術』の第2章に収録されているから、当時も現在と同じようだったのならば、『算数書』にもあった可能性があることになる。『算数書』は紀元前2世紀のものであるから、「鶴亀算」の歴史は、更に 200年遡ることになる。

 しかし、現在まで確認されている『算数書』の部分に「其率術」は無く、また、「其率術」が第2章の他の問題と性質が異なる以上、「鶴亀算」も『算数書』と同じ時代まで遡れるかという事を断定できない状態である。『算数書』の断片が解読されるか、新たな発見を待つしかないだろう。

 

5 「鶴亀算」の日本伝来

 まず、「鶴亀算」が、どのような目的で『孫子算経』に収録されたのかを考えてみたい。それには、『孫子算経』が、どのような目的で編纂されたのかを考えるのが順序であろう。

 『孫子算経』の編集目的を考えるのは、なかなか難しい。『孫子算経』は、作者の正確な名前さえはっきりしないからである。銭宝jらの研究[29]によって、 400年前後に成立したものと推定されているが、正確な年代も特定できない状態である。

  しかも、中国では実物も散逸してしまい、清代に戴震が『永楽大典』から復元したものによって、辛うじて内容を知ることができる。また、唐代には教科書として使われていたが、当時の記録も残ってはいない。唐令そのものまでもが、残っていないからである。むしろ、令が残っている日本の方を研究して、その結果を中国に当てはめる研究の方が先行している。

 『孫子算経』は、日本の『学令』でも、そしておそらく唐令[30]でも、諸数学書の筆頭に記述されている。

 

 凡そ算経。孫子。五曹。九章。海島。六章。綴術。三開重差。周髀。九司。各一経と為せよ。学生分ちて経を習業へ[31]

 

 算経とは、『孫子算経』『五曹算経』『九章算術』『海島算経』『六章』『綴術』『三開重差』『周髀算経』『九司』である。それぞれを一科目として、(算道の)学生は、班に分れて(『六章』『綴術』の2書の班と7書の班)学習しなければならない。

 

しかし、教科書の中で最も古いものは、『周髀算経』(紀元前1世紀ごろ[32])であるし、重視されていたのは、『九章算術』である。卒業試験の出題数も最も多い三題である。その他の数学書の出題はそれぞれ1問ずつであるから、相当なものである。しかも、最低1問できなければ、不合格になってしまう[33]

 古いものでもなく、重要なものでもないとすると、学習する順序で並べたものと考えるのが自然だろう。学生(算生)は、『孫子算経』から順番に学習を進めたと考えるのが妥当なようである。

  律令制度は、国家規模の行政を日本にもたらすことになった。班田収受を行い、租庸調を徴収し、徴兵を行い、更に都・橋梁・寺院等を造営する為には様々な形で数的処理能力が要求されたはずである。要求された能力とは『倉庫令』受地租条にあるような

 

凡そ地租を受けむは。(中略)京、国の官司。共に輸入さむに籌[34]を執りて対して受けよ[35]

 

租税を受けるときは、中央や諸国の官吏は、輸送してきた者と一緒に算木で計算しなければならない。

 

というように算木を使って数的行政を執行することである。

 唐の数学教科書『算経十書』の中で、算木の操作方法を詳しく記述したものは『孫子算経』だけである。したがって、『孫子算経』が算木の教科書として重視されなければならなかったと言える。『孫子算経』を先に学習した理由はここにある。

  『孫子算経』は、上、中、下の三巻本になっており、このうち、算木の計算方法の説明があるのは、上巻である。上巻にはこの他に度量衡や大数の名称なども記述されており、計算をおこなう上で必要な知識が記述されているのである。したがって『孫子算経』を学習して、それ以上の段階へ進むことになる。また、『孫子算経』だけでも学習すれば、律令官僚として必要な技能を習得することができたとも言えるだろう。算木の教科書としての『孫子算経』は、重視されて当然である[36]

 一方、「百鶏術」のある『張丘建算経』は、『唐令』の順番から考えて、『孫子算経』の後、実務的な『五曹算経』やパラダイムとも言える『九章算術』を学習してからの教科書と言える。そして、この『孫子算経』と『張丘建算経』を学習する学生は、3次方程式など当時の最先端の算学、『緝古算経』や『綴術』[37]を学習しない班である。

 これは、朝鮮の教科書が、『算学啓蒙』と『楊輝算法』であることと比べるとよい対照となるだろう。もちろん、『算学啓蒙』の代表が「鶴亀算」ではないし、『楊輝算法』には「百鶏術」以外に様々な算術が記述されているから一概には論じられないが、「鶴亀算」「百鶏術」は教科書に記載しやすい問題ということができようか。

和算期には、修正する「率」が3の「鶴亀算」がある。会田安明(1747-1817)の創設した最上流算学の塾で使われていたとみられる『最上流・算法童蒙須知』の問題である。この書は、会田の孫弟子である安永惟正によるもので、1824年から1831年に書かれたものである[38]。中編、巻10の「引合ヶ算」では、

 

今有、小銭(一文銭)與四文銭共四十二銭。以此銭買一値三文之桃三十九箇也。問小銭、四文銭之数幾何。

      答曰。小銭十七文、四文銭二十五文。

     術曰。桃三十九箇、以三文乗、為甲。又、四十二文以四文乗、以甲減之、以余為実。別置四文以一文減、以余三文減実、知小銭幾何。

 

今、小銭(一文銭)ト四文銭ト交テ、四十二銭アル。此ノ銭ヲ以テ、一ツニ付三文ツツノ桃三十九ヶ也。小銭、四文銭ノ数ヲ問。

      答曰。小銭十七文、四文銭二十五文。

術曰。桃三十九ヶニ三文ヲ乗ジ、甲トシ、又、四十二文ニ四文ヲ乗ジ、内甲ヲ引余リ実トシ、別ニ四文ノ内一文引余ル三文ヲ以テ実ヲ除キ、小銭ヲ知ル。

 

  という、「鶴亀算」の応用問題を出している。

 代数的に表記すれば、一文銭の数をx、四文銭の数をyとして、

 

         x+ y= 42

         x+4y=117(=3×39)

 

となるが、代数的方法は用いず、ここでは、一風変わった、大小の差が3である「鶴亀算」で解いている。

42枚の硬貨が全部四文銭であると仮定すれば、 168文あることになる。ところが、題意では、1個3文の桃が39個であるから 117文である。仮定との差が51文であるから、小銭(一文銭)が四文銭に代わってゆけば、1枚につき四文銭との差3文が修正される。したがって、51÷3=17枚が小銭の数である。

 この問題は、桃1個の価格3文と、小銭(一文銭)と四文銭の差3文が同じになっており、工夫を凝らしたものと言える。最初の仮定のように、 168文あるとすれば、桃は56個になり、一文銭が1枚増える毎に桃1個(3文)が減少する。ここから直ちに、56−39=17として、一文銭の数が計算できる。

 このように、普通の「鶴亀算」で「足」の部分が、「桃」で表されているために、仮定的思考に習熟していなければ、混乱してしまう。したがって、この問題を解決できる生徒は、一般的な寺子屋で、普通の「鶴亀算」を既に学習した水準の生徒と考えられる。連立2元1次方程式を解く代数的方法は、『算法童蒙須知』の下編、巻9「盈方程」(現存するものは欠巻)で教授していたのであろう。

なお、日本では「鶴亀算」の動物は、大きく変化している。これに対して、中国では、基本的に鳥類と兎である[39]

『孫子算経』から『算学啓蒙』では、動物が雉から鶏に変わっている。兎はもとのままである。巻中、「求差分和」門第1題では、鶏、兎計 100羽、足が 272本の問題である。ここで雉が鶏へと変わったのを「百鶏術」の影響と考えるのは穿ちすぎであろうか。

 この『算学啓蒙』は中国では程なく散逸してしまったのだが、隣の李氏朝鮮では教科書として採用され、それが、豊臣秀吉の朝鮮出兵の際に戦利品としてもたらされ[40]、日本で広く流布した。

また、明代を代表する、珠算算学の最高峰である『算法統宗』(程大位、1592年)が、おそらく民間貿易によって輸入され、広く愛された。「鶴亀算」は『九章算術』の分類では、第6章になる「均輸」章に収録されている(『算法統宗』巻9「均輸六章」)。程大位も第2章の問題とは考えなかったのである。その第26題には、鶏、兎が35羽、94足の問題がある[41]

 『孫子算経』は、古代大学寮の教科書の筆頭として学習され、その影響は日本古代では最も大きい算学書である。同書の「物不知其数」題は、剰余方程式であるが、後世(江戸時代)まで伝わっている。しかし、奈良時代から江戸時代までの間、「鶴亀算」は記録に残されていない。さらに、『算法統宗』をもとにしたと自称する『塵劫記』にも「鶴亀算」は収録されていない。

 やや遅れて、『因帰算歌』(今村知商、1640年)巻上で、江戸時代になって初めての類題がある。兎と雉に戻って、頭32、足が94の問題である[42]。ここでは、『算学啓蒙』と同じ術語である「差分(しゃぶん)」の問題とされている。

 以上のことから、江戸時代の「鶴亀算」は、奈良時代に伝わった『孫子算経』や『算法統宗』の影響ではなく、『算学啓蒙』の影響が大きかった事が分かる。

 これが、鶴と亀というめでたい動物になったのは、『算法点竄指南録』(坂部広胖、1815年)からである[43]。「点竄術」は関孝和が創設した日本的代数学であり、同書はその入門書である。このような、算術と数学の間にある『算法点竄指南録』に「鶴亀算」が収録されたという事からも、「鶴亀算」は方程式への橋渡しをしていると言えよう。

 このように、名称としての「鶴亀算」は、 200年以下の歴史しかないことになる。

 以上のように「鶴亀算」は少なくとも1500年の歴史を持ち、現在でも一般に知られている有名な問題である。仮定的思考を使うので、小学校の高学年、10才ぐらいの児童に適当な問題と考えられている。

 古代においても、一通り四則演算に習熟した学生に対して、さらにもう一歩踏み出す時に使われた問題のようである。宋代に代数(天元術)が発明されると、算術から代数への架け橋という役割を果たしたのが「鶴亀算」であった。

 

6 「百鶏術」の日本伝来

 一方、「百鶏術」は、『楊輝算法』を通じて広まったようである。『張丘建算経』が教科書にならなかったためか、その内容は日本へ余り影響を与えなかった。

和算書で最も古い例は、『格致算書』(柴村盛之、1657年刊)の下巻85[44]のもので、

去百姓ぜに(たし)百文にて、ちゃわん・つちざら・かはらけ三いろをかふに、銭数ほど三いろを買度と云。ねだんをとへば、売人かん(勘)のふかきものにて、それはやすき事、一いろづつのかずに、このみはなきかと問。一いろづつのかずを云ば、百姓よろこび、さらばそれへ、まかるべいと申。銭を取出し渡す。

ちゃわん一つに付 弐十文づつ

つちさら一つに付 壱文づつ

かはらけ五つに付 壱文づつ

ちゃわん四つ買 此銭八十文

つちさら壱つ買 此銭壱文

かはらけ九十五買 此銭十九文

 

 合 銭百文

   数百

 

ある男が、銅銭合計百文で、茶碗・皿・素焼きの土器の3種類を買うときに、銅銭の数と3種の総数が同じになるように買いたいと言い、価格を聞いた。商人は、算術が上手で、それは簡単なことだと言う。種類ごとに数の希望がないかと質問した。それぞれの数を示すと、買う男は喜んで、それならその通りにしようと言い、代金を支払った。

茶碗1つ 20

皿1枚 1文

素焼きの土器5つで 1

茶碗を4つ買い 80

皿1枚を買い 1文

素焼きの土器95個を買い 19

合計100文 100

 

というものである。

 これを「張丘建算経術」で解いてみよう。茶碗の個数をx、皿の個数をy、土器の個数をzとして式を立て、変形すると、

      99x + 4y           = 400

           -95x         + 4z   = 100

 が得られる。これは、

          99(x + 4) + 4(y - 99)  = 400

           -95(x+4) + 4(z + 95)  = 100

と同じであるから、茶碗の個数を4増やし、皿の枚数を99減らし、土器の個数を95増やす関係が求まる。

ここで、皿は、1枚1文であるから、ただちに茶碗0個、皿の100枚、土器の0個が得られる。ここから、先の関係を加減すると、茶碗4個、皿1枚、土器95個という答えが出る。自然数の組み合わせは、この答えだけである。皿が1枚1文であるため、「鶴亀算」を使う必要がなくなっている。

次は『改算記』(山田正重、1659年)下巻第十 買物銭数程取事[45]の問題である。

 瓜1つ2文、なすび3つ1文、桃8つ1文

 960文(=一貫文)で960

 

せに(銭)一貫文にて、ふり、なすび、もも是三色買時に、ふり一つに付、銭二文づつのね、なすび一文に三つづつのね、もも一文に、八つづつのね。右のねにして三色ニ而銭数ほど九百六十かい度と云時、

瓜四百三十、此銭八百六十文、一ツニ付二文づつ

茄子百六十二、此銭五十四文、一もんニ付三つづつ

桃三百六十八、此銭四十六文、一もんニ付八つづつ

買物数合九百六十有。せに数合九百六十文。先瓜を多分にして四百三十ときわめ、二文をかけ八百六十文と成。是を九百六十文の内ヲ引バ残長百文有。是にもも八つをかくれば八百と成。又、九百六十と置。此内瓜四百三十引ば残五百三十有。是を右八百の内を引、残二百七十あり。右に別に置。左にもも八つの内なすひ三つ引は残り五つ有。是を目安にして右の二百七十を割ば五十四文となる。是なすびの代としるる。是に三つをかくれば百六十二としるるなり。九百六十の内瓜なすびを引ハ残数ももなり。

 

銭、一貫文(960文)で、瓜、茄子、桃の三種類を買うとき、瓜1つは、20文、茄子1文で3つ、桃は1文で8つである。この値段で3種類を960個買いたいという時は、

430、価格860文。12文。

茄子162、価格54文、1文で3つ。

368、価格46文、1文で8つ。

買う物の総数は960、代金も960文である。先ず、瓜を430として1個2文であるから860文になる。総大金960文から引いて100文になる。桃は8個で1文であるから、掛けて800(分)とする。また、(個数の残りは、)960から瓜の430を引いて530になる。これを先の800から引くと270となり、右に置いておく。桃の8から茄子の3を引いて(8/24  3/24)5になる。270を5で割れば54になりこれが茄子の代金である。3を掛ければ、162となりこれが茄子の個数である。960から瓜と茄子の個数を引けば桃の個数になる。

 

 これは、どうやら建部が言う「定レル術ナシ」のようである。「鶴亀算」も「張丘建算経術[46]」も使っていない。試行錯誤で求めたようである。

 

7 まとめ

 奈良時代には、『張丘建算経』が伝来しているが、それが後世に伝わった形跡はない。1792年に毛利高標(たかすえ)(1755-1801)が村井中漸(1708-1797)に命じて覆刻させた『算経』(五種算経)も、『孫子算経』、『五曹算経』、『海島算経』、『五経算経』、『夏侯陽算経』であって、『張丘建算経』は覆刻されなかった。そのためか、「百鶏術」は和算家には余り研究されなかったようである。

江戸時代、寺子屋では、「鶴亀算」が盛んに教えられたのだから、その発展としての「百鶏術」もあって然るべきなのだが、やはり、建部の「定レル術ナシ」というのが影響を与えたのだろうか、残されている和算書に「百鶏術」は少ない。むしろ、「鶴亀算」自身を目出度い動物に代えることや、「率」を3にするという方向に努力している。

また、『九章算術』も余り一般的でなかったのか、「其率術」と「鶴亀算」「百鶏術」の関係は余り注意を引かなかったようである。

 一方、清では、戴震(1724-1777)によって『張丘建算経』も覆刻され[47]「百鶏術」は、盛んに研究された。反対に、「鶴亀算」は士大夫が論じるものとは考えられなかったのだろうか、ほとんど省みられることはなかった。

 西洋数学が中国数学に大きな影響を及ぼす以前、つまり明代以前は、「百鶏術」は「鶴亀算」からの発展と当時の数学者は考えていた。更にそれが、『九章算術』の「其率術」に繋がるとすれば、従来、不定方程式の一系譜と考えられていたこの系列は、実は、中国伝統数学のほとんどの時代に跨って伝承・発展してきた問題と言えるだろう。

 

図1 「鶴亀算」の系譜

『九章算術』→『孫子算経』→『張丘建算経』→『楊輝算法』

 「其率術」  「鶴亀算」   「百鶏術」  百鶏術の解説

              ------------------------------→『童蒙須知』

(率=1)   (率=2)                  (率=3)

 

図2 「百鶏術」の構造

「百鶏術」 1「鶴亀算」で未知数1つを0と仮定して1組の答えを求める

      2「張丘建算経術」で増減の比率を求め、1の答えを増減する

 

図3 不定(剰余)方程式の系譜

(天文学) →『孫子算経』   →     『数書九章』

        「孫子定理」(中国剰余定理) 「大衍総数術」

『九章算術』 →『綴術』?    →

「更相減損」法 分数近似           「大衍求一術」

 

図4 「大衍総数術」の構造

       1 2つの数を互に素にする

「大衍総数術」2 「大衍求一術」で、ax+by=1 を解く

       3 「孫子定理」で「上元積年」を求める

 

 

                  参考文献

白尚恕 (1983). 『九章算術注釈』. 北京: 科学出版社.

遠藤利貞 (1896; 1918, 1960, 1981).『増修日本数学史』. 東京: 恒星社厚生閣.

郭書春 (1990). 『九章算術匯校本』. 瀋陽: 遼寧人民出版社.

郭書春 (1992;1995). 古代世界数学泰斗劉徽.済南: 山東科学技術出版社. 1995. 台北: 明文書局.

平山諦(1983).「百鶏問題」『数学史研究』97

井上光貞(他編).(1976;1985).『律令』.日本思想大系3.岩波書店.

城地茂 (1987).「律令期の数学教育」『数学史研究』112: 13-21.

城地茂 (1988).「中国湖北省江陵県張家山遺跡出土『算数書』について」『数学史研究』 117: 21-25.

城地茂 (1991a).「日中の方程論再考」『数学史研究』 128: 26-34.

城地茂 (1991b).「更相減損法対関孝和影響」. 国際劉徽数学思想会議論文, 『北京師範大学学報(自然科学版) vol. 27, Sup. no. 3: 155.

城地茂 (1992).「英国王立協会蔵『算法童蒙須知』について」『数学史研究』 132:6-15.

城地茂 (1993).  The Influence of Chinese Mathematical Arts on Seki Kowa. PhD Thesis (London).

金容雲・金容局 (1978).『韓国数学史』. 槙書店.

加藤平左ヱ門 (1956-64). 『和算ノ研究』. 5 vols. 日本学術振興会.雑論 3 vols. 1956. 『方程式論」1957. 『整数論』 1964.

児玉明人 (1966). 『十五世紀の朝鮮刊銅活字版数学書』. 富士短期大学出版部.

李継閔 (1985).「“其率術”弁」(Pp.11-23 of 呉文俊()『中国数学史論文集1. 済南:山東教育出版社.

李継閔 (1990).『九章算術及劉徽注研究』. 西安: 陜西人民教育出版社.

李儼 (1937).『中国算学史』. 上海: 商務印書館.

李儼 (1933-47). 『中算史論叢』.4. 上海: 商務印書館. 第2集. (1954-5). 5. 北京: 科学出版社.

李儼・杜石然. (1976). 『中国数学簡史』. 香港: 商務印書館香港分館.

李兆華.(1991). 「時曰醇『百鶏術衍』研究」、Pp.123-132 of 李迪 (編)(1991)『数学史研究文集』第2輯、呼和浩特:内蒙古師範大学出版社、台北:九章出版社。

王瑜生. (1993). 「『百鶏術衍』提要」Pp. 1039-1041 of. 任継愈(編)(1993).

劉鈍. (1993). 『大哉言数』瀋陽: 遼寧教育出版社.

Needham, Joseph. (1954-). Science and Civilization in China. 7 vols. projected. Cambridge: Cambridge Univ. Press.

日本学士院 (編)(藤原松三郎). (1954).『明治前日本数学史』5巻. 岩波書店.

大矢真一 (1980).『和算以前』. 中央公論社.

小倉金之助 (1940).『日本の数学』. 岩波書店.

小倉金之助 (1973).『中国・日本の数学』. 頸草書房.

銭宝j (1921).「百鶏術源流考」.『学芸』3-3:1-6. Pp.17-21 of銭宝j (1983).

銭宝j() (1963).『算経十書』. 北京: 中華書局.

銭宝j (1964;1981).『中国数学史』. 北京: 科学出版社. 川原秀城(訳),1990.みすず書房.

銭宝j (1983).『銭宝j科学史論文選集』. 北京:科学出版社.

任継愈(編)(1993). 『中国科学技術典籍通彙』数学、5巻. 鄭州:河南教育出版社.

下平和夫(1964).「格致算書と円方四巻記」『数学史研究』第2巻第8号.

下平和夫 (1965-70).『和算の歴史』. 2巻. 富士短期大学出版部.

下平和夫 他 (). 1990-. 『江戸初期和算選書』. 5 vols.+ 研成社.

藪内清 (1974). 『中国の数学』. 岩波書店.

薮内清 (1979). 『中国の科学』. 中央公論社.

薮内清 (編)(1980). 『中国天文学・数学集』.東京:朝日出版社.

中外数学簡史編写組 ()(1986). 『中国数学簡史』.  済南: 山東教育出版社.

 

オンラインデータベース

台湾・故宮博物院、故宮寒泉古典文献全文資料庫 http://210.69.170.100/s25/index.htm

台湾・中央研究院漢籍電子文献 http://www.sinica.edu.tw/ftms-bin/ftmsw3



* 2000229日受理。本稿では 『二十五史』に中華書局本を用いた。これには、台湾・中央研究院の「漢籍電子文献」、台湾・故宮博物院の「故宮寒泉古典文献全文資料庫」によるオンラインデータベースを活用した。

** 台湾・国立高雄第一科技大学 National Kaohsiung First University of Science and Technology, Kaohsiung, Taiwan 824

[1] 1658年には、土師道雲、久田玄哲によって、1672年には、星野実宣によって覆刻されている(下平、1965-70,上:220)。

[2] 巻中、21丁表(佐藤健一氏蔵書)。

[3] 清代に覆刻された微波本(孔継涵刊行)が覆刻されたが、孔子の諱である丘を避けたために、張邱建算経とも言われている(劉鈍,1993:4)。『二十五史』には全部で12か所『張丘建算経』があるが、『旧唐書』巻44志24(p.1892)は、「張邱建算経」とあり、他は全て「張丘建算経」である(一か所「張立建」となっている(『宋史』巻207志160「芸文六」p.5271)が、これは「丘」の誤り(校勘記p.5320))。ただし、p.1892の部分が上海古籍出版社本(vol.5:229)では、「丘」となっている。

[4]日本学士院1954,2:282に指摘がある。『楊輝算法』朝鮮版本『続古摘奇算法』巻下13丁裏(児玉1966:77)。

[5] 『改算記』(山田正重、1659年)下巻第十、買物銭数程取事。本稿第6節参照。また、『百鶏術衍』(時曰醇、1861年)の問題も同様に100ではない。

[6] 数値は適宜変更可能で、組は方程式の数で、色は未知数の数である。

[7]加藤,1964: (整数論)33では、不定方程式として扱っている。

[8] 清代になると、駱騰鳳、『芸游録』では、「大衍求一術」を使って解いている。しかし、銭宝jが指摘するように、これは、『張丘建算経』の解き方ではない(銭宝j,1983:19)。

[9] 『孫子算経』巻下7丁表-(任継愈,1993 vol.1:243)の用語。

[10] 剰余方程式については、城地,1993、城地,1996参照。

[11] 中国暦で、仮想した紀元(上元)から暦を作った年までの年数。上元は甲子の年に始まるものとされるなど様々な条件から計算する。

[12] ユークリッドの互除法に類するもの。東アジアの数学では、最大公約数の計算から始まった。後に、近似分数の計算や、「大衍求一術」にも使われた。和算では、会田安明(1747-1817)が、無理数の分析に使っている。(城地,1991b

[13] 466年から484年の間とされる(銭宝j,1964:80-81,日88)。

[14] 『日本国見在書目録』(892年頃、藤原佐世)に書名が見える(日本学士院1954,vol.1:5 and 148-149)。これにも、3巻本となっており、現在のものと同じようなものであったことが伺われる。

[15] 『張丘建算経』巻下37丁表-(任継愈,1993 vol.1:293)

[16] 巻中は最後の数頁、巻下も最初の数頁が欠落している(銭宝j『張丘建算経』提要、任継愈,1993,vol.1:248)。

[17] 清代の駱騰鳳(1770-1841)、『芸游録』(1815)・丁取忠(1810-1877)、『数学拾遺』(1851年)、時曰淳(1807-1880)、『百鶏術衍』(1861)などに研究がある(銭宝j,1921;1983)。

[18] 『続古摘奇算法』巻下、1丁裏-2丁表(児玉,1966:77

[19] 関孝和は、1661年に『楊輝算法』を写本している。

[20] 劉鈍,1993:258-260

[21] 巻下1丁表〜2丁裏(児玉,1966:77)。

[22]『孫子算経』巻下7丁表-(任継愈,1993 vol.1:243)

[23]北京師範大学数学系の故、白尚恕教授より助言を頂いた。

[24]『九章算術』巻2(白尚恕,1983 :76-79)

[25]『詳解九章算法』(楊輝、1261年)、纂類17丁裏-18丁裏(任継愈,1993 vol.1:1012-1013)

[26]李継閔,1985:17.

[27]後漢の鄭玄の『周礼』注文に、鄭衆の説として、「九数、方田、粟米、差分、少広、均輸、方程、盈不足、旁要。今有、重差、夕桀、句股」とあり、後漢の時期に3つの分野が加わったことを示している(白尚恕、1983: 3 )。

[28]城地, 1988参照。

[29]銭宝j,1963:孫子算経提要。

[30]『新唐書』選挙志上には、「凡、算学。孫子、五曹共限一歳。九章、海島共三歳。張丘建、夏侯陽各一歳。周髀、五経算共一歳。綴術四歳。緝古三歳。記遺。三等数皆兼習之。」(算学。『孫子算経』、『五曹算経』2つで一年の修学期限とする。『九章算術』、『海島算経』は2つで3年。『張丘建算経』、『夏侯陽』はそれぞれ1年、『周髀算経』、『五経算術』は2つで1年とする。『綴術』は4年、『緝古算経』は3年とする。『数術記遺』『三等数』はいずれの班でも学習しなければならない。)とあり、唐令もこの順番であったと考えられる。

[31]『学令』算経の条(井上,1976:265-266)。

[32]銭宝j,1963:周髀算経提要。

[33]『学令』15書学生の条(井上,1976:266)。

[34] 算木の記述としては最古のものである。

[35] 復元した『倉庫令』2(井上,1976:407)。

[36] 城地,1987参照。

[37] 『緝古算経』には3次方程式の問題があり、『綴術』には、「開差冪、開差立」という術語があったことが分かっており(『隋書』律暦志)、「立」の部分は3次方程式と考えられる。

[38] 城地,1992参照。

[39]『算法統宗』巻9第27題(任,1993,vol.2:1351-2)には、九尾の狐と九頭一尾という怪鳥が、9匹7羽という問題もあるが、解き方は「方程」に近い。

[40] 筑波大学図書館には、曲直瀬正琳(1565-1611、養安院)の印のある『算学啓蒙』がある(児玉.1966:(解説)55)が、宇喜田秀家からの謝礼で、朝鮮の役で得られたものといわれる(同10)。.

[41] ,1993,vol.2:1351

[42] 下平,1990-,vol.2-2:52

[43] 下平,1965-70,vol.1:45.

[44]下平,1965-70,vol.1:81.

[45] 下平,1965-70,vol.1:112-113による。日本学士院,1954,vol.1:276によれば、「置物銭数取」とあるが、同書p.287には、「買物銭数程取事」とある。

[46]「張丘建算経術」を使うと、瓜を1増やし、茄子を9減らし、桃を8増やす関係が求まる。

[47] 1774年10月30日に戴震が段玉裁に宛てた書信の中で、『九章算術』『海島算経』『孫子算経』『五経算経』『夏侯陽算経』を『永楽大典』から発見した事を告げている。この後、『張丘建算経』なども校勘し、『算経十書』となった。