pub type Fp12<P> = QuadExtField<Fp12ConfigWrapper<P>>;Aliased Type§
struct Fp12<P> {
pub c0: <Fp12ConfigWrapper<P> as QuadExtConfig>::BaseField,
pub c1: <Fp12ConfigWrapper<P> as QuadExtConfig>::BaseField,
}Fields§
§c0: <Fp12ConfigWrapper<P> as QuadExtConfig>::BaseFieldCoefficient c0 in the representation of the field element c = c0 + c1 * X
c1: <Fp12ConfigWrapper<P> as QuadExtConfig>::BaseFieldCoefficient c1 in the representation of the field element c = c0 + c1 * X
Implementations§
Source§impl<P: Fp12Config> Fp12<P>
impl<P: Fp12Config> Fp12<P>
pub fn mul_by_fp(&mut self, element: &<Self as Field>::BasePrimeField)
pub fn mul_by_034( &mut self, c0: &Fp2<<<P as Fp12Config>::Fp6Config as Fp6Config>::Fp2Config>, c3: &Fp2<<<P as Fp12Config>::Fp6Config as Fp6Config>::Fp2Config>, c4: &Fp2<<<P as Fp12Config>::Fp6Config as Fp6Config>::Fp2Config>, )
pub fn mul_by_014( &mut self, c0: &Fp2<<<P as Fp12Config>::Fp6Config as Fp6Config>::Fp2Config>, c1: &Fp2<<<P as Fp12Config>::Fp6Config as Fp6Config>::Fp2Config>, c4: &Fp2<<<P as Fp12Config>::Fp6Config as Fp6Config>::Fp2Config>, )
Trait Implementations§
Source§impl<P: Fp12Config> CyclotomicMultSubgroup for Fp12<P>
impl<P: Fp12Config> CyclotomicMultSubgroup for Fp12<P>
Source§const INVERSE_IS_FAST: bool = true
const INVERSE_IS_FAST: bool = true
Is the inverse fast to compute? For example, in quadratic extensions, the inverse
can be computed at the cost of negating one coordinate, which is much faster than
standard inversion.
By default this is
false, but should be set to true for quadratic extensions.Source§fn cyclotomic_inverse_in_place(&mut self) -> Option<&mut Self>
fn cyclotomic_inverse_in_place(&mut self) -> Option<&mut Self>
Compute the inverse of
self. See Self::INVERSE_IS_FAST for details.
Returns None if self.is_zero(), and Some otherwise. Read moreSource§fn cyclotomic_square_in_place(&mut self) -> &mut Self
fn cyclotomic_square_in_place(&mut self) -> &mut Self
Square
self in place. By default this is computed using
Field::square_in_place, but for degree 12 extensions,
this can be computed faster than normal squaring. Read moreSource§fn cyclotomic_square(&self) -> Self
fn cyclotomic_square(&self) -> Self
Compute a square in the cyclotomic subgroup. By default this is computed using
Field::square, but for
degree 12 extensions, this can be computed faster than normal squaring. Read moreSource§fn cyclotomic_inverse(&self) -> Option<Self>
fn cyclotomic_inverse(&self) -> Option<Self>
Compute the inverse of
self. See Self::INVERSE_IS_FAST for details.
Returns None if self.is_zero(), and Some otherwise. Read more