Cotengra Versions Save

Hyper optimized contraction trees for large tensor networks and einsums

v0.3.1

8 months ago

What's Changed

  • faster index computations, and candidate faster greedy and optimal implementations
  • allow single term pre-processing in order to support arbitrary einsums
  • change 'flops' to everywhere be scalar operations not specialised to real float dtypes (results in halving cost in various places)
  • more preparation to fully decouple from opt_einsum
  • more robust path caching for many parallel processes
  • add utils.perverse_equation and utils.tree_equation
  • add CI testing
  • Adding fallback for kahypar version number check by @emprice in https://github.com/jcmgray/cotengra/pull/25

Full Changelog: https://github.com/jcmgray/cotengra/compare/v0.3.0...v0.3.1

v0.3.0

9 months ago
  • add ContractionTree.slice_key
  • default to cotengra bmm implementation for numpy only
  • unify scoring objectives in scoring.py
  • update compressed contraction path finding
  • centralize and internalize necessary opt_einsum functionality to make it an optional dep
  • add ContractionTree.get_eq_sliced and friends
  • remove obsolete SlicedContractor
  • add hypergraph.py for hypergraph functionality
  • use quimb not hypernetx for rubberband plots
  • fix compressed contraction missing index bug
  • fix contract_expression for single terms
  • allow pairwise contractions with 52+
  • initial support for cuquantum contraction
  • add lazy output chunked example
  • add approx contraction example using quimb
  • make ContractTreeCompressed metrics default to compressed versions
  • suppress kahypar warning by removing dangling indices pre partitioning

Full Changelog: https://github.com/jcmgray/cotengra/compare/v0.2.0...v0.3.0

v0.2.0

1 year ago

Initial relase for pypi.

What's Changed

New Contributors

Full Changelog: https://github.com/jcmgray/cotengra/commits/v0.2.0