Home Developers CVP Evidence Reproduce

CVP reproduce

engineering.tolerance.worst_case

Independent re-run pack: fixed input vectors, O3 expected values, oracle version, commands, and the last result summary. This is how a reader moves from “CalculatorX says it passed” to “I can reproduce why it passed.”

Identity

Calculation version, protocol version, and evidence revision are distinct.

Calculation version
1.3.0
CVP protocol
1.0.0-proposed · proposed
Evidence revision
2026-09-16.o3-rss
Oracle
O3 · mpmath 1.4.1 · 80 dps
Generator
worst-case-mpmath-o3 · seed 20260916.wca-o3
Table SHA-256
607ca78611141ec50d4334238ea22b9abfdf4b07b31dabb47fea3d3e6fae3790

Numerical claim

O3 PASS is a tabulated-vector claim, not a whole-domain proof.

≤2 ULP vs O3 applies only to the published tabulated 1-D magnitude vectors (fields, array, signed REST, single, zeros, small, large, 3-4-5). Long equal-term sums such as n=100×0.01 remain Evidence/property and are not an O3 2-ULP claim. It is not a whole-domain guarantee and does not cover GD&T or nominal chains.

  • Last O3 run 8 / 8
  • Max error observed 1 ULP
  • Threshold ≤ 2 ULP

Commands

Regenerate the table from the public generator. Independent REST check needs only this page's reproduce.json plus stdlib Python — no repo clone and no mpmath. The CVP runner remains a maintainer command.

Regenerate O3 table
python3 generate-worst-case-o3.py after downloading the public generator next to the table
Repo maintainer path
python3 scripts/lib/cvp/oracles/generate-worst-case-o3.py
Independent REST check
Compare POST /api/v1/calc/worst-case-analysis against /developers/cvp/reproduce/worst-case-o3-tables.json after downloading check-math-o3-rest.py next to worst-case-o3-tables.json (or pass --reproduce reproduce.json)
Re-run CVP
npm run cvp:run -- --capability engineering.tolerance.worst_case
REST check
POST https://www.calculatorx.com/api/v1/calc/worst-case-analysis with a tabulated input from the table below

Re-running the generator without changing seed or inputs should reproduce table SHA-256 607ca78611141ec50d4334238ea22b9abfdf4b07b31dabb47fea3d3e6fae3790. Compare each expected_f64 to the production result within the declared ULP threshold.

Tabulated vectors

Every O3 vector used for the ≤2 ULP claim. Expected values come from the published mpmath table, not from the implementation under test.

