pub trait SquareRootField: Field {
    // Required methods
    fn legendre(&self) -> LegendreSymbol;
    fn sqrt(&self) -> Option<Self>;
    fn sqrt_in_place(&mut self) -> Option<&mut Self>;
}
Expand description

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

Required Methods§

source

fn legendre(&self) -> LegendreSymbol

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

source

fn sqrt(&self) -> Option<Self>

Returns the square root of self, if it exists.

source

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

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

Implementors§