SimuQ: A Framework for Programming Quantum Hamiltonian Simulation with Analog Compilation
arXiv:2303.02775 · doi:10.1145/3632923
Abstract
Quantum Hamiltonian simulation, which simulates the evolution of quantum systems and probes quantum phenomena, is one of the most promising applications of quantum computing. Recent experimental results suggest that Hamiltonian-oriented analog quantum simulation would be advantageous over circuit-oriented digital quantum simulation in the Noisy Intermediate-Scale Quantum (NISQ) machine era. However, programming analog quantum simulators is much more challenging due to the lack of a unified interface between hardware and software. In this paper, we design and implement SimuQ, the first framework for quantum Hamiltonian simulation that supports Hamiltonian programming and pulse-level compilation to heterogeneous analog quantum simulators. Specifically, in SimuQ, front-end users specify the target quantum system with Hamiltonian Modeling Language, and the Hamiltonian-level programmability of analog quantum simulators is specified through a new abstraction called the abstract analog instruction set (AAIS) and programmed in AAIS Specification Language by hardware providers. Through a solver-based compilation, SimuQ generates executable pulse schedules for real devices to simulate the evolution of desired quantum systems, which is demonstrated on superconducting (IBM), neutral-atom (QuEra), and trapped-ion (IonQ) quantum devices. Moreover, we demonstrate the advantages of exposing the Hamiltonian-level programmability of devices with native operations or interaction-based gates and establish a small benchmark of quantum simulation to evaluate SimuQ's compiler with the above analog quantum simulators.
34 pages, 15 figures, 3 tables. Appears in POPL 2024. The code is available at https://github.com/PicksPeng/SimuQ. A website is available at https://pickspeng.github.io/SimuQ/
References in corpus (28)
- SciPy 1.0--Fundamental Algorithms for Scientific Computing in Python
- The density-matrix renormalization group in the age of matrix product states
- Probing many-body dynamics on a 51-atom quantum simulator
- Photonic quantum technologies
- A Quantum Approximate Optimization Algorithm
- Quantum Phases of Matter on a 256-Atom Programmable Quantum Simulator
- Probing Topological Spin Liquids on a Programmable Quantum Simulator
- Simple pulses for elimination of leakage in weakly nonlinear qubits
- A Theory of Trotter Error
- Quantum Optimization of Maximum Independent Set using Rydberg Atom Arrays
- Prospects for Spin-Based Quantum Computing
- Observation of gauge invariance in a 71-site Bose-Hubbard quantum simulator
- Software Mitigation of Crosstalk on Noisy Intermediate-Scale Quantum Computers
- Qiskit Pulse: Programming Quantum Computers Through the Cloud with Pulses
- An Introduction to Quantum Error Correction and Fault-Tolerant Quantum Computation
- First-principles analysis of cross-resonance gate operation
- A Verified Optimizer for Quantum Circuits
- Optimal Layout Synthesis for Quantum Computing
- Finite-range interacting Ising quantum magnets with Rydberg atoms in optical lattices - From Rydberg superatoms to crystallization
- Hamiltonian Simulation Algorithms for Near-Term Quantum Hardware
- Pulser: An open-source package for the design of pulse sequences in programmable neutral-atom arrays
- Simulating the dynamics of braiding of Majorana zero modes using an IBM quantum computer
- Circuit optimization of Hamiltonian simulation by simultaneous diagonalization of Pauli clusters
- Resource-Efficient Quantum Computing by Breaking Abstractions
- Lecture Notes on Quantum Algorithms
- Analogue Quantum Simulation with Fixed-Frequency Transmon Qubits
- Graph Optimization Perspective for Low-Depth Trotter-Suzuki Decomposition
- Quantum Hamiltonian Descent