Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
lookups_contract_instance_retrieval.hpp
Go to the documentation of this file.
1// AUTOGENERATED FILE
2#pragma once
3
4#include <cstddef>
5#include <string_view>
6#include <tuple>
7
8#include "../columns.hpp"
11
12namespace bb::avm2 {
13
15
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";
19 static constexpr size_t LOOKUP_TUPLE_SIZE = 3;
20 static constexpr Column SRC_SELECTOR = Column::contract_instance_retrieval_sel;
21 static constexpr Column DST_SELECTOR = Column::ff_gt_sel;
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
28 };
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 };
32};
33
36template <typename FF_>
39
41
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";
46 static constexpr size_t LOOKUP_TUPLE_SIZE = 2;
47 static constexpr Column SRC_SELECTOR = Column::contract_instance_retrieval_is_protocol_contract;
48 static constexpr Column DST_SELECTOR = Column::public_inputs_sel;
49 static constexpr Column COUNTS =
50 Column::lookup_contract_instance_retrieval_read_derived_address_from_public_inputs_counts;
51 static constexpr Column INVERSES =
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
56 };
57 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> DST_COLUMNS = {
58 ColumnAndShifts::precomputed_clk, ColumnAndShifts::public_inputs_cols_0_
59 };
60};
61
64template <typename FF_>
67
69
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";
73 static constexpr size_t LOOKUP_TUPLE_SIZE = 5;
74 static constexpr Column SRC_SELECTOR = Column::contract_instance_retrieval_should_check_nullifier;
75 static constexpr Column DST_SELECTOR = Column::nullifier_check_sel;
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_deployer_protocol_contract_address,
83 ColumnAndShifts::contract_instance_retrieval_sel
84 };
85 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> DST_COLUMNS = {
86 ColumnAndShifts::nullifier_check_exists,
87 ColumnAndShifts::nullifier_check_nullifier,
88 ColumnAndShifts::nullifier_check_root,
89 ColumnAndShifts::nullifier_check_address,
90 ColumnAndShifts::nullifier_check_should_silo
91 };
92};
93
96template <typename FF_>
99
101
103 static constexpr std::string_view NAME = "LOOKUP_CONTRACT_INSTANCE_RETRIEVAL_ADDRESS_DERIVATION";
104 static constexpr std::string_view RELATION_NAME = "contract_instance_retrieval";
105 static constexpr size_t LOOKUP_TUPLE_SIZE = 13;
106 static constexpr Column SRC_SELECTOR = Column::contract_instance_retrieval_exists;
107 static constexpr Column DST_SELECTOR = Column::address_derivation_sel;
108 static constexpr Column COUNTS = Column::lookup_contract_instance_retrieval_address_derivation_counts;
109 static constexpr Column INVERSES = Column::lookup_contract_instance_retrieval_address_derivation_inv;
110 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> SRC_COLUMNS = {
111 ColumnAndShifts::contract_instance_retrieval_derived_address,
112 ColumnAndShifts::contract_instance_retrieval_salt,
113 ColumnAndShifts::contract_instance_retrieval_deployer_addr,
114 ColumnAndShifts::contract_instance_retrieval_original_class_id,
115 ColumnAndShifts::contract_instance_retrieval_init_hash,
116 ColumnAndShifts::contract_instance_retrieval_nullifier_key_x,
117 ColumnAndShifts::contract_instance_retrieval_nullifier_key_y,
118 ColumnAndShifts::contract_instance_retrieval_incoming_viewing_key_x,
119 ColumnAndShifts::contract_instance_retrieval_incoming_viewing_key_y,
120 ColumnAndShifts::contract_instance_retrieval_outgoing_viewing_key_x,
121 ColumnAndShifts::contract_instance_retrieval_outgoing_viewing_key_y,
122 ColumnAndShifts::contract_instance_retrieval_tagging_key_x,
123 ColumnAndShifts::contract_instance_retrieval_tagging_key_y
124 };
125 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> DST_COLUMNS = {
126 ColumnAndShifts::address_derivation_address,
127 ColumnAndShifts::address_derivation_salt,
128 ColumnAndShifts::address_derivation_deployer_addr,
129 ColumnAndShifts::address_derivation_class_id,
130 ColumnAndShifts::address_derivation_init_hash,
131 ColumnAndShifts::address_derivation_nullifier_key_x,
132 ColumnAndShifts::address_derivation_nullifier_key_y,
133 ColumnAndShifts::address_derivation_incoming_viewing_key_x,
134 ColumnAndShifts::address_derivation_incoming_viewing_key_y,
135 ColumnAndShifts::address_derivation_outgoing_viewing_key_x,
136 ColumnAndShifts::address_derivation_outgoing_viewing_key_y,
137 ColumnAndShifts::address_derivation_tagging_key_x,
138 ColumnAndShifts::address_derivation_tagging_key_y
139 };
140};
141
144template <typename FF_>
147
149
151 static constexpr std::string_view NAME = "LOOKUP_CONTRACT_INSTANCE_RETRIEVAL_UPDATE_CHECK";
152 static constexpr std::string_view RELATION_NAME = "contract_instance_retrieval";
153 static constexpr size_t LOOKUP_TUPLE_SIZE = 4;
154 static constexpr Column SRC_SELECTOR = Column::contract_instance_retrieval_should_check_for_update;
155 static constexpr Column DST_SELECTOR = Column::update_check_sel;
156 static constexpr Column COUNTS = Column::lookup_contract_instance_retrieval_update_check_counts;
157 static constexpr Column INVERSES = Column::lookup_contract_instance_retrieval_update_check_inv;
158 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> SRC_COLUMNS = {
159 ColumnAndShifts::contract_instance_retrieval_address,
160 ColumnAndShifts::contract_instance_retrieval_current_class_id,
161 ColumnAndShifts::contract_instance_retrieval_original_class_id,
162 ColumnAndShifts::contract_instance_retrieval_public_data_tree_root
163 };
164 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> DST_COLUMNS = {
165 ColumnAndShifts::update_check_address,
166 ColumnAndShifts::update_check_current_class_id,
167 ColumnAndShifts::update_check_original_class_id,
168 ColumnAndShifts::update_check_public_data_tree_root
169 };
170};
171
174template <typename FF_>
177
178} // namespace bb::avm2
This file contains the template for the generic lookup that can be specialized to enforce various loo...
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS