8#include "../columns.hpp"
17 static constexpr std::string_view
NAME =
"LOOKUP_UPDATE_CHECK_TIMESTAMP_FROM_PUBLIC_INPUTS";
22 static constexpr Column COUNTS = Column::lookup_update_check_timestamp_from_public_inputs_counts;
23 static constexpr Column INVERSES = Column::lookup_update_check_timestamp_from_public_inputs_inv;
24 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
25 ColumnAndShifts::update_check_timestamp_pi_offset, ColumnAndShifts::update_check_timestamp
27 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
28 ColumnAndShifts::precomputed_idx, ColumnAndShifts::public_inputs_cols_0_
34template <
typename FF_>
41 static constexpr std::string_view
NAME =
"LOOKUP_UPDATE_CHECK_DELAYED_PUBLIC_MUTABLE_SLOT_POSEIDON2";
46 static constexpr Column COUNTS = Column::lookup_update_check_delayed_public_mutable_slot_poseidon2_counts;
47 static constexpr Column INVERSES = Column::lookup_update_check_delayed_public_mutable_slot_poseidon2_inv;
48 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
49 ColumnAndShifts::update_check_dom_sep_public_storage_map_slot,
50 ColumnAndShifts::update_check_updated_class_ids_slot,
51 ColumnAndShifts::update_check_address,
52 ColumnAndShifts::update_check_delayed_public_mutable_slot,
53 ColumnAndShifts::update_check_const_three
55 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
56 ColumnAndShifts::poseidon2_hash_input_0,
57 ColumnAndShifts::poseidon2_hash_input_1,
58 ColumnAndShifts::poseidon2_hash_input_2,
59 ColumnAndShifts::poseidon2_hash_output,
60 ColumnAndShifts::poseidon2_hash_input_len
66template <
typename FF_>
73 static constexpr std::string_view
NAME =
"LOOKUP_UPDATE_CHECK_UPDATE_HASH_PUBLIC_DATA_READ";
78 static constexpr Column COUNTS = Column::lookup_update_check_update_hash_public_data_read_counts;
79 static constexpr Column INVERSES = Column::lookup_update_check_update_hash_public_data_read_inv;
80 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
81 ColumnAndShifts::precomputed_zero,
82 ColumnAndShifts::update_check_update_hash,
83 ColumnAndShifts::update_check_contract_instance_registry_address,
84 ColumnAndShifts::update_check_delayed_public_mutable_hash_slot,
85 ColumnAndShifts::update_check_public_data_tree_root
87 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
88 ColumnAndShifts::public_data_check_write,
89 ColumnAndShifts::public_data_check_value,
90 ColumnAndShifts::public_data_check_address,
91 ColumnAndShifts::public_data_check_slot,
92 ColumnAndShifts::public_data_check_root
98template <
typename FF_>
105 static constexpr std::string_view
NAME =
"LOOKUP_UPDATE_CHECK_UPDATE_HASH_POSEIDON2";
110 static constexpr Column COUNTS = Column::lookup_update_check_update_hash_poseidon2_counts;
111 static constexpr Column INVERSES = Column::lookup_update_check_update_hash_poseidon2_inv;
112 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
113 ColumnAndShifts::update_check_update_preimage_metadata,
114 ColumnAndShifts::update_check_update_preimage_pre_class_id,
115 ColumnAndShifts::update_check_update_preimage_post_class_id,
116 ColumnAndShifts::update_check_update_hash,
117 ColumnAndShifts::update_check_const_three
119 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
120 ColumnAndShifts::poseidon2_hash_input_0,
121 ColumnAndShifts::poseidon2_hash_input_1,
122 ColumnAndShifts::poseidon2_hash_input_2,
123 ColumnAndShifts::poseidon2_hash_output,
124 ColumnAndShifts::poseidon2_hash_input_len
130template <
typename FF_>
137 static constexpr std::string_view
NAME =
"LOOKUP_UPDATE_CHECK_UPDATE_HI_METADATA_RANGE";
142 static constexpr Column COUNTS = Column::lookup_update_check_update_hi_metadata_range_counts;
143 static constexpr Column INVERSES = Column::lookup_update_check_update_hi_metadata_range_inv;
144 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
145 ColumnAndShifts::update_check_update_hi_metadata, ColumnAndShifts::update_check_update_hi_metadata_bit_size
147 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
148 ColumnAndShifts::range_check_value, ColumnAndShifts::range_check_rng_chk_bits
154template <
typename FF_>
161 static constexpr std::string_view
NAME =
"LOOKUP_UPDATE_CHECK_UPDATE_LO_METADATA_RANGE";
166 static constexpr Column COUNTS = Column::lookup_update_check_update_lo_metadata_range_counts;
167 static constexpr Column INVERSES = Column::lookup_update_check_update_lo_metadata_range_inv;
168 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
169 ColumnAndShifts::update_check_timestamp_of_change, ColumnAndShifts::update_check_timestamp_of_change_bit_size
171 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
172 ColumnAndShifts::range_check_value, ColumnAndShifts::range_check_rng_chk_bits
178template <
typename FF_>
185 static constexpr std::string_view
NAME =
"LOOKUP_UPDATE_CHECK_TIMESTAMP_IS_LT_TIMESTAMP_OF_CHANGE";
190 static constexpr Column COUNTS = Column::lookup_update_check_timestamp_is_lt_timestamp_of_change_counts;
191 static constexpr Column INVERSES = Column::lookup_update_check_timestamp_is_lt_timestamp_of_change_inv;
192 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
193 ColumnAndShifts::update_check_timestamp_of_change,
194 ColumnAndShifts::update_check_timestamp,
195 ColumnAndShifts::update_check_timestamp_is_lt_timestamp_of_change
197 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = { ColumnAndShifts::gt_input_a,
198 ColumnAndShifts::gt_input_b,
199 ColumnAndShifts::gt_res };
204template <
typename FF_>
Settings to be passed ot GenericLookupRelationImpl.
static constexpr Column DST_SELECTOR
static constexpr Column SRC_SELECTOR
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr Column COUNTS
static constexpr std::string_view RELATION_NAME
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr Column INVERSES
static constexpr std::string_view NAME
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column DST_SELECTOR
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column SRC_SELECTOR
static constexpr std::string_view RELATION_NAME
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr std::string_view NAME
static constexpr Column COUNTS
static constexpr Column INVERSES
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr std::string_view RELATION_NAME
static constexpr Column COUNTS
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::string_view NAME
static constexpr Column SRC_SELECTOR
static constexpr Column INVERSES
static constexpr std::string_view RELATION_NAME
static constexpr Column SRC_SELECTOR
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column COUNTS
static constexpr Column INVERSES
static constexpr Column DST_SELECTOR
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr std::string_view NAME