Crate o1_utils

source ·
Expand description

A collection of utility functions and constants that can be reused from multiple projects

Re-exports

Modules

  • This module hosts the AdjacentPairs type, which can be used to list all the adjacent pairs of a list. For example, if you have a list of integers [1, 2, 3], you can use it to obtain the list of tuples [(1, 2), (2, 3)].
  • This module provides different helpers in creating constant sized arrays and converting them to different formats.
  • This module provides a set of functions to perform bit operations on big integers. In particular, it gives XOR and NOT for BigUint.
  • This module provides a set of functions to perform bit operations on big integers. In particular, it gives XOR and NOT for BigUint.
  • This module contains a type ChunkedEvaluations,
  • This module contains a type ChunkedPolynomial, and a number of helper methods to deal with chunked polynomials. Polynomials that cut in several polynomials of the same length.
  • This adds a few utility functions for the [DensePolynomial] arkworks type.
  • This adds a few utility functions for the [Evaluations] arkworks type.
  • Useful helper methods to extend [ark_ff::Field].
  • Describes helpers for foreign field arithmetics Generic parameters are as follows:
  • This module provides the CryptoDigest trait, which provides a generic interface for hashing.
  • This modules implements some math helper functions.
  • This adds a few utility functions for serializing and deserializing arkworks types that implement [CanonicalSerialize] and [CanonicalDeserialize].
  • Utils only for testing

Macros

  • A macro similar to vec![$elem; $size] which returns a boxed array, allocated directly on the heap (via a vector, with reallocations).
  • A macro similar to vec![vec![$elem; $size1]; $size2] which returns a two-dimensional boxed array, allocated directly on the heap (via a vector, with reallocations).