31 const auto constants_AVM_SUBTRACE_ID_KECCAKF1600 =
FF(2048);
32 const auto constants_AVM_SUBTRACE_ID_ECC =
FF(4096);
33 const auto constants_AVM_SUBTRACE_ID_TO_RADIX =
FF(8192);
34 const auto constants_AVM_DYN_GAS_ID_CALLDATACOPY =
FF(1);
35 const auto constants_AVM_DYN_GAS_ID_RETURNDATACOPY =
FF(2);
36 const auto constants_AVM_DYN_GAS_ID_TORADIX =
FF(4);
37 const auto constants_AVM_DYN_GAS_ID_BITWISE =
FF(8);
38 const auto constants_AVM_DYN_GAS_ID_EMITPUBLICLOG =
FF(16);
39 const auto constants_AVM_DYN_GAS_ID_SSTORE =
FF(32);
40 const auto constants_AVM_EXEC_OP_ID_GETENVVAR =
FF(1);
41 const auto constants_AVM_EXEC_OP_ID_MOV =
FF(2);
42 const auto constants_AVM_EXEC_OP_ID_JUMP =
FF(4);
43 const auto constants_AVM_EXEC_OP_ID_JUMPI =
FF(8);
44 const auto constants_AVM_EXEC_OP_ID_CALL =
FF(16);
45 const auto constants_AVM_EXEC_OP_ID_STATICCALL =
FF(32);
46 const auto constants_AVM_EXEC_OP_ID_INTERNALCALL =
FF(64);
47 const auto constants_AVM_EXEC_OP_ID_INTERNALRETURN =
FF(128);
48 const auto constants_AVM_EXEC_OP_ID_RETURN =
FF(256);
49 const auto constants_AVM_EXEC_OP_ID_REVERT =
FF(512);
50 const auto constants_AVM_EXEC_OP_ID_SUCCESSCOPY =
FF(1024);
51 const auto constants_AVM_EXEC_OP_ID_RETURNDATASIZE =
FF(2048);
52 const auto constants_AVM_EXEC_OP_ID_DEBUGLOG =
FF(4096);
53 const auto constants_AVM_EXEC_OP_ID_SLOAD =
FF(8192);
54 const auto constants_AVM_EXEC_OP_ID_SSTORE =
FF(16384);
55 const auto constants_AVM_EXEC_OP_ID_NOTEHASH_EXISTS =
FF(32768);
56 const auto constants_AVM_EXEC_OP_ID_EMIT_NOTEHASH =
FF(65536);
57 const auto constants_AVM_EXEC_OP_ID_L1_TO_L2_MESSAGE_EXISTS =
FF(131072);
58 const auto constants_AVM_EXEC_OP_ID_NULLIFIER_EXISTS =
FF(262144);
59 const auto constants_AVM_EXEC_OP_ID_EMIT_NULLIFIER =
FF(524288);
60 const auto constants_AVM_EXEC_OP_ID_SENDL2TOL1MSG =
FF(1048576);
61 const auto constants_AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_HEIGHT =
FF(6);
62 const auto constants_DOM_SEP__PUBLIC_LEAF_SLOT =
FF(1247650290);
63 const auto execution_SEL_SHOULD_RESOLVE_ADDRESS = in.get(C::execution_sel_instruction_fetching_success);
66 using View =
typename std::tuple_element_t<0, ContainerOverSubrelations>::View;
67 auto tmp =
static_cast<View
>(in.get(C::execution_sel)) * (
FF(1) -
static_cast<View
>(in.get(C::execution_sel)));
71 using View =
typename std::tuple_element_t<1, ContainerOverSubrelations>::View;
72 auto tmp = (
static_cast<View
>(in.get(C::execution_enqueued_call_start_shift)) -
73 (
static_cast<View
>(in.get(C::precomputed_first_row)) +
74 static_cast<View
>(in.get(C::execution_enqueued_call_end))) *
75 static_cast<View
>(in.get(C::execution_sel_shift)));
79 using View =
typename std::tuple_element_t<2, ContainerOverSubrelations>::View;
80 auto tmp = (
static_cast<View
>(in.get(C::execution_enqueued_call_end)) -
81 static_cast<View
>(in.get(C::execution_sel_exit_call)) *
82 (
FF(1) -
static_cast<View
>(in.get(C::execution_has_parent_ctx))));
86 using View =
typename std::tuple_element_t<3, ContainerOverSubrelations>::View;
87 auto tmp = (
static_cast<View
>(in.get(C::execution_sel_first_row_in_context_shift)) -
88 (
static_cast<View
>(in.get(C::execution_sel_enter_call)) +
89 static_cast<View
>(in.get(C::execution_enqueued_call_start_shift))));
93 using View =
typename std::tuple_element_t<4, ContainerOverSubrelations>::View;
94 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel))) *
95 (
FF(1) -
static_cast<View
>(in.get(C::precomputed_first_row))) *
96 static_cast<View
>(in.get(C::execution_sel_shift));
100 using View =
typename std::tuple_element_t<5, ContainerOverSubrelations>::View;
101 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel))) *
static_cast<View
>(in.get(C::execution_clk));
105 using View =
typename std::tuple_element_t<6, ContainerOverSubrelations>::View;
107 static_cast<View
>(in.get(C::execution_sel_shift)) *
108 ((
static_cast<View
>(in.get(C::execution_clk)) +
FF(1)) -
static_cast<View
>(in.get(C::execution_clk_shift)));
112 using View =
typename std::tuple_element_t<7, ContainerOverSubrelations>::View;
113 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_first_row_in_context))) *
114 static_cast<View
>(in.get(C::execution_sel_bytecode_retrieval_failure));
118 using View =
typename std::tuple_element_t<8, ContainerOverSubrelations>::View;
119 auto tmp = (
static_cast<View
>(in.get(C::execution_sel_bytecode_retrieval_success)) -
120 static_cast<View
>(in.get(C::execution_sel)) *
121 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_bytecode_retrieval_failure))));
125 using View =
typename std::tuple_element_t<9, ContainerOverSubrelations>::View;
126 auto tmp = (
static_cast<View
>(in.get(C::execution_sel_instruction_fetching_success)) -
127 static_cast<View
>(in.get(C::execution_sel_bytecode_retrieval_success)) *
128 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_instruction_fetching_failure))));
132 using View =
typename std::tuple_element_t<10, ContainerOverSubrelations>::View;
133 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_bytecode_retrieval_success))) *
134 static_cast<View
>(in.get(C::execution_sel_instruction_fetching_failure));
138 using View =
typename std::tuple_element_t<11, ContainerOverSubrelations>::View;
139 auto tmp = (
static_cast<View
>(in.get(C::execution_sel_should_read_registers)) -
140 CView(execution_SEL_SHOULD_RESOLVE_ADDRESS) *
141 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_addressing_error))));
145 using View =
typename std::tuple_element_t<12, ContainerOverSubrelations>::View;
146 auto tmp = (
static_cast<View
>(in.get(C::execution_sel_should_check_gas)) -
147 static_cast<View
>(in.get(C::execution_sel_should_read_registers)) *
148 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_register_read_error))));
152 using View =
typename std::tuple_element_t<13, ContainerOverSubrelations>::View;
153 auto tmp =
static_cast<View
>(in.get(C::execution_sel_gas_calldata_copy)) *
154 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_gas_calldata_copy)));
158 using View =
typename std::tuple_element_t<14, ContainerOverSubrelations>::View;
159 auto tmp =
static_cast<View
>(in.get(C::execution_sel_gas_returndata_copy)) *
160 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_gas_returndata_copy)));
164 using View =
typename std::tuple_element_t<15, ContainerOverSubrelations>::View;
165 auto tmp =
static_cast<View
>(in.get(C::execution_sel_gas_to_radix)) *
166 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_gas_to_radix)));
170 using View =
typename std::tuple_element_t<16, ContainerOverSubrelations>::View;
171 auto tmp =
static_cast<View
>(in.get(C::execution_sel_gas_bitwise)) *
172 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_gas_bitwise)));
176 using View =
typename std::tuple_element_t<17, ContainerOverSubrelations>::View;
177 auto tmp =
static_cast<View
>(in.get(C::execution_sel_gas_emit_public_log)) *
178 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_gas_emit_public_log)));
182 using View =
typename std::tuple_element_t<18, ContainerOverSubrelations>::View;
183 auto tmp =
static_cast<View
>(in.get(C::execution_sel_gas_sstore)) *
184 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_gas_sstore)));
188 using View =
typename std::tuple_element_t<19, ContainerOverSubrelations>::View;
190 ((
static_cast<View
>(in.get(C::execution_sel_gas_calldata_copy)) *
191 CView(constants_AVM_DYN_GAS_ID_CALLDATACOPY) +
192 static_cast<View
>(in.get(C::execution_sel_gas_returndata_copy)) *
193 CView(constants_AVM_DYN_GAS_ID_RETURNDATACOPY) +
194 static_cast<View
>(in.get(C::execution_sel_gas_to_radix)) *
CView(constants_AVM_DYN_GAS_ID_TORADIX) +
195 static_cast<View
>(in.get(C::execution_sel_gas_bitwise)) *
CView(constants_AVM_DYN_GAS_ID_BITWISE) +
196 static_cast<View
>(in.get(C::execution_sel_gas_emit_public_log)) *
197 CView(constants_AVM_DYN_GAS_ID_EMITPUBLICLOG) +
198 static_cast<View
>(in.get(C::execution_sel_gas_sstore)) *
CView(constants_AVM_DYN_GAS_ID_SSTORE)) -
199 static_cast<View
>(in.get(C::execution_sel_should_check_gas)) *
200 static_cast<View
>(in.get(C::execution_dyn_gas_id)));
204 using View =
typename std::tuple_element_t<20, ContainerOverSubrelations>::View;
205 auto tmp =
static_cast<View
>(in.get(C::execution_sel_gas_to_radix)) *
206 (
static_cast<View
>(in.get(C::execution_two_five_six)) -
FF(256));
210 using View =
typename std::tuple_element_t<21, ContainerOverSubrelations>::View;
211 auto tmp = (
static_cast<View
>(in.get(C::execution_sel_lookup_num_p_limbs)) -
212 static_cast<View
>(in.get(C::execution_sel_gas_to_radix)) *
213 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_radix_gt_256))));
217 using View =
typename std::tuple_element_t<22, ContainerOverSubrelations>::View;
218 auto tmp =
static_cast<View
>(in.get(C::execution_sel_gas_to_radix)) *
219 static_cast<View
>(in.get(C::execution_sel_radix_gt_256)) *
220 (
static_cast<View
>(in.get(C::execution_num_p_limbs)) -
FF(32));
224 using View =
typename std::tuple_element_t<23, ContainerOverSubrelations>::View;
225 auto tmp =
static_cast<View
>(in.get(C::execution_sel_gas_to_radix)) *
226 (((
static_cast<View
>(in.get(C::execution_register_2_)) -
227 static_cast<View
>(in.get(C::execution_num_p_limbs))) *
228 static_cast<View
>(in.get(C::execution_sel_use_num_limbs)) +
229 static_cast<View
>(in.get(C::execution_num_p_limbs))) -
230 static_cast<View
>(in.get(C::execution_dynamic_l2_gas_factor)));
234 using View =
typename std::tuple_element_t<24, ContainerOverSubrelations>::View;
235 auto tmp =
static_cast<View
>(in.get(C::execution_sel_gas_sstore)) *
236 (
static_cast<View
>(in.get(C::execution_written_slots_tree_height)) -
237 CView(constants_AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_HEIGHT));
241 using View =
typename std::tuple_element_t<25, ContainerOverSubrelations>::View;
242 auto tmp =
static_cast<View
>(in.get(C::execution_sel_gas_sstore)) *
243 (
static_cast<View
>(in.get(C::execution_written_slots_tree_siloing_separator)) -
244 CView(constants_DOM_SEP__PUBLIC_LEAF_SLOT));
248 using View =
typename std::tuple_element_t<26, ContainerOverSubrelations>::View;
249 auto tmp = (
static_cast<View
>(in.get(C::execution_sel_gas_emit_public_log)) +
250 static_cast<View
>(in.get(C::execution_sel_gas_calldata_copy)) +
251 static_cast<View
>(in.get(C::execution_sel_gas_returndata_copy))) *
252 (
static_cast<View
>(in.get(C::execution_register_0_)) -
253 static_cast<View
>(in.get(C::execution_dynamic_l2_gas_factor)));
257 using View =
typename std::tuple_element_t<27, ContainerOverSubrelations>::View;
258 auto tmp =
static_cast<View
>(in.get(C::execution_sel_gas_emit_public_log)) *
259 (
static_cast<View
>(in.get(C::execution_register_0_)) -
260 static_cast<View
>(in.get(C::execution_dynamic_da_gas_factor)));
264 using View =
typename std::tuple_element_t<28, ContainerOverSubrelations>::View;
265 auto tmp = ((
FF(1) -
static_cast<View
>(in.get(C::execution_sel_gas_sstore))) -
266 static_cast<View
>(in.get(C::execution_sel_gas_emit_public_log))) *
267 static_cast<View
>(in.get(C::execution_dynamic_da_gas_factor));
271 using View =
typename std::tuple_element_t<29, ContainerOverSubrelations>::View;
272 auto tmp = (((((
FF(1) -
static_cast<View
>(in.get(C::execution_sel_gas_bitwise))) -
273 static_cast<View
>(in.get(C::execution_sel_gas_to_radix))) -
274 static_cast<View
>(in.get(C::execution_sel_gas_emit_public_log))) -
275 static_cast<View
>(in.get(C::execution_sel_gas_calldata_copy))) -
276 static_cast<View
>(in.get(C::execution_sel_gas_returndata_copy))) *
277 static_cast<View
>(in.get(C::execution_dynamic_l2_gas_factor));
281 using View =
typename std::tuple_element_t<30, ContainerOverSubrelations>::View;
282 auto tmp = (
static_cast<View
>(in.get(C::execution_sel_should_execute_opcode)) -
283 static_cast<View
>(in.get(C::execution_sel_should_check_gas)) *
284 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_out_of_gas))));
288 using View =
typename std::tuple_element_t<31, ContainerOverSubrelations>::View;
289 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_execution)) *
290 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_execution)));
294 using View =
typename std::tuple_element_t<32, ContainerOverSubrelations>::View;
295 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_alu)) *
296 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_alu)));
300 using View =
typename std::tuple_element_t<33, ContainerOverSubrelations>::View;
301 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_bitwise)) *
302 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_bitwise)));
306 using View =
typename std::tuple_element_t<34, ContainerOverSubrelations>::View;
307 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_cast)) *
308 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_cast)));
312 using View =
typename std::tuple_element_t<35, ContainerOverSubrelations>::View;
313 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_calldata_copy)) *
314 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_calldata_copy)));
318 using View =
typename std::tuple_element_t<36, ContainerOverSubrelations>::View;
319 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_returndata_copy)) *
320 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_returndata_copy)));
324 using View =
typename std::tuple_element_t<37, ContainerOverSubrelations>::View;
325 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_set)) *
326 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_set)));
330 using View =
typename std::tuple_element_t<38, ContainerOverSubrelations>::View;
331 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_get_contract_instance)) *
332 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_get_contract_instance)));
336 using View =
typename std::tuple_element_t<39, ContainerOverSubrelations>::View;
337 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_emit_public_log)) *
338 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_emit_public_log)));
342 using View =
typename std::tuple_element_t<40, ContainerOverSubrelations>::View;
343 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_poseidon2_perm)) *
344 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_poseidon2_perm)));
348 using View =
typename std::tuple_element_t<41, ContainerOverSubrelations>::View;
349 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_sha256_compression)) *
350 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_sha256_compression)));
354 using View =
typename std::tuple_element_t<42, ContainerOverSubrelations>::View;
355 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_keccakf1600)) *
356 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_keccakf1600)));
360 using View =
typename std::tuple_element_t<43, ContainerOverSubrelations>::View;
361 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_ecc_add)) *
362 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_ecc_add)));
366 using View =
typename std::tuple_element_t<44, ContainerOverSubrelations>::View;
367 auto tmp =
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_to_radix)) *
368 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_to_radix)));
372 using View =
typename std::tuple_element_t<45, ContainerOverSubrelations>::View;
374 ((
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_execution)) *
375 CView(constants_AVM_SUBTRACE_ID_EXECUTION) +
376 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_alu)) *
CView(constants_AVM_SUBTRACE_ID_ALU) +
377 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_bitwise)) *
378 CView(constants_AVM_SUBTRACE_ID_BITWISE) +
379 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_cast)) *
CView(constants_AVM_SUBTRACE_ID_CAST) +
380 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_calldata_copy)) *
381 CView(constants_AVM_SUBTRACE_ID_CALLDATA_COPY) +
382 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_returndata_copy)) *
383 CView(constants_AVM_SUBTRACE_ID_RETURNDATA_COPY) +
384 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_set)) *
CView(constants_AVM_SUBTRACE_ID_SET) +
385 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_get_contract_instance)) *
386 CView(constants_AVM_SUBTRACE_ID_GETCONTRACTINSTANCE) +
387 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_emit_public_log)) *
388 CView(constants_AVM_SUBTRACE_ID_EMITPUBLICLOG) +
389 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_poseidon2_perm)) *
390 CView(constants_AVM_SUBTRACE_ID_POSEIDON2_PERM) +
391 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_sha256_compression)) *
392 CView(constants_AVM_SUBTRACE_ID_SHA256_COMPRESSION) +
393 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_keccakf1600)) *
394 CView(constants_AVM_SUBTRACE_ID_KECCAKF1600) +
395 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_ecc_add)) *
CView(constants_AVM_SUBTRACE_ID_ECC) +
396 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_to_radix)) *
397 CView(constants_AVM_SUBTRACE_ID_TO_RADIX)) -
398 static_cast<View
>(in.get(C::execution_sel_should_execute_opcode)) *
399 static_cast<View
>(in.get(C::execution_subtrace_id)));
403 using View =
typename std::tuple_element_t<46, ContainerOverSubrelations>::View;
404 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_get_env_var)) *
405 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_get_env_var)));
409 using View =
typename std::tuple_element_t<47, ContainerOverSubrelations>::View;
410 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_mov)) *
411 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_mov)));
415 using View =
typename std::tuple_element_t<48, ContainerOverSubrelations>::View;
416 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_jump)) *
417 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_jump)));
421 using View =
typename std::tuple_element_t<49, ContainerOverSubrelations>::View;
422 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_jumpi)) *
423 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_jumpi)));
427 using View =
typename std::tuple_element_t<50, ContainerOverSubrelations>::View;
428 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_call)) *
429 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_call)));
433 using View =
typename std::tuple_element_t<51, ContainerOverSubrelations>::View;
434 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_static_call)) *
435 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_static_call)));
439 using View =
typename std::tuple_element_t<52, ContainerOverSubrelations>::View;
440 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_internal_call)) *
441 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_internal_call)));
445 using View =
typename std::tuple_element_t<53, ContainerOverSubrelations>::View;
446 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_internal_return)) *
447 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_internal_return)));
451 using View =
typename std::tuple_element_t<54, ContainerOverSubrelations>::View;
452 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_return)) *
453 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_return)));
457 using View =
typename std::tuple_element_t<55, ContainerOverSubrelations>::View;
458 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_revert)) *
459 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_revert)));
463 using View =
typename std::tuple_element_t<56, ContainerOverSubrelations>::View;
464 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_success_copy)) *
465 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_success_copy)));
469 using View =
typename std::tuple_element_t<57, ContainerOverSubrelations>::View;
470 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_returndata_size)) *
471 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_returndata_size)));
475 using View =
typename std::tuple_element_t<58, ContainerOverSubrelations>::View;
476 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_debug_log)) *
477 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_debug_log)));
481 using View =
typename std::tuple_element_t<59, ContainerOverSubrelations>::View;
482 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_sload)) *
483 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_sload)));
487 using View =
typename std::tuple_element_t<60, ContainerOverSubrelations>::View;
488 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_sstore)) *
489 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_sstore)));
493 using View =
typename std::tuple_element_t<61, ContainerOverSubrelations>::View;
494 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_notehash_exists)) *
495 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_notehash_exists)));
499 using View =
typename std::tuple_element_t<62, ContainerOverSubrelations>::View;
500 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_emit_notehash)) *
501 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_emit_notehash)));
505 using View =
typename std::tuple_element_t<63, ContainerOverSubrelations>::View;
506 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_l1_to_l2_message_exists)) *
507 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_l1_to_l2_message_exists)));
511 using View =
typename std::tuple_element_t<64, ContainerOverSubrelations>::View;
512 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_nullifier_exists)) *
513 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_nullifier_exists)));
517 using View =
typename std::tuple_element_t<65, ContainerOverSubrelations>::View;
518 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_emit_nullifier)) *
519 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_emit_nullifier)));
523 using View =
typename std::tuple_element_t<66, ContainerOverSubrelations>::View;
524 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_send_l2_to_l1_msg)) *
525 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_send_l2_to_l1_msg)));
529 using View =
typename std::tuple_element_t<67, ContainerOverSubrelations>::View;
531 ((
static_cast<View
>(in.get(C::execution_sel_execute_get_env_var)) *
532 CView(constants_AVM_EXEC_OP_ID_GETENVVAR) +
533 static_cast<View
>(in.get(C::execution_sel_execute_mov)) *
CView(constants_AVM_EXEC_OP_ID_MOV) +
534 static_cast<View
>(in.get(C::execution_sel_execute_jump)) *
CView(constants_AVM_EXEC_OP_ID_JUMP) +
535 static_cast<View
>(in.get(C::execution_sel_execute_jumpi)) *
CView(constants_AVM_EXEC_OP_ID_JUMPI) +
536 static_cast<View
>(in.get(C::execution_sel_execute_call)) *
CView(constants_AVM_EXEC_OP_ID_CALL) +
537 static_cast<View
>(in.get(C::execution_sel_execute_static_call)) *
538 CView(constants_AVM_EXEC_OP_ID_STATICCALL) +
539 static_cast<View
>(in.get(C::execution_sel_execute_internal_call)) *
540 CView(constants_AVM_EXEC_OP_ID_INTERNALCALL) +
541 static_cast<View
>(in.get(C::execution_sel_execute_internal_return)) *
542 CView(constants_AVM_EXEC_OP_ID_INTERNALRETURN) +
543 static_cast<View
>(in.get(C::execution_sel_execute_return)) *
CView(constants_AVM_EXEC_OP_ID_RETURN) +
544 static_cast<View
>(in.get(C::execution_sel_execute_revert)) *
CView(constants_AVM_EXEC_OP_ID_REVERT) +
545 static_cast<View
>(in.get(C::execution_sel_execute_success_copy)) *
546 CView(constants_AVM_EXEC_OP_ID_SUCCESSCOPY) +
547 static_cast<View
>(in.get(C::execution_sel_execute_returndata_size)) *
548 CView(constants_AVM_EXEC_OP_ID_RETURNDATASIZE) +
549 static_cast<View
>(in.get(C::execution_sel_execute_debug_log)) *
CView(constants_AVM_EXEC_OP_ID_DEBUGLOG) +
550 static_cast<View
>(in.get(C::execution_sel_execute_sload)) *
CView(constants_AVM_EXEC_OP_ID_SLOAD) +
551 static_cast<View
>(in.get(C::execution_sel_execute_sstore)) *
CView(constants_AVM_EXEC_OP_ID_SSTORE) +
552 static_cast<View
>(in.get(C::execution_sel_execute_notehash_exists)) *
553 CView(constants_AVM_EXEC_OP_ID_NOTEHASH_EXISTS) +
554 static_cast<View
>(in.get(C::execution_sel_execute_emit_notehash)) *
555 CView(constants_AVM_EXEC_OP_ID_EMIT_NOTEHASH) +
556 static_cast<View
>(in.get(C::execution_sel_execute_l1_to_l2_message_exists)) *
557 CView(constants_AVM_EXEC_OP_ID_L1_TO_L2_MESSAGE_EXISTS) +
558 static_cast<View
>(in.get(C::execution_sel_execute_nullifier_exists)) *
559 CView(constants_AVM_EXEC_OP_ID_NULLIFIER_EXISTS) +
560 static_cast<View
>(in.get(C::execution_sel_execute_emit_nullifier)) *
561 CView(constants_AVM_EXEC_OP_ID_EMIT_NULLIFIER) +
562 static_cast<View
>(in.get(C::execution_sel_execute_send_l2_to_l1_msg)) *
563 CView(constants_AVM_EXEC_OP_ID_SENDL2TOL1MSG)) -
564 static_cast<View
>(in.get(C::execution_sel_exec_dispatch_execution)) *
565 static_cast<View
>(in.get(C::execution_subtrace_operation_id)));
569 using View =
typename std::tuple_element_t<68, ContainerOverSubrelations>::View;
570 auto tmp =
static_cast<View
>(in.get(C::execution_sel_shift)) *
571 (
static_cast<View
>(in.get(C::execution_sel_execute_internal_call)) +
572 static_cast<View
>(in.get(C::execution_sel_execute_jump))) *
573 (
static_cast<View
>(in.get(C::execution_pc_shift)) -
static_cast<View
>(in.get(C::execution_rop_0_)));
577 using View =
typename std::tuple_element_t<69, ContainerOverSubrelations>::View;
579 static_cast<View
>(in.get(C::execution_sel_shift)) *
580 static_cast<View
>(in.get(C::execution_sel_execute_jumpi)) *
581 ((
static_cast<View
>(in.get(C::execution_register_0_)) *
582 (
static_cast<View
>(in.get(C::execution_rop_1_)) -
static_cast<View
>(in.get(C::execution_next_pc))) +
583 static_cast<View
>(in.get(C::execution_next_pc))) -
584 static_cast<View
>(in.get(C::execution_pc_shift)));
588 using View =
typename std::tuple_element_t<70, ContainerOverSubrelations>::View;
590 static_cast<View
>(in.get(C::execution_sel_execute_mov)) *
591 (
static_cast<View
>(in.get(C::execution_register_0_)) -
static_cast<View
>(in.get(C::execution_register_1_)));
595 using View =
typename std::tuple_element_t<71, ContainerOverSubrelations>::View;
596 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_mov)) *
597 (
static_cast<View
>(in.get(C::execution_mem_tag_reg_0_)) -
598 static_cast<View
>(in.get(C::execution_mem_tag_reg_1_)));
602 using View =
typename std::tuple_element_t<72, ContainerOverSubrelations>::View;
603 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_success_copy)) *
604 (
static_cast<View
>(in.get(C::execution_register_0_)) -
605 static_cast<View
>(in.get(C::execution_last_child_success)));
609 using View =
typename std::tuple_element_t<73, ContainerOverSubrelations>::View;
610 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_success_copy)) *
611 (
static_cast<View
>(in.get(C::execution_mem_tag_reg_0_)) -
CView(constants_MEM_TAG_U1));
615 using View =
typename std::tuple_element_t<74, ContainerOverSubrelations>::View;
616 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_returndata_size)) *
617 (
static_cast<View
>(in.get(C::execution_register_0_)) -
618 static_cast<View
>(in.get(C::execution_last_child_returndata_size)));
622 using View =
typename std::tuple_element_t<75, ContainerOverSubrelations>::View;
623 auto tmp =
static_cast<View
>(in.get(C::execution_sel_execute_returndata_size)) *
624 (
static_cast<View
>(in.get(C::execution_mem_tag_reg_0_)) -
CView(constants_MEM_TAG_U32));
628 using View =
typename std::tuple_element_t<76, ContainerOverSubrelations>::View;
629 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_sstore))) *
630 (
static_cast<View
>(in.get(C::execution_prev_public_data_tree_root)) -
631 static_cast<View
>(in.get(C::execution_public_data_tree_root)));
635 using View =
typename std::tuple_element_t<77, ContainerOverSubrelations>::View;
636 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_sstore))) *
637 (
static_cast<View
>(in.get(C::execution_prev_public_data_tree_size)) -
638 static_cast<View
>(in.get(C::execution_public_data_tree_size)));
642 using View =
typename std::tuple_element_t<78, ContainerOverSubrelations>::View;
643 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_sstore))) *
644 (
static_cast<View
>(in.get(C::execution_prev_written_public_data_slots_tree_root)) -
645 static_cast<View
>(in.get(C::execution_written_public_data_slots_tree_root)));
649 using View =
typename std::tuple_element_t<79, ContainerOverSubrelations>::View;
650 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_sstore))) *
651 (
static_cast<View
>(in.get(C::execution_prev_written_public_data_slots_tree_size)) -
652 static_cast<View
>(in.get(C::execution_written_public_data_slots_tree_size)));
656 using View =
typename std::tuple_element_t<80, ContainerOverSubrelations>::View;
657 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_emit_notehash))) *
658 (
static_cast<View
>(in.get(C::execution_prev_note_hash_tree_root)) -
659 static_cast<View
>(in.get(C::execution_note_hash_tree_root)));
663 using View =
typename std::tuple_element_t<81, ContainerOverSubrelations>::View;
664 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_emit_notehash))) *
665 (
static_cast<View
>(in.get(C::execution_prev_note_hash_tree_size)) -
666 static_cast<View
>(in.get(C::execution_note_hash_tree_size)));
670 using View =
typename std::tuple_element_t<82, ContainerOverSubrelations>::View;
671 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_emit_notehash))) *
672 (
static_cast<View
>(in.get(C::execution_prev_num_note_hashes_emitted)) -
673 static_cast<View
>(in.get(C::execution_num_note_hashes_emitted)));
677 using View =
typename std::tuple_element_t<83, ContainerOverSubrelations>::View;
678 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_emit_nullifier))) *
679 (
static_cast<View
>(in.get(C::execution_prev_nullifier_tree_root)) -
680 static_cast<View
>(in.get(C::execution_nullifier_tree_root)));
684 using View =
typename std::tuple_element_t<84, ContainerOverSubrelations>::View;
685 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_emit_nullifier))) *
686 (
static_cast<View
>(in.get(C::execution_prev_nullifier_tree_size)) -
687 static_cast<View
>(in.get(C::execution_nullifier_tree_size)));
691 using View =
typename std::tuple_element_t<85, ContainerOverSubrelations>::View;
692 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_emit_nullifier))) *
693 (
static_cast<View
>(in.get(C::execution_prev_num_nullifiers_emitted)) -
694 static_cast<View
>(in.get(C::execution_num_nullifiers_emitted)));
698 using View =
typename std::tuple_element_t<86, ContainerOverSubrelations>::View;
699 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_exec_dispatch_emit_public_log))) *
700 (
static_cast<View
>(in.get(C::execution_prev_num_public_log_fields)) -
701 static_cast<View
>(in.get(C::execution_num_public_log_fields)));
705 using View =
typename std::tuple_element_t<87, ContainerOverSubrelations>::View;
706 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_execute_send_l2_to_l1_msg))) *
707 (
static_cast<View
>(in.get(C::execution_prev_num_l2_to_l1_messages)) -
708 static_cast<View
>(in.get(C::execution_num_l2_to_l1_messages)));
712 using View =
typename std::tuple_element_t<88, ContainerOverSubrelations>::View;
713 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_first_row_in_context))) *
714 (
static_cast<View
>(in.get(C::execution_prev_retrieved_bytecodes_tree_root)) -
715 static_cast<View
>(in.get(C::execution_retrieved_bytecodes_tree_root)));
719 using View =
typename std::tuple_element_t<89, ContainerOverSubrelations>::View;
720 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_first_row_in_context))) *
721 (
static_cast<View
>(in.get(C::execution_prev_retrieved_bytecodes_tree_size)) -
722 static_cast<View
>(in.get(C::execution_retrieved_bytecodes_tree_size)));
726 using View =
typename std::tuple_element_t<90, ContainerOverSubrelations>::View;
727 auto tmp =
static_cast<View
>(in.get(C::execution_sel_opcode_error)) *
728 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_opcode_error)));
732 using View =
typename std::tuple_element_t<91, ContainerOverSubrelations>::View;
733 auto tmp = (
static_cast<View
>(in.get(C::execution_sel_execute_mov)) +
734 static_cast<View
>(in.get(C::execution_sel_execute_returndata_size)) +
735 static_cast<View
>(in.get(C::execution_sel_execute_jump)) +
736 static_cast<View
>(in.get(C::execution_sel_execute_jumpi)) +
737 static_cast<View
>(in.get(C::execution_sel_execute_debug_log)) +
738 static_cast<View
>(in.get(C::execution_sel_execute_success_copy)) +
739 static_cast<View
>(in.get(C::execution_sel_execute_call)) +
740 static_cast<View
>(in.get(C::execution_sel_execute_static_call)) +
741 static_cast<View
>(in.get(C::execution_sel_execute_internal_call)) +
742 static_cast<View
>(in.get(C::execution_sel_execute_return)) +
743 static_cast<View
>(in.get(C::execution_sel_execute_revert)) +
744 static_cast<View
>(in.get(C::execution_sel_execute_sload)) +
745 static_cast<View
>(in.get(C::execution_sel_execute_notehash_exists)) +
746 static_cast<View
>(in.get(C::execution_sel_execute_l1_to_l2_message_exists)) +
747 static_cast<View
>(in.get(C::execution_sel_execute_nullifier_exists))) *
748 static_cast<View
>(in.get(C::execution_sel_opcode_error));
752 using View =
typename std::tuple_element_t<92, ContainerOverSubrelations>::View;
753 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_should_execute_opcode))) *
754 static_cast<View
>(in.get(C::execution_sel_opcode_error));
758 using View =
typename std::tuple_element_t<93, ContainerOverSubrelations>::View;
759 auto tmp = (
static_cast<View
>(in.get(C::execution_sel_should_write_registers)) -
760 static_cast<View
>(in.get(C::execution_sel_should_execute_opcode)) *
761 (
FF(1) -
static_cast<View
>(in.get(C::execution_sel_opcode_error))));
765 using View =
typename std::tuple_element_t<94, ContainerOverSubrelations>::View;
766 auto tmp = (
static_cast<View
>(in.get(C::execution_sel_error)) -
767 (
static_cast<View
>(in.get(C::execution_sel_bytecode_retrieval_failure)) +
768 static_cast<View
>(in.get(C::execution_sel_instruction_fetching_failure)) +
769 static_cast<View
>(in.get(C::execution_sel_addressing_error)) +
770 static_cast<View
>(in.get(C::execution_sel_register_read_error)) +
771 static_cast<View
>(in.get(C::execution_sel_out_of_gas)) +
772 static_cast<View
>(in.get(C::execution_sel_opcode_error))));