# Recipe：在新数学问题上运行多 agent 流水线

> 把"Mersenne 套路"应用到任何新数学问题的 step-by-step 指南。
> **当前版本对应**：MODES.md v1 + Template 1 v1.3 + Template 2 v1.3/1.4 + Template 3 v1.3/1.4

本文档以 **Goldbach 强猜想**（每个 $> 2$ 偶数都是两素数之和）为示例，演示如何完整跑完 Template 1 + Template 2 v2 + Template 3。

---

## Step 0a：选择研究模式（v1.3 必做）

详见 [`MODES.md`](MODES.md)。

- **默认 Mode A：实质研究** —— 追求可证伪的新贡献（新定理 / 新猜想+数值证据 / 新算法）。流水线含多尺度数值、OEIS/LMFDB 对照、conjecture-generator、formal-verifier、reviewer 独立复现、§Predictions 必填。
- **Mode B：综述** —— 仅当用户请求显式落在 "综述 / survey / 学习 X / 什么是 X / 最新进展" 等触发短语时切换。流水线简化（小尺度数值 / 跳过 conjecture-gen 与 formal-verifier）。

Coordinator 在 `decision_log.md` 第一行**必写** `[mode] <date> ok mode=A|B reason=<触发或默认>`。所有下游 agent prompt 显式带 `mode=[A|B]` 标签。

---

## Step 0b：选择档位 + 决定用哪个模板

预算重估见 Template 2 §"扩展档位"。下表是 **Mode A** 的实战档位（Mode B 全部 ÷ 4）：

| 你处于的状态 | 用模板 | standard 档预算 | deep 档预算 |
|---|---|---|---|
| 命题模糊，想生成"路线图 + 候选命题" | Template 1 | ~18 agent / 15-25 分钟 / \$3-6 | ~26 agent / 25-40 分钟 / \$5-10 |
| 已有具体命题想严格验证 | Template 2 v2 | ~40 agent / 30-60 分钟 / \$15-30 | ~70 agent / 1.5-3 小时 / \$35-70 |
| GO 命题转可投稿 paper（每篇 1 writer + 1 reviewer） | Template 3 | ~6-12 agent / 30-60 分钟 / \$15-35 (N=3) | +20-50% / 篇 |
| 完整研究：从开放问题到投稿草稿 | T1 → T2 ×3 → T3 ×3 | **~150 agent / \$60-150 / 半天** | **~260 agent / \$130-280 / 1-2 天** |
| 长期攻坚（跨 session marathon） | T1 → T2 ×N（多轮） → T3 | ~420+ agent / \$250-700 / 数天-数周 | — |

**v1 时代的 "~75 agent / \$8-12" 是 sanity-check 下限**，不再是 Mode A 默认。砍预算时不要砍 sentinel / advocate / formal-verifier / 4 类专家 / L5 decision —— 这些是诚实性保障。

**Mersenne 走的是路径"完整研究 v1"**（v1 时代，无 conjecture-gen / formal-verifier / Mode A/B）：先用 Template 1 (§13) 生成 5 个候选命题，再用 Template 2 v2 对每个验证。Riemann (4 命题 + 4 paper) 和 Legendre (4 命题 + 5 paper) 也是这条路径。

---

## Step 1：写问题陈述 + 背景包

不论哪个模板，每个 agent 都需要这 3 个块（**这是最重要的准备工作**）：

```
【研究模式】mode=[A|B]
【问题】[完整数学陈述，含定义、变量、声明]
【已知现状】
- [关键已证事实 1]
- [关键已证事实 2]
- [失效的工具]
- [已有周边结果，含人名 + 年份]
- [启发式预测，如有]
```

**示例**（Goldbach，Mode A）：

```
【研究模式】mode=A
【问题】Goldbach 强猜想：每个 > 2 的偶数都是两个素数之和。
即 ∀ n ∈ 2ℤ_{>1}, ∃ p, q prime, n = p + q。

【已知现状】
- 验证至 n ≤ 4×10^18（Oliveira e Silva 2014）
- Chen 1966（"1+2"）：每足够大偶数 = p + q 或 p + q1 q2
- Helfgott 2013：弱 Goldbach（每 ≥ 7 奇数 = 三素数）已严格证
- 圆法（Hardy-Littlewood）给启发式：偶数 n 的表法数 ~ C₂ · n / (log n)^2
- 解析手段：大筛、外尔和、Vaughan 恒等式都用过
- Maynard-Tao bounded gaps 不直接攻 Goldbach
- Schnirelmann 1939 + 大筛：每偶数 = 至多 K 个素数（K 已降到 ≤ 4）
```

