pub enum LegendreSymbol {
Zero = 0,
QuadraticResidue = 1,
QuadraticNonResidue = -1,
}Expand description
Indication of the field element’s quadratic residuosity
§Examples
let a: Fp = Fp::rand(&mut test_rng());
let b = a.square();
assert_eq!(b.legendre(), LegendreSymbol::QuadraticResidue);Variants§
Implementations§
Source§impl LegendreSymbol
impl LegendreSymbol
Sourcepub fn is_zero(&self) -> bool
pub fn is_zero(&self) -> bool
Returns true if self.is_zero().
§Examples
let a: Fp = Fp::rand(&mut test_rng());
let b: Fp = a.square();
assert!(!b.legendre().is_zero());Trait Implementations§
Source§impl Debug for LegendreSymbol
impl Debug for LegendreSymbol
Source§impl PartialEq for LegendreSymbol
impl PartialEq for LegendreSymbol
impl Eq for LegendreSymbol
impl StructuralPartialEq for LegendreSymbol
Auto Trait Implementations§
impl Freeze for LegendreSymbol
impl RefUnwindSafe for LegendreSymbol
impl Send for LegendreSymbol
impl Sync for LegendreSymbol
impl Unpin for LegendreSymbol
impl UnwindSafe for LegendreSymbol
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> 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