Home Developers Evidence math.root

Public evidence

math.root

Machine-checked verification for calculation version 1.0.5 · tier engine_tested

CVP: CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance· Positive safe-integer n; even roots of a<0 are NOT_REAL; odd-negative uses the real branch. Declared partitions cover identity n=1, Math.sqrt, Math.cbrt, Math.pow, odd-negative, invalid-domain, and XCAL vs Square Root / Exponent — not a whole-domain claim. · Protocol · Schema · Production report

Declared partition coverage
PASS · 7/7 declared partitions (sqrt-path, cbrt-path, pow-path, identity-n1, odd-negative, invalid-domain, xcal)
Versions
Calculation 1.0.5 · CVP protocol 1.0.0-proposed · Evidence 2026-09-09.root-cvp
Verification revision
2026-09-09.root-cvp · 4/4 property · digest a3f7a7bfcb95

Verification

Legacy regression suite: 24/24 calculation tests · Production surface contract 3/3

Three distinct suites: educational examples on the calculator page, this legacy regression count (24/24 golden + boundary), and the CVP verification suite below. They are not the same number. Property, metamorphic, round-trip, O3, and interface statuses/checks are recorded in the CVP Manifest . SKIP (0/0) means that suite has no published vectors.

    This calculator CURRENT · Public schema 1.0.5 matches · Semantic contract ✓ · Production attested · Public/cache ✓ · Origin ✓

CVP verification suite

Protocol checks from the Evidence Manifest. Distinct from the legacy regression suite above. Verification revision 2026-09-09.root-cvp. Calculation version 1.0.5. CVP 1.0.0-proposed. 5/5 golden · 14/14 CVP boundary · 17/17 invalid · 4/4 property · 2/2 metamorphic · 3/3 round-trip · 19/19 O3 · 1/1 cross-interface · 5/5 cross-calculator · 4/4 URL→result→graph · 1/1 CVP contract. digest a3f7a7bfcb95. Path-specific ULP vs O3 applies only to the 19 published tabulated vectors: identity n=1 (0 ULP); Math.sqrt including tiny/huge (≤2); Math.cbrt including odd-negative and tiny/huge (≤2); moderate Math.pow including odd-negative, ⁸√15, and max safe n (≤2); extreme Math.pow at |a|=1e±300 (≤64). It is not a whole-domain guarantee. Even roots of a<0 and illegal n are contract errors (NOT_REAL / INVALID_INDEX), not ULP claims.

  • Golden (oracle-backed) 5 / 5
  • CVP boundary 14 / 14
  • Invalid input 17 / 17
  • Property 4 / 4
  • Metamorphic 2 / 2
  • Round-trip 3 / 3
  • O3 high-precision 19 / 19
  • Cross-interface 1 / 1
  • Cross-calculator 5 / 5
  • URL → result → graph 4 / 4
  • CVP contract 1 / 1
  • Interfaces PASS · UI (SSR) / REST / MCP / URL→result→graph
  • Interface claim Success 1/1. Integration: URL → SSR result → Live graph current point (4/4). Hydration/slider/history are URL-canonical contracts, not a live browser session.
  • Assurance Core
  • release artifacts aligned PASS
  • schema valid input executes PASS
  • engine success output validates schema PASS

Fingerprint sha256:7faeb383ad7c423d84a64781f249bee383d3304f8f97e3f173f7801b0286e088

Input schema sha256:d0ef74fe6f7704d12f423072babe01e3271217e5bcd4efcca488f5a5cce6a060 · Output schema sha256:926b0e5761c82a91c0fea6146365eeacd6097d2ded3d7162df787ec7cd73c31a · Build-time SHA-256 digests prove published artifacts agree with each other (release_integrity.scope=workspace). Production attestation GETs canonical URLs twice (public/cached view and origin), including Capability HTML, via npm run attest:production --write (published at /.well-known/calculatorx-production-attestation.json) and fails if the public Capability page advertises a different calculation_version. This is artifact consistency, not an independent immutable release log.

Build & scope

Engine identity and declared limitations.

Tool
root
Engine
root
Engine build
2026-09-10
Evidence core
2026-09-10T22:48:17.762Z
Rendered
2026-09-16T22:03:43.777Z
Last reviewed

Assumptions

  • Real principal root only. This engine does not return complex values.
  • Index n is a positive safe integer (1st, square, cube, 4th, …, nth root). Generalized powers a^(1/n) with non-integer, negative, or non-safe-integer n belong on the Exponent calculator.
  • Even n requires a ≥ 0 and returns b ≥ 0. Odd n allows a < 0 (for example ∛(−8) = −2).
  • n = 2 uses Math.sqrt. n = 3 uses Math.cbrt, returning an implementation-approximated binary64 result (including negatives). Other n use a^(1/n) for a ≥ 0, or −(|a|)^(1/n) for odd n and a < 0.
  • The Square Root calculator is a different contract: √(x<0) returns the principal imaginary. This page rejects that case as NOT_REAL.

Limitations

  • n must be a positive safe integer → INVALID_INDEX
  • Even roots of a < 0 → NOT_REAL (unlike square-root imaginary)
  • Missing a → MISSING_REQUIRED_INPUT

Sources

Standards and references supporting this tool specification. Methods are listed separately — they are algorithms, not bibliographic sources.

Legacy published checks

Golden and boundary cases from the legacy Evidence JSON. CVP property, metamorphic, round-trip, O3, and interface statuses/checks are recorded in the Manifest — including SKIP when a suite has no vectors.

IDKindStatusDetail
sqrt-16goldenpassExpected 4 · Actual 4
sqrt-27goldenpassExpected 5.196152422706632 · Actual 5.196152422706632
cbrt-27goldenpassExpected 3 · Actual 3
cbrt-neg8goldenpassExpected -2 · Actual -2
fourth-16goldenpassExpected 2 · Actual 2
eighth-15goldenpassExpected 1.402850552006674 · Actual 1.402850552006674
zerogoldenpassExpected 0 · Actual 0
n-onegoldenpassExpected 42 · Actual 42
default-ngoldenpassExpected 4 · Actual 4
even-negboundarypassExpected NOT_REAL · Actual NOT_REAL
fourth-negboundarypassExpected NOT_REAL · Actual NOT_REAL
frac-nboundarypassExpected INVALID_INDEX · Actual INVALID_INDEX
n-zeroboundarypassExpected INVALID_INDEX · Actual INVALID_INDEX
empty-aboundarypassExpected MISSING_REQUIRED_INPUT · Actual MISSING_REQUIRED_INPUT
n-negativeboundarypassExpected INVALID_INDEX · Actual INVALID_INDEX
n-max-safegoldenpassExpected 1 · Actual 1.0000000000000002
n-unsafeboundarypassExpected INVALID_INDEX · Actual INVALID_INDEX
frac-negboundarypassExpected INVALID_INDEX · Actual INVALID_INDEX
a-objectboundarypassExpected INVALID_NUMBER · Actual INVALID_NUMBER
n-arrayboundarypassExpected INVALID_NUMBER · Actual INVALID_NUMBER
n-booleanboundarypassExpected INVALID_NUMBER · Actual INVALID_NUMBER
a-infinityboundarypassExpected INVALID_NUMBER · Actual INVALID_NUMBER
a-abcboundarypassExpected INVALID_NUMBER · Actual INVALID_NUMBER
boundary-root-even-negboundarypassExpected NOT_REAL · Actual NOT_REAL