package tezos-plonk
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
Plonk zero-knowledge proving system
Install
dune-project
Dependency
Authors
Maintainers
Sources
privacy-team-v1.0.1.tar.gz
md5=03d6ca5fb1c6865b6628e0dd49575895
sha512=20494d1d00ded43f3625e06e037d3bad04f0a7320914b542b882d3d0293c9b02845b7ca9ee4ff0eb8ea495eff5633016861c39370cca92c12aacae0e84483ca4
doc/tezos-plonk.aggregation/Aggregation/Polynomial_protocol/index.html
Module Aggregation.Polynomial_protocolSource
include sig ... end
Source
type verifier_identities =
PC.Scalar.t ->
PC.Scalar.t Plonk.SMap.t Plonk.SMap.t ->
PC.Scalar.t Plonk.SMap.tSource
type non_committed =
PC.Scalar.t ->
PC.Scalar.t Plonk.SMap.t Plonk.SMap.t ->
PC.Scalar.t Plonk.SMap.tSource
type proof = Make_aggregation(Polynomial_commitment).proof = {cm_t : PC.Commitment.t;pc_proof : PC.proof;pc_answers : PC.answer list;
}Source
type eval_point = Make_aggregation(Polynomial_commitment).eval_point = | X| GX| Custom of string * PC.Scalar.t -> PC.Scalar.t
Source
val convert_eval_points :
generator:PC.Scalar.t ->
x:PC.Scalar.t ->
eval_point list ->
PC.Scalar.t Plonk.SMap.tSource
val compute_t :
n:int ->
alpha:PC.Scalar.t ->
nb_of_t_chunks:int ->
Evaluations.t Plonk.SMap.t ->
Evaluations.polynomial Plonk.SMap.tSource
val setup :
setup_params:PC.Public_parameters.setup_params ->
srs:(Bls12_381_polynomial.Srs.t * Bls12_381_polynomial.Srs.t) ->
prover_public_parameters * verifier_public_parametersSource
val prove :
prover_public_parameters ->
transcript ->
n:int ->
generator:PC.Scalar.t ->
secrets:
(PC.Polynomial.Polynomial.t Plonk.SMap.t * PC.Commitment.prover_aux) list ->
eval_points:eval_point list list ->
evaluations:Evaluations.t Plonk.SMap.t ->
identities:prover_identities ->
nb_of_t_chunks:int ->
proof * transcriptSource
val verify :
verifier_public_parameters ->
transcript ->
n:int ->
generator:PC.Scalar.t ->
commitments:PC.Commitment.t list ->
eval_points:eval_point list list ->
?non_committed:non_committed ->
identities:verifier_identities ->
proof ->
bool * transcriptSource
type prover_aux = Make_aggregation(Polynomial_commitment).prover_aux = {answers : PC.Scalar.t SMap.t SMap.t list;batch : PC.Scalar.t SMap.t list;alpha : PC.Scalar.t;x : PC.Scalar.t;r : PC.Scalar.t;cm_answers : PC.Scalar.t;
}Source
type verifier_aux = Make_aggregation(Polynomial_commitment).verifier_aux = {alpha : PC.Scalar.t;x : PC.Scalar.t;r : PC.Scalar.t;
}Source
val prove_super_aggregation :
prover_public_parameters ->
transcript ->
n:int ->
generator:PC.Scalar.t ->
secrets:(PC.Polynomial.Polynomial.t SMap.t * PC.Commitment.prover_aux) list ->
eval_points:eval_point list list ->
evaluations:Evaluations.t SMap.t ->
identities:prover_identities ->
nb_of_t_chunks:int ->
(proof * prover_aux) * transcriptSource
val verify_super_aggregation :
verifier_public_parameters ->
transcript ->
n:int ->
generator:PC.Scalar.t ->
commitments:PC.Commitment.t list ->
eval_points:eval_point list list ->
s_list:PC.Scalar.t SMap.t list ->
cm_answers:PC.Scalar.t ->
proof ->
(bool * verifier_aux) * PC.transcript sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>