数学证明对逻辑链条的完整性要求极高,但通用大模型在生成证明时常常出现“直觉正确但漏洞百出”的现象:它们会跳过必要的引理、默认某个中间结论显然成立,或者用循环论证自圆其说。要想让AI写出教科书级别的严密证明,光靠“请证明……”远远不够,我们需要用结构化的提示词把推理过程约束在严格的框架内。

拆解证明结构:从“一步到位”到“分步推导”
错误提示词往往要求AI直接给出完整证明,这会让模型倾向于输出它最熟悉的常见套路,忽略细节。正确的做法是将证明拆解成多个不可跳跃的推理阶段,用提示词强制AI在每一阶段输出中间结果。一个典型的拆解框架包括:陈述已知条件并符号化、明确要证明的目标、分析需要哪些前置定理、分步构造推导链。例如,对于一道不等式证明题,提示词可以这样设计:
你是一个严谨的数学助手。请按照以下步骤证明不等式: 1. 将题目中的已知条件逐条列出,并为每个条件分配一个标签(如 (1), (2))。 2. 写出要证明的结论,并说明结论中出现的所有符号的含义。 3. 寻找适用的已知定理(如均值不等式、柯西不等式等),明确写出定理的完整表述。 4. 对照定理条件,逐一验证已知条件是否满足定理的前提。 5. 应用定理,写出详细的代数变形过程,每一步都标注使用了哪个条件或哪条定理。 6. 最终得到结论后,用反方向检查是否有未使用的条件或逻辑跳跃。
这个模板把“应用定理”这一步拆分成了“定理陈述→条件验证→代入变形”三个子步骤,相当于强迫AI像学生做题一样写出完整的推导草稿。实际测试中,未使用该模板时模型可能直接写“由柯西不等式得……”,而使用了该模板后,它必须先在步骤3中准确写出柯西不等式的形式,再在步骤4中明确指出哪一项对应x、哪一项对应y,这样就能暴露出AI是否真正理解了定理的适用条件。
类似的拆分思路可以迁移到任何证明领域。关键在于识别出该领域最常见的“跳步点”——几何证明中通常是辅助线的添加依据,数论证明中往往是模运算的性质引用,抽象代数则容易省略同态基本定理的条件验证。针对这些跳步点设计专门的提示词检查项,能成倍提高证明的严密性。
让AI“出声思考”:要求显式标注推理依据
人类数学家写证明时,每一行都可能隐藏着一个“因为……所以……”的逻辑关联,但AI生成的证明经常是连续几行式子,却不说清楚为什么上一个式子能推出下一个。解决这个问题的提示词策略是:要求模型在每一步推导后都用括号注明引用的定理、条件编号或运算律。例如,在提示词中加入以下指令:
在证明的每一行末尾,用方括号 [ ] 标注推导依据,格式示例: a + b = b + a [加法交换律] x² ≥ 0 [实数的平方非负性] f(x) ≤ f(y) [由条件(3)及函数f的单调递减性] 禁止出现没有注明依据的等号或不等号。
这个简单的约束能极大抑制AI的“幻觉式推导”。如果模型无法找到合理的依据,它会尝试编造一条虚假定理,但此时我们可以在后续的交互中让模型自行验证所引用定理的正确性。更进一步,我们还可以要求模型对引用的定理本身再提供简短的证明或参考来源,从而构建多层级的证明网络。实际使用时你会发现,当AI意识到每个等号都必须有来源时,它会开始主动补全之前被忽略的平凡步骤——比如交换求和次序需要绝对收敛条件,或者两边除以一个变量需要证明该变量非零。
除了标注依据,另一个有效技巧是要求AI在关键步骤前用自然语言解释“接下来打算做什么”。这种“意图声明”能帮助模型理清全局思路,避免写到一半陷入混乱。提示词可以这样写:
在每一段推导开始前,用中文写一句“接下来我想通过……来实现……”,然后再进行符号推导。
这种元认知提示让模型从简单的模式匹配升级为带有规划意识的推理,尤其适用于需要构造性证明或存在性证明的场景,比如构造一个满足特定性质的函数或数列。
嵌入反证与构造框架:用模板处理非直证路径
直接的推证法往往有固定路径,但数学中大量漂亮的证明依赖于反证法、归纳法或构造法。AI在面对这类证明时特别容易犯的逻辑错误是:假设反证前提后,推导过程中混入了原命题的结论,导致循环;或者在构造性证明中给出了一个“貌似符合”的对象,却没有验证它是否真的满足所有条件。为此,我们需要为这些特殊证明方法设计专门的提示词模板。
以反证法为例,提示词模板可以约束AI在假设反面成立后,严格使用这个假设去推导矛盾,不能提前偷看原结论。模板如下:
使用反证法证明命题“若P则Q”。 1. 写出反证假设:假设P成立但Q不成立。 2. 将“P成立”和“Q不成立”分别用符号逻辑形式化,作为可引用的条件(H1)和(H2)。 3. 仅使用(H1)和(H2)以及已知的公理、定理进行推导,每一步均标注依据。 4. 寻找一个与已知事实矛盾的命题(如1=0,或某个量既大于又小于另一个量)。 5. 明确指出矛盾点,并由此断定原假设错误,故原命题成立。 在第三步中,禁止直接或间接使用原结论Q或任何由Q可推出的命题作为推导依据。
这种模板相当于为AI画出了一条明确的“红线”,防止它陷入循环论证。对于数学归纳法,模板则要强调归纳基始的验证必须用具体数值,归纳步骤中必须严格区分“归纳假设”和“要证明的n+1情形”,不能混用变量。构造性证明的模板则要求AI在给出构造后,必须逐条核对目标对象的每一个性质,并用列表形式输出核对结果。
实践表明,这些专用模板比泛泛要求“请用反证法证明”效果好得多,因为它们将通常隐式的证明规则外化成了可执行的清单,AI只需按清单操作,出错的概率大幅降低。
增加自检与迭代:让AI审查自己的证明
即便是按照严密模板生成的证明,也可能存在隐藏的错误。最后一道防线是要求AI对写出的证明进行自我审查。这可以在同一个提示词链中完成,也可以采用多轮对话的方式:第一轮让AI生成证明,第二轮切换角色让它扮演审稿人,找出逻辑漏洞。自检提示词可以这样设计:
请仔细检查上面的证明,并回答以下问题: 1. 证明中使用的每一个定理是否都准确写明了前提?是否存在前提未被满足的情况? 2. 是否存在某一行的推导依赖于未明确陈述的假设? 3. 有没有使用待证明的结论本身,或其等价形式? 4. 所有的变量作用域是否清晰,有没有变量名冲突或隐藏的量化? 5. 如果有构造性部分,构造出的对象是否必然存在?是否验证了存在性条件? 请逐一回答,如果发现问题,给出修正后的步骤。
这个自检清单覆盖了最常见的证明漏洞,并且将审查任务结构化,使得AI不需要进行复杂的批判性思维,只需逐条比对。在很多情况下,AI会在这一步自动修正一些小错误,比如忘记声明分母不为零、忽略极限交换的合法性等。开发者可以将自检环节作为固定流程的后处理步骤,与生成模板配合使用,形成“生成-验证-修正”的闭环,经过两三轮迭代后,证明的严谨度会接近研究生水平的手写证明。
上述所有提示词模板都不是僵化的教条,而是可以根据具体数学领域调整的活框架。它们共同的设计哲学是:把人类数学家的思维习惯显式化为对AI的指令,既不限制模型的创造性联想,又为这种联想套上了逻辑的缰绳。当你再次为AI的不严谨证明感到头疼时,不妨从这些模板中挑选组合,你会看到明显的改善。