IDKindInputsExpected (f64)ActualULPStatus
o3-tol-fieldsfields{"tol1":0.1,"tol2":0.2,"tol3":0.1}{"stack":0.4,"stack_rss":0.24494897427831783,"n":3}{"mode":"worst_case","n":3,"tol":[0.1,0.2,0.1],"tolerances":[0.1,0.2,0.1],"unit":null,"stack":0.4,"stack_worst":0.4,"stack_rss":0.24494897427831783,"rss_over_wca":0.6123724356957946,"wc_over_rss":1.632993161855452,"warnings":[{"code":"RSS_COMPARISON_ASSUMPTION","severity":"info","detail":"RSS comparison assumes tolerance magnitudes have a consistent statistical basis and contributions are independent.","suggestion":"For distribution-aware statistical analysis, use Monte Carlo Tolerance Analysis (engineering.tolerance.monte_carlo)."},{"code":"WCA_MODEL_SCOPE","severity":"info","detail":"Worst-case bounds the declared 1-D linear stack when every included contributor remains within its specified limits. Model assumes unit sensitivity |cᵢ|=1.","suggestion":"For nominal / direction / asymmetric ±Tol use Tolerance Stack-up. For general |cᵢ| use Uncertainty Propagation."}]}0PASS
o3-arraycanonical-array{"tolerances":[0.1,0.2,0.1],"unit":"mm"}{"stack":0.4,"stack_rss":0.24494897427831783,"n":3}{"mode":"worst_case","n":3,"tol":[0.1,0.2,0.1],"tolerances":[0.1,0.2,0.1],"unit":"mm","stack":0.4,"stack_worst":0.4,"stack_rss":0.24494897427831783,"rss_over_wca":0.6123724356957946,"wc_over_rss":1.632993161855452,"warnings":[{"code":"RSS_COMPARISON_ASSUMPTION","severity":"info","detail":"RSS comparison assumes tolerance magnitudes have a consistent statistical basis and contributions are independent.","suggestion":"For distribution-aware statistical analysis, use Monte Carlo Tolerance Analysis (engineering.tolerance.monte_carlo)."},{"code":"WCA_MODEL_SCOPE","severity":"info","detail":"Worst-case bounds the declared 1-D linear stack when every included contributor remains within its specified limits. Model assumes unit sensitivity |cᵢ|=1.","suggestion":"For nominal / direction / asymmetric ±Tol use Tolerance Stack-up. For general |cᵢ| use Uncertainty Propagation."}]}0PASS
o3-signedsigned-rest{"tol1":0.1,"tol2":-0.2,"tol3":0.3}{"stack":0.6,"stack_rss":0.3741657386773941,"n":3}{"mode":"worst_case","n":3,"tol":[0.1,-0.2,0.3],"tolerances":[0.1,-0.2,0.3],"unit":null,"stack":0.6000000000000001,"stack_worst":0.6000000000000001,"stack_rss":0.37416573867739417,"rss_over_wca":0.6236095644623235,"wc_over_rss":1.6035674514745464,"warnings":[{"code":"SIGN_IGNORED_FOR_TOLERANCE_MAGNITUDE","severity":"warning","detail":"Negative values are treated as tolerance magnitudes; the sign is ignored. This calculator does not encode dimensional direction.","suggestion":"For +/− dimensional direction, use Tolerance Stack-up Engineering mode."},{"code":"RSS_COMPARISON_ASSUMPTION","severity":"info","detail":"RSS comparison assumes tolerance magnitudes have a consistent statistical basis and contributions are independent.","suggestion":"For distribution-aware statistical analysis, use Monte Carlo Tolerance Analysis (engineering.tolerance.monte_carlo)."},{"code":"WCA_MODEL_SCOPE","severity":"info","detail":"Worst-case bounds the declared 1-D linear stack when every included contributor remains within its specified limits. Model assumes unit sensitivity |cᵢ|=1.","suggestion":"For nominal / direction / asymmetric ±Tol use Tolerance Stack-up. For general |cᵢ| use Uncertainty Propagation."}]}1PASS
o3-onesingle{"tolerances":[0.2]}{"stack":0.2,"stack_rss":0.2,"n":1}{"mode":"worst_case","n":1,"tol":[0.2],"tolerances":[0.2],"unit":null,"stack":0.2,"stack_worst":0.2,"stack_rss":0.2,"rss_over_wca":1,"wc_over_rss":1,"warnings":[{"code":"RSS_COMPARISON_ASSUMPTION","severity":"info","detail":"RSS comparison assumes tolerance magnitudes have a consistent statistical basis and contributions are independent.","suggestion":"For distribution-aware statistical analysis, use Monte Carlo Tolerance Analysis (engineering.tolerance.monte_carlo)."},{"code":"WCA_MODEL_SCOPE","severity":"info","detail":"Worst-case bounds the declared 1-D linear stack when every included contributor remains within its specified limits. Model assumes unit sensitivity |cᵢ|=1.","suggestion":"For nominal / direction / asymmetric ±Tol use Tolerance Stack-up. For general |cᵢ| use Uncertainty Propagation."}]}0PASS
o3-zeroszeros{"tol":[0,0,0]}{"stack":0,"stack_rss":0,"n":3}{"mode":"worst_case","n":3,"tol":[0,0,0],"tolerances":[0,0,0],"unit":null,"stack":0,"stack_worst":0,"stack_rss":0,"rss_over_wca":null,"wc_over_rss":null,"warnings":[{"code":"RSS_COMPARISON_ASSUMPTION","severity":"info","detail":"RSS comparison assumes tolerance magnitudes have a consistent statistical basis and contributions are independent.","suggestion":"For distribution-aware statistical analysis, use Monte Carlo Tolerance Analysis (engineering.tolerance.monte_carlo)."},{"code":"WCA_MODEL_SCOPE","severity":"info","detail":"Worst-case bounds the declared 1-D linear stack when every included contributor remains within its specified limits. Model assumes unit sensitivity |cᵢ|=1.","suggestion":"For nominal / direction / asymmetric ±Tol use Tolerance Stack-up. For general |cᵢ| use Uncertainty Propagation."}]}0PASS
o3-smallsmall{"tolerances":[1e-12,2e-12]}{"stack":3e-12,"stack_rss":2.2360679774997897e-12,"n":2}{"mode":"worst_case","n":2,"tol":[1e-12,2e-12],"tolerances":[1e-12,2e-12],"unit":null,"stack":3e-12,"stack_worst":3e-12,"stack_rss":2.2360679774997897e-12,"rss_over_wca":0.7453559924999299,"wc_over_rss":1.3416407864998738,"warnings":[{"code":"RSS_COMPARISON_ASSUMPTION","severity":"info","detail":"RSS comparison assumes tolerance magnitudes have a consistent statistical basis and contributions are independent.","suggestion":"For distribution-aware statistical analysis, use Monte Carlo Tolerance Analysis (engineering.tolerance.monte_carlo)."},{"code":"WCA_MODEL_SCOPE","severity":"info","detail":"Worst-case bounds the declared 1-D linear stack when every included contributor remains within its specified limits. Model assumes unit sensitivity |cᵢ|=1.","suggestion":"For nominal / direction / asymmetric ±Tol use Tolerance Stack-up. For general |cᵢ| use Uncertainty Propagation."}]}0PASS
o3-largelarge{"tolerances":[1000000,2000000]}{"stack":3000000,"stack_rss":2236067.9774997896,"n":2}{"mode":"worst_case","n":2,"tol":[1000000,2000000],"tolerances":[1000000,2000000],"unit":null,"stack":3000000,"stack_worst":3000000,"stack_rss":2236067.9774997896,"rss_over_wca":0.7453559924999299,"wc_over_rss":1.3416407864998738,"warnings":[{"code":"RSS_COMPARISON_ASSUMPTION","severity":"info","detail":"RSS comparison assumes tolerance magnitudes have a consistent statistical basis and contributions are independent.","suggestion":"For distribution-aware statistical analysis, use Monte Carlo Tolerance Analysis (engineering.tolerance.monte_carlo)."},{"code":"WCA_MODEL_SCOPE","severity":"info","detail":"Worst-case bounds the declared 1-D linear stack when every included contributor remains within its specified limits. Model assumes unit sensitivity |cᵢ|=1.","suggestion":"For nominal / direction / asymmetric ±Tol use Tolerance Stack-up. For general |cᵢ| use Uncertainty Propagation."}]}0PASS
o3-pythagpythagorean{"tolerances":[0.3,0.4]}{"stack":0.7,"stack_rss":0.5,"n":2}{"mode":"worst_case","n":2,"tol":[0.3,0.4],"tolerances":[0.3,0.4],"unit":null,"stack":0.7,"stack_worst":0.7,"stack_rss":0.5,"rss_over_wca":0.7142857142857143,"wc_over_rss":1.4,"warnings":[{"code":"RSS_COMPARISON_ASSUMPTION","severity":"info","detail":"RSS comparison assumes tolerance magnitudes have a consistent statistical basis and contributions are independent.","suggestion":"For distribution-aware statistical analysis, use Monte Carlo Tolerance Analysis (engineering.tolerance.monte_carlo)."},{"code":"WCA_MODEL_SCOPE","severity":"info","detail":"Worst-case bounds the declared 1-D linear stack when every included contributor remains within its specified limits. Model assumes unit sensitivity |cᵢ|=1.","suggestion":"For nominal / direction / asymmetric ±Tol use Tolerance Stack-up. For general |cᵢ| use Uncertainty Propagation."}]}0PASS