1,529 research outputs found
Formal Constraint-based Compilation for Noisy Intermediate-Scale Quantum Systems
Noisy, intermediate-scale quantum (NISQ) systems are expected to have a few
hundred qubits, minimal or no error correction, limited connectivity and limits
on the number of gates that can be performed within the short coherence window
of the machine. The past decade's research on quantum programming languages and
compilers is directed towards large systems with thousands of qubits. For near
term quantum systems, it is crucial to design tool flows which make efficient
use of the hardware resources without sacrificing the ease and portability of a
high-level programming environment. In this paper, we present a compiler for
the Scaffold quantum programming language in which aggressive optimization
specifically targets NISQ machines with hundreds of qubits. Our compiler
extracts gates from a Scaffold program, and formulates a constrained
optimization problem which considers both program characteristics and machine
constraints. Using the Z3 SMT solver, the compiler maps program qubits to
hardware qubits, schedules gates, and inserts CNOT routing operations while
optimizing the overall execution time. The output of the optimization is used
to produce target code in the OpenQASM language, which can be executed on
existing quantum hardware such as the 16-qubit IBM machine. Using real and
synthetic benchmarks, we show that it is feasible to synthesize near-optimal
compiled code for current and small NISQ systems. For large programs and
machine sizes, the SMT optimization approach can be used to synthesize compiled
code that is guaranteed to finish within the coherence window of the machine.Comment: Invited paper in Special Issue on Quantum Computer Architecture: a
full-stack overview, Microprocessors and Microsystem
A quantum procedure for map generation
Quantum computation is an emerging technology that promises a wide range of
possible use cases. This promise is primarily based on algorithms that are
unlikely to be viable over the coming decade. For near-term applications,
quantum software needs to be carefully tailored to the hardware available. In
this paper, we begin to explore whether near-term quantum computers could
provide tools that are useful in the creation and implementation of computer
games. The procedural generation of geopolitical maps and their associated
history is considered as a motivating example. This is performed by encoding a
rudimentary decision making process for the nations within a quantum procedure
that is well-suited to near-term devices. Given the novelty of quantum
computing within the field of procedural generation, we also provide an
introduction to the basic concepts involved.Comment: To be published in the proceedings of the IEEE Conference on Game
Verifying Results of the IBM Qiskit Quantum Circuit Compilation Flow
Realizing a conceptual quantum algorithm on an actual physical device
necessitates the algorithm's quantum circuit description to undergo certain
transformations in order to adhere to all constraints imposed by the hardware.
In this regard, the individual high-level circuit components are first
synthesized to the supported low-level gate-set of the quantum computer, before
being mapped to the target's architecture---utilizing several optimizations in
order to improve the compilation result. Specialized tools for this complex
task exist, e.g., IBM's Qiskit, Google's Cirq, Microsoft's QDK, or Rigetti's
Forest. However, to date, the circuits resulting from these tools are hardly
verified, which is mainly due to the immense complexity of checking if two
quantum circuits indeed realize the same functionality. In this paper, we
propose an efficient scheme for quantum circuit equivalence
checking---specialized for verifying results of the IBM Qiskit quantum circuit
compilation flow. To this end, we combine characteristics unique to quantum
computing, e.g., its inherent reversibility, and certain knowledge about the
compilation flow into a dedicated equivalence checking strategy. Experimental
evaluations confirm that the proposed scheme allows to verify even large
circuit instances with tens of thousands of operations within seconds or even
less, whereas state-of-the-art techniques frequently time-out or require
substantially more runtime. A corresponding open source implementation of the
proposed method is publicly available at https://github.com/iic-jku/qcec.Comment: 10 pages, to be published at International Conference on Quantum
Computing and Engineering (QCE20
Towards a generic compilation approach for quantum circuits through resynthesis
In this paper, we propose a generic quantum circuit resynthesis approach for
compilation. We use an intermediate representation consisting of Paulistrings
over {Z, I} and {X, I} called a ``mixed ZX-phase polynomial``. From this
universal representation, we generate a completely new circuit such that all
multi-qubit gates (CNOTs) are satisfying a given quantum architecture.
Moreover, we attempt to minimize the amount of generated gates.
The proposed algorithms generate fewer CNOTs than similar previous methods on
different connectivity graphs ranging from 5-20 qubits. In most cases, the CNOT
counts are also lower than Qiskit's. For large circuits, containing >= 100
Paulistrings, our proposed algorithms even generate fewer CNOTs than the TKET
compiler.
Additionally, we give insight into the trade-off between compilation time and
final CNOT count.Comment: 10 pages including references. 2 tables, 1 figur
- …