Crate binius_math

Source
Expand description

Mathematical primitives used in Binius, built atop the binius_field crate.

This crate provides a variety of mathematical primitives used in Binius, including:

  • Multilinear polynomials
  • Univariate polynomials
  • Matrix operations
  • Arithmetic expressions and evaluators

This crate is a dependency of binius_hal. When modules in binius_core need to be abstracted behind the HAL, this is one of the places they are often moved in order to avoid crate dependency cycles.

Structs§

Enums§

  • Arithmetic expressions that can be evaluated symbolically.

Traits§

Functions§

  • Given a slice of packed fields representing 2^log_scalar_count scalars, returns an iterator that yields pairs of packed fields that can be unzipped into a deinterleaved representation of the slice.
  • Computes the partial evaluation of the equality indicator polynomial.
  • Evaluate a piecewise multilinear polynomial at a point, given the evaluations of the pieces.
  • Evaluate a univariate polynomial specified by its monomial coefficients.
  • Extrapolates lines through a pair of packed fields at a single point from a subfield.
  • Similar methods, but for scalar fields.
  • Extrapolates lines through a pair of packed fields at a packed vector of points.
  • Execute the fold operation.
  • Tensor Product expansion of values with partial eq indicator evaluated at extra_query_coordinates

Type Aliases§