Module Cq.Internal

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 : Kzg.Bls.Domain.t;
  3. domain_2k : Kzg.Bls.Domain.t;
  4. table : ISet.t Kzg.Bls.Scalar_map.t list;
  5. cms_lagrange : Kzg.Bls.G1.t array;
  6. cms_lagrange_0 : Kzg.Bls.G1.t array;
  7. q : Kzg.Bls.G1.t array list;
  8. pc : PC.Public_parameters.prover;
}
type verifier_public_parameters = {
  1. n : int;
  2. k : int;
  3. srs2_0 : Kzg.Bls.G2.t;
  4. srs2_1 : Kzg.Bls.G2.t;
  5. srs2_N_1_k_2 : Kzg.Bls.G2.t;
  6. cm_table : Kzg.Bls.G2.t list;
  7. cm_zv : Kzg.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 open_at_0 : Kzg.Bls.Poly.t -> Kzg.Bls.Poly.t
val compute_and_commit : ('a -> Kzg.Bls.G1.Scalar.t * Kzg.Bls.G1.t) -> 'a list -> Kzg.Bls.G1.Scalar.t array * Kzg.Bls.G1.t
val setup_verifier : ('a * Kzg.Bls.Srs_g2.t) -> int -> int -> Kzg.Bls.Poly.t list -> PC.Public_parameters.verifier -> verifier_public_parameters
val compute_m_and_t_sparse : prover_public_parameters -> Kzg.Bls.Scalar_map.key array Plonk.Identities.SMap.t -> 'a array -> (IMap.key * Kzg.Bls.Scalar.t * 'b) list * Kzg.Bls.G1.t
val compute_cm_qa : Kzg.Bls.G1.Scalar.t array -> prover_public_parameters -> (int * Kzg.Bls.G1.Scalar.t) list -> Kzg.Bls.G1.t
val compute_a0 : int -> ('a * Kzg.Bls.Scalar.t) list -> Kzg.Bls.Scalar.t
val compute_cm_a0 : prover_public_parameters -> Kzg.Bls.Scalar.t array -> (IMap.key * Kzg.Bls.Scalar.t) list list -> Kzg.Bls.G1.t
val verify_f_agg : Kzg.Bls.Scalar.t array -> proof -> bool
val verify : verifier_public_parameters -> Kzg.Utils.Transcript.t -> proof -> bool * Kzg__Utils.Transcript.t