隋書卷十七

序説――暦法の意義と沿革

  • 暦は陰陽の推移を記し、往古を極めて来を知り、天時に先んじて事を成すためのものである。日月の交替が明を生み寒暑の交替が歳を成す、天地の文・乾坤の変を極める営みである。天数五・地数五が相乗じて天地の数五十五となり、乾の策二百十六・坤の策百四十四で合計三百六十が一年の日数に当たる。
  • 炎帝は八節を分かち、軒轅は五部を建て、少昊は鳳鳥で暦を、顓頊は南正で天を司り、堯は羲和に命じ、禹は『鴻範』を陳べ、湯武は革命のたびに旧章に従った。周の徳が衰えると史官の職が廃れ、疇人(暦算の専門家)は分散した。
  • 秦は五勝説により水徳を称し十月を正月とした。漢初は秦暦をそのまま用い、武帝の代に夏正へ改めた。当時の古暦六家を劉向父子が検討し、班固が『漢書』律暦志に採った。後漢は永平末に四分暦へ改め、劉洪・蔡邕が律暦を修め、司馬彪がこれを継いだ。魏では韓翊・楊偉が劉洪の術に依った。晋では改訂が重ねられ、西涼にも蔀法があった。
  • 南朝宋の元嘉年間、何承天が暦を造り斉末まで用いられた。梁の武帝は当初斉の旧暦を用いたが天監年間に祖沖之の『甲子元暦』へ改めた。陳は改暦なし。北斉の文宣帝は宋景業の暦を、西魏は李業興の暦を用いた。北周武帝は甄鸞の『甲寅元暦』を用い、大象初年には馬顕が『丙寅元暦』を上呈して施行された。隋では開皇四年に張賓暦、開皇十七年に張胄玄暦へ改め、義寧まで用いられた。本志は梁の天監以降五代の暦の要点を記す。

梁の暦

  • 梁は当初斉に依り宋の『元嘉暦』を用いた。天監三年、員外散騎侍郎・祖暅が「祖先(祖沖之)は宋の大明年間に古法を考え正暦を定めた、事はみな符験しており改める必要はない」と上奏。天監八年、祖暅は再び上疏し、太史令・将匠道秀らに新旧二暦の気朔・交会・七曜行度を観測させたところ(八年十一月〜九年七月)、新暦は密、旧暦は疎と判明した。祖暅は「何承天暦はやや天と乖離しており、詔により霊台で新暦と対課したところ、新暦を用いるべきである」と重ねて上奏し、天監九年正月より祖沖之の『甲子元暦』が頒布された。
  • 大同十年、さらなる新暦の詔があり、甲子を元、六百十九を章歳、千五百三十六を日法とし、百八十三年で冬至が一度ずれる法、月朔に遅疾の定小余(大二・小三)を用いる案が作られたが、施行前に侯景の乱が起こり中止された。

陳・北斉の暦

  • 陳は梁に依り祖沖之暦を用い、改作はなかった。
  • 北斉の文宣帝は宋景業に讖緯の図に依って『天保暦』を造らせた。景業は「『握誠図』『元命包』により斉の受命の期は魏の終わりに当たり、三十五を乗じて蔀、六百七十六を章とする」と奏し施行された(上元甲子から天保元年庚午まで積十一万五百六算、章歳六百七十六、度法二万三千六百六十、斗分五千七百八十七、暦余十六万二千二百六十一)。
  • 後主武平七年、董峻・鄭元偉が宋景業の暦を批判し、六百五十七を章、二万二千三百三十八を蔀、五千四百六十一を斗分とする『甲寅元暦』を上奏した。また劉孝孫・張孟賓は張子信に学び新法を作り、趙道厳は日影の長短で日行の進退を定める盈縮法を作った。劉孝孫の暦は百十九を章・八千四十七を紀・九百六十六を歳余、張孟賓の暦は六百十九を章・四万八千九百を紀・九百四十八を日法・一万四千九百四十五を斗分とし、いずれも日月五星を斗十一度から起こす。日食予測の的中を競わせたところ(六月戊申朔の日食で劉孝孫は卯時、張孟賓は甲時、鄭元偉・董峻は辰時、宋景業は巳時と予測し、実際は卯甲の間に発生)、優劣が定まらないまま北斉は滅んだ。

