package octez-plonk
Plonk zero-knowledge proving system
Install
Dune Dependency
Authors
Maintainers
Sources
tezos-17.3.tar.gz
sha256=7062cd57addd452852598a2214ade393130efa087b99068d53713bdf912b3680
sha512=08e4091144a03ce3c107fb91a66501bd8b65ca3278917c455a2eaac6df3e108ade63f6ab8340a4bb152d60f404326e464d0ec95d26cafe8e82f870465d24a5fc
doc/octez-plonk.distribution/Plonk_for_distribution/Main_protocol/MakeSuper/Prover/index.html
Module MakeSuper.Prover
Source
Source
type common_prover_pp = {
n : int;
domain : Plonk.Bls.Domain.t;
pp_public_parameters : PP.PC.Commitment.prover_public_parameters;
g_map : Plonk.Bls.Poly.t Plonk.SMap.t;
g_prover_aux : PP.PC.Commitment.prover_aux;
evaluations : Plonk.Bls.Evaluations.t Plonk.SMap.t;
zk : bool;
nb_of_t_chunks : int;
eval_points : Plonk.Identities.eval_point list list;
}
Source
type circuit_prover_pp = {
circuit_size : int;
input_com_sizes : int list;
public_input_size : int;
gates : Plonk.Bls.Scalar.t array Plonk.SMap.t;
tables : Plonk.Bls.Scalar.t array list;
wires : int array array;
permutation : int array;
rc_permutation : int array;
evaluations : Plonk.Bls.Evaluations.t Plonk.SMap.t;
alpha : Plonk.Bls.Scalar.t option;
ultra : bool;
range_checks : int list * int;
}
Source
type public_parameters = {
common_pp : common_prover_pp;
circuits_map : circuit_prover_pp Plonk.SMap.t;
transcript : Bytes.t;
}
Source
val enforce_wire_values :
int array array ->
Plonk.Bls.Evaluations.scalar array ->
Plonk.Bls.Evaluations.t array
Source
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
Source
val commit_to_wires :
?all_keys:string list ->
?shifts_map:(int * int) Stdlib__Map.Make(String).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 Stdlib__Map.Make(String).t
* PP.PC.Commitment.t
* PP.PC.Commitment.prover_aux
Source
val build_f_map_perm :
public_parameters ->
gate_randomness ->
Plonk.Bls.Evaluations.t Plonk.SMap.t Plonk.SMap.t ->
Plonk.Bls.Poly.t Stdlib__Map.Make(String).t
Source
val build_f_map_plook :
?shifts_map:(int * int) Stdlib__Map.Make(String).t ->
public_parameters ->
gate_randomness ->
Plonk.Bls.Evaluations.t Plonk.SMap.t list Plonk.SMap.t ->
Plonk.Bls.Poly.t Stdlib__Map.Make(String).t
Source
val build_f_map_rc_1 :
?shifts_map:(int * int) Stdlib__Map.Make(String).t ->
public_parameters ->
gate_randomness ->
Plonk.Bls.Evaluations.t Plonk.SMap.t list Plonk.SMap.t ->
Plonk.Bls.Evaluations.t Plonk.SMap.t Plonk.SMap.t ->
Plonk.Bls.Poly.t Stdlib__Map.Make(String).t
* Plonk.Bls.Evaluations.t Plonk.SMap.t Plonk.SMap.t
Source
val build_f_map_rc_2 :
public_parameters ->
gate_randomness ->
Plonk.Bls.Evaluations.t Plonk.SMap.t Plonk.SMap.t ->
Plonk.Bls.Poly.t Stdlib__Map.Make(String).t
Source
val format_input_com :
circuit_prover_input list Plonk.SMap.t ->
(Plonk.Bls.Poly.t Plonk.SMap.t * PP.PC.Commitment.prover_aux) list
Source
val build_evaluations :
public_parameters ->
Plonk.Bls.Evaluations.polynomial Plonk.SMap.t ->
Plonk.Bls.Evaluations.t Plonk.SMap.t
Source
val build_perm_rc2_identities :
public_parameters ->
gate_randomness ->
Plonk.Identities.prover_identities
Source
val build_gates_plook_rc1_identities :
?shifts_map:(int * int) Plonk.SMap.t ->
public_parameters ->
gate_randomness ->
circuit_prover_input Plonk.List.t Plonk.SMap.t ->
Plonk.Identities.prover_identities
Source
val prove_parameters :
pp_prove:
(PP.PC.Commitment.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)
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>