eml-lab
eml-lab — compile, lookup, and inspect EML trees
Read ../_shared/eml_core/ for the underlying types. This skill is a thin CLI on top of that package. compile-render output-bundle schema, auto-domain rules, and Mermaid fallback thresholds live in references/compile-render.md.
When this skill triggers (and when it doesn't)
Triggers on: "compile sin(x)+cos(x) into EML", "lower this sympy expression", "how many tokens does the mult witness take?", "render this tree as Mermaid", "look up the atan witness", "give me an artifact bundle for exp(x+y)".
Does not trigger on: verifying a tree against a named claim (use /eml-check), searching for a shorter tree (/eml-optimize), fitting a law from data (/eml-fit), or checking arbitrary elementary identities (/math-identity-check).
Modes
- Compile (
--compile EXPR) — lower a sympy-parseable formula into an EML tree by substituting library witnesses (e,exp,ln,add,mult,sub,pow,neg,inv,div,pi,i,sin,cos,tan,sqrt,asin,acos,atan,log10). - Lookup (
--lookup NAME) — fetch a witness; emit metadata (K, depth, minimal flag, proof URL) and tree body if stored. - Inspect (
--tree STR) — parse any EML tree (nested, RPN, JSON) and emit stats + alternate representations. - Compile-render (
compile-render --expr EXPR --out-dir DIR) — one-shot stitch: compile → render Mermaid/SVG → audit againstsympy.lambdify(..., modules='cmath')→ emittree.txt,diagram.md/diagram.svg,audit.json,audit.md, andsummary.md. Seereferences/compile-render.mdfor the bundle schema.
Compile/lookup/inspect share emits: stats, rpn, json, graphviz, mermaid, nested.