Quantum Mechanics – Iterative Projection into Ground State Explained

computational physicsground-statequantum mechanicssimulations

In this paper, it says that one can "determine the ground state wave function by applying the projection operator $\exp(-\tau H)$ to an arbitrary initial state $|\Psi\rangle$," and that in the limit of $\tau \to \infty$, we have that $\exp(-\tau H)|\Psi\rangle$ converges to the true ground state of the system. It then goes on to state that that this projection cannot be done in a single step since terms in the Hamiltonian $H$ do not commute with each other. My question is two-fold:

  1. How do we know that $\exp(-\tau H)|\Psi\rangle$ converges to the true ground state of the system in the limit $\tau \to \infty$? I don't recall this coming up in any of my QM courses, but I might be missing something very self-evident here.
  2. Why does a Hamiltonian with non-commuting terms mean that we cannot do this projection in a single step? I understand how non-commuting terms cause difficulty when we want to split $\tau$ into many small pieces and "build up" to the full $\tau$ by applying the projection operator iteratively. However, the way this sentence is written in the paper makes me think that there is some a priori reason for why $\exp(-\tau H)|\Psi\rangle$ does not give the true ground state, after a single application, when $H$ contains non-commuting terms.

Thanks for the help!

Best Answer

Meng Cheng pretty much answered the question already, but it might still be helpful to elaborate on the meaning of "too hard to calculate $e^{-\tau H}$ for a finite $\tau$".

What hardness refers to is the computational complexity of the problem/proposed numerical algorithm. That is to say, given a problem of size $N$ (e.g. here in the paper referenced $N$ is the number of spins wished to simulate), how much memory and how much time do you need.

Why this is important is because we typically want to solve problems in which $N$ is big: obviously, computing $e^{-\tau H}$ for say a 1024x1024 Hamiltonian $H$ describing 10 spins is not a problem -- just type exp(H) in MATLAB or Mathematica. But ask MATLAB to exponentiate $H$ for 100 spins and your computer will crash.

Since exponentiation of a Hamiltonian typically results in a dense matrix, this has bad memory scaling: exponential in $N$. For scaling in time, see: https://mathoverflow.net/questions/239073/what-is-the-time-complexity-of-the-matrix-exponential

Therefore, naively trying to compute $e^{-\tau H}$ is folly.

The key insights that the paper uses are:

  1. Exponential over finite time can be written as product of many exponentials over small times $e^{-\tau H} = e^{-d \tau H}e^{-d \tau H}\cdots e^{-d \tau H}$ (this is not an approximation).

  2. For small time exponentials $e^{-d \tau H}$, it can be approximated (Trotter decomposition) as in Eq. 4 of the paper: $e^{-d\tau H} = e^{-d\tau H_z} e^{-d\tau H_y} e^{-d\tau H_x} + O(d\tau^2)$

  3. Naively you might think, $H_z, H_y, H_x$ are still big matrices, so exponentiating them is still hard, like in the general case. But what's nice about each $H_z, H_y, H_x$ is that they are each made of sums of local terms which commute. So the full matrix $e^{-d\tau H_z}$ is itself simply made of products of local exponentiations $e^{-d\tau H_{z,local}}$ where $H_{z,local}$ only acts on 4 sites (assuming a nearest-neighbor model) and is thus easy to do.

Furthermore, note that we intend to apply $e^{-\tau H}$ to a wavefunction. So we don't actually have to form the full $e^{-d \tau H_z}$ etc. which would be humongous. Instead we just apply $e^{-d\tau H_{z,local}}$ to each local part of the wavefunction. This is very fast and memory efficient!

Related Question