Skip to main content

MIntDotProduct

Trait MIntDotProduct 

Source
pub trait MIntDotProduct: MIntBase + Sized {
    // Provided methods
    fn try_matrix_product(
        _a: &[Vec<MInt<Self>>],
        _b: &[Vec<MInt<Self>>],
    ) -> Option<Vec<Vec<MInt<Self>>>> { ... }
    fn dot_product(x: &[MInt<Self>], y: &[MInt<Self>]) -> MInt<Self> { ... }
    fn add_scaled_assign(x: &mut [MInt<Self>], y: &[MInt<Self>], a: &MInt<Self>) { ... }
}

Provided Methods§

Source

fn try_matrix_product( _a: &[Vec<MInt<Self>>], _b: &[Vec<MInt<Self>>], ) -> Option<Vec<Vec<MInt<Self>>>>

Examples found in repository?
crates/competitive/src/num/mint/mint_dot_product.rs (line 34)
33    fn try_matrix_product(a: &[Vec<Self>], b: &[Vec<Self>]) -> Option<Vec<Vec<Self>>> {
34        M::try_matrix_product(a, b)
35    }
Source

fn dot_product(x: &[MInt<Self>], y: &[MInt<Self>]) -> MInt<Self>

Examples found in repository?
crates/competitive/src/num/mint/mint_dot_product.rs (line 40)
38    fn dot_product(x: &[Self], y: &[Self]) -> Self {
39        assert_eq!(x.len(), y.len());
40        M::dot_product(x, y)
41    }
Source

fn add_scaled_assign(x: &mut [MInt<Self>], y: &[MInt<Self>], a: &MInt<Self>)

Examples found in repository?
crates/competitive/src/num/mint/mint_dot_product.rs (line 45)
44    fn add_scaled_assign(x: &mut [Self], y: &[Self], a: &Self) {
45        M::add_scaled_assign(x, y, a);
46    }

Dyn Compatibility§

This trait is not dyn compatible.

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

Implementors§