Resolved by meaning: synthesis::Case holds both the priors (exact-upscale) and the unmarked frames (§7.6); synthesis §11.1 lists both inputs and the three policy members; the synthesis-mark corpus's cases hold no prior; exact-upscale passes synthesis's second_layer policy through; the live-conformance table gains the upscale row in its generator column; both CI steps and both CHANGELOG entries are kept. Generated files are main's here and are regenerated in the next commit. Co-Authored-By: Claude Opus 5.5 <[email protected]>
3.1 KiB
live-conformance/upscale — exact upscale
The corpus of extensions/exact-upscale.md §9:
vectors.json, the priors it names in priors/, and sha256.json.
A vector holds its policy (dual_layer, assistive and second_layer, synthesis §11.1's,
and upscale);
its records as JSON texts, list by list: claims (origin claims of synthesis §3.1), upscales
(upscale records, §4.2) and presentations (presentation statements, §6.2); the objects it
holds, each a WAI1 envelope in hexadecimal; the decoded samples it holds, each the content
hash of the object decoded and its RGB8 samples in hexadecimal; the priors it holds, each
the name of a file of priors/; and the residuals and targets it holds, each in hexadecimal.
vectors.json also lists every file of priors/ with its SHA-256.
Exact-upscale equivalence. For each vector, a conforming verifier reaches the outcome it states:
refuse: thereasonand where,at:["upscale", i],["presentation", i],["presentation", i, "frame", j], or["synthesis", …]with synthesis's own place;accept: thestatementsof §7.3:claims, each itslink,classandassistive(proved,not-recomputed,asserted, ornull);upscales, each itslink,status(provedornot-recomputed) andmax_difference(ornull);presentations, each itslinkandtotals.
sha256.json gives, for each upscale record of an accepted vector, the SHA-256 of the picture
a sink presents (its output): the RGB8 buffer of SPEC §7 Digests, rows top to bottom.
A verifier that reaches another outcome, reason, place or statement does not conform.
Provenance. wai_upscale_vectors gen writes vectors.json, sha256.json,
priors/seeded.wsr and priors/unreadable.wsr from records authored in code: every key is
SHA-256 of the corpus's label and an index; every picture is an integer function of a label
(a gradient, a rectangle and diagonal lines, corpus::picture), and a full-resolution target's
low-resolution picture is its 2 × 2 means; every envelope payload, and the samples of the
generated and float-upscaled frames, are SHA-256 output of a label; the seeded prior is drawn
from SHA-256 of a label (int_sr::seeded_prior) and trained on nothing; every time is a
constant, and Ed25519 signing is deterministic. priors/generic.wsr and priors/title.wsr are
read, not written, each pinned by its SHA-256 in corpus::INPUT_PRIORS:
tools/wai_int_sr_train.py (seed 20261021, --width 16, its defaults otherwise; the run also took --source for the measurement, which adds a title and changes neither prior)
trained generic.wsr on pictures it generates from a seeded formula (filled shapes, strokes,
gratings), and title.wsr by fine-tuning it on the eight frames of its generated title
title-mixed. No picture, recording or footage from outside this repository is in the corpus or
in the training. The training is in floating point and is not claimed to regenerate the same
bytes on another machine; the priors' bytes are what is pinned.
python3 -I ../upscale_verify.py .