package octez-libs
A package that contains multiple base libraries used by the Octez suite
Install
Dune Dependency
Authors
Maintainers
Sources
tezos-octez-v20.1.tag.bz2
sha256=ddfb5076eeb0b32ac21c1eed44e8fc86a6743ef18ab23fff02d36e365bb73d61
sha512=d22a827df5146e0aa274df48bc2150b098177ff7e5eab52c6109e867eb0a1f0ec63e6bfbb0e3645a6c2112de3877c91a17df32ccbff301891ce4ba630c997a65
doc/octez-libs.plonk/Plonk/Polynomial_protocol/Make_impl/index.html
Module Polynomial_protocol.Make_impl
Source
Functor building an implementation of a polynomial protocol given a polynomial commitment scheme PC
.
Parameters
module PC : Kzg.Interfaces.Polynomial_commitment
Signature
module PC = PC
split_t n t nb_of_t_chunks
splits t
polynomial in nb_of_t_chunks
polynomials of at most n
coefficients (and at most degree n
-1), except the last one that may have more coeffictients depending on t
’s degree
Source
val compute_t :
n:int ->
alpha:Kzg.Bls.Scalar.t ->
nb_of_t_chunks:int ->
Identities.Evaluations.t Plonk.Identities.SMap.t ->
Kzg.Bls.Poly.t Plonk.Identities.SMap.t
Source
val eval_and_batch_ids :
(Kzg.Bls.Scalar.t * 'a) ->
'b Plonk.Identities.SMap.t Plonk.Identities.SMap.t list ->
('a ->
'b Plonk.Identities.SMap.t Plonk.Identities.SMap.t ->
Kzg.Bls.Scalar.t Plonk.Identities.SMap.t) ->
Kzg.Bls.Scalar.t
Source
val setup :
setup_params:PC.Public_parameters.setup_params ->
srs:(Kzg.Bls.Srs.t * Kzg.Bls.Srs.t) ->
PC.Public_parameters.prover
* PC.Public_parameters.verifier
* Kzg.Utils.Transcript.t
Source
val prove_aux :
PC.Public_parameters.prover ->
Kzg__Utils.Transcript.t ->
int ->
Kzg.Bls.Scalar.t ->
(Kzg.Bls.Poly.t Plonk.Identities.SMap.t * PC.Commitment.prover_aux) list ->
Identities.eval_point list list ->
'a ->
('a -> Identities.Evaluations.t Plonk.Identities.SMap.t) ->
int ->
(Kzg.Bls.Scalar.t * Kzg.Bls.Scalar.t * PC.answer list * PC.Commitment.t)
* Kzg.Bls.Poly.t Plonk.Identities.SMap.t list
* PC.Commitment.prover_aux list
* Kzg.Bls.Scalar.t Plonk.Identities.SMap.t list
* Kzg__Utils.Transcript.t
Source
val prove :
PC.Public_parameters.prover ->
Kzg__Utils.Transcript.t ->
n:int ->
generator:Kzg.Bls.Scalar.t ->
secrets:
(Kzg.Bls.Poly.t Plonk.Identities.SMap.t * PC.Commitment.prover_aux) list ->
eval_points:Identities.eval_point list list ->
evaluations:'a ->
identities:('a -> Identities.Evaluations.t Plonk.Identities.SMap.t) ->
nb_of_t_chunks:int ->
proof * Kzg.Utils.Transcript.t
Source
val verify_aux :
Kzg__Utils.Transcript.t ->
Kzg.Bls.Scalar.t ->
PC.Commitment.t list ->
Identities.eval_point list list ->
proof ->
Kzg.Bls.Scalar.t
* Kzg.Bls.Scalar.t
* Kzg__Utils.Transcript.t
* PC.Commitment.t list
* Kzg.Bls.Scalar.t Plonk.Identities.SMap.t list
Source
val verify :
PC.Public_parameters.verifier ->
Kzg__Utils.Transcript.t ->
n:int ->
generator:Kzg.Bls.Scalar.t ->
commitments:PC.Commitment.t list ->
eval_points:Identities.eval_point list list ->
identities:
(Kzg.Bls.Scalar.t ->
Kzg.Bls.Scalar.t Plonk.Identities.SMap.t Plonk.Identities.SMap.t ->
Kzg.Bls.Scalar.t Plonk.Identities.SMap.t) ->
proof ->
bool * Kzg.Utils.Transcript.t
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page