ProjectQ: An Open Source Software Framework for Quantum Computing
arXiv:1612.08091 · doi:10.22331/q-2018-01-31-49
Abstract
We introduce ProjectQ, an open source software effort for quantum computing. The first release features a compiler framework capable of targeting various types of hardware, a high-performance simulator with emulation capabilities, and compiler plug-ins for circuit drawing and resource estimation. We introduce our Python-embedded domain-specific language, present the features, and provide example implementations for quantum algorithms. The framework allows testing of quantum algorithms through simulation and enables running them on actual quantum hardware using a back-end connecting to the IBM Quantum Experience cloud service. Through extension mechanisms, users can provide back-ends to further quantum hardware, and scientists working on quantum compilation can provide plug-ins for additional compilation, optimization, gate synthesis, and layout strategies.
Version accepted by Quantum
References in corpus (3)
Cited by in corpus (144)
- A Quantum Engineer's Guide to Superconducting Qubits
- Quantum Chemistry in the Age of Quantum Computing
- Variational Quantum Computation of Excited States
- Strawberry Fields: A Software Platform for Photonic Quantum Computing
- Qulacs: a fast and versatile quantum circuit simulator for research purpose
- Resource-Aware Quantum Programming with General Recursion and Quantum Control
- Differentiable Learning of Quantum Circuit Born Machine
- Quantum computational finance: Monte Carlo pricing of financial derivatives
- NetSquid, a NETwork Simulator for QUantum Information using Discrete events
- QuEST and High Performance Simulation of Quantum Computers
- PennyLane: Automatic differentiation of hybrid quantum-classical computations
- Distributed Quantum Computing: a Survey
- Open source software in quantum computing
- 0.5 Petabyte Simulation of a 45-Qubit Quantum Circuit
- Challenges and Opportunities of Near-Term Quantum Computing Systems
- Avoiding local minima in variational quantum eigensolvers with the natural gradient optimizer
- Overview and Comparison of Gate Level Quantum Software Platforms
- Compiling quantum circuits to realistic hardware architectures using temporal planners
- Qibo: a framework for quantum simulation with hardware acceleration
- TensorCircuit: a Quantum Software Framework for the NISQ Era
- Yao.jl: Extensible, Efficient Framework for Quantum Algorithm Design
- Variational Quantum algorithm for Poisson equation
- Quantum Software Engineering: Landscapes and Horizons
- A Verified Optimizer for Quantum Circuits
- Classical Optimizers for Noisy Intermediate-Scale Quantum Devices
- SimulaQron - A simulator for developing quantum internet software
- Near-Term Quantum Computing Techniques: Variational Quantum Algorithms, Error Mitigation, Circuit Compilation, Benchmarking and Classical Simulation
- QuTiP 5: The Quantum Toolbox in Python
- QuNetSim: A Software Framework for Quantum Networks
- QuantumCumulants.jl: A Julia framework for generalized mean-field equations in open quantum systems
- An Experimental Microarchitecture for a Superconducting Quantum Processor
- Accuracy and Resource Estimations for Quantum Chemistry on a Near-term Quantum Computer
- staq -- A full-stack quantum processing toolkit
- Tequila: A platform for rapid development of quantum algorithms
- Probing quantum processor performance with pyGSTi
- Crosstalk Suppression for Fault-tolerant Quantum Error Correction with Trapped Ions
- A Deductive Verification Framework for Circuit-building Quantum Programs
- QuanEstimation: An open-source toolkit for quantum parameter estimation
- Partial Compilation of Variational Algorithms for Noisy Intermediate-Scale Quantum Machines
- Two-step approach to scheduling quantum circuits
- Pulse-level noisy quantum circuits with QuTiP
- Mutual information-assisted Adaptive Variational Quantum Eigensolver
- Experimental test of non-macrorealistic cat-states in the cloud
- Partonic collinear structure by quantum computing
- qTorch: The Quantum Tensor Contraction Handler
- A Roadmap for Automating the Selection of Quantum Computers for Quantum Algorithms
- Quantum Computing: An Overview Across the System Stack
- Optimizing Quantum Circuits for Arithmetic
- QASMBench: A Low-level QASM Benchmark Suite for NISQ Evaluation and Simulation
- Validating Quantum-Classical Programming Models with Tensor Network Simulations
- NetQASM -- A low-level instruction set architecture for hybrid quantum-classical programs in a quantum internet
- Full-Stack, Real-System Quantum Computer Studies: Architectural Comparisons and Design Insights
- SQUARE: Strategic Quantum Ancilla Reuse for Modular Quantum Programs via Cost-Effective Uncomputation
- Computational Capabilities and Compiler Development for Neutral Atom Quantum Processors: Connecting Tool Developers and Hardware Experts
- Tree tensor network classifiers for machine learning: from quantum-inspired to quantum-assisted
- HOQST: Hamiltonian Open Quantum System Toolkit
- Quantum Divide and Compute: Exploring The Effect of Different Noise Sources
- Generative machine learning with tensor networks: benchmarks on near-term quantum computers
- Quantum Accelerators for High-Performance Computing Systems
- Scaling Up Electronic Structure Calculations on Quantum Computers: The Frozen Natural Orbital Based Method of Increments
- Quantum Annealing-Based Software Components: An Experimental Case Study with SAT Solving
- Formal Constraint-based Compilation for Noisy Intermediate-Scale Quantum Systems
- cQASM v1.0: Towards a Common Quantum Assembly Language
- Quantum simulation with just-in-time compilation
- A novel approach to noisy gates for simulating quantum computers
- Enabling Dataflow Optimization for Quantum Programs
- Efficient calculation of gradients in classical simulations of variational quantum algorithms
- Benchmarking Quantum Computer Simulation Software Packages: State Vector Simulators
- Efficient and Effective Quantum Compiling for Entanglement-based Machine Learning on IBM Q Devices
- Noise-Adaptive Compiler Mappings for Noisy Intermediate-Scale Quantum Computers
- Quantum Simulations of SO(5) Many-Fermion Systems using Qudits
- A tutorial introduction to quantum circuit programming in dependently typed Proto-Quipper
- Modular Software for Real-Time Quantum Control Systems
- Quantum Advantage Seeker with Kernels (QuASK): a software framework to speed up the research in quantum machine learning
- A Scalable Decoder Micro-architecture for Fault-Tolerant Quantum Computing
- Qibolab: an open-source hybrid quantum operating system
- QChemistry: A quantum computation platform for quantum chemistry
- Introduction to UniversalQCompiler
- Integration of Quantum Accelerators with High Performance Computing -- A Review of Quantum Programming Tools
- Estimating Phosphorescent Emission Energies in Ir(III) Complexes using Large-Scale Quantum Computing Simulations
- Observation of exceptional point in a PT broken non-Hermitian system simulated using a quantum circuit
- Factoring with n+2 clean qubits and n-1 dirty qubits
- A Benchmarking Study of Quantum Algorithms for Combinatorial Optimization
- Using Reinforcement Learning to find Efficient Qubit Routing Policies for Deployment in Near-term Quantum Computers
- Assertion-Based Optimization of Quantum Programs
- Optimizing Quantum Programs against Decoherence: Delaying Qubits into Quantum Superposition
- Exploring Light-Cone Distribution Amplitudes from Quantum Computing
- Scattering Amplitude from Quantum Computing with Reduction Formula
- Optimizing Quantum Algorithms on Bipotent Architectures
- Optimizing Gate Decomposition for High-Level Quantum Programming
- Unitary Entanglement Construction in Hierarchical Networks
- Benchmarking Quantum State Transfer on Quantum Devices using Spatio-Temporal Steering
- Hybrid quantum-classical circuit simplification with the ZX-calculus
- Supervised learning of random quantum circuits via scalable neural networks
- iQuantum: A Case for Modeling and Simulation of Quantum Computing Environments
- SANQ: A Simulation Framework for Architecting Noisy Intermediate-Scale Quantum Computing System
- Distributed Quantum Computing with QMPI
- The T-Complexity Costs of Error Correction for Control Flow in Quantum Computation
- Enabling Accuracy-Aware Quantum Compilers using Symbolic Resource Estimation
- Integrated Analysis of Performance and Resource of Large-Scale Quantum Computing
- Calibration-Aware Transpilation for Variational Quantum Optimization
- Qsun: an open-source platform towards practical quantum machine learning applications
- Realistic simulation of quantum computation using unitary and measurement channels
- Simulation of Quantum Computers: Review and Acceleration Opportunities
- Towards Optimizations of Quantum Circuit Simulation for Solving Max-Cut Problems with QAOA
- Quantum cellular automata for quantum error correction and density classification
- Fast simulation of quantum algorithms using circuit optimization
- Graph Optimization Perspective for Low-Depth Trotter-Suzuki Decomposition
- Formal Methods for Quantum Programs: A Survey
- SurfBraid: A concept tool for preparing and resource estimating quantum circuits protected by the surface code
- Advantages of a modular high-level quantum programming framework
- A new control- and management architecture for SDN-enabled quantum key distribution networks
- Initial-State Dependent Optimization of Controlled Gate Operations with Quantum Computer
- A systematic mapping on quantum software development in the context of software engineering
- Extending C++ for Heterogeneous Quantum-Classical Computing
- Managing approximation errors in quantum programs
- Methods for Classically Simulating Noisy Networked Quantum Architectures
- Quantifying Grover speed-ups beyond asymptotic analysis
- Sized Types for low-level Quantum Metaprogramming
- Quantum machine learning for multiclass classification beyond kernel methods
- Quantum Computing in Pharma: A Multilayer Embedding Approach for Near Future Applications
- Optimizing Electronic Structure Simulations on a Trapped-ion Quantum Computer using Problem Decomposition
- QForte: an efficient state simulator and quantum algorithms library for molecular electronic structure
- qlbm -- A Quantum Lattice Boltzmann Software Framework
- Bit-Slicing the Hilbert Space: Scaling Up Accurate Quantum Circuit Simulation to a New Level
- Efficient classical calculation of the Quantum Natural Gradient
- Full-counting statistics of particle distribution on a digital quantum computer
- Locating quantum critical points with shallow quantum circuits
- Symbolic quantum programming for supporting applications of quantum computing technologies
- Qumin, a minimalist quantum programming language
- Composability of global phase invariant distance and its application to approximation error management
- Efficient Construction of Functional Representations for Quantum Algorithms
- Considering Decoherence Errors in the Simulation of Quantum Circuits Using Decision Diagrams
- Simulation of Lennard-Jones Potential on a Quantum Computer
- EmuPlat: A Framework-Agnostic Platform for Quantum Hardware Emulation with Validated Transpiler-to-Pulse Pipeline
- High-performance parallel classical scheme for simulating shallow quantum circuits
- Classical and Quantum Data Interaction in Programming Languages: A Runtime Architecture
- Wrangling Rogues: Managing Experimental Post-Moore Architectures
- QUANTIFY: A framework for resource analysis and design verification of quantum circuits
- Exploring the Impact of Affine Loop Transformations in Qubit Allocation
- Encoding High-level Quantum Programs as SZX-diagrams
- Proto-Quipper with Reversing and Control
- Enabling Retargetable Optimizing Compilers for Quantum Accelerators via a Multi-Level Intermediate Representation
- Quantum Gate Pattern Recognition and Circuit Optimization for Scientific Applications