Module Libsrs.Powers_of_tau

This module handles the file format of the result of powers-of-tau ceremony.

The layout of the file can be found at the bottom of this file https://github.com/ebfull/powersoftau/blob/master/src/bin/verify.rs to be let tau_powers_length = 1 lsl power in G1.size_in_bytes (* alpha in g1 *)

  1. G1.size_in_bytes (* beta in g1 *)
  2. G2.size_in_bytes (* beta in g2 *)
  3. (tau_powers_length * G1.size_in_bytes) (* g1_coeffs *)
  4. (tau_powers_length * G2.size_in_bytes) (* g2_coeffs *)
  5. (tau_powers_length * G1.size_in_bytes) (* g1_alpha_coeffs *)
  6. (tau_powers_length * G1.size_in_bytes) (* g1_beta_coeffs *)
  7. ((tau_powers_length - 1) * G1.size_in_bytes) (* h *)
val generate_domain : int -> Mavryk_bls12_381.Fr.t array
val power_of_radixfile : string -> int
val to_gs : string -> int -> int -> (bytes -> 'a) -> (domain:Mavkit_bls12_381_polynomial.Domain.t -> points:'b -> 'c) -> ('d array -> 'e) -> 'f
val to_g1s : string -> G1_carray.t
val to_g2s : string -> G2_carray.t