pub enum Challenge {
Beta,
Gamma,
JointCombiner,
}
Variants§
Trait Implementations§
source§impl<const N: usize, const N_REL: usize, const N_SEL: usize, C: FoldingConfig, Structure: Clone> FoldingEnv<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField, FoldingInstance<N, <C as FoldingConfig>::Curve>, FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>, <C as FoldingConfig>::Column, Challenge, <C as FoldingConfig>::Selector> for DecomposedFoldingEnvironment<N, N_REL, N_SEL, C, Structure>where
FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>: Index<C::Column, Output = Evaluations<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField, Radix2EvaluationDomain<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>>>,
FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>: Index<C::Selector, Output = Evaluations<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField, Radix2EvaluationDomain<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>>>,
impl<const N: usize, const N_REL: usize, const N_SEL: usize, C: FoldingConfig, Structure: Clone> FoldingEnv<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField, FoldingInstance<N, <C as FoldingConfig>::Curve>, FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>, <C as FoldingConfig>::Column, Challenge, <C as FoldingConfig>::Selector> for DecomposedFoldingEnvironment<N, N_REL, N_SEL, C, Structure>where FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>: Index<C::Column, Output = Evaluations<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField, Radix2EvaluationDomain<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>>>, FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>: Index<C::Selector, Output = Evaluations<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField, Radix2EvaluationDomain<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>>>,
source§fn new(
structure: &Self::Structure,
instances: [&FoldingInstance<N, C::Curve>; 2],
witnesses: [&FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>; 2]
) -> Self
fn new( structure: &Self::Structure, instances: [&FoldingInstance<N, C::Curve>; 2], witnesses: [&FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>; 2] ) -> Self
Creates a new environment storing the structure, instances and
witnesses.
source§fn col(
&self,
col: C::Column,
curr_or_next: CurrOrNext,
side: Side
) -> &[<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField]
fn col( &self, col: C::Column, curr_or_next: CurrOrNext, side: Side ) -> &[<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField]
Returns the evaluations of a given column witness at omega or zeta*omega.
source§impl<const N: usize, C: FoldingConfig, Structure: Clone> FoldingEnv<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField, FoldingInstance<N, <C as FoldingConfig>::Curve>, FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>, <C as FoldingConfig>::Column, Challenge, ()> for FoldingEnvironment<N, C, Structure>where
FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>: Index<C::Column, Output = Evaluations<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField, Radix2EvaluationDomain<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>>>,
impl<const N: usize, C: FoldingConfig, Structure: Clone> FoldingEnv<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField, FoldingInstance<N, <C as FoldingConfig>::Curve>, FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>, <C as FoldingConfig>::Column, Challenge, ()> for FoldingEnvironment<N, C, Structure>where FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>: Index<C::Column, Output = Evaluations<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField, Radix2EvaluationDomain<<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>>>,
source§fn new(
structure: &Self::Structure,
instances: [&FoldingInstance<N, C::Curve>; 2],
witnesses: [&FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>; 2]
) -> Self
fn new( structure: &Self::Structure, instances: [&FoldingInstance<N, C::Curve>; 2], witnesses: [&FoldingWitness<N, <<C as FoldingConfig>::Curve as AffineCurve>::ScalarField>; 2] ) -> Self
Creates a new environment storing the structure, instances and
witnesses.
source§fn col(
&self,
col: C::Column,
curr_or_next: CurrOrNext,
side: Side
) -> &[<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField]
fn col( &self, col: C::Column, curr_or_next: CurrOrNext, side: Side ) -> &[<<C as FoldingConfig>::Curve as AffineCurve>::ScalarField]
Returns the evaluations of a given column witness at omega or zeta*omega.
source§impl IntoEnumIterator for Challenge
impl IntoEnumIterator for Challenge
type Iterator = ChallengeIter
fn iter() -> ChallengeIter ⓘ
source§impl PartialEq<Challenge> for Challenge
impl PartialEq<Challenge> for Challenge
impl Copy for Challenge
impl Eq for Challenge
impl StructuralEq for Challenge
impl StructuralPartialEq for Challenge
Auto Trait Implementations§
impl RefUnwindSafe for Challenge
impl Send for Challenge
impl Sync for Challenge
impl Unpin for Challenge
impl UnwindSafe for Challenge
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