楚衍,北宋开封府开封阼城(今河南省延津县)人,著名历算家,少年时精通四声字母。楚衍对《九章算术》、王孝通《缉古算经》、祖冲之《缀术》、刘徽《海岛算经》等经典算经深有研究。楚衍明相法及《聿斯经》,擅长推步术、阴阳术、星历之数。因呈《宣明历》,补司天监学生,迁保章正。乾兴元年,楚衍与历官宋行古等齐集天章阁,奉诏与内侍金克隆监造新历《崇天历》,至天圣元年八月成,被授灵台郎,后晋级为司天监丞,入隶翰林天文。皇祐(1049-1053年)中,同造《司辰星漏历》十二卷。与周琮同管司天监。
楚衍有一个学生贾宪非常有名。贾宪,北宋人,约于1050年左右完成《黄帝九章算经细草》,原书佚失,但其主要内容被杨辉(约13世纪中)著作所抄录,因能传世。杨辉《详解九章算法》(1261)载有“开方作法本源”图,注明“贾宪用此术”。这就是著名的“贾宪三角”,或称“杨辉三角”,是中国古代著名数学成就。
1051年三月,宋仁宗宣楚衍,找他占卜陈贵妃怀孕生产一事。
皇祐三年辛卯岁三月丙午日,仁宗皇帝宣楚衍,立夏日占课,衍依课奏对罢。帝又占陈贵妃六甲,年二十二岁,妊身十月未产,得未时,以月将从魁加未。
勾 合 朱 蛇 未 申 酉 戌 青午 亥贵 空巳 子后 辰 卯 寅 丑 虎 常 玄 阴 蛇 合 朱 勾 戌 申 酉 未 申 午 未 丙 财 戊申 合 子 庚戌 蛇 官 壬子 后
楚衍奏曰:“此课占产,臣不敢言。”
帝曰:“但实言课意。”衍奏云:“于今月二十三日庚戌日辰时,降生一公主,必失左目。生后五日,恐有不测之忧。虽产危而无损,宜预备之。”
上云:“有禳法否?”衍云:“无法禳之。臣当万死。”上当日渐有怒色,云:“且出外听音。”即时差人监守楚衍。
至二十三日庚戌辰时降生一公主。贵妃产时甚艰苦,至当日晚公主忽搐搦,遂损左目,至二十七日,公主死。
即时赐楚衍御酒香药,次日引见,乞恩谢罪。上云:“应验如神。”