ページの最終校正年月日 :

 記述された事実 -- 古代バビロニア

現在では「三平方の定理」の発見は古代バビロニアにさかのぼるものと思われています。 関連してノイゲバウアーの本に述べられていることを色々整理します。 なお Plimpton 322 と呼ばれる粘土板が登場しますが、Plimpton (プリンプトン) とは人の名前です。 この人が集めたコレクションに番号が付け加えられていて、「Plimpton 322」とは「プリンプトン コレクション」 の 322 番目のものという意味です。

文献
  1. B.L.van der Waerden, Geometry and Algebra in Ancient Civilizations, 1983, Springer Verlag (ISBN 3-540-12159-5)
  2. O. Neugebauer, The Exact Sciences in Antiquity, Dover
    (Dover 版は 1957 年に Brown University Press から出版された第 2 版を少しだけ修正して 再出版されたものです。)
  3. ボイヤー、数学の歴史、朝倉書店
ノイゲバウアーの本からの抜粋

ファンデル・ヴェルデンの本にノイゲバウアーの本を引用してあり、 最初はファンデル・ヴェルデンの方の簡単な引用を中心にして、ノイゲバウアーの 方は流し読みしていました。 しかし、そのうち色々ややこしくなったので、ノイゲバウアーの本の関連する箇所をきっちり読みました。 その結果、以下の箇所はこのページを書いた当初とは随分違うことになりました。 (2008 年 5 月)

ノイゲバウアーの本を整理すると、 謎に見えた点が非常にスッキリ解明されることになったので、 「plimpton 322 に関する補足 -- 謎の解明」の「その1」、「その 2」、「その 3」を付け加えました。 この箇所は私の個人の考えなので、読みたくなければ読み飛ばしてもらっても結構です。 (2008 年 6 月)

参考
ファンデル・ヴェルデンは「現代代数学」を書いた人として有名ですが、 数学史に関しても著書があります。ファンデル・ヴェルデンは学生時代にゲッチンゲンでノイゲバウアー (1899 - 1990) の講義を聞き、 それが数学史にかかわるきっかけだったようです。ノイゲバウアーは日本では余り知られていませんが Mathematical Review (数学の論文を紹介する雑誌) を作った人としてとても有名です。 ノイゲバウアーは世界中で発表される数学史の論文の内容を知りたいために 1931 年にシュプリンガー・フェアラーク社を説得して Mathematical Review の前身である Zentralblatt fur Matematik を作り、その編集者となります。しかし、ドイツでナチが権力を得るようになると、事態が悪化することになり、 ついにシュプリンガー・フェアラーク社は雑誌をナチの方針に合わせたものにするように要求し、 ここで編集者を辞職することになります。そのあと、米国に移住し、1940 年に現在の Mathematical Review を創刊します。しかし編集者としてとどまったのは 1945 年までのとても短い時間でした。 また 1980 年にはプリンストン高級研究所のパーマネント・メンバーとなっています。 以上、主に以下からの抜粋です。
Neugebauer biography

一応、三平方の定理に関連することを述べたいのですが、逆数の話などにも触れないと 肝心なことに行き着きません。

ノイゲバウアー (Neugebauer) の本 (The Exact Science of Antiquity) の第一章には 古代の数のことが語られ、その中に楔形文字の数字について触れられています。 時代と共に変化するようですが、次のようなものです。

Babylonian numerals - Wikipedia を縮小した画像
(もとの画像が jpg のため少しボケている)

絵からわかりますが、1 から 9 までの数は縦向きの楔 Y を個数だけ並べており、10, 20, 30,.. は横向きの楔 < を 個数だけ並べています。従って 60 進法とは言ううものの、基礎は 10 進法です。

第二章にバビロニアの数学のことが触れられています。 但しノイゲバウアーは「バビロニアの数学の歴史を語るつもりもなく、また完全な内容紹介をするつもりもない。」 と記し、更に「ここに述べることは現代の知識から特徴的であると思える点に触れるのみである」 と断っています。 扱われている対象は次の時期です。

  1. ハンムラビ王朝 (Hmmurapi Dynasty, BC 1800 - BC 1600)
  2. セレウコス王朝 (Seleucid Empire, 紀元前の最後の 3 世紀)

この間に言葉はかなり変化していますが、中身に関してはあまり変化がありません。 但し 401 のような数値の中間にあらわれる 0 を示す記号は、ハンムラビ王朝の頃はなく 空白で表示しただけですが、セレウコス王朝の頃には、この 0 を表す記号が登場しています。 また、計算の精度が向上しています。

逆数の表

数学に関連するテキストは、2 種類に分類されます。 一つが「表」 (table text) でもう一つが「問題」(problem text) です。 「問題」の方に関しては 100 個ほどの刻板 (粘土板) が残され、 「表」の方に関しては、その倍ほどの刻板が残されています。 バビロニアの刻板は全部では 50 万個ほど残されており、その一部が数学に関連することになります。

以下、簡単のため 60 進数は (22, 26,40) のように表すことにします。 これは 10 進表記では

22×602 + 26×60 + 40

の意味です。またバビロニアでは, 小数点の概念がなく、1, 60, 60×60,.. はすべて対等に扱われます。 これは非常に効率よく計算するための方法であったようですが、 説明に窮することがあるので、場合によっては便宜的に ; で小数点を表すことに します。例えば (1, 2; 3, 4) は次の数を表します。

