{
  "capcard_version": "3.1.0",
  "id": "ai.capcard.monogate",
  "name": "Monogate",
  "type": "library",
  "description": "Open-source mathematics stack built on the EML operator eml(x, y) = exp(x) - ln(y). Includes the Pfaffian-cost analyzer (eml-cost) with three prediction functions for SymPy compile-time, float64 numerical precision loss, and PyTorch per-layer activation behavior. Cross-validated against a Lean 4 formalization with 50 EML-original theorems across 17 files (14 of 17 files carry zero sorry; the remaining 3 carry 5 documented sorries total — 4 blocked on the same Mathlib o-minimal / Khovanskii zero-count gap, 1 standard approximation bound deferred to a future Float64 file).",
  "version": "2.5.0",
  "license": "MIT",
  "homepage": "https://monogate.org",
  "repository": "https://github.com/agent-maestro/monogate",
  "lean_repo": "https://github.com/agent-maestro/monogate-lean",
  "related_sites": {
    "research": "https://monogate.org",
    "developer": "https://monogate.dev",
    "interactive": "https://1op.io",
    "paper_notes": "https://monogate.org/paper",
    "theorems": "https://monogate.org/theorems",
    "explorer": "https://monogate.dev/lab",
    "pypi": "https://pypi.org/project/monogate/",
    "pypi_eml_stdlib": "https://pypi.org/project/eml-stdlib/",
    "npm": "https://www.npmjs.com/package/monogate",
    "arxiv": "https://arxiv.org/abs/2603.21852",
    "eml_stdlib_repo": "https://github.com/agent-maestro/eml-stdlib"
  },
  "authors": [
    {
      "name": "Monogate Research",
      "url": "https://monogate.org",
      "based_on": "Odrzywolek (2026), arXiv:2603.21852"
    }
  ],
  "capabilities": [
    {
      "id": "universality.eml",
      "name": "EML universality",
      "category": "scientific_claim",
      "description": "The single binary operator eml(x, y) = exp(x) - ln(y) generates every elementary function as a finite tree from the constant 1 alone. Lean-formalized as the IsEMLElementary predicate in Universality.lean.",
      "status": "proven_machine_verified"
    },
    {
      "id": "barrier.infinite_zeros",
      "name": "Infinite Zeros Barrier (T01)",
      "category": "scientific_claim",
      "description": "Real EML trees have finitely many zeros on any closed bounded interval where they are real-analytic, while sin(x) has infinitely many. Therefore sin is not an element of EML(R). Parts A, B, C, C-prime are closed in Lean. Part D (sin_not_in_eml, sin_not_in_real_EML_k) carries 2 documented sorries pending o-minimal / Wilkie 1996 machinery not yet in Mathlib.",
      "status": "proven_partial"
    },
    {
      "id": "routing.superbest_v5",
      "name": "SuperBEST v5.3 routing table",
      "category": "construction",
      "description": "Routing table mapping 10 positive-domain arithmetic operations to F16 expressions, achieving 14n / 80.8% savings vs the 73n naive baseline, plus a general-domain 8-op basket at 16n / 74.2% savings vs the 62n naive baseline. Library, blog, browser, and capability-card surfaces are synchronized from monogate.superbest.",
      "status": "proven_machine_verified",
      "constraints": {
        "total_nodes": 14,
        "naive_total": 73,
        "savings_percent": 80.8,
        "positive_total_nodes": 14,
        "positive_naive_total": 73,
        "positive_savings_percent": 80.8,
        "general_total_nodes": 16,
        "general_naive_total": 62,
        "general_savings_percent": 74.2,
        "canonical_source": "python/monogate/superbest.py"
      }
    },
    {
      "id": "lower_bound.add",
      "name": "SB(add) >= 2",
      "category": "lower_bound",
      "description": "No single F16 operator equals (x, y) -> x + y for all real x, y. Exhaustive 16-witness refutation in AddLowerBound.lean.",
      "status": "proven_machine_verified"
    },
    {
      "id": "lower_bound.sub",
      "name": "SB(sub) >= 2",
      "category": "lower_bound",
      "description": "No single F16 operator equals (x, y) -> x - y for all real x, y. SubLowerBound.lean, 16-case refutation.",
      "status": "proven_machine_verified"
    },
    {
      "id": "lower_bound.mul",
      "name": "SB(mul) >= 2",
      "category": "lower_bound",
      "description": "No single F16 operator equals (x, y) -> x * y for all real x, y. MulLowerBound.lean, derivative obstruction route + witness refutation.",
      "status": "proven_machine_verified"
    },
    {
      "id": "lower_bound.div",
      "name": "SB(div) >= 2",
      "category": "lower_bound",
      "description": "No single F16 operator equals (x, y) -> x / y for all real x, y. DivLowerBound.lean.",
      "status": "proven_machine_verified"
    },
    {
      "id": "tool.estimate_time",
      "name": "estimate_time(expr) compile-time predictor",
      "category": "tool_function",
      "description": "Predicts SymPy compile wall-time across simplify/factor/cse/lambdify proxies from the Pfaffian profile. Regression model fit on 202 expressions (cross-domain-3 R v2). 5-fold CV R^2 by proxy: simplify 0.68, factor 0.76, cse 0.83, lambdify 0.84.",
      "status": "empirically_confirmed"
    },
    {
      "id": "tool.predict_precision_loss",
      "name": "predict_precision_loss(expr) runtime numerical predictor",
      "category": "tool_function",
      "description": "Predicts float64 numerical relerr versus 50-digit mpmath ground truth. Fit on 379 expressions from the bench-300-domain corpus. 5-fold CV R^2 = +0.271 +/- 0.060, residual log10 std = 0.772, marginal eml_depth coefficient +0.337 (~0.34 decimal digits per depth unit). Modest signal explicitly NOT used as a form recommender (E-193 Phase 3 best-pick was 30 percent on rewrite tests, below the 70 percent product threshold).",
      "status": "empirically_confirmed"
    },
    {
      "id": "tool.diagnose",
      "name": "diagnose(model) per-layer activation behavior (eml-cost-torch)",
      "category": "tool_function",
      "description": "Per-layer per-activation lookup of fp16 drift and activation-variance for 19 named PyTorch activation classes. Five seeds per activation, ranked from GeGLU (high drift ~7.4e-4) to Hardsigmoid (low drift ~2.3e-4). The earlier PNE-vs-EML generalization (E-183) was empirically falsified on a controlled corpus (p=0.085); honest_note baked into report.empirical_basis.",
      "status": "empirically_confirmed"
    },
    {
      "id": "tool.eml_cost_cli",
      "name": "eml-cost CLI",
      "category": "tool_function",
      "description": "Console command exposing analyze + estimate_time + predict_precision_loss as `eml-cost report` and `eml-cost check`. Pre-commit usable via --max-simplify-ms and --max-digits-lost budgets. Exit codes: 0 OK, 1 threshold violation, 2 parse error, 64 usage.",
      "status": "empirically_confirmed"
    },
    {
      "id": "tool.npm_port",
      "name": "JavaScript port via monogate/cost subpath",
      "category": "tool_function",
      "description": "JavaScript port of analyze + predict_precision_loss in npm monogate 1.3.0, with byte-identical Python coefficients. Cost-class fingerprint matches Python eml-cost on 32 of 32 reference cases. predict_precision_loss matches byte-for-byte on 14 of 20 representative cases; remaining 6 differ by up to about a factor of 10 due to SymPy automatic canonicalizations on the JS-parsed literal tree.",
      "status": "empirically_confirmed"
    },
    {
      "id": "empirical.cost_class_enrichment",
      "name": "p2-d5-w2-c1 cost-class enrichment in the bench-300-domain corpus",
      "category": "empirical_dataset",
      "description": "Across the 403-expression cross-domain corpus and N_null=5000 random expressions, cost class p2-d5-w2-c1 shows 2.7x enrichment with q < 1e-4 after Benjamini-Hochberg correction across 31 candidate classes, spanning 18 distinct domains. Earlier headline of 'binary 0/50 null with >= 40x enrichment' was a small-N artifact and is corrected here.",
      "status": "empirically_confirmed"
    },
    {
      "id": "taxonomy.sixteen_operators",
      "name": "F16 Operator Taxonomy",
      "category": "scientific_claim",
      "description": "Complete census of all binary operators formed from exp(±x) and ln(y) with arithmetic. 16 total: 8 complete, 1 approximate, 7 impossible.",
      "status": "proven_machine_verified",
      "constraints": {
        "operators_count": 16,
        "complete": 8,
        "approximate": 1,
        "incomplete": 7
      }
    },
    {
      "id": "catalog.equations_265",
      "name": "Public Equation Catalog",
      "category": "construction",
      "description": "265 named equations across 18+ scientific domains, each annotated with EML decomposition and Pfaffian cost class. Live count on monogate.dev/explorer.",
      "status": "empirically_confirmed",
      "constraints": {
        "catalog_size": 265
      }
    },
    {
      "id": "characterization.elc_real",
      "name": "ELC(ℝ) Characterization",
      "category": "scientific_claim",
      "description": "ELC(ℝ) = closure of ℝ ∪ {1} under eml equals the set of all functions expressible as finite compositions of real exp and ln. Odrzywołek 2026, arXiv:2603.21852.",
      "status": "proven_machine_verified"
    },
    {
      "id": "bridge.euler_gateway",
      "name": "Euler Gateway (Complex Bridge)",
      "category": "construction",
      "description": "exp(ix) = cos(x) + i·sin(x) bridges real EML to complex domain, enabling sin/cos construction via Im/Re extraction of eml(ix, 1).",
      "status": "proven_machine_verified"
    },
    {
      "id": "cost.decomposition",
      "name": "Cost Decomposition Theorem",
      "category": "scientific_claim",
      "description": "Every EML tree decomposes into a Pfaffian profile (r, mr, d, so) that predicts computational cost and structural complexity. T38 in Lean.",
      "status": "proven_machine_verified"
    },
    {
      "id": "activation.softplus",
      "name": "softplus activation",
      "category": "tool_function",
      "description": "softplus(x) = ln(1 + exp(x)) = LEAd(x, 1). Single-node EML expression.",
      "status": "empirically_confirmed",
      "neural_metrics": {
        "forward_nodes": 1
      }
    },
    {
      "id": "activation.sigmoid",
      "name": "sigmoid activation",
      "category": "tool_function",
      "description": "sigmoid(x) = 1/(1+exp(-x)). DAG cost is the canonical 5n value (shared subexpression); strict tree cost is 6n.",
      "status": "empirically_confirmed",
      "neural_metrics": {
        "forward_nodes": 6,
        "forward_nodes_dag": 5
      }
    },
    {
      "id": "optimizer.adam",
      "name": "Adam optimizer (per-param-per-step)",
      "category": "tool_function",
      "description": "Adam update with shared bias-correction scalars amortized across parameters. Post-NN-13 re-audit: 31n amortized; strict/tree value is 37n.",
      "status": "empirically_confirmed",
      "neural_metrics": {
        "optimizer_nodes_per_param_per_step_strict": 37,
        "optimizer_nodes_per_param_per_step_amortized": 31
      },
      "eml_metrics": {
        "cost_amortized": 31
      }
    },
    {
      "id": "norm.rmsnorm",
      "name": "RMSNorm",
      "category": "tool_function",
      "description": "RMSNorm(x) = x / sqrt(mean(x²) + ε). EML cost scales with hidden dimension; reported value is for d=4096 (LLM-scale layer).",
      "status": "empirically_confirmed",
      "neural_metrics": {
        "forward_nodes": 4097
      }
    },
    {
      "id": "library.eml_stdlib",
      "name": "eml-stdlib — verified standard library for game development",
      "category": "construction",
      "description": "v0.4.0 (2026-05-07) ships 178 EML modules / 521 functions / 466 verified across 22 categories: math, signal, control, physics, circuits, sensors, biology (incl. biology/abilities), carriers, quantum, ml, ballistics, plus the 60-module gaming/ family (noise, textures, shading, lighting, terrain, animation, particles, camera, audio, physics). Each module declares chain order and ~89% carry @verify(lean) contracts. Installable via pip; .eml source files ship inside the wheel for downstream Forge tooling. Mirrored as GDScript inside the four Godot prototypes.",
      "status": "empirically_confirmed",
      "constraints": {
        "modules": 178,
        "functions": 521,
        "verified_functions": 466,
        "verified_pct": 89,
        "categories": 22
      }
    },
    {
      "id": "applications.godot_prototypes",
      "name": "Godot game prototypes (eml-stdlib applied)",
      "category": "construction",
      "description": "Four Godot 4 prototypes — spellforge (1v1 rune-graph duel; spells are EML expression trees), longshot (2D sniper sim mirroring eml-stdlib::ballistics), apex-predator (asymmetric PvP; hunter has real ballistics, beast has real biology + 4-stage evolution; 25 species, 2v1 split-screen with per-viewport fragment-shader fog of war), monowave (deterministic music visualizer; same audio in → same visuals out, no randomness anywhere). All four ship a CLAUDE.md handoff doc plus a headless smoke-test suite (76 tests total). Private repos under agent-maestro/. The 10 ability kernels first written for apex-predator were promoted to eml-stdlib/biology/abilities/ in stdlib v0.4.",
      "status": "empirically_confirmed",
      "constraints": {
        "games_count": 4,
        "headless_test_count": 76,
        "spellforge_tests": 13,
        "longshot_tests": 15,
        "apex_predator_tests": 22,
        "monowave_tests": 26
      }
    }
  ],
  "benchmarks": [
    {
      "id": "bench.superbest_table",
      "name": "SuperBEST v5.3 routing table values",
      "capability_ref": "routing.superbest_v5_3",
      "metric": "node_count_positive_domain",
      "value": 14,
      "unit": "F16 nodes",
      "direction": "lower_is_better",
      "reproducibility": {
        "command": "python python/scripts/sync_superbest_canonical.py --strict",
        "deterministic": true
      },
      "notes": "Headline: 14n positive-domain 10-op basket (80.8 percent vs 73n naive). General domain: 16n 8-op basket (74.2 percent vs 62n naive). Source: blog/src/data/superbest.json v5.3 synchronized from monogate.superbest."
    },
    {
      "id": "bench.lean_zero_sorry_files",
      "name": "Lean 4 verification (Mathlib v4.14.0)",
      "capability_ref": "operator.eml_universality",
      "metric": "files_with_zero_sorries",
      "value": 14,
      "unit": "files of 17",
      "direction": "higher_is_better",
      "reproducibility": {
        "command": "git clone https://github.com/agent-maestro/monogate-lean && cd monogate-lean && lake build",
        "deterministic": true
      },
      "notes": "14 of 17 files in MonogateEML/ build with zero sorries. Three files carry the remaining 5 documented sorries: InfiniteZerosBarrier.lean (lines 326, 337 - Part D), ChainOrderAdditivity.lean (lines 138, 175 - chain_order_additivity + three_tower_min_generating_set), and Runtime.lean (line 246 - mg_softplus_route_bound_high). Four of those share the same Mathlib o-minimal / Khovanskii zero-count gap; one Mathlib advance closes all four. The remaining one is a saturation-branch approximation bound for the libmonogate softplus routing variant, deferred to a future MonogateEML/Float64.lean."
    },
    {
      "id": "bench.eml_cost_tests",
      "name": "eml-cost test suite",
      "capability_ref": "tool.eml_cost_cli",
      "metric": "tests_passing",
      "value": 194,
      "unit": "tests",
      "direction": "higher_is_better",
      "reproducibility": {
        "command": "pip install eml-cost==0.7.1 && git clone https://github.com/agent-maestro/eml-cost && cd eml-cost && python -m pytest",
        "deterministic": true
      },
      "notes": "Includes 26 tests for predict_precision_loss and 16 tests for the CLI. mypy --strict clean across 11 source files."
    },
    {
      "id": "bench.eml_cost_torch_tests",
      "name": "eml-cost-torch test suite",
      "capability_ref": "tool.diagnose",
      "metric": "tests_passing",
      "value": 42,
      "unit": "tests",
      "direction": "higher_is_better",
      "reproducibility": {
        "command": "pip install eml-cost-torch==0.5.0 && git clone https://github.com/agent-maestro/eml-cost-torch && cd eml-cost-torch && python -m pytest",
        "deterministic": true
      },
      "notes": "Per-activation empirical lookup tests + diagnose() integration tests."
    },
    {
      "id": "bench.npm_monogate_tests",
      "name": "monogate npm test suite",
      "capability_ref": "tool.npm_port",
      "metric": "tests_passing",
      "value": 429,
      "unit": "tests",
      "direction": "higher_is_better",
      "reproducibility": {
        "command": "npm install monogate@1.3.0 && cd node_modules/monogate && npx vitest run",
        "deterministic": true
      },
      "notes": "Across 5 test files: cost.test.js (68), cost_precision.test.js (37), complex.test.js (38), complex_eml.test.js (71), index.test.js (215)."
    },
    {
      "id": "bench.cost_class_p2d5w2c1",
      "name": "Cost-class p2-d5-w2-c1 enrichment vs random null",
      "capability_ref": "empirical.cost_class_enrichment",
      "metric": "enrichment_ratio",
      "value": 2.7,
      "unit": "fold",
      "direction": "higher_is_better",
      "reproducibility": {
        "command": "git clone https://github.com/agent-maestro/monogate-research-public-bench && cd bench-300-domain && python stats.py --n_null 5000",
        "deterministic": true
      },
      "notes": "Across the 403-expression bench-300-domain corpus and N_null=5000. Benjamini-Hochberg FDR-corrected q < 1e-4 across 31 candidate classes. 18 distinct domains contribute. The publication of this benchmark expects the public bench repo to be available; until then the corpus and stats.py live in monogate-research/exploration/bench-300-domain/."
    }
  ],
  "proofs": [
    {
      "id": "lean.add_lower_bound",
      "name": "SB(add) >= 2",
      "statement": "No single F16 operator computes x + y for all real x and y.",
      "status": "proven_machine_verified",
      "proof_method": "Witness-based case analysis over all 16 F16 operators; paired with a 2-node upper-bound construction.",
      "lean_file": "MonogateEML/AddLowerBound.lean",
      "lean_theorem": "SB_add_ge_two",
      "sorries": 0,
      "capability_refs": [
        "lower_bound.add"
      ]
    },
    {
      "id": "lean.sub_lower_bound",
      "name": "SB(sub) >= 2",
      "statement": "No single F16 operator computes x - y for all real x and y.",
      "status": "proven_machine_verified",
      "proof_method": "Exhaustive 16-case witness refutation.",
      "lean_file": "MonogateEML/SubLowerBound.lean",
      "lean_theorem": "SB_sub_ge_two",
      "sorries": 0,
      "capability_refs": [
        "lower_bound.sub"
      ]
    },
    {
      "id": "lean.mul_lower_bound",
      "name": "SB(mul) >= 2",
      "statement": "No single F16 operator computes x * y for all real x and y.",
      "status": "proven_machine_verified",
      "proof_method": "Derivative obstruction plus witness refutation.",
      "lean_file": "MonogateEML/MulLowerBound.lean",
      "lean_theorem": "SB_mul_ge_two",
      "sorries": 0,
      "capability_refs": [
        "lower_bound.mul"
      ]
    },
    {
      "id": "lean.div_lower_bound",
      "name": "SB(div) >= 2",
      "statement": "No single F16 operator computes x / y for all real x and y.",
      "status": "proven_machine_verified",
      "proof_method": "Witness (0, 1) refutes all 16 operators.",
      "lean_file": "MonogateEML/DivLowerBound.lean",
      "lean_theorem": "SB_div_ge_two",
      "sorries": 0,
      "capability_refs": [
        "lower_bound.div"
      ]
    },
    {
      "id": "lean.eml_universality",
      "name": "EML universality witness",
      "statement": "Every EML-elementary function is realized by an EML routing tree.",
      "status": "proven_machine_verified",
      "proof_method": "Existential extraction from IsEMLElementary.",
      "lean_file": "MonogateEML/Universality.lean",
      "lean_theorem": "eml_universality",
      "sorries": 0,
      "capability_refs": [
        "operator.eml_universality"
      ]
    },
    {
      "id": "lean.infinite_zeros_barrier_partial",
      "name": "Infinite Zeros Barrier (T01) — partial",
      "statement": "Real EML trees have finitely many zeros on any closed bounded interval where they are real-analytic. Parts A, B, C, C-prime fully closed; Part D (sin not in EML) carries 2 documented sorries.",
      "status": "proven_partial",
      "proof_method": "Bolzano-Weierstrass + AnalyticOnNhd identity theorem (Parts B and C); Part D requires o-minimal / Wilkie 1996 machinery not yet in Mathlib.",
      "lean_file": "MonogateEML/InfiniteZerosBarrier.lean",
      "lean_theorem_partial": "Parts A, B, C, C-prime",
      "sorries": 2,
      "sorries_locations": [
        326,
        337
      ],
      "sorries_description": "sin_not_in_eml and sin_not_in_real_EML_k pending a quantitative o-minimal zero-count bound not yet formalized in Mathlib v4.14.0.",
      "capability_refs": [
        "barrier.infinite_zeros"
      ]
    },
    {
      "id": "lean.eml_duality",
      "name": "EML Duality Theorem",
      "statement": "The EML operator exhibits a duality structure where conjugation preserves the elementary closure.",
      "status": "proven_machine_verified",
      "proof_method": "structural_induction",
      "lean_file": "MonogateEML/EMLDuality.lean",
      "lean_theorem": "eml_duality",
      "sorries": 0,
      "capability_refs": [
        "universality.eml"
      ]
    },
    {
      "id": "lean.hyperbolic_preserves_elc",
      "name": "Hyperbolic Preservation",
      "statement": "Hyperbolic functions sinh, cosh, tanh are preserved under EML closure — constructible from exp without complex detour.",
      "status": "proven_machine_verified",
      "proof_method": "direct_construction",
      "lean_file": "MonogateEML/HyperbolicPreservation.lean",
      "lean_theorem": "hyperbolic_in_elc",
      "sorries": 0,
      "capability_refs": [
        "universality.eml"
      ]
    },
    {
      "id": "lean.self_map_conjugacy",
      "name": "Self-Map Conjugacy",
      "statement": "EML self-composition eml(eml(x, y), eml(y, x)) exhibits conjugacy structure relating forward and inverse maps.",
      "status": "proven_machine_verified",
      "proof_method": "algebraic_manipulation",
      "lean_file": "MonogateEML/SelfMapConjugacy.lean",
      "lean_theorem": "self_map_conjugacy",
      "sorries": 0,
      "capability_refs": [
        "characterization.elc_real"
      ]
    },
    {
      "id": "lean.upper_bounds_routing",
      "name": "Upper Bounds (BEST Routing)",
      "statement": "Every elementary arithmetic operation has an upper bound on BEST-routed node count, establishing the SuperBEST table entries.",
      "status": "proven_machine_verified",
      "proof_method": "constructive_witness",
      "lean_file": "MonogateEML/UpperBounds.lean",
      "lean_theorem": "upper_bound_add",
      "sorries": 0,
      "capability_refs": [
        "routing.superbest_v5"
      ]
    }
  ],
  "verification": {
    "test_count_total": 2400,
    "test_count_breakdown": {
      "monogate_python": 1729,
      "eml_cost": 194,
      "eml_cost_torch": 42,
      "monogate_npm": 429,
      "monogate_research_petal_seed_v1": 6
    },
    "last_verified": "2026-05-25T02:24:44Z",
    "lean_total_files": 17,
    "lean_partial_files": 3,
    "lean_active_sorry_locations": [
      "MonogateEML/InfiniteZerosBarrier.lean:326",
      "MonogateEML/InfiniteZerosBarrier.lean:337",
      "MonogateEML/ChainOrderAdditivity.lean:138",
      "MonogateEML/ChainOrderAdditivity.lean:175",
      "MonogateEML/Runtime.lean:246"
    ],
    "lean_total_statements": 496,
    "lean_original_eml_theorems": 50,
    "evidence_summary": "14 of 17 Lean files build clean with zero sorries. Three files carry sorries: InfiniteZerosBarrier.lean (2, on Part D), ChainOrderAdditivity.lean (2, on chain_order_additivity + three_tower_min_generating_set), and Runtime.lean (1, on mg_softplus_route_bound_high). The first 4 are blocked on the same Mathlib gap (o-minimal / Khovanskii zero-count); one advance closes all four. The 5th is a saturation-branch approximation bound for the libmonogate softplus routing variant, deferred to a future Float64 file. Six independent benchmark categories ship with reproducible commands. Tests across all five published packages currently pass.",
    "test_count": 1872,
    "lean_clean_files": 14,
    "lean_sorries_total": 5
  },
  "integration": {
    "install": {
      "pip_monogate": "pip install monogate==2.5.0",
      "pip_eml_cost": "pip install eml-cost==0.7.1",
      "pip_eml_rewrite": "pip install eml-rewrite==0.5.1",
      "pip_eml_cost_torch": "pip install eml-cost-torch==0.5.0",
      "pip_eml_stdlib": "pip install eml-stdlib==0.4.0",
      "npm_monogate": "npm install monogate@1.3.0",
      "pip": "pip install monogate==2.5.0"
    },
    "sdk_languages": [
      "python",
      "javascript"
    ],
    "cli": {
      "binary": "eml-cost",
      "subcommands": [
        "report",
        "check",
        "version"
      ],
      "ships_in": "eml-cost 0.7.1"
    }
  },
  "agent_queries": {
    "supports": [
      "elementary_functions",
      "symbolic_regression",
      "cost_theory",
      "pfaffian_complexity",
      "compile_time_prediction",
      "numerical_precision_prediction",
      "activation_diagnostics",
      "lean4_verified",
      "superbest_routing",
      "verified_game_kernels",
      "godot_eml_prototypes"
    ],
    "honest_limitations": [
      "predict_precision_loss is NOT a form recommender; cost class does not reliably pick the more numerically stable form within an algebraic equivalence class (E-193 Phase 3 best-pick = 30 percent across 10 rewrite tests).",
      "Form-sensitivity: about 50 percent of textbook expressions yield different cost classes for algebraically equivalent forms. canonicalize() preprocessing reduces this to about 35 percent. The remaining drift is documented.",
      "Real-world (bio / physics / engineering) expressions are NOT specially numerically clean compared to random nulls at matched cost class (pooled diff = -0.001 log10 across 4 matched classes; E-193 Phase 4).",
      "diagnose(model) per-activation drift values are measured on a single fixed FFN; per-architecture variation is not yet characterized.",
      "JS port of predict_precision_loss matches Python byte-for-byte on 14 of 20 representative cases; 6 of 20 differ by up to about a factor of 10 due to SymPy automatic canonicalization differences."
    ]
  },
  "metadata": {
    "created": "2026-04-17T00:00:00Z",
    "updated": "2026-05-25T02:24:44Z",
    "schema_url": "https://monogate.org/schemas/capcard/v3.json",
    "rewrite_note": "Rewritten 2026-04-27 to align with verified CONTEXT.md numbers, drop earlier boasting framing, and remove an unverified manual trust score. All quantitative claims are now traceable to a reproducible command or a Lean source file. Updated 2026-04-29 to reflect Runtime.lean addition (libmonogate runtime correspondence; user-verified `lake build` green; 1 documented sorry on mg_softplus_route_bound_high). Updated 2026-05-07 to add eml-stdlib v0.4.0 (178 modules / 521 fns / 466 verified) and the four Godot prototypes (spellforge, longshot, apex-predator, monowave) — empirically confirmed via 76 headless tests across the four repos."
  }
}
