[AI数学]GPT-5.6一小时解开50年数学猜想,700词Prompt驾驭64个子Agent

📅 2026/7/13 9:46:28
[AI数学]GPT-5.6一小时解开50年数学猜想,700词Prompt驾驭64个子Agent
henry 发自 凹非寺量子位 | 公众号 QbitAI我看呐只要以后笔记本半开着就没有人的事儿了。刚刚OpenAI研究院Ethan Knight宣布昨儿刚出的GPT-5.6用不到一小时就完成了一道存在了半个世纪的图论猜想证明。而这道题呢来头也还真不小就是大名鼎鼎的循环双覆盖猜想Cycle Double Cover Conjecture。为解决这道题研究员把现在最顶的GPT-5.6 Sol蹬到UltraGPT呢又自己蹬了64个子agent。最后硬是写出了一份三页的pdf证明完毕Over。发布后还在韩国开ICML的Noam Browno1核心贡献者也隔着太平洋第一时间赶来捧场。他表示这次和此前的Erdős单位距离问题不同不靠什么内部特供模型靠公开能用的GPT-5.6 Sol Ultra就把活儿干了。而且GPT-5.6 Sol Ultra把测试时计算并行大幅铺开原本可能要磨上一整天的证明如今被64个子agent压进了一个小时。可以说在数学这块前沿模型的天花板还在拉高。而多agent也能极快地加速任务的处理时间。当然你可能会问那咋了AI不老证明数学题吗但这次还真不太一样OpenAI这次顺手放出了完整prompt而这里面就有驾驭GPT-5.6这类神话级模型的保姆级技巧不替模型规定解法只把验收标准钉死。定义、范围、边界情况提前一次说清适当重复目标防止上下文漂移。不只说要什么答案还写清什么不算答案。复杂任务不要固定分工而要动态搜索并设置独立审查。接下来我们一起来看。一小时秒杀的究竟是什么题先说这个题本身。循环双覆盖猜想通常被追溯到Tutte、Itai 与 Rodeh、George Szekeres、Paul Seymour等数学家在上世纪陆续提出长期被视为图论中最重要的开放问题之一。它问的是给你一张由点和线组成的图能不能找出一批首尾相接的“圈”让图上的每一条边都刚好被这些圈经过两次咱们以上图为例白圈是路口彩线是道路A到J是十个顶点。最外面的绿色路线从A出发依次经过B、C、D、E最后重新回到A这就是一个圈。但只有绿色这一圈还不够因为它只经过了图最外侧的几条边而且每条边目前只被覆盖了一次。要满足圈双覆盖还需要继续加入更多能够绕回起点的路线。比如蓝色路线也经过了A到B随后拐进图的内部最后重新回到A。这样一来A到B这条边就被覆盖了两次绿色一次蓝色一次。其他边也要用类似的方法补齐。最终无论挑出图中的哪一条边都应该恰好有两个圈经过它。这些圈可以互相重叠也可以共享很多条边它们不需要是图中最短、最外侧或最规整的圈。唯一的要求就是每一条边在所有圈中出现的总次数必须恰好等于二。此外这里还要补充一个关键条件这张图必须是无桥图。所谓“桥”就是一条一旦被删除整张图就会被断开的边。比如我们把上面的A—F删掉路线仍然可以沿着A—B—G—I—F从另一条路到达F整张图不会因此断开。乍看之下这个猜想似乎很自然。一张图只要没有桥那么每一条边至少都属于某个圈。既然每条边都能塞进一个圈把这些圈收集起来不就完成了吗可问题在于圈双覆盖要求的不是“至少覆盖一次”而是每一条边恰好覆盖两次。你为了补上一条只出现过一次的边加入一个新圈可能会顺便让其他边从两次变成三次为了修复这些边又可能继续影响更多边。因此难点并不是单独为每条边寻找一个圈而是让所有圈在整张图上同时协调既不能漏掉任何边也不能让任何边多出现一次。那GPT是怎么做的它没有硬找圈而是先给边贴标签GPT-5.6在这份证明稿没有直接在图里寻找一堆圈而是换了一种思路先把“找圈”转化成一个有限域上的边标号问题再用线性代数证明这些标号一定能够在整张图上拼起来。证明大致分成四步。第一步先把一般图归约成三次图也就是每个顶点都恰好连着三条边。只要三次图的情况被证明原问题也就随之解决。第二步利用无处为零的8流定理给每条边贴上一个非零的“三位二进制标签”。这些标签还满足一个条件在每个顶点处相邻三条边的标签能够彼此抵消。第三步再把每条边的一个标签扩展成两个标签。目标是让同一个标签在每个顶点附近要么完全不出现要么恰好出现两次。这样一来把所有带有同一个标签的边单独拿出来它们自然会首尾相接组成若干个圈。由于每条边恰好带两个标签也就恰好属于两个圈。第四步也是最关键的一步是让这些局部标签在整张图上彼此一致。因为同一条边连接两个顶点两端给出的标签必须完全相同。GPT-5.6把这个全局协调问题转化成一个线性方程组再用对偶空间和奇偶性证明这组方程一定有解。最终所有局部标号都能拼成一个统一的全局方案相同标签的边自动组成圈每条边也恰好被两个圈覆盖。总的来说这份证明最核心的思路是它没有直接去找一批圈而是先设计一种特殊的边标号让圈自己从标号中“长出来”。原本复杂的图结构问题也就被转化成了一个可以用线性代数解决的全局一致性问题。普通人能抄的prompt作业最后就到了我们非数学专业人也能用到的环节。就像开头所说OpenAI这次还公布了完整的prompt。先说这套提示词给人的第一印象就是非常长大约700个英文字符。它一方面说明如今的模型已经能够消化相当复杂、相当具体的长指令另一方面也延续了最近炒得很好的loop engineering以及“神话级模型”一贯的prompt风格不规定一套固定 SOP而是定义最终结果与验收标准。换句话说它不替模型规定“第一步做什么、第二步做什么”而是把什么才算真正完成、哪些结果不算完成全部写清楚。具体展开来看这份prompt有四点尤其值得学习。第一不写解题步骤但要写清楚“什么叫解完”很多人写复杂任务的prompt第一反应是给模型安排一套流程先分析问题再提出方案再逐步验证最后总结答案。但对于真正困难、路径未知的任务SOP未必有用。因为你事先写下的步骤很可能本身就是错的。模型一旦沿着错误路线执行得非常认真最后只会得到一份结构完整的错误答案。OpenAI这份prompt采取了相反的思路它不规定模型必须使用归纳法、流理论还是极小反例而是反复强调最终结果必须满足什么条件。比如它直接把验收标准锁定为每一个有限、无桥、无自环的多重图都必须被证明存在圈双覆盖。与此同时它还还明确禁止模型通过添加额外假设来“绕道”解决问题。不能只证明三次图不能只证明平面图也不能假设图一定连通。这类写法最值得借鉴的地方是对路径未知的任务不要过度规定过程而要把最终交付物定义清楚。第二把定义、范围和边界情况一次性说清楚。模型出现错误很多时候并不是不会推理而是一开始理解的任务就和你想要的不一样。所以OpenAI在正式提出问题前先花了很大篇幅定义什么是图什么是桥什么是圈什么是圈双覆盖平行边是否允许两条平行边能不能组成一个圈不连通图算不算无边图应该如何处理。它甚至专门强调覆盖中的圈不必是诱导圈也不必彼此边不相交唯一要求是每条边总共恰好出现两次。这里的作用是把所有可能产生歧义的地方提前消掉。而越是重要的任务越不能依赖模型“应该知道我是什么意思”。值得一提的是在这份长prompt里研究员还多次在不同位置重复“最终目标是什么”。这种重复看似啰唆实际是在帮助模型长时间推理时不偏离任务。第三不只告诉模型什么是答案还要列出什么不算答案。这是这份prompt里最值得直接抄走的技巧。它没有停留在“请给出完整证明”这种抽象要求上而是专门列出了一批看起来已经很接近、实际上仍然没有完成任务的结果。比如只证明某些特殊图类不算构造出覆盖但部分边不是恰好出现两次也不算这种提前预测模型偷懒的方式就先天地排除了一些可能失败的方式。第四复杂任务不要固定分工而要动态搜索并设置独立审查。OpenAI还要求模型调用最多64个智能体但它没有简单地规定10个智能体研究路线A10个智能体研究路线B。相反它要求先建立多样化的方法组合再根据每条路线的实际进展动态调整资源。如果大量智能体都挤到同一种方法上就把一部分重新分配到尚未探索的方向如果某条路线卡在一个和原问题同样困难的引理上就将它标记为“受阻”除非出现新的机制否则不要继续堆算力。此外它还专门设置了“对抗性智能体”负责检查候选证明有没有偷换定义、漏掉边界情况或者把一个闭合路径硬说成圈。与此同时每个子agent回来时必须带具体引理、方程、构造或反例。不能只汇报“有进展”。这里包含两个很实用的prompt原则。一个是复杂问题需要探索多条互相独立的路线不能让所有模型一开始就知道“当前最被看好的答案”否则很容易集体收敛到同一个错误上。另一个是生成答案和检查答案最好分开。不要让提出方案的模型顺手给自己的方案打分而要专门安排一个角色找漏洞。所以OpenAI这份prompt真正值得学习的并不是它写得足够长而是它把一个复杂任务写成了一份可以验收、可以审查、也可以不断纠错的任务合同不规定唯一道路但把终点、边界、失败条件和审查机制全部写清楚。到这里就是我们从这份prompt里总结出来的几个技巧。完整链接就下面有兴趣的朋友可以进一步学习。参考链接[1]https://cdn.openai.com/pdf/04d1d1e4-bc75-476a-97cf-49055cd98d31/cdc_prompt.pdf[2]https://cdn.openai.com/pdf/04d1d1e4-bc75-476a-97cf-49055cd98d31/cdc_proof.pdf