Primitive.Fr
include S.FIELD with type t = Mavryk_bls12_381.Fr.t
type t = Mavryk_bls12_381.Fr.t
val order : Z.t
The order of the finite field
val check_bytes : Bytes.t -> bool
check_bytes bs
returns true
if bs
is a correct byte representation of a field element
val zero : t
The neutral element for the addition
val one : t
The neutral element for the multiplication
negate x
returns -x mod order
. Equivalently, negate x
returns the unique y
such that x + y mod order = 0
From a predefined bytes representation, construct a value t. It is not required that to_bytes (Option.get (of_bytes_opt t)) = t
. By default, little endian encoding is used and the given element is modulo the prime order
of_z x
builds an element t from the Zarith element x
. mod order
is applied if x >= order
or x < 0
.