doc2math
How to Install
This skill comes from a community source. Check the original listing for install instructions.
General Claude Code install: copy SKILL.md to ~/.claude/skills/
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)
- Closed World — if it is not stated in the document, it does not exist in output
- Grounding Rule — every element must cite the exact source phrase (
"evidence"field) - No Silent Filling — unknown values use
null; ambiguous types use"ambiguous" - Inference Tagging — structural inferences tagged
"inferred": truewith"inference_basis" - MISSING Markers — elements mentioned but insufficiently defined get
"status": "MISSING"with"missing_reason" - 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/partial
- has_bounded_variables: true/false/partial
- has_evidence_for_all_elements: true/false/partial
- inference_count: integer
- missing_count: integer
- overall_formalizability: HIGH/MEDIUM/LOW
Output Format
Produce the complete MPS as a JSON object:
{
"mps_version": "1.0",
"source_title": "...",
"problem_class": "optimization",
"variables": [...],
"operators": [...],
"constraints": [...],
"objectives": [...],
"uncertainty": [...],
"missing_information": [...],
"validation_flags": {
"overall_formalizability": "HIGH"
}
}
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
- Repository: thebrierfox/doc2math-skill
- Full BYOK tool: ace-license-server-production.up.railway.app/byok/doc2math
- Built by IntuiTek¹ (~K¹) — MIT License
Details
| Category | Other → General |
| Source | community |
| Stars | N/A |
| Risk Level | Safe |