TensorKit.jl icon indicating copy to clipboard operation
TensorKit.jl copied to clipboard

Support of fermionic systems

Open diret47 opened this issue 2 years ago • 13 comments

Hi, Jutho. Is it possible to compute fermionic PEPS with TensorKit? For example Hubbard model?

diret47 avatar Dec 06 '23 22:12 diret47

Hi @diret47 . TensorKit.jl supports tensors with fermionic symmetries, such that e.g. the necessary signs are automatically included upon permuting tensor legs.

However, TensorKit is a low-level library and does not contain higher level tensor network algorithms. For this, you should look at for example MPSKit.jl and PEPSKit.jl. Support for fermions in PEPSKit.jl is not yet included, but something we will be actively working on in the near future.

Jutho avatar Dec 06 '23 22:12 Jutho

@diret47, I've recently implemented the contraction of fermionic PEPS in this branch of PEPSKit.jl .

There is currently no support for optimization of states as this would require evaluation of the gradient which is a formidable task... The plan is to bypass this trough automatic differentiation but this first requires some updates within TensorKit.jl and TensorOperations.jl .

Gertian avatar Dec 07 '23 08:12 Gertian

@diret47, I've recently implemented the contraction of fermionic PEPS in this branch of PEPSKit.jl .

There is currently no support for optimization of states as this would require evaluation of the gradient which is a formidable task... The plan is to bypass this trough automatic differentiation but this first requires some updates within TensorKit.jl and TensorOperations.jl .

That's awesome. I suppose we can already contract fPEPS by PEPSKit.jl easily. I hope implementation of AD optimization would be updated soon. I think one can use some SVD fashion optimization as a expedient now.

diret47 avatar Dec 09 '23 22:12 diret47

@diret47 , what do you mean with SVD fashion optimization ?

Gertian avatar Dec 12 '23 21:12 Gertian

@diret47 , what do you mean with SVD fashion optimization ?

Sorry, I just mean that sth like full update and simple update in iPEPS. I suppose that the optimization like DMRG may also be used in iPEPS, but it's not exact.

diret47 avatar Dec 12 '23 23:12 diret47

Is there any document on TensorKit that explains the details of treating the fermion signs and swap operations in PEPS?

Confusio avatar May 20 '24 15:05 Confusio

I think the theoretic part is covered best in this paper: https://arxiv.org/abs/2404.14611 The @tensor macro in TensorKit follows that convention, where a twist (fermionic sign) appears for contracting "ket"s with "bra"s, and that paper should then show in what PEPS contractions this should be counteracted with supplementary twists.

I would also recommend to keep an eye on the PEPSKit.jl repo, we are also working on flushing out the details for fermionic symmetries in that library using TensorKit.

I do apologize for the lack of documentation on this topic, this is also something we are still working on.

lkdvos avatar May 21 '24 13:05 lkdvos

@lkdvos , @diret47 this is now implemented in PEPSKit right ?

Gertian avatar Aug 14 '24 06:08 Gertian

@lkdvos , @diret47 this is now implemented in PEPSKit right ?

Really I found that there is an new test /test/pwave.jl on p-wave superconductivity. Seems Hubbard model is not implemented now but I think it might come soon.

diret47 avatar Oct 25 '24 00:10 diret47

In principle this should indeed all just work, I quickly added the Hamiltonian in a draft PR for convenience, but keep in mind that I haven't checked this. If you could compare this to some cases you know the answers for, I would be very happy to hear the results.

https://github.com/QuantumKitHub/PEPSKit.jl/pull/80

lkdvos avatar Oct 26 '24 09:10 lkdvos

@Jutho Hello Jutho, Does the "ncon" in TensorOperation.jl support the fermionic contraction?

WiseLu avatar Nov 02 '25 03:11 WiseLu

Yes, it should be equivalent to the corresponding @tensor call. We hope to update the TensorKit documentation soon to provide more information about the fermionic (and anyonic) tensor contractions

Jutho avatar Nov 02 '25 09:11 Jutho

@Jutho Oh, thank you!

WiseLu avatar Nov 02 '25 13:11 WiseLu