binius_math/lib.rs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
// Copyright 2024-2025 Irreducible Inc.
//! 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.
mod arith_expr;
mod binary_subspace;
mod composition_poly;
mod deinterleave;
mod error;
mod fold;
mod matrix;
mod mle_adapters;
mod multilinear;
mod multilinear_extension;
mod multilinear_query;
mod packing_deref;
mod piecewise_multilinear;
mod tensor_prod_eq_ind;
mod univariate;
pub use arith_expr::*;
pub use binary_subspace::*;
pub use composition_poly::*;
pub use deinterleave::*;
pub use error::*;
pub use fold::fold;
pub use matrix::*;
pub use mle_adapters::*;
pub use multilinear::*;
pub use multilinear_extension::*;
pub use multilinear_query::*;
pub use packing_deref::*;
pub use piecewise_multilinear::*;
pub use tensor_prod_eq_ind::*;
pub use univariate::*;