I need to create equal amplitude superposition (Rokhsar-Kivelson type) superpositions to use as initial states in dynamics.
I checked and the required bond-dimension is not onerous, so it should be possible to represent these using MPS
Claude suggested two methods that I knew of – brute force construction and imaginary time evolution approximation to the projector – and the third which seemed more elegant using
MPO(sites, “MaxEntangler”)
seems like a neat trick but I never heard of MaxEntangler .. any quick thoughts?
I want to project your “X” (product) state to just one total Z sector – this will give an equal amplitude superposition of all states in that sector, which has entanglement but not much – only \chi\sim L/2 nonzero Schimdt values, which I assumed to mean it’s “easy”.
Amended:
I asked Claude for documentation for MaxEntagler just now and it backed off and elaborated on this approach which now makes sense – basically run DMRG to find a GS in that sector of a properly designed H, but I still need to check if it has any other hiccups. Let me know if you have a “standard” method for this.
Thanks again, Vadim
PS
I did find references to MaxEntangler on some forum last night but can’t find anymore), since I too suspected it hallucinated.
PPS
Hi Vadim,
If you happen to know of a good parent Hamiltonian for the states you want to make, then making the Hamiltonian and using DMRG to get the state can be a good option.
Also if you have a specific Z sector you are thinking of, then there may be some explicit constructions that are not too hard to pull off. But to have a general code for a arbitrary Z sector of a product state is a bit tough, I think. (I have thought of a more fancy idea to do this before but never wrote it up – it is like a kind of site-by-site truncation algorithm to gradually project an arbitrary state into a certain sector.)
One thing that may be useful is the Dicke state, which is the uniform sum of all configurations with the same Hamming weight. We are lucky that last year someone wrote down how to construct the MPS for this: