package octez-libs

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
module Aggreg_circuit : sig ... end
exception Entry_not_in_table of string
exception Rest_not_null of string
module Input_commitment : sig ... end
type scalar = Plonk.Bls.Scalar.t
val scalar_t : Plonk.Bls.Scalar.t Repr.t
type circuit_map = (Plonk.Circuit.t * int) Plonk.SMap.t
type prover_meta_pp = {
  1. meta_pp : Plonk__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Kzg.PP).Prover.public_parameters;
  2. meta_solver : Plompiler.Solver.t;
  3. public_input_size : int;
  4. input_com_sizes : int list;
  5. nb_proofs : int;
  6. nb_rc_wires : int;
}
val prover_meta_pp_t : prover_meta_pp Repr.t
type verifier_meta_pp = {
  1. meta_pp : Plonk__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Kzg.PP).verifier_public_parameters;
  2. public_input_size : int;
  3. nb_proofs : int;
}
val verifier_meta_pp_t : verifier_meta_pp Repr.t
type prover_public_parameters = {
  1. main_pp : Plonk__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Pack.PP).Prover.public_parameters;
  2. meta_pps : prover_meta_pp Plonk.SMap.t;
}
val prover_public_parameters_t : prover_public_parameters Repr.t
type verifier_public_parameters = {
  1. main_pp : Plonk__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Pack.PP).verifier_public_parameters;
  2. meta_pps : verifier_meta_pp Plonk.SMap.t;
}
val verifier_public_parameters_t : verifier_public_parameters Repr.t
type proof = {
  1. main_proof : Plonk__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Pack.PP).proof;
  2. meta_proofs : Plonk__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Kzg.PP).proof Plonk.SMap.t;
  3. batch : Plonk.Bls.Scalar.t Plonk.SMap.t list;
  4. batches : (Plonk.Bls.Scalar.t * int) Plonk.SMap.t list Plonk.SMap.t;
  5. cms_answers : Distribution.Kzg.Kzg_impl.Commitment.t Plonk.SMap.t;
  6. cms_pi : Distribution.Kzg.Kzg_impl.Commitment.t Plonk.SMap.t;
  7. ids_batch : (Plonk.Bls.Scalar.t * int) Plonk.SMap.t;
  8. t_answers : Plonk.Bls.Scalar.t list;
}
val proof_t : proof Repr.t
type circuit_prover_input = {
  1. witness : scalar array;
  2. input_commitments : Plonk__Input_commitment.Make(Distributed_plonk__Distributed_prover.Main_Pack.PP.PC.Commitment).t list;
}
val circuit_prover_input_t : circuit_prover_input Repr.t
type prover_inputs = circuit_prover_input list Plonk.SMap.t
val prover_inputs_t : circuit_prover_input list Plonk.SMap.t Repr.ty
type public_inputs = scalar list
val public_inputs_t : Plonk.Bls.Scalar.t list Repr.t
type verifier_inputs = (public_inputs * Input_commitment.public list list) Plonk.SMap.t
val verifier_inputs_t : (Plonk.Bls.Scalar.t list * Input_commitment.public list list) Plonk.SMap.t Repr.ty
val to_verifier_inputs : prover_public_parameters -> Plonk__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Pack.PP).circuit_prover_input list Plonk.SMap.t -> (Aggregation.Main_protocol.scalar list * Distribution.Kzg_pack.Kzg_pack_impl.Commitment.t list list) Plonk.SMap.t
val update_prover_public_parameters : Stdlib.Bytes.t -> prover_public_parameters -> prover_public_parameters
val update_verifier_public_parameters : Stdlib.Bytes.t -> verifier_public_parameters -> verifier_public_parameters
val filter_prv_pp_circuits : prover_public_parameters -> 'a Plonk.SMap.t -> prover_public_parameters
val cs_global : Plompiler.LibCircuit.cs_result Plonk.SMap.t Stdlib.ref
val input_commit_funcs : prover_public_parameters -> 'a list Plonk.SMap.t -> Aggregation__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Pack.PP).input_commit_funcs Plonk.SMap.t
val input_commit : ?size:'a -> ?shift:'b -> prover_public_parameters -> 'c -> 'd
val meta_setup : zero_knowledge:bool -> srs:(Octez_bls12_381_polynomial.Srs.t * Octez_bls12_381_polynomial.Srs.t) -> main_prover_pp: Plonk__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Pack.PP).Prover.public_parameters -> nb_batches:int -> Plonk.SMap.key -> (Plonk.Circuit.t * int) -> prover_meta_pp * verifier_meta_pp
val meta_prove : main_prover_aux: Aggregation__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Pack.PP).prover_aux -> meta_pps:prover_meta_pp Plonk.SMap.t -> inner_pi_map:(Aggregation.Main_protocol.scalar array list * 'a) Plonk.SMap.t -> transcript:Stdlib.Bytes.t -> (Plonk.Bls.Scalar.t * 'b) Plonk.SMap.t list Plonk.SMap.t -> Plonk.SMap.key -> 'c list -> Plonk__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Kzg.PP).proof
val meta_proof : prover_public_parameters -> Plonk__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Pack.PP).circuit_prover_input list Plonk.SMap.t -> (Plonk__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Pack.PP).proof * Aggregation__Main_protocol.Make_impl(Distributed_plonk__Distributed_prover.Main_Pack.PP).prover_aux) -> proof
val meta_verify : transcript:Stdlib.Bytes.t -> inputs:(Plonk.Bls.Scalar.t list * 'a list list) Plonk.SMap.t -> proof:proof -> (Plonk.Bls.Scalar.t * Plonk.Bls.Scalar.t * Plonk.Bls.Scalar.t * Plonk.Bls.Scalar.t * Plonk.Bls.Scalar.t * Plonk.Bls.Scalar.t) -> Plonk.SMap.key -> verifier_meta_pp -> bool
val verify : verifier_public_parameters -> inputs:verifier_inputs -> proof -> bool
val scalar_encoding : Plonk.Bls.Scalar.t Data_encoding.t
val data_encoding_of_repr : 'a Repr.t -> 'a Data_encoding.encoding
val proof_encoding : proof Data_encoding.encoding
val verifier_public_parameters_encoding : verifier_public_parameters Data_encoding.encoding
module Internal_for_tests : sig ... end
OCaml

Innovation. Community. Security.