**这个块通常 200-300 字**。所有后续 agent 都基于此。把它<strong>存为单独文件</strong>（如 `/tmp/goldbach_brainstorm/_background.md`），便于复制到每个 agent prompt。

---

## Step 2 (Template 1)：生成 N 个发散角度

**Mersenne 用了 10 个角度模板**，对 Goldbach 直接套用：

| # | 角度类型 | Goldbach 对应 |
|---|---|---|
| Q1 | 历史方法重用 | Hardy-Littlewood 圆法、Vinogradov 三素数定理、Chen "1+2"、Schnirelmann 密度 — 哪些"内核"可改造攻强 Goldbach？ |
| Q2 | 跨学科类比 | 加性组合学（Plünnecke、Cauchy-Davenport）、信号处理（卷积）、随机图（Erdős-Renyi 边密度）— 有结构同形吗？ |
| Q3 | 算法迁移 | SAT/SMT 证伪、ML 模型逼近 r₂(n) 函数、量子放大估计 — 能给"算法式证明"吗？ |
| Q4 | 经典启示 | Vinogradov 三素数 ⟹ 弱 Goldbach；Hardy-Littlewood 主项扇区估计；改造给二素数？ |
| Q5 | 等价重述 | r₂(n) > 0 ↔ Möbius 函数性质；指数和零点 ↔ Goldbach；动力系统轨道密度 ↔ ？ |
| Q6 | 拆分逼近 | Chen "1+2" → "1+1.5"？或限定到稀疏偶数子集（如 n ≡ a mod q）？ |
| Q7 | 新框架 | additive combinatorics 的"高阶 Fourier"（Gowers 范数）能否给 Goldbach？ |
| Q8 | 信息论 | 偶数 n 的"Goldbach 解集"复杂度；PRF 假设下能证吗？ |
| Q9 | 跨猜想杠杆 | GRH、Bombieri-Vinogradov、Elliott-Halberstam、Sarnak 哪个最弱蕴含 Goldbach？ |
| Q10 | 反证 | 假设某偶数无 Goldbach 表示 → 与什么已证事实矛盾？ |

**用 Agent tool 并行启动 10 个 agent**（一次发出 10 次 invoke）。每个 agent prompt = `[背景包]` + `【你的角度 Q[k]】[具体描述]` + `【输出要求】`。

完整 prompt 模板见 [`template1_problem_brainstorm.md` "步骤 2"](template1_problem_brainstorm.md)。

---

## Step 3 (Template 1)：Phase 2-3-4 协同综合

```bash
# Phase 2：5 个 pair agent 并行
对 (Q1+Q4) (Q2+Q3) (Q5+Q6) (Q7+Q8) (Q9+Q10) 启动 5 个 agent，每个找两题协同+张力

# Phase 3：2 个大综合 agent 并行
agent A: Q1, Q3, Q4, Q5, Q9 → "体系内整合"
agent B: Q2, Q6, Q7, Q8, Q10 → "跨界整合"

# Phase 4：1 个最终综合 agent
读全部 17 份输出，写 HTML 章节
```

**输出**：一份 HTML 章节（如 `goldbach.html` §13）含 10 角度速览 + 5 题对协同 + 2 大主线 + 5 高优先级可攻命题。

---

## Step 4：选 1-3 个最有意义的候选命题

从 Phase 4 输出的"高优先级可攻命题"清单中，选 1-3 个进入 Template 2 v2。

**选择标准**：
- 陈述精确（不是模糊"研究方向"）
- 有清晰工具雏形（不是"需要发明 ∞-范畴"）
- 与原问题有逻辑桥梁（命题成立 ⟹ 原问题部分进展）

---

## Step 5 (Template 2 v2)：5 层流水线

**目录结构准备**（v1.3 新增 data / lean / long_jobs）：

```bash
mkdir -p ./reference_<project>_research/prop1/{papers,code,data,logs}
mkdir -p ./reference_<project>_research/prop1/code/{long_jobs,lean}
mkdir -p /tmp/<project>_brainstorm/prop1
echo "# Prop 1 Decision Log
[mode] $(date -Iseconds) ok mode=A reason=default
[init] $(date -Iseconds) ok prop=1 template=v2 tier=standard" > ./reference_<project>_research/prop1/decision_log.md

# v1.3 新增：跨 session 持久化文件（如不存在则创建）
touch ./reference_<project>_research/research_diary.jsonl
```

