Quantum Computing III: Algorithm & Software


Credit Hours:


Learning Objective:

  • Quantum Fourier transform and search algorithms
  • Hybrid quantum-classical algorithms
  • Quantum annealing, simulation and optimization algorithms
  • Quantum machine-learning algorithms
  • Cloud-based quantum programming


This course is part 3 of the series of Quantum computing courses, which covers aspects from fundamentals to present-day hardware platforms to quantum software and programming.

The goal of Part 3 is to discuss some of the key domain-specific algorithms that are developed by exploiting the fundamental quantum phenomena (e.g. entanglement) and computing models discussed in Part 1. We will begin by discussing classic examples of quantum Fourier transform and search algorithms, along with its application for factorization (the famous Shor's algorithm). Next, we will focus on the more recently developed algorithms focusing on applications to optimization, quantum simulation, quantum chemistry, machine learning, and data science.

A particularly exciting recent development has been the emergence of near-intermediate scale quantum (NISQ) computers. We will also discuss how these machines are driving new algorithmic development. A key aspect of the course is to provide hands-on training for running (few qubit instances of) the quantum algorithms on present-day quantum hardware. For this purpose, we will take advantage of the availability of cloud-based access to quantum computers and quantum software.

Topics Covered:



  • Quantum Computing I: Fundamentals OR experience with or knowledge of quantum computing fundamentals, including the following: 1) postulates of quantum mechanics; 2) gate-based quantum computing; 3) quantum errors and error correction; 3) adiabatic quantum computing; and 5) quantum applications and NISQ-era
  • Undergraduate linear algebra, differential equations, physics, and chemistry
  • Python programming

Applied / Theory:


Approximately 1 homework assignment/week




Two Exams



Recommended references: Learning Quantum Computation Using Qiskit

Computer Requirements:


ProEd Minimum Requirements: