pub struct GenericStarkConfig<F, EF, L, Dft, Ch> {
pub pcs: PcsParams,
pub lmcs: L,
pub dft: Dft,
pub challenger: Ch,
/* private fields */
}Expand description
Generic StarkConfig implementation.
Stores the PCS parameters, LMCS, DFT, and a challenger prototype
(cloned for each proof/verification). Use this for tests and examples;
production code can implement StarkConfig on a custom struct.
Fields§
§pcs: PcsParams§lmcs: L§dft: Dft§challenger: ChImplementations§
Source§impl<F, EF, L, Dft, Ch> GenericStarkConfig<F, EF, L, Dft, Ch>
impl<F, EF, L, Dft, Ch> GenericStarkConfig<F, EF, L, Dft, Ch>
pub fn new( pcs: PcsParams, lmcs: L, dft: Dft, challenger: Ch, ) -> GenericStarkConfig<F, EF, L, Dft, Ch>
Trait Implementations§
Source§impl<F, EF, L, Dft, Ch> Clone for GenericStarkConfig<F, EF, L, Dft, Ch>
impl<F, EF, L, Dft, Ch> Clone for GenericStarkConfig<F, EF, L, Dft, Ch>
Source§fn clone(&self) -> GenericStarkConfig<F, EF, L, Dft, Ch>
fn clone(&self) -> GenericStarkConfig<F, EF, L, Dft, Ch>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<F, EF, L, Dft, Ch> StarkConfig<F, EF> for GenericStarkConfig<F, EF, L, Dft, Ch>where
F: TwoAdicField,
EF: ExtensionField<F>,
L: Lmcs<F = F>,
Dft: TwoAdicSubgroupDft<F> + Clone,
Ch: TranscriptChallenger<F, <L as Lmcs>::Commitment>,
impl<F, EF, L, Dft, Ch> StarkConfig<F, EF> for GenericStarkConfig<F, EF, L, Dft, Ch>where
F: TwoAdicField,
EF: ExtensionField<F>,
L: Lmcs<F = F>,
Dft: TwoAdicSubgroupDft<F> + Clone,
Ch: TranscriptChallenger<F, <L as Lmcs>::Commitment>,
Source§type Challenger = Ch
type Challenger = Ch
Fiat-Shamir challenger.
Source§fn challenger(&self) -> Ch
fn challenger(&self) -> Ch
Create a fresh challenger for a new proof/verification.
Auto Trait Implementations§
impl<F, EF, L, Dft, Ch> Freeze for GenericStarkConfig<F, EF, L, Dft, Ch>
impl<F, EF, L, Dft, Ch> RefUnwindSafe for GenericStarkConfig<F, EF, L, Dft, Ch>
impl<F, EF, L, Dft, Ch> Send for GenericStarkConfig<F, EF, L, Dft, Ch>
impl<F, EF, L, Dft, Ch> Sync for GenericStarkConfig<F, EF, L, Dft, Ch>
impl<F, EF, L, Dft, Ch> Unpin for GenericStarkConfig<F, EF, L, Dft, Ch>
impl<F, EF, L, Dft, Ch> UnsafeUnpin for GenericStarkConfig<F, EF, L, Dft, Ch>
impl<F, EF, L, Dft, Ch> UnwindSafe for GenericStarkConfig<F, EF, L, Dft, Ch>
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,
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