package octez-libs

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

Parameters

Signature

module ISet : sig ... end
module IMap : sig ... end
exception Entry_not_in_table
type transcript = bytes
type prover_public_parameters = {
  1. n : int;
  2. domain_k : Plonk.Bls.Domain.t;
  3. domain_2k : Plonk.Bls.Domain.t;
  4. table : ISet.t Bls.Scalar_map.t list;
  5. cms_lagrange : Bls.G1.t array;
  6. cms_lagrange_0 : Bls.G1.t array;
  7. q : Bls.G1.t array list;
  8. pc : PC.Public_parameters.prover;
}
type verifier_public_parameters = {
  1. n : int;
  2. k : int;
  3. srs2_0 : Bls.G2.t;
  4. srs2_1 : Bls.G2.t;
  5. srs2_N_1_k_2 : Bls.G2.t;
  6. cm_table : Bls.G2.t list;
  7. cm_zv : Bls.G2.t;
  8. pc : PC.Public_parameters.verifier;
}
val f_name : string
val m_name : string
val a_name : string
val qa_name : string
val b0_name : string
val qb_name : string
val p_name : string
val f_agg_name : string
val aggregate_cm : PC.Commitment.t -> Plonk.Bls.G1.Scalar.t array -> Bls.G1.t
val get_pc_query : Plonk.Bls.Scalar.t -> Plonk.Bls.Scalar.t SMap.t list
val compute_and_commit : ('a -> Plonk.Bls.G1.Scalar.t * Bls.G1.t) -> 'a list -> Plonk.Bls.G1.Scalar.t array * Bls.G1.t
val compute_m_and_t_sparse : prover_public_parameters -> Bls.Scalar_map.key array SMap.t -> 'a array -> (IMap.key * Plonk.Bls.Scalar.t * 'b) list * Bls.G1.t
val compute_cm_qa : Plonk.Bls.G1.Scalar.t array -> prover_public_parameters -> (int * Plonk.Bls.G1.Scalar.t) list -> Bls.G1.t
val compute_a0 : int -> ('a * Plonk.Bls.Scalar.t) list -> Plonk.Bls.Scalar.t
val compute_cm_a0 : prover_public_parameters -> Plonk.Bls.Scalar.t array -> (IMap.key * Plonk.Bls.Scalar.t) list list -> Bls.G1.t
val kzg_verify : verifier_public_parameters -> bytes -> proof -> int -> Plonk.Bls.Scalar.t -> bool * PC.transcript
val verify_f_agg : Plonk.Bls.Scalar.t array -> proof -> bool
val verify : verifier_public_parameters -> bytes -> proof -> bool * Bytes.t
OCaml

Innovation. Community. Security.