🤖 AI Summary
Existing type systems for quantum programming languages fail to precisely model local reversibility and controllability, particularly for circuits with conditional (with-computed) operations. Method: (1) We introduce the novel notion of a *controllable category*, unifying control flow and with-computed constructs; (2) we extend the Fu–Kishida–Ross–Selinger modal type system to support fine-grained, non-global tracking of reversibility and controllability; (3) we develop a compositional semantic framework based on dagger symmetric monoidal categories enriched over bisets. Contributions: (i) a proof of type safety for the extended Proto-Quipper syntax; (ii) soundness theorems establishing that both the type system and operational semantics are faithful with respect to the abstract categorical semantics; and (iii) the first formally grounded quantum programming language supporting all three fundamental quantum operations—reversal, control, and with-computed—in a unified, type-safe manner.
📝 Abstract
The quantum programming language Quipper supports circuit operations such as reversing and control, which allows programmers to control and reverse certain quantum circuits. In addition to these two operations, Quipper provides a function called with-computed, which can be used to program circuits of the form $g; f; g^{dagger}$. The latter is a common pattern in quantum circuit design. One benefit of using with-computed, as opposed to constructing the circuit $g ; f; g^{dagger}$ directly from $g$, $f$, and $g^{dagger}$, is that it facilitates an important optimization. Namely, if the resulting circuit is later controlled, only the circuit $f$ in the middle needs to be controlled; the circuits $g$ and $g^{dagger}$ need not even be controllable. In this paper, we formalize a semantics for reversible and controllable circuits, using a dagger symmetric monoidal category $mathbf{R}$ to interpret reversible circuits, and a new notion we call a controllable category $mathbf{N}$ to interpret controllable circuits. The controllable category $mathbf{N}$ encompasses the control and with-computed operations in Quipper. We extend the language Proto-Quipper with reversing, control and the with-computed operation. Since not all circuits are reversible and/or controllable, we use a type system with modalities to track reversibility and controllability. This generalizes the modality of Fu-Kishida-Ross-Selinger 2023. We give an abstract categorical semantics for reversing, control and with-computed, and show that the type system and operational semantics are sound with respect to this semantics. Lastly, we construct a concrete model using a generalization of biset enrichment from Fu-Kishida-Ross-Selinger 2022.