binius_math/
lib.rs

1// Copyright 2024-2025 Irreducible Inc.
2
3//! Mathematical primitives used in Binius, built atop the `binius_field` crate.
4//!
5//! This crate provides a variety of mathematical primitives used in Binius, including:
6//!
7//! * Multilinear polynomials
8//! * Univariate polynomials
9//! * Matrix operations
10//! * Arithmetic expressions and evaluators
11//!
12//! This crate is a dependency of `binius_hal`. When modules in `binius_core` need to be abstracted
13//! behind the HAL, this is one of the places they are often moved in order to avoid crate
14//! dependency cycles.
15
16mod arith_expr;
17mod binary_subspace;
18mod composition_poly;
19mod error;
20mod evaluation_order;
21mod fold;
22mod matrix;
23mod mle_adapters;
24mod multilinear;
25mod multilinear_extension;
26mod multilinear_query;
27mod packing_deref;
28mod piecewise_multilinear;
29mod tensor_prod_eq_ind;
30mod univariate;
31
32pub use arith_expr::*;
33pub use binary_subspace::*;
34pub use composition_poly::*;
35pub use error::*;
36pub use evaluation_order::*;
37pub use fold::*;
38pub use matrix::*;
39pub use mle_adapters::*;
40pub use multilinear::*;
41pub use multilinear_extension::*;
42pub use multilinear_query::*;
43pub use packing_deref::*;
44pub use piecewise_multilinear::*;
45pub use tensor_prod_eq_ind::*;
46pub use univariate::*;