Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bb::avm2::tracegen::NullifierTreeCheckTraceBuilder Class Referencefinal

#include <nullifier_tree_check_trace.hpp>

Public Member Functions

void process (const simulation::EventEmitterInterface< simulation::NullifierTreeCheckEvent >::Container &events, TraceContainer &trace)
 Process the nullifier tree check events and populate the relevant columns in the trace.
 

Static Public Attributes

static const InteractionDefinition interactions
 

Detailed Description

Definition at line 11 of file nullifier_tree_check_trace.hpp.

Member Function Documentation

◆ process()

void bb::avm2::tracegen::NullifierTreeCheckTraceBuilder::process ( const simulation::EventEmitterInterface< simulation::NullifierTreeCheckEvent >::Container &  events,
TraceContainer trace 
)

Process the nullifier tree check events and populate the relevant columns in the trace.

The event stream contains both read/write events and checkpoint events (create, commit, revert). We use process_with_discard to consume the checkpoint events and reconstruct a discard flag for each read/write event, indicating whether it belongs to a reverted checkpoint. Discarded events still produce trace rows but are excluded from public input writes.

Each non-checkpoint event produces one trace row covering: siloing, low leaf validation, indexed tree membership checks, low leaf updates, new leaf insertion, and Merkle proofs.

Parameters
eventsThe container of nullifier tree check events to process.
traceThe trace container to populate with nullifier tree check rows.

Definition at line 25 of file nullifier_tree_check_trace.cpp.

Member Data Documentation

◆ interactions

const InteractionDefinition bb::avm2::tracegen::NullifierTreeCheckTraceBuilder::interactions
static
Initial value:
=
InteractionDefinition()
.add<lookup_nullifier_check_low_leaf_poseidon2_settings, InteractionType::LookupSequential>()
.add<lookup_nullifier_check_low_leaf_merkle_check_settings, InteractionType::LookupSequential>()
.add<lookup_nullifier_check_new_leaf_merkle_check_settings, InteractionType::LookupSequential>()
lookup_settings< lookup_nullifier_check_updated_low_leaf_poseidon2_settings_ > lookup_nullifier_check_updated_low_leaf_poseidon2_settings
lookup_settings< lookup_nullifier_check_low_leaf_nullifier_validation_settings_ > lookup_nullifier_check_low_leaf_nullifier_validation_settings
lookup_settings< lookup_nullifier_check_low_leaf_next_nullifier_validation_settings_ > lookup_nullifier_check_low_leaf_next_nullifier_validation_settings
lookup_settings< lookup_nullifier_check_silo_poseidon2_settings_ > lookup_nullifier_check_silo_poseidon2_settings
lookup_settings< lookup_nullifier_check_write_nullifier_to_public_inputs_settings_ > lookup_nullifier_check_write_nullifier_to_public_inputs_settings
lookup_settings< lookup_nullifier_check_new_leaf_poseidon2_settings_ > lookup_nullifier_check_new_leaf_poseidon2_settings

Definition at line 16 of file nullifier_tree_check_trace.hpp.


The documentation for this class was generated from the following files: