I would like to prepare an ansatz for VQE. I know UCC ansatz is one of the most useful ansatz, but I would like to reduce the number of CNOT.

From the matrix of a given Hamiltonian, can we know the ansatz for the given Hamiltonian needs entanglers or not?


1 Answer 1


I think that $UCC$ ansatz is good for chemistry related problems. However, if you an arbitrary Hamiltonian and want to find its smallest eigenvalue then it's not very obvious what the anstaz form should look like.... it will also depend on how you initialize your state. And if you define an anstaz with polynomial number of gates, you don't expect to be able to explore the entire Hilbert space.

Also, the important ingredient about VQE applying to chemistry related problems, like finding energies of electronic molecular Hamiltonian, is that this type of Hamiltonian can be written/decompose as the sum of polynomial terms of Pauli matrices.

$$ H = \sum h_i \sigma_i + \sum h_{ij}\sigma_{i}\sigma_{j} + \cdots $$

However, this is not true in general. Therefore, you have to be careful about this.

  • $\begingroup$ Thank you for your reply. In general, when we prepare an ansatz with larger number of CNOTs, can we obtain smaller energy ( closer to the ground-state energy ) ? $\endgroup$
    – Ashy
    Commented Apr 20, 2020 at 5:44
  • 1
    $\begingroup$ In general, if you create a circuit with longer depth then you should be able to explore a larger region of the Hilbert space. Thus if the ground state you are looking for is quite complicated then adding more depth will help. However, you don't just add gates randomly. There should be a structure into it. For instance, if I only add CNOT gates into my anstaz then I wouldn't get the right answer. VQE is a hybrid quantum classical algorithm... you are tuning the parameters of the anstaz after each iteration. $\endgroup$
    – KAJ226
    Commented Apr 21, 2020 at 6:26
  • 2
    $\begingroup$ Take a look at this paper: arxiv.org/abs/1704.05018 $\endgroup$
    – KAJ226
    Commented Apr 21, 2020 at 6:27
  • $\begingroup$ Also this: github.com/Qiskit/qiskit-aqua/tree/master/qiskit/aqua/… $\endgroup$
    – KAJ226
    Commented Apr 21, 2020 at 6:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.