An updated LLVM-based quantum research compiler with further OpenQASM support

@article{Litteken2020AnUL,
  title={An updated LLVM-based quantum research compiler with further OpenQASM support},
  author={Andrew Litteken and Yung-Ching Fan and Devina Singh and Margaret Martonosi and Fred Chong},
  journal={Quantum Science \& Technology},
  year={2020},
  volume={5}
}
Quantum computing is a rapidly growing field with the potential to change how we solve previously intractable problems. Emerging hardware is approaching a complexity that requires increasingly sophisticated programming and control. Scaffold is an older quantum programming language that was originally designed for resource estimation for far-future, large quantum machines, and ScaffCC is the corresponding LLVM-based compiler. For the first time, we provide a full and complete overview of the… 

Verified Compilation of Quantum Oracles

Quantum algorithms often apply classical operations, such as arithmetic or predicate checks, over a quantum superposition of classical data; these so-called oracles are often the largest components

Faster and More Reliable Quantum SWAPs via Native Gates

TLDR
The Optimized SWAP is introduced, a method for improving the speed and reliability of SWAPs at the level of the superconducting hardware’s native gateset, which relies on four techniques: SWAP Orientation, Cross-Gate Pulse Cancellation, Commutation through Cross-Resonance, and 4) Cross- Resonance Polarity.

References

SHOWING 1-10 OF 27 REFERENCES

Scaffold: Quantum Programming Language

TLDR
The Scaffold programming language, its design goals, and related tools are described, which were formulated to make it easy to express an algorithm with so many disparate components in a clean and efficient manner.

QuaFL: a typed DSL for quantum programming

TLDR
This work introduces QuaFL, a statically typed domain-specific programming language for writing high-level definitions of algorithms that can be compiled into logical quantum circuits and provides type size annotations that can facilitate automated computation of the quantities of quantum resources that will be necessary to run the compiled program.

Noise-Adaptive Compiler Mappings for Noisy Intermediate-Scale Quantum Computers

TLDR
It is shown that fine grained spatial and temporal variations in hardware parameters can be exploited to obtain an average 2.9x (and up to 18x) improvement in program success rate over the industry standard IBM Qiskit compiler.

Optimized Compilation of Aggregated Instructions for Realistic Quantum Computers

TLDR
A universal quantum compilation methodology that aggregates multiple logical operations into larger units that manipulate up to 10 qubits at a time and optimizes these aggregates by finding commutative intermediate operations that result in more efficient schedules and creating custom control pulses optimized for the aggregate.

Partial Compilation of Variational Algorithms for Noisy Intermediate-Scale Quantum Machines

TLDR
This work proposes two strategies for partial compilation, exploiting the structure of variational circuits to pre-compile optimal pulses for specific blocks of gates, and indicates significant pulse speedups ranging from 1.5x-3x in typical benchmarks, with only a small fraction of the compilation latency of GRAPE.

Programming languages and compiler design for realistic quantum hardware

TLDR
The challenge is to find abstractions that expose key details while hiding enough complexity in quantum toolflows to bridge the gap between hardware size and reliability requirements of quantum computing algorithms and physical machines foreseen within the next ten years.

Magic-State Functional Units: Mapping and Scheduling Multi-Level Distillation Circuits for Fault-Tolerant Quantum Architectures

TLDR
This paper presents the first detailed designs of hardware functional units that implement space-time optimized magic-state factories for surface code error-corrected machines, and proposes two novel mapping techniques: braid repulsion and dipole moment braid rotation.

Quipper: a scalable quantum programming language

TLDR
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.