APP下载

包山楚简的岁首占及其历朔断代

2021-11-20武家璧

武家璧

(北京师范大学 历史学院,北京 100875)

《包山楚简》卜筮祭祷简记载了“盛公之岁、刑夷之月”的“集岁”占3次、“邵滑之岁、刑夷之月的“集岁”占5次。[1](P32~37)《望山楚简》中也可以复原两个年份刑夷之月的“集岁”占。[2](P68~71)可见刑夷之月“集岁”占是一种比较流行的占卜程式。占卜事项不是就某日某时发生的具体事件进行占卜,而是就一整年的事项(出入、事王、躬身等)进行总体判断,显然这样的占卜最适宜在岁首元旦进行。我们认为刑夷之月的“集岁”占与文献记载“王者岁首”的“候岁”占俗有关,可能提供了两年元旦的日辰干支,从而为历朔断代创造了条件,略论如下。

一、包简的历日材料与月名

《包山楚简》“集岁”占中,有关年月日三要素、起止时效、占卜事项等,基本上出现在同一支竹简上,例如:

宋客盛公臱聘于楚之岁,刑夷之月,乙未之日,盬吉以保家为左尹佗贞:自刑夷之月以适刑夷之月,出入事王躬身尚毋有咎?占之,恒贞吉,少有忧。(包简197)

大司马邵滑率楚邦之师徒以救郙之岁,刑夷之月,己卯之日,盬吉以保家为左尹佗贞:出入侍王自刑夷之月以适集岁之刑夷之月,尽集岁躬身尚毋有咎?占之,恒贞吉。(包简226)

占卜的起止时效是自本年的刑夷之月至“集岁”的刑夷之月,就一整年的时间段进行占问,中间没有遗漏,故称“尽集岁”,又称“尽卒岁”。包简可以概括出两条独立有效的在刑夷之月进行“集岁”占的时间记录:

盛公之岁,刑夷之月,乙未之日。(包简197、199、201)

邵滑之岁,刑夷之月,己卯之日。(包简226、228、230、232、234)

有一次疾病占曰:“大司马邵滑救郙之岁,夏夷之月,己亥之日,观义以保家为子左尹邵佗贞:以其有瘇瘀,尚毋死,义占之,恒贞不死。有祟,见於继无后者与渐木立,以其故敚之。”(包简249)又有遣策简载“大司马邵滑救郙之岁,亯月丁亥之日,左尹葬,甬车一乘”。(包简267)按照楚简历法的月序(详见下文),自夏夷(5月)己亥至亯月(6月)丁亥,跨48日,邵佗在最后一次疾病占——“不死”占之后不久就死了。墓主左尹邵佗死于大司马邵滑救郙之岁,表明盛公之岁、许裎之岁都应在邵滑之岁以前。这给包山楚简的历朔断代提出了很强的限制条件。

为了弄清楚这一问题,我们先来说明楚国月名的含义。云梦睡虎地秦简《日书》中有秦、楚月名与日夕数对照表,记载了不同月份的昼夜长短数据[3],见表1。

历法上有依据昼夜长短的变化规律来划分季节的做法,例如昼夜平分是春分,此后变得昼长夜短,到白昼最长、夜晚最短是夏至;然后再往回变到昼夜平分是秋分,此后变成昼短夜长,到白昼最短、夜晚最长是冬至等等,一年内往返变化,四季分明。这套数据把一昼夜(日夕)划分为十六等分,昼夜长度用“分”数来表示,例如秦历五月白昼(日)最长占11分,夜晚(夕)最短只占5分,则昼长占一日的11/16是极大值,故是夏至月;十一月白昼最短,仅占一日的5/16是极小值,故是冬至月;二月、八月昼夜平分,各占8/16是中值,故是春分和秋分月。

很容易判断楚历的刑夷就是秦历的正月,也是《夏历》和《颛顼历》的正月——立春月。

