pub trait LineMulMType<Fp2, Fp12> {
// Required methods
fn mul_023_by_023(
l0: &EvaluatedLine<Fp2>,
l1: &EvaluatedLine<Fp2>,
) -> [Fp2; 5];
fn mul_by_023(f: &Fp12, l: &EvaluatedLine<Fp2>) -> Fp12;
fn mul_by_02345(f: &Fp12, x: &[Fp2; 5]) -> Fp12;
}
Expand description
Trait definition for line multiplication opcodes for M-type lines
Required Methods§
Sourcefn mul_023_by_023(l0: &EvaluatedLine<Fp2>, l1: &EvaluatedLine<Fp2>) -> [Fp2; 5]
fn mul_023_by_023(l0: &EvaluatedLine<Fp2>, l1: &EvaluatedLine<Fp2>) -> [Fp2; 5]
Multiplies two lines in 023-form to get an element in 02345-form
Sourcefn mul_by_023(f: &Fp12, l: &EvaluatedLine<Fp2>) -> Fp12
fn mul_by_023(f: &Fp12, l: &EvaluatedLine<Fp2>) -> Fp12
Multiplies a line in 023-form with a Fp12 element to get an Fp12 element
Sourcefn mul_by_02345(f: &Fp12, x: &[Fp2; 5]) -> Fp12
fn mul_by_02345(f: &Fp12, x: &[Fp2; 5]) -> Fp12
Multiplies a line in 02345-form with a Fp12 element to get an Fp12 element
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.