pub struct FrameworkComponent<C: FrameworkEval> { /* private fields */ }Implementations§
Source§impl<E: FrameworkEval> FrameworkComponent<E>
impl<E: FrameworkEval> FrameworkComponent<E>
pub fn new( location_allocator: &mut TraceLocationAllocator, eval: E, claimed_sum: SecureField, ) -> Self
pub fn disabled( location_allocator: &mut TraceLocationAllocator, eval: E, ) -> Self
pub fn new_ex( location_allocator: &mut TraceLocationAllocator, eval: E, claimed_sum: SecureField, is_disabled: bool, ) -> Self
pub fn trace_locations(&self) -> &[TreeSubspan]
pub fn preprocessed_column_indices(&self) -> &[usize]
pub const fn claimed_sum(&self) -> SecureField
pub fn logup_counts(&self) -> RelationCounts
pub fn is_disabled(&self) -> bool
Trait Implementations§
Source§impl<E: FrameworkEval> Component for FrameworkComponent<E>
impl<E: FrameworkEval> Component for FrameworkComponent<E>
fn n_constraints(&self) -> usize
fn max_constraint_log_degree_bound(&self) -> u32
Source§fn trace_log_degree_bounds(&self) -> TreeVec<ColumnVec<u32>>
fn trace_log_degree_bounds(&self) -> TreeVec<ColumnVec<u32>>
Returns the degree bounds of each trace column. The returned TreeVec should be of size
n_interaction_phases.Source§fn mask_points(
&self,
point: CirclePoint<SecureField>,
max_log_degree_bound: u32,
) -> TreeVec<ColumnVec<Vec<CirclePoint<SecureField>>>>
fn mask_points( &self, point: CirclePoint<SecureField>, max_log_degree_bound: u32, ) -> TreeVec<ColumnVec<Vec<CirclePoint<SecureField>>>>
Returns the mask points for each trace column. The returned TreeVec should be of size
n_interaction_phases.
The parameter max_log_degree_bound is the maximum log degree of a committed polynomial
in the pcs (this number is known to both prover and verifier). The mask points are
translations of point by a multiple of the generator of the canonical coset of log size
max_log_degree_bound.fn preprocessed_column_indices(&self) -> ColumnVec<usize>
Source§fn evaluate_constraint_quotients_at_point(
&self,
point: CirclePoint<SecureField>,
mask: &TreeVec<ColumnVec<Vec<SecureField>>>,
evaluation_accumulator: &mut PointEvaluationAccumulator,
max_log_degree_bound: u32,
)
fn evaluate_constraint_quotients_at_point( &self, point: CirclePoint<SecureField>, mask: &TreeVec<ColumnVec<Vec<SecureField>>>, evaluation_accumulator: &mut PointEvaluationAccumulator, max_log_degree_bound: u32, )
Evaluates the lifted constraint quotients accumulation of the component at
point.Source§impl<E: FrameworkEval> Deref for FrameworkComponent<E>
impl<E: FrameworkEval> Deref for FrameworkComponent<E>
Auto Trait Implementations§
impl<C> Freeze for FrameworkComponent<C>where
C: Freeze,
impl<C> !RefUnwindSafe for FrameworkComponent<C>
impl<C> !Send for FrameworkComponent<C>
impl<C> !Sync for FrameworkComponent<C>
impl<C> Unpin for FrameworkComponent<C>where
C: Unpin,
impl<C> !UnwindSafe for FrameworkComponent<C>
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more