我们提出楚国历法属于《颛顼历》。[4]立春是《颛顼历》的岁首。《新唐书·历志》载僧一行《日度议》曰:“《颛顼历》上元甲寅岁正月甲寅晨初合朔立春,七曜皆直艮维之首……命曰《颛顼》,其实《夏历》也。……其后吕不韦得之,以为秦法,更考中星,断取近距,以乙卯岁正月己巳合朔立春为上元。”[5](P602)这段话说明《颛顼历》有两种:一种是早期使用的“甲寅元”,另一种是经过吕不韦改造过的“乙卯元”。《后汉书·律历志》(下文简称《后汉志》)“熹平论历”载刘洪议曰:“《甲寅历》于孔子时效;己巳《颛顼》,秦所施用;汉兴草创,因而不易。”[6](P3042)楚简使用的《颛顼历》应是文献记载的“甲寅元”《颛顼历》,我们称为《颛顼大正》[7];传世秦汉《颛顼历》就是“乙卯元”《颛顼历》,我们称为《颛顼小正》。睡虎地秦简所列的秦楚月名对照表是《颛顼历》的《大正》月名与《小正》月序的对照表。

《国语·楚语》载“观射父对楚昭王问”曰:“古者民神不杂。……及少皞之衰也,九黎乱德,民神杂糅,不可方物。……颛顼受之,乃命南正重司天以属神,命火正黎司地以属民,使复旧常,无相侵渎,是谓绝地天通。”[8](P194~196)这是说上古有神历和民历之分,乱世还有“民神杂糅”的历法。楚简历法的月名除自然月序(八、九、十月)之外,写作某(夕)或者某(夷)者全与祭祀有关,因此《颛顼历》的《大正》历法就是神历,《小正》历法就是民历。

楚国神历的祭祀顺序,上半年基本遵循由亲至疏、由近至远的秩序[9](P145),主祭者是楚王,可能于每月朔日进行。例如冬(终)—夕祭终养的直系父祖,屈—夕祭屈支旁系的近亲父祖,远—夕祭远亲列祖,—立尸祭祀丹阳宗庙的荆王,夏—立尸祭祀中夏的“楚先”,亯(纺)月—祊祭诸远人亲族,等等。祭祀亲近祖先都在郢都宗庙内举行夕祭;建都丹阳及其以前的远祖不葬在郢都,均需立尸祭祀,这就是“荆夷(尸)”“夏夷(尸)”的来历。由此判断楚简历法的月名,可能是楚文王迁郢都以后建立起来的,时代约在春秋早期。

二、王者岁首——正月元旦

如果不因具体事件(疾病、灾异、梦魇、见鬼神等)临时进行占卜,古人经常选取“四始”之日进行“候岁”之占。《史记·天官书》谓:

凡候岁美恶,谨候岁始。岁始或冬至日,产气始萌。腊明日,人众卒岁,一会饮食,发阳气,故曰初岁。正月旦,王者岁首;立春日,四时之卒始也。四始者,候之日。[10](P1340)

这里提到四种岁始,即冬至日、腊明日、正月旦、立春日。《说文》:“腊,冬至后三戌,腊祭百神也。”即腊祭日期由冬至日推定,腊明日视为“初岁”。在四个岁始之日占候一年内的气候、水旱、收成和吉凶美恶等,统称为“候岁”或者曰“岁占”。

“四始”可能源自“五始”。《春秋·隐公元年》记载:“元年春王正月。”《公羊传》曰:“元年者何?君之始年也。春者何?岁之始也。王者孰谓?谓文王也。曷为先言王而后言正月?王正月也。何言乎王正月?大一统也。公何以不言即位?成公意也。”唐徐彦疏:“元是天地之始,春是四时之始,‘王正月公即位’者人事之始。”《文选·王襃〈圣主得贤臣颂〉》云:“记曰恭惟《春秋》法五始之要,在乎审己正统而已。”李善注引“胡广注云:五始一曰元,二曰春,三曰王,四曰正月,五曰公即位”[11](P2089)。汉何休《春秋文谥例》曰:“五始者,元年、春、王、正月、公即位是也。”[12](P5)胡广和何休的“五始”之说可能源于谶纬[13],纬书《春秋元命包》曰:“黄帝受图,立五始。元者气之始,春者四时之始,王者受命之始,正月者政教之始,公即位者一国之始。”[14](P112)纬书《春秋佐助期》曰:“黄帝坐于扈阁,凤凰衔书至帝前,其中得五始之文。”[14](P240)《汉书·王褒传》:“恭惟《春秋》法五始之要。”颜师古注:“元者气之始,春者四时之始,王者受命之始,正月者正教之始,公即位者一国之始,是为五始。”[15](P2824)

