package octez-libs
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=ddfb5076eeb0b32ac21c1eed44e8fc86a6743ef18ab23fff02d36e365bb73d61
sha512=d22a827df5146e0aa274df48bc2150b098177ff7e5eab52c6109e867eb0a1f0ec63e6bfbb0e3645a6c2112de3877c91a17df32ccbff301891ce4ba630c997a65
doc/octez-libs.plompiler/Plompiler/Gadget/ArithMod25519/argument-1-L/Bytes/index.html
Module L.Bytes
Representation of bytes.
Little-endian representation of bytes. First element of the list is the Least Significant Bit.
type 'a input = 'a Input.t
Input for a Plompiler program.
type scalar = scalar
Element of the native scalar field.
type 'a repr = 'a repr
Representation of values.
type 'a t = 'a t
Plompiler program.
input_bytes ~le b
returns the representation of b
that Plompiler expects as input. le
can be used to set the endianness.
constant ~le b
returns the constant b
as a Plompiler value. le
can be used to set the endianness.
of_scalar ~total_nb_bits b
converts the scalar b
of size total_nb_bits
in bits into the tl
representation.
of_bool_list b
converts the list of bits in little-endian order into the tl
representation.
to_bool_list b
returns the list of bits in little-endian order, representing the value b
.
rotate_right b n
shifts the bits right by n positions, so that each bit is less significant. The least significant bit becomes the most significant i.e. it is "rotated". rotate_right bs (length bl) = bl
shift_right b n
shifts all bits right by n positions, so that each bit is less significant. The least signigicant bit is lost and the most significant bit is set to zero. More precisely, if we interpret the b
as an integer, shift_right b n = b / 2^n
val constant_uint32 : le:bool -> Stdint.uint32 -> tl repr t
constant_uint32 ~le n
returns a value holding the bytes correspoding to the uint n
. le
can be used to set the endianness.
add b1 b2
computes the addition of b1
and b2
.
rotate_left bl n
shifts the bits left by n positions, so that each bit is more significant. The most significant bit becomes the least significant i.e. it is "rotated". rotate_left bl (length bl) = bl
shift_left bl n
shifts all bits left by n positions, so that each bit is more significant. The most signigicant bit is lost and the least significant bit is set to zero. More precisely, if we interpret the bl
as an integer shift_left bl i = bl * 2^i mod 2^{length a}