Home Developers CVP Evidence Reproduce

CVP reproduce

mechanical.statics.incline_slip_or_tip

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.0.0
CVP protocol
1.0.0-proposed · proposed
Evidence revision
2026-09-27.o2-o3
Oracle
O3 · mpmath 1.4.1 · 80 dps
Generator
incline-slip-or-tip-mpmath-o3 · seed 20260927.incline-slip-or-tip-o3
Table SHA-256
8ba32e927daed91fa803ce216846427b3ad51cec6c51c83daa50d2c480fd8fbc

Numerical claim

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

O2: theta_deg vs a separate-module identity (≤2 ULP). Not a level surface, not wedges, not screws, and not belts. ≤2 ULP vs O3 applies only to the published tabulated incline-slip-or-tip vectors.

  • 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-incline-slip-or-tip-o3.py after downloading the public generator next to the table
Repo maintainer path
python3 scripts/lib/cvp/oracles/generate-incline-slip-or-tip-o3.py
Independent REST check
Compare POST /api/v1/calc/incline-slip-or-tip against /developers/cvp/reproduce/incline-slip-or-tip-o3-tables.json after downloading check-math-o3-rest.py next to incline-slip-or-tip-o3-tables.json (or pass --reproduce reproduce.json)
Re-run CVP
npm run cvp:run -- --capability mechanical.statics.incline_slip_or_tip
REST check
POST https://www.calculatorx.com/api/v1/calc/incline-slip-or-tip with a tabulated input from the table below

