package octez-libs
include Polynomial_commitment.PC_for_distribution_sig
include module type of BasePC
type secret = Kzg.Bls.Poly.t Kzg.SMap.t
type query = Kzg.Bls.Scalar.t Kzg.SMap.t
type answer = Kzg.Bls.Scalar.t Kzg.SMap.t Kzg.SMap.t
module Commitment : Kzg.Interfaces.Commitment
module Public_parameters :
Kzg.Interfaces.Public_parameters
with type commitment = Commitment.public_parameters
val commit :
?all_keys:string list ->
Public_parameters.prover ->
secret ->
Commitment.t * Commitment.prover_aux
val prove :
Public_parameters.prover ->
Kzg.Utils.Transcript.t ->
secret list ->
Commitment.prover_aux list ->
query list ->
answer list ->
proof * Kzg.Utils.Transcript.t
val verify :
Public_parameters.verifier ->
Kzg.Utils.Transcript.t ->
Commitment.t list ->
query list ->
answer list ->
proof ->
bool * Kzg.Utils.Transcript.t
val worker_msg_t : worker_msg Repr.t
val main_prover_msg_t : main_prover_msg Repr.t
val distributed_expand_transcript :
Kzg.Utils.Transcript.t ->
query list ->
answer list ->
Kzg.Utils.Transcript.t
val distributed_prove_main1 :
Public_parameters.prover ->
Kzg.Utils.Transcript.t ->
query list ->
answer list ->
secret list ->
Commitment.prover_aux list ->
worker_msg * main_prover_state
val distributed_prove_worker :
secret list ->
Commitment.prover_aux list ->
worker_msg ->
main_prover_msg
val distributed_prove_main2 :
main_prover_state ->
main_prover_msg list ->
proof * Kzg.Utils.Transcript.t * partial_prover_aux
type prover_aux = {
r : Kzg.Bls.Scalar.t;
s_list : Kzg.Bls.Scalar.t Distribution.Kzg_pack.SMap.t list;
}
val prove_super_aggregation :
Public_parameters.prover ->
Kzg.Utils.Transcript.t ->
Kzg.Bls.Poly.t Distribution.Kzg_pack.SMap.t list ->
Commitment.prover_aux list ->
query list ->
Kzg.Bls.Scalar.t Distribution.Kzg_pack.SMap.t Distribution.Kzg_pack.SMap.t
list ->
(proof * prover_aux) * Kzg.Utils.Transcript.t
val verify_super_aggregation :
Public_parameters.verifier ->
Kzg.Utils.Transcript.t ->
Commitment.t list ->
query list ->
Kzg.Bls.Scalar.t Distribution.Kzg_pack.SMap.t list ->
proof ->
bool * Kzg.Bls.Scalar.t * Kzg.Utils.Transcript.t
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>