I tried to find kernel space of a MPO which is density matrix of a MPS. I wonder rather than treating the MPO as a big matrix and use the regular kernel space finder ( which is very expensive) is there any tensor network trick or easier way I can do to simplify the calculation? Thanks!

We have a `linsolve`

(linear solver) function in the ITensorTDVP.jl package that could be tried for this. It lets you solve problems of the form `Ax=b`

where `A`

is an MPO and `x`

and `b`

are MPS. You could try it with `b=0`

. How well it might work could depend on the precise spectrum of the operator you are trying to study. (E.g. if there are many vectors in the kernel space it could be tricky to find them all; it depends.)

Here is the function `linsolve`

so you can see its interface and docstring:

https://github.com/ITensor/ITensorTDVP.jl/blob/main/src/linsolve.jl

And here is a code example (test, actually) that uses it:

https://github.com/ITensor/ITensorTDVP.jl/blob/main/test/test_linsolve.jl

Thank you Miles! I will try it.