北周の暦

  • 西魏は李業興の『正光暦』を用いた。北周の明帝武成元年、有司に周暦の造暦を命じ、露門学士・明克譲、麟趾学士・庾季才らが祖暅の旧議に依って南北の術を調和させたが、その後の観測で誤差が見つかり北周・北斉で暦に一日の差が生じた。
  • 武帝の時、甄鸞が『天和暦』を造った(上元甲寅から天和元年丙戌まで積八十七万五千七百九十二算、章歳三百九十一、蔀法二万三千四百六十、日法二十九万百六十、朔余十五万三千九百九十一、斗分五千七百三十一、会余九万三千五百十六、暦余十六万八百三十、冬至斗十五度)。宣政元年まで用いられた。
  • 大象元年、太史上士・馬顕らが『丙寅元暦』を上呈した。奏文は「九章五紀・三統四分の説はいずれも節気・晷緯を考詳し政を布き時を授けるためのものだが、天の運行は測りがたく差異が生じやすい。北周は受命以来、暦を壬子から甲寅へ改めたが高祖武帝はなお未だ妙を尽くさないとして再考を命じた。上呈された暦は八家あったが精粗まちまちで、去年冬、宣帝の詔により馬顕らが史局の旧簿・諸家の法数を取捨して新術を定めた」という内容で、上元丙寅から大象元年己亥まで積四万一千五百五十四算、日法(蔀会法)五万三千五百六十三、章歳四百四十八、斗分三千百六十七、蔀法一万二千九百九十二等の数値を掲げた。
  • この暦の制定を主導したのは道士・張賓で、高祖(楊堅)の禅譲の意図を察知し符命を説いて重用され、受禅後に華州刺史となった。劉暉・董琳・索盧祐・馬顕・鄭元偉・任悦ら多数の官と共に新暦を造らせ、太常卿・盧賁が監督した。張賓らは何承天の法に微修正を加え、開皇四年二月に完成・上奏。高祖は「張賓らは古今に通じ、暦は精密である」と詔して天下に頒布・施行させた。

張賓暦の要目

  • 上元甲子から開皇四年甲辰まで積四百十二万九千一算。蔀法十万二千九百六十、章歳四百二十九、章月五千三百六、通月五百三十七万二千二百九、日法十八万千九百二十、斗分二万五千六十三、会月千二百九十七、会率二百二十一、会数百十半、会分十一億八千七百二十五万八千百八十九、会日法四千二十万四千三百二十、会日百七十三・余五万六千百四十三・小分百十、交法五億千二百十万四千八百、交分法二千八百十五、陰陽暦十三・余十一万二百六十三・小分二千三百二十八、朔差二・余五万七千九百二十一・小分九百七十四、蝕限十二・余八万千三百三・小分四百三十三半、定差四万四千五百四十八、周日二十七・余十万八百五十九。
  • 五星の合率:木星四千百六万三千八百八十九、火星八千二十九万七千九百二十六、土星三千八百九十二万五千四百十三、金星六千十一万九千六百五十五、水星千百九十三万千百二十五。

