Type Definition o1vm::keccak::trace::KeccakTrace

source ·
pub type KeccakTrace = Trace<N_ZKVM_KECCAK_COLS, KeccakConfig>;
Expand description

A Keccak instruction trace

Trait Implementations§

source§

impl Tracer<N_ZKVM_KECCAK_REL_COLS, KeccakConfig, KeccakEnv<<<KeccakConfig as FoldingConfig>::Curve as AffineCurve>::ScalarField>> for KeccakTrace

§

type Selector = ()

source§

fn init( domain_size: usize, selector: Steps, _env: &mut KeccakEnv<<<KeccakConfig as FoldingConfig>::Curve as AffineCurve>::ScalarField> ) -> Self

Initialize a new trace with the given domain size, selector, and environment.
source§

fn push_row( &mut self, _selector: Self::Selector, row: &[<<KeccakConfig as FoldingConfig>::Curve as AffineCurve>::ScalarField; 2073] )

Add a witness row to the circuit (only for relation columns)
source§

fn pad_with_row( &mut self, _selector: Self::Selector, row: &[<<KeccakConfig as FoldingConfig>::Curve as AffineCurve>::ScalarField; 2073] ) -> usize

Pad the rows of one opcode with the given row until reaching the domain size if needed. Returns the number of rows that were added. It does not add selector columns.
source§

fn pad_with_zeros(&mut self, _selector: Self::Selector) -> usize

Pads the rows of one opcode with zero rows until reaching the domain size if needed. Returns the number of rows that were added. It does not add selector columns.
source§

fn pad_dummy(&mut self, _selector: Self::Selector) -> usize

Pad the rows of one opcode with the first row until reaching the domain size if needed. It only tries to pad witnesses which are non empty. Returns the number of rows that were added. It does not add selector columns. Read more