Module Polynomial_commitment.Make_impl

Parameters

Signature

type secret = PC.secret
type query = PC.query
val query_t : PC.query Repr.t
type answer = PC.answer
val answer_t : PC.answer Repr.t
module Commitment : sig ... end
module Public_parameters : sig ... end
type proof = {
  1. pc_proof : PC.proof;
  2. packed_values : Pack.packed list;
  3. pack_proof : Pack.proof;
}
val proof_t : proof Repr.t
type prover_aux = {
  1. r : Kzg.Bls.Scalar.t;
  2. s_list : Kzg.Bls.Scalar.t SMap.t list;
}
val evaluate : PC.secret -> PC.query -> PC.answer
val prove_pack : Public_parameters.prover -> Kzg__Utils.Transcript.t -> Kzg.Bls.Poly.t SMap.t list -> Commitment.prover_aux list -> PC.query list -> Kzg.Bls.Scalar.t SMap.t SMap.t list -> (proof * prover_aux) * Kzg.Utils.Transcript.t