Trait halo2_backend::poly::commitment::ParamsVerifier

source ·
pub trait ParamsVerifier<'params, C: CurveAffine>: Params<C> {
    type MSM: MSM<C> + 'params;

    const COMMIT_INSTANCE: bool;

    // Required method
    fn empty_msm(&'params self) -> Self::MSM;
}
Expand description

Verifier specific functionality with circuit constraints

Required Associated Types§

source

type MSM: MSM<C> + 'params

Multiscalar multiplication engine

Required Associated Constants§

source

const COMMIT_INSTANCE: bool

Can commit to instance or not.

Required Methods§

source

fn empty_msm(&'params self) -> Self::MSM

Generates an empty multiscalar multiplication struct using the appropriate params.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<'params, E: Engine> ParamsVerifier<'params, <E as Engine>::G1Affine> for ParamsKZG<E>
where E::G1Affine: SerdeCurveAffine<ScalarExt = <E as Engine>::Fr, CurveExt = <E as Engine>::G1>, E::G1: CurveExt<AffineExt = E::G1Affine>, E::G2Affine: SerdeCurveAffine,

§

type MSM = MSMKZG<E>

source§

const COMMIT_INSTANCE: bool = true

source§

impl<'params, E: Engine> ParamsVerifier<'params, <E as Engine>::G1Affine> for ParamsVerifierKZG<E>
where E::G1Affine: SerdeCurveAffine<ScalarExt = <E as Engine>::Fr, CurveExt = <E as Engine>::G1>, E::G1: CurveExt<AffineExt = E::G1Affine>, E::G2Affine: SerdeCurveAffine,

§

type MSM = MSMKZG<E>

source§

const COMMIT_INSTANCE: bool = false