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 rows_batch;
30mod tensor_prod_eq_ind;
31mod tower;
32mod univariate;
33
34pub use arith_expr::*;
35pub use binary_subspace::*;
36pub use composition_poly::*;
37pub use error::*;
38pub use evaluation_order::*;
39pub use fold::*;
40pub use matrix::*;
41pub use mle_adapters::*;
42pub use multilinear::*;
43pub use multilinear_extension::*;
44pub use multilinear_query::*;
45pub use packing_deref::*;
46pub use piecewise_multilinear::*;
47pub use rows_batch::*;
48pub use tensor_prod_eq_ind::*;
49pub use tower::*;
50pub use univariate::*;