pub struct DefaultConstraintCommitment<E: FieldElement, H: ElementHasher<BaseField = E::BaseField>, V: VectorCommitment<H>> { /* private fields */ }Expand description
Constraint evaluation commitment.
The commitment consists of two components:
- Evaluations of composition polynomial columns over the LDE domain.
- Vector commitment where each vector element corresponds to the digest of a row in the composition polynomial evaluation matrix.
Implementations§
Source§impl<E, H, V> DefaultConstraintCommitment<E, H, V>
impl<E, H, V> DefaultConstraintCommitment<E, H, V>
Sourcepub fn new(
composition_poly_trace: CompositionPolyTrace<E>,
num_constraint_composition_columns: usize,
domain: &StarkDomain<E::BaseField>,
partition_options: PartitionOptions,
) -> (Self, CompositionPoly<E>)
pub fn new( composition_poly_trace: CompositionPolyTrace<E>, num_constraint_composition_columns: usize, domain: &StarkDomain<E::BaseField>, partition_options: PartitionOptions, ) -> (Self, CompositionPoly<E>)
Creates a new constraint evaluation commitment from the provided composition polynomial evaluations and the corresponding vector commitment.
Trait Implementations§
Source§impl<E, H, V> ConstraintCommitment<E> for DefaultConstraintCommitment<E, H, V>where
E: FieldElement,
H: ElementHasher<BaseField = E::BaseField> + Sync,
V: VectorCommitment<H> + Sync,
impl<E, H, V> ConstraintCommitment<E> for DefaultConstraintCommitment<E, H, V>where
E: FieldElement,
H: ElementHasher<BaseField = E::BaseField> + Sync,
V: VectorCommitment<H> + Sync,
Auto Trait Implementations§
impl<E, H, V> Freeze for DefaultConstraintCommitment<E, H, V>where
V: Freeze,
impl<E, H, V> RefUnwindSafe for DefaultConstraintCommitment<E, H, V>
impl<E, H, V> Send for DefaultConstraintCommitment<E, H, V>
impl<E, H, V> Sync for DefaultConstraintCommitment<E, H, V>
impl<E, H, V> Unpin for DefaultConstraintCommitment<E, H, V>
impl<E, H, V> UnwindSafe for DefaultConstraintCommitment<E, H, V>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more