開元《大衍曆法》,最為緊密,曆代用其朔法。至熙寧中考之,曆已後天五十餘刻,而宿世曆官皆不能知。《奉元曆》乃移其閏朔。熙寧十年,天正元用中午,新曆改用子時;閏十仲春改成閏正月。四夷朝貢者用舊曆,比來款塞。眾論謂氣至無顯驗可據,是以以搖新曆。事下有司考定。凡立冬晷景與立春之景相若者也,今二影短長分歧,則知天正之氣偏也。凡移五十餘刻,立冬、立春之影方停。以此為驗,論者乃屈。元會令人亦至,曆法遂定。
揲蓍之法:四十九蓍,聚之則一,而四十九隱於一中;散之則四十九,而一隱於四十九中。一者,道也。謂之無,則一在;謂之有,則不成取。四十九者,用也。靜則歸於一,動則惟睹其用,一在其間而不成取。此所謂“大衍之數五十,其用四十有九。”
予編校昭文書時,預詳定渾天儀。官長問予:“二十八宿,多者三十三度,少者止一度,如此不均,何也?”予對曰:“天事本無度,推曆者無以寓其數,乃以日所行分天為三百六十五度有奇。既分之,必有物記之,然後可窺而數,因而以當度之星記之。循黃道,日之所行一期,當者止二十八宿罷了。今所謂‘距度星’者是也。非不欲均也,黃道所由當度之星,止有此罷了。”
六壬有十二神將,以義求之,止合有十一神將。貴報酬之主;其前有五將,謂螣蛇、朱雀、六合、句陳、青龍也,此木火之神在方左者、厥後有五將,謂天後、太陰、玄武、太常、白虎也,此金水之神在方右者。唯朱紫對相無物,如日之在天,月對則虧,五星對則逆行避之,莫敢當其對。朱紫亦然,莫有對者,故謂之天空。空者,無統統也,非神將也,猶月殺之有月空也。以之占事,休咎皆空。唯求對見及有所伸理於君者,遇之乃吉。
曆法步歲之法,以冬至鬥建所抵,至來歲冬至所得辰刻衰秒,謂之鬥分。故“歲”文從步、從戌。戌者,鬥魁所抵也。
正月寅,仲春卯,謂之建,其說謂鬥杓所建。不必用此說。但春為寅、卯、辰,夏為巳、午、未,理自當然,不須因鬥建也。緣鬥建有歲差,蓋前人未有歲差之法。《顓帝曆》:“冬至日宿鬥初。”今宿鬥六度。古者正月鬥杓建寅,今則正月建醜矣。又歲與歲合,今亦差一辰。《堯典》曰:“日短星昴。”今乃日短星東壁。此皆隨歲差移也。