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

Classes

class  AddChecksToBuilder
 
class  AddressDerivationTraceBuilder
 
class  AluTraceBuilder
 
class  BitwiseTraceBuilder
 
class  BytecodeTraceBuilder
 
class  CalldataTraceBuilder
 
class  CheckingPermutationBuilder
 
class  ClassIdDerivationTraceBuilder
 
class  ContextStackTraceBuilder
 
class  ContractInstanceRetrievalTraceBuilder
 
class  DataCopyTraceBuilder
 
class  EccTraceBuilder
 
class  EmitUnencryptedLogTraceBuilder
 
class  ExecutionTraceBuilder
 
class  FieldGreaterThanTraceBuilder
 
class  GetContractInstanceSpec
 
class  GetContractInstanceTraceBuilder
 
class  GetEnvVarSpec
 
class  GreaterThanTraceBuilder
 
class  IndexedLookupTraceBuilder
 
class  InteractionBuilderInterface
 
class  InteractionDefinition
 
class  InternalCallStackBuilder
 
class  KeccakF1600TraceBuilder
 
class  L1ToL2MessageTreeCheckTraceBuilder
 
class  LookupIntoBitwise
 
class  LookupIntoDynamicTableGeneric
 
class  LookupIntoDynamicTableSequential
 
class  LookupIntoIndexedByClk
 
class  LookupIntoPDecomposition
 
class  MemoryTraceBuilder
 
class  MerkleCheckTraceBuilder
 
class  MultiPermutationBuilder
 
class  NoteHashTreeCheckTraceBuilder
 
class  NullifierTreeCheckTraceBuilder
 
class  PermutationBuilder
 
class  Poseidon2TraceBuilder
 
class  PrecomputedTraceBuilder
 
class  PublicDataTreeTraceBuilder
 
class  PublicInputsTraceBuilder
 
class  RangeCheckTraceBuilder
 
class  Sha256TraceBuilder
 
struct  SubtraceInfo
 
class  TestTraceContainer
 
class  ToRadixTraceBuilder
 
class  TraceContainer
 
class  TxPhaseOffsetsTable
 
class  TxTraceBuilder
 
class  UpdateCheckTraceBuilder
 
class  WrittenPublicDataSlotsTreeCheckTraceBuilder
 

Typedefs

using C = Column
 
using Poseidon2 = crypto::Poseidon2< crypto::Poseidon2Bn254ScalarFieldParams >
 

Enumerations

enum class  SubtraceSel : uint8_t {
  ALU , CAST , SET , BITWISE ,
  TORADIXBE , POSEIDON2PERM , ECC , CALLDATACOPY ,
  RETURNDATACOPY , EXECUTION , KECCAKF1600 , GETCONTRACTINSTANCE ,
  EMITUNENCRYPTEDLOG , SHA256COMPRESSION
}
 
enum class  InteractionType {
  LookupGeneric , LookupSequential , LookupIntoBitwise , LookupIntoIndexedByClk ,
  LookupIntoPDecomposition , Permutation , MultiPermutation
}
 

Functions

template<typename EventVariant >
std::unordered_map< size_t, size_t > compute_reverted_in_map (const std::vector< EventVariant > &events)
 
template<typename EventType , typename ProcessEventFn >
void process_with_discard (const std::vector< std::variant< EventType, simulation::CheckPointEventType > > &events, ProcessEventFn &&process_event)
 
FF get_subtrace_id (SubtraceSel subtrace_sel)
 Get the subtrace ID for a given subtrace enum.
 
Column get_subtrace_selector (SubtraceSel subtrace_sel)
 Get the column selector for a given subtrace selector.
 
Column get_dyn_gas_selector (uint32_t dyn_gas_id)
 Get the column selector for a given dynamic gas ID.
 
template<typename T >
std::vector< T > concatenate_jobs (std::vector< T > &&first, auto &&... rest)
 
template<typename LookupSettings >
void SetDummyInverses (TraceContainer &trace)
 
bool is_shift (ColumnAndShifts c)
 
std::optional< ColumnAndShiftsshift_column (Column c)
 
std::optional< Columnunshift_column (ColumnAndShifts c)
 
AvmFullRow get_full_row (const TraceContainer &trace, uint32_t row)
 
AvmFullRowConstRef get_full_row_ref (const TraceContainer &trace, uint32_t row)
 
AvmFullRow get_full_row (const class TraceContainer &trace, uint32_t row)
 
AvmFullRowConstRef get_full_row_ref (const class TraceContainer &trace, uint32_t row)
 

Variables

constexpr uint32_t DECOMPOSE_WINDOW_SIZE = 37
 
constexpr uint32_t MAX_MEM_ADDR = AVM_HIGHEST_MEM_ADDRESS
 
const std::unordered_map< ExecutionOpCode, SubtraceInfoSUBTRACE_INFO_MAP
 

Typedef Documentation

◆ C

Definition at line 20 of file keccakf1600_trace.cpp.

◆ Poseidon2

