Trait sp1_recursion_program::hints::Hintable

source ·
pub trait Hintable<C: Config> {
    type HintVariable: MemVariable<C>;

    // Required methods
    fn read(builder: &mut Builder<C>) -> Self::HintVariable;
    fn write(&self) -> Vec<Vec<Block<C::F>>>;

    // Provided method
    fn witness(variable: &Self::HintVariable, builder: &mut Builder<C>) { ... }
}

Required Associated Types§

Required Methods§

source

fn read(builder: &mut Builder<C>) -> Self::HintVariable

source

fn write(&self) -> Vec<Vec<Block<C::F>>>

Provided Methods§

source

fn witness(variable: &Self::HintVariable, builder: &mut Builder<C>)

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for usize

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for Vec<usize>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for Vec<Vec<InnerBatchOpening>>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for Vec<Vec<InnerChallenge>>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for Vec<ChipOpenedValues<InnerChallenge>>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for Vec<InnerBatchOpening>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for Vec<InnerChallenge>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for Vec<InnerCommitPhaseStep>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for Vec<InnerDigest>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for Vec<InnerQueryProof>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for Vec<InnerVal>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for DuplexChallenger<InnerVal, InnerPerm, 16, 8>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for TwoAdicMultiplicativeCoset<InnerVal>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for AirOpenedValues<InnerChallenge>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for ChipOpenedValues<InnerChallenge>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for ShardCommitment<InnerDigestHash>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for ShardOpenedValues<InnerChallenge>

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for InnerBatchOpening

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for InnerChallenge

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for InnerCommitPhaseStep

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for InnerDigest

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for InnerFriProof

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for InnerPcsProof

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for InnerQueryProof

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for InnerVal

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for [Word<BabyBear>; 8]

source§

impl<H: Hintable<InnerConfig>> Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for &H

source§

impl<I: VecAutoHintable<InnerConfig>> Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for Vec<I>

Implementors§

source§

impl Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for QuotientDataValues

source§

impl<'a, A: MachineAir<BabyBear>> Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for SP1CompressMemoryLayout<'a, BabyBearPoseidon2, A>

source§

impl<'a, A: MachineAir<BabyBear>> Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for SP1DeferredMemoryLayout<'a, BabyBearPoseidon2, A>

source§

impl<'a, A: MachineAir<BabyBear>> Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for SP1RecursionMemoryLayout<'a, BabyBearPoseidon2, A>

source§

impl<'a, A: MachineAir<BabyBear>> Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for SP1RootMemoryLayout<'a, BabyBearPoseidon2, A>

source§

impl<'a, SC: StarkGenericConfig<Pcs = <BabyBearPoseidon2 as StarkGenericConfig>::Pcs, Challenge = <BabyBearPoseidon2 as StarkGenericConfig>::Challenge, Challenger = <BabyBearPoseidon2 as StarkGenericConfig>::Challenger>, A: MachineAir<SC::Val>> Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for ShardProofHint<'a, SC, A>

source§

impl<'a, SC: StarkGenericConfig<Pcs = <BabyBearPoseidon2 as StarkGenericConfig>::Pcs, Challenge = <BabyBearPoseidon2 as StarkGenericConfig>::Challenge, Challenger = <BabyBearPoseidon2 as StarkGenericConfig>::Challenger>, A: MachineAir<SC::Val>> Hintable<AsmConfig<BabyBear, BinomialExtensionField<BabyBear, 4>>> for VerifyingKeyHint<'a, SC, A>