pub enum ExtendedFoldingColumn<C: FoldingConfig> {
Inner(Variable<C::Column>),
WitnessExtended(usize),
Error,
Constant(<C::Curve as AffineRepr>::ScalarField),
Challenge(C::Challenge),
Alpha(usize),
Selector(C::Selector),
}Expand description
Describes the additional columns. It is parametrized by a configuration for the folding scheme, described in the trait FoldingConfig. For instance, the configuration describes the initial columns of the circuit, the challenges and the underlying field.
Variants§
Inner(Variable<C::Column>)
The variables of the initial circuit, without quadraticization and not homogeonized.
WitnessExtended(usize)
For the extra columns added by the module quadraticization.
Error
The error term introduced in the “relaxed” instance.
Constant(<C::Curve as AffineRepr>::ScalarField)
A constant value in our expression
Challenge(C::Challenge)
A challenge used by the PIOP or the folding scheme.
Alpha(usize)
A list of randomizer to combine expressions
Selector(C::Selector)
A “virtual” selector that can be used to activate/deactivate expressions while folding/accumulating multiple expressions.
Trait Implementations§
Source§impl<C> Clone for ExtendedFoldingColumn<C>where
C: FoldingConfig,
impl<C> Clone for ExtendedFoldingColumn<C>where
C: FoldingConfig,
Source§impl<C> Debug for ExtendedFoldingColumn<C>where
C: FoldingConfig,
impl<C> Debug for ExtendedFoldingColumn<C>where
C: FoldingConfig,
Source§impl<C> Hash for ExtendedFoldingColumn<C>where
C: FoldingConfig,
impl<C> Hash for ExtendedFoldingColumn<C>where
C: FoldingConfig,
Source§impl<C> PartialEq for ExtendedFoldingColumn<C>where
C: FoldingConfig,
impl<C> PartialEq for ExtendedFoldingColumn<C>where
C: FoldingConfig,
impl<C> Eq for ExtendedFoldingColumn<C>where
C: FoldingConfig,
Auto Trait Implementations§
impl<C> Freeze for ExtendedFoldingColumn<C>where
<<C as FoldingConfig>::Curve as AffineRepr>::ScalarField: Freeze,
<C as FoldingConfig>::Challenge: Freeze,
<C as FoldingConfig>::Selector: Freeze,
<C as FoldingConfig>::Column: Freeze,
impl<C> RefUnwindSafe for ExtendedFoldingColumn<C>where
<<C as FoldingConfig>::Curve as AffineRepr>::ScalarField: RefUnwindSafe,
<C as FoldingConfig>::Challenge: RefUnwindSafe,
<C as FoldingConfig>::Selector: RefUnwindSafe,
<C as FoldingConfig>::Column: RefUnwindSafe,
impl<C> Send for ExtendedFoldingColumn<C>where
<C as FoldingConfig>::Challenge: Send,
<C as FoldingConfig>::Selector: Send,
<C as FoldingConfig>::Column: Send,
impl<C> Sync for ExtendedFoldingColumn<C>where
<C as FoldingConfig>::Challenge: Sync,
<C as FoldingConfig>::Selector: Sync,
<C as FoldingConfig>::Column: Sync,
impl<C> Unpin for ExtendedFoldingColumn<C>where
<<C as FoldingConfig>::Curve as AffineRepr>::ScalarField: Unpin,
<C as FoldingConfig>::Challenge: Unpin,
<C as FoldingConfig>::Selector: Unpin,
<C as FoldingConfig>::Column: Unpin,
impl<C> UnwindSafe for ExtendedFoldingColumn<C>where
<<C as FoldingConfig>::Curve as AffineRepr>::ScalarField: UnwindSafe,
<C as FoldingConfig>::Challenge: UnwindSafe,
<C as FoldingConfig>::Selector: UnwindSafe,
<C as FoldingConfig>::Column: UnwindSafe,
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more