Expand description
Multi-tensor contraction with optimal contraction order.
This module provides functions to contract multiple tensors efficiently using einsum optimization via the tensorbackend (tenferro-backed implementation).
This module works with concrete types (DynIndex, TensorDynLen) only.
§Main Functions
contract: Contracts one connected tensor networkcontract_with_options: Contracts one connected tensor network with retained indices
§Diag Tensor Handling
Diagonal tensors are materialized as dense native operands for contraction, so numeric einsum labels must keep uncontracted logical axes distinct. Diagonal/structured equality metadata is propagated separately onto the result when the contraction leaves equal axes behind.
Structs§
- Axis
Union Find - Union-Find data structure for grouping axis IDs.
- Contraction
Options - Options for multi-tensor contraction.
- Pairwise
Contraction Options - Options for pairwise tensor contraction.
Functions§
- build_
diag_ union - Build a union-find structure from a collection of tensors.
- collect_
sizes - Collect dimension sizes for remapped IDs.
- contract
- Contract a connected tensor network with the default semantics.
- contract_
owned - Contract owned tensors with the default connected-network semantics.
- contract_
owned_ with_ options - Contract owned tensors with advanced connected-network options.
- contract_
pair - Contract two tensors with the default pairwise semantics.
- contract_
pair_ with_ operand_ options - Contract two tensors with operand-level conjugation options.
- contract_
pair_ with_ options - Contract two tensors with explicit contraction options.
- contract_
with_ options - Contract a connected tensor network with advanced options.
- outer_
product - Compute the outer product of two tensors.
- print_
and_ reset_ contract_ profile - Print and clear the aggregated multi-tensor contraction profile.
- remap_
output_ ids - Remap output IDs using the union-find structure.
- remap_
tensor_ ids - Remap tensor indices using the union-find structure.
- reset_
contract_ profile - Reset the aggregated multi-tensor contraction profile.
- tensordot
- Contract two tensors along explicitly specified index pairs.