Type Alias OuterChallengeMmcs

Source
pub type OuterChallengeMmcs = ExtensionMmcs<OuterVal, OuterChallenge, OuterValMmcs>;

Aliased Type§

struct OuterChallengeMmcs { /* private fields */ }

Implementations

Source§

impl<F, EF, InnerMmcs> ExtensionMmcs<F, EF, InnerMmcs>

Source

pub const fn new(inner: InnerMmcs) -> ExtensionMmcs<F, EF, InnerMmcs>

Trait Implementations

Source§

impl<F, EF, InnerMmcs> Clone for ExtensionMmcs<F, EF, InnerMmcs>
where F: Clone, EF: Clone, InnerMmcs: Clone,

Source§

fn clone(&self) -> ExtensionMmcs<F, EF, InnerMmcs>

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<F, EF, InnerMmcs> Debug for ExtensionMmcs<F, EF, InnerMmcs>
where F: Debug, EF: Debug, InnerMmcs: Debug,

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl<F, EF, InnerMmcs> Mmcs<EF> for ExtensionMmcs<F, EF, InnerMmcs>
where F: Field, EF: ExtensionField<F>, InnerMmcs: Mmcs<F>,

Source§

type ProverData<M> = <InnerMmcs as Mmcs<F>>::ProverData<FlatMatrixView<F, EF, M>>

Source§

type Commitment = <InnerMmcs as Mmcs<F>>::Commitment

Source§

type Proof = <InnerMmcs as Mmcs<F>>::Proof

Source§

type Error = <InnerMmcs as Mmcs<F>>::Error

Source§

fn commit<M>( &self, inputs: Vec<M>, ) -> (<ExtensionMmcs<F, EF, InnerMmcs> as Mmcs<EF>>::Commitment, <ExtensionMmcs<F, EF, InnerMmcs> as Mmcs<EF>>::ProverData<M>)
where M: Matrix<EF>,

Source§

fn open_batch<M>( &self, index: usize, prover_data: &<ExtensionMmcs<F, EF, InnerMmcs> as Mmcs<EF>>::ProverData<M>, ) -> (Vec<Vec<EF>>, <ExtensionMmcs<F, EF, InnerMmcs> as Mmcs<EF>>::Proof)
where M: Matrix<EF>,

Opens a batch of rows from committed matrices returns (openings, proof) where openings is a vector whose ith element is the jth row of the ith matrix M[i], and j = index >> (log2_ceil(max_height) - log2_ceil(M[i].height)).
Source§

fn get_matrices<'a, M>( &self, prover_data: &'a <ExtensionMmcs<F, EF, InnerMmcs> as Mmcs<EF>>::ProverData<M>, ) -> Vec<&'a M>
where M: Matrix<EF>,

Get the matrices that were committed to.
Source§

fn verify_batch( &self, commit: &<ExtensionMmcs<F, EF, InnerMmcs> as Mmcs<EF>>::Commitment, dimensions: &[Dimensions], index: usize, opened_values: &[Vec<EF>], proof: &<ExtensionMmcs<F, EF, InnerMmcs> as Mmcs<EF>>::Proof, ) -> Result<(), <ExtensionMmcs<F, EF, InnerMmcs> as Mmcs<EF>>::Error>

Verify a batch opening. index is the row index we’re opening for each matrix, following the same semantics as open_batch. dimensions is a slice whose ith element is the dimensions of the matrix being opened in the ith opening
Source§

fn commit_matrix<M>(&self, input: M) -> (Self::Commitment, Self::ProverData<M>)
where M: Matrix<T>,

Source§

fn commit_vec( &self, input: Vec<T>, ) -> (Self::Commitment, Self::ProverData<DenseMatrix<T>>)
where T: Clone + Send + Sync,

Source§

fn get_matrix_heights<M>(&self, prover_data: &Self::ProverData<M>) -> Vec<usize>
where M: Matrix<T>,

Source§

fn get_max_height<M>(&self, prover_data: &Self::ProverData<M>) -> usize
where M: Matrix<T>,

Get the largest height of any committed matrix.