cotengra is a python library for contracting tensor networks or einsum
expressions involving large numbers of tensors - the main docs can be found
at cotengra.readthedocs.io.
Some of the key feautures of cotengra include:
- drop-in
einsumandnconreplacement - an explicit contraction tree object that can be flexibly built, modified and visualized
- a 'hyper optimizer' that samples trees while tuning the generating meta-paremeters
- dynamic slicing for massive memory savings and parallelism
- simulated annealing as an alternative optimizing and slicing strategy
- support for hyper edge tensor networks and thus arbitrary einsum equations
- paths that can be supplied to
numpy.einsum,opt_einsum,quimbamong others - performing contractions with tensors from many libraries via
autoray, even if they don't provideeinsumortensordotbut do have (batch) matrix multiplication