劉孝孫・劉焯による張賓暦批判

  • 劉孝孫と冀州秀才・劉焯は張賓暦の誤りを六条にわたって指摘した。
  • 何承天は閏の失を知らず十九年七閏の法をそのまま用いた。
  • 張賓らは宿度のずれを解さず冬至の日を常度のままとした。
  • 連珠合璧(日月五星の同時会合)は本来七曜を同一の元で扱うべきなのに五星を別の元で立てた。
  • 張賓らは日気の余分が尽きることのみを立元の法とし、日月の不合が朔旦冬至を成立させない点を理解していない。
  • 張賓らは立元の定法を守るのみで進退の必要を明らかにしていない。
  • 張賓らは大余二十九を加えるのみで朔とし、日月の合会を求めて定めることを解していない。
  • これらは暦数の根幹に関わる精妙な問題で、劉暉(張賓側)はこれを理解できていないと批判された。ただし験影定気については何承天の暦が優れ、張賓らの推測はそれから遠ざかっている一方、合朔順天については何承天の暦が劣り張賓らはその迷った跡を踏襲していると評された。
  • 魏の尚書郎・楊偉は『景初暦』で「加時が天より後れ、食が朔に一致しない」と論じたが真の解決には至らなかった。宋の何承天も「月行には遅疾があり合朔・月食は朔望に一致しないことがある」と述べたが、皮延宗の非難で実行できなかった。北魏の龍宜弟も同様の指摘をしたが、正すには至らなかった。劉孝孫の暦法は月行の遅疾で合朔を定め、食が必ず朔にあるようにすることを目指したもので、その論証として次の三点を挙げた。
  • 日食は必ず朔にあることの検証――『詩経』の「十月之交、朔日辛卯、日有食之」を甲子元暦で推算すると一致した。『春秋』の日食三十五件のうち二十七件は「朔」と明記され甲子元暦と一致、八件は朔字を欠くが『左伝』『公羊伝』『穀梁伝』の異説を検討すると甲子元暦の推算はいずれも朔日と一致し、公羊・穀梁は臆説と判明した(隠公三年二月己巳・荘公十八年三月・僖公十二年三月庚午・十五年五月・襄公十五年八月丁巳などの具体例を列挙)。前後漢・魏・晋四代の日食記録百八十一件(前漢四十五・後漢七十四・魏十四・晋四十八)を甲子元暦で推算するといずれも朔日の食と一致した。
  • 度差の変化の検証――『尚書』の「日短星昴、以正仲冬」(堯の時代)を甲子元暦で推算すると一致。漢の太初元年の落下閎らの観測(冬至の日が牽牛初)、晋の姜岌・宋の何承天の観測(冬至の日が斗十七度)などと比較し、歳月を経て冬至点の度数が変化していることを示し、開皇甲辰の年には冬至が斗十三度にあると結論した。
  • 気影の長さの検証――『春秋緯命暦序』の魯僖公五年正月壬子朔旦冬至を甲子元暦で推算すると一致。『宋書』の元嘉十年、何承天が土圭で測影し冬至が三日ずれていたとする記録について、元嘉十三年から二十年までの八年分の冬至・影長のずれを甲子元暦で検証し、いずれも一致することを確認した(各年の詳細な日付比較を列挙)。

張賓暦から張胄玄暦への交替

  • 張賓は高祖の寵愛を得ており、劉暉が付会して太史令に昇進した。劉暉・張賓は劉孝孫・劉焯を非難し、両者は他事にかこつけて罷免された。張賓の死後、劉孝孫は掖県丞として上京し暦を上奏しようとしたが再び劉暉に阻まれ、太史に留め置かれたまま長く昇進せず、ついに弟子とともに輿に棺を載せて闕下に赴き慟哭した。高祖はこれに感じ入り国子祭酒・何妥に諮問、孝孫の暦を評価させ大都督に抜擢して張賓暦と比較させた。
  • 信都の人・張胄玄も算術で太史に仕えており、劉孝孫とともに張賓暦を批判した。開皇十四年七月、日食の的中率検証で「太史の予測は二十五回中一回のみ的中、張胄玄は前後の妙を尽くし符合、劉孝孫も過半が的中」との楊素らの報告があり、高祖は劉孝孫・張胄玄を労った。劉孝孫は劉暉の処刑を先に求めたため高祖の不興を買い罷免された。まもなく孝孫は没し、楊素・牛弘らが惜しんで張胄玄を推薦、高祖は張胄玄を重用し新術の制定に参与させた。
  • 劉焯は張胄玄の登用を聞いて劉孝孫の暦法に増損を加えた『七曜新術』を上奏したが、張胄玄の法と乖離が大きく、袁充・張胄玄の反対で退けられた。開皇十七年、張胄玄暦が完成・上奏され、楊素らに校閲させたところ、劉暉・王頍らが旧暦を擁護し激しい論争となった。劉暉・劉宜は古史の日影記録を援用して張胄玄暦を批判し、『命曆序』『左伝』の記載との一致度を比較する詳細な議論(僖公五年・成公十二年・昭公二十年の冬至記録、元嘉年間の冬至影長七例、北周天和元年から開皇十五年までの冬至夏至影十四例など)を展開し、張賓暦の方が符合度が高いと主張した。
  • また開皇四年から十六年にかけての実測日食・月食の観測記録(虧の方角・食分・時刻)を列挙し、張賓暦の予測の的中度を示したが、張胄玄暦は十分に的中しないとされた。
  • 論争が長引く中、通事舎人・顔慜楚が「漢の落下閎が『顓頊暦』を改め『太初暦』を作った際、後八百年でこの暦は一日ずれると予言した」と上書(詳細は張胄玄伝に記載)。高祖はこれを神秘化し、張胄玄の術は七曜と符合し太史の暦は疎漏が多いと詔し、太史令・劉暉、司暦・郭翟・劉宜、驍騎尉・任悦は詐りを働いたとして除名、通直散騎常侍・領太史令の庾季才、太史丞・邢俊ら六人は職務怠慢として解任された。張胄玄の暦法が正式に施行され、張胄玄は員外散騎侍郎・領太史令に抜擢された。
  • 張胄玄は袁充と互いに推挙し合い、名声を高めた。張胄玄は祖沖之の学を継ぎその師法を伝えたとされ、以後日食の的中率は大きく向上した。開皇十七年の暦は冬至を虚宿五度に置いたが、後に疎漏が判明し、大業四年に劉焯が没した後、冬至を虚宿七度とする改法が行われ、諸法にも増損が加えられ、義寧まで用いられた。以下に大業四年戊辰の年に定めた暦術を記す。

