package octez-plonk

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
module PC : sig ... end
module Answers_commitment : sig ... end
type prover_public_parameters = PC.Public_parameters.prover
val prover_public_parameters_t : prover_public_parameters Repr.t
type verifier_public_parameters = PC.Public_parameters.verifier
val verifier_public_parameters_t : verifier_public_parameters Repr.t
type transcript = PC.transcript
val transcript_t : transcript Repr.t
type proof = Polynomial_protocol.proof = {
  1. cm_t : PC.Commitment.t;
  2. pc_proof : PC.proof;
  3. pc_answers : PC.answer list;
}
val proof_t : proof Repr.t
val setup : setup_params:PC.Public_parameters.setup_params -> srs: (Octez_bls12_381_polynomial.Bls12_381_polynomial.Srs.t * Octez_bls12_381_polynomial.Bls12_381_polynomial.Srs.t) -> prover_public_parameters * verifier_public_parameters
val prove : prover_public_parameters -> transcript -> n:int -> generator:Plonk.Bls.Scalar.t -> secrets:(Plonk.Bls.Poly.t Plonk.SMap.t * PC.Commitment.prover_aux) list -> eval_points:Plonk.Identities.eval_point list list -> evaluations:Plonk.Bls.Evaluations.t Plonk.SMap.t -> identities:Plonk.Identities.prover_identities -> nb_of_t_chunks:int -> proof * transcript
val verify : verifier_public_parameters -> transcript -> n:int -> generator:Plonk.Bls.Scalar.t -> commitments:PC.Commitment.t list -> eval_points:Plonk.Identities.eval_point list list -> identities:Plonk.Identities.verifier_identities -> proof -> bool * transcript
val update_transcript_with_formatted_answers : transcript -> (Plonk.Bls.Poly.scalar array -> Answers_commitment.t) Plonk.SMap.t -> Plonk.Bls.Poly.scalar Plonk.SMap.t Plonk.SMap.t list -> Plonk.Bls.Poly.scalar list * Answers_commitment.t Plonk.SMap.t * transcript
val prove_super_aggregation : prover_public_parameters -> transcript -> commit_to_answers_map: (Plonk.Bls.Scalar.t array -> Answers_commitment.t) Plonk.SMap.t -> n:int -> generator:Plonk.Bls.Scalar.t -> secrets:(Plonk.Bls.Poly.t Plonk.SMap.t * PC.Commitment.prover_aux) list -> eval_points:Plonk.Identities.eval_point list list -> evaluations:Plonk.Bls.Evaluations.t Plonk.SMap.t -> identities:Plonk.Identities.prover_identities -> nb_of_t_chunks:int -> (proof * prover_aux) * transcript
val verify_super_aggregation : verifier_public_parameters -> transcript -> n:int -> generator:Plonk.Bls.Scalar.t -> commitments:PC.Commitment.t list -> eval_points:Plonk.Identities.eval_point list list -> s_list:Plonk.Bls.Scalar.t Plonk.SMap.t list -> cms_answers:Answers_commitment.public Plonk.SMap.t -> t_answers:Plonk.Bls.Scalar.t list -> ids_batch:(Plonk.Bls.Scalar.t * int) Plonk.SMap.t -> proof -> (bool * verifier_aux) * PC.transcript
OCaml

Innovation. Community. Security.