Hyper optimized contraction trees for large tensor networks and einsums.
Project description
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
einsum
replacement - 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
- support for hyper edge tensor networks and thus arbitrary einsum equations
- paths that can be supplied to
numpy.einsum
,opt_einsum
,quimb
among others - performing contractions with tensors from many libraries via
cotengra
, even if they don't provideeinsum
ortensordot
but do have (batch) matrix multiplication
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
cotengra-0.6.2.tar.gz
(3.3 MB
view hashes)
Built Distribution
cotengra-0.6.2-py3-none-any.whl
(177.8 kB
view hashes)