package tezos-plonk

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
module PC : sig ... end
module Evaluations : 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 = PP.proof = {
  1. cm_t : PC.Commitment.t;
  2. pc_proof : PC.proof;
  3. pc_answers : PC.answer list;
}
val proof_t : proof Repr.t
type eval_point = PP.eval_point =
  1. | X
  2. | GX
  3. | Custom of string * PC.Scalar.t -> PC.Scalar.t
val convert_eval_points : generator:PC.Scalar.t -> x:PC.Scalar.t -> eval_point list -> PC.Scalar.t Plonk.SMap.t
val get_answer : PC.answer -> eval_point -> string -> PC.Scalar.t
val merge_prover_identities : prover_identities list -> prover_identities
val merge_verifier_identities : verifier_identities list -> verifier_identities
val compute_t : n:int -> alpha:PC.Scalar.t -> nb_of_t_chunks:int -> Evaluations.t Plonk.SMap.t -> Evaluations.polynomial Plonk.SMap.t
val prove : prover_public_parameters -> transcript -> n:int -> generator:PC.Scalar.t -> secrets: (PC.Polynomial.Polynomial.t Plonk.SMap.t * PC.Commitment.prover_aux) list -> eval_points:eval_point list list -> evaluations:Evaluations.t Plonk.SMap.t -> identities:prover_identities -> nb_of_t_chunks:int -> proof * transcript
val verify : verifier_public_parameters -> transcript -> n:int -> generator:PC.Scalar.t -> commitments:PC.Commitment.t list -> eval_points:eval_point list list -> ?non_committed:non_committed -> identities:verifier_identities -> proof -> bool * transcript