1
$\begingroup$

My main goal is to find eigenvalues of some hamiltonian matrix $A$. When implementing Quantum Phase Estimation, I need to provide my circuit with informations about $A$. From what I have seen so far, this is usually done with hamiltonian simulation, particularly with Qiskit's PauliEvolutionGate. Now, I need to choose some $t$ parameter. Here I have a few questions:

  1. What exactly is the meaning of $t$? I don't quite understand how choosing a different $t$ affects the measurement outcome. Some papers say a theoretical choice (whatever that means) of $t$ is $t = \frac{\pi}{\lambda_{max}}$. Not when multiplying this value by $0.1$ (to introduce some "noise") it's not like my estimation of eigenvalues are less accurate, but more like are all together shifted by some value. So, is it correct to assume, one needs to find a very good $t$ value in order to have a somewhat correct estimation of the eigenvalues of $A$?
  2. How else to choose $t$? When I need the largest eigenvalue of some matrix $A$, this is usually some very costly computation one needs to perform. There is some algorithm that estimates the largest eigenvalue, namely this paper, but I don't quite understand how to implement this as a circuit.
  3. Now when I provide my circuit with information of $A$ in the form of $\exp(iAt)$ the eigenvalues are in form of $\exp(i \lambda t)$. So far retransforming the eigenvalues I got from QPE via $\lambda_{eigval(A)} = \frac{2 \pi \lambda_{approxEigval(exp(iAt))} }{t}$ derived from $$ U |x\rangle = \lambda |x\rangle \\ e^{iAt} |x\rangle = e^{2\pi i\lambda_{approx}} |x\rangle\\ e^{t \lambda t} |x\rangle = e^{2\pi i\lambda_{approx}} |x\rangle$$ and comparing coefficients, resulted in wrong answers (but at least in the ballpark like 17 instead of 11.)

It's hard for me to find informations about hamiltonian simulation especially addressing the questions I have on the web. I am a mathematician, so more mathematical explanations instead of physical ones are appreciated but not required. If you could link or name me any papers, books and or YouTube videos that would help me a lot along your comments here.

$\endgroup$

2 Answers 2

2
$\begingroup$

If your eigenvalues of $A$ are $\lambda_n$, then the eigenvalues of $e^{iAt}$ are $e^{i\lambda_n t}$. These values are periodic in $2\pi$, which could lead to some ambiguity in correspondence between the unitary and $A$. Thus, for phase estimation to be effective, you want uniqueness of those values, i.e. you want the values of $\{\lambda_nt\}$ to sit in a range, usually $[0,2\pi)$ (or perhaps $[-\pi,\pi)$). Your goal is just to pick $t$ to guarantee that this happens based on some prior knowledge of $A$. To that end, an estimate of the maximum eigenvalue is not very helpful. You want an upper bound (and a lower bound on the minimum eigenvalue). The tighter a bound you can get, the more accurate your phase estimation will be (since for a $t$ bit phase estimation, you're dividing the $2\pi$ range into $2^t$ bins). There's various things that you can do to get that estimate, but the typically depend on having some prior knowledge about properties of the matrix.

$\endgroup$
2
  • $\begingroup$ Assuming I have some lower and upper bound of matrixs A eigenvalues. How would you choose t then? Like $t = \frac{\lambda_{min}}{\lambda_{max}}$? $\endgroup$
    – Max
    Commented Jun 4 at 15:58
  • $\begingroup$ $t=2\pi/(\lambda_{\max}-\lambda_{\min})$ $\endgroup$
    – DaftWullie
    Commented Jun 6 at 6:39
0
$\begingroup$

I refer you to the following notebook for a full circuit implementation and simulation of eigenvalue computation of hamiltonian matrix.

$\endgroup$
1
  • $\begingroup$ @Max I went through the mentioned paper, and I think it is possible to write a rather simple code using classiq that implements it. If you want to work on it together, let me know :) $\endgroup$
    – or samimi
    Commented Jun 5 at 9:32

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.