**5 层执行顺序**（Mode A standard 档；deep / marathon 档详见 Template 2 §"扩展档位"）：

| 层 | Mode A standard agent 数 | 并行性 | 关键任务 |
|---|---|---|---|
| **L1** | 7 | 5 角度并行 → 1 ranker → 1 sentinel | sentinel 是 v2 关键创新 |
| **L2** | 2 | search → reader 串行 | search 跑 arxiv API（注意限速！） |
| **L3** | 14 | 全并行 | 3 numerical（多尺度+OEIS+failure search）+ 3 prover（带 [REQUEST_NUMERICAL] hook，≥3 round 双向循环）+ 3 advocate + 3 lit-integrator + 1 conjecture-gen + 1 formal-verifier |
| **L4** | 4 | 全并行 | 解析 / 代数 / 数值 / 对手 4 票 |
| **L5** | 2 | summary → decision 串行 | summary 必含 §"实质贡献声明"+§Predictions（Mode A）；decision = GO / NO-GO |

加上 reactive prover↔numerical loop ~10 次、Coordinator 1，单命题 ~40 agent。

**Mode B**：L3 跳过 conjecture-gen + formal-verifier（−2），数值简化为 sanity 5-10 点。

**每层完成后**：
1. 更新 `decision_log.md`（含 [REQUEST_NUMERICAL] hooks、[L3.conjecture]、[L3.formal] 等新事件类型）
2. 追加 `research_diary.jsonl` 一行 JSON（schema 见 Template 2 §"研究日记"）
3. 检查 kill switch（含 v1.3 新增的 [downgrade] / [reproducibility-fail] / [stage5.escalate] 规则）

**长任务**（> 5 min 计算）：agent 写脚本到 `code/long_jobs/<job_id>.py`，**不要硬等**。main thread 用 `Bash run_in_background=true` 启动，下游 agent 在 prompt 里说"等待 <job_id>.out 末行 [done] 后读取"。详见 Template 2 §"长时间计算"。

规则汇总见 [`template2_proposition_deepdive.md`](template2_proposition_deepdive.md) "Kill Switch 规则"。

---

## Step 6：填 HTML 5 节

模板见 `template2_proposition_deepdive.md` "输出 HTML 章节结构（5 节对应 5 层）"。
v1.3 起 §3 多两个子节（3.6 conjecture / 3.7 formal-verifier，仅 Mode A），§5 多两个子节（5.6 实质贡献声明 / 5.7 Predictions，Mode A 必填）。

**注意**：很多 sub-agent 会自带 `<style>` 块和 inline styles，干扰你已有的项目 CSS。在 prompt 里**显式说**：

```
用 [DOC_NAME] 已有的 CSS class（box, box.warn, box.info, box.good 等）。
不要写 <style> 或 inline style 属性。表格用 <thead>/<tbody>。
```

---

## Step 7（可选 v1.3）：Template 3 把 GO 命题转可投稿 paper

L5.decision = GO / GO-revision / GO-strong 时，自动询问用户是否进入 Template 3：

- **N = GO 命题数**（典型 3-5）
- 每条 GO 命题：1 writer + 1 reviewer（推荐 Opus 4.7）
- writer 必填 §"实质贡献声明"（Mode A 下 (a)(b)(c)≥1，全空触发 down-grade-to-B） + §Predictions（≥2 条可证伪） + §Reproducibility
- reviewer 必做独立复现（Mode A），差异 > 1% → [reproducibility-fail]
- Stage 5 由 main thread 调 `tools/latex_compile_papers.sh` 批量出 PDF；失败 (b) 类 → 起 reviewer-fixup agent，硬上限 ≤ 2 轮
- 预算（N=3 standard）：~6-12 agent / \$15-35 / 30-60 分钟

详见 [`template3_paper_submission.md`](template3_paper_submission.md)。

---

## Step 8：git commit + 整合到主笔记

```bash
git add work/
git commit -m "Run multi-agent pipeline on <project> proposition <N>"
```

最后在主笔记（如 `goldbach.html`）加 §15 表格列出所有命题的 verdict + 链接。

---

## Step 8：发布到 public/research/explore/ + 主索引添加 "Our explore paper" 入口

