A unified noise-aware compiler stack for NISQ

Two Key Challenges

Compile quantum programs from level of specification in research papers to ‘machine code’ in a way that minimises hardware errors.

For leading QEC codes like the surface code, the qubit overhead is often quoted to be around 1000 physical qubits per logical qubits, which means that millions of qubits would be required to perform Shor’s algorithm.

Research Idea

Expand existing languages and standards with quantum primitives, including errors.

Two-step architecture: intermediate representation, and high-level domain-specific language.

Methodology

Adapt two existing compilers:

  • LLVM/MLIR, expanded with QSSA [Grosser] or QIR primitives;
  • Choral [Montesi], a specification language for choreographic programming.

The Team

Tobias Grosser

Chris Heunen