package tezos-plonk

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Parameters

Signature

include Plonk.Polynomial_commitment.S with module Scalar = PC.Scalar
module Scalar = PC.Scalar
module Polynomial : Bls12_381_polynomial.S with type scalar = Scalar.t
module Scalar_map : Stdlib.Map.S with type key = Scalar.t
type secret = Polynomial.Polynomial.t Plonk.SMap.t
type query = Scalar.t Plonk.SMap.t
val query_t : query Repr.t
val answer_t : answer Repr.t
type proof
val proof_t : proof Repr.t
type transcript = Stdlib.Bytes.t
val evaluate : secret -> query -> answer
val prove : Public_parameters.prover -> transcript -> secret list -> Commitment.prover_aux list -> query list -> answer list -> proof * transcript
val verify : Public_parameters.verifier -> transcript -> Commitment.t list -> query list -> answer list -> proof -> bool * transcript
type prover_aux = {
  1. r : Scalar.t;
  2. s_list : Scalar.t Plonk.SMap.t list;
  3. cm_answers : Scalar.t;
}
val poseidon : Scalar.t array -> Scalar.t
val prove_super_aggregation : Public_parameters.prover -> transcript -> Polynomial.Polynomial.t Plonk.SMap.t list -> Commitment.prover_aux list -> query list -> Scalar.t Plonk.SMap.t Plonk.SMap.t list -> (proof * prover_aux) * transcript
val verify_super_aggregation : Public_parameters.verifier -> transcript -> Commitment.t list -> query list -> Scalar.t Plonk.SMap.t list -> Scalar.t -> proof -> bool * Scalar.t * transcript
OCaml

Innovation. Community. Security.