> 让全项目研究索引（如 `research/problems_summary.html` 的子页面）能跳转到本次研究产物。

### 8.1 目录重组：把 topic 相关全部归到 `research/<topic>/`

研究跑完后，<strong>所有</strong>命题文件、文献库、研究子目录、对话日志归到一个统一文件夹：

```bash
cd /Users/l/Git/<project_root>/work/

mkdir -p <topic>/

# 移动所有 topic 相关文件
mv <topic>.html <topic>-proposition*.html <topic>/
mv reference_<topic> reference_<topic>_research <topic>/

# 如有 agent-talks（来自 /agent-talks:init）
mv agent-talks-<topic> <topic>/agent-talks 2>/dev/null

ls <topic>/   # 验证
```

最终 `research/<topic>/` 里至少有：

```
research/<topic>/
├── <topic>.html                          主笔记
├── <topic>-proposition[1..N]_*.html      各命题深入笔记
├── reference_<topic>/                    主笔记 §11 文献 PDF
├── reference_<topic>_research/           各命题资产（papers/code/logs/decision_log）
└── agent-talks/                          (可选) /agent-talks 输出
```

### 8.2 修复内部链接

子文件原本引用 `multi-agent-research/...`（顶级）。归到 `research/<topic>/` 后，所有这类引用都要变 `../multi-agent-research/...`：

```bash
cd research/<topic>/
for f in *.html; do
  sed -i '' 's|href="multi-agent-research/|href="../multi-agent-research/|g' "$f"
done
```

注意：macOS 用 `sed -i ''`，Linux 用 `sed -i`。

### 8.3 写 `index.html` landing page

`research/<topic>/index.html` 是新的入口，是**用户最先看到的页面**。建议结构：

```html
<h1><Topic 名字></h1>
<p>完整研究项目 — 主笔记 + N 个深入命题 + 文献库 + 多 agent 模板</p>

<a class="card featured" href="<topic>.html">📖 主笔记</a>

<h2>N 个深入研究的命题</h2>
<a class="card pass|warn|kill" href="<topic>-proposition1_*.html">命题 1 ...</a>
<a class="card pass|warn|kill" href="<topic>-proposition2_*.html">命题 2 ...</a>
... (每个含 verdict badge: PASS / KILL / weak-PASS / GO)

<h2>资源</h2>
<a href="reference_<topic>/">📚 文献库</a>
<a href="reference_<topic>_research/">🔬 各命题资产</a>
<a href="agent-talks/index.html">💬 对话日志</a>
<a href="../multi-agent-research/index.html">🧰 通用模板套件</a>

<h2>Verdict 表 + 一行总结</h2>
```

完整 `index.html` 模板见 [`templates/topic_index.html`](templates/topic_index.html)（占位符 `{{TOPIC}}`、`{{PROP_K}}` 等可批量替换）。

### 8.4 复制到 `public/research/explore/<topic>/`

```bash
mkdir -p /Users/l/Git/<project_root>/public/research/explore
cp -R /Users/l/Git/<project_root>/research/<topic> /Users/l/Git/<project_root>/public/research/explore/

# 重要：让 ../multi-agent-research/ 链接在副本中也工作
cp -R /Users/l/Git/<project_root>/pipeline \
       /Users/l/Git/<project_root>/public/research/explore/
```

最终 `public/research/explore/` 结构：

```
public/research/explore/
├── <topic>/                  完整副本
└── multi-agent-research/     让 ../multi-agent-research/ 链接工作
```

如果同一 explore 目录有多个 topic，<strong>multi-agent-research/ 只需要一份</strong>（所有 topic 共享）。

### 8.5 主索引添加 "Our explore paper" 链接

找到 topic 在主索引（如 `public/research/<area>.html`）中的 `<tr class="summary">` 行 + `<tr class="detail">` 行，加 2 处链接：

**(a) summary 行的标题旁加绿色徽章按钮**：

```html
<tr class="summary">
  <td class="name">
    <span class="chevron">▶</span>
    <Topic 名字>
    <a href="explore/<topic>/index.html"
       style="display:inline-block;margin-left:8px;padding:2px 10px;
              background:#27ae60;color:white;border-radius:4px;
              font-size:0.78em;font-weight:600;text-decoration:none;"
       onclick="event.stopPropagation();">📖 Our explore paper</a>
  </td>
  <td>...</td>
  ...
</tr>
```

