openvm_stark_backend::rap

Trait Rap

Source
pub trait Rap<AB>: Sync
where AB: PermutationAirBuilder,
{ // Required method fn eval(&self, builder: &mut AB); }
Expand description

An AIR that works with a particular AirBuilder which allows preprocessing and injected randomness.

Currently this is not a fully general RAP. Only the following phases are allowed:

  • Preprocessing
  • Main trace generation and commitment
  • Permutation trace generation and commitment

Randomness is drawn after the main trace commitment phase, and used in the permutation trace.

Does not inherit Air trait to allow overrides for technical reasons around dynamic dispatch.

Required Methods§

Source

fn eval(&self, builder: &mut AB)

Implementors§

Source§

impl<AB, A> Rap<AB> for A
where A: Air<AB>, AB: InteractionBuilder + PermutationAirBuilderWithExposedValues + InteractionPhaseAirBuilder,