Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
lookups_retrieved_bytecodes_tree_check.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_RETRIEVED_BYTECODES_TREE_CHECK_LOW_LEAF_POSEIDON2";
18 static constexpr std::string_view RELATION_NAME = "retrieved_bytecodes_tree_check";
19 static constexpr size_t LOOKUP_TUPLE_SIZE = 5;
20 static constexpr Column SRC_SELECTOR = Column::retrieved_bytecodes_tree_check_sel;
21 static constexpr Column DST_SELECTOR = Column::poseidon2_hash_end;
22 static constexpr Column COUNTS = Column::lookup_retrieved_bytecodes_tree_check_low_leaf_poseidon2_counts;
23 static constexpr Column INVERSES = Column::lookup_retrieved_bytecodes_tree_check_low_leaf_poseidon2_inv;
24 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> SRC_COLUMNS = {
25 ColumnAndShifts::retrieved_bytecodes_tree_check_sel,
26 ColumnAndShifts::retrieved_bytecodes_tree_check_low_leaf_class_id,
27 ColumnAndShifts::retrieved_bytecodes_tree_check_low_leaf_next_class_id,
28 ColumnAndShifts::retrieved_bytecodes_tree_check_low_leaf_next_index,
29 ColumnAndShifts::retrieved_bytecodes_tree_check_low_leaf_hash
30 };
31 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> DST_COLUMNS = {
32 ColumnAndShifts::poseidon2_hash_start,
33 ColumnAndShifts::poseidon2_hash_input_0,
34 ColumnAndShifts::poseidon2_hash_input_1,
35 ColumnAndShifts::poseidon2_hash_input_2,
36 ColumnAndShifts::poseidon2_hash_output
37 };
38};
39
42template <typename FF_>
45
47
49 static constexpr std::string_view NAME = "LOOKUP_RETRIEVED_BYTECODES_TREE_CHECK_UPDATED_LOW_LEAF_POSEIDON2";
50 static constexpr std::string_view RELATION_NAME = "retrieved_bytecodes_tree_check";
51 static constexpr size_t LOOKUP_TUPLE_SIZE = 5;
52 static constexpr Column SRC_SELECTOR = Column::retrieved_bytecodes_tree_check_should_insert;
53 static constexpr Column DST_SELECTOR = Column::poseidon2_hash_end;
54 static constexpr Column COUNTS = Column::lookup_retrieved_bytecodes_tree_check_updated_low_leaf_poseidon2_counts;
55 static constexpr Column INVERSES = Column::lookup_retrieved_bytecodes_tree_check_updated_low_leaf_poseidon2_inv;
56 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> SRC_COLUMNS = {
57 ColumnAndShifts::retrieved_bytecodes_tree_check_sel,
58 ColumnAndShifts::retrieved_bytecodes_tree_check_low_leaf_class_id,
59 ColumnAndShifts::retrieved_bytecodes_tree_check_updated_low_leaf_next_class_id,
60 ColumnAndShifts::retrieved_bytecodes_tree_check_updated_low_leaf_next_index,
61 ColumnAndShifts::retrieved_bytecodes_tree_check_updated_low_leaf_hash
62 };
63 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> DST_COLUMNS = {
64 ColumnAndShifts::poseidon2_hash_start,
65 ColumnAndShifts::poseidon2_hash_input_0,
66 ColumnAndShifts::poseidon2_hash_input_1,
67 ColumnAndShifts::poseidon2_hash_input_2,
68 ColumnAndShifts::poseidon2_hash_output
69 };
70};
71
74template <typename FF_>
77
79
81 static constexpr std::string_view NAME = "LOOKUP_RETRIEVED_BYTECODES_TREE_CHECK_LOW_LEAF_MERKLE_CHECK";
82 static constexpr std::string_view RELATION_NAME = "retrieved_bytecodes_tree_check";
83 static constexpr size_t LOOKUP_TUPLE_SIZE = 7;
84 static constexpr Column SRC_SELECTOR = Column::retrieved_bytecodes_tree_check_sel;
85 static constexpr Column DST_SELECTOR = Column::merkle_check_start;
86 static constexpr Column COUNTS = Column::lookup_retrieved_bytecodes_tree_check_low_leaf_merkle_check_counts;
87 static constexpr Column INVERSES = Column::lookup_retrieved_bytecodes_tree_check_low_leaf_merkle_check_inv;
88 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> SRC_COLUMNS = {
89 ColumnAndShifts::retrieved_bytecodes_tree_check_should_insert,
90 ColumnAndShifts::retrieved_bytecodes_tree_check_low_leaf_hash,
91 ColumnAndShifts::retrieved_bytecodes_tree_check_updated_low_leaf_hash,
92 ColumnAndShifts::retrieved_bytecodes_tree_check_low_leaf_index,
93 ColumnAndShifts::retrieved_bytecodes_tree_check_tree_height,
94 ColumnAndShifts::retrieved_bytecodes_tree_check_root,
95 ColumnAndShifts::retrieved_bytecodes_tree_check_intermediate_root
96 };
97 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> DST_COLUMNS = {
98 ColumnAndShifts::merkle_check_write, ColumnAndShifts::merkle_check_read_node,
99 ColumnAndShifts::merkle_check_write_node, ColumnAndShifts::merkle_check_index,
100 ColumnAndShifts::merkle_check_path_len, ColumnAndShifts::merkle_check_read_root,
101 ColumnAndShifts::merkle_check_write_root
102 };
103};
104
107template <typename FF_>
110
112
114 static constexpr std::string_view NAME = "LOOKUP_RETRIEVED_BYTECODES_TREE_CHECK_LOW_LEAF_CLASS_ID_VALIDATION";
115 static constexpr std::string_view RELATION_NAME = "retrieved_bytecodes_tree_check";
116 static constexpr size_t LOOKUP_TUPLE_SIZE = 3;
117 static constexpr Column SRC_SELECTOR = Column::retrieved_bytecodes_tree_check_leaf_not_exists;
118 static constexpr Column DST_SELECTOR = Column::ff_gt_sel_gt;
119 static constexpr Column COUNTS = Column::lookup_retrieved_bytecodes_tree_check_low_leaf_class_id_validation_counts;
120 static constexpr Column INVERSES = Column::lookup_retrieved_bytecodes_tree_check_low_leaf_class_id_validation_inv;
121 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> SRC_COLUMNS = {
122 ColumnAndShifts::retrieved_bytecodes_tree_check_class_id,
123 ColumnAndShifts::retrieved_bytecodes_tree_check_low_leaf_class_id,
124 ColumnAndShifts::retrieved_bytecodes_tree_check_sel
125 };
126 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> DST_COLUMNS = { ColumnAndShifts::ff_gt_a,
127 ColumnAndShifts::ff_gt_b,
128 ColumnAndShifts::ff_gt_result };
129};
130
133template <typename FF_>
136
138
140 static constexpr std::string_view NAME = "LOOKUP_RETRIEVED_BYTECODES_TREE_CHECK_LOW_LEAF_NEXT_CLASS_ID_VALIDATION";
141 static constexpr std::string_view RELATION_NAME = "retrieved_bytecodes_tree_check";
142 static constexpr size_t LOOKUP_TUPLE_SIZE = 3;
143 static constexpr Column SRC_SELECTOR = Column::retrieved_bytecodes_tree_check_next_class_id_is_nonzero;
144 static constexpr Column DST_SELECTOR = Column::ff_gt_sel_gt;
145 static constexpr Column COUNTS =
146 Column::lookup_retrieved_bytecodes_tree_check_low_leaf_next_class_id_validation_counts;
147 static constexpr Column INVERSES =
148 Column::lookup_retrieved_bytecodes_tree_check_low_leaf_next_class_id_validation_inv;
149 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> SRC_COLUMNS = {
150 ColumnAndShifts::retrieved_bytecodes_tree_check_low_leaf_next_class_id,
151 ColumnAndShifts::retrieved_bytecodes_tree_check_class_id,
152 ColumnAndShifts::retrieved_bytecodes_tree_check_sel
153 };
154 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> DST_COLUMNS = { ColumnAndShifts::ff_gt_a,
155 ColumnAndShifts::ff_gt_b,
156 ColumnAndShifts::ff_gt_result };
157};
158
161template <typename FF_>
164
166
168 static constexpr std::string_view NAME = "LOOKUP_RETRIEVED_BYTECODES_TREE_CHECK_NEW_LEAF_POSEIDON2";
169 static constexpr std::string_view RELATION_NAME = "retrieved_bytecodes_tree_check";
170 static constexpr size_t LOOKUP_TUPLE_SIZE = 5;
171 static constexpr Column SRC_SELECTOR = Column::retrieved_bytecodes_tree_check_should_insert;
172 static constexpr Column DST_SELECTOR = Column::poseidon2_hash_end;
173 static constexpr Column COUNTS = Column::lookup_retrieved_bytecodes_tree_check_new_leaf_poseidon2_counts;
174 static constexpr Column INVERSES = Column::lookup_retrieved_bytecodes_tree_check_new_leaf_poseidon2_inv;
175 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> SRC_COLUMNS = {
176 ColumnAndShifts::retrieved_bytecodes_tree_check_sel,
177 ColumnAndShifts::retrieved_bytecodes_tree_check_class_id,
178 ColumnAndShifts::retrieved_bytecodes_tree_check_low_leaf_next_class_id,
179 ColumnAndShifts::retrieved_bytecodes_tree_check_low_leaf_next_index,
180 ColumnAndShifts::retrieved_bytecodes_tree_check_new_leaf_hash
181 };
182 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> DST_COLUMNS = {
183 ColumnAndShifts::poseidon2_hash_start,
184 ColumnAndShifts::poseidon2_hash_input_0,
185 ColumnAndShifts::poseidon2_hash_input_1,
186 ColumnAndShifts::poseidon2_hash_input_2,
187 ColumnAndShifts::poseidon2_hash_output
188 };
189};
190
193template <typename FF_>
196
198
200 static constexpr std::string_view NAME = "LOOKUP_RETRIEVED_BYTECODES_TREE_CHECK_NEW_LEAF_MERKLE_CHECK";
201 static constexpr std::string_view RELATION_NAME = "retrieved_bytecodes_tree_check";
202 static constexpr size_t LOOKUP_TUPLE_SIZE = 7;
203 static constexpr Column SRC_SELECTOR = Column::retrieved_bytecodes_tree_check_should_insert;
204 static constexpr Column DST_SELECTOR = Column::merkle_check_start;
205 static constexpr Column COUNTS = Column::lookup_retrieved_bytecodes_tree_check_new_leaf_merkle_check_counts;
206 static constexpr Column INVERSES = Column::lookup_retrieved_bytecodes_tree_check_new_leaf_merkle_check_inv;
207 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> SRC_COLUMNS = {
208 ColumnAndShifts::retrieved_bytecodes_tree_check_sel,
209 ColumnAndShifts::precomputed_zero,
210 ColumnAndShifts::retrieved_bytecodes_tree_check_new_leaf_hash,
211 ColumnAndShifts::retrieved_bytecodes_tree_check_tree_size_before_write,
212 ColumnAndShifts::retrieved_bytecodes_tree_check_tree_height,
213 ColumnAndShifts::retrieved_bytecodes_tree_check_intermediate_root,
214 ColumnAndShifts::retrieved_bytecodes_tree_check_write_root
215 };
216 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> DST_COLUMNS = {
217 ColumnAndShifts::merkle_check_write, ColumnAndShifts::merkle_check_read_node,
218 ColumnAndShifts::merkle_check_write_node, ColumnAndShifts::merkle_check_index,
219 ColumnAndShifts::merkle_check_path_len, ColumnAndShifts::merkle_check_read_root,
220 ColumnAndShifts::merkle_check_write_root
221 };
222};
223
226template <typename FF_>
229
230} // namespace bb::avm2
This file contains the template for the generic lookup that can be specialized to enforce various loo...