Expand description
§p3-commit
A framework for cryptographic commitment schemes, including non-hiding variants. This crate defines the traits that connect proof systems to their commitment backends.
Key items:
Pcs/MultilinearPcs— polynomial commitment scheme interfaces used by the STARK provers and verifiersMmcs— “Mixed Matrix Commitment Scheme”, a vector-commitment abstraction over batches of matrices of differing heightsPolynomialSpaceandTwoAdicMultiplicativeCoset— evaluation-domain abstractionsperiodic— periodic-column evaluation helperstesting— mock instantiations for downstream tests
Implementations live in p3-merkle-tree (Mmcs), p3-fri, p3-circle and
p3-whir (Pcs).
Part of Plonky3, dual-licensed under MIT and Apache 2.0.
Modules§
Structs§
- Batch
Opening - A Batched opening proof.
- Batch
Opening Ref - A reference to a batched opening proof.
- Extension
Mmcs - A wrapper to lift an MMCS from a base field
Fto an extension fieldEF. - Lagrange
Selectors - Given a
PolynomialSpace,S, and a subsetR, a Lagrange selectorP_Ris a polynomial which is not equal to0for every element inRbut is equal to0for every element ofSnot inR. - Periodic
LdeTable - Compact storage for periodic column values on the LDE domain.
Traits§
- Build
Periodic LdeTable Fast - Optional fast path for building the periodic LDE table (e.g. via coset LDE). Implement for PCS backends that can avoid evaluating at every quotient point.
- Mmcs
- A “Mixed Matrix Commitment Scheme” (MMCS) is a generalization of a vector commitment scheme.
- Multilinear
Pcs - Polynomial commitment scheme for multilinear polynomials over the Boolean hypercube.
- Pcs
- A polynomial commitment scheme, for committing to batches of polynomials defined by their evaluations over some domain.
- Periodic
Evaluator - Evaluates periodic polynomials for a given domain system.
- Polynomial
Space - Fixing a field,
F,PolynomialSpace<Val = F>denotes an indexed subset ofF^nwith some additional algebraic structure.