Home Developers CVP Evidence Reproduce

CVP reproduce

electrical.adc.error_budget

Public O2 reproduce pack: fixed input vectors, O2 expected values, oracle source, commands, and the last result summary. It recomputes published expected values; it does not regenerate a full CVP VERIFIED Manifest.

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-09.o2-reproduce
Oracle
O2 · adc-error-budget-reference · same runtime as IUT
Generator
Oracle SHA-256
1e0a9630cca0a2077ba0d2c425d1d65855ca2acf12c82b8578408450e1dfb3ac
Checker SHA-256
cceae43d428ef4b23133886e7f9cbf2f5deff3f4e47ab66c60307f5b85fd29a9
Evidence digest
39673b9b9f33d295029becbd03a83491d7c1ae020b2dd0e92a35210fdea1b45c
Compatible execution
Node >=18 · IEEE-754 binary64
Reference environment
Node 22.16.0 · linux · IEEE-754 binary64
O2 pack SHA-256
12d238483a9bc7930109b38003322f73a11b4a29cce3e517f0fc55901478d594 · 29107 bytes

Bit-for-bit agreement with published expected values is only claimed for the pinned reference_environment. Node >=18 is compatible within the declared ULP contract.

Numerical claim

O2 PASS is independent-module agreement on published vectors. Same-runtime binary64 is declared; this is not an O3 claim.

Static DC LSB/V/%FS error-budget vs independent O2 (same V8, ≤2 ULP on err_LSB, LSB_V, err_V, err_pct_FS, codes). Not measured converter accuracy, not datasheet TUE that omits DNL, not O3.

  • Last O2 run 6 / 6
  • Max error observed 0 ULP
  • Threshold ≤ 2 ULP

Commands

Run the published O2 module next to this checker. The checker does not import the production engine. The CVP runner remains a maintainer command.

Run O2 oracle (no IUT)
node public/developers/cvp/reproduce/check-adc-error-budget-o2.mjs
Compare against reproduce.json
node check-adc-error-budget-o2.mjs --against reproduce.json
Re-run CVP
npm run cvp:run -- --capability electrical.adc.error_budget
REST check
POST https://www.calculatorx.com/api/v1/calc/adc-error-budget with a tabulated input from the table below

The published O2 module computes expected values without importing the production engine. Download o2-reproduce-pack.zip (oracle + checker + reproduce.json), then `node check-….mjs --against reproduce.json` must match the published expected fields and oracle_sha256. This is not an O3 claim, not a live production HTTP check, and not a full CVP runner.

Tabulated vectors

Every O2 golden vector used for this claim. Expected values come from adc-error-budget-reference.mjs, not from the implementation under test.

IDKindInputsExpected (O2)ActualULPStatus
g-rss-12bo2-golden{"n_bits":12,"FSR_V":3.3,"gain_err_LSB":1,"offset_err_LSB":0.5,"inl_LSB":1,"dnl_LSB":0.5,"combine":"rss"}{"n_bits":12,"FSR_V":3.3,"codes":4096,"LSB_V":0.0008056640625,"combine":"rss","err_LSB":1.5811388300841898,"err_V":0.0012738667332221254,"err_pct_FS":0.03860202221885229}{"n_bits":12,"FSR_V":3.3,"codes":4096,"LSB_V":0.0008056640625,"combine":"rss","err_LSB":1.5811388300841898,"err_V":0.0012738667332221254,"err_pct_FS":0.03860202221885229}0PASS
g-wcao2-golden{"n_bits":12,"FSR_V":3.3,"gain_err_LSB":1,"offset_err_LSB":0.5,"inl_LSB":1,"dnl_LSB":0.5,"combine":"worst_case"}{"n_bits":12,"FSR_V":3.3,"codes":4096,"LSB_V":0.0008056640625,"combine":"worst_case","err_LSB":3,"err_V":0.0024169921874999997,"err_pct_FS":0.07324218749999999}{"n_bits":12,"FSR_V":3.3,"codes":4096,"LSB_V":0.0008056640625,"combine":"worst_case","err_LSB":3,"err_V":0.0024169921874999997,"err_pct_FS":0.07324218749999999}0PASS
g-zeroo2-golden{"n_bits":10,"FSR_V":5}{"n_bits":10,"FSR_V":5,"codes":1024,"LSB_V":0.0048828125,"combine":"rss","err_LSB":0,"err_V":0,"err_pct_FS":0}{"n_bits":10,"FSR_V":5,"codes":1024,"LSB_V":0.0048828125,"combine":"rss","err_LSB":0,"err_V":0,"err_pct_FS":0}0PASS
g-rss-1bo2-golden{"n_bits":1,"FSR_V":3.3,"gain_err_LSB":1,"offset_err_LSB":0.5,"inl_LSB":1,"dnl_LSB":0.5,"combine":"rss"}{"n_bits":1,"FSR_V":3.3,"codes":2,"LSB_V":1.65,"combine":"rss","err_LSB":1.5811388300841898,"err_V":2.608879069638913,"err_pct_FS":79.05694150420949}{"n_bits":1,"FSR_V":3.3,"codes":2,"LSB_V":1.65,"combine":"rss","err_LSB":1.5811388300841898,"err_V":2.608879069638913,"err_pct_FS":79.05694150420949}0PASS
g-rss-32bo2-golden{"n_bits":32,"FSR_V":3.3,"gain_err_LSB":1,"offset_err_LSB":0.5,"inl_LSB":1,"dnl_LSB":0.5,"combine":"rss"}{"n_bits":32,"FSR_V":3.3,"codes":4294967296,"LSB_V":7.683411240577697e-10,"combine":"rss","err_LSB":1.5811388300841898,"err_V":1.2148539859982733e-9,"err_pct_FS":3.681375715146283e-8}{"n_bits":32,"FSR_V":3.3,"codes":4294967296,"LSB_V":7.683411240577697e-10,"combine":"rss","err_LSB":1.5811388300841898,"err_V":1.2148539859982733e-9,"err_pct_FS":3.681375715146283e-8}0PASS
g-single-gaino2-golden{"n_bits":12,"FSR_V":3.3,"gain_err_LSB":1,"offset_err_LSB":0,"inl_LSB":0,"dnl_LSB":0,"combine":"rss"}{"n_bits":12,"FSR_V":3.3,"codes":4096,"LSB_V":0.0008056640625,"combine":"rss","err_LSB":1,"err_V":0.0008056640625,"err_pct_FS":0.0244140625}{"n_bits":12,"FSR_V":3.3,"codes":4096,"LSB_V":0.0008056640625,"combine":"rss","err_LSB":1,"err_V":0.0008056640625,"err_pct_FS":0.0244140625}0PASS