open-standards/wai/wai-ops/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science cbc4caf7b0 wai: gate 5's falsification found the synthetic networks refuse every decode
Gate 5's fault (a grouped convolution finished with its neighbour channel's
requantisation on the fast kernel) left the unit test green: every committed
vector of rec_y, rec_uv, syn_y and syn_uv refused past A32, because the synthetic
networks' multipliers grew each convolution's output by up to 2^6 per product, so
no decode of those graphs ran its operators end to end.

- The generator now sets each synthetic convolution's multiplier so that a weight
  of 32767 times its products keeps the input's magnitude (and halves the biases):
  every rec_y, rec_uv, syn_y and syn_uv vector of graphs/lower_jpegai.jsonl now
  decodes, and only the vectors one past an input's range refuse. The set's digest
  is 1bc0daae…; its graphs, certificate and vectors are regenerated, and both
  certifiers reproduce them (wai-verify vectors verify; wai_ops_check.py
  ops-conformance), with the tests naming the new digest.
- jpegai_ops::fast_kernels::the_jpegai_networks_run_their_convolutions_on_the_fast_kernel
  requires a completed decode of each of the four graphs, not of any one.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-18 01:43:32 -04:00
..
generate wai: gate 5's falsification found the synthetic networks refuse every decode 2026-10-18 01:43:32 -04:00
lower wai: D2c M7b gate 1: the networks' lowering and certificate, reproduced from the text 2026-10-18 01:02:55 -04:00
proofs WIV1 and WIR1 gate 7 (WIP, committed before running): the direct predictors and step leave production 2026-10-17 12:04:26 -04:00
stage WIV1 and WIR1 gate 5 (WIP, committed before running): the 32-bit form behind a feature, held to the exact form 2026-10-17 11:28:23 -04:00
bounds.rs wai-ops: i64 sums where a bound shows they fit, one scan for a node's weight range, byte stores in the writer 2026-10-15 12:48:49 -04:00
bounds_oracle.rs wai-ops: the writer stores each value as one array; test tidying 2026-10-15 12:50:06 -04:00
code.rs wai-ops: the reference crate for wai-ops/1 (WHG1, plans, interpreter, stage operators, lowerings) 2026-10-09 19:31:38 -04:00
graph.rs wai-ops: the writer stores each value as one array; test tidying 2026-10-15 12:50:06 -04:00
interp.rs wai-ops: a run holds each tensor only until its last reader 2026-10-14 10:11:10 -04:00
json.rs wai-ops: the reference crate for wai-ops/1 (WHG1, plans, interpreter, stage operators, lowerings) 2026-10-09 19:31:38 -04:00
lib.rs wai-ops: the bounds pass in closed form for conv, conv_transpose and igdn (WIP, committed before the first build) 2026-10-15 12:30:39 -04:00
limb32.rs wai-ops: limb32, the 32-bit fabric's acc32 product and epilogue 2026-10-10 18:19:13 -04:00
plan.rs wai-ops: the plan's shape rules as functions; the graph harnesses call kernels 2026-10-11 03:37:44 -04:00
sha256.rs wai-ops: the reference crate for wai-ops/1 (WHG1, plans, interpreter, stage operators, lowerings) 2026-10-09 19:31:38 -04:00
vectors.rs wai-ops: load step 8, the bounds pass and the certificate (D2b) 2026-10-10 09:26:27 -04:00
xint.rs wai-ops: the seams the model checker needs, with no change in behaviour 2026-10-10 18:19:13 -04:00