看到“Claude挑战黎曼猜想失败,却意外刷新37年数学纪录”这条新闻时,我的第一反应不是感叹AI很强,也不是嘲笑它离证明黎曼猜想还差得远,而是想弄清楚一个问题:一次挑战大定理的失败,为什么能产出一个长期没人突破的数学结果?
如果真的像标题说的那样,模型没能证明黎曼猜想,却在某个具体问题上把保持了37年的结果往前推了一步,那这件事的意义可能比“证明黎曼猜想”更值得讨论。因为“证明黎曼猜想”一旦成功,会是几十年来最重大的数学新闻,但它大概率不会来自一个通用对话模型。而“在局部问题上刷新一个长期纪录”恰恰是AI辅助科研最真实的切入方式:它不需要一次解决所有难题,只需要在人类已经验证过的搜索空间里,找到一条过去没想到的路。
这篇文章我想聊清楚三件事:这个新闻里到底什么是“失败”,什么是“意外纪录”;AI做数学推理的底层机制为什么能支撑这种“局部突破”;以及作为一个普通研究者或工程师,如何用Claude Code这类工具,把AI真正接入“提出猜想—生成候选—验证结果—形成结论”的流程里。
1. 别急着下结论:一场“失败”的实验,为什么值得被讨论
1.1 黎曼猜想的难度,决定了“失败”才是常态
黎曼猜想不是普通的开放问题。它描述了黎曼ζ函数非平凡零点的分布规律,而素数在自然数中的统计行为又和这个分布紧密挂钩。从1859年黎曼提出这个问题到现在,无数数学家尝试过,包括希尔伯特、哈代这些顶尖人物,最终都没有得到完整证明。
所以当听到“Claude挑战黎曼猜想失败”时,我的第一反应是:这太正常了。如果现有的大语言模型能直接证明黎曼猜想,那反而需要怀疑是不是模型“背诵”了某个尚未公开的证明。因为黎曼猜想本身牵涉的深度,远超“从训练数据里拼接出合理文本”的能力范围。它需要全新的数学结构、创造性的定义、长链条的逻辑推理,这些都不是当前语言模型最擅长的东西。
真正值得关注的,不是“它失败了”,而是在一个本来就不可能成功的任务上,模型为什么还能留下一点东西。就像一个人登珠峰没登顶,却在某段冰壁上找到了一个比以往更安全的攀爬路线,这个路线本身对后续登山者就有价值。
1.2 “刷新37年纪录”才是这件事真正的信号
从相关讨论来看,这次所谓的“意外纪录”,指的是在某个具体数学问题上,模型给出的结果比已知的最好结果更优,而这个已知结果已经三十七年没有被人动过。
我特意没有在这里强调“哪个具体问题”,因为这个细节在不同报道里可能不一致,而且很容易因为转述而失真。但结构性的信号很清楚:长期没有被改进的结果,通常不是因为没有人想改进它,而是因为人工搜索成本太高,或者路径已经固化。三十七年没人突破,说明这个位置不是靠简单套公式能推进的。
这时候让AI去跑,“意外”刷新,其实符合大语言模型加搜索的做事方式:它可以在一秒内生成成千上万种局部构造、候选表达式、组合方式,然后靠外部脚本验证哪些成立。过去一个博士生需要花几个月试出来的东西,模型可能几小时就遍历了一遍。这不是“创造力”取代人类,而是“搜索带宽”变宽了。
1.3 公众讨论常把两件事混在了一起
这个新闻热度高,很大程度上是因为“黎曼猜想”这个名字自带流量。但很多讨论把它复杂化了。
一种声音说:“AI连黎曼猜想都证不出来,说明它根本不理解数学。”这种判断错在拿一个连人类顶尖天才几百年都没拿下的问题,去要求一个刚学会“接龙”的工具必须一次通关。
另一种声音说:“AI已经能刷新数学纪录,数学家要失业了。”这种判断又错在把“在一个受限问题上的局部改进”放大成对整个人类数学能力的超越。
我更愿意把这件事拆成两个独立问题来看:
- AI能不能独立完成黎曼猜想级别的完整证明?在当前阶段,几乎不可能。
- AI能不能在人类定义清楚、验证机制明确的搜索空间里,找到有价值的局部新结果?事实证明,它已经能做到。
后一个问题的答案,才是真正会改变数学科研工作流的东西。它意味着AI已经从“陪练”变成了“可验证的发现工具”,虽然这个发现范围还很窄,但方向已经成立。
2. AI不是会“证明”,而是会“搜索”:拆开看它到底做了什么
2.1 语言模型做数学,本质上是在做受约束的搜索
很多人误解大语言模型的能力,以为它内部有一个“逻辑引擎”,像人一样一步步推理。实际上,语言模型在生成答案时,做的事情更像是“根据前面的内容,预测下一个最合理的词/符号/步骤”。它能做数学,是因为训练数据里有海量数学文本,模型学会了数学语言的结构和常见证明模式。
所以把Claude放在数学推理任务里,它更像一个“看过海量棋谱的棋手”,能快速提出很多有希望的候选招法,但每个招法是不是正确,不能只靠它自己判断。它需要在外部验证器、代码脚本、穷举检查里走一遍,才能知道哪些候选真正成立。
真正的突破在于:过去我们靠数学家在大脑里做搜索,一个人同时只能维护几条路径。AI则可以把搜索做大几个数量级,生成大量局部路径,再用验证器快速淘汰。这就是“生成加验证”的闭环。
2.2 为什么黎曼猜想会卡住,而局部问题却能突破
黎曼猜想这种级别的问题,难点在于证明链条太长,且每一步都需要新的概念构造。语言模型擅长的是“在已知结构里找到常见模式的组合”,而不是从零创造跨领域的新概念。
但很多具体的数学问题并不是这种类型。比如:
- 某个组合不等式是否还能改进?
- 某个图论问题的下界能不能往上提一点?
- 在给定限制条件下,是否存不存在反例?
这类问题通常边界清晰,验证成本低,适合用程序去搜索。AI生成候选,然后用Python、SageMath或定理证明器去验证,就能在较短时间内覆盖大量情况。这次所谓“刷新37年纪录”,很可能就属于这种模式:模型在大量生成、验证、回滚的过程中,找到了一个人类此前没有尝试过的构造。
这解释了“失败”和“意外”为什么能同时发生:黎曼猜想的证明路径太长,最终失败;但搜索过程中遇到的一个局部子问题,反而被提前解决了。这种现象在数学发现史上并不少见,许多大证明的副产品,最后都变成了独立的研究成果。
2.3 “可验证”才是AI数学推理的关键增量
如果只看AI生成的文本,它说得再漂亮也只是“可能正确”。数学共同体能认可一个新结果,前提是它可以被独立验证。
所以,AI辅助数学研究最核心的变化,不是AI能“写证明”,而是它和“可验证计算”绑定在了一起。把AI生成的候选步骤丢进验证器,能通过才算是结果,不能通过就继续迭代。换句话说,AI负责“产生想法”,机器和人工负责“确认想法”。错误会被过滤,而不是被包装成新发现。
这次新闻里强调“意外”,反而说明模型并不是一开始就朝着这个纪录去的,而是在大量试错里偶然撞到。这种偶然性,正是搜索型代理和传统证明型工具最大的不同。它不会像人类一样只沿着“看起来合理”的方向前进,它会浪费大量算力在奇怪的地方,但正是那些奇怪的地方,偶尔藏着人类忽略的结构。
3. 把Claude Code变成数学研究助手:一个可落地的实操路径
3.1 为什么选择能执行代码的模型工具,而不是普通对话框
普通聊天式AI可以帮你解释数学概念、给出证明思路,但它有一个明显问题:它没法自己运行你给的脚本,也没法根据报错信息自动修正。你需要在“AI对话窗口”和“终端”之间来回切换,把自己变成一个接线员。
Claude Code这类命令行工具把两者合并了:它可以直接读写文件、执行命令、查看运行结果、再根据结果修改策略。对数学研究或数学实验来说,这非常重要,因为流程常常是:
- 你提出一个假设。
- 写一段脚本验证有限情况。
- 发现反例。
- 修改假设,再验证。
- 反复多轮。
过去这个循环需要你自己动手跑每一步。现在,模型可以替你把循环跑起来,你只需要清晰说明目标和约束。它更像是你的“实验助理”,不只是“顾问”。
注意:Claude Code的安装和配置会随官方版本更新变化。下面只是通用流程,落地前一定先查官方文档,不要拿过时博客里的命令硬套。
3.2 最小可用的数学辅助流程
如果你想在具体研究里试用一下,我建议从“最小可用闭环”开始,不要在第一天就让它去证明大定理。
第一步,选一个非常小的数学命题。比如“验证一下在某个范围内,不等式是否成立”或者“找一个反例”。
第二步,让Claude Code生成脚本并运行。先拿一个简单的数论验证当示例:
# 示例:验证在 n=4 到 100 范围内,n^2 <= 2^n 是否成立 bad = [] for n in range(4, 101): if n**2 > 2**n: bad.append(n) print("反例:", bad if bad else "无反例,范围内全部成立")这是一个很基础的验证,但工作流是一样的:模型生成代码,你运行,它看到结果,再继续解释。真正复杂的问题是逐步迭代出来的。
第三步,在脚本验证通过后,让模型把“验证过程”翻译成“证明思路”。你可以问:
“刚才那段脚本验证了有限范围。如果要证明所有 n≥4 都成立,应该用归纳法,还是直接构造函数?请给出证明提纲。”
这一步非常关键。因为验证只能说明样本里没出错,不能说明对所有情况都成立。你要让AI回到数学证明,而不是停留在“跑通脚本”的层面。
如果你用的是更专业的数论库,可以先安装依赖,再让Claude Code生成脚本:
pip install sympy然后给它一个任务:
# 示例:在小范围内验证哥德巴赫猜想(偶数可拆成两个素数之和) import sympy as sp def check_goldbach(limit): for n in range(4, limit, 2): found = False for p in range(2, n): if sp.isprime(p) and sp.isprime(n - p): found = True break if not found: return n return None counterexample = check_goldbach(1000) print("找到反例:", counterexample if counterexample else "在4~1000偶数范围内没有反例")这段代码不算复杂,但它代表了一类典型用法:让AI替你完成“数值搜索/反例查找”这条腿,然后再回到数学证明这条腿上。
3.3 安装与配置中最常见的几个“坑”
Claude Code相关的网络搜索里,出现频率最高的几个问题,我在实际使用中也遇到过。这里整理成一条排查链路,免得你卡在第一步。
先看命令是否被识别。安装完成后,在终端输入:
claude --version如果系统提示“claude无法识别”“不是内部或外部命令”,说明CLI没有正确加入PATH。常见解法是检查全局安装路径是否在PATH中,然后重启终端,或者重新安装。
再检查安装过程是否完整。有用户会遇到类似“native binary not installed”或“postinstall did not run”的报错。这种通常是安装过程中权限不足、网络中断或包管理器没执行完完整的安装脚本。处理方式是重新安装,注意不要用sudo乱改权限,避免权限污染。
然后是版本和模型名问题。如果你用了第三方模型接入,或者当前版本还不认识某个模型名,运行时会出现类似“model not recognized”的报错。这时候不要猜,直接看当前版本的模型支持列表,或用官方默认模型跑通一次再说。
最后看运行时的配额和请求限制。像“529”这类错误,通常和短时间请求过多、服务端过载或订阅配额有关。遇到这种情况,先停掉批量循环,降低并发,等症状缓解再继续,不要反复重试把问题放大。
注意:如果某个安装教程里出现“绕过验证”“破解订阅”“跳过登录”这类方案,直接不要看。合规、稳定、可长期维护才是做研究工具的前提。
3.4 给Claude设计数学任务的提示词模板
很多人在用AI做数学时,只是丢一句“帮我证明这个定理”。这个问法太开放,AI很容易给出“看起来合理但经不起推敲”的文本。
我自己常用一个更结构化的模板:
你是一个数学研究助理。我要验证或证明下面这个命题: [命题文本] 请按下面结构输出: 1. 已知条件和目标结论; 2. 三条可能的证明路径,不要只给一条; 3. 推荐先验证哪个子问题,并给出理由; 4. 可以用于数值验证的Python/SageMath脚本; 5. 你现在最不确定的步骤,以及如何验证它。 注意:任何结论都必须说明是“已知事实”“推断”还是“待验证”。这个模板的价值,是让模型把不确定性显式地标出来。AI生成的数学文本很容易自信过头,如果你不要求它标注“待验证”,它可能会把推测当成结论写出来。一旦你要求它区分已知和推测,它至少会收敛很多。
4. 盲目相信输出,一定会翻车:适用边界与排查思路
4.1 哪些数学任务适合交给AI,哪些不适合
不是所有数学问题都适合交给Claude做。我把常见任务分成适合和不适合两类,方便你快速判断。
适合的任务:
- 数值实验和反例查找:在给定范围内搜索反例,验证猜想是否可能成立。
- 生成候选构造:比如图论里的着色、组合设计、不等式中的测试函数。
- 化简冗长表达式:把符号计算里的中间步骤交给AI整理,再由人工检查。
- 把已知证明从“概括”变成“程序化验证脚本”:用代码验证某个中间引理。
不适合的任务:
- 证明黎曼猜想、哥德巴赫猜想这种超大规模开放问题。
- 需要创造全新数学对象、没有清晰验证标准的问题。
- 完全依赖自然语言、没有可计算验证手段的“伪命题”。
- 对正确性要求极高,且没有任何外部检查工具的形式化证明。
一个简单判断标准:如果一个问题没有“快速判断结果对不对”的办法,那AI的输出就很容易变成幻觉放大器。反过来,如果一个问题能写成脚本验证,AI才有发挥搜索优势的空间。
4.2 验证AI数学输出的“四层检查”
在把AI的结果当成“新发现”之前,至少要过四层检查。
第一层是“代码能跑吗”。很多问题会卡在最基础的语法和依赖上。让Claude Code生成脚本后,先确认脚本能运行、输出格式符合预期。
第二层是“数值范围够吗”。如果只验证了1到100,那只能说明这个范围内没反例。需要适当扩大范围、增加随机样本、覆盖极端值,才能提高置信度。
第三层是“逻辑能还原吗”。脚本验证通过后,要要求AI把验证过程改写成一个可以被人工理解的分步骤证明。如果它写不出,或者每一步都依赖“显然”,那就要警惕。
第四层是“外部验证”。真正严肃的数学结论,最后要经过同行评审或形式化验证器的确认。AI和代码只能帮你发现线索,不能替代这个环节。
4.3 一套可以反复使用的“AI辅助数学研究”工作流
综合前面的内容,沉淀一套我建议的通用工作流:
- 定义问题:把目标写成“如果…那么…”的命题,明确条件和结论。
- 拆分子目标:把问题拆成几个能独立验证的引理或反例测试。
- 生成候选路径:让AI给出至少三条思路,并配一个验证脚本。
- 快速验证:运行脚本,记录所有反例、边界条件和异常输出。
- 循环修正:把失败信息重新丢给AI,让它调整假设和构造。
- 人工审查:从数值结果回到数学证明,检查逻辑链是否完整。
- 沉淀记录:保存最终脚本、日志和推理过程,方便复现和后续迭代。
这套流程的核心理念不是“让AI给出答案”,而是“让AI帮你更快地搜索答案,同时保留验证过程”。即使某次结果失败了,失败记录本身也是信息。下一次可以把“已知不成立的方向”排除掉,减少重复劳动。
4.4 长期来看,这件事会改变什么
这次Claude挑战黎曼猜想的事件,如果放到更长的时间尺度里看,最可能改变的不是“会不会证明大定理”,而是数学科研的日常流程。
以前,一个数学家想验证一个猜想,可能要自己写很多代码、试很多例子、排查很多路径。这个过程很耗时,也是很多灵感被扼杀的地方。现在,AI可以承担前期的高通量搜索和琐碎验证,让研究者把精力放在更有创造性的判断上:哪些问题值得继续追,哪些反例值得深入理解。
但这并不意味着数学家会被替代。恰恰相反,一个能提出好问题、能把问题拆成可验证子目标、能审慎看待AI输出的人,会变得更有价值。AI是“生成器”,人类是“判别器”。生成器负责扩大搜索空间,判别器负责判断哪些方向真正值得花时间。
如果你在研究或学习数学,我的建议是先不要幻想“用AI证明一个大猜想”。先把“用AI做实验、用脚本做验证、用人工做判断”这套工作流跑通,积累几个真正被验证过的小结果。当这套流程稳定了,再尝试把它扩展到更复杂的问题上。这才是这次新闻里最值得学习的部分。