quantum_fabric_tensor_engine (opt-in): the gate's sixteen products per
pair as exact limb convolutions in one bf16 matrix multiply per tile of
512 pairs, accumulated in fp32, on a tensor processor's matrix engine.
Each 32-bit value is four 8-bit limbs (bf16 holds each exactly), every
limb product is at most 2^16 and every coefficient a sum of at most four,
so fp32 holds every partial sum exactly in any order: the argument holds
for any engine that multiplies bf16 and accumulates in fp32. The host
checks every coefficient is an integer below 2^24, assembles the products
in 64 bits and applies the fixed-point arithmetic, as the neural-processor
member's host does. The probe uses its own weight layout, sixteen
independent pairs a multiply.
The kernel (tensor_engine_helper.py) runs as a long-lived helper under the
Python WAI_QUANTUM_TENSOR_ENGINE_PYTHON names; today its target is the
kernel toolchain's simulator (Apache-2.0), so every certificate's
provenance is simulator:<versions>. Four mutants: the three host
constants, and Radix9, nine-bit limbs the engine's bf16 inputs cannot
hold, which the engine gets wrong.
Measured on the simulator: tensor_engine_member 9/9 in 340 s (66020
probe pairs, all four pinned certificates, circuits to 20 qubits, 4 of 4
mutants killed). Workflow: the simulator on the container runner, and
the absent case on linux-arm64, where the HIP and npu-cores absent legs
move too.
Co-Authored-By: Claude Opus 5.5 <[email protected]>