[−][src]Trait alga::general::AbstractQuasigroup
A magma with the divisibility property.
Divisibility is a weak form of right and left invertibility:
∀ a, b ∈ Self, ∃! r, l ∈ Self such that l ∘ a = b and a ∘ r = b
Provided Methods
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq,
Self: RelativeEq,
Returns true if latin squareness holds for the given arguments. Approximate
equality is used for verifications.
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq,
Self: Eq,
Returns true if latin squareness holds for the given arguments.
Implementations on Foreign Types
impl<N> AbstractQuasigroup<Multiplicative> for Complex<N> where
N: Num + Clone + ClosedNeg, [src]
impl<N> AbstractQuasigroup<Multiplicative> for Complex<N> where
N: Num + Clone + ClosedNeg, fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, [src]
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, [src]
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, impl<N> AbstractQuasigroup<Additive> for Complex<N> where
N: AbstractGroupAbelian<Additive>, [src]
impl<N> AbstractQuasigroup<Additive> for Complex<N> where
N: AbstractGroupAbelian<Additive>, fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, [src]
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, [src]
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, impl AbstractQuasigroup<Additive> for i8[src]
impl AbstractQuasigroup<Additive> for i8fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, [src]
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, [src]
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, impl AbstractQuasigroup<Additive> for i16[src]
impl AbstractQuasigroup<Additive> for i16fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, [src]
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, [src]
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, impl AbstractQuasigroup<Additive> for i32[src]
impl AbstractQuasigroup<Additive> for i32fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, [src]
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, [src]
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, impl AbstractQuasigroup<Additive> for i64[src]
impl AbstractQuasigroup<Additive> for i64fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, [src]
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, [src]
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, impl AbstractQuasigroup<Additive> for isize[src]
impl AbstractQuasigroup<Additive> for isizefn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, [src]
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, [src]
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, impl AbstractQuasigroup<Additive> for f32[src]
impl AbstractQuasigroup<Additive> for f32fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, [src]
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, [src]
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, impl AbstractQuasigroup<Additive> for f64[src]
impl AbstractQuasigroup<Additive> for f64fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, [src]
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, [src]
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, impl AbstractQuasigroup<Multiplicative> for f32[src]
impl AbstractQuasigroup<Multiplicative> for f32fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, [src]
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, [src]
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, impl AbstractQuasigroup<Multiplicative> for f64[src]
impl AbstractQuasigroup<Multiplicative> for f64fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, [src]
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, [src]
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, Implementors
impl<O: Operator> AbstractQuasigroup<O> for Id<O>[src]
impl<O: Operator> AbstractQuasigroup<O> for Id<O>fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, [src]
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq, fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq, [src]
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq,