CVP verified calculation capability
Propagate standard uncertainties: GUM linear (binary/sensitivity/RSS/budget) or Monte Carlo (JCGM 101); optional correlations, contributions, νeff, Student-t/percentile coverage → U.
Engineering · Uncertainty Capability ID engineering.uncertainty.propagate version 1.9.8 CVP VERIFIED CURRENT Engineering
Sum
u_c(a+b) = √(u_a² + u_b² + 2ρ u_a u_b)u_c(a−b) = √(u_a² + u_b² − 2ρ u_a u_b)u_c = √((b·u_a)² + (a·u_b)² + 2ρ a b u_a u_b)u_c = √((u_a/b)² + (a·u_b/b²)² + 2ρ (1/b)(−a/b²) u_a u_b)u_c = √[Σ(c_i u_i)² + 2 Σ_{i<j} c_i c_j u_i u_j ρ_ij]u_c = √Σ u_i²U = k · u_cνeff = u_c⁴ / Σ ((cᵢ uᵢ)⁴ / νᵢ)k = t_{(1+p)/2, νeff}; U = k·u_cModes: sum · difference · product · quotient · sensitivity · budget · rss · montecarlo
Canonical symbols for this capability. Agent schemas remain the contract.
| Symbol | Quantity | Unit | Role |
|---|---|---|---|
a | First value | — | input / output |
ua | Standard uncertainty of a | — | input / output |
b | Second value | — | input / output |
ub | Standard uncertainty of b | — | input / output |
unit_a | Optional unit label for a | — | input / output |
unit_b | Optional unit label for b | — | input / output |
rho | Optional correlation coefficient between a and b | — | input / output |
k | Optional coverage factor; when set, U = k·u_c | — | input / output |
nua | Optional ν for a | — | input / output |
nub | Optional ν for b | — | input / output |
type_a | — | — | input / output |
type_b | — | — | input / output |
confidence | Optional two-sided coverage probability | — | input / output |
coefficients | Sensitivity coefficients ∂f/∂x_i | — | input |
uncertainties | Standard uncertainties u | — | input / output |
y | Optional result value for relative uncertainty | — | input / output |
unit | Optional unit label for y / u_c | — | input / output |
correlations | Optional correlation pairs for sensitivity: [{i,j,rho}] 0-based indices | — | input / output |
dof | Optional degrees of freedom ν_i | — | input / output |
types | Optional Type A/B labels | — | input / output |
labels | Optional component labels | — | input / output |
components | Budget components: [{name?,u,c?,type?,nu?,distribution?,x?}] | — | input / output |
model | Binary measurement model | — | input / output |
N | Monte Carlo trials | — | input / output |
seed | PRNG seed | — | input / output |
distribution | Default draw distribution for MC | — | input / output |
distribution_a | — | — | input |
distribution_b | — | — | input |
u_c | Combined standard uncertainty | — | output |
u_rel | |u_c/y| when y ≠ 0 | — | output |
reported | Human-facing rounded values | — | output |
terms | Number of uncertainty terms | — | output |
quantity | Present when SI-prefix conversion scaled inputs into the output unit | — | output |
U | Expanded uncertainty k·u_c when k provided | — | output |
contributions | Diagonal variance contributions | — | output |
largest | — | — | output |
covariance_contributions | Off-diagonal 2ρ c_i c_j u_i u_j shares of u_c² | — | output |
nu_eff | Welch–Satterthwaite νeff when dof provided; Infinity when all ν→∞ | — | output |
nu_eff_infinite | True when νeff → ∞ | — | output |
k_source | How k was obtained | — | output |
y_mean | — | — | output |
y_median | — | — | output |
y_p025 | — | — | output |
y_p975 | — | — | output |
y_low | — | — | output |
y_high | — | — | output |
linear_u_c | First-order GUM u_c for comparison | — | output |
n_valid | Monte Carlo samples used for mean/std after singularity filtering | — | output |
invalid_samples | — | — | output |
near_singularity_samples | — | — | output |
invalid_fraction | — | — | output |
Declared scope for this capability. Do not use it outside this domain.
Assumptions
One numerical check. The calculator page holds worked steps and FAQ.
sum, a=100±0.1, b=50±0.2 → y=150, u_c≈0.2236 (reported u_c=0.22)
CVP VERIFIED · CVP protocol 1.0.0-proposed · Engineering assurance · Linear GUM: sum, difference, product, quotient, RSS, sensitivity, budget. Correlation matrices must be PSD (singular PSD allowed). O3 mpmath (80 dps) tabulated linear u_c. Monte Carlo: O2-B seeded mulberry32+Box-Muller replay of y_mean/u_c/percentiles (≤2 ULP) for sum, difference, product, quotient, correlated normal, and budget/rectangular; linear_u_c vs first-order GUM.. 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 10/10.
curl -sS -X POST 'https://www.calculatorx.com/api/v1/calc/uncertainty-propagate' \
-H 'Content-Type: application/json' \
-d '{"inputs":{"mode":"sum","a":100,"ua":0.1,"b":50,"ub":0.2},"calculation_version":"1.9.8"}'{
"inputs": {
"mode": "sum",
"a": 100,
"ua": 0.1,
"b": 50,
"ub": 0.2
},
"calculation_version": "1.9.8"
}POST /api/v1/calc/uncertainty-propagate. This is a POST calculate endpoint — do not GET it.
Full REST contract: REST API docs.
Declared calculation modes for this capability.
sumdifferenceproductquotientsensitivityrssbudgetmontecarloHuman-readable sources plus CVP reference evidence classes.
Sources
Reference evidence classes: O1 model · O3 expected_values · O3 numerical_behavior · 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":"engineering.uncertainty.propagate"},"_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":"engineering.uncertainty.propagate","inputs":{"mode":"sum","a":100,"ua":0.1,"b":50,"ub":0.2},"calculation_version":"1.9.8"},"_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.9.8) when the result must stay reproducible.
Inspect the trust tier and required assurance level before execution. Full protocol notes: MCP docs.