Re-running the generator without changing seed or inputs should reproduce table SHA-256 8ba32e927daed91fa803ce216846427b3ad51cec6c51c83daa50d2c480fd8fbc. 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-eithereither{"mu":"1","b":"2","h":"2"}{"oracle_layer":"analytic","theta_deg":45,"theta_slip_deg":45,"theta_tip_deg":45}{"model":"incline_slip_or_tip","mu":1,"b":2,"h":2,"mode":"either","theta_deg":45,"theta_slip_deg":45,"theta_tip_deg":45,"solver":"incline friction + moment about the downhill edge","convention":"A homogeneous rectangle rests on the incline under its own weight. b is the base along the incline. h is the height perpendicular to the incline. θslip is the friction angle. θtip is the angle where the vertical through the center passes through the downhill edge, so tanθtip = b/h. The smaller angle happens first as the incline is raised."}0PASS
o3-slipslip{"mu":"0.25","b":"2","h":"1"}{"oracle_layer":"analytic","theta_deg":14.036243467926479,"theta_slip_deg":14.036243467926479,"theta_tip_deg":63.43494882292201}{"model":"incline_slip_or_tip","mu":0.25,"b":2,"h":1,"mode":"slip","theta_deg":14.036243467926479,"theta_slip_deg":14.036243467926479,"theta_tip_deg":63.43494882292201,"solver":"incline friction + moment about the downhill edge","convention":"A homogeneous rectangle rests on the incline under its own weight. b is the base along the incline. h is the height perpendicular to the incline. θslip is the friction angle. θtip is the angle where the vertical through the center passes through the downhill edge, so tanθtip = b/h. The smaller angle happens first as the incline is raised."}0PASS
o3-tiptip{"mu":"0.8","b":"1","h":"2"}{"oracle_layer":"analytic","theta_deg":26.56505117707799,"theta_slip_deg":38.65980825409009,"theta_tip_deg":26.56505117707799}{"model":"incline_slip_or_tip","mu":0.8,"b":1,"h":2,"mode":"tip","theta_deg":26.56505117707799,"theta_slip_deg":38.659808254090095,"theta_tip_deg":26.56505117707799,"solver":"incline friction + moment about the downhill edge","convention":"A homogeneous rectangle rests on the incline under its own weight. b is the base along the incline. h is the height perpendicular to the incline. θslip is the friction angle. θtip is the angle where the vertical through the center passes through the downhill edge, so tanθtip = b/h. The smaller angle happens first as the incline is raised."}1PASS
o3-aliasalias{"mu_s":"0.5","width":"3","height":"3"}{"oracle_layer":"analytic","theta_deg":26.56505117707799,"theta_slip_deg":26.56505117707799,"theta_tip_deg":45}{"model":"incline_slip_or_tip","mu":0.5,"b":3,"h":3,"mode":"slip","theta_deg":26.56505117707799,"theta_slip_deg":26.56505117707799,"theta_tip_deg":45,"solver":"incline friction + moment about the downhill edge","convention":"A homogeneous rectangle rests on the incline under its own weight. b is the base along the incline. h is the height perpendicular to the incline. θslip is the friction angle. θtip is the angle where the vertical through the center passes through the downhill edge, so tanθtip = b/h. The smaller angle happens first as the incline is raised."}0PASS
o3-awkwardawkward{"mu":"0.37","b":"2.5","h":"1.8"}{"oracle_layer":"analytic","theta_deg":20.304473709960437,"theta_slip_deg":20.304473709960437,"theta_tip_deg":54.24611274556325}{"model":"incline_slip_or_tip","mu":0.37,"b":2.5,"h":1.8,"mode":"slip","theta_deg":20.304473709960437,"theta_slip_deg":20.304473709960437,"theta_tip_deg":54.24611274556325,"solver":"incline friction + moment about the downhill edge","convention":"A homogeneous rectangle rests on the incline under its own weight. b is the base along the incline. h is the height perpendicular to the incline. θslip is the friction angle. θtip is the angle where the vertical through the center passes through the downhill edge, so tanθtip = b/h. The smaller angle happens first as the incline is raised."}0PASS
o3-steepsteep{"mu":"0.1","b":"0.5","h":"4"}{"oracle_layer":"analytic","theta_deg":5.710593137499642,"theta_slip_deg":5.710593137499642,"theta_tip_deg":7.125016348901798}{"model":"incline_slip_or_tip","mu":0.1,"b":0.5,"h":4,"mode":"slip","theta_deg":5.710593137499643,"theta_slip_deg":5.710593137499643,"theta_tip_deg":7.125016348901798,"solver":"incline friction + moment about the downhill edge","convention":"A homogeneous rectangle rests on the incline under its own weight. b is the base along the incline. h is the height perpendicular to the incline. θslip is the friction angle. θtip is the angle where the vertical through the center passes through the downhill edge, so tanθtip = b/h. The smaller angle happens first as the incline is raised."}1PASS
o3-flatflat{"mu":"0.9","b":"4","h":"0.5"}{"oracle_layer":"analytic","theta_deg":41.98721249581666,"theta_slip_deg":41.98721249581666,"theta_tip_deg":82.8749836510982}{"model":"incline_slip_or_tip","mu":0.9,"b":4,"h":0.5,"mode":"slip","theta_deg":41.98721249581666,"theta_slip_deg":41.98721249581666,"theta_tip_deg":82.8749836510982,"solver":"incline friction + moment about the downhill edge","convention":"A homogeneous rectangle rests on the incline under its own weight. b is the base along the incline. h is the height perpendicular to the incline. θslip is the friction angle. θtip is the angle where the vertical through the center passes through the downhill edge, so tanθtip = b/h. The smaller angle happens first as the incline is raised."}0PASS
o3-mildmild{"mu":"0.3","b":"1.5","h":"1.5"}{"oracle_layer":"analytic","theta_deg":16.69924423399362,"theta_slip_deg":16.69924423399362,"theta_tip_deg":45}{"model":"incline_slip_or_tip","mu":0.3,"b":1.5,"h":1.5,"mode":"slip","theta_deg":16.69924423399362,"theta_slip_deg":16.69924423399362,"theta_tip_deg":45,"solver":"incline friction + moment about the downhill edge","convention":"A homogeneous rectangle rests on the incline under its own weight. b is the base along the incline. h is the height perpendicular to the incline. θslip is the friction angle. θtip is the angle where the vertical through the center passes through the downhill edge, so tanθtip = b/h. The smaller angle happens first as the incline is raised."}0PASS