Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
execution_trace_block.hpp File Reference

Go to the source code of this file.

Classes

class  bb::Selector< FF >
 Abstract interface for a generic selector. More...
 
class  bb::SlabVectorSelector< FF >
 Selector backed by a slab allocator vector. More...
 
class  bb::ExecutionTraceBlock< FF, NUM_WIRES_ >
 Basic structure for storing gate data in a builder. Holds wires, the 7 non-gate selectors present on every block, and a variable-length list of (GateKind, Selector) pairs identifying the gate selectors this block owns. More...
 

Namespaces

namespace  bb
 Entry point for Barretenberg command-line interface.
 

Enumerations

enum class  bb::GateKind : uint8_t {
  bb::None = 0 , bb::BusRead , bb::Lookup , bb::Arith ,
  bb::DeltaRange , bb::Elliptic , bb::Memory , bb::Nnf ,
  bb::Poseidon2Ext , bb::Poseidon2Int , bb::Poseidon2ExtInitial , bb::Poseidon2QuadInt ,
  bb::Poseidon2QuadIntTerminal , bb::Poseidon2TransitionEntry
}
 Tag identifying which gate selector a block owns. Used by cross-block readers to decide whether (block, idx) returns the block's value or zero. More...
 

Functions

template<typename FF , size_t NUM_WIRES>
FF bb::read_gate_selector (const ExecutionTraceBlock< FF, NUM_WIRES > &block, GateKind kind, size_t idx)
 Gate-selector value at (block, idx) for kind, returning zero if block does not own this kind. Use at cross-block read sites where the caller iterates blocks of unknown kind.