scaling-group/eve/theorem-search
Claude Code and agent skill by scaling-group/eve
- community
Checking that the SKILL.md file is still in the repository.
Use TheoremSearch to find, verify, and cite mathematical theorem statements, named results, proof routes, and literature dependencies.
Install
npx vskill@latest install scaling-group/eve/theorem-searchSKILL.md
TheoremSearch Manual
Use this skill when a proof needs:
- a named theorem, lemma, proposition, corollary, definition, or remark;
- a literature dependency for a proof step;
- confirmation that a remembered theorem statement has the right hypotheses;
- leads for an external proof route;
- paper or theorem provenance for later human review.
TheoremSearch is supporting evidence only. It does not prove that a dependency is valid for the current proof. Always compare the returned statement against the exact proof obligation.
Official docs:
- Web docs:
https://www.theoremsearch.com/docs - API base:
https://api.theoremsearch.com - Main search endpoint:
POST https://api.theoremsearch.com/search - MCP endpoint:
https://api.theoremsearch.com/mcp
Default to the REST API in this workspace: it is directly callable with curl, requires no agent-runtime configuration, and returns the search payload without protocol wrapping. Use MCP when the current agent runtime already has the TheoremSearch MCP server configured and tested.
Mental Model
TheoremSearch indexes theorem-level statements, not just whole papers. A query is embedded, matched against theorem slogans, and reranked. The best hit may be:
- the exact result;
- a nearby theorem with missing or extra hypotheses;
- a related result in the right paper;
- a statement whose generated slogan is more relevant than its full body.
Therefore, trust body and paper metadata more than slogan, name, or rank.
Basic Search
Use natural language, LaTeX, or a mix. Start broad enough to find the theorem, then narrow with filters or a sharper query.
Expected top-level shape:
Search Request Fields
Required:
query: natural-language or LaTeX description of the result.
Common optional fields:
n_results: number of theorem results to return. Default is10.sources: source filter. Officially documented examples includearXiv,
Stacks Project, ProofWiki, CRing Project, HoTT Book, Open Logic Project, and An Infinitely Large Napkin. The live API may expose additional sources over time.
authors: partial author-name filters.types: theorem-like object filters, for exampletheorem,lemma,
proposition, corollary, definition, or remark. Results may preserve source casing inconsistently, so if a type filter misses, retry without it.
tags: subject tags, especially arXiv categories such asmath.AG,
math.AC, math.NT, math.LO.
paper_filter: substring filter over paper titles.year_range: inclusive[min_year, max_year].citation_range: inclusive[min_citations, max_citations].include_unknown_citations: when usingcitation_range, keep papers with no
citation data. Default is true.
citation_weight: blend citation count into ranking. Use0.0for pure
semantic search. Increase only when standard/high-citation sources matter.
prompt: optional instruction prepended before embedding. Use sparingly.db_top_k: candidate-pool size before reranking. Defaults to2 * n_results.
Increase when recall matters more than latency.
Filtered example:
Query Strategy
- Write the proof obligation as a theorem statement:
"If [hypotheses], then [conclusion]."
- Run an unfiltered search with
n_resultsbetween 5 and 10. - Read
bodyfor every plausible hit. Ignore hits whose assumptions do not
match, even if the slogan looks perfect.
- If results are too broad, add one constraint at a time:
sources, tags, authors, paper_filter, or types.
- If results are too narrow or empty, remove filters, simplify notation, and
search for equivalent phrases.
- If a result is close but not exact, search again using distinctive words from
the returned body, paper title, or named theorem.
- Keep at least one exact or near-exact provenance record for every external
dependency used in the final proof.
Good query patterns:
- Include the mathematical objects and the conclusion:
"finite etale morphism is open and closed"
- Include key hypotheses:
"normal noetherian domain height one localization discrete valuation ring"
- Use standard aliases:
"Nakayama lemma finitely generated module local ring"
- Search by paper title plus theorem content when you know the source:
"EGA flat morphism openness theorem"
Poor query patterns:
"prove this"or"main theorem"- overly local notation without context, such as
"X is dense in U" - long proof paragraphs with irrelevant narrative;
- filter-heavy first attempts that hide useful hits.
Reading Results
For each plausible theorem, inspect:
body: exact theorem statement. This is the primary evidence.name: local theorem label, for exampleTheorem 5.11.theorem_type: theorem, lemma, proposition, corollary, definition, remark.slogan: generated natural-language summary. Useful for search, not proof.link: statement-level link if available.paper.source: corpus/source, for example arXiv or Stacks Project.paper.title: paper or project title.paper.authors: authors, when available.paper.link: paper-level URL, often arXiv.paper.primary_categoryandpaper.categories: subject categories.paper.year,paper.journal_ref,paper.journal_published.paper.citations: citation count if known.similarity: semantic similarity before citation weighting.score: final ranking score after optional weighting.has_metadata: whether richer metadata was available.
Do not treat score thresholds as correctness thresholds. A low-scoring exact statement can be useful; a high-scoring result can still have wrong hypotheses.
Validation Checklist
Before using a result in a proof, check:
- objects match: rings, schemes, stacks, categories, fields, modules, spaces;
- hypotheses match: finiteness, noetherian, separated, proper, smooth, local,
algebraically closed, characteristic, completeness, boundedness;
- conclusion matches: existence, uniqueness, equivalence, isomorphism,
vanishing, density, openness, freeness, exactness;
- variance and direction match: source/target, left/right, covariant/
contravariant, injection/surjection;
- base category and notation match the current proof;
- no hidden condition is buried in surrounding paper notation;
- the result is appropriate to cite as a theorem rather than as a lead.
If a dependency is only close, write it as unresolved or as a search lead. Do not silently strengthen or weaken theorem statements.
Reporting Provenance
When a theorem is used, record enough information for audit:
If the proof only needs a standard result and the search hit is a pointer to a secondary paper, prefer citing the classical theorem name in the proof while keeping the search provenance in notes.
Paper Search
Use paper search when you know a title fragment or arXiv ID and need a canonical paper identifier.
Expected shape:
This endpoint is autocomplete-like. It is useful for locating a paper but does not replace theorem-level search.
Graph and Detail Endpoints
The public website documents dependency graph exploration. The live OpenAPI schema exposes these graph/detail paths:
GET /graph/paper?external_id=<id>&sources=<source>GET /graph/paper/{paper_id}GET /graph/statement/{statement_id}GET /graph/embedding?query=<query>GET /graph/pagerank?query=<query>GET /statement/{statement_id}GET /paper/{paper_id}POST /statementswith{"ids": [...]}POST /paperswith{"ids": [...]}
Use these only as auxiliary tools after search has identified a likely paper or statement. Availability can vary by corpus and deployment; a 404 or empty graph does not invalidate a theorem search hit.
Paper graph example:
Statement graph example:
Use graph output to discover:
- what a theorem depends on;
- what later statements depend on it;
- nearby restatements or equivalent results;
- whether a paper's internal lemmas form a usable proof route.
Do not cite graph edges as mathematical facts unless the corresponding statements are inspected.
MCP Reference
TheoremSearch also exposes an MCP server at:
The MCP server has a single theorem_search tool with the same parameters as POST /search. MCP is useful when the agent runtime is already configured to call MCP tools; REST is simpler for shell-based proof work.
Example MCP JSON-RPC request, for reference only:
Failure Policy
If search fails:
- Network/server/API error: report
TheoremSearch unavailableand include the
endpoint and error text.
- Empty results: retry once with fewer filters and simpler language.
- Low relevance: report
unresolved, summarize the closest hit, and explain
the mismatch.
- Conflicting hits: list the competing statements and the hypothesis conflict.
- Missing links or metadata: use available paper title/source/body, but say what
is missing.
- Graph endpoint failure: continue with
/search; graph is auxiliary.
Never fabricate:
- theorem names;
- statement bodies;
- authors;
- links;
- scores;
- years;
- dependency edges;
- paper metadata.
Final Answer Pattern
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingdocs/skills/theorem-search/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/scaling-group/eve/theorem-search)