pub type Fq6 = CubicExtField<Fq2>;
Aliased Type§
struct Fq6 { /* private fields */ }
Implementations
Source§impl<F: Field> CubicExtField<F>where
Self: CubicExtFieldArith<Base = F>,
impl<F: Field> CubicExtField<F>where
Self: CubicExtFieldArith<Base = F>,
pub fn mul(&self, rhs: &Self) -> Self
pub fn mul_assign(&mut self, rhs: &Self)
pub fn square(el: &Self) -> Self
pub fn square_assign(&mut self)
Source§impl<F: Field> CubicExtField<F>
impl<F: Field> CubicExtField<F>
pub const fn new(c0: F, c1: F, c2: F) -> Self
pub const fn zero() -> Self
pub const fn one() -> Self
pub fn c0(&self) -> &F
pub fn c1(&self) -> &F
pub fn c2(&self) -> &F
pub fn double(&self) -> Self
pub fn add(&self, other: &Self) -> Self
pub fn sub(&self, other: &Self) -> Self
pub fn neg(&self) -> Self
Trait Implementations§
Source§impl<'a, 'b> Add<&'b CubicExtField<QuadExtField<Fq>>> for &'a Fq6
impl<'a, 'b> Add<&'b CubicExtField<QuadExtField<Fq>>> for &'a Fq6
Source§impl<'b> Add<&'b CubicExtField<QuadExtField<Fq>>> for Fq6
impl<'b> Add<&'b CubicExtField<QuadExtField<Fq>>> for Fq6
Source§impl<'a> Add<CubicExtField<QuadExtField<Fq>>> for &'a Fq6
impl<'a> Add<CubicExtField<QuadExtField<Fq>>> for &'a Fq6
Source§impl<'b> AddAssign<&'b CubicExtField<QuadExtField<Fq>>> for Fq6
impl<'b> AddAssign<&'b CubicExtField<QuadExtField<Fq>>> for Fq6
Source§fn add_assign(&mut self, rhs: &'b Fq6)
fn add_assign(&mut self, rhs: &'b Fq6)
Performs the
+=
operation. Read moreSource§impl AddAssign for Fq6
impl AddAssign for Fq6
Source§fn add_assign(&mut self, rhs: Fq6)
fn add_assign(&mut self, rhs: Fq6)
Performs the
+=
operation. Read moreSource§impl CubicExtFieldArith for Fq6
impl CubicExtFieldArith for Fq6
type Base = QuadExtField<Fq>
fn mul_assign( lhs: &mut CubicExtField<Self::Base>, rhs: &CubicExtField<Self::Base>, )
fn square_assign(el: &mut CubicExtField<Self::Base>)
Source§impl CubicSparseMul for Fq6
impl CubicSparseMul for Fq6
type Base = QuadExtField<Fq>
fn mul_by_1( lhs: &CubicExtField<Self::Base>, c1: &Self::Base, ) -> CubicExtField<Self::Base>
fn mul_by_01( lhs: &CubicExtField<Self::Base>, c0: &Self::Base, c1: &Self::Base, ) -> CubicExtField<Self::Base>
Source§impl ExtField for Fq6
impl ExtField for Fq6
const NON_RESIDUE: Self
fn frobenius_map(&mut self, power: usize)
fn mul_by_nonresidue(self: &Fq6) -> Fq6
Source§impl<'a, 'b> Mul<&'b CubicExtField<QuadExtField<Fq>>> for &'a Fq6
impl<'a, 'b> Mul<&'b CubicExtField<QuadExtField<Fq>>> for &'a Fq6
Source§impl<'b> Mul<&'b CubicExtField<QuadExtField<Fq>>> for Fq6
impl<'b> Mul<&'b CubicExtField<QuadExtField<Fq>>> for Fq6
Source§impl<'a> Mul<CubicExtField<QuadExtField<Fq>>> for &'a Fq6
impl<'a> Mul<CubicExtField<QuadExtField<Fq>>> for &'a Fq6
Source§impl<'b> MulAssign<&'b CubicExtField<QuadExtField<Fq>>> for Fq6
impl<'b> MulAssign<&'b CubicExtField<QuadExtField<Fq>>> for Fq6
Source§fn mul_assign(&mut self, rhs: &'b Fq6)
fn mul_assign(&mut self, rhs: &'b Fq6)
Performs the
*=
operation. Read moreSource§impl MulAssign for Fq6
impl MulAssign for Fq6
Source§fn mul_assign(&mut self, rhs: Fq6)
fn mul_assign(&mut self, rhs: Fq6)
Performs the
*=
operation. Read moreSource§impl<'a, 'b> Sub<&'b CubicExtField<QuadExtField<Fq>>> for &'a Fq6
impl<'a, 'b> Sub<&'b CubicExtField<QuadExtField<Fq>>> for &'a Fq6
Source§impl<'b> Sub<&'b CubicExtField<QuadExtField<Fq>>> for Fq6
impl<'b> Sub<&'b CubicExtField<QuadExtField<Fq>>> for Fq6
Source§impl<'a> Sub<CubicExtField<QuadExtField<Fq>>> for &'a Fq6
impl<'a> Sub<CubicExtField<QuadExtField<Fq>>> for &'a Fq6
Source§impl<'b> SubAssign<&'b CubicExtField<QuadExtField<Fq>>> for Fq6
impl<'b> SubAssign<&'b CubicExtField<QuadExtField<Fq>>> for Fq6
Source§fn sub_assign(&mut self, rhs: &'b Fq6)
fn sub_assign(&mut self, rhs: &'b Fq6)
Performs the
-=
operation. Read moreSource§impl SubAssign for Fq6
impl SubAssign for Fq6
Source§fn sub_assign(&mut self, rhs: Fq6)
fn sub_assign(&mut self, rhs: Fq6)
Performs the
-=
operation. Read moreSource§impl<F: Clone + Field> Clone for CubicExtField<F>
impl<F: Clone + Field> Clone for CubicExtField<F>
Source§fn clone(&self) -> CubicExtField<F>
fn clone(&self) -> CubicExtField<F>
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<F: Field> ConditionallySelectable for CubicExtField<F>
impl<F: Field> ConditionallySelectable for CubicExtField<F>
Source§fn conditional_select(a: &Self, b: &Self, choice: Choice) -> Self
fn conditional_select(a: &Self, b: &Self, choice: Choice) -> Self
Source§fn conditional_assign(&mut self, other: &Self, choice: Choice)
fn conditional_assign(&mut self, other: &Self, choice: Choice)
Source§fn conditional_swap(a: &mut Self, b: &mut Self, choice: Choice)
fn conditional_swap(a: &mut Self, b: &mut Self, choice: Choice)
Conditionally swap
self
and other
if choice == 1
; otherwise,
reassign both unto themselves. Read moreSource§impl<F: Field> ConstantTimeEq for CubicExtField<F>
impl<F: Field> ConstantTimeEq for CubicExtField<F>
Source§impl<F: Default + Field> Default for CubicExtField<F>
impl<F: Default + Field> Default for CubicExtField<F>
Source§fn default() -> CubicExtField<F>
fn default() -> CubicExtField<F>
Returns the “default value” for a type. Read more
Source§impl<F: ExtField> Field for CubicExtField<F>
impl<F: ExtField> Field for CubicExtField<F>
Source§fn random(rng: impl RngCore) -> Self
fn random(rng: impl RngCore) -> Self
Returns an element chosen uniformly at random using a user-provided RNG.
Source§fn sqrt(&self) -> CtOption<Self>
fn sqrt(&self) -> CtOption<Self>
Returns the square root of the field element, if it is
quadratic residue. Read more
Source§fn sqrt_ratio(_: &Self, _: &Self) -> (Choice, Self)
fn sqrt_ratio(_: &Self, _: &Self) -> (Choice, Self)
Computes: Read more
Source§fn invert(&self) -> CtOption<Self>
fn invert(&self) -> CtOption<Self>
Computes the multiplicative inverse of this element,
failing if the element is zero.
Source§fn is_zero_vartime(&self) -> bool
fn is_zero_vartime(&self) -> bool
Returns true iff this element is zero. Read more