ReQWIRE: Reasoning about Reversible Quantum Circuits

  title={ReQWIRE: Reasoning about Reversible Quantum Circuits},
  author={Robert Rand and Jennifer Paykin and Dong-Ho Lee and Steve Zdancewic},
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… 

Figures from this paper

Unqomp: synthesizing uncomputation in Quantum circuits

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

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

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

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

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

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

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

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

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

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.



QWIRE Practice: Formal Verification of Quantum Circuits in Coq

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

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

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

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

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

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

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

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

  • S. Staton
  • Computer Science, Mathematics
  • 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

  • P. Shor
  • Computer Science
    SIAM 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.