Enumeration Type Documentation

◆ InteractionType

Enumerator
LookupGeneric 
LookupSequential 
LookupIntoBitwise 
LookupIntoIndexedByClk 
LookupIntoPDecomposition 
Permutation 
MultiPermutation 

Definition at line 19 of file interaction_def.hpp.

◆ SubtraceSel

enum class bb::avm2::tracegen::SubtraceSel : uint8_t
strong
Enumerator
ALU 
CAST 
SET 
BITWISE 
TORADIXBE 
POSEIDON2PERM 
ECC 
CALLDATACOPY 
RETURNDATACOPY 
EXECUTION 
KECCAKF1600 
GETCONTRACTINSTANCE 
EMITUNENCRYPTEDLOG 
SHA256COMPRESSION 

Definition at line 14 of file instruction_spec.hpp.

Function Documentation

◆ compute_reverted_in_map()

template<typename EventVariant >
std::unordered_map< size_t, size_t > bb::avm2::tracegen::compute_reverted_in_map ( const std::vector< EventVariant > &  events)

Definition at line 17 of file discard_reconstruction.hpp.

◆ concatenate_jobs()

template<typename T >
std::vector< T > bb::avm2::tracegen::concatenate_jobs ( std::vector< T > &&  first,
auto &&...  rest 
)

Definition at line 16 of file interaction_builder.hpp.

◆ get_dyn_gas_selector()

Column bb::avm2::tracegen::get_dyn_gas_selector ( uint32_t  dyn_gas_id)

Get the column selector for a given dynamic gas ID.

Parameters
dyn_gas_idThe dynamic gas ID.
Returns
The corresponding column selector.

Definition at line 193 of file instruction_spec.cpp.

◆ get_full_row() [1/2]

AvmFullRow bb::avm2::tracegen::get_full_row ( const class TraceContainer trace,
uint32_t  row 
)

◆ get_full_row() [2/2]

AvmFullRow bb::avm2::tracegen::get_full_row ( const TraceContainer trace,
uint32_t  row 
)

Definition at line 51 of file trace_conversion.cpp.

◆ get_full_row_ref() [1/2]

AvmFullRowConstRef bb::avm2::tracegen::get_full_row_ref ( const class TraceContainer trace,
uint32_t  row 
)

◆ get_full_row_ref() [2/2]

AvmFullRowConstRef bb::avm2::tracegen::get_full_row_ref ( const TraceContainer trace,
uint32_t  row 
)

Definition at line 67 of file trace_conversion.cpp.

◆ get_subtrace_id()

FF bb::avm2::tracegen::get_subtrace_id ( SubtraceSel  subtrace_sel)

Get the subtrace ID for a given subtrace enum.

Parameters
subtrace_selThe subtrace enum.
Returns
The corresponding subtrace ID.

Definition at line 115 of file instruction_spec.cpp.

◆ get_subtrace_selector()

Column bb::avm2::tracegen::get_subtrace_selector ( SubtraceSel  subtrace_sel)

Get the column selector for a given subtrace selector.

Parameters
subtrace_selThe subtrace selector.
Returns
The corresponding column selector.

Definition at line 153 of file instruction_spec.cpp.

◆ is_shift()

bool bb::avm2::tracegen::is_shift ( ColumnAndShifts  c)

Definition at line 11 of file trace_conversion.cpp.

◆ process_with_discard()

template<typename EventType , typename ProcessEventFn >
void bb::avm2::tracegen::process_with_discard ( const std::vector< std::variant< EventType, simulation::CheckPointEventType > > &  events,
ProcessEventFn &&  process_event 
)

Definition at line 52 of file discard_reconstruction.hpp.

◆ SetDummyInverses()

template<typename LookupSettings >
void bb::avm2::tracegen::SetDummyInverses ( TraceContainer trace)

Definition at line 26 of file interaction_builder.hpp.

◆ shift_column()

std::optional< ColumnAndShifts > bb::avm2::tracegen::shift_column ( Column  c)

Definition at line 23 of file trace_conversion.cpp.

◆ unshift_column()

std::optional< Column > bb::avm2::tracegen::unshift_column ( ColumnAndShifts  c)

Definition at line 37 of file trace_conversion.cpp.

Variable Documentation

◆ DECOMPOSE_WINDOW_SIZE

constexpr uint32_t bb::avm2::tracegen::DECOMPOSE_WINDOW_SIZE = 37
constexpr

Definition at line 13 of file bytecode_trace.hpp.

◆ MAX_MEM_ADDR

constexpr uint32_t bb::avm2::tracegen::MAX_MEM_ADDR = AVM_HIGHEST_MEM_ADDRESS
constexpr

Definition at line 18 of file data_copy_trace.cpp.

◆ SUBTRACE_INFO_MAP

const std::unordered_map< ExecutionOpCode, SubtraceInfo > bb::avm2::tracegen::SUBTRACE_INFO_MAP

Definition at line 12 of file instruction_spec.cpp.