Two Key Challenges
- Compiling in the presence of error
Compile quantum programs to ‘machine code’ that minimises computational error, by exploiting fine-grained information about errors inherent in the compilation process and hardware platform.
- Verifiable compiling
Verify the correctness of approximate and error-prone computations, up to quantifiable error bounds.
Research Idea
Provide solutions to the problem of compilation where the dual aspects of compilation and verification go hand-in-hand, each being used to inform the other.
Use this interplay to design fundamentally new types of compilers (i.e. that can handle error) and ones that come with powerful verification techniques
Methodology
Start with two academic compilers…
- PyZX & QuiZX: open-source libraries for quantum circuit optimisation, routing, simulation, and verification using the ZX-calculus [Kissinger]
- 2QAN: An open-source approximate application-specific compiler for Hamiltonian simulation [Browne]
… and add increasingly sophisticated error modelling.