Trait ark_ff::fields::SquareRootField[][src]

pub trait SquareRootField: Field {
    fn legendre(&self) -> LegendreSymbol;
#[must_use] fn sqrt(&self) -> Option<Self>;
fn sqrt_in_place(&mut self) -> Option<&mut Self>; }

The interface for a field that supports an efficient square-root operation.

Required methods

fn legendre(&self) -> LegendreSymbol[src]

Returns a LegendreSymbol, which indicates whether this field element is 1 : a quadratic residue 0 : equal to 0 -1 : a quadratic non-residue

#[must_use]fn sqrt(&self) -> Option<Self>[src]

Returns the square root of self, if it exists.

fn sqrt_in_place(&mut self) -> Option<&mut Self>[src]

Sets self to be the square root of self, if it exists.

Loading content...

Implementors

impl<'a, P: QuadExtParameters> SquareRootField for QuadExtField<P> where
    P::BaseField: SquareRootField
[src]

impl<P: Fp3Parameters> SquareRootField for Fp3<P>[src]

fn legendre(&self) -> LegendreSymbol[src]

Returns the Legendre symbol.

fn sqrt(&self) -> Option<Self>[src]

Returns the square root of self, if it exists.

fn sqrt_in_place(&mut self) -> Option<&mut Self>[src]

Sets self to be the square root of self, if it exists.

impl<P: Fp64Parameters> SquareRootField for Fp64<P>[src]

impl<P: Fp256Parameters> SquareRootField for Fp256<P>[src]

impl<P: Fp320Parameters> SquareRootField for Fp320<P>[src]

impl<P: Fp384Parameters> SquareRootField for Fp384<P>[src]

impl<P: Fp768Parameters> SquareRootField for Fp768<P>[src]

impl<P: Fp832Parameters> SquareRootField for Fp832<P>[src]

Loading content...