CVP verified calculation capability
Distance, midpoint, slope, two-point line, point-line distance, line intersection, and angle in the plane. Slope is not share-key m. Discovery /line-equation, /point-line-distance, /line-intersection, /angle-between-lines. Not Pythagorean, not CAS.
Math · Geometry Capability ID math.geometry.coordinate version 1.8.0 CVP VERIFIED CURRENT Core
Coordinate geometry primitives
Distance, midpoint, slope, two-point line, point-line distance, line intersection, and principal angle between linesd = √((x₂−x₁)²+(y₂−y₁)²)M = ((x₁+x₂)/2, (y₁+y₂)/2)slope = (y₂−y₁)/(x₂−x₁)A = y₂ − y₁, B = x₁ − x₂, C = x₂ y₁ − y₂ x₁|Ax₀ + By₀ + C| / √(A² + B²)A₁x + B₁y + C₁ = 0 ∩ A₂x + B₂y + C₂ = 0θ = arccos(|A₁A₂ + B₁B₂| / (√(A₁²+B₁²) √(A₂²+B₂²))), 0° ≤ θ ≤ 90°Modes: angle · angle-between · angle-between-lines · angle between · angle between lines · dist · dist-to-line · dist to line · distance · distance-to-line · distance to line · equation · gradient · intersect · intersection · length · line · line-angle · line-equation · line-intersect · line-intersection · line angle · line equation · line intersect · line intersection · mid · midpoint · point-line · point-line-distance · point-to-line · point line · point line distance · point to line · slope · two-line · two-line-angle · two-line-intersection · two-lines · two-point · two-point-line · two line · two line angle · two line intersection · two lines · two point · two point line
Canonical symbols for this capability. Agent schemas remain the contract.
| Symbol | Quantity | Unit policy | Role |
|---|---|---|---|
x1 | length | consistent length unit | input / output |
y1 | length | consistent length unit | input / output |
x2 | length | consistent length unit | input / output |
y2 | length | consistent length unit | input / output |
x0 | length | consistent length unit | input / output |
y0 | length | consistent length unit | input / output |
x3 | length | consistent length unit | input / output |
y3 | length | consistent length unit | input / output |
x4 | length | consistent length unit | input / output |
y4 | length | consistent length unit | input / output |
px | length | consistent length unit | input |
py | length | consistent length unit | input |
distance | length | consistent length unit | output |
mx | length | consistent length unit | output |
my | length | consistent length unit | output |
slope | — | — | output |
vertical | — | — | output |
intercept | length | consistent length unit | output |
equation | — | — | output |
standard | — | — | output |
A | — | — | output |
B | — | — | output |
C | — | — | output |
signed | length | consistent length unit | output |
foot_x | length | consistent length unit | output |
foot_y | length | consistent length unit | output |
x | length | consistent length unit | output |
y | length | consistent length unit | output |
A1 | — | — | output |
B1 | — | — | output |
C1 | — | — | output |
A2 | — | — | output |
B2 | — | — | output |
C2 | — | — | output |
standard1 | — | — | output |
standard2 | — | — | output |
angle_deg | scalar plane angle | — | output |
angle_rad | scalar plane angle | — | output |
supplement_deg | scalar plane angle | — | output |
dx | — | — | output |
dy | — | — | output |
Inspectable numeric contract for this Capability@Version. Not a rewrite of the engine.
| Field | Declaration |
|---|---|
numeric_domain | real |
exactness | float64 |
algorithm | exact dyadic predicates and rational intermediates on normalized binary64; scaled norm and atan2(abs cross,abs dot); full binary64 presentation |
valid_domain | finite normal nonzero binary64 coordinates or zero; strict decimal inputs; all published numeric results normal or zero; coincident points invalid for slope and all line operations |
singularity_policy | INVALID_INPUT on coincident defining points; exact predicates code parallel/coincident; NUMERIC_RANGE on unrepresentable nonzero outputs; near-parallel results are input-sensitive |
branch_policy | not applicable — real principal value only |
tolerance | type: relative; value: 2e-12; note: Exact zero/discrete fields; well-conditioned reference comparisons, not an input perturbation bound |
convergence | not applicable — non-iterative |
conditioning | exact predicates apply to normalized binary64; decimal rounding can change near-parallel classification/positions; no input perturbation bound; display equations rounded by binary64 |
rounding | ieee754_round_ties_to_even |
overflow | NUMERIC_RANGE on nonzero output outside normal binary64; raw decimal nonzero-to-zero NUMERIC_UNDERFLOW |
reproducibility | deterministic algorithm + Capability@Version |
independent_oracle | cvp:math.geometry.coordinate O2 / Evidence published cases |
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.
distance (0,0)(3,4) → 5
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/coordinate-geometry' \
-H 'Content-Type: application/json' \
-d '{"inputs":{"mode":"distance","x1":0,"y1":0,"x2":3,"y2":4},"calculation_version":"1.8.0"}'{
"inputs": {
"mode": "distance",
"x1": 0,
"y1": 0,
"x2": 3,
"y2": 4
},
"calculation_version": "1.8.0"
}POST /api/v1/calc/coordinate-geometry. 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
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.geometry.coordinate"},"_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.geometry.coordinate","inputs":{"mode":"distance","x1":0,"y1":0,"x2":3,"y2":4},"calculation_version":"1.8.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.8.0) when the result must stay reproducible.
Inspect the trust tier and required assurance level before execution. Full protocol notes: MCP docs.