Skip to main content

EagerEinsumExt

Trait EagerEinsumExt 

Source
pub trait EagerEinsumExt {
    // Required methods
    fn einsum(&self, subscripts: &str) -> Result<EagerTensor>;
    fn einsum_notation(&self, notation: &EinsumNotation) -> Result<EagerTensor>;
    fn einsum_subscripts(
        &self,
        subscripts: &EinsumSubscripts,
    ) -> Result<EagerTensor>;
}
Expand description

Eager einsum extension methods for slices or arrays of EagerTensor refs.

Required Methods§

Source

fn einsum(&self, subscripts: &str) -> Result<EagerTensor>

Execute an einsum from string notation.

§Errors

Returns Error::InvalidSubscripts for malformed notation, Error::Validation for rank/shape/dtype mismatches, or Error::Planning / Error::Runtime for contraction planning and execution failures.

Source

fn einsum_notation(&self, notation: &EinsumNotation) -> Result<EagerTensor>

Execute an einsum from rank-unresolved notation.

§Examples
use tenferro_einsum::{EinsumAxis, EinsumNotation};
let notation = EinsumNotation::new(&[&[EinsumAxis::Ellipsis]], &[]);
assert_eq!(notation.input_count(), 1);
§Errors

Returns a typed validation, planning, or runtime error when notation or execution is invalid.

Source

fn einsum_subscripts( &self, subscripts: &EinsumSubscripts, ) -> Result<EagerTensor>

Execute an einsum from parsed integer labels.

§Errors

Returns Error::Validation for rank/shape/dtype mismatches, Error::Planning for an invalid contraction plan, or Error::Runtime for extension registration or backend execution failures.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl EagerEinsumExt for [&EagerTensor]

Source§

impl<const N: usize> EagerEinsumExt for [&EagerTensor; N]

Implementors§