Skip to main content

binius_iop/basefold/
mod.rs

1// Copyright 2025 Irreducible Inc.
2// Copyright 2026 The Binius Developers
3
4//! Verifier for the BaseFold sumcheck-PIOP to IP compiler.
5//!
6//! [BaseFold] is a generalized polynomial commitment scheme that allows compilation of
7//! sumcheck-PIOP protocols to IOPs. The protocol is an interactive argument for sumcheck claims
8//! of multivariate polynomials defined as the product of a committed multilinear polynomial and a
9//! transparent multilinear polynomial. When the transparent polynomial is a multilinear equality
10//! indicator, this BaseFold instance becomes a multilinear polynomial commitment scheme. The core
11//! idea is to commit the multilinear polynomial using FRI and open the sumcheck claim using an
12//! interleaved instance of sumcheck on the composite polynomial and FRI on the committed codeword,
13//! sharing folding challenges.
14//!
15//! This module implements the version specialized for binary field FRI described in [DP24],
16//! Section 4. Moreover, this module includes the classic [BCS16] compiler for IOPs to IPs that
17//! commits and opens oracle messages using Merkle trees.
18//!
19//! [BaseFold]: <https://link.springer.com/chapter/10.1007/978-3-031-68403-6_5>
20//! [DP24]: <https://eprint.iacr.org/2024/504>
21//! [BCS16]: <https://eprint.iacr.org/2016/116>
22
23pub mod channel;
24pub mod compiler;
25mod error;
26mod opening;
27
28pub use error::*;
29pub use opening::*;