Verified calculation capability
Division Calculation Capability
Quotient a ÷ b with optional decimal places, plus long-division work for integers. · Math
Capability ID math.divide · version 1.0.5
- Quotient:
q = a ÷ b - Displayed decimal:
round_toFixed(a ÷ b, n) after IEEE-754 binary64 division - Long division:
a, b ∈ ℤ≥0, b > 0; q = ⌊a/b⌋; r = a − bq; 0 ≤ r < b - Check:
b·q + r = a
Solve modes: quotient · long
Inputs / Outputs
Canonical symbols for this capability. Agent schemas remain the contract.
| Symbol | Quantity | Unit | Role |
|---|
a | Dividend. Aliases: dividend, dividendInput | — | input / output |
b | Divisor. Aliases: divisor, divisorInput | — | input / output |
decimals | Decimal places for formatted quotient | — | input |
dividend | — | — | input |
divisor | — | — | input |
dividendInput | — | — | input |
divisorInput | — | — | input |
value | — | — | output |
ieee_value | — | — | output |
decimal_value | — | — | output |
exact | true iff ieee_value equals the real number a÷b for the binary64 operands. Not display round-trip. Long mode: remainder is 0. | — | output |
display_exact | true iff Number(ieee_value.toFixed(n)) === ieee_value. null when ieee_value is null. | — | output |
precision | — | — | output |
decimal_places | — | — | output |
rounding | — | — | output |
exact_value | — | — | output |
integer_engine | — | — | output |
integer_quotient | — | — | output |
quotient | — | — | output |
remainder | — | — | output |
work | — | — | output |
Assumptions / Validity
Declared scope for this capability. Do not use it outside this domain.
Assumptions
- Quotient mode divides in IEEE-754 binary64, then rounds the display with Number.prototype.toFixed (round half away from 0 on that binary64 value). Trailing zeros may be stripped.
- The displayed decimal is not claimed to be an exact repeating expansion.
- REST field exact is true iff ieee_value equals the real number a÷b for those binary64 operands. It is not display round-trip and not integer divisibility. Example: (2^53−1)÷7 has remainder 3, so exact is false even when toFixed round-trips.
- REST field display_exact is true iff Number(ieee_value.toFixed(n)) === ieee_value (display did not change the binary64 value).
- Long division uses exact BigInt Euclidean division for non-negative integers: a, b ∈ ℤ≥0, b > 0. Integers are limited to 48 decimal digits to bound computation and long-division step output (a CalculatorX product contract, not a JavaScript BigInt limit).
- Remainder satisfies 0 ≤ r < b in long division (verified as b·q + r = a in BigInt). Long-mode exact is true iff remainder is 0.
- Quotient mode does not silently round plain integer tokens outside ±(2^53−1); those inputs return INTEGER_OUT_OF_SAFE_RANGE. Send large integers as decimal strings and use Long division for an exact result.
- REST/JSON reports ieee_value (raw binary64, or null when the long-division operands do not fit in a safe integer), decimal_value (display string), precision, rounding, exact (mathematical vs binary64 operands), display_exact (toFixed round-trip), exact_value (a/b when both are integers), integer_quotient/remainder for integer quotient-mode operands, and integer_engine=bigint in long mode.
Example
One numerical check. The calculator page holds worked steps and FAQ.
100 ÷ 7 at 8 decimal places → 14.28571429 (rounded); long 100 ÷ 7 → 14 R 2; long 9007199254740993 ÷ 1 → 9007199254740993 R 0
Open this example in the calculator
Trust
CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance. 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.
- Assurance
- Core
- Declared partition coverage
- PASS · 7/7 declared partitions (quotient-normal, quotient-rounding, quotient-boundary, long-normal, long-large-integer, long-boundary, invalid-domain)
- Calculation version
- 1.0.5
- Verification
- 34/34 calculation tests · 25/25 legacy golden · 9/9 legacy boundary
- Production surface contract
- 3/3
- Versions
- Calculation 1.0.5 · CVP protocol 1.0.0-proposed · Evidence 2026-09-08.exact-contract
- Verification revision
- 2026-09-08.exact-contract · 8/8 property · digest e5997fd9b998
- Reference
- O1 model · O3 expected_values · O3 numerical_behavior · O2 expected_values · O2 numerical_behavior
- Numerical scope
- ≤2 ULP vs O3 applies to the published tabulated quotient vectors (1/3, 100/7, 1.005/1, 1/1e-300, (2^53−1)/7). Long-division vectors are exact integer q,r (Python int divmod). This is not a whole-domain guarantee.
- Interfaces
- PASS · UI (SSR) / REST / MCP
ui-ssr is query-result HTML, not a live browser session. - CVP suite
- 10/10 golden · 9/9 CVP boundary · 9/9 invalid · 8/8 property · 2/2 metamorphic · 2/2 round-trip · 9/9 O3 · 2/2 cross-interface · 1/1 CVP contract
- Supplemental domain review
- Not performed
- Named expert review
- Not performed
- Version lock
- Supported (409 VERSION_MISMATCH)
- Artifact consistency
- Build verified · 1.0.5 (workspace artifacts agree)
- Review-policy tier
- Engine tested — catalog token
engine_tested; supplemental; not CVP status
This calculator CURRENT · Public schema 1.0.5 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 3/3.
- Tool id
division- Engine
divide- REST
POST /api/v1/calc/division- MCP
execute_calculation with
capability_id: "math.divide"
References
Human-readable sources plus CVP reference evidence classes.
Sources
Reference evidence classes: O1 model · O3 expected_values · O3 numerical_behavior · O2 expected_values · O2 numerical_behavior
Try with an agent
Inspect this capability via same-origin MCP, then call execute_calculation.
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.divide"}}}'
Inspect the trust tier and required assurance level before execution. Pin calculation_version (1.0.5) when reproducibility matters. Full protocol notes: MCP docs.