Some checks failed
wai-audit collector and player integration / does this change touch it (push) Successful in 37s
wai-quantum clippy / does this change touch it (push) Successful in 16s
WAI operation catalogue / does this change touch it (push) Successful in 40s
wai-quantum editors / does this change touch it (push) Successful in 18s
wai-quantum command line / does this change touch it (push) Successful in 36s
wai-quantum for JavaScript / does this change touch it (push) Successful in 14s
WAI breaking changes and the conformance runner / WAI breaking · does this change touch WAI (push) Successful in 23s
wai-quantum contract / does this change touch it (push) Successful in 30s
wai-quantum docs, course and locales / does this change touch it (push) Successful in 41s
wai-quantum resource estimation / does this change touch it (push) Successful in 40s
wai-quantum for Python / does this change touch it (push) Successful in 21s
wai-quantum other formats / does this change touch it (push) Successful in 38s
wai-quantum service / does this change touch it (push) Successful in 36s
wai-quantum error correction and mitigation / does this change touch it (push) Successful in 42s
WAI examples / WAI examples · does this change touch them (push) Successful in 25s
wai-quantum variational and algorithm library / does this change touch it (push) Successful in 31s
wai-sink-swift native sink package / does this change touch it (push) Successful in 18s
wai-quantum studio and desktop / does this change touch it (push) Successful in 1m8s
wai-quantum OpenQASM reader / does this change touch it (push) Successful in 1m26s
wai-quantum extension points / does this change touch it (push) Successful in 1m15s
wai-quantum pulse and dynamics / does this change touch it (push) Successful in 1m25s
wai-sink-android native sink library / does this change touch it (push) Successful in 2m2s
wai-quantum wasmQ / does this change touch it (push) Successful in 17s
wai-quantum views in agent hosts / does this change touch it (push) Successful in 3m52s
wai-audit collector and player integration / collector · linux (push) Successful in 2m37s
wai-quantum verdicts and repairs / does this change touch it (push) Successful in 4m19s
WAI Studio / does this change touch it (push) Successful in 4m5s
wai-quantum editors / editors · linux (push) Successful in 3m53s
wai-quantum service / service energy · linux packages (push) Successful in 3m25s
wai-quantum docs, course and locales / the Studio's words in every locale · linux (push) Successful in 39s
WAI breaking changes and the conformance runner / WAI breaking · wire, record and API against main · linux (push) Successful in 4m11s
wai-quantum contract / the policy is linked, and the deprecations page reads (push) Successful in 12s
wai-quantum clippy / clippy, warnings denied, every feature set · linux (push) Successful in 7m12s
wai-quantum for JavaScript / javascript · linux (push) Successful in 7m2s
wai-quantum contract / API compatibility · linux (push) Successful in 5m53s
wai-quantum other formats / the set under wasm32-wasip2 (wasmtime) (push) Successful in 3m51s
wai-quantum docs, course and locales / the course and the command line's languages · linux (push) Successful in 9m14s
wai-quantum error correction and mitigation / codes, decoders, texts and mitigation · linux, release (push) Successful in 6m2s
wai-quantum for Python / python · linux (push) Successful in 9m54s
WAI operation catalogue / the catalogue and every door · linux (push) Successful in 15m32s
wai-quantum variational and algorithm library / parameters, gradients, optimisers, VQE, QAOA and builders · linux, release (push) Successful in 4m56s
wai-quantum other formats / readers, writers and the set · linux (push) Successful in 9m45s
wai-quantum OpenQASM reader / corpus under wasm32-wasip2 (wasmtime) (push) Successful in 1m43s
WAI breaking changes and the conformance runner / WAI breaking and conform · their tests, and the independent verifiers through wai conform · linux (push) Successful in 13m40s
wai-quantum wasmQ / the reference modules rebuild to their modules of record · linux (push) Successful in 44s
wai-quantum pulse and dynamics / reader, simulator and pulse jobs under wasm32-wasip2 (wasmtime) (push) Successful in 1m45s
wai-quantum OpenQASM reader / reader and corpus · linux (push) Successful in 4m24s
wai-quantum pulse and dynamics / reader, simulator and pulse jobs · linux, release (push) Successful in 3m8s
wai-quantum studio and desktop / studio · browser (push) Successful in 7m49s
wai-quantum studio and desktop / desktop app · linux (push) Successful in 7m44s
wai-quantum extension points / the registry under wasm32-wasip2 (wasmtime) (push) Successful in 4m3s
WAI Studio / the catalogue's actions, the unit tests and the core · linux (push) Successful in 1m53s
wai-quantum resource estimation / estimation and calibration · linux, release (push) Successful in 14m56s
wai-quantum service / service · linux (push) Successful in 13m2s
wai-quantum verdicts and repairs / the intent set and the verdict under wasm32-wasip2 (wasmtime) (push) Successful in 3m44s
wai-quantum contract / schemas and the committed tool lists · linux (push) Successful in 17m13s
wai-quantum extension points / the registry and the example · linux (push) Successful in 7m2s
wai-quantum wasmQ / interpreter and vectors under wasm32-wasip2 (wasmtime) (push) Successful in 5m50s
wai-quantum verdicts and repairs / verdicts, repairs and the intent set · linux (push) Successful in 5m20s
wai-quantum wasmQ / profile, engines, reference modules, adversarial, vectors · linux (push) Successful in 7m17s
WAI examples / WAI examples · portable · linux (push) Failing after 13m1s
wai-quantum command line / command line · linux (push) Successful in 25m19s
wai-quantum views in agent hosts / views · the page and its engine (push) Successful in 8m21s
wai-quantum views in agent hosts / views · a scripted host (push) Successful in 9m19s
wai-quantum docs, course and locales / every command and snippet in the docs · linux (push) Successful in 28m51s
WAI Studio / Studio in WebKit · linux (push) Successful in 25m46s
wai-quantum variational and algorithm library / parameters, gradients, optimisers, VQE, QAOA and builders · linux-arm64, release (push) Successful in 4m40s
wai-quantum pulse and dynamics / the same bits · linux-arm64 (push) Successful in 2m51s
wai-quantum extension points / the registry and the example · linux-arm64 (push) Successful in 7m28s
wai-audit collector and player integration / collector, player integration and the browser end to end · macos (push) Successful in 1m58s
WAI examples / WAI examples · android-app · linux-arm64 (push) Successful in 11m40s
repository checks / lockfiles, advisories, tests in CI, workflow hygiene, spec and section references, public text (push) Successful in 12m55s
wai-quantum editors / editors · macos (push) Successful in 1m52s
wai-sink-android native sink library / the JNI layer and the platform-free half on the host JVM · linux-arm64 (push) Successful in 8m25s
wai-quantum command line / command line · macos (push) Successful in 2m41s
wai-quantum for Python / python · macos (push) Successful in 3m1s
wai-quantum pulse and dynamics / the same bits · macos (push) Successful in 1m33s
wai-quantum service / service · macos (push) Successful in 7m49s
wai-quantum wasmQ / profile, engines, reference modules, adversarial, vectors · macos (push) Successful in 2m24s
wai-quantum studio and desktop / desktop app · macos (push) Successful in 7m46s
WAI examples / WAI examples · the archive, the readiness check, the browser and Apple · macos (push) Successful in 15m59s
wai-sink-swift native sink package / libwai slices, desktop tests, simulator tests · macos (push) Successful in 15m39s
WAI Studio / Studio in Chromium and Firefox · macos (push) Successful in 10m44s
wai-sink-android native sink library / every ABI, the AAR, and the instrumented tests in a headless emulator · macos (push) Successful in 13m41s
wai-quantum studio and desktop / desktop app · windows (push) Has been cancelled
The client keeps the dynamic quantum architecture it read: its
calibration_set_id is the one every job is sent pinned to, and the device's
description, compile and qubit names stay that set's until the device is read
again. A recalibration in between is refused by the service (the refusal says
the job was pinned and that a new run reads the current set) or run as
planned, never taken silently. The result's calibration is the set the
service says it compiled the job against (compilation.calibration_set_id);
one other than the pin is refused by the client that sent the job, and by
job.rs for a job collected later from its record.
The quality metrics the service publishes for that set are read beside its
architecture as the device's target (Provider::device_target, a new method
with a default; the engine's calibration-metrics import), so a job is placed
on the qubits and pairs most likely to succeed and the receipt names the
target's hash; a service that publishes none leaves the compiler's own
layout, and the placement says why. providers test reports the calibration's
errors, and targets import --provider keeps the target.
The service's modes are sent as the client wants them (dd_mode disabled,
heralding_mode none, move_gate_validation strict, move_gate_frame_tracking
full), so execution states decoupling off: a second row of the provider
protocol's section 8.3 table, read by both verifiers; the first row stays.
cancel posts /jobs/{id}/cancel, so a job past its wait is stopped.
Tested against a fake built from the service's published request and
response models (tests/prx_circuits.rs), stricter than the service: a
recalibration between read and submit, a service that ran another set, a
retired set, a cancel, metric placement, providers test, the dashboard token
from the credential store as a bearer over curl, and the mock sealed as
simulated. Two receipts join the corpus; the two verifiers and the manifest
agree on all 502. No live service has answered any of it yet.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
154 lines
6 KiB
JSON
154 lines
6 KiB
JSON
{
|
|
"status": "done",
|
|
"method": "provider",
|
|
"why": "on mine, prx-circuits:qc (prx-circuits): compiled exactly to prxcz on its qubits and checked by simulation here before it was sent",
|
|
"request": {
|
|
"qasm": "OPENQASM 3.0;\nqubit[2] q;\nbit[2] c;\nh q[0];\ncx q[0], q[1];\nc = measure q;\n",
|
|
"shots": 400,
|
|
"provider": "mine"
|
|
},
|
|
"result": {
|
|
"method": "provider",
|
|
"qubits": 2,
|
|
"gates": 2,
|
|
"accuracy": {
|
|
"class": "measured",
|
|
"note": "counts from the processor the provider names, read as counts_source says (shot records, the provider's own counts, or counts rebuilt from probabilities); not reproducible by recomputation: the same job run again gives other counts, and no simulation stands in for them; what was set off at the provider, and what was left to its defaults, is in execution"
|
|
},
|
|
"shots": 400,
|
|
"provider": {
|
|
"name": "mine",
|
|
"kind": "prx-circuits",
|
|
"protocol": "prx-circuits",
|
|
"device": "prx-circuits:qc",
|
|
"provenance": "silicon",
|
|
"qubits": 5,
|
|
"basis": "prxcz",
|
|
"describe": "09f27d645af5c62a8c56f4a46eb3ff2de2025f217f64db4f8a2534b4eebd9f9b"
|
|
},
|
|
"calibration": "5a1e4c1b-3b0e-4f3e-9d1a-6c2b7f0e8a11",
|
|
"compiled": {
|
|
"basis": "prxcz",
|
|
"program": "171e72d9d9b3bf7042e74304a4a728c2591f1bb409a2422379fc27b8299d7bce",
|
|
"hash": "BLAKE3 of the program's OpenQASM 3 text, qasm3",
|
|
"qasm3": "OPENQASM 3.0;\ninclude \"stdgates.inc\";\ngate prx(theta, phi) a { rz(-phi) a; rx(theta) a; rz(phi) a; }\nbit[2] c;\nprx(pi/2, -pi/2) $3;\nprx(pi/2, -pi/2) $2;\ncz $3, $2;\nprx(pi/2, pi/2) $2;\nc[0] = measure $3;\nc[1] = measure $2;\n",
|
|
"native_gates": 4,
|
|
"two_qubit_gates": 1,
|
|
"swaps": 0,
|
|
"layout": [
|
|
3,
|
|
2
|
|
],
|
|
"final_layout": [
|
|
3,
|
|
2
|
|
],
|
|
"checked": "the compiled program's final state equals the circuit's, each logical qubit on the physical qubit it ends on, by the bit-exact simulator here; nothing has been sent",
|
|
"qubit_names": {
|
|
"2": "QB3",
|
|
"3": "QB4"
|
|
},
|
|
"placement": {
|
|
"basis": "prxcz",
|
|
"exact": true,
|
|
"layout": [
|
|
3,
|
|
2
|
|
],
|
|
"final_layout": [
|
|
3,
|
|
2
|
|
],
|
|
"swaps": 0,
|
|
"native_gates": 4,
|
|
"two_qubit_gates": 1,
|
|
"expected_success": 0.9581869102031737,
|
|
"fewest_swaps": {
|
|
"layout": [
|
|
0,
|
|
1
|
|
],
|
|
"swaps": 0,
|
|
"expected_success": 0.9118651319768761
|
|
},
|
|
"layouts_compared": 8,
|
|
"chosen": "noise-aware: of 8 layouts and their routes, the highest expected success (0.958187, against 0.911865 for the fewest swaps)",
|
|
"expected_success_is": "the product of each gate's success (one less its reported error, or where none is reported its relaxation over its duration) and each measured qubit's readout success (one less the mean of its assignment errors); idling is in the noise model, not in this figure",
|
|
"checked": "the compiled program's final state equals the circuit's, each logical qubit on the physical qubit it ends on, by the bit-exact simulator",
|
|
"notes": [],
|
|
"target": "e1eb3796e2eeb48172ac83e4aa740e8f2d88d5a028070bcdc6df123343dbca1c",
|
|
"target_is": "BLAKE3 of the device target its client read from the service's calibration and its quality metrics (wai.quantum.target/1), in its RFC 8785 text"
|
|
}
|
|
},
|
|
"job": {
|
|
"id": "0b5e0000-0000-4000-8000-000000000000",
|
|
"polls": 1
|
|
},
|
|
"ideal": {
|
|
"computed": true,
|
|
"method": "exact",
|
|
"total_variation_distance": 0.0,
|
|
"hellinger_fidelity": 1.0,
|
|
"sampling_tvd_expected": 0.019947114020071634,
|
|
"ideal_outcomes": 2,
|
|
"note": "the circuit's exact distribution over its classical bits, by the bit-exact state vector here, against the provider's counts: the total variation distance, the Hellinger fidelity, and the distance this many shots of the exact distribution would leave on average (by the normal approximation); a distance well above that is the device's or the simulator's error, or a program not run as sent"
|
|
},
|
|
"cost": {
|
|
"free": false,
|
|
"estimate": {
|
|
"unknown": "the provider gives no estimate"
|
|
},
|
|
"charged": null,
|
|
"confirmed": true
|
|
},
|
|
"energy": {
|
|
"unmetered": "the work ran at the provider; this host's meter would read only the wait"
|
|
},
|
|
"counts_source": "vendor_counts",
|
|
"execution": {
|
|
"stated_by": "client",
|
|
"sent": {
|
|
"fields": [
|
|
"calibration_set_id",
|
|
"circuits",
|
|
"dd_mode",
|
|
"heralding_mode",
|
|
"move_gate_frame_tracking",
|
|
"move_gate_validation",
|
|
"shots"
|
|
],
|
|
"settings": {
|
|
"/dd_mode": "disabled",
|
|
"/heralding_mode": "none",
|
|
"/move_gate_frame_tracking": "full",
|
|
"/move_gate_validation": "strict"
|
|
}
|
|
},
|
|
"verbatim": false,
|
|
"note": "the job is pinned to the calibration set it was compiled against, dynamical decoupling is sent disabled, heralding none, move validation strict and move frame tracking full; the request sets nothing for mitigation, twirling, remapping or optimisation, so the service's defaults stand",
|
|
"mitigation": "default",
|
|
"twirling": "default",
|
|
"decoupling": "off",
|
|
"remapping": "default",
|
|
"optimisation": "default"
|
|
},
|
|
"counts": {
|
|
"00": 200,
|
|
"11": 200
|
|
},
|
|
"distinct_outcomes": 2,
|
|
"omitted_shots": 0,
|
|
"engine": {
|
|
"name": "wai-quantum",
|
|
"version": "0.10.0"
|
|
},
|
|
"schema": "wai.quantum.job-result/1",
|
|
"receipt": {
|
|
"alg": "ed25519",
|
|
"canon": "rfc8785",
|
|
"key": "197f6b23e16c8532c6abc838facd5ea789be0c76b2920334039bfa8b3d368d61",
|
|
"digest": "3b8bfeefe3e1270490e9896612307dedff831d562480d75cab2f1a5dd513b80d",
|
|
"signature": "e478a82920ee39a8fed89f99a4abaec222981c45ed1f617308db1d3f344d3be28fad9069dfaa46528cf8f17350eb93fb01761e81eb3df445752cd66fb8e92a0a"
|
|
}
|
|
}
|
|
}
|