UCL-CCS / symmer

An efficient Python-based framework for implementing qubit subspace methods, reducing the resource requirements for near-term quantum simulations.
MIT License
37 stars 9 forks source link

Choosing optimal symmetries #26

Closed TimWeaving closed 2 years ago

TimWeaving commented 2 years ago

The success of CS-VQE is highly sensitive to the set of stabilizers one wishes to enforce.

Stabilizers should be selected such that they maximize commutation with respect to some weighting function so that optimal information is preserved under projection onto the contextual subspace.

TimWeaving commented 2 years ago

Developed a heuristic that maximises commutation with respect to some weighting operator #27. Found the UCCSD operator to work better than a weighting based on Hamiltonian term coefficients. This allows one to identify (and score) stabilizer subspaces without performing a full VQE routine each time - much more NISQ friendly!

TimWeaving commented 2 years ago

34 takes a similar approach to above, but biases the Hamiltonian w.r.t. the HOMO-LUMO gap. Performs better than stabilizer selection using the raw Hamiltonian, but not as effective as Coupled-Cluster motivated selection.

TimWeaving commented 2 years ago

Selection heuristic works by identifying a collection of high-importance terms and generating from that a symmetry generator. To identify a symmetry of the required size, the number of terms is modified accordingly.