Skip to main content

einsum_with

Function einsum_with 

Source
pub fn einsum_with<B: TensorBackend>(
    engine: &mut Engine<B>,
    inputs: &[&TracedTensor],
    subscripts: &str,
    optimize: EinsumOptimize,
) -> Result<TracedTensor>
Expand description

N-ary einsum with explicit contraction strategy.

See EinsumOptimize for all available strategies and examples.

§Examples

use tenferro::einsum::{einsum_with, EinsumOptimize};
use tenferro::engine::Engine;
use tenferro::traced::TracedTensor;

// Left-to-right, no optimizer
let c = einsum_with(&mut engine, &[&a, &b, &c], "ij,jk,kl->il",
    EinsumOptimize::False);

// JAX-compatible explicit path
let c = einsum_with(&mut engine, &[&a, &b, &c], "ij,jk,kl->il",
    EinsumOptimize::Path(vec![(1, 2), (0, 1)]));