Kzg.Polynomial_commitment
module Commit = Commitment.Commit
module Commitment = Commitment.Commitment_G1
module Public_parameters : sig ... end
type secret = Commitment.secret
type query = Bls.Scalar.t SMap.t
val query_t : Bls.Scalar.t SMap.t Repr.ty
type answer = Bls.Scalar.t SMap.t SMap.t
val answer_t : Bls.Scalar.t SMap.t SMap.t Repr.ty
val commit :
?all_keys:'a ->
Public_parameters.prover ->
Kzg.Bls.Poly.t SMap.t ->
Bls.G1.Srs.elt SMap.t * unit
val compute_Ws :
Public_parameters.prover ->
Kzg.Bls.Poly.t SMap.t ->
Kzg.Bls.Poly.scalar SMap.t ->
Bls.Scalar.t SMap.t ->
Bls.G1.Srs.elt SMap.t
val verifier_check :
Public_parameters.verifier ->
Bls.G1.t SMap.t ->
Bls.Scalar.t SMap.t SMap.t ->
Bls.Scalar.t SMap.t ->
Bls.Scalar.t SMap.t ->
Bls.G1.t SMap.t ->
bool
val sample_ys :
Kzg__Utils.Transcript.t ->
'a SMap.t ->
Bls.Scalar.t SMap.t * Kzg__Utils.Transcript.t
val batch_answer :
Bls.Scalar.t SMap.t ->
Bls.Scalar.t SMap.t SMap.t ->
Bls.Scalar.t SMap.t * Bls.Scalar.t SMap.t SMap.t
val batch_polys :
Kzg.Bls.Poly.scalar SMap.t SMap.t ->
Kzg.Bls.Poly.t SMap.t ->
Kzg.Bls.Poly.t SMap.t
val prove_single :
Public_parameters.prover ->
Kzg__Utils.Transcript.t ->
Kzg.Bls.Poly.t SMap.t ->
Bls.Scalar.t SMap.t ->
Bls.Scalar.t SMap.t SMap.t ->
Bls.G1.Srs.elt SMap.t * Utils.Transcript.t
val verify_single :
Public_parameters.verifier ->
Kzg__Utils.Transcript.t ->
Bls.G1.t SMap.t ->
Bls.Scalar.t SMap.t ->
Bls.Scalar.t SMap.t SMap.t ->
Bls.G1.t SMap.t ->
bool * Utils.Transcript.t
val group_cmts : Commitment.t list -> Commitment.t
val evaluate : Kzg.Bls.Poly.t SMap.t -> query -> answer
val prove :
Public_parameters.prover ->
Utils.Transcript.t ->
secret list ->
'a ->
query list ->
answer list ->
Bls.G1.Srs.elt SMap.t * Utils.Transcript.t
val verify :
Public_parameters.verifier ->
Utils.Transcript.t ->
Commitment.t list ->
query list ->
answer list ->
Bls.G1.t SMap.t ->
bool * Utils.Transcript.t