Trait pairing::MultiMillerLoop [−][src]
pub trait MultiMillerLoop: Engine { type G2Prepared: Clone + Send + Sync + From<Self::G2Affine>; type Result: MillerLoopResult<Gt = Self::Gt>; fn multi_miller_loop(
terms: &[(&Self::G1Affine, &Self::G2Prepared)]
) -> Self::Result; }
Expand description
An engine that can compute sums of pairings in an efficient way.
Associated Types
type G2Prepared: Clone + Send + Sync + From<Self::G2Affine>
[src]
type G2Prepared: Clone + Send + Sync + From<Self::G2Affine>
[src]The prepared form of Self::G2Affine
.
type Result: MillerLoopResult<Gt = Self::Gt>
[src]
type Result: MillerLoopResult<Gt = Self::Gt>
[src]The type returned by Engine::miller_loop
.
Required methods
fn multi_miller_loop(
terms: &[(&Self::G1Affine, &Self::G2Prepared)]
) -> Self::Result
[src]
fn multi_miller_loop(
terms: &[(&Self::G1Affine, &Self::G2Prepared)]
) -> Self::Result
[src]Computes $$\sum_{i=1}^n \textbf{ML}(a_i, b_i)$$ given a series of terms $$(a_1, b_1), (a_2, b_2), …, (a_n, b_n).$$