pub struct FreeModuleFiniteNumberedBasisLinearTransformation<Ring: RingSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>, const INJECTIVE: bool, const SURJECTIVE: bool> { /* private fields */ }Implementations§
Source§impl<Ring: BezoutDomainSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>, const INJECTIVE: bool, const SURJECTIVE: bool> FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
impl<Ring: BezoutDomainSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>, const INJECTIVE: bool, const SURJECTIVE: bool> FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
pub fn new( ring: RingB, domain: FinitelyFreeModuleStructure<Ring, RingDomainB>, range: FinitelyFreeModuleStructure<Ring, RingRangeB>, matrix: Matrix<Ring::Set>, ) -> Self
Source§impl<Ring: BezoutDomainSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>> FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, false, false>
impl<Ring: BezoutDomainSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>> FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, false, false>
pub fn construct( ring: RingB, domain: FinitelyFreeModuleStructure<Ring, RingDomainB>, range: FinitelyFreeModuleStructure<Ring, RingRangeB>, basis_image: impl Fn(usize) -> Vec<Ring::Set>, ) -> Self
Source§impl<Ring: BezoutDomainSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>> FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, true, false>
impl<Ring: BezoutDomainSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>> FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, true, false>
pub fn construct_injective( ring: RingB, domain: FinitelyFreeModuleStructure<Ring, RingDomainB>, range: FinitelyFreeModuleStructure<Ring, RingRangeB>, basis_image: impl Fn(usize) -> Vec<Ring::Set>, ) -> Self
Source§impl<Ring: BezoutDomainSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>> FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, false, true>
impl<Ring: BezoutDomainSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>> FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, false, true>
pub fn construct_surjective( ring: RingB, domain: FinitelyFreeModuleStructure<Ring, RingDomainB>, range: FinitelyFreeModuleStructure<Ring, RingRangeB>, basis_image: impl Fn(usize) -> Vec<Ring::Set>, ) -> Self
Source§impl<Ring: BezoutDomainSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>> FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, true, true>
impl<Ring: BezoutDomainSignature, RingB: BorrowedStructure<Ring>, RingDomainB: BorrowedStructure<Ring>, RingRangeB: BorrowedStructure<Ring>> FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, true, true>
pub fn construct_bijective( ring: RingB, domain: FinitelyFreeModuleStructure<Ring, RingDomainB>, range: FinitelyFreeModuleStructure<Ring, RingRangeB>, basis_image: impl Fn(usize) -> Vec<Ring::Set>, ) -> Self
Trait Implementations§
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: Clone + RingSignature, RingB: Clone + BorrowedStructure<Ring>, RingDomainB: Clone + BorrowedStructure<Ring>, RingRangeB: Clone + BorrowedStructure<Ring>, const INJECTIVE: bool, const SURJECTIVE: bool> Clone for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
impl<Ring: Clone + RingSignature, RingB: Clone + BorrowedStructure<Ring>, RingDomainB: Clone + BorrowedStructure<Ring>, RingRangeB: Clone + BorrowedStructure<Ring>, const INJECTIVE: bool, const SURJECTIVE: bool> Clone for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
Source§fn clone(
&self,
) -> FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
fn clone( &self, ) -> FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
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>, RingDomainB: Debug + BorrowedStructure<Ring>, RingRangeB: Debug + BorrowedStructure<Ring>, const INJECTIVE: bool, const SURJECTIVE: bool> Debug for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
impl<Ring: Debug + RingSignature, RingB: Debug + BorrowedStructure<Ring>, RingDomainB: Debug + BorrowedStructure<Ring>, RingRangeB: Debug + BorrowedStructure<Ring>, const INJECTIVE: bool, const SURJECTIVE: bool> Debug for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
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>
Auto Trait Implementations§
impl<Ring, RingB, RingDomainB, RingRangeB, const INJECTIVE: bool, const SURJECTIVE: bool> Freeze for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
impl<Ring, RingB, RingDomainB, RingRangeB, const INJECTIVE: bool, const SURJECTIVE: bool> RefUnwindSafe for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>where
RingB: RefUnwindSafe,
RingDomainB: RefUnwindSafe,
RingRangeB: RefUnwindSafe,
Ring: RefUnwindSafe,
<Ring as SetSignature>::Set: RefUnwindSafe,
impl<Ring, RingB, RingDomainB, RingRangeB, const INJECTIVE: bool, const SURJECTIVE: bool> Send for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
impl<Ring, RingB, RingDomainB, RingRangeB, const INJECTIVE: bool, const SURJECTIVE: bool> Sync for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
impl<Ring, RingB, RingDomainB, RingRangeB, const INJECTIVE: bool, const SURJECTIVE: bool> Unpin for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>
impl<Ring, RingB, RingDomainB, RingRangeB, const INJECTIVE: bool, const SURJECTIVE: bool> UnwindSafe for FreeModuleFiniteNumberedBasisLinearTransformation<Ring, RingB, RingDomainB, RingRangeB, INJECTIVE, SURJECTIVE>where
RingB: UnwindSafe,
RingDomainB: UnwindSafe,
RingRangeB: UnwindSafe,
Ring: UnwindSafe,
<Ring as SetSignature>::Set: 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<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