8#include "../columns.hpp"
17 static constexpr std::string_view
NAME =
"LOOKUP_CONTRACT_INSTANCE_RETRIEVAL_CHECK_PROTOCOL_ADDRESS_RANGE";
18 static constexpr std::string_view
RELATION_NAME =
"contract_instance_retrieval";
22 static constexpr Column COUNTS = Column::lookup_contract_instance_retrieval_check_protocol_address_range_counts;
23 static constexpr Column INVERSES = Column::lookup_contract_instance_retrieval_check_protocol_address_range_inv;
24 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
25 ColumnAndShifts::contract_instance_retrieval_max_protocol_contracts,
26 ColumnAndShifts::contract_instance_retrieval_address_sub_one,
27 ColumnAndShifts::contract_instance_retrieval_is_protocol_contract
29 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = { ColumnAndShifts::ff_gt_a,
30 ColumnAndShifts::ff_gt_b,
31 ColumnAndShifts::ff_gt_result };
36template <
typename FF_>
43 static constexpr std::string_view
NAME =
44 "LOOKUP_CONTRACT_INSTANCE_RETRIEVAL_READ_DERIVED_ADDRESS_FROM_PUBLIC_INPUTS";
45 static constexpr std::string_view
RELATION_NAME =
"contract_instance_retrieval";
50 Column::lookup_contract_instance_retrieval_read_derived_address_from_public_inputs_counts;
52 Column::lookup_contract_instance_retrieval_read_derived_address_from_public_inputs_inv;
53 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
54 ColumnAndShifts::contract_instance_retrieval_derived_address_pi_index,
55 ColumnAndShifts::contract_instance_retrieval_derived_address
57 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
58 ColumnAndShifts::precomputed_idx, ColumnAndShifts::public_inputs_cols_0_
64template <
typename FF_>
71 static constexpr std::string_view
NAME =
"LOOKUP_CONTRACT_INSTANCE_RETRIEVAL_DEPLOYMENT_NULLIFIER_READ";
72 static constexpr std::string_view
RELATION_NAME =
"contract_instance_retrieval";
74 static constexpr Column SRC_SELECTOR = Column::contract_instance_retrieval_should_check_nullifier;
76 static constexpr Column COUNTS = Column::lookup_contract_instance_retrieval_deployment_nullifier_read_counts;
77 static constexpr Column INVERSES = Column::lookup_contract_instance_retrieval_deployment_nullifier_read_inv;
78 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
79 ColumnAndShifts::contract_instance_retrieval_exists,
80 ColumnAndShifts::contract_instance_retrieval_address,
81 ColumnAndShifts::contract_instance_retrieval_nullifier_tree_root,
82 ColumnAndShifts::contract_instance_retrieval_nullifier_tree_height,
83 ColumnAndShifts::contract_instance_retrieval_nullifier_merkle_separator,
84 ColumnAndShifts::contract_instance_retrieval_sel,
85 ColumnAndShifts::contract_instance_retrieval_siloing_separator,
86 ColumnAndShifts::contract_instance_retrieval_deployer_protocol_contract_address
88 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
89 ColumnAndShifts::indexed_tree_check_exists,
90 ColumnAndShifts::indexed_tree_check_value,
91 ColumnAndShifts::indexed_tree_check_root,
92 ColumnAndShifts::indexed_tree_check_tree_height,
93 ColumnAndShifts::indexed_tree_check_merkle_hash_separator,
94 ColumnAndShifts::indexed_tree_check_sel_silo,
95 ColumnAndShifts::indexed_tree_check_siloing_separator,
96 ColumnAndShifts::indexed_tree_check_address
102template <
typename FF_>
109 static constexpr std::string_view
NAME =
"LOOKUP_CONTRACT_INSTANCE_RETRIEVAL_ADDRESS_DERIVATION";
110 static constexpr std::string_view
RELATION_NAME =
"contract_instance_retrieval";
114 static constexpr Column COUNTS = Column::lookup_contract_instance_retrieval_address_derivation_counts;
115 static constexpr Column INVERSES = Column::lookup_contract_instance_retrieval_address_derivation_inv;
116 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
117 ColumnAndShifts::contract_instance_retrieval_derived_address,
118 ColumnAndShifts::contract_instance_retrieval_salt,
119 ColumnAndShifts::contract_instance_retrieval_deployer_addr,
120 ColumnAndShifts::contract_instance_retrieval_original_class_id,
121 ColumnAndShifts::contract_instance_retrieval_init_hash,
122 ColumnAndShifts::contract_instance_retrieval_nullifier_key_x,
123 ColumnAndShifts::contract_instance_retrieval_nullifier_key_y,
124 ColumnAndShifts::contract_instance_retrieval_incoming_viewing_key_x,
125 ColumnAndShifts::contract_instance_retrieval_incoming_viewing_key_y,
126 ColumnAndShifts::contract_instance_retrieval_outgoing_viewing_key_x,
127 ColumnAndShifts::contract_instance_retrieval_outgoing_viewing_key_y,
128 ColumnAndShifts::contract_instance_retrieval_tagging_key_x,
129 ColumnAndShifts::contract_instance_retrieval_tagging_key_y
131 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
132 ColumnAndShifts::address_derivation_address,
133 ColumnAndShifts::address_derivation_salt,
134 ColumnAndShifts::address_derivation_deployer_addr,
135 ColumnAndShifts::address_derivation_class_id,
136 ColumnAndShifts::address_derivation_init_hash,
137 ColumnAndShifts::address_derivation_nullifier_key_x,
138 ColumnAndShifts::address_derivation_nullifier_key_y,
139 ColumnAndShifts::address_derivation_incoming_viewing_key_x,
140 ColumnAndShifts::address_derivation_incoming_viewing_key_y,
141 ColumnAndShifts::address_derivation_outgoing_viewing_key_x,
142 ColumnAndShifts::address_derivation_outgoing_viewing_key_y,
143 ColumnAndShifts::address_derivation_tagging_key_x,
144 ColumnAndShifts::address_derivation_tagging_key_y
150template <
typename FF_>
157 static constexpr std::string_view
NAME =
"LOOKUP_CONTRACT_INSTANCE_RETRIEVAL_UPDATE_CHECK";
158 static constexpr std::string_view
RELATION_NAME =
"contract_instance_retrieval";
162 static constexpr Column COUNTS = Column::lookup_contract_instance_retrieval_update_check_counts;
163 static constexpr Column INVERSES = Column::lookup_contract_instance_retrieval_update_check_inv;
164 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
165 ColumnAndShifts::contract_instance_retrieval_address,
166 ColumnAndShifts::contract_instance_retrieval_current_class_id,
167 ColumnAndShifts::contract_instance_retrieval_original_class_id,
168 ColumnAndShifts::contract_instance_retrieval_public_data_tree_root
170 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
171 ColumnAndShifts::update_check_address,
172 ColumnAndShifts::update_check_current_class_id,
173 ColumnAndShifts::update_check_original_class_id,
174 ColumnAndShifts::update_check_public_data_tree_root
180template <
typename FF_>
static constexpr Column DST_SELECTOR
static constexpr Column COUNTS
static constexpr Column INVERSES
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr std::string_view RELATION_NAME
static constexpr Column SRC_SELECTOR
static constexpr std::string_view 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 Column INVERSES
static constexpr Column COUNTS
static constexpr Column DST_SELECTOR
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr std::string_view NAME
static constexpr std::string_view RELATION_NAME
static constexpr Column DST_SELECTOR
static constexpr std::string_view RELATION_NAME
static constexpr Column SRC_SELECTOR
static constexpr Column INVERSES
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column COUNTS
static constexpr std::string_view NAME
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column DST_SELECTOR
static constexpr Column INVERSES
static constexpr Column COUNTS
static constexpr std::string_view RELATION_NAME
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr Column SRC_SELECTOR
static constexpr std::string_view NAME
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
Settings to be passed ot GenericLookupRelationImpl.