3
$\begingroup$

I'm trying to figure out how the HHL algorithm works from reading Dervovic's paper and IBM's tutorial.

Dervovic shows the following HHL circuit in Fig 5:

dervovic

whereas IBM uses:

ibm

I want to clarify the IBM circuit.

  • The $\vert{0}\rangle$ is the ancilla register (stores eigenvalues of $A^{-1}$ after doing $R$ rotation), $\vert{0}\rangle$ with $n_l$ corresponds to the clock register (stores eigenvalues of $A$), and $\vert{0}\rangle$ with $n_b$ corresponds to the input register (stores solution $x$). Is this correct?
  • What is the purpose of the $\vert{0}\rangle$ register with $n_a$? It doesn't seem to be referenced in the IBM text.
$\endgroup$

1 Answer 1

2
$\begingroup$

community wiki


Your first bullet is probably correct, although I wouldn't refer to the one single qubit $|0\rangle$ at the top as storing eigenvalues of $A^{-1}$ - the eigenvalues of $A^{-1}$ are stored in the $n_l$ clock qubits after rotation. The single qubit at the top is used as a flag register to tell whether post-selection succeeded or not. This one qubit is register $S$ in Dervovic's circuit.

Also the $n_a$ qubits are probably an ancillary register for the state preparation and the Hamiltonian simulation used in the phase estimation and rotation/inversion. This is probably the "extra register" referred to in the tutorial. They always are uncomputed and revert back to $|0\rangle$ - after state preparation, and again after each time-step in the Hamiltonian simulation. Dervovic ignores these auxiliary ancilla qubits (but they are implicitly there).

$\endgroup$

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.