CVP verified calculation capability
tan(θ) in degrees (default) or radians; exact odd multiples of 90° are UNDEFINED; near-pole returns finite with NEAR_SINGULARITY.
Math Capability ID math.tan version 1.1.0 CVP VERIFIED CURRENT Core
Ratio
tan(θ) = opposite / adjacenttan(θ) = sin(θ) / cos(θ)tan(θ°) = tan(θ × π/180)cos(θ) = 0 (θ = 90° + 180°k)Modes: angle · null
Canonical symbols for this capability. Agent schemas remain the contract.
| Symbol | Quantity | Unit | Role |
|---|---|---|---|
theta | scalar plane angle | — | input |
t | scalar plane angle | — | input |
angle | scalar plane angle | — | input |
thetaInput | scalar plane angle | — | input |
unit | — | — | input |
unitInput | — | — | input |
review | — | — | output |
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 | Signed degree reduction before stable tan/cotangent offsets; generic Math.tan radians; only exact degree/common and listed radian tokens recognized symbolically. |
valid_domain | Finite binary64 angle; strict decimal/scientific source text<=512characters, agreeing aliases and deg/rad units. Unknown keys, raw underflow and nonzero-result underflow reject. |
singularity_policy | Only exact degree odd90 poles and listed ±pi/2,±3pi/2 radian tokens reject UNDEFINED. Neighboring floats stay finite; |tan|>5729.57789313059 returns full finite scalar plus NEAR_SINGULARITY warning. |
branch_policy | not applicable — real principal value only |
tolerance | not applicable — closed form; capability Evidence owns comparison, no global default |
convergence | not applicable — non-iterative |
conditioning | Unbounded near poles and zeros; binary64 input spacing loses phase information for huge angles before computation. Graph omitted above|theta|1e6 or|value|8; full result exported. |
rounding | ieee754_round_ties_to_even |
overflow | ieee754_nonfinite_or_coded_error |
reproducibility | deterministic algorithm + Capability@Version |
independent_oracle | Independent CPython Decimal420/620 Taylor/Machin reference vectors;2ULP fixed-vector budget,zero/sign/types/warnings strict andactual distances reported;16legacyO3values separately retained; no whole-domain/cross-runtime proof. |
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.
tan(45°) = 1 (listed common-angle identity); tan(90°) is classified UNDEFINED; tan(89.99999995°) is a large finite value with NEAR_SINGULARITY
CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance · angle deg/rad, exact declared poles and finite near-singularity warning envelope. 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/tan' \
-H 'Content-Type: application/json' \
-d '{"inputs":{"theta":45,"unit":"deg"},"calculation_version":"1.1.0"}'{
"inputs": {
"theta": 45,
"unit": "deg"
},
"calculation_version": "1.1.0"
}POST /api/v1/calc/tan. This is a POST calculate endpoint — do not GET it.
Full REST contract: REST API docs.
Declared calculation modes for this capability.
angleHuman-readable sources plus CVP reference evidence classes.
Sources
Derived identities
Reference evidence classes: O1 model · 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.tan"},"_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.tan","inputs":{"theta":45,"unit":"deg"},"calculation_version":"1.1.0"},"_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.1.0) when the result must stay reproducible.
Inspect the trust tier and required assurance level before execution. Full protocol notes: MCP docs.