Skip to main content

TestFixture

Trait TestFixture 

Source
pub trait TestFixture<SC: StarkProtocolConfig> {
    // Required methods
    fn airs(&self) -> Vec<AirRef<SC>> ;
    fn generate_proving_ctx(&self) -> ProvingContext<CpuColMajorBackend<SC>>;

    // Provided methods
    fn keygen<E: StarkEngine<SC = SC>>(
        &self,
        engine: &E,
    ) -> (MultiStarkProvingKey<SC>, MultiStarkVerifyingKey<SC>) { ... }
    fn prove<E: StarkEngine<SC = SC>>(
        &self,
        engine: &E,
        pk: &MultiStarkProvingKey<SC>,
    ) -> Proof<SC> { ... }
    fn prove_from_transcript<E: StarkEngine<SC = SC>>(
        &self,
        engine: &E,
        pk: &MultiStarkProvingKey<SC>,
        transcript: &mut E::TS,
    ) -> Proof<SC> { ... }
    fn keygen_and_prove<E: StarkEngine<SC = SC>>(
        &self,
        engine: &E,
    ) -> (MultiStarkVerifyingKey<SC>, Proof<SC>) { ... }
}
Expand description

Trait for object responsible for generating the collection of AIRs and trace matrices for a single test case.

Required Methods§

Provided Methods§

Source

fn keygen<E: StarkEngine<SC = SC>>( &self, engine: &E, ) -> (MultiStarkProvingKey<SC>, MultiStarkVerifyingKey<SC>)

Source

fn prove<E: StarkEngine<SC = SC>>( &self, engine: &E, pk: &MultiStarkProvingKey<SC>, ) -> Proof<SC>

Source

fn prove_from_transcript<E: StarkEngine<SC = SC>>( &self, engine: &E, pk: &MultiStarkProvingKey<SC>, transcript: &mut E::TS, ) -> Proof<SC>

Prove using CPU tracegen and transport to device.

Source

fn keygen_and_prove<E: StarkEngine<SC = SC>>( &self, engine: &E, ) -> (MultiStarkVerifyingKey<SC>, Proof<SC>)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§