wai-quantum: published architectures, re-estimated — the bicycle architecture, RSA-2048 and FeMoCo, each delta explained #665
Merged
dcharlot
merged 6 commits from 2026-11-06 14:43:46 -05:00
wai/quantum-published-architecture-check into main 2026-11-06
wai-quantum: the guard on the removed section names no product
All checks were successful
wai-quantum views in agent hosts / views · a scripted host (pull_request) Successful in 5m16s
wai-quantum WebGPU member / shader checks · browser build · wasip2 inertness (pull_request) Successful in 5m0s
wai-web reach builds / wai-web reach builds · the package of record, every output as recorded (pull_request) Successful in 4m22s
wai-web reach builds / wai-web reach builds · this tree's wai-web, every rung on its engine line (pull_request) Successful in 5m10s
wai-web wasm32 / wai-web wasm32 build · corpus, menu and writers (pull_request) Successful in 11m4s
WAI Studio / Studio in WebKit · linux (pull_request) Successful in 20m31s
wai-quantum tensor-engine member / member · tensor engine, the kernel toolchain's simulator (linux) (pull_request) Successful in 36m21s
repository checks / lockfiles, advisories, tests in CI, workflow hygiene, spec and section references, public text (pull_request) Successful in 3m59s
wai-quantum CUDA member / member · CUDA (jetson-hub) (pull_request) Successful in 1m34s
wai-quantum OpenCL member / member · OpenCL GPU and CPU (jetson-hub) (pull_request) Successful in 35s
wai-quantum service / service energy · linux packages (pull_request) Successful in 1m32s
wai-quantum portable tensor program / tensor program · GPUs (jetson-hub) (pull_request) Successful in 24s
wai-quantum WebGPU member / member · GPU, Vulkan (jetson-hub) (pull_request) Successful in 21m30s
standards workspaces build + test / joule-code-rs (joule-code/joule-code-rs, joule-code-rs, linux-arm64, true) (pull_request) Successful in 14m21s
WAI conformance / v2 vocabulary · manifests validate as stated (pull_request) Successful in 26s
WAI energy receipts / energy receipts · linux-arm64 (pull_request) Successful in 22m10s
WAI conformance / delivery telemetry · CMCD and CMSD against an independent library (pull_request) Successful in 16s
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Successful in 48s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 2m38s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 25m21s
WAI examples / WAI examples · android-app · linux-arm64 (pull_request) Successful in 7m51s
WAI conformance / each feature of the independent verifiers' steps compiles alone (pull_request) Successful in 18m2s
wai-quantum HIP member / member · HIP absent (linux-arm64) (pull_request) Successful in 1m23s
wai-quantum npu-cores member / member · npu-cores absent (linux-arm64) (pull_request) Successful in 33s
wai-quantum pulse and dynamics / the same bits · linux-arm64 (pull_request) Successful in 1m43s
wai-quantum tensor-engine member / member · tensor engine absent (linux-arm64) (pull_request) Successful in 28s
wai-quantum extension points / the registry and the example · linux-arm64 (pull_request) Successful in 3m53s
wai-quantum variational and algorithm library / parameters, gradients, optimisers, VQE, QAOA and builders · linux-arm64, release (pull_request) Successful in 2m23s
wai-sink-android native sink library / the JNI layer and the platform-free half on the host JVM · linux-arm64 (pull_request) Successful in 4m57s
WAI conformance / independent verifiers · claims, JWP, key discovery and integer payloads (Python) (pull_request) Successful in 1h39m36s
The review asked for the section on the announced machine to go, and the fix for that left the product's name in a test, as a string that must appear in no row. The name was a bare literal in a public file, and it guarded nothing the other strings did not: the removed rows' sources read "press release", and their text "announced". The test keeps those two. Put "press release" back in one pinned source and it still fails, naming that string. Co-Authored-By: Claude Opus 5.5 <[email protected]>
wai-quantum: the published-architecture check, as its review asked
Some checks failed
wai-quantum portable tensor program / tensor program · GPUs (jetson-hub) (pull_request) Has been cancelled
wai-quantum portable tensor program / tensor program · Metal and the arm64 CPU (macos) (pull_request) Has been cancelled
wai-quantum variational and algorithm library / parameters, gradients, optimisers, VQE, QAOA and builders · linux, release (pull_request) Has been cancelled
wai-quantum variational and algorithm library / parameters, gradients, optimisers, VQE, QAOA and builders · linux-arm64, release (pull_request) Has been cancelled
wai-quantum CPU vector units / member · vector unit, rvv 1024-bit (riscv64, emulated) (pull_request) Has been cancelled
wai-quantum CPU vector units / member · vector unit, sve 128-bit (aarch64, emulated) (pull_request) Has been cancelled
wai-quantum CPU vector units / member · vector unit, rvv 128-bit (riscv64, emulated) (pull_request) Has been cancelled
wai-quantum CPU vector units / member · vector unit, sve 2048-bit (aarch64, emulated) (pull_request) Has been cancelled
wai-quantum CPU vector units / member · vector unit, avx2 (x86_64 silicon) (pull_request) Has been cancelled
wai-quantum CPU vector units / member · vector unit, sve 512-bit (aarch64, emulated) (pull_request) Has been cancelled
wai-quantum CPU vector units / member · vector unit absent (macos) (pull_request) Has been cancelled
wai-quantum verdicts and repairs / verdicts, repairs and the intent set · linux (pull_request) Has been cancelled
wai-quantum verdicts and repairs / the intent set and the verdict under wasm32-wasip2 (wasmtime) (pull_request) Has been cancelled
wai-quantum views in agent hosts / views · the page and its engine (pull_request) Has been cancelled
wai-quantum views in agent hosts / views · a scripted host (pull_request) Has been cancelled
wai-quantum WebGPU member / shader checks · browser build · wasip2 inertness (pull_request) Has been cancelled
wai-quantum WebGPU member / member · software Vulkan (linux) (pull_request) Has been cancelled
wai-quantum WebGPU member / member · Metal (macos) (pull_request) Has been cancelled
wai-quantum WebGPU member / member · GPU, Vulkan (jetson-hub) (pull_request) Has been cancelled
wai-quantum WebGPU member / member · GPU, Vulkan (thor) (pull_request) Has been cancelled
wai-quantum WebGPU member / member · browser WebGPU (macos) (pull_request) Has been cancelled
wai-sink-android native sink library / the JNI layer and the platform-free half on the host JVM · linux-arm64 (pull_request) Has been cancelled
wai-sink-android native sink library / every ABI, the AAR, and the instrumented tests in a headless emulator · macos (pull_request) Has been cancelled
wai-sink-swift native sink package / libwai slices, desktop tests, simulator tests · macos (pull_request) Has been cancelled
WAI Studio / the catalogue's actions, the unit tests and the core · linux (pull_request) Has been cancelled
WAI Studio / Studio in Chromium and Firefox · macos (pull_request) Has been cancelled
WAI Studio / Studio in WebKit · linux (pull_request) Has been cancelled
wai-web reach builds / wai-web reach builds · the package of record, every output as recorded (pull_request) Has been cancelled
wai-web reach builds / wai-web reach builds · this tree's wai-web, every rung on its engine line (pull_request) Has been cancelled
wai-web wasm32 / wai-web wasm32 build · corpus, menu and writers (pull_request) Has been cancelled
Every fix with a test that fails on the code before it. Figures and rules - The published figures move out of the code into tests/data/published_figures.tsv: each with where it is printed, as printed, its value and its rule, so regenerating the page cannot move them. A row that agrees is held to the digits its source prints: exact, the nearest printed unit, rounded up or down where the source rounds so, or, for a figure ours takes from the source's fits, the range its fits' printed parameters (ln f0 and gamma, two decimals) allow. It was 6% for every row: 8.72M re-pinned as 9.00M passed. Every other numeric row carries a guard, ours to four digits. (every_row_holds_to_its_published_figure, a_rule_holds_to_the_printed_digits_and_no_further) - Fig. 10(a)'s surface-code timesteps are its printed 381, 2,269, 115, 115, 509 and 509, not the formula compared with itself. - Figures carry no more digits than the PDF prints (7.32e-4, 2.09e-5, 8.2e-21, Table 10 to its printed two and three digits) unless the row says "source files". The Toffoli count of arXiv:1905.09749 is its Table 1's, not Table 3's. Reasons and classes - The authors' compiler is released (bicycle_compiler, bicycle_cliffords and bicycle_common 0.1.0 on crates.io, 2025-07-31). The compile-mean rows now cite bicycle_cliffords 0.1.0 src/measurement.rs, which takes a shift as A on X and A^-1 on Z (version 0.2.1: A^-1 on X, A^T on Z), for what was an inference. The two gross rows at p = 1e-4 stay open, with that compiler named as what would settle them; this check runs no third-party code. - The capability rows said the rates and the sum were the same. Ours divides P_I and P_U by C (Section A.7's text): a third of a point of the gross 5k p = 1e-3 gap is that choice. That row is now an assumption, with a row beside each capability at the undivided rates. (the_division_by_c_is_a_third_of_a_point_of_the_gross_capability) - The random-circuit fit is Fig. 17, not Fig. 16. - The "Ours" column holds only ours: the Ising T-count-as-stated row shows our 14,665,600; the FeMoCo Table III against layout rows are the paper's own two figures, ours empty, their numbers. - The Ising inter-module count depends on the factory's end of the line (946,800 after the last module, 781,200 before the first), which the paper does not print. Machine::links states the rule, a test computes both, and the row is an assumption that says it was chosen to match. - The 510: over all native measurements there are 510 distinct R != I, 284 with Q = I, 19 of those also with Q != I. That the paper counted these is our inference from the matching count, and the text says so (native_rotation_census). - The arXiv:2308.07915 rows (about 1,250 times the later fit) are open. - The expected hours of arXiv:1905.09749's title are one computation, WindowedEstimate::expected_hours: 7.31 in the row and the module. Facts - The 2021 addition's piece is 1,024 + 38 = 1,062 qubits (the cost script's padding; its text's 3 lg n + 10 is 43), not 1,052: WindowedFactoringParams::padding and piece_qubits, and the test. Public text - The section on the machine announced for 2029, its sources and its allow-name are gone, with every verdict on that announcement. The rows that check arXiv:2506.03094 itself stay. - The synthesiser row says what the counts are, without the shortfall line; its fix follows separately. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Merge origin/main into wai/quantum-published-architecture-check
Some checks failed
wai-quantum studio and desktop / desktop app · linux (pull_request) Successful in 6m5s
wai-quantum views in agent hosts / views · a scripted host (pull_request) Successful in 4m39s
wai-quantum WebGPU member / shader checks · browser build · wasip2 inertness (pull_request) Successful in 4m38s
wai-quantum service / service · linux (pull_request) Successful in 8m4s
wai-web reach builds / wai-web reach builds · this tree's wai-web, every rung on its engine line (pull_request) Successful in 4m40s
WAI conformance / v2 vocabulary · manifests validate as stated (pull_request) Successful in 14m10s
wai-quantum contract / schemas and the committed tool lists · linux (pull_request) Successful in 17m10s
wai-web reach builds / wai-web reach builds · the package of record, every output as recorded (pull_request) Successful in 7m37s
WAI examples / WAI examples · portable · linux (pull_request) Successful in 18m34s
WAI conformance / cargo-class corpora · linux (pull_request) Successful in 20m37s
WAI conformance / delivery telemetry · CMCD and CMSD against an independent library (pull_request) Has been cancelled
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Has been cancelled
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Has been cancelled
WAI examples / WAI examples · android-app · linux-arm64 (pull_request) Has been cancelled
WAI energy receipts / energy receipts · linux (pull_request) Has been cancelled
WAI conformance / independent verifiers · claims, JWP, key discovery and integer payloads (Python) (pull_request) Has been cancelled
WAI conformance / each feature of the independent verifiers' steps compiles alone (pull_request) Has been cancelled
WAI energy receipts / energy receipts · linux-arm64 (pull_request) Has been cancelled
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Has been cancelled
wai-quantum docs, course and locales / every command and snippet in the docs · linux (pull_request) Has been cancelled
wai-quantum HIP member / member · HIP absent (linux-arm64) (pull_request) Has been cancelled
wai-quantum signal processor / processor and member · signal processor, emulated (pull_request) Has been cancelled
wai-quantum npu-cores member / member · npu-cores absent (linux-arm64) (pull_request) Has been cancelled
wai-quantum extension points / the registry and the example · linux-arm64 (pull_request) Has been cancelled
wai-quantum tensor-engine member / member · tensor engine absent (linux-arm64) (pull_request) Has been cancelled
wai-quantum variational and algorithm library / parameters, gradients, optimisers, VQE, QAOA and builders · linux-arm64, release (pull_request) Has been cancelled
WAI Studio / Studio in WebKit · linux (pull_request) Has been cancelled
wai-web wasm32 / wai-web wasm32 build · corpus, menu and writers (pull_request) Has been cancelled
wai-sink-android native sink library / the JNI layer and the platform-free half on the host JVM · linux-arm64 (pull_request) Has been cancelled
wai-quantum pulse and dynamics / the same bits · linux-arm64 (pull_request) Has been cancelled
Co-Authored-By: Claude Opus 5.5 <[email protected]>
wai-quantum: published architectures, re-estimated
published_architectures feeds the stated assumptions of published resource estimates into the estimators (quantum_arch, quantum_bicycle and the estimate job) and prints, for each quantity, the published figure, ours, the delta and why: agrees, a different assumption, the source's model, the source's own figures disagreeing with each other or with its stated method, a limit of ours, or open. Every row names where its figure is printed; figures with more digits than a PDF prints are quoted from the paper's arXiv source files and say so, and the one secondary figure is marked secondary. The targets: - the machine announced for 2029, "100 million quantum operations using 200 logical qubits" (press release of 2025-06-10), priced on the bicycle architecture of arXiv:2506.03094, the paper the release links; - that paper's own figures: its parts, rates, compile, capabilities and 10 × 10 Ising program; - RSA-2048 on the surface code, arXiv:1905.09749 (Quantum 5, 433); - FeMoCo, arXiv:2011.03494 (PRX Quantum 2, 030305); - RSA-2048 on yoked surface codes, arXiv:2505.15917; - the planar model's own source, arXiv:2211.07629. Of 197 rows, 110 agree. Two are open: the source's gross capability at p = 10⁻⁴ needs a per-rotation failure of 8.3·10⁻⁷ that its tables do not account for. One row records a shortfall of ours that the check found and this change does not fix: on one of the Ising program's four angles our synthesiser takes 84 T gates where pygridsynth 1.0.1 takes 82, at the same denominator exponent. docs/published-architectures.md holds the rows, and the_page_is_what_the_estimators_give holds the page to the code; the example prints them. The resource-estimation workflow runs the three modules' tests in a release build, requires seven by name, and runs the example. Co-Authored-By: Claude Opus 5.5 <[email protected]>
wai-quantum: quantum_bicycle, a machine of bivariate-bicycle code modules
The estimators priced one logical qubit per surface-code tile and could not express a high-rate block code: twelve logical qubits in one code block, reached by a small instruction set instead of lattice surgery on a tile. The machine announced for 2029 (200 logical qubits, 10⁸ operations) is built on such codes, on the bicycle architecture of arXiv:2506.03094, so it could not be checked. quantum_bicycle prices that architecture from the parts the paper publishes: - the gross [[144,12,12]] and two-gross [[288,12,18]] codes from their printed polynomials and logical basis (tests: the basis is dual, every operator commutes with every check, k = 12, and a shift acts as the printed matrices); - the native measurements and, by breadth-first search over the 4¹¹ − 1 Paulis on a module's data qubits, the in-module cost of each; - the instruction rates from the paper's failure-spectrum fits (all 28 printed rates come back), and its assumed rates, marked as assumed; - a machine of M modules and a factory, q = M(c + u + a) − a + a′ + f (every count of its capability table comes back), its capability at a failure budget, and the error rate a program needs. Where the paper disagrees with itself or with the method it states, the module says so, and a test holds each: - Its four mean compile costs (Fig. 9) come back to every printed digit when a shift's action on Z̄ is taken as A⁻¹ with A on both halves (ShiftAction::SourceTables). A CNOT circuit |x⟩ → |Ax⟩ takes Z̄ by A⁻ᵀ, which is how the operators move; ours follows the operators. On its printed basis a shift acts as A on the first half and Aᵀ on the second. - Its idle and shift rates are the circuit's failure undivided, where its text divides by the circuit's cycles. - Its native-rotation count of 510 includes the 265 with the identity on the pivot, which its definition excludes. One difference stays open: its gross capability at p = 10⁻⁴ needs a per-rotation failure of 8.3·10⁻⁷ that does not depend on the machine's size, against its factory's printed 4·10⁻⁸. Co-Authored-By: Claude Opus 5.5 <[email protected]>
wai-quantum: quantum_arch prices the 2021 surface-code machine
The architecture estimator could not express the machine of arXiv:1905.09749 (Quantum 5, 433), so its figures could not be checked. Its only clock was the step clock: every Toffoli waits a lattice-surgery beat of d cycles. That prices the source's 1,052-bit addition at 56.7 ms, where the source teleports each Toffoli's Clifford fixups away from the data and runs it at one 10 µs tick: 22 ms (its §2.11). It also had no two-level factory, which that machine and arXiv:2011.03494 use. Added, each held by a test against the source's printed figures: - Timing::tick_us and Timing::teleported_add_us: a Toffoli at the slower of the reaction time and the CCZ supply, not at the beat. The test holds the step clock's 56.7 ms beside the tick's 21.03 ms. - Timing::double_access_lookup_us and its uncomputation: lookups through access hallways on both sides of each row, half a beat an entry. - patch_cycle_error and DistilledCczFactory: 15-to-1 feeding 8T-to-CCZ, with the footprint and error rule of the source's cost script. - WindowedFactoringParams and windowed_factoring_estimate: the source's cost script, re-run. Every row of its RSA table comes back to the digits it prints, which it takes up to two. - The FeMoCo estimate of arXiv:2011.03494 on the same factory and clock: four factories at distances 19 and 31 tick at 38.75 µs, and 6.7·10⁹ Toffolis take 3 days. The module documents where the 2021 source disagrees with itself: its hand-worked §2.14 rounds as it goes (23 M where its script gives 19.25 M), and its §2.12 reads 6.4% where its script's formula gives 0.6%. Co-Authored-By: Claude Opus 5.5 <[email protected]>