# ReQWIRE: Reasoning about Reversible Quantum Circuits

@inproceedings{Rand2018ReQWIRERA, title={ReQWIRE: Reasoning about Reversible Quantum Circuits}, author={Robert Rand and Jennifer Paykin and Dong-Ho Lee and Steve Zdancewic}, booktitle={QPL}, year={2018} }

Common quantum algorithms make heavy use of ancillae: scratch qubits that are initialized at some state and later returned to that state and discarded. Existing quantum circuit languages let programmers assert that a qubit has been returned to the |0> state before it is discarded, allowing for a range of optimizations. However, existing languages do not provide the tools to verify these assertions, introducing a potential source of errors. In this paper we present methods for verifying that…

## 30 Citations

### Unqomp: synthesizing uncomputation in Quantum circuits

- Computer SciencePLDI
- 2021

Unqomp is presented, the first procedure to automatically synthesize uncomputation in a given quantum circuit, allowing the programmer to allocate and use temporary values analogously to classical computation, knowing they will be uncomputed by Unqomp.

### A verified optimizer for Quantum circuits

- Computer ScienceProc. ACM Program. Lang.
- 2021

VOQC is presented, the first fully verified optimizer for quantum circuits, written using the Coq proof assistant, and able to write and verify a broad range of optimizations in VOQC, including full-circuit transformations from cutting-edge optimizers.

### Static Analysis of Quantum Programs via Gottesman Types

- PhysicsArXiv
- 2021

It is shown how superdense coding and GHZ circuits entangle and disentangle qubits and how to safely dispose of ancillae and the efficiency of the typechecking algorithm both for simple deductions and those involving entanglement and measurement.

### Symbolic Reasoning about Quantum Circuits in Coq

- Computer ScienceJ. Comput. Sci. Technol.
- 2021

A symbolic approach to reasoning about quantum circuits is proposed, based on a small set of laws involving some basic manipulations on vectors and matrices, that scales better than the explicit one and is well suited to be automated in Coq.

### Verified compilation of Quantum oracles

- Computer ScienceProc. ACM Program. Lang.
- 2022

VQO, a high-assurance framework implemented with the Coq proof assistant, is presented, finding that VQO’s QFT-based arithmetic oracles require fewer qubits, sometimes substantially fewer, than those constructed using “classical” gates; the latter were nevertheless on par with or better than oracles produced by Quipper.

### Synthesizing Quantum-Circuit Optimizers

- Computer ScienceArXiv
- 2022

qeso is presented, an efficient approach for automatically synthesizing a quantum-circuit optimizer for a given quantum device that significantly outperforms leading compilers, such as ibm’s Qiskit and tket, on the majority of the circuits in a diverse benchmark suite.

### Verified Optimization in a Quantum Intermediate Representation Kesha Hietala

- Physics, Computer Science
- 2019

The power of sQIRe as a compiler intermediate representation of quantum programs by verifying a number of useful optimizations and its use as a tool for general verification by proving several quantum programs correct are demonstrated.

### A Verified Optimizer forQuantum Circuits

- Computer Science
- 2020

We present voqc, the first fully verified optimizer for quantum circuits, written using the Coq proof assistant. Quantum circuits are expressed as programs in a simple, low-level language called…

### Research Statement: Languages, Verification and Compilation for the Quantum Era

- Computer Science
- 2019

If the authors want useful quantum programs, they need to give programmers the tools to design, analyze, and execute them, and new and novel quantum programming languages, verification tools, and optimizing compilers to run their programs on constrained devices are needed.

### Toward certified quantum programming

- Computer ScienceArXiv
- 2020

The first scale-invariant verified implementations of non-trivial quantum algorithms, namely phase estimation (QPE) -- the purely quantum part of Shor algorithm for integer factoring -- and Grover search are implemented, proving by fact that applying formal verification to real quantum programs is possible and should be further developed.

## References

SHOWING 1-10 OF 17 REFERENCES

### QWIRE Practice: Formal Verification of Quantum Circuits in Coq

- Computer ScienceQPL
- 2017

A denotational semantics is formalized that interprets QWIRE circuits as superoperators on density matrices, and some simple quantum programs are proved, ensuring that quantum circuits are well-formed.

### Quipper: a scalable quantum programming language

- Computer Science, PhysicsPLDI
- 2013

Quipper, a scalable, expressive, functional, higher-order quantum programming language, which is geared towards a model of computation that uses a classical computer to control a quantum device, but is not dependent on any particular model of quantum hardware.

### REVS: A Tool for Space-Optimized Reversible Circuit Synthesis

- Computer ScienceRC
- 2017

This work presents REVS, a tool that allows to trade time against space, leading to circuits that have a significantly smaller memory footprint when compared to the Bennett method, based on an analysis of the data dependency graph underlying a given classical program.

### Verified Compilation of Space-Efficient Reversible Circuits

- Computer ScienceCAV
- 2017

A reversible circuit compiler called ReVerC is presented, which has been formally verified in F* and compiles circuits that operate correctly with respect to the input program and provably cleans temporary values.

### Factoring using $2n+2$ qubits with Toffoli based modular multiplication

- Computer ScienceQuantum Inf. Comput.
- 2017

An implementation of Shor's quantum algorithm to factor n-bit integers using only 2n+2 qubits using a purely Toffoli based modular multiplication circuit that evades most of the cost overheads originating from rotation synthesis and enables testing and localization of some faults in both, the logical level circuit and an actual quantum hardware implementation.

### An Introduction to Quantum Programming in Quipper

- PhysicsRC
- 2013

Many of Quipper's language features are illustrated by developing a few well known examples of Quantum computation, including quantum teleportation, the quantum Fourier transform, and a quantum circuit for addition.

### Reversible Computing - Fundamentals, Quantum Computing, and Applications

- Computer Science
- 2010

This book describes reversible computing from various points of view: Boolean algebra, group theory, logic circuits, low-power electronics, communication, software, quantum computing, multidisciplinary approach.

### Reversible Computing

- Computer ScienceICALP
- 1980

According to a physical interpretation, the central result of this paper is that i¢ is ideally possible to build sequential c/rcuits with zero internal power dissipation.

### Algebraic Effects, Linearity, and Quantum Programming Languages

- Computer Science, MathematicsPOPL
- 2015

A new elementary algebraic theory of quantum computation, built from unitary gates and measurement is presented, and an equational theory for a quantum programming language is extracted from thegebraic theory.

### Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer

- Computer ScienceSIAM Rev.
- 1999

Efficient randomized algorithms are given for factoring integers and finding discrete logarithms, two problems that are generally thought to be hard on classical computers and that have been used as the basis of several proposed cryptosystems.