What's the fastest, most efficient way to multiply a quantum expression into a state vector? Is it representing the quantum expression symbolically? As a sparse matrix? As a dense matrix? What are the speedups, drawbacks and limits of the three?
Exact state vector calculations aren't going anywhere anytime soon. They have and will continue to have applications in spaces out of reach for quantum Monte Carlo, density functional theory, tensor network methods and even quantum computers (including future fault tolerant ones). Not to mention the role they will play with quantum-classical hybrid computing!
Sometimes you just have to have everything done with full quantum volume, fully exact to numerical precision numerics for your simulation.
Perhaps surprising or unsurprising, you don't actually need to store a Hamiltonian or a quantum expression as a matrix to do the vast majority of common tasks in exact quantum numerics: quantum algorithm emulation, ground state calculations, mid spectrum eigenstate isolation, continuous time evolution, quantum circuit/floquet models and more. All of these can be done while avoiding the allocation of a matrix.
In our most recent tutorial we show that not only does representing the problem symbolically have extreme memory advantages, it also has large speed advantages as well! You can see it here: https://lnkd.in/e6U67xzQ
If you'd like to get early access to the future of scientific computing, come checkout our closed beta!