pub struct FinitelyFreeModuleStructure<Ring: RingSignature, RingB: BorrowedStructure<Ring>> { /* private fields */ }Implementations§
Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> FinitelyFreeModuleStructure<Ring, RingB>
Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> FinitelyFreeModuleStructure<Ring, RingB>
pub fn ring(&self) -> &Ring
pub fn to_col(&self, v: &<Self as SetSignature>::Set) -> Matrix<Ring::Set>
pub fn to_row(&self, v: &<Self as SetSignature>::Set) -> Matrix<Ring::Set>
pub fn from_row(&self, m: &Matrix<Ring::Set>) -> <Self as SetSignature>::Set
pub fn from_col(&self, m: &Matrix<Ring::Set>) -> <Self as SetSignature>::Set
pub fn basis_element(&self, i: usize) -> <Self as SetSignature>::Set
Source§impl<Ring: ReducedHermiteAlgorithmSignature, RingB: BorrowedStructure<Ring>> FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: ReducedHermiteAlgorithmSignature, RingB: BorrowedStructure<Ring>> FinitelyFreeModuleStructure<Ring, RingB>
pub fn submodules(&self) -> FinitelyFreeSubmoduleStructure<Ring, &Ring>
pub fn into_submodules(self) -> FinitelyFreeSubmoduleStructure<Ring, RingB>
pub fn cosets(&self) -> FinitelyFreeSubmoduleCosetStructure<Ring, &Ring>
pub fn into_cosets(self) -> FinitelyFreeSubmoduleCosetStructure<Ring, RingB>
pub fn affine_subsets( &self, ) -> FinitelyFreeSubmoduleAffineSubsetStructure<Ring, &Ring>
pub fn into_affine_subsets( self, ) -> FinitelyFreeSubmoduleAffineSubsetStructure<Ring, RingB>
pub fn improper_submodule(&self) -> FinitelyFreeSubmodule<Ring::Set>
pub fn generated_submodule( &self, generators: Vec<&Vec<Ring::Set>>, ) -> FinitelyFreeSubmodule<Ring::Set>
Trait Implementations§
Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> AdditionSignature for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> AdditionSignature for FinitelyFreeModuleStructure<Ring, RingB>
Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> AdditiveGroupSignature for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> AdditiveGroupSignature for FinitelyFreeModuleStructure<Ring, RingB>
Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> AdditiveMonoidSignature for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> AdditiveMonoidSignature for FinitelyFreeModuleStructure<Ring, RingB>
Source§impl<Ring: ReducedHermiteAlgorithmSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>> BijectiveFunction<FinitelyFreeModuleStructure<Ring, RingDomainB>, FinitelyFreeModuleStructure<Ring, RingRangeB>> for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, true, true>
impl<Ring: ReducedHermiteAlgorithmSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>> BijectiveFunction<FinitelyFreeModuleStructure<Ring, RingDomainB>, FinitelyFreeModuleStructure<Ring, RingRangeB>> for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, true, true>
Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> CancellativeAdditionSignature for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> CancellativeAdditionSignature for FinitelyFreeModuleStructure<Ring, RingB>
Source§impl<Ring: Clone + RingSignature, RingB: Clone + BorrowedStructure<Ring>> Clone for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: Clone + RingSignature, RingB: Clone + BorrowedStructure<Ring>> Clone for FinitelyFreeModuleStructure<Ring, RingB>
Source§fn clone(&self) -> FinitelyFreeModuleStructure<Ring, RingB>
fn clone(&self) -> FinitelyFreeModuleStructure<Ring, RingB>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<Ring: Debug + RingSignature, RingB: Debug + BorrowedStructure<Ring>> Debug for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: Debug + RingSignature, RingB: Debug + BorrowedStructure<Ring>> Debug for FinitelyFreeModuleStructure<Ring, RingB>
Source§impl<Ring: RingSignature + EqSignature, RingB: BorrowedStructure<Ring>> EqSignature for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature + EqSignature, RingB: BorrowedStructure<Ring>> EqSignature for FinitelyFreeModuleStructure<Ring, RingB>
Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> FreeModuleSignature<Ring> for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> FreeModuleSignature<Ring> for FinitelyFreeModuleStructure<Ring, RingB>
Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>, const INJECTIVE: bool, const SURJECTIVE: bool> Function<FinitelyFreeModuleStructure<Ring, RingDomainB>, FinitelyFreeModuleStructure<Ring, RingRangeB>> for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>, const INJECTIVE: bool, const SURJECTIVE: bool> Function<FinitelyFreeModuleStructure<Ring, RingDomainB>, FinitelyFreeModuleStructure<Ring, RingRangeB>> for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
Source§impl<Ring: ReducedHermiteAlgorithmSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>, const SURJECTIVE: bool> InjectiveFunction<FinitelyFreeModuleStructure<Ring, RingDomainB>, FinitelyFreeModuleStructure<Ring, RingRangeB>> for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, true, SURJECTIVE>
impl<Ring: ReducedHermiteAlgorithmSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>, const SURJECTIVE: bool> InjectiveFunction<FinitelyFreeModuleStructure<Ring, RingDomainB>, FinitelyFreeModuleStructure<Ring, RingRangeB>> for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, true, SURJECTIVE>
Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>, const INJECTIVE: bool, const SURJECTIVE: bool> Morphism<FinitelyFreeModuleStructure<Ring, RingDomainB>, FinitelyFreeModuleStructure<Ring, RingRangeB>> for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>, const INJECTIVE: bool, const SURJECTIVE: bool> Morphism<FinitelyFreeModuleStructure<Ring, RingDomainB>, FinitelyFreeModuleStructure<Ring, RingRangeB>> for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
fn domain(&self) -> &FinitelyFreeModuleStructure<Ring, RingDomainB>
fn range(&self) -> &FinitelyFreeModuleStructure<Ring, RingRangeB>
Source§impl<Ring: PartialEq + RingSignature, RingB: PartialEq + BorrowedStructure<Ring>> PartialEq for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: PartialEq + RingSignature, RingB: PartialEq + BorrowedStructure<Ring>> PartialEq for FinitelyFreeModuleStructure<Ring, RingB>
Source§fn eq(&self, other: &FinitelyFreeModuleStructure<Ring, RingB>) -> bool
fn eq(&self, other: &FinitelyFreeModuleStructure<Ring, RingB>) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> RinglikeSpecializationSignature for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> RinglikeSpecializationSignature for FinitelyFreeModuleStructure<Ring, RingB>
fn try_ring_restructure( &self, ) -> Option<impl EqSignature<Set = Self::Set> + RingSignature>
fn try_char_zero_ring_restructure( &self, ) -> Option<impl EqSignature<Set = Self::Set> + CharZeroRingSignature>
Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> SemiModuleSignature<Ring> for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> SemiModuleSignature<Ring> for FinitelyFreeModuleStructure<Ring, RingB>
Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> SetSignature for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> SetSignature for FinitelyFreeModuleStructure<Ring, RingB>
Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> TryNegateSignature for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> TryNegateSignature for FinitelyFreeModuleStructure<Ring, RingB>
Source§impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> ZeroSignature for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> ZeroSignature for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: Eq + RingSignature, RingB: Eq + BorrowedStructure<Ring>> Eq for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> Signature for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring: RingSignature, RingB: BorrowedStructure<Ring>> StructuralPartialEq for FinitelyFreeModuleStructure<Ring, RingB>
Auto Trait Implementations§
impl<Ring, RingB> Freeze for FinitelyFreeModuleStructure<Ring, RingB>where
RingB: Freeze,
impl<Ring, RingB> RefUnwindSafe for FinitelyFreeModuleStructure<Ring, RingB>where
RingB: RefUnwindSafe,
Ring: RefUnwindSafe,
impl<Ring, RingB> Send for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring, RingB> Sync for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring, RingB> Unpin for FinitelyFreeModuleStructure<Ring, RingB>
impl<Ring, RingB> UnwindSafe for FinitelyFreeModuleStructure<Ring, RingB>where
RingB: UnwindSafe,
Ring: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more