package octez-bls12-381-polynomial

  1. Overview
  2. Docs
module Fr = Bls12_381.Fr
module Stubs : sig ... end
module Domain_impl : sig ... end
module type Domain_sig = sig ... end
module type Domain_unsafe_sig = sig ... end
include Domain_sig with type t = Domain_unsafe.t and type scalar = Domain_unsafe.scalar
type scalar = Domain_unsafe.scalar
val t : t Repr.t
val length : t -> int

length p returns the length of a given array p

val get : t -> int -> scalar

get p i returns the i-th element of a given array p

val primitive_root_of_unity : int -> scalar

primitive_root_of_unity n returns a primitive n-th root of unity, provided it exists

val build : ?primitive_root:scalar -> int -> t

build n computes [one; g; ..; g^{n-1}] where g is a primitive n-th root of unity

val build_power_of_two : ?primitive_root:scalar -> int -> t

build_power_of_two log computes [one; g; ..; g^{n-1}] where g is a primitive n-th root of unity and n = 2^log

val subgroup : log:int -> t -> t

subgroup log d returns a subgroup of d of order 2^log

val inverse : t -> scalar array

inverse d returns for a domain wⁱᵢ its inverse domain w⁻ⁱᵢ

OCaml

Innovation. Community. Security.