Exponential of Hamiltonian as MPO

Hello,

I would like to construct the short-time evolution operator of a Hamiltonian (e^{-iH\Delta t}) as an MPO. I would like this operator to be exact, without Trotter error. This example code ITensors.jl/examples/gate_evolution/trotter_suzuki_decomposition.jl at e7740ebb8df26cbacc1671113656e702030e43bb · ITensor/ITensors.jl · GitHub looks like it should show how to do this, however I get the error ArgumentError: no valid permutation of dimensionswhen I try to run this.

Please could an alternate method for constructing this operator be provided? Thanks

There is no known method to do what you are asking without having some amount of Trotter error. (Also, in general no numerical methods are ‘exact’ in any real sense.) But there have been advancements in methods for making MPO representations of e^{-iH t} for rather general Hamiltonians H. Here are two ways:

(1) you can make an identity MPO, then act on it with Trotter gates with a small time step to make a good approximation of e^{-iH t}
(2) you could try to implement one of the formulas in this paper: https://arxiv.org/abs/2302.14181 for making MPO approximations of e^{-iH t} with varying scalings of Trotter errors. We do not have these formulas implemented in ITensor (except for the lowest-order one in the C++ version) but it would be an interesting feature to consider in the future.

I see, I was not aware this was not possible. I will use your suggestion of a Trotterization with a sufficiently high order which will serve the same purpose. And thank you for the interesting reference.