Struct snarkvm_fields::Fp2 [−][src]
Fields
c0: P::Fpc1: P::FpImplementations
impl<P: Fp2Parameters> Fp2<P>[src]
pub fn new(c0: P::Fp, c1: P::Fp) -> Self[src]
pub fn norm(&self) -> P::Fp[src]
Norm of Fp2 over Fp: Norm(a) = a.x^2 - beta * a.y^2
pub fn mul_by_fp(&mut self, element: &P::Fp)[src]
Trait Implementations
impl<'a, P: Fp2Parameters> Add<&'a Fp2<P>> for Fp2<P>[src]
type Output = Self
The resulting type after applying the + operator.
fn add(self, other: &Self) -> Self[src]
impl<'a, P: Fp2Parameters> AddAssign<&'a Fp2<P>> for Fp2<P>[src]
fn add_assign(&mut self, other: &Self)[src]
impl<P: Fp2Parameters> CanonicalDeserialize for Fp2<P>[src]
fn deserialize<R: Read>(reader: &mut R) -> Result<Self, SerializationError>[src]
pub fn deserialize_uncompressed<R>(
reader: &mut R
) -> Result<Self, SerializationError> where
R: Read, [src]
reader: &mut R
) -> Result<Self, SerializationError> where
R: Read,
impl<P: Fp2Parameters> CanonicalDeserializeWithFlags for Fp2<P>[src]
fn deserialize_with_flags<R: Read, F: Flags>(
reader: &mut R
) -> Result<(Self, F), SerializationError>[src]
reader: &mut R
) -> Result<(Self, F), SerializationError>
impl<P: Fp2Parameters> CanonicalSerialize for Fp2<P>[src]
fn serialize<W: Write>(&self, writer: &mut W) -> Result<(), SerializationError>[src]
fn serialized_size(&self) -> usize[src]
pub fn serialize_uncompressed<W>(
&self,
writer: &mut W
) -> Result<(), SerializationError> where
W: Write, [src]
&self,
writer: &mut W
) -> Result<(), SerializationError> where
W: Write,
pub fn uncompressed_size(&self) -> usize[src]
impl<P: Fp2Parameters> CanonicalSerializeWithFlags for Fp2<P>[src]
fn serialize_with_flags<W: Write, F: Flags>(
&self,
writer: &mut W,
flags: F
) -> Result<(), SerializationError>[src]
&self,
writer: &mut W,
flags: F
) -> Result<(), SerializationError>
impl<P: Fp2Parameters> Clone for Fp2<P> where
P: Fp2Parameters, [src]
P: Fp2Parameters,
fn clone(&self) -> Self[src]
pub fn clone_from(&mut self, source: &Self)1.0.0[src]
impl<P: Fp2Parameters> ConstantSerializedSize for Fp2<P>[src]
const SERIALIZED_SIZE: usize[src]
const UNCOMPRESSED_SIZE: usize[src]
impl<P: Fp2Parameters> Copy for Fp2<P> where
P: Fp2Parameters, [src]
P: Fp2Parameters,
impl<P: Fp2Parameters> Debug for Fp2<P> where
P: Fp2Parameters, [src]
P: Fp2Parameters,
impl<P: Fp2Parameters> Default for Fp2<P> where
P: Fp2Parameters, [src]
P: Fp2Parameters,
impl<'de, P: Fp2Parameters> Deserialize<'de> for Fp2<P> where
P::Fp: Deserialize<'de>,
P::Fp: Deserialize<'de>, [src]
P::Fp: Deserialize<'de>,
P::Fp: Deserialize<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>, [src]
__D: Deserializer<'de>,
impl<P: Fp2Parameters> Display for Fp2<P>[src]
impl<'a, P: Fp2Parameters> Div<&'a Fp2<P>> for Fp2<P>[src]
type Output = Self
The resulting type after applying the / operator.
fn div(self, other: &Self) -> Self[src]
impl<'a, P: Fp2Parameters> DivAssign<&'a Fp2<P>> for Fp2<P>[src]
fn div_assign(&mut self, other: &Self)[src]
impl<P: Fp2Parameters> Eq for Fp2<P> where
P: Fp2Parameters, [src]
P: Fp2Parameters,
impl<P: Fp2Parameters> Field for Fp2<P>[src]
fn characteristic<'a>() -> &'a [u64][src]
fn double(&self) -> Self[src]
fn double_in_place(&mut self) -> &mut Self[src]
fn square(&self) -> Self[src]
fn from_random_bytes_with_flags(bytes: &[u8]) -> Option<(Self, u8)>[src]
fn from_random_bytes(bytes: &[u8]) -> Option<Self>[src]
fn square_in_place(&mut self) -> &mut Self[src]
fn inverse(&self) -> Option<Self>[src]
fn inverse_in_place(&mut self) -> Option<&mut Self>[src]
fn frobenius_map(&mut self, power: usize)[src]
fn pow<S: AsRef<[u64]>>(&self, exp: S) -> Self[src]
impl<P: Fp2Parameters> From<u128> for Fp2<P>[src]
impl<P: Fp2Parameters> From<u16> for Fp2<P>[src]
impl<P: Fp2Parameters> From<u32> for Fp2<P>[src]
impl<P: Fp2Parameters> From<u64> for Fp2<P>[src]
impl<P: Fp2Parameters> From<u8> for Fp2<P>[src]
impl<P: Fp2Parameters> FromBytes for Fp2<P>[src]
impl<P: Fp2Parameters> Hash for Fp2<P> where
P: Fp2Parameters, [src]
P: Fp2Parameters,
fn hash<__HP>(&self, __state: &mut __HP) where
__HP: Hasher, [src]
__HP: Hasher,
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher, 1.3.0[src]
H: Hasher,
impl<'a, P: Fp2Parameters> Mul<&'a Fp2<P>> for Fp2<P>[src]
type Output = Self
The resulting type after applying the * operator.
fn mul(self, other: &Self) -> Self[src]
impl<'a, P: Fp2Parameters> MulAssign<&'a Fp2<P>> for Fp2<P>[src]
fn mul_assign(&mut self, other: &Self)[src]
impl<P: Fp2Parameters> Neg for Fp2<P>[src]
type Output = Self
The resulting type after applying the - operator.
#[must_use]fn neg(self) -> Self[src]
impl<P: Fp2Parameters> One for Fp2<P>[src]
impl<P: Fp2Parameters> Ord for Fp2<P>[src]
Fp2 elements are ordered lexicographically.
fn cmp(&self, other: &Self) -> Ordering[src]
#[must_use]pub fn max(self, other: Self) -> Self1.21.0[src]
#[must_use]pub fn min(self, other: Self) -> Self1.21.0[src]
#[must_use]pub fn clamp(self, min: Self, max: Self) -> Self1.50.0[src]
impl<P: Fp2Parameters> PartialEq<Fp2<P>> for Fp2<P> where
P: Fp2Parameters, [src]
P: Fp2Parameters,
impl<P: Fp2Parameters> PartialOrd<Fp2<P>> for Fp2<P>[src]
fn partial_cmp(&self, other: &Self) -> Option<Ordering>[src]
#[must_use]pub fn lt(&self, other: &Rhs) -> bool1.0.0[src]
#[must_use]pub fn le(&self, other: &Rhs) -> bool1.0.0[src]
#[must_use]pub fn gt(&self, other: &Rhs) -> bool1.0.0[src]
#[must_use]pub fn ge(&self, other: &Rhs) -> bool1.0.0[src]
impl<P: Fp2Parameters> Serialize for Fp2<P> where
P::Fp: Serialize,
P::Fp: Serialize, [src]
P::Fp: Serialize,
P::Fp: Serialize,
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer, [src]
__S: Serializer,
impl<'a, P: Fp2Parameters> SquareRootField for Fp2<P> where
P::Fp: SquareRootField, [src]
P::Fp: SquareRootField,
fn legendre(&self) -> LegendreSymbol[src]
fn sqrt(&self) -> Option<Self>[src]
fn sqrt_in_place(&mut self) -> Option<&mut Self>[src]
impl<'a, P: Fp2Parameters> Sub<&'a Fp2<P>> for Fp2<P>[src]
type Output = Self
The resulting type after applying the - operator.
fn sub(self, other: &Self) -> Self[src]
impl<'a, P: Fp2Parameters> SubAssign<&'a Fp2<P>> for Fp2<P>[src]
fn sub_assign(&mut self, other: &Self)[src]
impl<P: Fp2Parameters> ToBytes for Fp2<P>[src]
impl<P: Fp2Parameters> ToConstraintField<<P as Fp2Parameters>::Fp> for Fp2<P>[src]
fn to_field_elements(&self) -> Result<Vec<P::Fp>, ConstraintFieldError>[src]
impl<P: Fp2Parameters> Zero for Fp2<P>[src]
Auto Trait Implementations
impl<P> RefUnwindSafe for Fp2<P> where
P: RefUnwindSafe,
<P as Fp2Parameters>::Fp: RefUnwindSafe,
P: RefUnwindSafe,
<P as Fp2Parameters>::Fp: RefUnwindSafe,
impl<P> Send for Fp2<P>
impl<P> Sync for Fp2<P>
impl<P> Unpin for Fp2<P> where
P: Unpin,
<P as Fp2Parameters>::Fp: Unpin,
P: Unpin,
<P as Fp2Parameters>::Fp: Unpin,
impl<P> UnwindSafe for Fp2<P> where
P: UnwindSafe,
<P as Fp2Parameters>::Fp: UnwindSafe,
P: UnwindSafe,
<P as Fp2Parameters>::Fp: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>, [src]
T: for<'de> Deserialize<'de>,
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn clone_into(&self, target: &mut T)[src]
impl<T> ToString for T where
T: Display + ?Sized, [src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<T> UniformRand for T where
Standard: Distribution<T>, [src]
Standard: Distribution<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,