Notation

We use superscript to denote an arbitrary length ordered array, usually corresponding to the Vec type in Rust.

denotes the non-negative integers. denotes restricted to the range corresponding to u64 in Rust of .

denotes a single byte corresponding to u8 in Rust. We use for an arbitrary sequence of bytes. Use for converting between the integer to in little-endian order.

with is used for concatenation of arbitrary bytes.

refers to binary bits.

denotes the image of a function .

with denotes the sequences of values starting with 1.