package tezos-plonk

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
exception Entry_not_in_table of string
exception Rest_not_null of string
exception Wrong_transcript of string
type scalar = Bls12_381.Fr.t
val scalar_encoding : scalar Data_encoding.t
type transcript
type prover_public_parameters
type verifier_public_parameters
val verifier_public_parameters_encoding : verifier_public_parameters Data_encoding.t
type proof
val proof_encoding : proof Data_encoding.t
type prover_inputs = {
  1. public : scalar array;
  2. witness : scalar array;
}
val transcript_encoding : transcript Data_encoding.t
val setup : ?num_additional_domains:int -> zero_knowledge:bool -> Circuit.t -> srs: (Bls12_381_polynomial.Polynomial.Srs.t * Bls12_381_polynomial.Polynomial.Srs.t) -> nb_proofs:int -> (prover_public_parameters * verifier_public_parameters) * transcript
val prove : ?num_additional_domains:int -> (prover_public_parameters * transcript) -> inputs:prover_inputs -> proof * transcript
val verify : (verifier_public_parameters * transcript) -> public_inputs:scalar array -> proof -> bool * transcript
val setup_multi_circuits : ?num_additional_domains:int -> zero_knowledge:bool -> (Circuit.t * int) SMap.t -> srs: (Bls12_381_polynomial.Polynomial.Srs.t * Bls12_381_polynomial.Polynomial.Srs.t) -> (prover_public_parameters * verifier_public_parameters) * transcript
val prove_multi_circuits : ?num_additional_domains:int -> (prover_public_parameters * transcript) -> inputs:prover_inputs list SMap.t -> proof * transcript
val verify_multi_circuits : (verifier_public_parameters * transcript) -> public_inputs:scalar array list SMap.t -> proof -> bool * transcript