FinitelyFreeModuleSignature

Trait FinitelyFreeModuleSignature 

Source
pub trait FinitelyFreeModuleSignature<Ring: RingSignature>: FreeModuleSignature<Ring> + FinitelyGeneratedModuleSignature<Ring>{
    // Provided methods
    fn basis(&self) -> Vec<<Self::Basis as SetSignature>::Set> { ... }
    fn rank(&self) -> usize { ... }
    fn basis_vecs(&self) -> Vec<Self::Set> { ... }
    fn to_vec(&self, a: &Self::Set) -> Vec<Ring::Set> { ... }
    fn from_vec(&self, v: Vec<impl Borrow<Ring::Set>>) -> Self::Set { ... }
    fn to_col(&self, a: &Self::Set) -> Matrix<Ring::Set> { ... }
    fn from_col(&self, v: Matrix<Ring::Set>) -> Self::Set { ... }
    fn to_row(&self, a: &Self::Set) -> Matrix<Ring::Set> { ... }
    fn from_row(&self, v: Matrix<Ring::Set>) -> Self::Set { ... }
}

Provided Methods§

Source

fn basis(&self) -> Vec<<Self::Basis as SetSignature>::Set>

Source

fn rank(&self) -> usize

Source

fn basis_vecs(&self) -> Vec<Self::Set>

The elementary basis vectors

Source

fn to_vec(&self, a: &Self::Set) -> Vec<Ring::Set>

Source

fn from_vec(&self, v: Vec<impl Borrow<Ring::Set>>) -> Self::Set

Source

fn to_col(&self, a: &Self::Set) -> Matrix<Ring::Set>

Source

fn from_col(&self, v: Matrix<Ring::Set>) -> Self::Set

Source

fn to_row(&self, a: &Self::Set) -> Matrix<Ring::Set>

Source

fn from_row(&self, v: Matrix<Ring::Set>) -> Self::Set

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<Ring: RingSignature, Module: FreeModuleSignature<Ring>> FinitelyFreeModuleSignature<Ring> for Module
where Module::Basis: FiniteSetSignature,