find_gaps — curated Mathlib gap registry 検索

MCP tool v0.1 段 3 完成 (2026-08-20) · curated 31 entries × 3 tiers

役割: 「Mathlib に まだ無い 定理」 を 探すための tool。 search_verified が 「あるもの」 を index から substring で 引くのと 対称の 逆向き検索。 v0.1 は Mathlib 依存グラフの自動解析は 行わない — 現状は 手動 curated JSON (3 tier, 31 entry) の filter 検索のみ。 依存グラフ / semantic matching は v0.2+ 側 (audit_gaps が 段 4 で 部分 cover)。

3 tier 構造

tiersourcecount内容
sorry-residualdata/lean4-curated/mathlib-sorry-residual.json8Mathlib4 内 sorry 残留 (PR 追跡)
unformalizeddata/lean4-curated/mathlib-unformalized.json15Mathlib4 未形式化既知定理 (Wiedijk Top 100 crosscheck)
mml-missingdata/lean4-curated/mml-missing.json8MML (Mizar) 済 × Mathlib4 未移植

使い方

CLI

npm run find:gaps                                     # list all (default limit 50)
npm run find:gaps -- "fermat"                         # substring
npm run find:gaps -- --tier unformalized              # tier filter
npm run find:gaps -- --area topology --difficulty medium,low
npm run find:gaps -- --dfumt8 FLOWING,BOTH
npm run find:gaps -- "" --json                        # machine-readable

MCP

rei-aios MCP server の tool として 呼び出せる (v2.7.0 の 36 tool の 1 つ)。

返却 payload の field (drift audit 済)

field意味
hits[]ヒット配列
hits[].entry.id, tier, name, area, descriptioncurated entry 本体
hits[].entry.difficulty, dfumt8, references[]metadata
hits[].entry.mathlibPath?sorry-residual tier のみ (該当 file path)
hits[].entry.mmlArticle?, mmlAuthor?mml-missing tier のみ
hits[].entry.wiedijkRank?, knownPRs?, estimatedYears?tier-specific
hits[].matchedIn, score一致箇所 + ranking
totalMatchesfilter 後の 全 match 数 (limit 前)
totalReturned, tierCounts返却件数 + tier 別集計
registryLastUpdate, registryVersioncurated registry snapshot 日時 + version
loadedFiles, missingFiles読み込めた/欠落 JSON
honestScope制約明示

Honest scope (譲れない線、 v0.1)

  1. 手動 curated data のみ — Mathlib 依存グラフの自動解析は含まない (v0.2+ scope、 audit_gaps が 部分 cover)。
  2. Registry lastUpdate = 2026-04-27 (~4 か月前)。 それ以降に埋まった gap は反映されない。 audit_gaps を回すことで 検出可能 (それが 段 4 の 存在理由)。
  3. 「無い」 の判定は curator が Mathlib 4 main branch snapshot 比較した時点のもの。
  4. Substring 検索のみ — 数式・同値な言い換えの探索は未対応 (false negative あり得る)。
  5. find_gaps を Mathlib PR / 論文の 「これが未形式化」 主張の 唯一 evidence にしてはいけない。 主張前 の 手動 grep audit (feedback_mathlib_grep_before_novel_gap_claim.md) が 依然 primary。

Rei stack 位置付け

2026-08-19 合意 Order 原則の 段 3。 search_verified の 逆向き / audit_gaps の 入力。 詳細は 三段 arc research-log