《春秋》五始强调“正统”观念,候岁四始则把“正统”观念应用到占候领域。唐代张守节不同意司马迁将候岁“四始”解释为四个时间点的说法,仅仅将“正月旦”作为候岁的唯一时节点,其《史记正义》曰:“谓正月旦,岁之始,时之始,日之始,月之始,故云‘四始’。言以四时之日,候岁吉凶也。”清初顾炎武《日知录·史记注》指出:“‘四始者候之日’,谓岁始也,冬至日也,腊明日也,立春日也。《正义》专指正月旦,非也。”[16](P949)

对“正月旦”的重视,文献始于《尚书·舜典》“正月上日,受终于文祖”。孔安国传“上日,朔日也”。孔颖达疏:“月之始日谓之朔日,每月皆有朔日,此是正月之朔,故云‘上日’,言一岁日之上也。下云‘元日’亦然。”又《书》曰:“月正元日,舜格于文祖。”孔传“月正,正月;元日,上日也。”《史记·五帝本纪》:“正月上日,舜受终于文祖。文祖者,尧大祖也。”是皆谓舜帝在正月元旦接受了尧帝的禅让。

“正月旦”汉晋人又称为“三朝”“三始”“三元”等。《文选·班固〈东京赋〉》:“春王三朝,会同汉京。”李善注:“三朝,岁首朔日也。”《汉书·孔光传》:“岁之朝曰三朝。”颜师古注:“岁之朝,月之朝,日之朝,故曰三朝。”《汉书·鲍宣传》:“今日蚀于三始,诚可畏惧。”颜注:“正月一日,为岁之朝,月之朝,日之朝;始犹朝也。”晋宗懔《荆楚岁时记》:“正月一日是三元之日也,《春秋》谓之端月。”[17](P1)唐徐坚《初学记》卷四“岁时部·元日”条引崔寔《四民月令》:“正月之朔,是谓正日。”又引隋杜台卿《玉烛宝典》:“正月为端月,其一日为元旦,亦曰上日,亦云正朝,亦云三元(岁之元,时之元,月之元),亦云三朔。”又引周处《风土记》:“月正元日,百礼兼崇。”又引“《汉书》曰‘正月朔岁首立春,四时之始。’又曰‘历者序四时之端,正分至之节,故圣人考历数,以正三元。此圣人知命之术。’”[18](P63~64)南宋吴自牧《梦梁录》卷一“正月”条:“正月朔日谓之元旦,俗呼为新年。一岁节序,此谓之首”。[19](P1)

《太平御览》卷二十九“时序部·元日”条引《汉书》曰:“正月朔,岁首;立春,四时之首。”[20](P245)又引谯周《古史考》曰:“元日,太史乃占气象,以知水旱吉凶,随分野书之。”[20](P254)战国楚简发现的“岁占”卜辞证明“候岁”在战国时已经很盛行了,但是占候的内容并非都是“候岁美恶”,而是求贞者本人出入、事王、自身休咎等个人事项。

《春秋》记载鲁国事迹用《鲁历》,采用周正建子的月序,即以斗柄昏时指北(子)为正月。《史记·历书》曰:“昔自在古,历建正作於孟春……夏正以正月,殷正以十二月,周正以十一月。盖三王之正若循环,穷则反本。”司马贞《索隐》按:“古历者,谓黄帝调历以前有上元太初历等,皆以建寅为正,谓之孟春也。及颛顼、夏禹亦以建寅为正。唯黄帝及殷、周、鲁并建子为正。而秦正建亥,汉初因之。至武帝元封七年始改用太初历,仍以周正建子为十一月朔旦冬至,改元太初焉。”

《论语·卫灵公》:“子曰:行夏之时。”朱熹集注:“‘夏时’,谓以斗柄初昏建寅之月为岁首也。天开于子,地辟于丑,人生于寅,故斗柄建此三辰之月,皆可以为岁首,而三代迭用之。夏以寅为人正,商以丑为地正,周以子为天正也。然时以作事,则岁月自当以人为纪。”[21](P1082)关于斗柄建辰,睡虎地秦简《日书·秦除》记载秦历的十二月建为:“正月建寅,二月建卯,三月建辰,四月建巳,五月建午,六月建未,七月建申,八月建酉,九月建戌,十月建亥,十一月建子,十二月建丑。”[3]这就是“正月建寅”的月序,《夏小正》和秦汉《颛顼历》均采用这样的月名月序。

所谓“王者岁首”就是“人正岁首”。《老子》曰:“天大,地大,人亦大。”一本作“王亦大”。《孝经·圣治》曰:“天地之性,人为贵。”故“人王”是相对于“天”“地”而言的。因此,“王者岁首”的含义是很明确的,就是寅正月序的正月朔日——元旦。

