Implementing an Exponential Quantum Advantage Algorithm
The progress of quantum computers in the last few years has been immense, with better and better quantum computers being developed each year. Nowadays there are quantum computers with hundreds of qubits that can compute quantum algorithms with circuit depth of up to a few thousand and still receive a significant signal. One of the key challenges is the development of efficient and novel quantum algorithms that are useful and offer exponential advantage over classical methods. One of the very few algorithms we know of under this definition is the Exponential Quantum Speedup in Simulating Coupled Classical Oscillators work, presented in 2023 by Ryan Babbush et al.
Like most quantum algorithms papers, this is a theoretical work. Taking a theoretical paper and implementing it in practice is a massive challenge with many obstacles that need to be overcome, both practical and theoretical.
Your challenge is to implement the above paper using the Classiq platform. Classiq is an end-to-end quantum software platform that enables you to design, optimize, analyze and execute quantum algorithms. Classiq utilizes the power of high-level functional design and enables you to focus on the algorithm you want to create rather than on the quantum circuit implementation of it.
The goal is to implement the largest and most advanced implementation of the above algorithm. You should aim to compile a circuit on 70-150 qubits with a depth between 10K-30K. In order to achieve the end result, it is highly recommended to work step-by-step, and to start with the smallest relevant example of the algorithm. Build your algorithm in a parametric way, utilizing high-level functional design, such that it will be easy for you to scale from a small, degenerate example (that can be simulated) to a large example.
- Understand the basics of the paper
- Learn the Classiq platform
- Complete the Classiq workshop notebooks
- Iteratively start implementing the smallest viable example of the algorithm while understanding the paper in-depth and mastering the Classiq algorithm
- Increase the complexity of the example and find the most advanced instance of the algorithm you can simulate.
- Final presentation that explains your solution and implementation
- Jupyter notebook(s) with your code
- The
.qmod
files that capture your models (a detailed explanation of how to do this can be found in this notebook) - The
.qprog
files that capture your quantum programs (an explanation of this can be found in this notebook)
Good luck!