Quantum Programming
Quantum Programming
Sanders and Zuliani apply guarded commands and probabilistic-programming ideas to quantum program semantics.
Paper information (2000, MPC) — Jeff W. Sanders and Paolo Zuliani. DOI
Work
The paper studies quantum programs as a programming-language and semantics problem. Its central idea is to use guarded commands for conditional choice and probabilistic-programming methods for the branches introduced by measurement. Quantum operations, classical control, and probabilistic outcomes can therefore be discussed in one compositional program structure instead of only as a static circuit.
Contributions
- An early guarded-command style for expressing quantum programs.
- A connection between measurement branches and probabilistic-program reasoning.
- A demonstration that quantum program design can reuse compositional ideas about branching, control, and specifications from programming languages.
Limits
This is an early formal program model, not a complete specification for a modern quantum language. Its abstract semantics does not by itself cover hardware noise, compiler optimization, resource estimation, or dynamic device constraints; quantum data, type safety, and higher-order functions need later language work for fuller treatment. The probabilistic reading also depends on the paper's measurement and termination conventions.
Connections
The paper follows the program-description concerns of Conventions for Quantum Pseudocode and pushes them toward guarded commands and compositional semantics. Selinger's QPL language adds a typed language with superoperator semantics, while van Tonder's quantum lambda calculus provides a functional-calculus and equational-reasoning comparison. All three ask how quantum programs should be written, but at different abstraction levels.
Original paper
Jeff W. Sanders and Paolo Zuliani, Quantum Programming, in Mathematics of Program Construction (2000), DOI: 10.1007/10722010_6.