CVP verified calculation capability
Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS.
Math Capability ID math.special version 1.10.6 CVP VERIFIED CURRENT Core
Error function
erf(x) = (2/√π) ∫₀ˣ e^{−t²} dtΓ(x) = ∫₀^∞ t^{x−1} e^{−t} dtlgamma(x) = ln Γ(x), x > 0J_n(x) = (x/2)^n Σ_k (−1)^k (x/2)^{2k} / (k! (n+k)!)Y_n(x) Neumann, x > 0I_n(x) = (x/2)^n Σ_k (x/2)^{2k} / (k! (n+k)!)K_n(x) Macdonald, x > 0W(x) e^{W(x)} = xW_{-1}(x) e^{W_{-1}(x)} = x, −1/e ≤ x < 0B(x, y) = Γ(x)Γ(y) / Γ(x+y)B_x(a, b) = ∫₀ˣ t^{a−1} (1−t)^{b−1} dtsinc(x) = sin(x)/x, sinc(0)=1sinc(x) = sin(πx)/(πx), sinc(0)=1Canonical symbols for this capability. Agent schemas remain the contract.
| Symbol | Quantity | Unit | Role |
|---|---|---|---|
x | Finite decimal binary64 input | — | input |
z | Finite decimal binary64 input | — | input |
t | Finite decimal binary64 input | — | input |
y | Finite decimal binary64 input | — | input |
a | Finite decimal binary64 input | — | input |
b | Finite decimal binary64 input | — | input |
n | Finite decimal binary64 input | — | input |
nu | Finite decimal binary64 input | — | input |
order | Finite decimal binary64 input | — | input |
api_version | — | — | output |
api_contract_version | — | — | output |
spec_version | — | — | output |
page | Canonical calculator page URL | — | output |
links | — | — | output |
Inspectable numeric contract for this Capability@Version. Not a rewrite of the engine.
| Field | Declaration |
|---|---|
numeric_domain | real |
exactness | float64 |
algorithm | erf/erfc: Taylor / upper-gamma continued fraction; J/Y: series for |x|<4 then GL16 integral quadrature; K: log-scaled GL16 integral quadrature; I: positive series; Gamma signed log-Lanczos/reduced-sinpi reflection; lgamma directly in logs with a Taylor expansion near1 and2; Lambert real branchpoint series and log-Newton/Halley; beta in logs; incomplete beta symmetry/continued fraction; normalized sinc reduced sinpi |
valid_domain | Per-function real domain; Bessel n0–8 and |x|≤80, Y/K x>0; Gamma excludes non-positive integer poles; lgamma x>0; Lambert designated binary64 -1/e endpoint; positive beta shapes≤1e6 except B(x,1); incomplete beta positive shapes≤1e6 and x∈[0,1] |
singularity_policy | INVALID_INPUT on poles/unpublished branches; NUMERIC_UNDERFLOW for nonzero text converted to zero; NUMERICAL_RANGE_ERROR on Gamma underflow or unsupported shapes; RESULT_OVERFLOW on unrepresentable result |
branch_policy | real principal: W₀ vs W_{-1} are explicit modes, not a complex Lambert disc |
tolerance | runtime_tolerance: Bessel integral refinement: |fine−coarse| ≤ 2e−13·|fine| + 2e−15 on each integral (K before unscaling); verification_tolerance: High-precision fixtures: relative 1e−10; J/Y near zeros add absolute 2e−14; I/K and J at |x|<1 add only 4 smallest binary64 subnormals. Extended independent fixtures relative1e−10 plus4 subnormals; J/Y near zeros absolute2e−14. Sampled verification, not a full-domain bound. |
convergence | Bessel integrals: up to 4 panel doublings then NO_CONVERGENCE; erfc continued fraction: up to 512 steps then NO_CONVERGENCE. Lambert up to80 steps; incomplete beta up to10000 fraction steps; failed iterations NO_CONVERGENCE. Integral tail truncation is separate from refinement. |
conditioning | Relative accuracy weakens near zeros of J/Y; compare absolute errors there. K is evaluated with log-scaled positive integrands to avoid subtractive tail cancellation. |
rounding | ieee754_round_ties_to_even |
overflow | ieee754_nonfinite_or_coded_error |
reproducibility | deterministic algorithm + Capability@Version |
independent_oracle | Independent mpmath fixtures; public Evidence aggregates/digests, private corpus withheld |
golden_vectors | Evidence golden + boundary + property (and published_reference_case when listed) |
Declared scope for this capability. Do not use it outside this domain.
Assumptions
One numerical check. The calculator page holds worked steps and FAQ.
mode=erf x=1 → 0.84270079295
CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance · all published modes. Computational verification is defined by CVP. Supplemental domain review (internal) and named expert review are defined by the Review policy and do not by themselves determine CVP conformance.
Human page, REST, and MCP share the same engine and calculation_version.
Build verified hashes workspace artifacts only. After deploy, attest:production GETs canonical URLs twice — the public/cached view an Agent actually hits, and origin — including every /capabilities/{id} HTML page. Public Capability HTML version must match catalog before production attestation passes. Live Trust rows above fetch /.well-known/calculatorx-production-attestation.json
and the output schema const. Build hashes: release integrity. That proves currently published page / engine / schema / evidence / MCP agree — not that a historical version is independently immutable. Reference Calculation Standard — Production surface contract 6/6.
curl -sS -X POST 'https://www.calculatorx.com/api/v1/calc/special-functions' \
-H 'Content-Type: application/json' \
-d '{"inputs":{"mode":"erf","x":1},"calculation_version":"1.10.6"}'{
"inputs": {
"mode": "erf",
"x": 1
},
"calculation_version": "1.10.6"
}POST /api/v1/calc/special-functions. This is a POST calculate endpoint — do not GET it.
Full REST contract: REST API docs.
Human-readable sources plus CVP reference evidence classes.
Sources
Reference evidence classes: O1 model · O2 expected_values · O2 expected_values · O2 expected_values · O2 numerical_behavior
Inspect, then execute. Same engine as REST and the human calculator.
curl -sS -X POST 'https://www.calculatorx.com/mcp' \
-H 'Content-Type: application/json' \
-H 'MCP-Protocol-Version: 2026-07-28' \
-H 'Mcp-Method: tools/call' \
-H 'Mcp-Name: inspect_capability' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"inspect_capability","arguments":{"capability_id":"math.special"},"_meta":{"io.modelcontextprotocol/protocolVersion":"2026-07-28","io.modelcontextprotocol/clientInfo":{"name":"calculatorx-docs-example","version":"1.0.0"},"io.modelcontextprotocol/clientCapabilities":{}}}}'curl -sS -X POST 'https://www.calculatorx.com/mcp' \
-H 'Content-Type: application/json' \
-H 'MCP-Protocol-Version: 2026-07-28' \
-H 'Mcp-Method: tools/call' \
-H 'Mcp-Name: execute_calculation' \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"execute_calculation","arguments":{"capability_id":"math.special","inputs":{"mode":"erf","x":1},"calculation_version":"1.10.6"},"_meta":{"io.modelcontextprotocol/protocolVersion":"2026-07-28","io.modelcontextprotocol/clientInfo":{"name":"calculatorx-docs-example","version":"1.0.0"},"io.modelcontextprotocol/clientCapabilities":{}}}}'Pin calculation_version (1.10.6) when the result must stay reproducible.
Inspect the trust tier and required assurance level before execution. Full protocol notes: MCP docs.