1×60 + 2 + 3×60-1 + 4×60-2

今日、掛け算は九九を使用して、計算をしますが、バビロニアでは乗積表で計算をしています。 バビロニアは 60 進法を採用していますから、 0<a<60 に対して、 2 a, 3 a, .... , 59 a までの表が必要となります (これで 1 枚の刻板となる) が、 実際は

2 a, 3a, 4a, .., 18 a, 19 a, 20 a と、30 a, 40 a, 50 a

の表からなっているようです。 全部書いていないのは、この値がわかれば、あとは足し算ですむためのようです。

注意
小数点がないのは少し異常に見えますが、今日科学術計算では
1.234.. × 103
のように仮数部 (1.234..) と指数部に分けて表示し (浮動小数点表示)、この形で計算するのが普通です。 この方が計算がしやすいためです。バビロニアの数の表示では指数部が無視されているだけです。

非常に妙なことに、調べていくうちに a には (1,20), (1,30), (3,20), (3,45) など が登場し、更には (44, 26, 40) などが登場します。(44, 26, 40) は別の「逆数の表」に登場します。 逆数 (reciprocal) の表は、ほぼ次の表の第一欄と第二欄のようなものです。 互いに掛けて 1 になる数です。先にも述べたようにバビロニアでは小数点が無視されます。 そのため、理解しにくいので第 3 欄に第 2 欄の少数表記を付けています。

