pub struct FoldBinaryTrace4x<const D: usize, const HALF_D: usize, const QUARTER_D: usize>;Trait Implementations§
Source§impl<const D: usize, const HALF_D: usize, const QUARTER_D: usize> FoldTrace<BinaryU64Poly<D>, BinaryU64Poly<QUARTER_D>> for FoldBinaryTrace4x<D, HALF_D, QUARTER_D>
impl<const D: usize, const HALF_D: usize, const QUARTER_D: usize> FoldTrace<BinaryU64Poly<D>, BinaryU64Poly<QUARTER_D>> for FoldBinaryTrace4x<D, HALF_D, QUARTER_D>
Source§const FOLDING_FACTOR: usize = 4
const FOLDING_FACTOR: usize = 4
Folding factor, a positive power of 2.
fn fold_trace_mle( mle: &DenseMultilinearExtension<BinaryPoly<D>>, ) -> DenseMultilinearExtension<BinaryPoly<QUARTER_D>>
Source§fn fold_eval_claim<F, A>(
bar_u_coeffs: &[F],
alphas: &[A],
folding_challenges: &[F],
field_cfg: &F::Config,
) -> Fwhere
F: PrimeField + for<'a> FromWithConfig<&'a A>,
fn fold_eval_claim<F, A>(
bar_u_coeffs: &[F],
alphas: &[A],
folding_challenges: &[F],
field_cfg: &F::Config,
) -> Fwhere
F: PrimeField + for<'a> FromWithConfig<&'a A>,
Verifier-side: compute one column’s contribution to the folded PCS
eval-claim at the extended evaluation point
r_0 || gamma_1 || ... || gamma_k, where k = log2(FOLDING_FACTOR). Read moreAuto Trait Implementations§
impl<const D: usize, const HALF_D: usize, const QUARTER_D: usize> Freeze for FoldBinaryTrace4x<D, HALF_D, QUARTER_D>
impl<const D: usize, const HALF_D: usize, const QUARTER_D: usize> RefUnwindSafe for FoldBinaryTrace4x<D, HALF_D, QUARTER_D>
impl<const D: usize, const HALF_D: usize, const QUARTER_D: usize> Send for FoldBinaryTrace4x<D, HALF_D, QUARTER_D>
impl<const D: usize, const HALF_D: usize, const QUARTER_D: usize> Sync for FoldBinaryTrace4x<D, HALF_D, QUARTER_D>
impl<const D: usize, const HALF_D: usize, const QUARTER_D: usize> Unpin for FoldBinaryTrace4x<D, HALF_D, QUARTER_D>
impl<const D: usize, const HALF_D: usize, const QUARTER_D: usize> UnsafeUnpin for FoldBinaryTrace4x<D, HALF_D, QUARTER_D>
impl<const D: usize, const HALF_D: usize, const QUARTER_D: usize> UnwindSafe for FoldBinaryTrace4x<D, HALF_D, QUARTER_D>
Blanket Implementations§
§impl<T> AsMaybeUninit for T
impl<T> AsMaybeUninit for T
§type Uninit = MaybeUninit<T>
type Uninit = MaybeUninit<T>
This type in its maybe-uninitialized form.
§fn as_ref_uninit(&self) -> &<T as AsMaybeUninit>::Uninit
fn as_ref_uninit(&self) -> &<T as AsMaybeUninit>::Uninit
Converts a
&self to its maybe-initialized equivalent.§unsafe fn as_mut_uninit(&mut self) -> &mut <T as AsMaybeUninit>::Uninit
unsafe fn as_mut_uninit(&mut self) -> &mut <T as AsMaybeUninit>::Uninit
Converts a
&mut T to its maybe-initialized equivalent. Read more§unsafe fn raw_as_uninit<'a>(raw: *const T) -> &'a <T as AsMaybeUninit>::Uninit
unsafe fn raw_as_uninit<'a>(raw: *const T) -> &'a <T as AsMaybeUninit>::Uninit
Converts a raw pointer to a reference to maybe-uninit. Read more
§unsafe fn raw_mut_as_uninit<'a>(
raw: *mut T,
) -> &'a mut <T as AsMaybeUninit>::Uninit
unsafe fn raw_mut_as_uninit<'a>( raw: *mut T, ) -> &'a mut <T as AsMaybeUninit>::Uninit
Converts a raw mutable pointer to a mutable reference to maybe-uninit. Read more
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> 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