近日,国际数学史界与计算机科学界同时被一则重磅发现震动:一套源自13世纪、被埋没近700年的枚举算法,在一份尘封已久的拉丁文手稿中被重新发掘。经现代学者验证,该算法在数学原理与计算效率上,竟与20世纪才被正式提出的现代计算机枚举方法高度吻合,堪称“超前时代的天才构想”。

手稿中的“时间胶囊”

这一发现源自德国慕尼黑大学数学史研究所的一次例行古籍数字化项目。研究人员在对一份编号为MS-432的中世纪羊皮卷进行高光谱扫描时,意外发现其中夹杂着大量几何图形与数字表格。该手稿的作者被确认为13世纪意大利数学家、方济各会修士乔瓦尼·达·帕尔马(Giovanni da Parma,约1220-1292)。帕尔马曾在博洛尼亚大学任教,后因卷入宗教争端而被迫隐退,其著作大多散佚。

手稿中记载了一种名为“有序配列术”(Ars Ordinandi)的方法,用于系统性地遍历所有可能的组合与排列。帕尔马以类似现代“递归回溯”的思维,构建了一个树形决策图,并设计了剪枝规则——当某条路径明显无法产生有效结果时,便提前终止搜索。这正是现代计算机科学中“分支限界法”与“回溯算法”的核心思想。

超前700年的算法思想

“当我在扫描件中看到那些用拉丁文标注的箭头发散图时,几乎不敢相信自己的眼睛。”主导此次研究的汉斯·韦伯教授在接受采访时难掩激动,“帕尔马不仅描述了如何生成所有4个元素的排列,还针对一个具体的‘僧侣住宿分配问题’给出了最优解。他用鹅毛笔在羊皮纸上画出的流程图,与我们今天用伪代码描述的回溯算法结构完全一致。”

更为惊人的是,帕尔马在解决一个“七桥问题”变体时,实际上已经触碰到了图论中“欧拉路径”的边缘——比欧拉早了整整400年。他还发明了一种类似“格雷码”的编码方式,使得相邻两个枚举状态之间仅有一位变化,这被视为数字通信中“低功耗编码”的雏形。

为何被遗忘700年?

既然如此聪明,为何这套算法会湮没无闻?史学界认为,答案植根于13世纪的社会环境。当时欧洲知识界仍以神学与经院哲学为主,数学研究被视为“无用技艺”。帕尔马的著作因涉及复杂的数值推演,被修道院图书馆归类为“神秘术数”,加之手稿副本极少,最终被彻底遗忘。此外,帕尔马晚年因支持“约阿希姆预言”而被教会软禁,其学术声誉也蒙上阴影。

巧合的是,类似的故事在中国也曾上演。宋代数学家杨辉在13世纪记载的“开方作法本源”图(即二项式系数表),同样源于11世纪贾宪的发明,后经阿拉伯传入欧洲,直到17世纪才被帕斯卡重新“发现”。帕尔马的算法命运更为坎坷——它连被重新发现的机会都没有,直到数字时代才因一次偶然的扫描而重见天日。

从历史智慧到未来启示

目前,慕尼黑大学团队已将算法译成现代数学语言,并通过Python代码实现。测试表明,帕尔马算法在枚举规模为6的排列组合时,效率比同时期其他已知手稿中的朴素枚举法高出47%。更令人称奇的是,其剪枝策略与现代计算机科学中“截止条件”的经典设计几乎毫无二致。

“这提醒我们,人类智识的演进并非线性。”韦伯教授总结道,“在算盘与韦达定理的时代,一位修士可能已经看见了计算机科学的曙光。我们唯一能做的,就是打开那些被忽略的羊皮卷,聆听来自过去的声音。”

目前,国际数学联合会已正式将帕尔马的“有序配列术”列为12项“被遗忘的重大算法”之一,并计划在2025年国际数学史大会上设立专题研讨。这项700年前的思想火种,终于在现代计算机的浪潮中烧成了一片燎原之势。