Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Log inSign up
Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Blog
Job Board
Q3AS

© 2026 Aqora Quantum S.A.S.

TermsPrivacyLegal Notice

Journal of Physics Conference Series

Uni10: an open-source library for tensor network algorithms

Ying-Jer Kao, Yun-Da Hsieh, Pochung Chen

Published Sep 28, 2015• 32 citations
Publisher

Abstract

We present an object-oriented open-source library for developing tensor network algorithms written in C++ called Uni10. With Uni10, users can build a symmetric tensor from a collection of bonds, while the bonds are constructed from a list of quantum numbers associated with different quantum states. It is easy to label and permute the indices of the tensors and access a block associated with a particular quantum number. Furthermore a network class is used to describe arbitrary tensor network structure and to perform network contractions efficiently. We give an overview of the basic structure of the library and the hierarchy of the classes. We present examples of the construction of a spin-1 Heisenberg Hamiltonian and the implementation of the tensor renormalization group algorithm to illustrate the basic usage of the library. The library described here is particularly well suited to explore and fast prototype novel tensor network algorithms and to implement highly efficient codes for existing algorithms.

DOI
10.1088/1742-6596/640/1/012040

Related papers

Build your own tensor network library: DMRjulia I. Basic library for the density matrix renormalization group

Thomas E. Baker, Martin P. Thompson

An introduction to the density matrix renormalization group is contained here, including coding examples. The focus of this code is on basic operations involved in tensor network computations, and this forms the foundation of the DMRjulia library. Algorithmic complexity, measurements from the matrix product state, convergence to the ground state, and other relevant features are also discussed. The present document covers the implementation of operations for dense tensors into the Julia language. The code can be used as an educational tool to understand how tensor network computations are done in the context of entanglement renormalization or as a template for other codes in low level languages. A comprehensive Supplemental Material is meant to be a "Numerical Recipes" style introduction to the core functions and a simple implementation of them. The code is fast enough to be used in research and can be used to make new algorithms.

arXiv:2109.03120•Sep 7, 2021•1 citation

The tensor network theory library

S Al-Assam, S R Clark, D Jaksch

Abstract In this technical paper we introduce the tensor network theory (TNT) library—an open-source software project aimed at providing a platform for rapidly developing robust, easy to use and highly optimised code for TNT calculations. The objectives of this paper are (i) to give an overview of the structure of TNT library, and (ii) to help scientists decide whether to use the TNT library in their research. We show how to employ the TNT routines by giving examples of ground-state and dynamical calculations of one-dimensional bosonic lattice system. We also discuss different options for gaining access to the software available at www.tensornetworktheory.org .

arXiv:1610.02244•Journal of Statistical Mechanics Theory and Experiment•Sep 1, 2017•46 citations

TensorKrowch: Smooth integration of tensor networks in machine learning

José Ramón Pareja Monturiol, David Pérez-Garcı́a, Alejandro Pozas-Kerstjens

Tensor networks are factorizations of high-dimensional tensors into networks of smaller tensors. They have applications in physics and mathematics, and recently have been proposed as promising machine learning architectures. To ease the integration of tensor networks in machine learning pipelines, we introduce TensorKrowch, an open source Python library built on top of PyTorch. Providing a user-friendly interface, TensorKrowch allows users to construct any tensor network, train it, and integrate it as a layer in more intricate deep learning models. In this paper, we describe the main functionality and basic usage of TensorKrowch, and provide technical details on its building blocks and the optimizations performed to achieve efficient operation.

arXiv:2306.08595•Quantum•Jun 11, 2024•3 citations

YASTN: Yet another symmetric tensor networks; A Python library for Abelian symmetric tensor network calculations

Marek M. Rams, Gabriela Wójtowicz, Aritra Sinha +1 more

We present an open-source tensor network Python library for quantum many-body simulations. At its core is an Abelian-symmetric tensor, implemented as a sparse block structure managed by a logical layer on top of a dense multidimensional array backend. This serves as the basis for higher-level tensor network algorithms operating on matrix product states and projected entangled pair states. An appropriate backend, such as PyTorch, gives direct access to automatic differentiation (AD) for cost-function gradient calculations and execution on GPU and other supported accelerators. We show the library performance in simulations with infinite projected entangled-pair states, such as finding the ground states with AD and simulating thermal states of the Hubbard model via imaginary time evolution. For these challenging examples, we identify and quantify sources of the numerical advantage exploited by the symmetric-tensor implementation.

SciPost Physics Codebases•Feb 26, 2025•16 citations

YASTN: Yet another symmetric tensor networks; A Python library for Abelian symmetric tensor network calculations

Marek M. Rams, Gabriela Wójtowicz, Aritra Sinha +1 more

We present an open-source tensor network Python library for quantum many-body simulations. At its core is an Abelian-symmetric tensor, implemented as a sparse block structure managed by a logical layer on top of a dense multidimensional array backend. This serves as the basis for higher-level tensor network algorithms operating on matrix product states and projected entangled pair states. An appropriate backend, such as PyTorch, gives direct access to automatic differentiation (AD) for cost-function gradient calculations and execution on GPU and other supported accelerators. We show the library performance in simulations with infinite projected entangled-pair states, such as finding the ground states with AD and simulating thermal states of the Hubbard model via imaginary time evolution. For these challenging examples, we identify and quantify sources of the numerical advantage exploited by the symmetric-tensor implementation.

•Feb 26, 2025•0 citations

