Function kimchi_msm::prover::prove

source ·
pub fn prove<G: KimchiCurve, OpeningProof: OpenProof<G>, EFqSponge: Clone + FqSponge<G::BaseField, G, G::ScalarField>, EFrSponge: FrSponge<G::ScalarField>, RNG, const N_WIT: usize, const N_REL: usize, const N_DSEL: usize, const N_FSEL: usize, ID: LookupTableID>(
    domain: EvaluationDomains<G::ScalarField>,
    srs: &OpeningProof::SRS,
    constraints: &Vec<E<G::ScalarField>>,
    fixed_selectors: Box<[Vec<G::ScalarField>; N_FSEL]>,
    inputs: ProofInputs<N_WIT, G::ScalarField, ID>,
    rng: &mut RNG
) -> Result<Proof<N_WIT, N_REL, N_DSEL, N_FSEL, G, OpeningProof, ID>, ProverError>where
    OpeningProof::SRS: Sync,
    RNG: RngCore + CryptoRng,