8#include "../columns.hpp"
17 static constexpr std::string_view
NAME =
"LOOKUP_CALLDATA_HASHING_GET_CALLDATA_FIELD_0";
22 static constexpr Column COUNTS = Column::lookup_calldata_hashing_get_calldata_field_0_counts;
23 static constexpr Column INVERSES = Column::lookup_calldata_hashing_get_calldata_field_0_inv;
24 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
25 ColumnAndShifts::calldata_hashing_index_0_,
26 ColumnAndShifts::calldata_hashing_context_id,
27 ColumnAndShifts::calldata_hashing_input_0_
29 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
30 ColumnAndShifts::calldata_index, ColumnAndShifts::calldata_context_id, ColumnAndShifts::calldata_value
36template <
typename FF_>
43 static constexpr std::string_view
NAME =
"LOOKUP_CALLDATA_HASHING_GET_CALLDATA_FIELD_1";
48 static constexpr Column COUNTS = Column::lookup_calldata_hashing_get_calldata_field_1_counts;
49 static constexpr Column INVERSES = Column::lookup_calldata_hashing_get_calldata_field_1_inv;
50 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
51 ColumnAndShifts::calldata_hashing_index_1_,
52 ColumnAndShifts::calldata_hashing_context_id,
53 ColumnAndShifts::calldata_hashing_input_1_
55 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
56 ColumnAndShifts::calldata_index, ColumnAndShifts::calldata_context_id, ColumnAndShifts::calldata_value
62template <
typename FF_>
69 static constexpr std::string_view
NAME =
"LOOKUP_CALLDATA_HASHING_GET_CALLDATA_FIELD_2";
74 static constexpr Column COUNTS = Column::lookup_calldata_hashing_get_calldata_field_2_counts;
75 static constexpr Column INVERSES = Column::lookup_calldata_hashing_get_calldata_field_2_inv;
76 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
77 ColumnAndShifts::calldata_hashing_index_2_,
78 ColumnAndShifts::calldata_hashing_context_id,
79 ColumnAndShifts::calldata_hashing_input_2_
81 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
82 ColumnAndShifts::calldata_index, ColumnAndShifts::calldata_context_id, ColumnAndShifts::calldata_value
88template <
typename FF_>
95 static constexpr std::string_view
NAME =
"LOOKUP_CALLDATA_HASHING_CHECK_FINAL_SIZE";
100 static constexpr Column COUNTS = Column::lookup_calldata_hashing_check_final_size_counts;
101 static constexpr Column INVERSES = Column::lookup_calldata_hashing_check_final_size_inv;
102 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
103 ColumnAndShifts::calldata_hashing_calldata_size, ColumnAndShifts::calldata_hashing_context_id
105 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
106 ColumnAndShifts::calldata_index, ColumnAndShifts::calldata_context_id
112template <
typename FF_>
119 static constexpr std::string_view
NAME =
"LOOKUP_CALLDATA_HASHING_POSEIDON2_HASH";
124 static constexpr Column COUNTS = Column::lookup_calldata_hashing_poseidon2_hash_counts;
125 static constexpr Column INVERSES = Column::lookup_calldata_hashing_poseidon2_hash_inv;
126 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
127 ColumnAndShifts::calldata_hashing_start, ColumnAndShifts::calldata_hashing_latch,
128 ColumnAndShifts::calldata_hashing_input_0_, ColumnAndShifts::calldata_hashing_input_1_,
129 ColumnAndShifts::calldata_hashing_input_2_, ColumnAndShifts::calldata_hashing_input_len,
130 ColumnAndShifts::calldata_hashing_rounds_rem, ColumnAndShifts::calldata_hashing_output_hash
132 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
133 ColumnAndShifts::poseidon2_hash_start,
134 ColumnAndShifts::poseidon2_hash_end,
135 ColumnAndShifts::poseidon2_hash_input_0,
136 ColumnAndShifts::poseidon2_hash_input_1,
137 ColumnAndShifts::poseidon2_hash_input_2,
138 ColumnAndShifts::poseidon2_hash_input_len,
139 ColumnAndShifts::poseidon2_hash_num_perm_rounds_rem,
140 ColumnAndShifts::poseidon2_hash_output
146template <
typename FF_>
This file contains the template for the generic lookup that can be specialized to enforce various loo...
static constexpr Column DST_SELECTOR
static constexpr Column COUNTS
static constexpr Column INVERSES
static constexpr std::string_view NAME
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column SRC_SELECTOR
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr std::string_view RELATION_NAME
static constexpr Column SRC_SELECTOR
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr std::string_view RELATION_NAME
static constexpr Column INVERSES
static constexpr Column COUNTS
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr Column DST_SELECTOR
static constexpr std::string_view NAME
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr Column COUNTS
static constexpr Column SRC_SELECTOR
static constexpr std::string_view NAME
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr Column DST_SELECTOR
static constexpr std::string_view RELATION_NAME
static constexpr Column INVERSES
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr Column COUNTS
static constexpr std::string_view NAME
static constexpr Column DST_SELECTOR
static constexpr Column SRC_SELECTOR
static constexpr Column INVERSES
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr std::string_view RELATION_NAME
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr Column DST_SELECTOR
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr std::string_view NAME
static constexpr Column COUNTS
static constexpr Column SRC_SELECTOR
static constexpr std::string_view RELATION_NAME
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr Column INVERSES