2 30 (0;30)
3 20 (0;20)
4 15 (0;15)
5 12 (0;12)
6 10 (0;10)
8 (7,30) (0;7,30)
9 (6,40) (0;6,40)
10 6 (0;6)
12 5 (0;5)
15 4 (0;4)
16 (3,45) (0;3,45)
18 (3,20) (0;3,20)
20 3 (0;3)
24 (2,30) (0;2,30)
25 (2,24) (0;2,24)
27 (2,13,20) (0;2,13,20)
30 2 (0;2)
32 (1,52,30) (0;1,52,30)
36 (1,40) (0;1,40)
40 (1,30) (0;1,30)
45 (1,20) (0;1,20)
48 (1,15) (0;1,15)
50 (1,12) (0;1,12)
54 (1,6,40) (0;1,6,40)
1 1 (0;1)
(1,4) (56,15) (0;0,56,15)
(1,12) 50 (0;0,50)
(1,15) 48 (0;0,489
(1,20) 45 (0;0,45)
(1,21)(44,26,40)(0;0,44,26,40)
注意
  1. 逆数表の第一欄に登場する a は 60 進法で 1/a が有限小数で表せるものです。 従って a の素因子には 60 の素因子 (2,3,5) のみしか現れません。つまり a は 次の形の数です。
    a = 2p 3q 5r
    このような数をノイゲバウアーは正則数 (regular number) と呼び、 それ以外の数を非正則数 (irregular number) と呼んでいます。
  2. どこかで古代バビロニアでは 次のような計算をしたと書いてあったと思います。
    1/13 = 7/91 ≒ 7/90
    90 は正則数ですが、ノイゲバウアーの本の「逆数の表」(ノイゲバウアーは「標準逆数表」と呼んでいる) には 載っていませんが、逆数はすぐにわかります。
    1/90 = 1/(1,30) = 2/(3,0)
    現代人の知識を使えば
    1/91 = 1/(90 + 1) = 1/(90(1 + 1/90)) = (1/90) (1 - (1/90) + (1/90)2 - ...)
    となり、1/90 = 0.011.. ですから上の近似では 1% 程度が誤差となり、あまりよい近似ではありません。
  3. あとで、読み直したときに本当にこんな方法でいつでも割り算の近似ができるのかな、と疑問になりました。 しかし、60 までの非正則数で素数であるものはほぼこの方法で近似できます。 a を 60 以下の非正則数で且つ素数であるとします。すると素数の表から a ≠ 43 であれば a+1 もしくは a-1 が正則数となることがわかります。a+1 = b が正則数であれば
    1/a = 1/(b - 1) = (b + 1)/(b2 - 1) ≒ (b + 1)/b2
    となり、逆数表で近似できます。 a-1 = b が正則数である場合も同様です。また 43 に関しては
    1/43 = 7/(43×7) = 7/301 ≒ 7/300
    となり、300 の逆数は簡単にもとまりますから、これもよいことになります。 上の式変形は古代バビロニア人でもできたと思いますが、素因子分解のことを前提にしており、 こちらの方が知られていなかったようなので実際はどうしたのか大いに疑問です。

逆数表の第一欄の数 a に対応する第二欄の数を a で表せば、乗積表と思われていたものは実は a b の表で、 割り算の表だったのです。セレウコス王朝の頃には、非正則数に関しても、最初の数桁が記された 逆数表ができるようです。

古代バビロニアでも次のような記述があり、数値の近似を考えていなかったわけではないようです。

(8, 34, 16, 59)<7,   (8, 34,18) > 7

実際には 7 = (8, 34, 17, 8, 34, 17,....) となります。

注意
  1. 60 進法での少数表記は次のようにして求められます。
    1/7 × 60 = 8 + 4/7    から下 1 桁目 8 
    4/7 × 60 = 34 + 2/7   から下 2 桁目 34
    2/7 × 60 = 17 + 1/7   から下 3 桁目 17
    
    以後循環します。
  2. 7 の計算が不正確ですから、 古代バビロニアの人は割り算が得意ではなかったようです。しかも循環小数も 知られていなかったようです。
三平方の定理

楔形文字で書かれた刻板には次のような図が描かれたものがあります (概念図、本には写真が載っています)。 一辺には 30 の数が記され、対角線には (1, 24, 51, 10) と (42, 25, 35) が記されています。 この意味は、 (1, 24, 51, 10) に 30 を掛けると -- 2 は 30 の逆数ですから 2 で割ることと同じ -- (42, 25, 35) となります。

つまり、一辺の長さ a = 30 と

から、対角線の長さ (42; 25, 35) が求められたことになります。 1.41421356 を 60 進数で表示すると (1;24,51,10,7..) となりますから、随分正確であったことになります。

以上で触れた刻板の写真が英語版の Wikipedia に載っていることに気がつきました。

Babylonian mathematics - Wikipedia
を縮小した画像

他にもこのような例が多くあり、3 平方の定理は古代バビロニアですでに知られていたことがわかります。

plimpton 322

プリンプトン 322 (Plimpton 322) は古代バビロニアの遺跡から発掘された粘土の刻板です。

Image : Primpton 322.jpg - Wikipedia を 半分にした縮小画像
(英語版 Wikipedia の画像は自由にコピーして使用できます。)

これは、次のような 60 進数の表です。 ノイゲバウアーがもとの表の若干の間違いを修正し、粘土板が壊れている場所に関しては 復元したものです。

I II (= b) III (=d) IV
(1,59,0,15) (1,59) (2,49) 1
(1,56,56,58,14,50,6,15) (56,7) (1,20,25) 2
(1,55,7,41,15,33,45) (1,16,41) (1,50,49) 3
(1,53,10,29,32,52,16) (3,31,49) (5,9,1) 4
(1,48,54,1,40) (1,5) (1,37) 5
(1,47,6,41,40) (5,19) (8,1) 6
(1,43,11,56,28,26,40) (38,11) (59,1) 7
(1,41,33,59,3,45) (13,19) (20,49) 8
(1,38,33,36,36) (8,1) (12,49) 9
(1,35,10,2,28,27,24,26,40) (1,22,41) (2,16,1) 10
(1,33,45) (45) (1,15) 11
(1,29,21,54,2,15) (27,59) (48,49) 12
(1,27,0,3,45) (2,41) (4,49) 13
(1,25,48,51,35,6,40) (29,31) (53,49) 14
(1,23,13,46,40) (56) (1,46) 15
注意
II, III におけるノイゲバウアーによる修正は
II,9  が (9,1) --> (8,1),         II,13  が (7, 12, 1) --> (2, 41), 
III,2 が (3,12,1) --> (1,20,25),  III,15 が (53) --> (1, 46) 

ノイゲバウアーは II 欄の b、III 欄の d はピタゴラス数で、次の方程式の整数解であると言っています。

d2 = a2 + b2

そこで b, d の 10 進表示を求め、上の式で a を計算すると次のように確かに整数となります。 見てわかるように、b は直角をはさむ短いほうの辺です。

10 進表示
a II (= b) III (= d) IV
120 119 169 1
3456 3367 4825 2
4800 4601 6649 3
135001270918541 4
72 65 97 5
360 319 481 6
2700 2291 3541 7
960 799 1249 8
600 481 769 9
6480 4961 816110
60 45 7511
2400 1679 292912
240 161 28913
2700 1771 322914
90 56 10615

ノイゲバウアーは plimpton 322 の I 欄は d2/a2 に等しく、 d2/a2 と d/a のグラフを描くと、ほぼ一直線上に並ぶと書いています。 本にはグラフが描いてありますが、エクセルでグラフを描くと次のようになります。

d, b が表の上の値から下の値に変化するとき、d/a は減少し、 角度 θ はほぼ 45 度から 30 度まで動きます。

ノイゲバウアーは、このページの最初に述べた「ピタゴラス数」の求め方の「方法 2」で以上の数値を 求めたのだと書いています。記号がややこしくなったので再度書き直すと

ピタゴラス数の求め方
d2 = a2 + b2 の整数解で、a, b, d の最大公約数が 1 であるとする。 (このためには a,b の最大公約数が 1 であればよい。) このとき a, b のいずれかが偶数となる。a が偶数であるとすれば a, b, c は次のように書ける。
a = 2 pq,   b = p2 - q2,  d = p2 + q2
但し p, q の偶奇が異なり、p > q > 0,  gcd(p, q) = 1

以上が成立すれば

p = ((d + b)/2) の平方根
q = ((d - b)/2) の平方根

となります。これで p, q を計算しようとすると、11 番目が整数となりません。 a, b, d の最大公約数が 15 で、1 ではないためです。しょうがないので b, d だけ末尾に 60 進数の 0 を 加えます。つまり b = (45,0), d = (1, 15, 0) と思って計算します。すると p, q の値は次のようになります。

  10 進表示
  p q
1 12 5
2 6427
3 7532
412554
5 9 4
6 20 9
7 5425
8 3215
9 2512
10 8140
11 6030
12 4825
13 15 8
14 5027
15 95
注意
  1. a, b の最大公約数を計算すると、11 番目と 15 番目が 1 ではありません。 11 番目はよくみると、数値の比は一番当たり前の 3,4,5 です。 15 番目の a, b の最大公約数は 2 で、そのため p, q が共に奇数となっています。
  2. 11 番目と 15 番目を除いては、ピタゴラス数の一般的な原始解の 解法から得られるものになっています。
  3. p, q はすべて「正則数」 (2, 3, 5 のみを素因子に持つ整数) になっており、 その逆数は 60 進法ではすべて有限小数になります。

plimpton 322 の第 I 欄の d2/a2 の計算は簡単でしょうか ? ノイゲバウアーは、この計算を次のように説明しています。

但し、p, q は それぞれ p, q の逆数ですが、計算には指数部も注意する必要があります。 この形であれば、p, q を「正則数」 (2,3,5 のみを素因子に持つ整数) の範囲に選べば、 60 進法では有限小数で表されることがわかり、d/a の計算結果を 2 乗するだけで結果を求めることが できます。つまり割り算をする必要がないのです。

plimpton 322 の最後のピタゴラス数は (a,b,d) = (90, 56, 106) です。 原始解にしてしまうと (45, 56, 53) となります。 これでは a が奇数となります。 z/a の計算ができるためには a = 2pq でないといけないのです。 従って古代バビロニア人は原始解を求めているわけでないことがはっきりします。

注意
p, q の値で「標準逆数表」に載っていないのは、p = 125 のみです。 ノイゲバウアーは p = 125 は標準逆数表には載っていないが逆数計算では 標準的な実例として知られていたものである、としています。逆数は簡単に求めることが出来ます。 実際 125 は 60 進表示では (2, 5) でこれを 12 倍すると (25, 0) となり、これは標準逆数表に載っています。だから 25 の逆数に 12 を掛けるだけで求まります。

しかし、上の式を使用しても plimpton 322 の I 欄を実際にチェックするにはかなり大変なことになります。 ここまではエクセルの表計算でことをすましていたのですが、 桁あふれするので計算機プログラムを使用しないといけないことになりました。 Java の倍精度整数 (long, 64 ビット) を使用すれば、整数の範囲で処理できるであろうと 考えたのですがそれでも桁あふれしたので、 無限精度 (BigInteger) を使用しないといけなくなりました。 その結果、I 欄の間違いを見つけてしまいました。 ノイゲバウアーは本の中で指摘していないと思いますが、

I 欄の間違い
I 欄の 8 番目の数値は次のようにしないといけない。
1, 41, 33, 59, 3, 45 --> 1, 41, 33, 45, 14, 3, 45
見てわかるように、足し算をするときに桁を間違えたようです。
2 次方程式の解法とピタゴラス数

ノイゲバウアーは古代バビロニアのピタゴラス数の求め方を推論する前に 古代バビロニアの 2 次方程式の解法を説明しています。

現代の言葉では、未知数 x, その逆数 x 及び数 b が 与えられているとき、次から x を求めよという問題があります。

x x = 1,    x + x = b

問題では b = (2; 0, 0, 33, 20) としています。そして、次のように計算しているそうです。

注意
平方根が有限小数で計算できていますから、解答の方が先にあったようです。
上の 2 次方程式の解法には次が必要となります。

(x - y)2 = (x + y)2 - 4 xy

従って、この公式は古代バビロニアで知られていたことがわかります。ノイゲバウアーには説明が書いてありませんが、 次のように考えれば、当たり前です。一辺が x+y の正方形から, 辺の長さが x,y の長方形を 4 個切り取れば、一辺が x-y の正方形ができる。

このようなことから、2 次方程式の解法は

の形に持ち込み、更に次の連立一次方程式に持ち込んでいることになります。

ノイゲバウアーは同じ考えが、ピタゴラス数を求めることにも使用できるといっています。 最初に連立一次方程式

d = x + y
b = x - y

から出発します。もしも a2 = 4 xy が成立すれば

d2 = a2 + b2

となります。x, y が平方数であれば a が整数となります。そこで

x = p2,   y = q2

とすれば

d = p2 + q2,  b = p2 - q2,  a = 2 pq

がピタゴラス数となります。一応これで、ピタゴラス数を決定できた理由を説明することが可能となります。

注意
  1. ノイゲバウアーは本の中で古代バビロニアでは
    p2 = 2 q2
    が解を持っていないことを知らなかったのではないかと記述しています。 これが正しければ、古代バビロニアでは素因子分解の事実が知られていなかったことになり、 ノイゲバウアーの議論がより信頼性を持つことになります。
  2. ここで問題としているところは、三平方の定理が古代バビロニアで知られていたか否かという点で、 Plimpton 322 の刻板のことを前提とすれば、ものすごく熟知していたという結論を出してよいと思います。 従って、当然、古代バビロニア以前に三平方の定理が知られていたと結論して差し支えないと思います。
plimpton 322 に関する補足 -- 謎の解明、その 1

逆数の表から plimpton 322 の表ができたようですが、 どのようにして p, q の組を選んだのか疑問になります。

そこで、自分で計算してみようと考えました。 まず古代バビロニアでは素因子分解のことが知られていないようです。 これは感覚的に納得できることです。古代バビロニアでは小数点の概念がないようなので 60 進数の (7) と (7, 0) は 同一視されています。(7) は素数ですが (7, 0) は素数ではありません。だから互いに素という概念も 明確ではなかったかもしれません。従って gcd(p, q) = 1 という条件を付けずに (p, q) の組を考えます。 また p, q の偶奇が異なることの条件も付けないことにします。

古代バビロニアでは掛け算に表を使用しましたが、次のようにして掛け算をしています。

ab=((a + b)2 - a2 - b2)/2
ab=((a + b)2 - (a - b)2)/4

従って、平方数の表が必要となりますが、それ以前に 2 で割ることをよくしていたであろうと 判断できます (2 は正則数)。 従って、偶数、奇数ぐらいの区別は付いたであろうと思われます (1 桁の奇数を 2 で割れば有効桁数が 2 桁になります)。

また (p, q) と (ap, aq) の 2 つの組からは本質的に異なる解が求まらないことも知っていたとします。 そこで p, q のどちらも偶数の場合は除いても差し支えないと考えました。

そこで次のことを考えます。

逆数表に登場する正則数で、偶数全体を A, 奇数全体を B とします。
A = {2, 4, 8, 16, 32, 64, 6, 12, 24, 48, 18, 36, 72, 54,
    10, 20, 40, 80, 50, 30, 60}
B = {1, 3, 9, 27, 81, 5, 25, 15, 75, 45}
そうして、次のようにして p, q を決めます。
  1. s∈A, t∈B に対して、  s>t ならば p=s, q=t,  s<t ならば p=t, q=s  と置く
  2. s, t∈B で s>t となるものを選び  p=s, q=t  と置く
以上のように (p,q) の組を選んで
d = p2 + q2,  b = p2 - q2,  a = 2pq
と定め、w = d/a を計算し、
√2 >w>2/√3
となる場合を列挙し w = d/a の大きさで降順に並べます。この中の一部が plimpton 322 の表にあるはずです。

以上のようにして表を作成すると次のようになります。d/a は近似値で、最後の欄は d/a の近似値から 60 進数の下 2 桁まで計算したものです (切捨て)。

p, q の一方が奇数、他方が偶数のとき
  p q a b d d/a  
112 5 120 119 1691.408333333(1;24,30)
236151080107115211.408333333(1;24,30)
360253000297542251.408333333(1;24,30)
464273456336748251.396122685(1;23,46)
575324800460166491.385208333(1;23,6 )
6 9 4 72 65 971.347222222(1;20,50)
72712 648 585 8731.347222222(1;20,50)
881365832526578571.347222222(1;20,50)
945201800162524251.347222222(1;20,50)
1020 9 360 319 4811.336111111(1;20,9 )
1160273240287143291.336111111(1;20,9 )
1254252700229135411.311481481(1;18,41)
133215 960 79912491.301041667(1;18,3 )
142512 600 481 7691.281666667(1;16,54)
1575365400432969211.281666667(1;16,54)
1681406480496181611.25941358 (1;15,33)
17 2 1 4 3 51.25 (1;15,0 )
18 6 3 36 27 451.25 (1;15,0 )
1918 9 324 243 4051.25 (1;15,0 )
2054272916218736451.25 (1;15,0 )
2110 5 100 75 1251.25 (1;15,0 )
2250252500187531251.25 (1;15,0 )
233015 900 67511251.25 (1;15,0 )
2448252400167929291.220416667(1;13,13)
2515 8 240 161 2891.204166667(1;12,14)
2645242160144926011.204166667(1;12,14)
2775406000402572251.204166667(1;12,14)
2850272700177132291.195925926(1;11,45)
2916 9 288 175 3371.170138889(1;10,12)
3048272592157530331.170138889(1;10,12)
3180457200437584251.170138889(1;10,12)
p, q が共に奇数のとき
1 9 5 90 56 1061.177777778(1;10,40)
22715 810 504 9541.177777778(1;10,40)
381457290453685861.177777778(1;10,40)
445252250140026501.177777778(1;10,40)

明らかに d/a の値から重複しているものがわかります。つまり gcd(p, q) = 1 の条件をつけなくても d/a の値から重複しているものがすぐにわかります。60 進数で厳密に計算すれば、有限小数で表されますから、 そこまですれば明らかとなりますが概算から等しくなるものの見当が付きます。 例えば、p, q の一方が奇数、他方が偶数のとき、1, 2, 3 番目は同じです。

現代人は 1, 2, 3 番目の (p, q) の比率が同じであることはすぐにわかりますが、 これは九九を覚えているため暗算ができるためです。古代バビロニア人は 主に表で計算していましたから、暗算はできないはずです。しかし d/a まで計算すれば、 どれが同じ比になっているかは判断をすることができます。

重複を取り除いて、番号を付け替えると次のようになります。

p, q の一方が奇数、他方が偶数のとき
  p q a b d d/a  
112 5 120 119 1691.408333333(1;24,30)
264273456336748251.396122685(1;23,46)
375324800460166491.385208333(1;23,6 )
4 9 4 72 65 971.347222222(1;20,50)
520 9 360 319 4811.336111111(1;20,9 )
654252700229135411.311481481(1;18,41)
73215 960 79912491.301041667(1;18,3 )
82512 600 481 7691.281666667(1;16,54)
981406480496181611.25941358 (1;15,33)
10 2 1 4 3 51.25 (1;15,0 )
1148252400167929291.220416667(1;13,13)
1215 8 240 161 2891.204166667(1;12,14)
1350272700177132291.195925926(1;11,45)
1416 9 288 175 3371.170138889(1;10,12)
p, q が共に奇数のとき
1 9 5 90 56 1061.177777778(1;10,40)

驚くべきことに plimpton 322 の表とほぼ一緒です。違う点は

  1. (p, q) = (125, 54) に対応するものがない。(これは当然で p は 81 までの正則数ではないからです)
  2. ピタゴラス数 (3,4,5) の直角三角形に対応するものが plimpton 322 では (60, 45, 75) と なっていること
  3. 上の表の (p, q) = (16, 9) に対応するものは plimpton 322 にはないこと

だから古代バビロニア人は、全部計算したのに相違ありません。その結果、 d/a を大きさの順に並べると、ほぼ一定間隔に並んでいるのに気が付いたのでしょう。

(p, q) = (125, 54) は出ていませんが、これもそれほど不思議ではないかもしれません。 81 までの正則数から計算をしたのですが、「よく知られている正則数」からはじめていれば (125, 54) が見つけられることになります。


以上は、強引に簡単な計算機プログラムからチェックしたのですが、 もう少しまともな方法でも調べることができます。古代バビロニア人が 2 次方程式を 解くことができることに注意します。

d = p2 + q2,  a = 2pq,  b = p2 - q2  (p>q>0)

より

d/a = (1/2)(p/q + q/p)

となり、ここで t = p/q (>1) と置けば

d/a = (1/2)(t + 1/t)

となります。辺 d と辺 a を挟む角が 45度より小さく、30度より大きいためには、 d/a<√2 且つ d/a>2/√3 となればよく、これに関しては

補題
  1. d/a<√2 であれば 1<t<√2 + 1
  2. d/a>2/√3 であれば t>√3
証明  1 に関しては
(1/2)(t + 1/t)<√2

により

t2 - 2√2 t + 1<0 ......(A)

t2 - 2√2 t + 1=0 を解くと t=√2±1 であるから (A) より 1<t<√2 + 1

2 に関しては

(1/2)(t + 1/t)>2/√3

により

t2 - (4/√3) t + 1>0 ......(B)

t2 - (4/√3) t + 1=0 を解くと t=1/√3 or √3 となるから (B) より t>√3 となる。■

注意
古代バビロニア人には平方根の記号がありませんから、(d/a)2<2, (d/a)2>4/3 のような式でないといけません。従って、t2 に関しての 2 次式となり、 得られる条件式は t2<2√2 + 3、t2>3 になりますが、本質的には変わりません。

1 の条件で削除される組合せは次の表で、スラッシュ/で表示し、 2 の条件で 削除される組合せ\で表示されています。大きいほうが p、小さいほうが q となります。 また、p, q が共に奇数の場合の組合せでは、表の対角線以下が不必要となります。

p, q の偶奇が異なる組合せ
  1 3 5 9152527457581
2
4
6
8
10
12
16
18
20
24
30
32
36
40
48
50
54
60
64
72
80
p, q 共に奇数となる組合せ
  1 3 5 9152527457581
1 
3  
5   
9    
15     
25      
27       
45        
75         
81_         

以上から、少々計算さえすれば plimpton 322 のピタゴラス数は手書きの計算で求めることが出来ることが 判明したことになります。

結論 -- プリンプトン 322 の謎の解明
  1. 古代バビロニアで 3 辺の比 d : a : b が異なるピタゴラス三角形を構成したかったと考えます。 このためには d : a が異なるピタゴラス三角形を探すだけで十分となります。 ところが、古代バビロニアでは比例がありません。少数表示で比較する以外に方法がありません。 従って d/a が有限小数となるもので、この小数値が違うものを列挙しようとしたのだと考えることができます。 だから正則数から始めないといけなかったと考えることができます。
  2. また、2/√3<d/a<√2 となる、ピタゴラス三角形を列挙したいとします。 古代バビロニアでは平方根の記号がないですから、この条件は 4/3<(d/a)2<2 と書く以外にありません。 だから、(d/a)2 の欄がないといけなかったと考えることができます。
  3. plimpton 322 の表を見て愕然とするのは、極めて大きなピタゴラス数が出ていることです。 そして、これは古代バビロニア人が知っていたピタゴラス数のごく一部であると考えるためです。 しかし、以上の考えから推し量られる点は、古代バビロニア人は plimpton 322 の表以外の ピタゴラス数で角度が 45 度と 30 度の間にあるものは ほとんど構成できなかったと考えるほうがより正確ではないかと思います。 比が異なるかどうかを判定できなかったためです。
plimpton 322 に関する補足 -- 謎の解明、その 2

古代バビロニア人は、基本的に逆数表から、ピタゴラス数を求められるだけ求めたのだということが わかりましたが、 少しだけ、まだ謎が残っています。どのようにして (p, q) = (125, 54) の組を求めたのでしょうか ?

色々考えた末、Plimpton 322 の刻板に関連する (p, q) は、 p/q を計算して大きさの順に並べると ほぼ等間隔でないといけないことに気がつき、例によってエクセルでプロットしました。

確かにほぼ等間隔で、そのためグラフがほぼ直線になっています。 もう一点必要です。それは y = (1/2)(x + 1/x) が √3<x<1+√2 の範囲で ほぼ直線でないといけないという点です。また、これの 2 乗のグラフも同様であってくれれば 望ましいことになります。 そこで、関連するグラフを 描いてみました。画像をクリックすると大きな画像が表示されます。

だいたい思っている通りでした。 つまり、Plimpton 322 の第一欄の (d/a)2 の値が等間隔であるというよりは、 むしろ、p/q を計算すると、これが等間隔であるというほうが正解なのです。

注意
上のグラフからは y = (1/2)(x + 1/x) が √3<x<1+√2 の範囲でほぼ直線ですが、 これの 2 乗のグラフは少し曲がっています。しかし、これは無視できることかもしれません。 また、plimpton 322 には、辺 d と辺 a が挟む角度を 30 度までにしています。 より小さい角度の場合は 1<x<√3 の場合の y = (1/2)(x + 1/x) のグラフの上にあります。 この箇所はグラフはかなり曲がっています。古代バビロニア人はこれに気が付いていた可能性があります。 30 度までにした理由の一つに、y = (1/2)(x + 1/x) がほぼ直線になっていることがあるかも知れません。

こうなると (p, q) = (125, 54) の組を求めた方法は極めて単純となります。 わかっていた点は (p, q) の直前の組 (75, 32) と直後の組 (9, 4) です。 実際の数値を使うより、式を使うほうが考え方が鮮明になるので、 直前の組を (p1, q1)、直後の組を (p2, q2) とします。このとき、求めたい (p, q) の組は、次の条件を満たさないといけません。

p/q≒ (p1/q1 + p2/q2) / 2

つまり古代バビロニア人は線形補完をしたのであろうと憶測しました。 古代バビロニア人は、グラフを描くことはできなかったでしょうが、前後の数値から、 こうすればよいと判断したのではないかと思われます。

上の p/q の値は 2 よりも少し小さな数です (10 進表示で 1.93..)。 (p, q) の組をどうしたら求められるでしょうか。 この時点で標準逆数表の中にこのような組はありません。 そこで、これ以外の組を探すときに、まず真っ先に探す場合は小さいほうの正則数 q が 標準逆数表に載っている場合 (81 までの正則数) です。

標準逆数表に載っていなくてもやさしく扱うことができるのは 有効数字が 2 桁の 60 進数であっても、正則数を掛けると 有効数字が一桁の正則数になるものです。 このような正則数は 1 桁目がかなり小さなものです。 また (1, 0) よりも少し大きな箇所は標準逆数表に含まれています。 そこで 60 進数 (2,0) よりも少し大きな箇所で このような 60 進数を探すと (2, 2) を 30 倍すると、(1, 1, 0) で再び有効数字 2 桁になりますから、 これは排除します。もっともこれは正則数ではありません。その次から見ていくと

  正則数倍 正則数
(2,3)20 倍すると (41, 0)×
(2,4)15 倍すると (31, 0)×
(2,5)12 倍すると (25, 0)

そうすると (2,5) が最初の候補になります。 従って q = 54 に行き着くのにさほど時間が必要ではないと思われます。

実際の計算には、大小関係で大雑把に評価するほうがよいでしょう。 p1/q1 = 75/32, p2/q2 = 9/4 ですから、 探すべき (p, q) はそもそも次を満たす必要があります。

9/4<p/q<75/32

古代バビロニアではどうしたのかはっきりしませんが、 例えばすべての逆数を取ってから、全体に p を掛ければ、ここから

(32/75)p<q<(4/9)p

のように式が変形されるはずです。p = 125 とでもしてみれば、瞬く間に q = 54 がでてくるはずです。

plimpton 322 に関する補足 -- 謎の解明、その 3

表の作り方がわかってしまっても、謎の全てが明らかになったわけではありません。 恐らく最大の謎はこの表が何を目的にしたものであったのかという点です。 三角関数の表であるとか何とか、色々取りざたされましたが、もうここまで来ればこれはもはや明らかです。

plimpton 322 の表は、二次方程式の解を求めるための表です。 plimpton 322 の表の左側は脱落してしまって、そこに何が書いてあるかがわからなくなってしまっています。 しかし、恐らく全体の表は次のようなものであったと思います。

p qt=p/q (t+1/t)/2 ((t+1/t)/2)2 b d  
12 5t1c1c12 b1d1 1
6427t2c2c22 b2d2 2
...... .. .. .. .. ..
...... .. .. .. .. ..
             
9 5t15c15c152b15d1515

右の 4 つの欄のみが現存していますが、左側には p,q を書いた欄, t= p/q を書いた欄、そして (t + 1/t)/2 を 書いた欄があったはずです。二次方程式

c = (x + 1/x)/2

が与えられたとします。但し c15<c<c1 でないといけません。このとき

ci+1<c<ci

を満たす i がわかれば、二次方程式の解で 1 より大きいものを t とすると

ti+1<t<ti

となります。これで解の大きさの概略がわかり、必要であれば線形補完をします。つまり 次の式で解を求めます。

(t - ti+1)/(ti - ti+1) = (c - ci)/(c1 - ci+1)

しかし、これで完全にうまく行くわけではありません。古代バビロニアでは分母に来るのは正則数でないと だめだからです。そう考えると、区間 [ci+1, ci] を等分して、 どこに c が来るかで判断して、解の近似を求めたと考えるほうが正しいようです。

以上のように考えて差し支えないと思え、 いくらでも根拠を挙げることができそうですが、 例えば次のようなことを主な根拠として挙げる事にします。

  1. 標準逆数表から求められるすべての (p, q) の 組から得られるものが表に載っているわけではなく、 1 つ削除して、p/q がほぼ等間隔になるようにしたこと。
  2. 更に、等間隔になるように、標準逆数表以外の正則数を使用し、 該当する (p, q) を求めるために線形補完を使用したであろうこと。

なお、((t + 1/t)/2)2 の欄の事には触れませんでしたが、これは 古代バビロニアで平方根の記号がないため、余分にこの欄が必要であったのでしょう。

√c = (x + 1/x)/2

のような問題を考えることはできず、その代わりに次を考えただけだと思います。

c = ((x + 1/x)/2)2

見方によってはまだ問題が残っているかもしれません。plimpton 322 が二次方程式の 解の表であるのであれば、第 II 欄、第 III 欄は必要性がないのではないか、 何故、あえて表に付ける必要があるのか、といった疑問です。 恐らくは、最初は色々なピタゴラス数があると数学の問題を作るのに便利なので、 これを列挙しようとしたのでしょう。実際に計算をしてみると、 二次方程式の解の近似に使用できることに気づき、現状のようになったのだと思います。 幾つか根拠があります。第 II 欄、第 III 欄には間違いがあります。 第 II 欄、第 III 欄の数値を実際に使用することがなかったため、 間違いが紛れ込んでも放置されたのだと思います。必要性がなかったのです。 また、第 I 欄に関しても間違いがあります。この間違いは 60 数表示で、 小数点以下 3 桁の間違いです。間違いがあっても気が付かなかったのは、 これも必要性がなかったためです。大雑把な解の近似をするのであれば、 まさしくこの必要性はありません。

円周率

円周率のことは直接三平方の定理に関連はしませんが、興味あることがノイゲバウアーの 本に述べられています。1950 年の E.M.Bruin の発見に基づくもので、 古代バビロニアの刻板の一つに記されている内容は次のように読み取ることができるそうです。

自然数 n に対して、正 n 角形の面積を An, 一辺の長さを sn とすれば

A5 = (1;40) s52
A6 = (2;37,30) s62
A7 = (3;41) s72

更に、c6 を正六角形の周囲の長さ、c を円周の長さとすると、

c6 = (0;57,36) c

と書かれている。c6 = (3/π) c であるから、最後の式は次の近似式を意味します。

π ≒ (3; 7, 30) = 3 1
8
注意
半径 1 の円に内接する正六角形の周囲の長さは 6、円周の長さは 2π ですから、 c6/c = 6/(2π) = 3/π

A5, A6, A7 の関係式は、ヘロンの Metrica の XVIII 巻から XX 巻までの正多角形の取り扱いと完全に一致しました。 そのため、バビロニアの数学のテキストの解読から ヘロンの Metrica はギリシャ以前の数学と 密接に結びついていることが明らかとなりました。

正多角形の取り扱いには当然「三平方の定理」が必要ですから、ギリシャにおける「三平方の定理」はギリシャ以前の遠い昔にさかのぼることが できても不思議ではないと思います。

ヘロンの Metrica にはよく知られたヘロンの公式が載っています。ヘロンの公式はアルキメデス (おおよそ BC 287 - BC 212) までさかのぼることができるようですが、 実は、ずっと古い時代から知られていたかもしれません (Heron's formula - Wikipedia を参照のこと)。 ヘロンの Metrica は古い時代の数学をまとめたものとされています。

ヘロンの公式
a, b, c を三辺とする三角形の面積を S とすれば
参考
ヘロンは「アレクサンドリアのヘロン」 (Heron of Alexandria or Hero of Alexandria) と呼ばれ、おおよそ紀元 10 年から紀元 70 年の人とされています。 (Hero of Alexandria - Wikipedia) ヘロンの著作物は大半が講義録です。
関連したこと

ピタゴラスの定理に関連したことをもう少し付け加えます。 前節で述べたように古代バビロニアには文字式はありませんでしたが、因数分解に相当することを 図でしていたようです。 「ユークリッド原論」の「解説」は、 ノイゲバウアーが古代バビロニアの「幾何学代数」とも呼ぶべきものと 「ユークリッド原論」の第 2 巻を比較したことに言及し、更に次のように述べています。

これによって、現在では、第 2 巻の内容はバビロニア代数学のギリシャにおける理論化と 考えられ、「幾何学代数」が一つの確かな数学史概念として定立されたのである。

ボイヤーには古代ギリシャの色々な人たちがエジプトやバビロニアに 足を運び知識を吸収したことが書かれています。 ファン・デル・ヴェルデンは、 古代バビロニアは 60 進法で古代ギリシャが 10 進法であるから 古代バビロニアの知識がそのまますべて古代ギリシャに 伝播したと考えることは少し困難ではないか、と指摘しています。

ファン・デル・ヴェルデンはむしろ、古代文明には共通の数学の起源があったのではないか と推論しています。もう少し、ファン・デル・ヴェルデンの話を続けましょう。