Quantum Compilers
Overall Course Objectives
Classic computers use compilers to translate high-level programming languages into specific operations of the hardware architecture of the computer. This decoupling of the programming language from the underlying hardware architecture has allowed us to move away from low-level assembly programming and develop complex programs that work across different computer architectures, effectively enabling the digital transformation.
As quantum computers are reaching feasibility, quantum compilers will be needed to raise the abstraction level of quantum programming. While impressive accomplishments are observed in the physical realization of quantum computers, the development of quantum compilers is still lacking behind. Today, quantum programs are expressed as quantum circuits working on single qubits.
Based on classic compiler-theory and quantum information, this course will cover the components needed to develop a quantum compiler, which can translate a high-level programming language into feasible quantum circuits and mapping these circuits onto the qubits of the target quantum computer architecture.
See course description in Danish
Learning Objectives
- explain the structure of optimizing compilers and the functionality of the different phases
- explain the relation between high-level language, intermediate representation, analyses, and optimizations
- explain the process of code generation for quantum computers and the difference of doing so for different quantum computers in the NISQ era
- implement key optimization phases
- explain and derive analytic models for performance
- evaluate the performance of quantum computers
- explain the relationship between high-performance computers and quantum computers
- identify performance bottlenecks in quantum computer systems
Course Content
Compiler theory: The compilation process; Intermediate representations;
Optimization of quantum circuits: Circuit compression; Decompose; Optimal routing; Error mitigation
Targeting quantum computers in the NISQ era
Integration of QC with classical computing
Possible start times
- 6 – 20 (Wed 13-17)