tensor4all

Software

The tensor4all software ecosystem is organized by status and workflow. For new users today, we recommend xfac for C++ and Python workflows, and the stable Julia packages for Julia workflows. Active development is focused on the next-generation Rust stack: tenferro-rs, a tensor and autodiff engine that is ready for production use with a relatively stable API, and tensor4all-rs (TCI, quantics tensor trains, and tree tensor networks), which is under active development on top of it.

Software map

Status Library Best for
Use now xfac / Python tutorials C++ and Python workflows; original TCI implementation
Use now TensorCrossInterpolation.jl Core TCI algorithms in Julia
Use now QuanticsTCI.jl Convenient QTCI interface in Julia
Use now QuanticsGrids.jl Quantics grids and coordinate transformations
Use now InterpolativeQTT.jl Multiscale interpolative QTT construction in Julia
Use now tenferro-rs Rust tensor and autodiff engine: einsum, linear algebra, FFT, CPU/CUDA backends
Active development tensor4all-rs Next-generation Rust implementation of TCI, QTT, and tree tensor networks
Active development Tensor4all.jl Julia frontend for tensor4all-rs
Maintenance Quantics.jl Existing QTT workflows built on ITensors.jl
Maintenance FastMPOContractions.jl Existing MPO contraction workflows
Maintenance TCIITensorConversion.jl Historical ITensors conversion package

Use now: C++ and Python

xfac is the original C++ implementation of tensor cross interpolation in the tensor4all ecosystem. It includes Python bindings and remains the recommended current path for C++ and Python users.

Use now: Julia

These Julia packages are the current recommended route for Julia users who need stable workflows.

For Julia examples, see the Julia tutorials.

The Rust stack: tenferro-rs and tensor4all-rs

The next generation of the tensor4all ecosystem is written in Rust, in two layers.

tenferro-rs: tensor and autodiff engine (use now)

tenferro-rs is a Rust-native tensor computation stack with opt-in automatic differentiation for scientific workloads. It provides typed and dynamic dense tensors, explicit CPU/CUDA backend dispatch, linear algebra, NumPy-style einsum, FFT, PyTorch-style eager autodiff, and JAX-style traced transforms. It sits between low-level array crates and full deep-learning frameworks, targeting scientific code that needs column-major storage, dynamic shapes, and extensible operations.

tenferro-rs is ready for production use, with a relatively stable API.

tensor4all-rs: tensor networks (active development)

tensor4all-rs is the next-generation implementation of the tensor4all algorithms, built on tenferro-rs. It covers tensor cross interpolation (TCI), quantics tensor trains, tree tensor networks with arbitrary topology, and an ITensors.jl-like dynamic tensor API, plus the C API used by language bindings.

New features and performance work land in this stack first. tensor4all-rs is ready for early adopters comfortable with Rust; users who need a stable, documented workflow today can start with xfac or the stable Julia packages above and migrate later.

Maintenance and legacy packages

These packages are useful for existing workflows, but they are not the primary recommendation for new users.

Experimental repositories

Some old T4A****.jl repositories were used for experiments. They are not recommended for new users and are not planned as maintained public libraries.