Trait sp1_stark::StarkGenericConfig
source · pub trait StarkGenericConfig:
'static
+ Send
+ Sync
+ Serialize
+ DeserializeOwned
+ Clone {
type Val: PrimeField;
type Domain: PolynomialSpace<Val = Self::Val> + Sync;
type Pcs: Pcs<Self::Challenge, Self::Challenger, Domain = Self::Domain> + Sync;
type Challenge: ExtensionField<Self::Val>;
type Challenger: FieldChallenger<Val<Self>> + CanObserve<<Self::Pcs as Pcs<Self::Challenge, Self::Challenger>>::Commitment> + CanSample<Self::Challenge>;
// Required methods
fn pcs(&self) -> &Self::Pcs;
fn challenger(&self) -> Self::Challenger;
}
Required Associated Types§
type Val: PrimeField
type Domain: PolynomialSpace<Val = Self::Val> + Sync
sourcetype Pcs: Pcs<Self::Challenge, Self::Challenger, Domain = Self::Domain> + Sync
type Pcs: Pcs<Self::Challenge, Self::Challenger, Domain = Self::Domain> + Sync
The PCS used to commit to trace polynomials.
sourcetype Challenge: ExtensionField<Self::Val>
type Challenge: ExtensionField<Self::Val>
The field from which most random challenges are drawn.
sourcetype Challenger: FieldChallenger<Val<Self>> + CanObserve<<Self::Pcs as Pcs<Self::Challenge, Self::Challenger>>::Commitment> + CanSample<Self::Challenge>
type Challenger: FieldChallenger<Val<Self>> + CanObserve<<Self::Pcs as Pcs<Self::Challenge, Self::Challenger>>::Commitment> + CanSample<Self::Challenge>
The challenger (Fiat-Shamir) implementation used.
Required Methods§
sourcefn challenger(&self) -> Self::Challenger
fn challenger(&self) -> Self::Challenger
Initialize a new challenger.
Object Safety§
This trait is not object safe.