Trait lambdaworks_math::elliptic_curve::traits::IsPairing
source · pub trait IsPairing {
type G1Point: IsGroup;
type G2Point: IsGroup;
type OutputField: IsField;
// Required method
fn compute_batch(
pairs: &[(&Self::G1Point, &Self::G2Point)]
) -> FieldElement<Self::OutputField>;
// Provided method
fn compute(
p: &Self::G1Point,
q: &Self::G2Point
) -> FieldElement<Self::OutputField> { ... }
}Required Associated Types§
Required Methods§
sourcefn compute_batch(
pairs: &[(&Self::G1Point, &Self::G2Point)]
) -> FieldElement<Self::OutputField>
fn compute_batch( pairs: &[(&Self::G1Point, &Self::G2Point)] ) -> FieldElement<Self::OutputField>
Compute the product of the pairings for a list of point pairs.
Provided Methods§
sourcefn compute(
p: &Self::G1Point,
q: &Self::G2Point
) -> FieldElement<Self::OutputField>
fn compute( p: &Self::G1Point, q: &Self::G2Point ) -> FieldElement<Self::OutputField>
Compute the ate pairing between point p in G1 and q in G2.