CVP verified calculation capability
Seven Euclidean plane shapes: rectangle, square, regular polygon, annulus, parallelogram, isosceles trapezoid and validated simple polygon. Complete area/perimeter and secondary measures; consistent length units, angles in degrees.
Math · Geometry Capability ID math.geometry.plane version 1.6.0 CVP VERIFIED CURRENT Core
Rectangle
A = ab, P = 2(a+b), d = √(a²+b²)A = (n s²) / (4 tan(π/n))A = π(R² − r²)A = ab sin θA = (a+b)h/2A = (1/2)|Σ (xᵢ yᵢ₊₁ − xᵢ₊₁ yᵢ)|Canonical symbols for this capability. Agent schemas remain the contract.
| Symbol | Quantity | Unit policy | Role |
|---|---|---|---|
a | length | consistent length unit | input / output |
width | Strict bounded decimal number/string; finite normal binary64 after conversion, except exact zero coordinates | — | input |
length | Strict bounded decimal number/string; finite normal binary64 after conversion, except exact zero coordinates | — | input |
b | length | consistent length unit | input / output |
height | length | consistent length unit | input / output |
s | length | consistent length unit | input / output |
side | Strict bounded decimal number/string; finite normal binary64 after conversion, except exact zero coordinates | — | input |
n | Strict bounded decimal number/string; finite normal binary64 after conversion, except exact zero coordinates | — | input / output |
sides | Strict bounded decimal number/string; finite normal binary64 after conversion, except exact zero coordinates | — | input |
R | length | consistent length unit | input / output |
outer | Strict bounded decimal number/string; finite normal binary64 after conversion, except exact zero coordinates | — | input |
R_outer | Strict bounded decimal number/string; finite normal binary64 after conversion, except exact zero coordinates | — | input |
r | length | consistent length unit | input / output |
inner | Strict bounded decimal number/string; finite normal binary64 after conversion, except exact zero coordinates | — | input |
r_inner | Strict bounded decimal number/string; finite normal binary64 after conversion, except exact zero coordinates | — | input |
theta | scalar plane angle | — | input / output |
angle | scalar plane angle | — | input |
deg | scalar plane angle | — | input |
h | length | consistent length unit | input / output |
vertices | 3–8 distinct ordered simple-polygon vertices, optional repeated closing vertex | — | input / output |
points | 3–8 distinct ordered simple-polygon vertices, optional repeated closing vertex | — | input |
vertices_xy | 3–8 distinct ordered simple-polygon vertices, optional repeated closing vertex | — | input |
base2 | Strict bounded decimal number/string; finite normal binary64 after conversion, except exact zero coordinates | — | input |
base | Strict bounded decimal number/string; finite normal binary64 after conversion, except exact zero coordinates | — | input |
base1 | Strict bounded decimal number/string; finite normal binary64 after conversion, except exact zero coordinates | — | input |
side2 | Strict bounded decimal number/string; finite normal binary64 after conversion, except exact zero coordinates | — | input |
area | area | square of input unit | output |
perimeter | length | same length unit | output |
diagonal | length | consistent length unit | output |
apothem | length | consistent length unit | output |
circumradius | length | consistent length unit | output |
interior_deg | scalar plane angle | — | output |
central_deg | scalar plane angle | — | output |
d1 | — | — | output |
d2 | — | — | output |
leg | — | — | output |
midsegment | — | — | output |
outer_circumference | — | — | output |
inner_circumference | — | — | output |
square | — | — | output |
rectangle | — | — | output |
isosceles | — | — | output |
model | — | — | output |
Inspectable numeric contract for this Capability@Version. Not a rewrite of the engine.
| Field | Declaration |
|---|---|
numeric_domain | real |
exactness | float64 |
algorithm | Exact dyadic polynomial areas, factored annulus and trapezoid, scaled norms, half-angle parallelogram diagonals; exact polygon orientation/intersection predicates and area, bounded8-vertex perimeter walk |
valid_domain | Strict decimal numbers/strings, positive normal binary64 dimensions; degree angle0<theta<180 with normal radian conversion; integer3<=n<=9007199254740991. Simple ordered3–8 vertices, exact zero coordinates allowed, other coordinates normal binary64. Optional repeated closing vertex. Positive output measures must be finite normal binary64. |
singularity_policy | INVALID_INPUT for invalid domains, duplicate vertices, self-crossing/touching/overlapping nonadjacent edges or adjacent backtracking and zero area. NUMERIC_UNDERFLOW for nonzero decimal text converted to zero; NUMERIC_RANGE for nonnormal inputs/outputs. Rescale units or translate coordinates. |
branch_policy | not applicable — real principal value only |
tolerance | type: relative; value: 1e-11; note: Arithmetic results against independent Fraction/mpmath750 references; discrete/zero/structure checks separate. Not an input perturbation bound. |
convergence | not applicable — non-iterative |
conditioning | Thin rings, near-flat figures and small polygon offsets are input-sensitive. Exact predicates and arithmetic concern normalized binary64; input decimal rounding can change topology or erase small lengths. No rounding clamp. A diagram can be omitted while numerical results remain complete; regular rendering bounded to128 sides. |
rounding | ieee754_round_ties_to_even |
overflow | ieee754_nonfinite_or_coded_error |
reproducibility | deterministic algorithm + Capability@Version |
independent_oracle | cvp:math.geometry.plane private Python Fraction fan-triangle area and mpmath750 Euclidean reference |
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.
rectangle a=3 b=4 → A=12, d=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 5/5.
curl -sS -X POST 'https://www.calculatorx.com/api/v1/calc/plane-geometry' \
-H 'Content-Type: application/json' \
-d '{"inputs":{"mode":"rectangle","a":3,"b":4},"calculation_version":"1.6.0"}'{
"inputs": {
"mode": "rectangle",
"a": 3,
"b": 4
},
"calculation_version": "1.6.0"
}POST /api/v1/calc/plane-geometry. 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 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.plane"},"_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.plane","inputs":{"mode":"rectangle","a":3,"b":4},"calculation_version":"1.6.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.6.0) when the result must stay reproducible.
Inspect the trust tier and required assurance level before execution. Full protocol notes: MCP docs.