《左传·文公元年》:“先王之正时也,履端于始,举正于中,归余于终。”杜预注:“步历之始,以为术之端首。”孔颖达疏:“履,步也,谓推步历之初始,以为术历之端首。”[22](P484)所谓“术历端首”,一般历法指冬至(中气),《颛顼历》指立春(节气);“王者岁首”特指正月朔日——原本是“历之始”而非“术之端首”,当朔日与节气合一(气朔齐同)时就成为“术历端首”。冬至、立春、元旦都是占候者重视的端始节日。

为了说明问题,笔者将周正建子、夏正建寅以及秦楚《颛顼历》的斗建(斗柄昏时指向)与月名、月序列表说明,见表2。

表2 周夏秦楚建正与月名对照

依《楚语》“司天以属神、司地以属民”的分法,所谓“大正”就是神历,故楚简多记祭祀月名;“小正”就是民历,故《夏小正》多载物候农事。《周历》《鲁历》的岁首在正月(子正),秦《颛顼历》的岁首与正月分离,月名采用《小正》(寅正),岁首采用《大正》(亥正),可谓正月建寅、岁首建亥,是把神历和民历混合在一起的“杂糅”历。楚《颛顼历》将月名和岁首统一于《大正》(亥正)。按一般法则,楚国的荆尸之月,相当于《周历》《鲁历》的春三月,然而《左传·庄公四年》载“春王正月,楚武王荆尸,授师孑焉以伐随”。此例说明“春王正月”是建寅之月而非建子之月,该作如何解释?

原来《春秋》记周朝及鲁国事迹用子正,记其他诸国则用夏正,唐刘知几《史通·模拟》曰:“春秋诸国,皆用夏正。”《逸周书·周月解》:“夏数得天,百王所同……我周王致伐于商,改正异械,以垂三统。至于敬授民时,巡狩祭享,犹自夏焉。是谓周月,以纪于政。”这说明“周月”仅用以“垂三统”“纪于政”,但是民间物候农时、王者巡狩祭享等采用《夏历》。这就是说周朝本身也同时采用大正(周正)和小正(夏正)。清初顾炎武《日知录·正月之吉》:“(《诗·豳风·七月》)一篇之中,凡言月者皆夏正,凡言日者皆周正。”清胡天游著《春秋夏正》二卷[23],对《春秋》所用“夏正”详加考证,可以参考。

“楚武王荆尸”是《左传》记楚国事迹用《颛顼小正》的一个显例。在荆尸之月进行的占卜和祭祀活动表明,“正月旦王者岁首”不仅是采用夏正的诸国流行的占候习俗,也是采用《颛顼历》的楚国盛行的习俗。

三、邵滑之岁的年代范围

历法的气朔干支具有周期性,如果不限定初始条件和边界范围,其断代的结论必定是多解的。为了依据四分历规律找到岁首年代的唯一解,需要对历朔的年代范围给出适当的限制。包山楚简可以限制年代的依据有二。其一是简文记载七个年名中有“大司马昭阳败晋师于襄陵之岁”,明确为公元前322年[24],是楚怀王七年。这批年名应集中在楚怀王之世,不会晚到顷襄王。邵滑任大司马必定在昭阳之后,故以“昭阳之岁”为“邵滑之岁”的年代上限;其二是墓主死亡的邵滑之岁与“邵滑亡越”的年代必然接近。

关于“邵滑亡越”事件,文献多有记载。《韩非子·内储说下》中,干象对楚怀王曰:“前时王使邵(悼)滑之越,五年而能亡越,所以然者越乱而楚治也。”[25](P257~258)《史记·甘茂列传》载:“齐使甘茂於楚,楚怀王新与秦合婚而欢,而秦闻甘茂在楚,使人谓楚王曰:‘原送甘茂于秦。’楚王问于范蜎……对曰:‘……且王前尝用召滑于越,而内行章义之难;越国乱,故楚南塞厉门而郡江东。’”《战国策·楚策一》中,范环对楚怀王曰:“且王尝用召滑于越,而纳句章;昧之难,越乱故楚南察濑湖而野(郡)江东。计王之功所以能如此者,越乱而楚治也。”[26](P738)鲍彪注云:“此言楚虽有唐昧之难而能得越地,以召滑乱之也。”[26](P740)综上所述,则邵滑五年亡越的计划成于唐昧死难之年。据《六国年表》《楚世家》载,唐昧战死于楚怀王28年(前301)的垂沙之战,则“昭滑亡越”应在公元前305~前301年这5年间。其中“用召滑于越而纳句章”可能发生在前305年,即楚怀王24年。此事的具体细节已无从查考,推测可能是一次间谍颠覆行动,引发越国持久内乱,至5年后亡国。