大業暦(張胄玄暦改訂版)の要目

  • 甲子元から大業四年戊辰まで積百四十二万七千六百四十四年。章歳四百十、章閏百五十一、章月五千七十一、日法千百四十四、月法三万三千七百八十三、辰法二百八十六、歳分千五百五十七万二千九百六十三、度法四万二千六百四十、没分五百十九万千三百十一、没法七万四千五百二十一、周天分千五百五十七万四千四百六十六、斗分一万八百六十六、気法四十六万九千四十、気時法一万六百六十、周日二十七・日余千四百十三、周通七万二百九、周法二千五百四十八。

暦算の諸術(推算手順の要旨)

  • 推積月術:入元以来の年数に章月を乗じ章歳で割り積月・閏余を求める(閏余三百九十七以上で冬至がその月にない場合は積月に一を加える)。
  • 推月朔弦望術:月法に積月を乗じ日法で割って積日・小余を求め、六十を引いて大余とし甲子から数えてその年の天正月朔日を得る(朔小余五百四十七以上でその月は大の月)。大余に七、小余四百三十七太を加えて上弦、さらに加えて望・下弦・翌月朔を求める。
  • 推二十四気術:月法に閏余を乗じ、章歳に朔小余を乗じたものを加え、気法で割って冬至日を得る。次の気は日十五・日分九千三百十五・小分一を加えて求める(中気のない月を閏月とする)。
  • 求朔望入気盈縮術:入気日算に損益率を乗じ十五で割って盈縮の定数を求める。
  • 推土王術:分至日に二十七・日分一万六千七百六十七・小分九を加えて土用入りの日を求める。
  • 推没日術:気の小分の有無に応じた計算で没日・没分を求め、次の没日は日六十九・日分四万九千三百七十二を加えて求める。
  • 推入遅疾暦術:周通で朔積日を割った余りから天正朔夜半の入暦日・余を求め、大月・小月に応じて日余を加減して次月・次日の入暦を求める。
  • 求朔望加時入暦術:朔小余に四十九を乗じ二十二で割って日余・小分を求め夜半入暦日に加える。次月・望も同様に加算して求める。
  • 推朔望加時定日及小余術:入暦日余に損益率を乗じ差法で割って定積分を求め、朔望小余を盈縮に応じて加減し定小余を得る。
  • 二十八宿の度数:東方七宿(角十二・亢九・氐十五・房五・心五・尾十八・箕十一、計七十五度)、北方七宿(斗二十六・牛八・女十二・虚十・危十七・室十六・壁九、計九十八度)、西方七宿(奎十六・婁十二・胃十四・昴十一・畢十六・觜二・参九、計八十度)、南方七宿(井三十三・鬼四・柳十五・星七・張十八・翼十八・軫十七、計百十二度)。
  • 推日度術:歳分に入元以来の年数を乗じ周天分で割って積度・度分を求め、虚宿七度から数えて天正冬至日の日在度を得る(大月は度三十、小月は度二十九ずつ加えて次月を求める)。
  • 求朔望加時日所在度術:定小余に章歳を乗じ十一で割って度分を求め加算する(朔は日月同度)。
  • 求望加時月所在度術:望の日所在度に度百八十二・転分二十五・小分七百五十三を加えて求める。
  • 求月行遅疾日転定分術:夜半入暦日余に転差を乗じ周法で割って変差を求め日転分を加減する。
  • 推朔望夜半月定度術:定小余に入暦日転定分を乗じ日法で割って分を求め、加時月所在度から加減して前夜半定度を得る。

