回首页 

载《新发现》杂志2007年第1期
科学外史(7)


为什么孔子诞辰可以推算

江晓原

 

并不是所有历史人物的诞辰都可以用天文学方法推算,但孔子诞辰恰好可以。
确定孔子哪天诞生是科学问题,而在哪天纪念孔子是政治问题。


    并不是所有历史人物的诞辰都可以用天文学方法推算,但孔子的诞辰恰好可以。这是因为在有关的历史记载中,孔子诞辰碰巧与一种可以精确回推的周期天象——日食——有明确的对应关系。
  在此之前,孔子诞辰历来就有争议,前人也尝试推算过。但是当我们注意到日食之后,这个推算工作就可以变得相当“投机取巧”了。具体的推算过程我已经于1998年在海峡两岸同时发表了。不过,此事虽然不算复杂,但涉及到一些大众不太熟悉的约定,从8年来的反映看,仍有一些读者不无疑问。

  关于孔子的出生,一共只有三条历史记载传世:
  1、《史记·孔子世家》:鲁襄公二十二年而孔子生。
  2、《春秋公羊传》:(鲁襄公)二十有一年,……九月庚戌朔,日有食之。冬十月庚辰朔,日有食之。……十有一月,庚子,孔子生。
  3、《春秋谷梁传》:(鲁襄公)二十有一年,……九月庚戌朔,日有食之。冬十月庚辰朔,日有食之。……庚子,孔子生。
  第1条没有月、日的记载,无法提供诞辰;第2条自己有矛盾——“十月庚辰朔”之后20天是庚子,则整个十一月中根本没有“庚子”的日干支。只有第3条自洽而且提供了月份和日期,因此当然只能依据这一条来推算孔子诞辰。
  很多人以为,要推算以中国夏历记载的历史事件日期,就必须知道该历史事件当时所使用的历法。这在一般情况下是对的,前人推算孔子诞辰也全都遵循这一思路。但公元前6世纪时中国所用历法的详情,迄今尚无定论,前人推算孔子诞辰之所以言人人殊,主要原因就在这里(因为各家都要对当时的历法有所假定和推测)。
  其实孔子诞辰问题非常幸运,它根本不必遵循上述思路。因为在上述第3条记载中,有日食记录,而且已经分别提供了日食那天和孔子诞生那天的纪日干支(历史学界一致约定中国古代的纪日干支数千年来连续并且没有错乱),这就使我们可以借助天文学已有的成果,一举绕过历法问题而直取答案。
  这些已有的天文学成果包括:
  一、对历史上数千年来全部日、月食的精确回推计算。
  二、对公元前日期表达的约定:即公元前日期用儒略历表达。所谓“公元前”,是我们对公元纪年的向前延伸,延伸自然应该连续,不能设想让公元16世纪才开始使用的格里历向前跳跃一千五百多年去延伸。格里历虽比儒略历精确些,但天文学家推算历史日期时,其实并不使用这两种历法中的任何一种,而只是约定使用儒略历来表达——这只是为了方便公众理解而已。
  三、“儒略日”计时系统:这是一种只以日为单位(没有年和月),单向积累的计时系统,约定从公元前4713年1月1日(儒略历)起算。这可以使天文学家在推算古代事件时,避开各古代文明五花八门的历法问题,获得一个共同的表达系统。中国古代连续不断的纪日干支系统实际上与“儒略日”异曲同工。
  四、中国古代纪日干支与公历日期的对应。
  那么,鲁襄公二十一年是公元前552年,这年8月20日(儒略历),在曲阜确实可以见到一次食分达到0.77的大食分日偏食,而且出现此次日食的这一天,纪日干支恰为庚戌,这就与“九月庚戌朔,日有食之”的记载完全吻合(至于“冬十月庚辰朔,日有食之”的记载则无法获得验证,这次日食实际上并未发生)。然后,从“九月庚戌”逐日往下数50天,就到十月“庚子”,这天就是孔子的诞辰——事情就这么简单!
从下面这个表可以看得更清楚:

儒略日

史籍记载历日

天象与事件

公历日期(公元前)

1520037

襄二十一年九月庚戌朔

日食

552820

1520067

襄二十一年十月庚辰朔

日食(实际未发生)

552919

1520087

襄二十一年十月庚子

孔子诞生

552109

1546536

哀十六年四月己丑

孔子去世

47939

  《史记·孔子世家》说“鲁襄公二十二年而孔子生”,但下文叙述孔子卒年时,却说“孔子年七十三,以鲁哀公十六年四月己丑卒”,鲁哀公十六年即公元前479年,551减479只有72岁,这个问题只能用“虚岁”之类的说法勉强解释过去。
  所以结论是:
  孔子于公元前552年10月9日诞生,公元前479年3月9日逝世。
这个结果与《史记》中“孔子年七十三”的记载确切吻合。
另外,在上面的推算中,不需要对公元前6世纪的中国历法作任何假定和推测,事实上,我们根本不需要知道当时用什么历法。

  顺便说说,邮电部在1989年发行“孔子诞辰2540周年”纪念邮票,是依据孔诞为公元前551年而发的,这就在年份上出了差错,因为1989+(551—1)=2539年。这是一个低级错误,并不存在一个“公元0年”,所以公元前的年数必须减去1。同样道理,2006年就是孔子诞辰2556周年。2007年纪念孔子时,改正这个错误的出路只有两条——或者再纪念一次孔诞2557周年,或者采纳孔诞为公元前552年10月9日的结论,倒又可以纪念2558周年了。
  还有的人可能出于“国粹”之类的考虑,对于“阳历的孔子生日”极为反感,其实也无必要——在推算出正确的孔子诞辰之后,我们完全可以用对应的农历日期来表达孔诞(比如2006年这一次就是“丙戌年八月十八日”),只是这样的话,每年对应的农历日期就要浮动了,不方便记忆。
  目前国家有关部门和孔子家族尚未正式接受我所推算的结果。他们可能有他们的考虑。关于伟人诞辰之类的问题,以前有一位学者说得非常好:确定孔子哪天诞生是科学问题,而在哪天纪念孔子是政治问题。作为学者,只需关心前者可矣。

 

 

 

20061231加入