《战国策·楚策四》载:“齐明说卓滑以伐秦,滑不听也。齐明谓卓滑曰:‘明之来也,为樗里疾卜交也。明说楚大夫以伐秦,皆受明之说也,唯公弗受也,臣有辞以报樗里子矣。’卓滑因重之。”齐明游说卓(悼)滑时,卓(悼)滑应已为楚国大司马,与秦国名将樗里疾齐名。樗里疾战功赫赫,曾攻取魏国曲沃、赵国蔺邑和楚国汉中等,因功封于蜀郡严道县,号严君。前311年秦武王即位,任命樗里疾为右丞相、甘茂为左丞相,秦昭王元年(前306年)樗里子拜为丞相,七年(前300年)去世。楚怀王六年(前323年)楚国大司马昭阳大败魏军于襄陵(今河南睢县),占领八邑,此事被用以纪次年之岁(前322年)。邵(悼)滑任楚大司马应在此后,大致与樗里疾执政(前311年~前300年)同时,故东周齐明以“为樗里疾卜交”为名游说邵滑,借以抬高自己的身价。

灭亡越国是昭滑在大司马任内最大的业绩,另一功绩就是竹简年名记载的“大司马邵滑率楚邦之师徒以救郙”这件大事了。灭越之后的第二年,即公元前299年,秦昭王约楚怀王在武关会面,怀王不听昭睢、屈原劝告,前往武关被秦国扣留,太子横被令尹昭睢等立为楚王,是为楚顷襄王。此后秦楚连年征战,楚国疲于奔命,不大可能发生大司马率楚师救郙的事情。笔者曾经认为“邵(悼)滑救郙”可能是文献记载的“淖齿救莒”事件(前285年)[27],后者距离“昭滑亡越”已过去20年,此时邵滑即使还活着也已近暮年,率师救莒似不合情理;且其时楚国军力数次为秦所摧折,势难有所作为,故放弃前说。综上所述,则“邵滑之岁”的年代范围大致可以限制在“昭阳之岁”(前322年)至楚顷襄王即位(前299年)之间。

四、立春月朔日的计算

古六历推算出日、月、五星等共同起点(历元)和回归周期(最小公倍数),其中日月周期称为“章蔀”,五星周期称为“纪元”,章首、蔀首是干支日名,纪首、元首是干支年名。《后汉书·历律志》载曰:“至朔同日谓之章,同在日首谓之蔀,蔀终六旬谓之纪,岁朔又复谓之元。”太阳位置到达二十四节气点的时间和日月合朔的时刻在同一日内发生的周期是19年,但同日并不表示“同时”,历法上把一日分为朝、昼、昏、夜“四时”;如果节气、合朔同日并且同时发生,那么它们的共同周期是76年,故以19年为一章,四章为一蔀。“蔀”表示气朔齐同了,但第一蔀首与第二蔀首的日名干支并不相同,需要调和与六十甲子的周期,使蔀首日名恢复相同干支需要经过二十蔀,称为一纪(1520年)。以纪为单位进入纪年阶段,“纪首”表示蔀首日名相同,但年名干支不同;经过天、地、人三纪,恢复干支年名相同,是为一元(4560年)。这就是四分历的章、蔀、纪、元结构,周而复始,编排无穷。推算得到理想的历法起点——上元,理论上会发生气朔齐同、五星会合的天象,即所谓“日月合璧、五星连珠”。一般历元(蔀首)如文献所称的“甲寅元”“乙卯元”等,会发生“气朔齐同”的天象。

推步历法计算的节气和朔日反映的是自然天象,不管采用哪种历法,所得气朔干支应该是相近或相同的,它们都必须非常接近同一自然天象。如果历法与天象差距显著增大易于察觉,该历法将遭到改革或废止。《大正》与《小正》的区别不在气朔干支,而在于建正、月名与月序的差别。下面采用四分历法术计算立春月的朔日干支,对于《颛顼历》的大正和小正都是适用的。

