package octez-libs
- Overview
- No Docs
You can search for identifiers within the package.
in-package search v0.2.0
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=c6df840ebbf115e454db949028c595bec558a59a66cade73b52a6d099d6fa4d4
sha512=d8aee903b9fe130d73176bc8ec38b78c9ff65317da3cb4f3415f09af0c625b4384e7498201fdb61aa39086a7d5d409d0ab3423f9bc3ab989a680cf444a79bc13
doc/octez-libs.mec/Mec/Ff/MakeFp2/index.html
Module Ff.MakeFp2Source
Parameters
module Fp : Bls12_381.Ff_sig.BASEmodule Intf : sig ... endSignature
include Bls12_381.Ff_sig.BASE
Minimal number of bytes required to encode a value of the field
check_bytes bs returns true if bs is a correct byte representation of a field element
is_one x returns true if x is the neutral element for the multiplication
Use carefully!
random () returns a random element of the field. A state for the PRNG can be given to initialize the PRNG in the requested state. If no state is given, no initialisation is performed.
To create a value of type Random.State.t, you can use Random.State.make [|42|].
Use carefully!
non_null_random () returns a non null random element of the field. A state for the PRNG can be given to initialize the PRNG in the requested state. If no state is given, no initialisation is performed.
To create a value of type Random.State.t, you can use Random.State.make [|42|].
negate x returns -x mod order. Equivalently, negate x returns the unique y such that x + y mod order = 0
inverse_exn x returns x^-1 mod order if x is not 0, else raise Division_by_zero. Equivalently, inverse_exn x returns the unique y such that x * y mod order = 1
inverse_opt x returns x^-1 mod order as an option if x is not 0, else returns None. Equivalently, inverse_opt x returns the unique y such that x * y mod order = 1
div_exn a b returns a * b^-1. Raise Division_by_zero if b = zero. Equivalently, div_exn returns the unique y such that b * y mod order = a
div_opt a b returns a * b^-1 as an option. Return None if b = zero. Equivalently, div_opt returns the unique y such that b * y mod order = a
Construct a value of type t from the bytes representation in little endian of the field element. For non prime fields, the encoding starts with the coefficient of the constant monomial. Raise Not_in_field if the bytes do not represent an element in the field.
From a predefined little endian bytes representation, construct a value of type t. The same representation than of_bytes_exn is used. Return None if the bytes do not represent an element in the field.
Convert the value t to a bytes representation. The number of bytes is size_in_bytes and the encoding must be in little endian. For instance, the encoding of 1 in prime fields is always a bytes sequence of size size_in_bytes starting with the byte 0b00000001.
For non prime fields, the encoding starts with the coefficient of the constant monomial. For instance, an element a + b * X in GF(p^2) will be encoded as to_bytes a || to_bytes b where || is the concatenation of bytes