APS Logo

A Functional Approach to the Modular Construction of Quantum Logic: Part II

ORAL

Abstract

Many quantum languages use an object-oriented approach for the construction and manipulation of quantum circuits and logic. However, this approach is challenging for a compiled quantum binary in a NISQ accelerator model, as hardware-native instruction blocks must be determined and built at compile time. Thus the compiler must reason about the structure of the quantum logic without runtime memory access, i.e. it must avoid side-effects. Our solution is to introduce a quantum functional language extension to the C++ derived language of the Intel Quantum SDK. We introduce a new built-in type which abstracts a quantum accelerator call, allowing it to be passed into and out of C++ functions before being passed to the quantum accelerator. We also include several core built-in functions that users and libraries can use to build more elaborate transformations.

In this talk, we walk through the basic methods used in the compilation of this functional language extension, including the use of the LLVM toolchain for parsing and generating an intermediate representation (IR) and the use of a Pauli-based representation to uniformly build the quantum logic from the call structure of the IR.

Presenters

  • Albert T Schmitz

    Intel Corporation, Hillsboro

Authors

  • Albert T Schmitz

    Intel Corporation, Hillsboro