doc2math – Other skill for AI agents
Convert narrative technical documents into grounded Mathematical Problem Specifications with variables, constraints, objectives, and uncertainty.
Install the doc2math skill with one command
Pick the tool you use, copy the command and paste it in your terminal. The skill lands in that tool's skills folder and is ready in your next session.
Claude Code
mkdir -p ~/.claude/skills && curl -fsSL https://skill.dn1nguoi.com/z/doc2math-e6aa9.tgz | tar xz -C ~/.claude/skills
Call it in Claude Code: /doc2math – then describe the task you want done.
Codex
mkdir -p ~/.codex/skills && curl -fsSL https://skill.dn1nguoi.com/z/doc2math-e6aa9.tgz | tar xz -C ~/.codex/skills
Call it in Codex: $doc2math – then describe the task you want done.
Hermes Agent
mkdir -p ~/.hermes/skills && curl -fsSL https://skill.dn1nguoi.com/z/doc2math-e6aa9.tgz | tar xz -C ~/.hermes/skills
Call it in Hermes Agent: /doc2math – then describe the task you want done.
DeepSeek
mkdir -p ~/.deepcode/skills && curl -fsSL https://skill.dn1nguoi.com/z/doc2math-e6aa9.tgz | tar xz -C ~/.deepcode/skills
Call it in DeepSeek: /doc2math – then describe the task you want done.
SKILL.md content
DOC2MATH — Document-to-Mathematics Problem Specification
When to Use This Skill
- "Formalize this problem statement into math"
- "Extract the mathematical structure from this research paper section"
- "What variables, constraints, and objectives are in this spec?"
- "Convert this word problem to a structured MPS"
- "Find what's missing in this problem formulation"
Zero-Inference Protocol (Mandatory)
1. Closed World — do not assert unstated facts or numeric values. Structural notation implied by source phrasing may be proposed only with the explicit inference tag required below
2. Grounding Rule — every element must cite the exact source phrase ("evidence" field)
3. No Silent Filling — unknown values use null; ambiguous types use "ambiguous"
4. Inference Tagging — structural inferences tagged "inferred": true with "inference_basis"
5. MISSING Markers — elements mentioned but insufficiently defined get "status": "MISSING" with "missing_reason"
6. No Hallucinated Math — never introduce equations or values not in the source text
Limitations
- Does not invent missing equations, domains, values, or assumptions that are absent from the source document.
- Requires enough source text to cite every extracted element; sparse prompts should be returned with explicit missing-information markers.
- Produces a formal specification, not a solved optimization model or proof.
How It Works
Step 1 — Receive Document
Accept the document text, research excerpt, problem description, or specification as input.
Step 2 — Classify
Identify problem_class: optimization | classification | simulation | proof | estimation | other
Step 3 — Extract MPS Components
Variables — id, name, symbol, type, domain, units, role, evidence, inferred, status
Operators — id, name, symbol, arity, acts_on, produces, evidence, inferred
Constraints — id, type, expression, variables_involved, evidence, hardness, inferred, status
Objectives — id, direction (minimize/maximize/satisfy/find/prove), expression, variables_involved, evidence, inferred
Uncertainty — id, type (stochastic/epistemic/measurement/model/none_stated), affects, characterization, evidence, status
Step 4 — Surface Missing Information
Identify what the document implies but doesn't state: missing_information[] with element, needed_for, missing_reason.
Step 5 — Validate and Score
validation_flags:
has_complete_objectives: true/false/partialhas_bounded_variables: true/false/partialhas_evidence_for_all_elements: true/false/partialinference_count: integermissing_count: integeroverall_formalizability: HIGH/MEDIUM/LOW
Output Format
Produce an MPS JSON object. The empty schema example below is not a complete formalization; populate only grounded entries and report missing information:
{
"mps_version": "1.0",
"source_title": "...",
"problem_class": "optimization",
"variables": [],
"operators": [],
"constraints": [],
"objectives": [],
"uncertainty": [],
"missing_information": [],
"validation_flags": {
"overall_formalizability": "LOW"
}
}Best Practices
- ✅ Apply all 6 Zero-Inference Protocol rules before outputting any element
- ✅ Surface MISSING markers rather than silently inferring — incomplete formalization is valid output
- ✅ Cite the exact source phrase in every
evidencefield - ❌ Never introduce mathematical relationships not grounded in the source text
Additional Resources
- External hosted BYOK tools are optional and not bundled; using them may transmit documents/keys and incur costs. Obtain the applicable data/account approval instead of following the link automatically.
- Repository: [thebrierfox/doc2math-skill](https://github.com/thebrierfox/doc2math-skill)
- Full BYOK tool: [ace-license-server-production.up.railway.app/byok/doc2math](https://ace-license-server-production.up.railway.app/byok/doc2math)
- Built by [IntuiTek¹](https://intuitek.ai) (~K¹) — MIT License
Related skills
- solana – Query Solana wallets, tokens, txs, and NFTs in USD.
- domain-authority-simulator – Domain Authority Simulator. Use when working with domain signals and an explicit scoring…
- domain-comparison-report-tool – Domain Comparison Report Tool. Use when working with two or more domains with dated…
- domain-modeling – Build and sharpen a project's domain model. Use when the user wants to pin down domain…
- doom-pay – Add self-custodial DOOM and wDOOM checkout links with DoomPay, then verify payment…
- songwriting-and-ai-music – Songwriting craft and Suno AI music prompts.
- spike – Throwaway experiments to validate an idea before build.
- stocks – Stock quotes, history, search, compare, crypto via Yahoo.