+1 vote
asked by (610 points)

Dear all,

I am trying to generalize the TEBD method mentioned here to a case involving fermions. When changing the following part

gates = ITensor[]
for j=1:N-1
  s1 = s[j]
  s2 = s[j+1]
  hj =       op("Sz",s1) * op("Sz",s2) +
     1/2 * op("S+",s1) * op("S-",s2) +
     1/2 * op("S-",s1) * op("S+",s2)
  Gj = exp(-1.0im * tau/2 * hj)

to include some fermion operators, do we need to manually add JW strings? I am not sure whether these gates already implement JW string like OpSum or not.


1 Answer

+1 vote
answered by (14.1k points)

Hi Junsen,

Good question. If you switch to using operators like "Cdag" and "C", the evolution should just work. In practice, the fermion sign is handled with fermionic swap gates. If you apply local gates, there are no extra signs needed beyond those that might be within the operators themselves, and if you apply nonlocal gates, our fermionic swap system should handle the signs properly.

Please try it out and let us know if you come across any issues.


commented by (610 points)
Hi Matt,

Thank you for the answer. Now I am quite curious about the "fermionic swap gate" you mentioned. How does it handle the fermion sign? Do you have any useful/pedagogical doc or papers on this topic?

commented by (610 points)
Via a quick googling, I find this answer
Is it the fermioned swap gate you implied?
commented by (14.1k points)
Yes, that is the most basic version of the kind of swap gate we use.
Welcome to ITensor Support Q&A, where you can ask questions and receive answers from other members of the community.

Formatting Tips:
  • To format code, indent by four spaces
  • To format inline LaTeX, surround it by @@ on both sides
  • To format LaTeX on its own line, surround it by $$ above and below
  • For LaTeX, it may be necessary to backslash-escape underscore characters to obtain proper formatting. So for example writing \sum\_i to represent a sum over i.
If you cannot register due to firewall issues (e.g. you cannot see the capcha box) please email Miles Stoudenmire to ask for an account.

To report ITensor bugs, please use the issue tracker.