阴阳家与天文历算

    太史公司马谈“论六家要旨”把阴阳家列为六家之首,虽然评价并不最高,也还是一种特 别表示。没有任何直接的资料依据,但事实上很明显存在一个理由,那就是司马氏祖传世袭的 专业是天文历算,阴阳家则是先秦诸家中唯一专精于天文历算的一家。也许,阴阳家的主要学 术内容直到司马迁都是在这领域的主导,而司马迁则是这一学派的正宗传人。《汉书·艺文志》 引用刘歆的《七略》开列了当时的书目,一共有不到六百部书。这种书目在现代是开不成了! 那六百种中很多都已失传。其中阴阳家有21部,第一部就是《宋司星子韦》,第四和第五是 《邹子》和《邹子终始》。这邹子应即为邹衍。齐有三邹,邹忌不是阴阳家,邹奭名气小,后面 第十二部就是《邹奭子》。其中《容成》、《张苍》两部也是今人能断定内容为历算的书。刘 歆为这21家所作评介是:“阴阳家者流盖出于羲和之官。敬顺昊天,历象日月星辰,敬授民时, 此其所长也。及拘者为之,则牵于禁忌,泥于小数,舍人事而任鬼神。”司马谈也说阴阳家特长 是“序四时之大顺”。
    这是天文历法专业并附带星占的一家。
    天文学虽然是历史上最早形成理论体系的自然科学,但直到汉武帝时代也没有什么详尽 的文献资料流传下来。《礼记》的“夏小正”和“月令”二篇以及《吕氏春秋》中几乎与月 令相同的文字不能叫天文学理论。另有一部《石氏星经》,一来只是恒星方位数据表,二来其 内容也不像先秦之作。这书原录存于唐代天文星占之书《开元占经》,而《开元占经》一度 失传,明万历中在一尊佛像的肚子里发现了一套,就又就传下来了。石氏名石申夫(或石申) 战国魏人,天文家。而书中数据从岁差分析却多数是汉代的。至于历法,汉武帝之前没有专门 资料传下来,今人只凭一些零星数据进行猜测,秦汉之际靠马王堆出土的帛书的五星观测记 录,以及其它少量考古的和史书的数据作研究。春秋时代只有《春秋》经文和《左传》中纪 日纪月纪年以及日食等资料,其中日子以干支排序没有错,月份如能断定记录无错,则有可能 以数序推理判断哪年有几个月(12个还是13个),闰月是排在年尾还是年中……。仅此而已。 至于专门的数学,现存最早的就是出土不久的《算术书》,据李迪先生说法为汉初张苍之作, 也许就是刘歆开列的《张苍》。
    先秦诸侯国都有天文星占专家。《晋书》说:“鲁有梓慎,晋有卜偃,郑有裨灶,宋有子韦, 齐有甘德,楚有唐昧,赵有尹臬,魏有石申夫,皆掌著天文,各论图验。”甘德(一说为楚人)和石 申都有著作,失传了,刘歆也没开列,只在《史记》引用了他们的著作。梓慎是鲁人,恰当《春 秋》之时,《春秋》本即鲁国之史录,故梓慎事迹稍多录存于《左传》。
    例如:公元前545年,鲁襄公二十八年“春无冰”。周鲁历法的“春”(正、二、三月)实 为冬(现行农历之十一、十二、正月),否则春无冰也不奇怪。梓慎预言宋郑要发生饥荒了: “岁在星纪,而淫于玄枵,以有时灾,阴不堪阳,蛇乘龙。龙,宋郑之星也,宋郑必饥。玄枵虚中 也。枵,耗名也。土虚而民耗,不饥何为。”
    “岁”是木星,星纪和玄枵各为黄道上十二次(十二个分段)之一,相当于黄道十二宫的摩 羯座和宝瓶座,对应廿八宿的牛女虚危。“淫于”是超位,本应在牛女,却跑到虚危去了。这年 果然大旱。这是一个星占事例典型,这类记录都说灵,令人怀疑其真实性,或许有筛选,不灵就 不记了。今人可以精确推算,看看那年木星是否真在虚危之位。
    很早就知道木星运行周期约12年一周天,每年历经黄道十二次之一。可能早自西周即用 木星方位纪年,故名之曰岁。传说武王伐纣,“岁在鹑火,月在天驷,日在析木之津”(《国语》)。 武王伐纣没有年代记录,今人认为《国语》是战国之书,所以这些话也只是战国人的说法,早 不过春秋。岁星周期准确值为11.86年,而且中间还会兜圈子,这都会使古人认为这个天体的 运行不是绝对“有常”,可是人们还是用它纪年,这说明人们对“天行有常”的认识由于没有 精密知识而有很大的保留。这是星占流行的条件。 公元前521年《春秋》:“秋七月壬午朔,日有食之。” 《左传》记昭公问梓慎吉凶,他回答:
    “二分二至日有食之不为灾。日月之行也,分,同道也,至,相过也。其他月则为灾,阳不 克也,故常为水。”
    其意为:日和月二者运行的轨道,春秋二分是既在黄道(日道)上,也在赤道(日道的中间 圆)上,日月都在其平均中位处,冬夏二至走到了南北极限,它们在竞相超越。这些位置发生日 食是正常现象,其它月份日食是阳不克阴,要发水。这条预言未涉及当时灵不灵,但其言论反 映其认识。《春秋》七月朔是现行农历五月初一,这个月里有夏至。梓慎所持天地模型是盖天 说,即天在上、地在下,都是无限大平面。日月则附在天平面上运行。他们不能用像地心说那 样的几何的和物理的原因解释日食,只能说阴阳相克。在这种模型中对月行轨道的几何本质 也无法捉摸,月亮忽南忽北,看不清规律性。对月行总不出黄道六度之外这一点也不清楚,因 为没有天球概念,也就没有球面三角学意义上的“度”了。梓慎说日与月在二分同道,那么其 它时节就不“同道”。然而,他的“同道”只能是指同在平均位上,而从浑天说、地心说或日 心说来看,日月总是不同道。
    《春秋》记载了36次日食,加上续经一次,共37次。大多数有干支纪日,都可以用较精 密的历法推算证明其记录之正误。很明显的事实是:春秋后半叶比前半叶记录完整得多。
    然而襄公二十一年连记九月和十月两次日食,其中十月为误。过三年又连记七月和八月 两次日食,其中八月为误。此外还有两条误记,三、四条有月份错误。按这种记录作历法水平 判断,前人有以传抄之误这种理由作解者,不能令人信服。因为那时编史人都是历法家,记录 中的纪日干支也不像抄错。无论如何,这当然说明历法专家们还不能从公式推算判断记录错 误,对日食规律了解甚少,不仅不清楚日食条件是日月交会,甚至连日食必在朔也拿不准。此 外,这些记录显示,闰月安置还没有一定之规,只是后半叶趋向准确。
    至少在春秋早期,还不能用公式推算给出一年之内精确的分至朔望的日子。这些只由周 天子向全国按时发布观测的结论,叫做“观象授时”,每月有一次“告朔”之礼,分至是靠观 测正午竿影长度决定,差一两天不足为怪,碰上连阴天更没法子了。鲁国是特权国,享有与天 子一样的礼仪,所以鲁公也行告朔之礼。《左传》有:僖公五年(公元前655年)“正月辛亥朔, 日南至。公既视朔,遂登观台以望而书,礼也。”到鲁文公时代就不再由公本人去登台观望了。 于是发生“子贡欲去告朔之饩羊”这样的事,饩羊是告朔之礼用的祭牲,孔子反对说:“赐也, 尔爱其羊,我爱其礼。”(《论语·八佾》)大概天文学有了进步,逐渐走向“冶历明时”阶段, 即靠推算为主。
    昭公廿年(公元前522年)“春王二月已丑,日南至,梓慎望氛。”这就不是公去观测了。 但冬至在二月是不应该的,按周鲁历法应在一月,这说明该加闰月而没有加。
    《左传》记襄公三十年(公元前543年)一段故事,学者们都认为这故事是《左传》作者 杜撰的,却也未必。
    二月癸未,晋悼夫人发救济粮,绛县老人以年老无子为由来要求救济。人家怀疑他的年龄, 他辩解说:“臣小人也,不知纪年。臣生之岁正月甲子朔,四百有四十五甲子矣,其季于今三之 一也。”季,就是最后一个甲子。三之一,是过去20天了。所以总日数是26660天,年数整73, 比精确值只差两三天。那么此老不是“不知纪年”,是故意要惊动大人们。果然,在场的吏人 都不懂,跑着去朝堂找人问。盲乐师师旷记性好,能回忆历史,知道73年前发生的事;专业天 文官史赵则说了句俏皮话:“亥字是二为首六作身,往下再加两个六,就是他的日数。”士文伯 说:“那不就是二万六千六百六十天么?”这故事实际上是给出一道算术题,以此表现作者的 历法知识。
    文中“正月甲子朔”是公元前616年夏历的月日,过73年(只差两三天)的时日,却 说是二月,因为《左传》作者自己说月日总是用周正。所以这是夏历年关腊月底。 《春秋》历日应与周天子一致,而别的诸候国则各行其历,互不相同,历法尚未统一。这就 是为什么书中用语每年开头总是“春王正月”的理由,其意为“这里的正月是周天子的正月”, 这相当于现行农历的十一月。到秦始皇,当然随着车同轨书同文,历法也统一了,但他为了符合 王朝更替的循环次序公式,把历法订为比周朝更提早一月为岁首,而月份数序之名在现存史 料中则从夏历。前此史书的年月数字有这些繁杂情况,这是中国历史学的基本常识。现行农 历又叫“夏历”,是按孔子的说法“行夏之时”。孔子虽然尊周,却主张用夏历,因为夏历正、 二、三月是真正的春季,是万物发生的周期之始。可见,孔子的礼并不是只为政治服务的不讲 科学的形式教条。但说是夏历,实际上只是晋国等几个国家用的历法,他们自己说这是从夏代 传下来的,并无实据,也不可能。
    当人们对天上主要天体的运行规律了解不足的时候,难免推想地上一年的气候变化会受 分至朔望和日月食的影响,这就是上述梓慎的那类星占之言。孟子说:“天之高也,星辰之远也, 苟求其故,千岁之日至可坐而致也。”这话只是个假言判断,“苟”字当“如果”讲,“故”是 原因或历史记录。孟子之言只能说明:当时的科学研究正在解决这个“坐致千岁日至”的课 题,也许已经初有成效。而孟子还没有十分把握把话说得更明确肯定,比如说:“今之巧历也, 以有其数而可坐致千岁之日至矣。”。至于荀子说“天行有常”也是在“不为尧存,不为桀亡” 的意义上说的,但他这种强力信心当以历法新成就为支持。
    所谓阴阳家就是在这一科学史过程中产生的,邹衍的年代约在公元前324~250年之间,略 晚于孟子而早于荀子。从历法史考察,明确以回归年日数为365.25的“四分历”(以一年为 365日“又四分之一日”,故得名)约可上溯到公元前370年前后。汉以前新历之作大概都要 托古,取名即为“黄帝”、“颛顼”、“夏”、“殷”、“周”、“鲁”,是为古六历。所以新历法创制 者必然会以其术逆推已往,尽可能早。当时的水平和能力不过逆推百年而已,更早也无必要, 因为史录也用不上。百年之内犹在史官可以改写之限。以公元前370年为限的四分历,最可 能的创制人就是邹衍,至少他也是这个科学群体的代表。按祖冲之推测,古六历也只是秦汉间 的成果。
    邹衍早年学儒,后以阴阳之学成名,人称“谈天衍”,周游列国,备极荣耀。燕王迎接他时, 亲自执帚开路,拜他为师。孔子孟子都没享受过他那样的尊荣。桑弘羊说:
    “邹子疾晚世之儒墨不知天地之弘,昭旷之道,将一曲而欲道九折,守一隅而欲知万方, 犹无准平而欲知高下,无规矩而欲知方圆也。”(《盐铁论·论邹》)
    这是强调邹衍重视自然科学,认为儒墨之学缺乏自然科学基础是一大缺失。其准平高下 规矩方圆之论与专门天文学著作《周髀》内容相合。可见阴阳家影响于汉犹深。实际上,通 过司马迁、董仲舒以及谶纬学派的一系列演进和宣传,阴阳家的天文历法虽被改易取代,而其 阴阳五行之说则成了中国自然哲学的范式。
    今人知道的是邹衍有大九洲之说。洲是水中之陆,故邹衍以为大地以水为主。每大洲各 有九州,中国是一个洲中的一州,叫“赤县神州”。至于禹贡的九州又是中国之内的小州了。每 洲外是“裨海”,九大洲之外是“大瀛海。”当时人认为水面是平的,不知道大范围水面是球面 或别的什么样的凸曲面。当时对天高认识不过以为是八万~十万里之数,比地的广度小得多, 所以他们的天地模型是间距相对较小的平行平面。今人称此为“平天说”。以邹衍学说影响 之大,平天说当广泛流行于公元前300~50年之间,《周髀》之书当即在此期间写成,所持为平 天说。而书中从头至尾没有描绘这个模型的文句,大概是因为这本是尽人皆知的常识。司马 迁是个平天说信奉者。汉武帝太初改历以浑天说取代了平天说,除《周髀》以外再无著作解 释邹衍之学,而《周髀》则没提邹衍的名字。于是邹衍的天文学便失传了,剩下的只有他的阴 阳五行。
    阴阳概念当然不是邹衍首创,邹衍的贡献在于以阴阳解说天文地理,也就是梓慎那一套观 念的系统化和推广运用。所谓“日掌阳,月掌阴,星掌和。阳为德,阴为刑,和为事……是故圣王 日食则修德、月食则修刑,彗星见则修和,风与日争明则修生。”此语原出《管子、四时》,其 书据考为稷下学者之作,应当采用邹衍思想。(稷下是齐王专为学者建的学宫,一度人才荟萃。)
    邹衍特别发挥五行观念。“五行”是什么?春秋之世,人们也许曾以五行为物质元素,但到 邹衍,元气说已经流行,人们都认为构成天地万物的基质莫非元气,多样化形态变异都不过是 元气聚散所致。元气的第一级分化是阴阳,二级分化才是水火木金土,火直接是纯阳之气,水则 是纯阴凝聚,阴阳合而成生物,木为生物,土和金则为进一步派生之物。不过五行次序在邹衍还 未明确规定,他只是把五行与人事政治作形式性联系,以五行分属朝代,为“五德终始”之论, 由此预言周朝将被新王朝取代,周以火德,新朝将以水德。当战国末世,七雄争胜,这个提法对大 国之君最有心理震撼力。五行说完善化并脱离政治而从属科学,则是汉以后之事,此不详述。 邹衍的“五德终始”之论实际上为后来五行说的符号化开了路,五行观念中作为物质构成的 物理概念从此退出要津,而使五行成了一种数理符号体系,用于处理繁杂系统的研究。胡化凯 博士论文有详密讨论。

(1996深圳会议,又有修改)