Get an overview, necessary background and practical hands-on experience with the emerging field of quantum computing. Course curriculum focuses on providing you with a fundamental understanding of the physical principles of and the necessary mathematical apparatus for quantum computing.
You study the fundamental knowledge that every engineer working with these systems must have: vector spaces and wave functions, superposition and quantum entanglement, quantum gates and measurements. You also get an introduction to the hardware architectures used to build practical quantum computers, and the algorithms that can achieve exponential improvements in processing speed on these platforms, such as prime number generation and factoring, search, and tensor networks. In addition, you learn about specific software packages and tools that will allow you to use these algorithms on actual cloud-based physical quantum computers.
While working through problem sets and assignments, you also gain hands-on experience with the tools and best practices of quantum computing. This course is programming language agnostic, but a large portion of current libraries utilizing quantum computing are written in high-level languages, such as Python, Java or Q# (Q-Sharp). The course is primarily offered in Python, with Javascript or Q# available for supported self-study, and requires completion of weekly readings, discussions, homework assignments and programming assignments.