pub enum FoldingCompatibleExprInner<C: FoldingConfig> {
Constant(<C::Curve as AffineRepr>::ScalarField),
Challenge(C::Challenge),
Cell(Variable<C::Column>),
Extensions(ExpExtension<C>),
}
Expand description
Components to be used to convert multivariate polynomials into “compatible” multivariate polynomials that will be translated to folding expressions.
Variants§
Constant(<C::Curve as AffineRepr>::ScalarField)
Challenge(C::Challenge)
Cell(Variable<C::Column>)
Extensions(ExpExtension<C>)
extra nodes created by folding, should not be passed to folding
Trait Implementations§
Source§impl<C> Clone for FoldingCompatibleExprInner<C>where
C: FoldingConfig,
impl<C> Clone for FoldingCompatibleExprInner<C>where
C: FoldingConfig,
Source§impl<C> Debug for FoldingCompatibleExprInner<C>where
C: FoldingConfig,
impl<C> Debug for FoldingCompatibleExprInner<C>where
C: FoldingConfig,
Source§impl<F, Config: FoldingConfig> From<ConstantExprInner<F, BerkeleyChallengeTerm>> for FoldingCompatibleExprInner<Config>
impl<F, Config: FoldingConfig> From<ConstantExprInner<F, BerkeleyChallengeTerm>> for FoldingCompatibleExprInner<Config>
Source§fn from(expr: ConstantExprInner<F, BerkeleyChallengeTerm>) -> Self
fn from(expr: ConstantExprInner<F, BerkeleyChallengeTerm>) -> Self
Converts to this type from the input type.
Source§impl<F, Col, Config: FoldingConfig<Column = Col>> From<ExprInner<ConstantExprInner<F, BerkeleyChallengeTerm>, Col>> for FoldingCompatibleExprInner<Config>
impl<F, Col, Config: FoldingConfig<Column = Col>> From<ExprInner<ConstantExprInner<F, BerkeleyChallengeTerm>, Col>> for FoldingCompatibleExprInner<Config>
Source§fn from(
expr: ExprInner<ConstantExprInner<F, BerkeleyChallengeTerm>, Col>,
) -> Self
fn from( expr: ExprInner<ConstantExprInner<F, BerkeleyChallengeTerm>, Col>, ) -> Self
Converts to this type from the input type.
Source§impl<C> PartialEq for FoldingCompatibleExprInner<C>where
C: FoldingConfig,
impl<C> PartialEq for FoldingCompatibleExprInner<C>where
C: FoldingConfig,
Auto Trait Implementations§
impl<C> Freeze for FoldingCompatibleExprInner<C>where
<<C as FoldingConfig>::Curve as AffineRepr>::ScalarField: Freeze,
<C as FoldingConfig>::Challenge: Freeze,
<C as FoldingConfig>::Column: Freeze,
<C as FoldingConfig>::Selector: Freeze,
impl<C> RefUnwindSafe for FoldingCompatibleExprInner<C>where
<<C as FoldingConfig>::Curve as AffineRepr>::ScalarField: RefUnwindSafe,
<C as FoldingConfig>::Challenge: RefUnwindSafe,
<C as FoldingConfig>::Column: RefUnwindSafe,
<C as FoldingConfig>::Selector: RefUnwindSafe,
impl<C> Send for FoldingCompatibleExprInner<C>where
<C as FoldingConfig>::Challenge: Send,
<C as FoldingConfig>::Column: Send,
<C as FoldingConfig>::Selector: Send,
impl<C> Sync for FoldingCompatibleExprInner<C>where
<C as FoldingConfig>::Challenge: Sync,
<C as FoldingConfig>::Column: Sync,
<C as FoldingConfig>::Selector: Sync,
impl<C> Unpin for FoldingCompatibleExprInner<C>where
<<C as FoldingConfig>::Curve as AffineRepr>::ScalarField: Unpin,
<C as FoldingConfig>::Challenge: Unpin,
<C as FoldingConfig>::Column: Unpin,
<C as FoldingConfig>::Selector: Unpin,
impl<C> UnwindSafe for FoldingCompatibleExprInner<C>where
<<C as FoldingConfig>::Curve as AffineRepr>::ScalarField: UnwindSafe,
<C as FoldingConfig>::Challenge: UnwindSafe,
<C as FoldingConfig>::Column: UnwindSafe,
<C as FoldingConfig>::Selector: 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