package octez-plonk

  1. Overview
  2. Docs
type common_prover_pp = {
  1. n : int;
  2. domain : Plonk.Bls.Domain.t;
  3. pp_public_parameters : PP.prover_public_parameters;
  4. g_map : Plonk.Bls.Poly.t Plonk.SMap.t;
  5. g_prover_aux : PP.PC.Commitment.prover_aux;
  6. evaluations : Plonk.Bls.Evaluations.t Plonk.SMap.t;
  7. zk : bool;
  8. nb_of_t_chunks : int;
  9. eval_points : Plonk.Identities.eval_point list list;
}
val common_prover_pp_t : common_prover_pp Repr.t
type circuit_prover_pp = {
  1. circuit_size : int;
  2. input_com_sizes : int list;
  3. public_input_size : int;
  4. gates : Plonk.Bls.Scalar.t array Plonk.SMap.t;
  5. tables : Plonk.Bls.Scalar.t array list;
  6. wires : int array array;
  7. permutation : int array;
  8. rc_permutation : int array;
  9. evaluations : Plonk.Bls.Evaluations.t Plonk.SMap.t;
  10. alpha : Plonk.Bls.Scalar.t option;
  11. ultra : bool;
  12. range_checks : int list * int;
}
val circuit_prover_pp_t : circuit_prover_pp Repr.t
type public_parameters = {
  1. common_pp : common_prover_pp;
  2. circuits_map : circuit_prover_pp Plonk.SMap.t;
  3. transcript : PP.transcript;
}
val public_parameters_t : public_parameters Repr.t
val enforce_wire_values : int array array -> Plonk.Bls.Evaluations.scalar array -> Plonk.Bls.Evaluations.t array
val compute_wire_polynomials : zero_knowledge:bool -> gates:'a Plonk.SMap.t -> int -> Plonk.Bls.Evaluations.domain -> Plonk.Bls.Evaluations.t Plonk.SMap.t -> Plonk.Bls.Poly.t Plonk.SMap.t * Plonk.Bls.Poly.t Plonk.SMap.t option
val commit_to_wires : ?all_keys:string list -> ?shifts_map:(int * int) Plonk__SMap.t -> public_parameters -> circuit_prover_input list Plonk.SMap.t -> Plonk.Bls.Evaluations.t Plonk.SMap.t list Plonk.SMap.t * Plonk.Bls.Poly.t Plonk.SMap.t list Plonk.SMap.t * Plonk.Bls.Poly.t Plonk.SMap.t option list Plonk.SMap.t * Plonk.Bls.Poly.t Plonk__SMap.t * PP.PC.Commitment.t * PP.PC.Commitment.prover_aux
val build_f_map_plook : ?shifts_map:(int * int) Plonk__SMap.t -> public_parameters -> gate_randomness -> Plonk.Bls.Evaluations.t Plonk.SMap.t list Plonk.SMap.t -> Plonk.Bls.Poly.t Plonk__SMap.t
val prove_parameters : pp_prove: (PP.prover_public_parameters -> bytes -> n:int -> generator:Plonk.Bls.Domain.scalar -> secrets: (Plonk.Bls.Poly.t Plonk.SMap.t * PP.PC.Commitment.prover_aux) list -> eval_points:Plonk.Identities.eval_point list list -> evaluations:Plonk.Bls.Evaluations.t Plonk.SMap.t -> identities:Plonk.Identities.prover_identities -> nb_of_t_chunks:int -> 'a * 'b) -> public_parameters -> inputs_map:circuit_prover_input Plonk.List.t Plonk.SMap.t -> 'a * (PP.PC.Commitment.t * PP.PC.Commitment.t * gate_randomness)
OCaml

Innovation. Community. Security.