Trait halo2_proofs::poly::commitment::MSM
source · [−]pub trait MSM<C: CurveAffine>: Clone + Debug + Send + Sync {
fn append_term(&mut self, scalar: C::Scalar, point: C::CurveExt);
fn add_msm(&mut self, other: &Self)
where
Self: Sized;
fn scale(&mut self, factor: C::Scalar);
fn check(&self) -> bool;
fn eval(&self) -> C::CurveExt;
fn bases(&self) -> Vec<C::CurveExt>;
fn scalars(&self) -> Vec<C::Scalar>;
}
Expand description
Multi scalar multiplication engine
Required Methods
sourcefn append_term(&mut self, scalar: C::Scalar, point: C::CurveExt)
fn append_term(&mut self, scalar: C::Scalar, point: C::CurveExt)
Add arbitrary term (the scalar and the point)