**关键**：`onclick="event.stopPropagation();"` 阻止行点击事件导致的展开/折叠 — 否则点击按钮会同时触发行展开。

**(b) detail-body 内加高亮 panel**：

```html
<tr class="detail"><td colspan="7"><div class="detail-body">
  <h3><Topic 名字></h3>
  <p>... 原有简介 ...</p>

  <p style="margin-top:1em;padding:10px 14px;
            background:#eaf4e8;border-left:4px solid #27ae60;
            border-radius:4px;">
    <strong>📖 Our explore paper</strong>：
    <a href="explore/<topic>/index.html"
       style="color:#27ae60;font-weight:600;">查看完整研究项目</a> —
    <Topic 一句话摘要：N 节主笔记 + M 命题（~K agent）+ X 篇文献>。
    关键发现：<最重要发现的一行总结>。
  </p>
</div></td></tr>
```

**模板**：见 [`templates/explore_paper_link.html`](templates/explore_paper_link.html)，含两个片段的占位符版本。

### 8.6 验证

```bash
# 打开主索引看链接
open /Users/l/Git/<project_root>/public/research/<area>.html

# 打开 explore 入口
open /Users/l/Git/<project_root>/public/research/explore/<topic>/index.html

# 确认所有 ../multi-agent-research/ 链接都能解析
cd /Users/l/Git/<project_root>/public/research/explore/<topic>/
grep -h '\.\./multi-agent-research/' *.html | sort -u | while read line; do
  # 简单检查
  echo "$line"
done
```

### 8.7 git commit

```bash
cd /Users/l/Git/<project_root>
git add research/<topic>/ public/research/explore/<topic>/ public/research/explore/multi-agent-research/ public/research/<area>.html
git commit -m "Reorganize <topic> + add 'Our explore paper' link to <area>.html"
```

### 8.8 一键 publish 脚本（可选）

如果要批量做（多 topic），可以把 8.1-8.5 自动化。脚本骨架见 [`scripts/publish_topic.sh`](scripts/publish_topic.sh)（占位符 `${TOPIC}`、`${AREA}` 等）。

---

## Step 9（可选）：录到 agent_talks

如果用了 `/agent-talks:init` 跟踪本次会话：

```bash
# 在跑完整流程后调用
/agent-talks:update
```

会自动把所有对话轮归类到 research / issues / plan-changes / milestones 并生成 HTML。`agent-talks/` 文件夹和 `index.html` 已包含在 Step 8.1 的归档里，所以不需要单独搬运。

---

## 实施细节（避坑）

### arXiv API 限速

```bash
curl -sG "https://export.arxiv.org/api/query" \
  -H 'User-Agent: research-<project>/1.0 (mailto:user@example.com)' \
  --data-urlencode 'search_query=ti:"<keyword>"' \
  --data-urlencode 'max_results=20'
sleep 5  # 至少 4-5 秒间隔，否则 429 / 14 字节 "Rate exceeded"
```

**禁止**：
- ❌ `uv add arxiv-mcp-server`（pypi files 在 Apple sandbox 下被屏蔽）
- ❌ 短时间内多次 curl arxiv（会触发 15 分钟 ban）
- ❌ 直接 `pip install arxiv` 然后 import（同 pypi 屏蔽）

**应用**：
- ✅ 直接 curl + python3 + xml.etree.ElementTree 解析
- ✅ Sleep 5 秒间隔
- ✅ User-Agent 带 mailto（arXiv 的官方建议）

### sympy.factorint 超时

```python
from sympy import factorint
# ❌ factorint(2**127 - 1)  # 超时
# ✅ factorint(2**127 - 1, limit=10**10)  # 试除到 10^10
# ✅ 嵌入已知分解（GIMPS / factordb）作为 dict
```

### PEP 723 头（用于 uv run）

```python
# /// script
# dependencies = ["sympy"]
# ///

import sympy
...
```

运行：`uv run --with sympy script.py`（不是 `uv add` — 后者会触发 pypi 下载）

### Decision log 格式

```
[layer.role] timestamp status keys/notes
```

例：
```
[L1.sentinel] 2026-05-23T11:30 warn ratio=0.571 sample_too_small
[L3.prover] 2026-05-23T13:00 gap framework_ok_but_lemma_X_unprovable
```

### Agent 输出长度

模板里的"≤ 500 字"在实际中常被超出 50%。这是<strong>正常的</strong>，sonnet 偶尔啰嗦。如果输出 > 1000 字，考虑：
- 把 prompt 改 "≤ 400 字，硬上限"
- 在 prompt 末加："写超过 500 字会被丢弃"
- 用 max_tokens 限制（如可控）

