pub trait BabyBearFriConfig: StarkGenericConfig<Val = BabyBear, Challenge = <BabyBearPoseidon2 as StarkGenericConfig>::Challenge, Challenger = Self::FriChallenger, Pcs = TwoAdicFriPcs<BabyBear, Radix2DitParallel, Self::ValMmcs, ExtensionMmcs<BabyBear, <BabyBearPoseidon2 as StarkGenericConfig>::Challenge, Self::ValMmcs>>> {
type ValMmcs: Mmcs<BabyBear, ProverData<RowMajorMatrix<BabyBear>> = Self::RowMajorProverData> + Send + Sync;
type RowMajorProverData: Clone + Send + Sync;
type FriChallenger: CanObserve<<Self::ValMmcs as Mmcs<BabyBear>>::Commitment> + CanSample<<BabyBearPoseidon2 as StarkGenericConfig>::Challenge> + GrindingChallenger<Witness = BabyBear> + FieldChallenger<BabyBear>;
// Required method
fn fri_config(&self) -> &FriConfig<FriMmcs<Self>>;
}
Required Associated Types§
type ValMmcs: Mmcs<BabyBear, ProverData<RowMajorMatrix<BabyBear>> = Self::RowMajorProverData> + Send + Sync
type RowMajorProverData: Clone + Send + Sync
type FriChallenger: CanObserve<<Self::ValMmcs as Mmcs<BabyBear>>::Commitment> + CanSample<<BabyBearPoseidon2 as StarkGenericConfig>::Challenge> + GrindingChallenger<Witness = BabyBear> + FieldChallenger<BabyBear>
Required Methods§
fn fri_config(&self) -> &FriConfig<FriMmcs<Self>>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.