QuantumCircuitOpt: An Open-source Framework for Provably Optimal Quantum Circuit Design

In recent years, the quantum computing community has seen an explosion of novel methods to implement non-trivial quantum computations on near-term hardware. An important direction of research has been to decompose an arbitrary entangled state, represented as a unitary, into a quantum circuit, that is, a sequence of gates supported by a quantum processor. It has been well known that circuits with longer decompositions and more entangling multi-qubit gates are error-prone for the current noisy, intermediate-scale quantum devices. To this end, there has been a significant interest to develop heuristic-based methods to discover compact circuits. We contribute to this effort by proposing QuantumCircuitOpt (QCOpt), a novel open-source framework which implements mathematical optimization formulations and algorithms for decomposing arbitrary unitary gates into a sequence of hardware-native gates. A core innovation of QCOpt is that it provides optimality guarantees on the quantum circuits that it produces. In particular, we show that QCOpt can find up to 57% reduction in the number of necessary gates on circuits with up to four qubits, and in run times less than a few minutes on commodity computing hardware. We also validate the efficacy of QCOpt as a tool for quantum circuit design in comparison with a naive brute-force enumeration algorithm. We also show how the QCOpt package can be adapted to various built-in types of native gate sets, based on different hardware platforms like those produced by IBM, Rigetti and Google. We hope this package will facilitate further algorithmic exploration for quantum processor designers, as well as quantum physicists.

[1]  Alan Edelman,et al.  Julia: A Fresh Approach to Numerical Computing , 2014, SIAM Rev..

[2]  DiVincenzo,et al.  Five two-bit quantum gates are sufficient to implement the quantum Fredkin gate. , 1996, Physical review. A, Atomic, molecular, and optical physics.

[3]  Dmitri Maslov,et al.  Automated optimization of large quantum circuits with continuous parameters , 2017, npj Quantum Information.

[4]  Laurence A. Wolsey,et al.  Mixed Integer Programming , 2008, Wiley Encyclopedia of Computer Science and Engineering.

[5]  Russell Bent,et al.  An adaptive, multivariate partitioning algorithm for global optimization of nonconvex programs , 2017, J. Glob. Optim..

[6]  Russell Bent,et al.  Piecewise Polyhedral Formulations for a Multilinear Term , 2021, Oper. Res. Lett..

[7]  Margaret Martonosi,et al.  Software Mitigation of Crosstalk on Noisy Intermediate-Scale Quantum Computers , 2019, ASPLOS.

[8]  Ngoc Mai Tran,et al.  Antibiotics Time Machines Are Hard to Build , 2017 .

[9]  Andrea Lodi,et al.  Mixed Integer Programming Computation , 2010, 50 Years of Integer Programming.

[10]  Gerhard W. Dueck,et al.  Quantum Circuit Simplification and Level Compaction , 2006, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[11]  Hanif D. Sherali,et al.  Disjunctive Programming , 2009, Encyclopedia of Optimization.

[12]  Igor L. Markov,et al.  On the CNOT-cost of TOFFOLI gates , 2008, Quantum Inf. Comput..

[13]  Peter W. Shor,et al.  Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer , 1995, SIAM Rev..

[14]  Ryan LaRose,et al.  Quantum-assisted quantum compiling , 2018, Quantum.

[15]  Barenco,et al.  Elementary gates for quantum computation. , 1995, Physical review. A, Atomic, molecular, and optical physics.

[16]  W. Wootters,et al.  Entanglement of a Pair of Quantum Bits , 1997, quant-ph/9703041.

[17]  Guowu Yang,et al.  Optimal synthesis of multiple output Boolean functions using a set of quantum gates by symbolic reachability analysis , 2006, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[18]  Robert E. Bixby,et al.  Presolve Reductions in Mixed Integer Programming , 2020, INFORMS J. Comput..

[19]  Robert E. Bixby,et al.  Mixed-Integer Programming: A Progress Report , 2004, The Sharpest Cut.

[20]  Iain Dunning,et al.  JuMP: A Modeling Language for Mathematical Optimization , 2015, SIAM Rev..

[21]  R. Feynman Simulating physics with computers , 1999 .

[22]  Katherine Yelick,et al.  QFAST: Quantum Synthesis Using a Hierarchical Continuous Circuit Space , 2020, 2003.04462.

[23]  Harsha Nagarajan,et al.  Juniper: An Open-Source Nonlinear Branch-and-Bound Solver in Julia , 2018, CPAIOR.

[24]  J. P. Home,et al.  Realization of a programmable two-qubit quantum processor , 2009, 0908.3031.

[25]  Garth P. McCormick,et al.  Computability of global solutions to factorable nonconvex programs: Part I — Convex underestimating problems , 1976, Math. Program..

[26]  John Preskill,et al.  Quantum Computing in the NISQ era and beyond , 2018, Quantum.

[27]  Gerhard W. Dueck,et al.  Optimization of Circuits for IBM's Five-Qubit Quantum Computers , 2018, 2018 21st Euromicro Conference on Digital System Design (DSD).

[28]  D. Bertsimas Statistics and Machine Learning via a Modern Optimization Lens , 2014 .

[29]  Scott Pakin,et al.  Quantum Algorithm Implementations for Beginners , 2018, ACM Transactions on Quantum Computing.

[30]  Harsha Nagarajan,et al.  Tightening McCormick Relaxations for Nonlinear Programs via Dynamic Multivariate Partitioning , 2016, CP.

[31]  Jakob Witzig,et al.  Computational aspects of infeasibility analysis in mixed integer programming , 2021, Mathematical Programming Computation.