31 in.get(C::execution_dynamic_l2_gas) * in.get(C::execution_dynamic_l2_gas_factor);
32 const auto execution_DYNAMIC_DA_GAS_USED =
33 in.get(C::execution_dynamic_da_gas) * in.get(C::execution_dynamic_da_gas_factor);
34 const auto execution_TOTAL_L2_GAS_USED = execution_BASE_L2_GAS + execution_DYNAMIC_L2_GAS_USED;
35 const auto execution_TOTAL_DA_GAS_USED = in.get(C::execution_base_da_gas) + execution_DYNAMIC_DA_GAS_USED;
36 const auto execution_PREV_GAS_PLUS_USAGE_L2 = in.get(C::execution_prev_l2_gas_used) + execution_TOTAL_L2_GAS_USED;
37 const auto execution_PREV_GAS_PLUS_USAGE_DA = in.get(C::execution_prev_da_gas_used) + execution_TOTAL_DA_GAS_USED;
41 auto tmp = (in.get(C::execution_sel_enter_call) -
42 (in.get(C::execution_sel_execute_call) + in.get(C::execution_sel_execute_static_call)));
43 tmp *= scaling_factor;
44 std::get<0>(evals) +=
typename Accumulator::View(tmp);
48 auto tmp = in.get(C::execution_sel_enter_call) * in.get(C::precomputed_first_row);
49 tmp *= scaling_factor;
50 std::get<1>(evals) +=
typename Accumulator::View(tmp);
55 (in.get(C::execution_sel_exit_call) -
56 (
FF(1) - ((
FF(1) - in.get(C::execution_sel_execute_revert)) - in.get(C::execution_sel_execute_return)) *
57 (
FF(1) - in.get(C::execution_sel_error))));
58 tmp *= scaling_factor;
59 std::get<2>(evals) +=
typename Accumulator::View(tmp);
63 auto tmp = in.get(C::execution_has_parent_ctx) * (
FF(1) - in.get(C::execution_has_parent_ctx));
64 tmp *= scaling_factor;
65 std::get<3>(evals) +=
typename Accumulator::View(tmp);
69 auto tmp = (in.get(C::execution_parent_id) * ((
FF(1) - in.get(C::execution_has_parent_ctx)) *
70 (
FF(1) - in.get(C::execution_is_parent_id_inv)) +
71 in.get(C::execution_is_parent_id_inv)) -
72 in.get(C::execution_has_parent_ctx));
73 tmp *= scaling_factor;
74 std::get<4>(evals) +=
typename Accumulator::View(tmp);
78 auto tmp = (in.get(C::execution_nested_exit_call) -
79 in.get(C::execution_has_parent_ctx) * in.get(C::execution_sel_exit_call));
80 tmp *= scaling_factor;
81 std::get<5>(evals) +=
typename Accumulator::View(tmp);
85 auto tmp = in.get(C::execution_enqueued_call_start) *
86 ((in.get(C::execution_context_id) +
FF(1)) - in.get(C::execution_next_context_id));
87 tmp *= scaling_factor;
88 std::get<6>(evals) +=
typename Accumulator::View(tmp);
93 execution_NOT_LAST_EXEC * (in.get(C::execution_next_context_id_shift) -
94 (in.get(C::execution_next_context_id) + in.get(C::execution_sel_enter_call) +
95 in.get(C::execution_enqueued_call_start_shift)));
96 tmp *= scaling_factor;
97 std::get<7>(evals) +=
typename Accumulator::View(tmp);
101 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
102 (in.get(C::execution_context_id_shift) - in.get(C::execution_context_id));
103 tmp *= scaling_factor;
104 std::get<8>(evals) +=
typename Accumulator::View(tmp);
108 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) *
109 (in.get(C::execution_context_id_shift) - in.get(C::execution_next_context_id));
110 tmp *= scaling_factor;
111 std::get<9>(evals) +=
typename Accumulator::View(tmp);
115 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_nested_exit_call) *
116 (in.get(C::execution_context_id_shift) - in.get(C::execution_parent_id));
117 tmp *= scaling_factor;
122 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
123 (in.get(C::execution_parent_id_shift) - in.get(C::execution_parent_id));
124 tmp *= scaling_factor;
129 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) *
130 (in.get(C::execution_parent_id_shift) - in.get(C::execution_context_id));
131 tmp *= scaling_factor;
136 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW * (
FF(1) - execution_PC_JUMP) *
137 (in.get(C::execution_pc_shift) - in.get(C::execution_next_pc));
138 tmp *= scaling_factor;
143 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) * in.get(C::execution_pc_shift);
144 tmp *= scaling_factor;
149 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
150 (in.get(C::execution_msg_sender_shift) - in.get(C::execution_msg_sender));
151 tmp *= scaling_factor;
156 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) *
157 (in.get(C::execution_msg_sender_shift) - in.get(C::execution_contract_address));
158 tmp *= scaling_factor;
163 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
164 (in.get(C::execution_contract_address_shift) - in.get(C::execution_contract_address));
165 tmp *= scaling_factor;
170 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) *
171 (in.get(C::execution_contract_address_shift) - in.get(C::execution_register_2_));
172 tmp *= scaling_factor;
177 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
178 (in.get(C::execution_bytecode_id_shift) - in.get(C::execution_bytecode_id));
179 tmp *= scaling_factor;
184 auto tmp = (
FF(1) - in.get(C::execution_enqueued_call_end)) *
185 (in.get(C::execution_transaction_fee_shift) - in.get(C::execution_transaction_fee));
186 tmp *= scaling_factor;
191 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
192 (in.get(C::execution_is_static_shift) - in.get(C::execution_is_static));
193 tmp *= scaling_factor;
198 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) *
199 (
FF(1) - in.get(C::execution_is_static)) *
200 (in.get(C::execution_is_static_shift) - in.get(C::execution_sel_execute_static_call));
201 tmp *= scaling_factor;
206 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) * in.get(C::execution_is_static) *
207 (in.get(C::execution_is_static_shift) -
FF(1));
208 tmp *= scaling_factor;
213 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
214 (in.get(C::execution_parent_calldata_addr_shift) - in.get(C::execution_parent_calldata_addr));
215 tmp *= scaling_factor;
220 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) *
221 (in.get(C::execution_parent_calldata_addr_shift) - in.get(C::execution_rop_4_));
222 tmp *= scaling_factor;
227 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
228 (in.get(C::execution_parent_calldata_size_shift) - in.get(C::execution_parent_calldata_size));
229 tmp *= scaling_factor;
234 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) *
235 (in.get(C::execution_parent_calldata_size_shift) - in.get(C::execution_register_3_));
236 tmp *= scaling_factor;
241 auto tmp = execution_NOT_LAST_EXEC * execution_NESTED_RET_REV_ONLY *
242 (in.get(C::execution_last_child_returndata_addr_shift) - in.get(C::execution_rop_1_));
243 tmp *= scaling_factor;
248 auto tmp = execution_NOT_LAST_EXEC * (in.get(C::execution_sel_enter_call) + in.get(C::execution_sel_error)) *
249 in.get(C::execution_last_child_returndata_addr_shift);
250 tmp *= scaling_factor;
255 auto tmp = in.get(C::execution_enqueued_call_start) * in.get(C::execution_last_child_returndata_addr);
256 tmp *= scaling_factor;
262 execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
263 (in.get(C::execution_last_child_returndata_addr_shift) - in.get(C::execution_last_child_returndata_addr));
264 tmp *= scaling_factor;
269 auto tmp = execution_NOT_LAST_EXEC * execution_NESTED_RET_REV_ONLY *
270 (in.get(C::execution_last_child_returndata_size_shift) - in.get(C::execution_register_0_));
271 tmp *= scaling_factor;
276 auto tmp = execution_NOT_LAST_EXEC * (in.get(C::execution_sel_enter_call) + in.get(C::execution_sel_error)) *
277 in.get(C::execution_last_child_returndata_size_shift);
278 tmp *= scaling_factor;
283 auto tmp = in.get(C::execution_enqueued_call_start) * in.get(C::execution_last_child_returndata_addr);
284 tmp *= scaling_factor;
290 execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
291 (in.get(C::execution_last_child_returndata_size_shift) - in.get(C::execution_last_child_returndata_size));
292 tmp *= scaling_factor;
297 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_nested_exit_call) *
298 (in.get(C::execution_last_child_id_shift) - in.get(C::execution_context_id));
299 tmp *= scaling_factor;
305 execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) * in.get(C::execution_last_child_id_shift);
306 tmp *= scaling_factor;
311 auto tmp = in.get(C::execution_enqueued_call_start) * in.get(C::execution_last_child_id);
312 tmp *= scaling_factor;
317 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
318 (in.get(C::execution_last_child_id_shift) - in.get(C::execution_last_child_id));
319 tmp *= scaling_factor;
324 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
325 (in.get(C::execution_l2_gas_limit_shift) - in.get(C::execution_l2_gas_limit));
326 tmp *= scaling_factor;
331 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_nested_exit_call) *
332 (in.get(C::execution_l2_gas_limit_shift) - in.get(C::execution_parent_l2_gas_limit));
333 tmp *= scaling_factor;
338 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
339 (in.get(C::execution_da_gas_limit_shift) - in.get(C::execution_da_gas_limit));
340 tmp *= scaling_factor;
345 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_nested_exit_call) *
346 (in.get(C::execution_da_gas_limit_shift) - in.get(C::execution_parent_da_gas_limit));
347 tmp *= scaling_factor;
352 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
353 (in.get(C::execution_parent_l2_gas_limit_shift) - in.get(C::execution_parent_l2_gas_limit));
354 tmp *= scaling_factor;
359 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) *
360 (in.get(C::execution_parent_l2_gas_limit_shift) - in.get(C::execution_l2_gas_limit));
361 tmp *= scaling_factor;
366 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
367 (in.get(C::execution_parent_da_gas_limit_shift) - in.get(C::execution_parent_da_gas_limit));
368 tmp *= scaling_factor;
373 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) *
374 (in.get(C::execution_parent_da_gas_limit_shift) - in.get(C::execution_da_gas_limit));
375 tmp *= scaling_factor;
380 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
381 (in.get(C::execution_parent_l2_gas_used_shift) - in.get(C::execution_parent_l2_gas_used));
382 tmp *= scaling_factor;
387 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) *
388 (in.get(C::execution_parent_l2_gas_used_shift) - in.get(C::execution_l2_gas_used));
389 tmp *= scaling_factor;
394 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
395 (in.get(C::execution_parent_da_gas_used_shift) - in.get(C::execution_parent_da_gas_used));
396 tmp *= scaling_factor;
401 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) *
402 (in.get(C::execution_parent_da_gas_used_shift) - in.get(C::execution_da_gas_used));
403 tmp *= scaling_factor;
408 auto tmp = in.get(C::execution_rollback_context) * (
FF(1) - in.get(C::execution_rollback_context));
409 tmp *= scaling_factor;
414 auto tmp = (in.get(C::execution_rollback_context) -
415 in.get(C::execution_nested_exit_call) * (
FF(1) - in.get(C::execution_sel_execute_return)));
416 tmp *= scaling_factor;
421 auto tmp = (in.get(C::execution_nested_return) - in.get(C::execution_nested_exit_call) *
422 in.get(C::execution_sel_execute_return) *
423 (
FF(1) - in.get(C::execution_sel_error)));
424 tmp *= scaling_factor;
430 (((in.get(C::execution_l2_gas_limit) - execution_PREV_GAS_PLUS_USAGE_L2) * execution_SEL_CONSUMED_ALL_GAS +
431 execution_PREV_GAS_PLUS_USAGE_L2) -
432 in.get(C::execution_l2_gas_used));
433 tmp *= scaling_factor;
439 (((in.get(C::execution_da_gas_limit) - execution_PREV_GAS_PLUS_USAGE_DA) * execution_SEL_CONSUMED_ALL_GAS +
440 execution_PREV_GAS_PLUS_USAGE_DA) -
441 in.get(C::execution_da_gas_used));
442 tmp *= scaling_factor;
447 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
448 (in.get(C::execution_l2_gas_used) - in.get(C::execution_prev_l2_gas_used_shift));
449 tmp *= scaling_factor;
455 execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) * in.get(C::execution_prev_l2_gas_used_shift);
456 tmp *= scaling_factor;
461 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_nested_exit_call) *
462 ((in.get(C::execution_parent_l2_gas_used) + in.get(C::execution_l2_gas_used)) -
463 in.get(C::execution_prev_l2_gas_used_shift));
464 tmp *= scaling_factor;
469 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_CTX_ROW *
470 (in.get(C::execution_da_gas_used) - in.get(C::execution_prev_da_gas_used_shift));
471 tmp *= scaling_factor;
477 execution_NOT_LAST_EXEC * in.get(C::execution_sel_enter_call) * in.get(C::execution_prev_da_gas_used_shift);
478 tmp *= scaling_factor;
483 auto tmp = execution_NOT_LAST_EXEC * in.get(C::execution_nested_exit_call) *
484 ((in.get(C::execution_parent_da_gas_used) + in.get(C::execution_da_gas_used)) -
485 in.get(C::execution_prev_da_gas_used_shift));
486 tmp *= scaling_factor;
491 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_OR_NESTED_RETURN *
492 (in.get(C::execution_note_hash_tree_root) - in.get(C::execution_prev_note_hash_tree_root_shift));
493 tmp *= scaling_factor;
498 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_OR_NESTED_RETURN *
499 (in.get(C::execution_note_hash_tree_size) - in.get(C::execution_prev_note_hash_tree_size_shift));
500 tmp *= scaling_factor;
506 execution_NOT_LAST_EXEC * execution_DEFAULT_OR_NESTED_RETURN *
507 (in.get(C::execution_num_note_hashes_emitted) - in.get(C::execution_prev_num_note_hashes_emitted_shift));
508 tmp *= scaling_factor;
513 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_OR_NESTED_RETURN *
514 (in.get(C::execution_nullifier_tree_root) - in.get(C::execution_prev_nullifier_tree_root_shift));
515 tmp *= scaling_factor;
520 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_OR_NESTED_RETURN *
521 (in.get(C::execution_nullifier_tree_size) - in.get(C::execution_prev_nullifier_tree_size_shift));
522 tmp *= scaling_factor;
528 execution_NOT_LAST_EXEC * execution_DEFAULT_OR_NESTED_RETURN *
529 (in.get(C::execution_num_nullifiers_emitted) - in.get(C::execution_prev_num_nullifiers_emitted_shift));
530 tmp *= scaling_factor;
535 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_OR_NESTED_RETURN *
536 (in.get(C::execution_public_data_tree_root) - in.get(C::execution_prev_public_data_tree_root_shift));
537 tmp *= scaling_factor;
542 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_OR_NESTED_RETURN *
543 (in.get(C::execution_public_data_tree_size) - in.get(C::execution_prev_public_data_tree_size_shift));
544 tmp *= scaling_factor;
549 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_OR_NESTED_RETURN *
550 (in.get(C::execution_written_public_data_slots_tree_root) -
551 in.get(C::execution_prev_written_public_data_slots_tree_root_shift));
552 tmp *= scaling_factor;
557 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_OR_NESTED_RETURN *
558 (in.get(C::execution_written_public_data_slots_tree_size) -
559 in.get(C::execution_prev_written_public_data_slots_tree_size_shift));
560 tmp *= scaling_factor;
565 auto tmp = execution_NOT_LAST_EXEC *
566 (in.get(C::execution_l1_l2_tree_root) - in.get(C::execution_l1_l2_tree_root_shift));
567 tmp *= scaling_factor;
572 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_OR_NESTED_RETURN *
573 (in.get(C::execution_num_unencrypted_logs) - in.get(C::execution_prev_num_unencrypted_logs_shift));
574 tmp *= scaling_factor;
579 auto tmp = execution_NOT_LAST_EXEC * execution_DEFAULT_OR_NESTED_RETURN *
580 (in.get(C::execution_num_l2_to_l1_messages) - in.get(C::execution_prev_num_l2_to_l1_messages_shift));
581 tmp *= scaling_factor;