首先,计算正月朔日的干支序数。《后汉志》记载了四分历推步气朔的公式,以“天正术”为名,岁首朔日为“天正十一月朔日”,又称“天正朔日”,简称“正朔”。实际上其算法对于“人正”照样适用,只需将冬至改为立春、冬至月朔改为立春月朔即可。《后汉志》载步朔公式曰:

推天正术,置入蔀年减一,以章月乘之,满章法得一,名为积月,不满为闰余,十二以上,其岁有闰。

推天正朔日,置入蔀积月,以蔀日乘之,满蔀月得一,名为积日,不满为小余,积日以六十除去之,其余为大余。以所入蔀名命之,算尽之外,则前年天正十一月朔日也。……

一术,以大周乘年,周天乘闰余减之,余满蔀月,则天正朔日也。[28](P1517)

其中“入蔀年减一”就是积年(T),积月余数的分子称为“闰余”。“以六十除去之”即减去60的整数倍60[r],使数值保持在甲子周之内,以便用干支纪日。以上术文可写成算式:

积月=积年×章月÷章法

积日=积月×蔀日÷蔀月

朔日=积日-60[r]

有关入算的术数(常数),《后汉志》载明:“蔀月九百四十,章法十九,章月二百三十五,周天,千四百六十一,日法四,蔀日二万七千七百五十九…大周三十四万三千三百三十五。”

综上,可写为一简明算式,即

朔日=(大周×积年-周天×闰余)÷蔀月-60[r]

由积月算式可得闰余,由闰余可推算朔日:

朔日=(343335×T-1461×闰余)÷940-60[r]

积月表达式中的分子就是闰余,闰余的周期是19年,下面按积月算式计算一章19年内完整的闰余,列如下表。

表3 四分历闰余

四分历闰周为19年7闰,闰余大者设置闰月,上表中闰余大于和等于12的有7年,当设置闰月,故志文曰“十二以上其岁有闰”。由此可见四分历的闰月分布规律。秦汉《颛顼历》岁首建亥,以十月为年始,置闰月于年终称“后九月”。

已知闰余,按步朔公式计算,列出《颛顼历》第一蔀(B1)共计76年的正月朔日干支序数,见表4。

以上所算的结果都是干支序数,要转换为干支日名,还需“以所入蔀名命之”,即以蔀首日名进行命算(设干支序号)。《后汉志》载:“至朔同日谓之章,同在日首谓之蔀,蔀终六旬谓之纪,岁朔又复谓之元。”其术数(常数)载明19年为章,四章76年为蔀,二十蔀1520年为纪,三纪4560年为元。其中“章蔀”是气朔齐同的周期,章首蔀首是干支日名;“纪元”是太岁纪年的周期,纪首元首是干支年名。一般历谱主要编排气朔干支,只需用到章蔀周期。具体做法是:在一蔀内完成干支序数的计算,不同蔀内的数值计算完全相同,只需以蔀首的日名干支作为起点命算,把全部气朔干支的序数,整体转换为本蔀内的干支日名。

表4 《颛顼历》第1蔀(B1)正月朔干支序数

《后汉志》载:“甲寅之元,天正正月甲子朔旦冬至,七曜之起始于牛初;乙卯之元,人正己巳朔旦立春,三光聚天庙(营室)五度。”本文讨论的“王者岁首”属于“人正”系统,因此第一蔀(己巳蔀)应以“己巳朔旦立春”为起算点,即设定干支序号(命算)为:己巳[0](算外),庚午[1](算尽),辛未[2]……丁卯[58],戊辰[59],己巳[60]。大于60的积日减去60的整数倍60[r],得到小于60的干支序号。其他蔀则“以所入蔀名命之”。

关于《颛顼历》的蔀首,《新唐书·律历志》载僧一行《日度议》曰:“鲁宣公十五年(前594)丁卯岁《颛顼历》第十三蔀首……至始皇三十三年(前214年)丁亥,凡三百八十岁,得《颛顼历》壬申蔀首,是岁秦历以壬申寅初立春。”[5](P611)唐《开元占经》载《颛顼历》上元至开元二年(甲寅714年)的积年为2761019算外[29](P1089),算得其距今最近的历元为:

2761019-605×4560-713=1506

即公元前1506年是《颛顼历》的近距历元(己巳蔀首)。据此可列出《颛顼历》二十蔀及其蔀首对应的公元年代,见表5。(括号中是“命算己巳”的序数)

