SciPost logo

SciPost Submission Page

GrassmannTN: a Python package for Grassmann tensor network computations

by Atis Yosprakob

This is not the latest submitted version.

Submission summary

Authors (as registered SciPost users): Atis Yosprakob
Submission information
Preprint Link: https://arxiv.org/abs/2309.07557v2  (pdf)
Code repository: https://github.com/ayosprakob/grassmanntn
Date submitted: 2023-09-22 14:08
Submitted by: Yosprakob, Atis
Submitted to: SciPost Physics Codebases
Ontological classification
Academic field: Physics
Specialties:
  • Condensed Matter Physics - Theory
  • Condensed Matter Physics - Computational
  • High-Energy Physics - Theory
Approaches: Theoretical, Computational

Abstract

We present GrassmannTN, a Python package for the computation of the Grassmann tensor network. The package is built to assist in the numerical computation without the need to input the fermionic sign factor manually. It prioritizes coding readability by designing every tensor manipulating function around the tensor subscripts. The computation of the Grassmann tensor renormalization group and Grassmann isometries using GrassmannTN are given as the use case examples.

Current status:
Has been resubmitted

Reports on this Submission

Report #2 by Anonymous (Referee 2) on 2023-10-24 (Invited Report)

  • Cite as: Anonymous, Report on arXiv:2309.07557v2, delivered 2023-10-24, doi: 10.21468/SciPost.Report.7992

Strengths

1- Very clear explanation of Grasmann tensors and their tensor network operations
2- Implementation of necessary basic operations in Grasmann tensor network calculations
3- Sufficient examples to show usefull features of GrassmannTN

Report

This manuscript introduces a Python package for the Grassmann tensor operations. This package supports the complicated fermion sign calculations often appearing in the Grassmann tensor network calculations and provides a sophisticated interface for these functionalities. The author also presents examples of codes for the tensor renormalization group (TRG) and calculations of isometries necessary for many tensor network algorithms.

Grasmann tensors are useful for treating fermionic degrees of freedom in tensor network algorithms. However, when we implement it in program codes, as the author clearly explained, treating signs due to the anti-commuting nature of the fermions becomes complicated. This program package supports the treatment of such complex signs, and users can avoid taking care of them explicitly when they develop their codes. As far as I know, there is no similar open-source code for the Grasmann tensor network. Thus, this package will provide an essential basis for developing and implementing Grasmann tensor network algorithms.

The design principle of the package and examples of codes are clearly written, and I expect that developers will easily try this package. In addition to them, the formulation written in the appendix is helpful for beginners in Grasmann tensors. Thus, I recommend the publication of this manuscript and package in SciPost Physics Codebases.

Minor comments:
(i) In the first sentence of page 21, the author state, "To squeeze the legs, we have to rearrange the indices so that the legs to be squeezed
are separated from the others with grassmanntn.einsum()." I feel that the meaning of the term "separated" is slightly ambiguous. If the author adds more explanations, it may help readers.

(ii)
Although the author does not explicitly write, i and j in Eq. (A. 6) seem restricted to 0 or 1. If this is the case, it is better to write such information explicitly.

(iii)
Below Eq. (A. 51), "If M is Hermitian, the eigenvalue decomposition (gEigD) gives U = V† and λ_I being the eigenvalues.". I think that the eigenvalues of a Hermitian matrix can be negative, although the singular values are non-negative. So, I naively feel that the author implicitly assumes another additional condition for M.

  • validity: high
  • significance: good
  • originality: high
  • clarity: high
  • formatting: excellent
  • grammar: -

Author:  Atis Yosprakob  on 2023-10-25  [id 4063]

(in reply to Report 2 on 2023-10-24)
Category:
answer to question

I agree with comments (i) and (ii) and will clarify them in the revised version.
For comment (iii), I tried to say that the eigendecomposition of a Hermitian matrix takes the same form as that of the SVD and did not mean to make a direct association between the two. I will rephrase that sentence in the revised version.

Report #1 by Bram Vanhecke (Referee 1) on 2023-10-19 (Invited Report)

Strengths

1. Many examples
2. Clear explanation from the basics up

Report

A thorough description of a toolbox for Grassmann tensor networks. Plenty of examples and a decent explanation of the underlying theory.

  • validity: -
  • significance: low
  • originality: ok
  • clarity: high
  • formatting: -
  • grammar: -

Login to report or comment