pub trait LagrangeCache<G: AffineRepr> {
type CacheKey;
// Required methods
fn lagrange_basis_cache_key(
&self,
srs_length: usize,
domain: &D<G::ScalarField>,
) -> Self::CacheKey;
fn load_lagrange_basis_from_cache(
&self,
srs_length: usize,
domain: &D<G::ScalarField>,
) -> Option<Vec<PolyComm<G>>>;
fn cache_lagrange_basis(
&self,
srs_length: usize,
domain: &D<G::ScalarField>,
basis: &[PolyComm<G>],
);
}