Important announcement

Dear visitor,

Please note that this OpenCourseWare platform will be replaced at the end of 2026 by a new platform (under the same url ocw.tudelft.nl).

Courses and their contents that are currently available the platform will partly be migrated. URL’s for this content will change and content might be unavailable for some time. In addition, some courses will not be available anymore.

If you are linking to specific courses on this platform (for instance for your students), please take timely measures to avoid problems with access. Possible actions are:

  • Download the materials to your local platform (laptop, server)
  • For educators only (including TU Delft lecturers): Contact us at ocw@tudelft.nl and inform us what course you are using in what context (institute, program, period of use, number of students). We will research (in collaboration with the authors of the course) and decide if we will migrate the course, and if yes, can supply you with a new url.

Thank you.

2.3.1 Compiler & programming languages

Course subject(s) Module 2: Micro-architecture, compiler & programming language

People who design quantum algorithms cannot account for the specific details of a given quantum device. These details include the size of the device, as well as connectivity (which sets of qubits can be entangled with a single operation). In order to transform generic quantum algorithms into a form which can be executed on a device of our choosing, we’ll need a compiler, a classical computer program which finds a near-optimal fit between the desired quantum operations and the limits of near-term devices. These compilers, in turn, require us to express quantum algorithms in specific quantum programming languages. In these two lectures, Nader Khammassi and Carmen G. Almudever will introduce compilers and programming languages.

Main takeaways

  • A quantum compiler translates expressions of quantum algorithms which are abstract and ignore details of the hardware into a more concrete form which accounts for the specific hardware to which the compiler is associated.
  • An important limitation of near-term quantum hardware is connectivity: each qubit in a near-term device is only capable of undergoing an entangling operation with a few of its close neighbours. Every “long-range” operation must, therefore be decomposed into a sequence of nearest-neighbour operations.
  • To schedule quantum algorithms, we express them using dependency graphs: networks whose sites represent operations, with two sites connected with an arrow from site A to site B whenever operation B requires operation A to be finished before operation B can begin.
  • In order to execute quantum algorithms on hardware with limited connectivity, it is necessary to use SWAP operations to transfer qubit states from one location to another.
Creative Commons License
The Building Blocks of a Quantum Computer: Part 2 by TU Delft OpenCourseWare is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Based on a work at https://online-learning.tudelft.nl/courses/the-building-blocks-of-a-quantum-computer-part-2/.
Back to top
[sg_popup id=6]