The ITensor Software Library for Tensor Network Calculations

Matthew Fishman, Steven R. White, Edwin Miles Stoudenmire

ITensor is a system for programming tensor network calculations with an interface modeled on tensor diagrams, allowing users to focus on the connectivity of a tensor network without manually bookkeeping tensor indices. The ITensor interface rules out common programming errors and enables rapid prototyping of algorithms. After discussing the philosophy behind the ITensor approach, we show examples of each part of the interface including Index objects, the ITensor product operator, tensor factorizations, tensor storage types, algorithms for matrix product state (MPS) and matrix product operator (MPO) tensor networks, quantum number conserving block sparse tensors, and the NDTensors library. We also review publications that have used ITensor for quantum many-body physics and for other areas where tensor networks are increasingly applied. To conclude we discuss promising features and optimizations to be added in the future.

arXiv:2007.14822•SciPost Physics Codebases•Aug 23, 2022•1,080 citations
We present an object-oriented open-source library for developing tensor network algorithms written in C++ called Uni10. With Uni10, users can build a symmetric tensor from a collection of bonds, while the bonds are constructed from a list of quantum numbers associated with different quantum states. It is easy to label and permute the indices of the tensors and access a block associated with a particular quantum number. Furthermore a network class is used to describe arbitrary tensor network structure and to perform network contractions efficiently. We give an overview of the basic structure of the library and the hierarchy of the classes. We present examples of the construction of a spin-1 Heisenberg Hamiltonian and the implementation of the tensor renormalization group algorithm to illustrate the basic usage of the library. The library described here is particularly well suited to explore and fast prototype novel tensor network algorithms and to implement highly efficient codes for existing algorithms.
An introduction to the density matrix renormalization group is contained here, including coding examples. The focus of this code is on basic operations involved in tensor network computations, and this forms the foundation of the DMRjulia library. Algorithmic complexity, measurements from the matrix product state, convergence to the ground state, and other relevant features are also discussed. The present document covers the implementation of operations for dense tensors into the Julia language. The code can be used as an educational tool to understand how tensor network computations are done in the context of entanglement renormalization or as a template for other codes in low level languages. A comprehensive Supplemental Material is meant to be a "Numerical Recipes" style introduction to the core functions and a simple implementation of them. The code is fast enough to be used in research and can be used to make new algorithms.
Abstract In this technical paper we introduce the tensor network theory (TNT) library—an open-source software project aimed at providing a platform for rapidly developing robust, easy to use and highly optimised code for TNT calculations. The objectives of this paper are (i) to give an overview of the structure of TNT library, and (ii) to help scientists decide whether to use the TNT library in their research. We show how to employ the TNT routines by giving examples of ground-state and dynamical calculations of one-dimensional bosonic lattice system. We also discuss different options for gaining access to the software available at www.tensornetworktheory.org .
Tensor networks are factorizations of high-dimensional tensors into networks of smaller tensors. They have applications in physics and mathematics, and recently have been proposed as promising machine learning architectures. To ease the integration of tensor networks in machine learning pipelines, we introduce TensorKrowch, an open source Python library built on top of PyTorch. Providing a user-friendly interface, TensorKrowch allows users to construct any tensor network, train it, and integrate it as a layer in more intricate deep learning models. In this paper, we describe the main functionality and basic usage of TensorKrowch, and provide technical details on its building blocks and the optimizations performed to achieve efficient operation.
We present an open-source tensor network Python library for quantum many-body simulations. At its core is an Abelian-symmetric tensor, implemented as a sparse block structure managed by a logical layer on top of a dense multidimensional array backend. This serves as the basis for higher-level tensor network algorithms operating on matrix product states and projected entangled pair states. An appropriate backend, such as PyTorch, gives direct access to automatic differentiation (AD) for cost-function gradient calculations and execution on GPU and other supported accelerators. We show the library performance in simulations with infinite projected entangled-pair states, such as finding the ground states with AD and simulating thermal states of the Hubbard model via imaginary time evolution. For these challenging examples, we identify and quantify sources of the numerical advantage exploited by the symmetric-tensor implementation.
We present an open-source tensor network Python library for quantum many-body simulations. At its core is an Abelian-symmetric tensor, implemented as a sparse block structure managed by a logical layer on top of a dense multidimensional array backend. This serves as the basis for higher-level tensor network algorithms operating on matrix product states and projected entangled pair states. An appropriate backend, such as PyTorch, gives direct access to automatic differentiation (AD) for cost-function gradient calculations and execution on GPU and other supported accelerators. We show the library performance in simulations with infinite projected entangled-pair states, such as finding the ground states with AD and simulating thermal states of the Hubbard model via imaginary time evolution. For these challenging examples, we identify and quantify sources of the numerical advantage exploited by the symmetric-tensor implementation.
ITensor is a system for programming tensor network calculations with an interface modeled on tensor diagrams, allowing users to focus on the connectivity of a tensor network without manually bookkeeping tensor indices. The ITensor interface rules out common programming errors and enables rapid prototyping of algorithms. After discussing the philosophy behind the ITensor approach, we show examples of each part of the interface including Index objects, the ITensor product operator, tensor factorizations, tensor storage types, algorithms for matrix product state (MPS) and matrix product operator (MPO) tensor networks, quantum number conserving block sparse tensors, and the NDTensors library. We also review publications that have used ITensor for quantum many-body physics and for other areas where tensor networks are increasingly applied. To conclude we discuss promising features and optimizations to be added in the future.