五星の推算

  • 五星の数:木星千七百万八千三百三十二四分、火星三千三百二十五万六千二十六、土星千六百十二万千七百六十七、金星二千四百八十九万八千四百十七、水星四百九十四万千九十八。
  • 終日・日分:木星三百九十八日・三万七千六百十二四分、火星七百七十九日・三万九千四百六十六、土星三百七十八日・三千八百四十七、金星五百八十三日・三万九千二百九十七(晨見伏三百二十七日、夕見伏二百五十六日)、水星百十五日・三万七千四百九十八(晨見伏六十三日、夕見伏五十二日)。
  • 求星見術求平見見月日求後見:各星の合率・終日から冬至後の平見の日・月を求める手順。木星以下、各星ごとに立春・雨水など二十四節気に応じた見え始め・見え終わりの補正値(乗数・加減日数)が細かく定められている(木星は初見伏去日十四度、火星十七度、土星十七度、金星十一度、水星十七度など)。
  • 行五星法:定見の前夜半の日所在度に定見日分を加え、初見去日度数を晨減・夕加して初見所在度を求める。以後は一日ごとの行度(順行・留・退行・伏)を、木星・土星・火星・金星・水星それぞれについて、順行の日行分・留の日数・退行の日行分・伏に至るまでの具体的な数値で規定する(例:木星は初見順行日行万六百十八分、百十四日で十九度進んで留、二十六日後に退行、退行八十四日で十二度退き、二十五日留まってまた順行して伏する、等)。

交食の推算

  • 推交会術の基本数値:会通千六十四万六千七百二十九、朔差九十万七千五十七、望差四十五万三千五百二十八半、単数五百三十二万三千三百六十四半、時法三万二千六百四、望数五百七十七万六千八百九十三、外限四百八十六万九千八百三十六、内限千十九万三千二百半、中限五百六十四万九千四百四半、次限千三十二万六百八十九。
  • 推入交法求望求次月:会通で積月を割った余りに朔望差を乗じて入交余を求め、望数・朔差を加えて望・次月の値を求める。
  • 推交道内外及先後去交術:気差の加減(啓蟄〜穀雨・白露〜立冬などの節気ごとに異なる乗数を用いる)により定余を求め、外限・内限・単数・次限との大小関係から日食・月食の内外道を判定し、去交時数を求める。
  • 推月食加時術推日食加時術:食定日の小余から辰刻を求め、日食については内道・外道、季節(春三月・秋三月)に応じた加減を経て時差を求め、加時の辰刻を確定する。
  • 求外道日食法求内道日不食法:去交の時数、季節、加時の方位などの条件により、日食が発生するか否かを判定する規則群。
  • 求月食分推日食分術:去交余から不食余・食分を算出する方法(食既となる条件、内道・外道、節気ごとの補正値を含む)。
  • 求所起:食の始まる方角は内道では西北から虧けて東北から、外道では西南から虧けて東南から始まるとし、食分十三分以上では真東西から始まるとする。
  • 求日出入所在術:入気の辰刻・分と後気の辰刻・分の差に入気日算を乗じ十五で割って定刻を求める。