不管如何起算和命算,四分历二十蔀的顺序和蔀首干支是相同的,如上表中的命算序数所示,前后蔀首之间增减39日。例如第二蔀首比第一蔀首的干支序数大,列式如下:

那么两蔀的其他对应日期均相差39日。故可依据蔀首重新命算起点,将第一蔀的气朔干支序数,整体换算成其他蔀的气朔干支日名。

五、包简历朔的断代

实际上没有必要将每蔀都重新命算,可在命算己巳[0]的统一规则下,采用如下方式计算干支序数,与“以蔀名命算”的效果是一样的:设第一蔀某年某月朔干支序数为B1,那么第n蔀该年该月朔干支序数为

Bn=B1+(n-1)×[39]-60[r]

按此式算得第16蔀的第45年~67年即公元前322年~前299年的正月朔干支序数,见表6。

上表中符合简文盛公之岁刑夷(正月)朔乙未[26]的,只有第16蔀第56年,即公元前311年可以当之;符合邵滑之岁刑夷(正月)朔己卯[10]的,只有第16蔀第64年,即公元前303年可以当之,后者与文献记载“邵滑亡越”的时代符合。如图1所示,两个刑夷朔日的年代是唯一的,其他年份距离竹简历日最近者也在2日以上,故可排除。

上图显示公元前322~公元前299年所有立春月[刑夷]的朔干支中,朔乙未[26]、己卯[10]的年代是前311年、前303年。前303年是邵滑之岁,表明邵滑救郙发生在前304年,这是楚怀王24年(前305年)“用召滑于越”的第二年,楚国已纳越之句章,继而邵滑率师救郙,邵滑本人正处在人生的巅峰期。邵滑救郙的军事行动发生在五年亡越的过程之中,有可能是其灭越计划的一个组成部分。历朔断代得到的年代结论,与文献提供的历史背景正好符合。

表5 《颛顼历》入蔀年

表6 《颛顼历》第16蔀(B16)正朔干支序数

图1 包山楚简刑夷月“集岁”占的历朔年代

这三个朔日已归于同一年,为判断其年代,特编算《颛顼历》第16蔀(B16)部分年代的朔日干支,见表8。

表7 包简楚历七-九月干支日序

表8 《颛顼历》第16蔀(B16)朔干支

由表8可知,与竹简七、八、九月朔日符合的只有第16蔀的第50年,即公元前317年,楚怀王12年。特将此三朔日的余分算出,见表9。

表9 包简历朔

《颛顼历》八月丁卯朔,与竹简戊辰朔差1日,但丁卯朔的余分超过半日,依“借半日”法,应当进位1日,于是历朔与竹简朔日正好相符。

此年早于邵滑之岁(前303年)15年,则包山楚墓随葬的法律文书主要是墓主昭佗壮年时期所从事工作的部分档案材料。

六、结语

楚简的月名采用《颛顼历》大正月序,岁首建亥,为后来秦汉《颛顼历》所继承。但《颛顼历》小正也同时在楚国使用,楚帛书月名就是例证。[30]刑夷之月是《小正》的岁首,又称“王者岁首”,“正月旦”是传统的“候岁”之日。楚简刑夷之月“集岁”占就是“正月旦”的岁首占,是传统习俗“候岁”在楚国的表现。

依据两个正月元旦的朔日干支,我们确定了盛公之岁、邵滑之岁的年代,另一未知年份的七至九月朔日也在比较靠近的时间范围内确定了具体年代,加上已知昭阳之岁的年代,可知包山楚简的纪岁包括以下年代:

昭阳之岁 公元前322年

□□之岁 公元前317年

盛公之岁 公元前311年

邵滑之岁 公元前303年

《包山楚墓》发掘报告[31](P332)和整理者[32]认为邵滑之岁为公元前316年,简文所载七个年份紧密相连,靠近墓主的死亡年代,最后一年是墓主的卒年。现在看来这一结论难以成立。

包山楚简的法律文书是墓主壮年时代所从事工作的档案材料,官府随葬这类陪葬品旨在选用极少量的档案文书以表明墓主的身份地位,作为死者到地下丞报到时的凭证。这些档案集中在某些年份,但并不靠近墓主的死亡年代。楚简岁首占的发现,给出土文献的历朔断年提供了科学依据,为确定这类卜辞以及墓葬的年代开辟了新的途径。