### 跨 agent 引用一致性

每个 sub-agent <strong>看不到</strong>其他 agent 的输出，除非你显式在 prompt 里说"用 Read tool 读 /tmp/.../X.md"。要做综合时<strong>明确给文件路径列表</strong>。

---

## 完整命题样本：Goldbach 强猜想（推测）

如果对 Goldbach 跑这个流程，预期结果：

| 命题候选 | 预期 v2 verdict | 原因（猜测） |
|---|---|---|
| 1. r₂(n) > 0 对几乎所有偶数（密度 1） | weak-PASS | Schnirelmann + 圆法已给出，但 "几乎所有" vs "所有"是巨大差距 |
| 2. r₂(n) ≥ c·n/(log n)² 对 n 足够大（GRH 下） | KILL（量级太强） | 圆法给主项 ~ C₂·n/(log n)²，但严格下界即弱 Goldbach 强 Goldbach 等价 |
| 3. 存在常数 K ≤ 3 使每偶数 = ≤ K 个素数和 | weak-PASS | Schnirelmann K = 6（Ramaré 1995），未推到 K = 2 |
| 4. 假设某偶数无 Goldbach → Bombieri–Vinogradov 矛盾 | KILL | 与 Mersenne 命题 4 同病：BV 给的是密度<strong>正</strong>，不矛盾 |
| 5. Goldbach 序列 (r₂(2n))_n 是 ML 随机 | GO（position paper） | 与 Sarnak/Cramér 平行，可写 position paper |

**只有命题 5 是真可写的**。这与 Mersenne 的结果几乎相同 — 提示这种类型的猜想在 LLM agent 流水线下，<strong>大多数候选会被严格化暴露 gap</strong>。

---

## 一页流程图

```
开放问题 (Open Problem)
   │
   ▼
[Step 1] 写问题陈述 + 背景包（200-300 字）
   │
   ▼
[Step 2-3] Template 1：3 阶段发散
   ├─ Phase 1：10 角度并行
   ├─ Phase 2：5 题对并行
   ├─ Phase 3：2 大综合并行
   └─ Phase 4：1 最终综合
   │
   ▼
[Step 4] HTML §13 含 5 候选命题
   │
   ▼
[Step 5] 选 1-3 个候选 → Template 2 v2
   │
   ▼
[Step 5 详] 每个候选跑：
   ├─ L1：5 角度 + ranker + sentinel
   ├─ L2：search + reader
   ├─ L3：numerical + prover + advocate + lit-integrator
   ├─ L4：4 类专家
   └─ L5：summary + decision
   │
   ▼
[Step 6-7] 各候选独立 HTML 笔记 + 主笔记 §15 链接
```

---

## 推荐第一次运行的小问题

如果想先小规模验证流水线，<strong>不要</strong>直接上 Goldbach / 黎曼 — 选个：
- 已部分解决但有进展余地的问题（如 odd Goldbach、有限版本）
- 范围明确的问题（"对 X 这种特殊 N，证 P"）
- 数值可验证的问题（确保 sentinel 能跑）

---

## FAQ

**Q：为什么不全自动？**
A：每层完成后人类 + coordinator 决定下一步。kill switch 触发时<strong>不</strong>自动 KILL，而是要你看一眼。这是 v2 设计的核心 — 自动化 + 人类介入点。

**Q：可以跳过 Template 1 直接用 2 吗？**
A：可以。但要确保命题陈述精确。如果不确定哪条路径，先用 Template 1。

**Q：v2 vs v1 真有那么大差吗？**
A：在 Mersenne 实测中：v1 命题 1 跑了 17 agent 才发现量级错误；v2 命题 4 仅 6 agent 就 KILL。**早期 catch 错误的价值随问题难度上升**。

**Q：可以用 GPT 或别的模型吗？**
A：核心是 prompt 结构和决策日志格式，不依赖 Sonnet。但 sonnet 4.6+ 在严苛角色（advocate, reviewer）的"诚实性"上明显比早期模型好。

---

## 一行总结

> **Template 2 v2 = 把"用 LLM 找数学突破"压成"用 LLM 系统性证伪乐观候选"** — 大多数候选会被 KILL，但你会得到精确的 gap 定位 + 修订建议，而不是模糊的"还需努力"。
