Home Developers Capabilities Polynomial roots

CVP verified calculation capability

Polynomial roots Calculation Capability

All roots of a real polynomial of degree 1–8, or Horner evaluation at a real x. Closed form for linear, quadratic, and cubic (Cardano); Durand–Kerner otherwise. Cubic discovery /cubic-equation. Evaluate discovery /polynomial-evaluate. Not the quadratic formula page, not Ferrari, not a single Newton root, not CAS.

Math · Polynomial Capability ID math.polynomial.roots version 1.2.2 CVP VERIFIED CURRENT Core

Model

All n roots

Inputs / Outputs

Canonical symbols for this capability. Agent schemas remain the contract.

SymbolQuantityUnitRole
coeffs——input
coefficients——input
a——input
b——input
c——input
d——input
x——input / output
methodall_roots/all/roots/durand_kerner/durand/weierstrass/dk;cardano/cubic/cubic_equation/cubic_formula;evaluate/eval/horner/polynomial_evaluate/polynomial_evaluation—input
review——output
api_version——output
api_contract_version——output
spec_version——output
pageCanonical calculator page URL—output
links——output
degree——output
n——output
solver——output
roots——output
residual_max——output
cubic_case——output
delta——output
value——output
n_mul——output

Trusted Math contract

Inspectable numeric contract for this Capability@Version. Not a rewrite of the engine.

FieldDeclaration
numeric_domainreal
exactnessfloat64
algorithmExact rational square-free GCD multiplicities; stable quadratic / Cardano, bounded scaled Durand–Kerner; exact rational Horner projected once.
valid_domainFinite real constant-first binary64 coefficients, degree1–8, nonzero leading term. Strict decimal/scientific tokens≤512chars; total text≤4608; exact arithmetic≤16384bits. Raw nonzero→zero rejects NUMERIC_UNDERFLOW.
singularity_policyUnknown/conflicting aliases reject; root/value range errors explicit. Unresolved root disks or real isolation reject NON_CONVERGENCE. No universal finite-input success guarantee.
branch_policynot applicable — real iterate
tolerancenote: Exact Weierstrass/Gershgorin disjoint root disks; relative L1 inclusion budget2e-10, normalized L1 residual≤2e-12; independent fixed-vector roots4e-10 relative L2 plus2 subnormal quanta; Horner1ULP.
convergencemax_iter: 2×2048 DK; Sturm512levels/4096steps; criterion: Complete-set inclusion certificate plus residual; small residual alone is insufficient
conditioningClusters are ill-conditioned under coefficient perturbations; multiplicities refer to the exact accepted binary64 polynomial. Nullable absolute residual/delta indicate projection range.
roundingieee754_round_ties_to_even
overflowieee754_nonfinite_or_coded_error
reproducibilitydeterministic algorithm + Capability@Version
independent_oracleCPython Fraction factor construction and Decimal250/750;67 complete packs and independent diagnostic recomputation
golden_vectorsEvidence golden + boundary + property (and published_reference_case when listed)

Assumptions / Validity

Declared scope for this capability. Do not use it outside this domain.

Assumptions

Example

One numerical check. The calculator page holds worked steps and FAQ.

coeffs=-6,11,-6,1 → 1, 2, 3

Open this example in the calculator

Trust

CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance · all published methods. 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.

CVP
CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance · all published methods· View Manifest · CVP overview · Specification
Verified scope
all published methods
Assurance
Core
Declared partition coverage
PASS · 4/4 declared partitions (all-roots, cardano, evaluate, invalid-domain)
Calculation version
1.2.2
Verification
21/21 calculation tests · 7/7 legacy golden · 6/6 legacy boundary · 8/8 legacy property
Production surface contract
6/6
Versions
Calculation 1.2.2 · CVP protocol 1.0.0-proposed · Evidence 2026-10-28.metric-scope-v3
Verification revision
2026-10-28.metric-scope-v3 · 3/3 property · digest eca488fa2ce7
Reference
O1 model · O2 expected_values · O2 numerical_behavior
Numerical scope
67 listed independent full-pack vectors only
Interfaces
PASS · UI (SSR) / REST / MCP
ui-ssr is query-result HTML, not a live browser session. Error-path engine·REST·MCP 28/28 (status, code, calculation_version). SSR compared on URL-canonical requested calculations; empty query is idle (not an error) and JSON-typed object/array inputs are REST/MCP-only.
CVP suite
67/67 golden · 3/3 CVP boundary · 34/34 invalid · 3/3 property · 2/2 metamorphic · 95/95 cross-interface · 1/1 cross-calculator · 6/6 CVP contract
Supplemental domain review
Not performed
Named expert review
Not performed
Version lock
Supported (409 VERSION_MISMATCH)
Artifact consistency
Build verified · 1.2.2 (workspace artifacts agree)
Review-policy tier
Engine tested — catalog token engine_tested; supplemental; not CVP status
This calculator CURRENT · Public schema 1.2.2 matches · Semantic contract ✓ · Production attested · Public/cache ✓ · Origin ✓

Call this capability

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/polynomial-roots' \
  -H 'Content-Type: application/json' \
  -d '{"inputs":{"coeffs":[-2,2]},"calculation_version":"1.2.2"}'

POST /api/v1/calc/polynomial-roots. This is a POST calculate endpoint — do not GET it.

Full REST contract: REST API docs.

Tool id
polynomial-roots
Engine
polynomial-roots
REST
POST /api/v1/calc/polynomial-roots
MCP
execute_calculation with capability_id: "math.polynomial.roots"
Agent input schema
Canonical (MCP / Agent)
REST input schema
Compatibility (tol[] / tol1…)
Output schema
JSON Schema (latest)
Versioned input schema
Immutable pin (1.2.2)
Versioned output schema
Immutable pin (1.2.2)

Operations

Declared calculation modes for this capability.

References

Human-readable sources plus CVP reference evidence classes.

Sources

Reference evidence classes: O1 model · O2 expected_values · O2 numerical_behavior

Try with an agent

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.polynomial.roots"},"_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.2.2) when the result must stay reproducible.

Inspect the trust tier and required assurance level before execution. Full protocol notes: MCP docs.