13.1.4 天象观测呼唤数学
东西方古代历法家为编制反映日月星辰运行规律的历法,都认识到周期及相关余数,只是时代不同、描述角度不同。
公元4世纪的《孙子算经》留下一个物不知数题。钱宝琮[8]指出了物不知数题的天文背景:“《孙子算经》里物不知数问题的解法不是作者的向壁虚造,而很可能是依据当时天文学家的上元积年算法写出来的。”
西方人引出了同余概念,着眼于同一周期的不同余数,与中国人追求多个周期齐同的观念不同。
高斯《算术研究》[9]评价类似孙子剩余定理的高斯剩余定理,说到同余概念历法起源:“这个用法起源于年序学问题,在确定儒略年时的小纪、黄金数和太阳循环周期为已知。”
众所周知,1734年,欧拉研究了不定方程和一次同余式组的解法。1801年,高斯写下《算术研究》,完善了同余理论,分别在1247年秦九韶《数书九章》之后的487年和554年。显然,欧拉和高斯并不知道中国人的工作。
同余理论是把双刃剑,在带给中国历法研究极大便利的同时,也可能掩盖原始思路。
《孙子算经》的物不知数题用同余符号表示,上升表述为孙子剩余定理,完全正确。但不能就此而认为,4世纪的中国人就是利用类似现代同余概念,轻松简捷地导出物不知数题的。因为此题数字不免产生多种解释。史料可以证明,从刘歆直到郭守敬以前,中国古代历法家并没有直接用同余理论去推演计算上元积年。
1247年的秦九韶自叹“数理精微,不易窥识,穷年致志,感于梦寐,幸而得之,谨不敢隐”。他当时究竟是怎样思考的?何况开禧历的“除乘消减”法,居然能求出元数,其间必有奥秘。
有清以来,研究者依仗的数学基础不同,对治历演纪三题的评价也就大落大起。
1842年,清代学者沈钦裴拘泥于传统数学的率,全盘否定治历演纪题:“气元率可以不设,下文元闰元数气等率蔀率因数朔积年皆误”,“以斗分与日法用大衍入之,与率不相通,此其所由误也。”
然而,秦九韶研究的开禧历的数学原理,经1966年钱宝琮先生[10]用近代数论解释,正确无误;严敦杰先生[11]用其来核算《明天历》(1064年),也是全合。
1983年何绍庚先生[12]对治历演纪术语作详尽的推敲、注释,启迪我们复原开禧历历家和秦九韶的自然思路。
我们从基本测量数据、基本概念出发,原原本本展示鲍浣之开禧历上元积年的计算思路,研究上元条件“甲子岁甲子日零时冬至合朔”的合理分划,剖析气元概念和秦九韶的著名断言“将来可用入元岁便为积年”。
秦九韶未曾想到,他的治历演纪三题为探索上元积年本原留下了史上唯一的证据。后世学者要想钻研中国古代历法的真谛,要想探索上元积年的本原,也只有踏踏实实理解治历演纪三题的原文原术原意。
显然,为探索其原始思路,我们只能沿用秦九韶前段术文常用的“以岁闰乘入元岁,满朔率去之,不满,为入闰”的公式表达法,分析时无法直接使用近代同余式理论符号:岁闰×入元岁≡入闰(mod朔率)。只有在分析完毕后,才能用同余式理论核算原始思路。
天象观测呼唤数学,推动数学,反过来,数学进步又深化了人们对天象的认识。东西方古代历法家为编制反映日月星辰运行规律的历法,都认识到周期及相关余数。
要想讲清中国历法家的自然思路,不得不仔细斟酌我们的用语,尽量接近原文、原术,以避免混淆。不能不注意,宋元著作思路、用语、表达与今天相距甚远,研究时往往可以发现,术文只是枝枝节节地报出了式子的各个组成部分,只字不提怎样从问题所给出的条件导出式子的思维过程。其中尤以秦九韶《数书九章》为突出。
有些词汇,如化成互素,有等价的词汇,称约后无等。要注意应用的场合,不宜混用。
有些词汇的内涵在历史上自行变动。如大衍术一词,秦九韶自己所用的内涵就太为广泛了。当年伟列亚力传到欧洲时,更扩大了此词的内涵。也有必要分清场合,明确不同用语。
含义不同的词汇,如《九章算术》五家共井题的方程一词,我们在叙述其原始思路,只能记为[不定]方程,以示沿用方程一词,但实质是不定方程。
秦九韶把数理上的不定方程和一次同余式混为一谈,误认为“所谓方程,正是大衍术。”在《数书九章·序》又称:“历家演法颇用之,以为方程者误也。”
在《数书九章·序》中,理解大衍术为一个可逆的过程。对原数,用著卦取余数:奇,抛弃众多的商。反过来,采用大衍术,就能察知隐藏的原数。
圣有大衍,微寓于《易》。奇余取策,群数皆捐。衍而究之,探隐知原。
描述中国传统不定分析知识时,很有必要根据文字记载中古人用语,采用满去式一词。
《数书九章》治历演纪三题中把除称为“满”,作减、除解:治历演纪题有“欲满约率三千一百二十而一”。算草有:“以所求中间年,上距前测年数,乘岁余,益入前测日刻分,满纪策去之,余为所求年气骨”。
历法概念常常用“不满”下定义:“满朔率去之,不满为入闰。满朔率去之,不满为元闰”,“以岁闰乘入元岁,满朔率去之,不满为入闰”。
治历演纪中最值得注意的用法是,讨论朔积年之奇分和闰缩时,数值相等,并不相同,“必满朔率所去故也”,就是说,还必须相对于同一个朔率,这才可以把假想平朔时刻上的时间点移到真实平朔时刻上,移动的值才一定相等,才有“朔积年之奇分与闰缩等”。
这个用法,接近于现代的同余一词,但还略有区别。
因此,为避免与现代数论的同余方程概念相混淆,我们提出含有未知数的满去式。求解满去式,就是求未知数。