open-standards/wai/quantum-conformance/qudit
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science 74f1a30c75
Some checks failed
joule-moq-room room service / joule-moq-room · does this change touch it (push) Successful in 17s
joule-moq-remote host agent / joule-moq-remote · does this change touch it (push) Successful in 20s
joule-moq-web browser client / joule-moq-web · does this change touch it (push) Successful in 18s
wai-app and Create / wai-app · does this change touch it (push) Successful in 36s
WAI operation catalogue / does this change touch it (push) Successful in 26s
wai-audit collector and player integration / does this change touch it (push) Successful in 15s
wai-key-proxy / does this change touch it (push) Successful in 17s
wai-ledger service / does this change touch it (push) Successful in 17s
wai-quantum resource estimation / does this change touch it (push) Successful in 19s
wai-fleet service / does this change touch it (push) Successful in 57s
wai-quantum docs, course and locales / does this change touch it (push) Successful in 44s
wai-quantum editors / does this change touch it (push) Successful in 38s
wai-quantum command line / does this change touch it (push) Successful in 52s
wai-quantum pulse and dynamics / does this change touch it (push) Successful in 18s
wai-quantum-landscape-fpga reference design / does this change touch it (push) Successful in 25s
wai-quantum for JavaScript / does this change touch it (push) Successful in 40s
wai-quantum contract / does this change touch it (push) Successful in 47s
wai-quantum for Python / does this change touch it (push) Successful in 17s
wai-quantum other formats / does this change touch it (push) Successful in 48s
wai-quantum OpenQASM reader / does this change touch it (push) Successful in 34s
wai-quantum error correction and mitigation / does this change touch it (push) Successful in 16s
wai-quantum variational and algorithm library / does this change touch it (push) Successful in 14s
wai-quantum extension points / does this change touch it (push) Successful in 36s
wai-quantum service / does this change touch it (push) Successful in 34s
wai-quantum qudit jobs / does this change touch it (push) Successful in 39s
wai-quantum studio and desktop / does this change touch it (push) Successful in 20s
wai-sink-android native sink library / does this change touch it (push) Successful in 17s
wai-quantum views in agent hosts / does this change touch it (push) Successful in 37s
wai-quantum verdicts and repairs / does this change touch it (push) Successful in 41s
WAI Studio / does this change touch it (push) Successful in 46s
wai-sink-swift native sink package / does this change touch it (push) Successful in 47s
joule-moq-remote host agent / joule-moq-remote, every target (linux-arm64) (push) Successful in 2m13s
wai-quantum-landscape-fpga reference design / the board's code on the board's processor's architecture · linux-arm64, release (push) Successful in 2m11s
wai-quantum pulse and dynamics / the same bits · linux-arm64 (push) Successful in 2m46s
wai-quantum service / service energy · linux packages (push) Successful in 2m14s
wai-quantum variational and algorithm library / parameters, gradients, optimisers, VQE, QAOA and builders · linux-arm64, release (push) Successful in 4m7s
wai-sink-android native sink library / the JNI layer and the platform-free half on the host JVM · linux-arm64 (push) Successful in 3m53s
repository checks / lockfiles, advisories, tests in CI, workflow hygiene, spec and section references, public text (push) Successful in 6m53s
joule-moq-room room service / joule-moq-room, every target (push) Successful in 7m40s
wai-quantum extension points / the registry and the example · linux-arm64 (push) Successful in 6m25s
WAI breaking changes and the conformance runner / WAI breaking · does this change touch WAI (push) Successful in 26s
wai-quantum energy-landscape jobs / does this change touch it (push) Successful in 13s
wai-app and Create / wai-app · tests, clippy, the line language's verifier (linux) (push) Successful in 1m15s
wai-key-proxy / proxy · linux (push) Successful in 1m22s
wai-fleet service / service · linux (push) Successful in 2m21s
wai-audit collector and player integration / collector · linux (push) Successful in 4m10s
wai-quantum docs, course and locales / the Studio's words in every locale · linux (push) Successful in 15s
wai-ledger service / service · linux (push) Successful in 4m21s
wai-quantum pulse and dynamics / reader, simulator and pulse jobs under wasm32-wasip2 (wasmtime) (push) Successful in 2m13s
wai-quantum editors / editors · linux (push) Successful in 3m25s
wai-quantum contract / the policy is linked, and the deprecations page reads (push) Successful in 8s
wai-quantum pulse and dynamics / reader, simulator and pulse jobs · linux, release (push) Successful in 3m54s
wai-quantum wasmQ / does this change touch it (push) Successful in 13s
wai-quantum resource estimation / estimation and calibration · linux, release (push) Successful in 6m46s
wai-quantum OpenQASM reader / corpus under wasm32-wasip2 (wasmtime) (push) Successful in 50s
wai-quantum docs, course and locales / the course and the command line's languages · linux (push) Successful in 6m28s
wai-quantum other formats / the set under wasm32-wasip2 (wasmtime) (push) Successful in 1m58s
wai-quantum energy-landscape jobs / the same bits · linux-arm64 (push) Successful in 12m17s
wai-quantum variational and algorithm library / parameters, gradients, optimisers, VQE, QAOA and builders · linux, release (push) Successful in 2m5s
wai-quantum contract / API compatibility · linux (push) Successful in 5m46s
wai-quantum extension points / the registry under wasm32-wasip2 (wasmtime) (push) Successful in 1m8s
wai-quantum OpenQASM reader / reader and corpus · linux (push) Successful in 4m59s
wai-quantum for JavaScript / javascript · linux (push) Successful in 6m59s
wai-quantum for Python / python · linux (push) Successful in 4m47s
wai-quantum error correction and mitigation / codes, decoders, texts and mitigation · linux, release (push) Successful in 5m43s
wai-quantum qudit jobs / the module and the conformance set under wasm32-wasip2 (wasmtime) (push) Successful in 1m55s
wai-quantum other formats / readers, writers and the set · linux (push) Successful in 7m49s
WAI operation catalogue / the catalogue and every door · linux (push) Successful in 15m51s
wai-quantum qudit jobs / the module, the job, the conformance set, the referee and the verb · linux (push) Failing after 4m5s
WAI Studio / the catalogue's actions, the unit tests and the core · linux (push) Successful in 56s
wai-quantum verdicts and repairs / the intent set and the verdict under wasm32-wasip2 (wasmtime) (push) Successful in 2m21s
wai-quantum extension points / the registry and the example · linux (push) Successful in 7m50s
wai-quantum verdicts and repairs / verdicts, repairs and the intent set · linux (push) Successful in 5m14s
wai-quantum service / service · linux (push) Successful in 8m29s
wai-quantum studio and desktop / desktop app · linux (push) Successful in 7m3s
wai-quantum contract / schemas and the committed tool lists · linux (push) Successful in 14m30s
wai-quantum studio and desktop / studio · browser (push) Successful in 8m13s
wai-quantum views in agent hosts / views · the page and its engine (push) Successful in 8m15s
joule-moq-remote host agent / joule-moq-remote, every target (macos) (push) Successful in 54s
wai-quantum views in agent hosts / views · a scripted host (push) Successful in 9m43s
wai-quantum docs, course and locales / every command and snippet in the docs · linux (push) Successful in 22m57s
wai-quantum studio and desktop / desktop app · windows (push) Successful in 9m46s
wai-audit collector and player integration / collector, player integration and the browser end to end · macos (push) Successful in 2m19s
wai-fleet service / service · macos (push) Successful in 37s
wai-ledger service / service · macos (push) Successful in 1m19s
wai-app and Create / wai-app · Create, browser end-to-end (macos) (push) Successful in 6m4s
wai-quantum editors / editors · macos (push) Successful in 2m11s
wai-quantum command line / command line · macos (push) Successful in 2m23s
wai-quantum pulse and dynamics / the same bits · macos (push) Successful in 1m48s
wai-quantum command line / command line · linux (push) Successful in 29m0s
WAI Studio / Studio in WebKit · linux (push) Successful in 15m46s
wai-quantum for Python / python · macos (push) Successful in 2m29s
wai-quantum qudit jobs / the same bits · macos (push) Successful in 2m31s
wai-quantum studio and desktop / desktop app · macos (push) Successful in 5m33s
wai-quantum service / service · macos (push) Successful in 6m11s
wai-sink-android native sink library / every ABI, the AAR, and the instrumented tests in a headless emulator · macos (push) Successful in 5m20s
joule-moq-web browser client / joule-moq-web · browser end-to-end (macos) (push) Successful in 16m59s
wai-quantum-landscape-fpga reference design / the member against the model of the logic, and the logic against the model · linux, release (push) Successful in 42m39s
WAI Studio / Studio in Chromium and Firefox · macos (push) Successful in 11m13s
wai-sink-swift native sink package / libwai slices, desktop tests, simulator tests · macos (push) Successful in 17m1s
wai-quantum wasmQ / the reference modules rebuild to their modules of record · linux (push) Successful in 39s
WAI breaking changes and the conformance runner / WAI breaking · wire, record and API against main · linux (push) Successful in 3m55s
WAI breaking changes and the conformance runner / WAI breaking and conform · their tests, and the independent verifiers through wai conform · linux (push) Successful in 5m33s
wai-quantum wasmQ / profile, engines, reference modules, adversarial, vectors · linux (push) Successful in 4m47s
wai-quantum wasmQ / interpreter and vectors under wasm32-wasip2 (wasmtime) (push) Successful in 5m41s
wai-quantum energy-landscape jobs / native against WebAssembly, over many seeds (push) Successful in 8m57s
wai-quantum energy-landscape jobs / reader, kernels, answers and the stated result · linux, release (push) Successful in 11m22s
wai-quantum energy-landscape jobs / the module under wasm32-wasip2 (wasmtime) (push) Successful in 22m26s
wai-quantum wasmQ / profile, engines, reference modules, adversarial, vectors · macos (push) Successful in 4m7s
wai-quantum energy-landscape jobs / the same bits · macos (push) Successful in 7m27s
wai-quantum: qudits of 4 and 6 levels, every constant exact or the nearest value, and qudit jobs in the engine
quantum_qudit takes d = 4 (roots ±1, ±i, exact) and d = 6 (coordinates ±1/2,
±√3/2, as d = 3's) beside 2 and 3: the dimensions whose roots of unity have
degree at most two. Every other dimension is refused. Each irrational constant
(√3/2 and the Fourier entries 1/√2, 1/√3, 1/(2√3), 1/√6, 1/(2√6), √2/4) is
the nearest multiple of 2^-30, found in whole numbers and proved nearest by a
test; the module had called a floor square root "exact", and 1/√3 was a floor
of a floor, 1.13 units low. The Fourier gate's entries are ω^m/√d applied with
circuit2's arithmetic, so d = 2 is circuit2's H on any state and F_4 is the
two-qubit QFT on every basis state; F_6 is F_2 ⊗ F_3 under the CRT relabelling.
Each gate's rounding and constants are counted (gate_bound), carried to a
2-norm bound on the state (program_bound) and a total-variation bound on the
outcomes (outcomes_bound); the worst measured is 0.79 of the bound.

engine::qudit is the job: a program of shift, clock, fourier, csum and phase
gates, measured with a seed, sealed in the receipt every job takes
(wai.quantum.qudit/1; refusals J090, J091, J092; at most 2^24 amplitudes and
2^32 work, measured at 9.6 s natively and 49.9 s on wasm32). The command line
runs it (wai-quantum qudit run, check, example). extensions/quantum-sim.md §9
states all of it; quantum-conformance/qudit/ holds the constants, 29 vectors
and 35 refusals, the same bytes on arm64 macOS, x86_64 Linux and wasm32-wasip2
(wai-quantum-qudit.yml), with a second implementation in Python.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-10 15:14:59 -05:00
..
README.md wai-quantum: qudits of 4 and 6 levels, every constant exact or the nearest value, and qudit jobs in the engine 2026-11-10 15:14:59 -05:00
vectors.json wai-quantum: qudits of 4 and 6 levels, every constant exact or the nearest value, and qudit jobs in the engine 2026-11-10 15:14:59 -05:00

Qudit jobs: the conformance set

Registers of qudits of 2, 3, 4 or 6 levels and the job that runs them, wai.quantum.qudit/1 (quantum-sim.md §9). A conforming host reads each request, runs it and gives each answer here bit for bit, and refuses each refusal with its code.

vectors.json holds:

member what
limits the most amplitudes a register holds, gates a program holds, shots, amplitudes asked for and work a job takes (§9.7, §9.8)
constants for each dimension, its roots of unity ω_d^k and its Fourier entries ω_d^m/√d as the integers they are at 2^30, and their digest (§9.2)
vectors 29 requests, each with the answer a conforming host gives: every member of a run's answer but engine, schema, energy and receipt, which a host adds (§9.7). Every gate and every power on every dimension; Bell pairs and both sides of the Weyl relation; F, F² and F†; programs with the bound 0; a column of every Fourier gate, each entry times an amplitude of exactly 1; the least and the largest seed; registers from one qudit to 14 qubits
refusals 35 requests a conforming host refuses, each with its code: J090 (does not read), J091 (a dimension with no roots held), J092 (past a limit), in the order §9.7 checks them
results_blake3 BLAKE3 over each vector's request and result as compact JSON (doubles as serde_json writes them), each followed by a newline

Who checks it

  • The engine, on every host CI runs (wai/wai-quantum/tests/qudit_conformance.rs, in .github/workflows/wai-quantum-qudit.yml): arm64 macOS, x86_64 Linux, and wasm32-wasip2 under wasmtime, each required to write this file byte for byte.

    cargo test --locked --release --no-default-features --features quantum_engine,quantum_receipt --test qudit_conformance
    
  • A second implementation, in Python, from §9's text alone (../tools/qudit_referee.py): the constants by the text's rule in whole numbers, each gate index by index, the sampler shot by shot, the bounds in doubles, the refusals in the text's order, and the results' digest; then it moves each irrational constant by one unit and requires some vector's state to move.

    python3 -I wai/quantum-conformance/tools/qudit_referee.py wai/quantum-conformance
    

WAI_QUANTUM_BLESS=1 with the engine's test writes the file again from the cases in the test. A change to it changes results_blake3, which the test pins.

What it does not cover

  • The receipt: a qudit job is sealed as every job is, and ../receipts/ holds those receipts' corpus.
  • The largest registers: the vectors stop at 16384 amplitudes; the limits and their refusals are here, and the measured ceiling is in §9.8.
  • Noise, measurement in the middle, and any dimension but 2, 3, 4 and 6, which §9 does not state.