diff --git a/barretenberg/cpp/scripts/analyze_vm_compile_time.sh b/barretenberg/cpp/scripts/analyze_vm_compile_time.sh index 97b0e5d3b39a..894edfc80662 100755 --- a/barretenberg/cpp/scripts/analyze_vm_compile_time.sh +++ b/barretenberg/cpp/scripts/analyze_vm_compile_time.sh @@ -1,26 +1,26 @@ #!/usr/bin/env bash # This script summarises the compilation time for the vm # The summary json file is outputted to $BUILD_DIR/avm_compilation_summary.json -# it takes in two params the preset(e.g. clang16, clang16-dbg) and a target (e.g. bb, vm) +# it takes in two params the preset(e.g. clang16, clang16-dbg) and a target (e.g. bb, vm) # it can be called like this => ./analyze_vm_compile_time.sh clang16 bb set -eu # So we can glob recursively shopt -s globstar -PRESET="${1:-wasm-threads}" -TARGET="${2:-barretenberg.wasm}" +export PRESET="${1:-clang16}" +export TARGET="${2:-vm2}" BUILD_DIR=build-$PRESET-compiler-profile cd $(dirname $0)/.. # Run the analyse script if we dont already have the specific directory -if [ ! -d $BUILD_DIR ]; then - echo -e "\n$BUILD_DIR not found, running $(dirname $0)/analyze_compile_time.sh $PRESET $TARGET" - ./scripts/analyze_compile_time.sh $PRESET $TARGET -else +if [ ! -d $BUILD_DIR ]; then + echo -e "\n$BUILD_DIR not found, running $(dirname $0)/analyze_compile_time.sh with $PRESET $TARGET" + ./scripts/analyze_compile_time.sh +else echo -e "\n$BUILD_DIR found, using existing results" -fi +fi # Run summary analysis cd build-$PRESET-compiler-profile diff --git a/barretenberg/cpp/src/barretenberg/vm2/common/macros.hpp b/barretenberg/cpp/src/barretenberg/vm2/common/macros.hpp deleted file mode 100644 index 042c95d8843a..000000000000 --- a/barretenberg/cpp/src/barretenberg/vm2/common/macros.hpp +++ /dev/null @@ -1,16 +0,0 @@ -#pragma once - -// From https://www.scs.stanford.edu/~dm/blog/va-opt.html. -// The following defines a FOR_EACH recursive macro. -// It can be used as: FOR_EACH(macro, a1, a2, a3, ..., aN) -// If something starts failing when adding columns, add another layer here. -#define EXPAND(...) EXPAND5(EXPAND5(EXPAND5(EXPAND5(__VA_ARGS__)))) -#define EXPAND5(...) EXPAND4(EXPAND4(EXPAND4(EXPAND4(__VA_ARGS__)))) -#define EXPAND4(...) EXPAND3(EXPAND3(EXPAND3(EXPAND3(__VA_ARGS__)))) -#define EXPAND3(...) EXPAND2(EXPAND2(EXPAND2(EXPAND2(__VA_ARGS__)))) -#define EXPAND2(...) EXPAND1(EXPAND1(EXPAND1(EXPAND1(__VA_ARGS__)))) -#define EXPAND1(...) __VA_ARGS__ -#define PARENS () -#define FOR_EACH(macro, ...) __VA_OPT__(EXPAND(FOR_EACH_HELPER(macro, __VA_ARGS__))) -#define FOR_EACH_HELPER(macro, a1, ...) macro(a1) __VA_OPT__(FOR_EACH_AGAIN PARENS(macro, __VA_ARGS__)) -#define FOR_EACH_AGAIN() FOR_EACH_HELPER \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/vm2/constraining/benchmark/relations_acc.bench.cpp b/barretenberg/cpp/src/barretenberg/vm2/constraining/benchmark/relations_acc.bench.cpp index 709492616bcc..d4662f272a10 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/constraining/benchmark/relations_acc.bench.cpp +++ b/barretenberg/cpp/src/barretenberg/vm2/constraining/benchmark/relations_acc.bench.cpp @@ -16,14 +16,9 @@ using namespace bb::avm2; namespace { -// Getters are needed for interaction accumulation to work. -struct FullRowWithGetters : public AvmFullRow { - DEFINE_GETTERS(DEFAULT_GETTERS, AVM2_ALL_ENTITIES); -}; - -FullRowWithGetters get_random_row() +AvmFullRow get_random_row() { - FullRowWithGetters row; + AvmFullRow row; for (size_t i = 0; i < NUM_COLUMNS_WITH_SHIFTS; i++) { row.get_column(static_cast(i)) = FF::random_element(); } diff --git a/barretenberg/cpp/src/barretenberg/vm2/constraining/flavor.hpp b/barretenberg/cpp/src/barretenberg/vm2/constraining/flavor.hpp index 9ddb3f2ed24d..88de89143b50 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/constraining/flavor.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/constraining/flavor.hpp @@ -12,7 +12,6 @@ #include "barretenberg/transcript/transcript.hpp" #include "barretenberg/vm2/common/aztec_constants.hpp" -#include "barretenberg/vm2/common/macros.hpp" #include "barretenberg/vm2/constraining/flavor_settings.hpp" #include "barretenberg/vm2/generated/columns.hpp" @@ -21,21 +20,21 @@ // Metaprogramming to concatenate tuple types. template using tuple_cat_t = decltype(std::tuple_cat(std::declval()...)); -// clang-format off -// These getters are used to speedup logderivative inverses. -// See https://github.com/AztecProtocol/aztec-packages/pull/11605/ for a full explanation. -#define DEFAULT_GETTERS(ENTITY) \ - inline auto& _##ENTITY() { return ENTITY; } \ - inline auto& _##ENTITY() const { return ENTITY; } -#define ROW_PROXY_GETTERS(ENTITY) \ - inline auto& _##ENTITY() { return pp.ENTITY[row_idx]; } \ - inline auto& _##ENTITY() const { return pp.ENTITY[row_idx]; } -#define DEFINE_GETTERS(GETTER_MACRO, ENTITIES) \ - FOR_EACH(GETTER_MACRO, ENTITIES) -// clang-format on - namespace bb::avm2 { +// This helper lets us access entities by column. +// It is critical to achieve performance when calculating lookup inverses. +// See https://github.com/AztecProtocol/aztec-packages/pull/11605 for more details. +template auto& get_entity_by_column(Entities& entities, ColumnAndShifts c) +{ + // A statically constructed pointer to members of the class, indexed by column. + // This should only be created once per Entities class. + static std::array col_ptrs = { + AVM2_ALL_ENTITIES_E(&Entities::) + }; + return (entities.*col_ptrs[static_cast(c)]); +} + class AvmFlavor { public: using Curve = AvmFlavorSettings::Curve; @@ -139,32 +138,28 @@ class AvmFlavor { template class PrecomputedEntities { public: DEFINE_FLAVOR_MEMBERS(DataType, AVM2_PRECOMPUTED_ENTITIES) - DEFINE_GETTERS(DEFAULT_GETTERS, AVM2_PRECOMPUTED_ENTITIES) }; private: template class WireEntities { public: DEFINE_FLAVOR_MEMBERS(DataType, AVM2_WIRE_ENTITIES) - DEFINE_GETTERS(DEFAULT_GETTERS, AVM2_WIRE_ENTITIES) }; template class DerivedWitnessEntities { public: DEFINE_FLAVOR_MEMBERS(DataType, AVM2_DERIVED_WITNESS_ENTITIES) - DEFINE_GETTERS(DEFAULT_GETTERS, AVM2_DERIVED_WITNESS_ENTITIES) }; template class ShiftedEntities { public: DEFINE_FLAVOR_MEMBERS(DataType, AVM2_SHIFTED_ENTITIES) - DEFINE_GETTERS(DEFAULT_GETTERS, AVM2_SHIFTED_ENTITIES) }; template - static auto get_to_be_shifted([[maybe_unused]] PrecomputedAndWitnessEntitiesSuperset& entities) + static auto get_to_be_shifted(PrecomputedAndWitnessEntitiesSuperset& entities) { - return RefArray{ AVM2_TO_BE_SHIFTED(entities) }; + return RefArray{ AVM2_TO_BE_SHIFTED_E(entities.) }; } public: @@ -178,11 +173,12 @@ class AvmFlavor { static const auto& get_derived_labels() { return DerivedWitnessEntities::get_labels(); } }; - template - class AllEntities : public PrecomputedEntities, - public WitnessEntities, - public ShiftedEntities { + template + class AllEntities : public PrecomputedEntities, + public WitnessEntities, + public ShiftedEntities { public: + using DataType = DataType_; DEFINE_COMPOUND_GET_ALL(PrecomputedEntities, WitnessEntities, ShiftedEntities) auto get_unshifted() @@ -200,6 +196,10 @@ class AvmFlavor { auto get_to_be_shifted() { return AvmFlavor::get_to_be_shifted(*this); } auto get_shifted() { return ShiftedEntities::get_all(); } auto get_precomputed() { return PrecomputedEntities::get_all(); } + + // We need both const and non-const versions. + DataType& get(ColumnAndShifts c) { return get_entity_by_column(*this, c); } + const DataType& get(ColumnAndShifts c) const { return get_entity_by_column(*this, c); } }; class ProvingKey : public PrecomputedEntities, public WitnessEntities { @@ -258,6 +258,7 @@ class AvmFlavor { std::vector to_field_elements() const; }; + // Used by sumcheck. class AllValues : public AllEntities { public: using Base = AllEntities; @@ -270,7 +271,6 @@ class AvmFlavor { using BaseDataType = const FF; using DataType = BaseDataType&; DEFINE_FLAVOR_MEMBERS(DataType, AVM2_ALL_ENTITIES) - DEFINE_GETTERS(DEFAULT_GETTERS, AVM2_ALL_ENTITIES) }; template class PolynomialEntitiesAtFixedRow { @@ -279,7 +279,10 @@ class AvmFlavor { : row_idx(row_idx) , pp(pp) {} - DEFINE_GETTERS(ROW_PROXY_GETTERS, AVM2_ALL_ENTITIES) + + // We need both const and non-const versions. + auto& get(ColumnAndShifts c) { return pp.get(c)[row_idx]; } + const auto& get(ColumnAndShifts c) const { return pp.get(c)[row_idx]; } private: const size_t row_idx; diff --git a/barretenberg/cpp/src/barretenberg/vm2/constraining/full_row.hpp b/barretenberg/cpp/src/barretenberg/vm2/constraining/full_row.hpp index ac0594d3d8ac..a3eb5390f341 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/constraining/full_row.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/constraining/full_row.hpp @@ -21,6 +21,11 @@ template struct AvmFullRow { static_assert(sizeof(*this) == sizeof(FF) * static_cast(ColumnAndShifts::SENTINEL_DO_NOT_USE)); return reinterpret_cast(this)[static_cast(col)]; } + + // These are the names used by AllEntities, etc. + // TODO(fcarreiro): Clean up duplication. + FF& get(ColumnAndShifts col) { return get_column(col); } + const FF& get(ColumnAndShifts col) const { return get_column(col); } }; } // namespace bb::avm2 diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/columns.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/columns.hpp index 0e1f85696f22..a6fc0152275b 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/columns.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/columns.hpp @@ -7,19 +7,25 @@ namespace bb::avm2 { -// The entities that will be used in the flavor. // clang-format off -#define AVM2_PRECOMPUTED_ENTITIES precomputed_bitwise_input_a, precomputed_bitwise_input_b, precomputed_bitwise_op_id, precomputed_bitwise_output, precomputed_clk, precomputed_exec_opcode, precomputed_first_row, precomputed_instr_size, precomputed_integral_tag_length, precomputed_opcode_out_of_range, precomputed_p_decomposition_limb, precomputed_p_decomposition_limb_index, precomputed_p_decomposition_radix, precomputed_power_of_2, precomputed_sel_bitwise, precomputed_sel_has_tag, precomputed_sel_integral_tag, precomputed_sel_mem_tag_out_of_range, precomputed_sel_op_dc_0, precomputed_sel_op_dc_1, precomputed_sel_op_dc_10, precomputed_sel_op_dc_11, precomputed_sel_op_dc_12, precomputed_sel_op_dc_13, precomputed_sel_op_dc_14, precomputed_sel_op_dc_15, precomputed_sel_op_dc_16, precomputed_sel_op_dc_17, precomputed_sel_op_dc_2, precomputed_sel_op_dc_3, precomputed_sel_op_dc_4, precomputed_sel_op_dc_5, precomputed_sel_op_dc_6, precomputed_sel_op_dc_7, precomputed_sel_op_dc_8, precomputed_sel_op_dc_9, precomputed_sel_p_decomposition, precomputed_sel_range_16, precomputed_sel_range_8, precomputed_sel_sha256_compression, precomputed_sel_tag_is_op2, precomputed_sel_to_radix_safe_limbs, precomputed_sha256_compression_round_constant, precomputed_to_radix_safe_limbs, precomputed_zero -#define AVM2_WIRE_ENTITIES execution_input, address_derivation_address, address_derivation_address_y, address_derivation_class_id, address_derivation_deployer_addr, address_derivation_g1_x, address_derivation_g1_y, address_derivation_incoming_viewing_key_x, address_derivation_incoming_viewing_key_y, address_derivation_init_hash, address_derivation_nullifier_key_x, address_derivation_nullifier_key_y, address_derivation_outgoing_viewing_key_x, address_derivation_outgoing_viewing_key_y, address_derivation_partial_address, address_derivation_partial_address_domain_separator, address_derivation_preaddress, address_derivation_preaddress_domain_separator, address_derivation_preaddress_public_key_x, address_derivation_preaddress_public_key_y, address_derivation_public_keys_hash, address_derivation_public_keys_hash_domain_separator, address_derivation_salt, address_derivation_salted_init_hash, address_derivation_sel, address_derivation_tagging_key_x, address_derivation_tagging_key_y, alu_ia, alu_ib, alu_ic, alu_op, alu_sel_op_add, bc_decomposition_abs_diff, bc_decomposition_bytes, bc_decomposition_bytes_pc_plus_1, bc_decomposition_bytes_pc_plus_10, bc_decomposition_bytes_pc_plus_11, bc_decomposition_bytes_pc_plus_12, bc_decomposition_bytes_pc_plus_13, bc_decomposition_bytes_pc_plus_14, bc_decomposition_bytes_pc_plus_15, bc_decomposition_bytes_pc_plus_16, bc_decomposition_bytes_pc_plus_17, bc_decomposition_bytes_pc_plus_18, bc_decomposition_bytes_pc_plus_19, bc_decomposition_bytes_pc_plus_2, bc_decomposition_bytes_pc_plus_20, bc_decomposition_bytes_pc_plus_21, bc_decomposition_bytes_pc_plus_22, bc_decomposition_bytes_pc_plus_23, bc_decomposition_bytes_pc_plus_24, bc_decomposition_bytes_pc_plus_25, bc_decomposition_bytes_pc_plus_26, bc_decomposition_bytes_pc_plus_27, bc_decomposition_bytes_pc_plus_28, bc_decomposition_bytes_pc_plus_29, bc_decomposition_bytes_pc_plus_3, bc_decomposition_bytes_pc_plus_30, bc_decomposition_bytes_pc_plus_31, bc_decomposition_bytes_pc_plus_32, bc_decomposition_bytes_pc_plus_33, bc_decomposition_bytes_pc_plus_34, bc_decomposition_bytes_pc_plus_35, bc_decomposition_bytes_pc_plus_36, bc_decomposition_bytes_pc_plus_4, bc_decomposition_bytes_pc_plus_5, bc_decomposition_bytes_pc_plus_6, bc_decomposition_bytes_pc_plus_7, bc_decomposition_bytes_pc_plus_8, bc_decomposition_bytes_pc_plus_9, bc_decomposition_bytes_rem_inv, bc_decomposition_bytes_rem_min_one_inv, bc_decomposition_bytes_remaining, bc_decomposition_bytes_to_read, bc_decomposition_id, bc_decomposition_last_of_contract, bc_decomposition_packed_field, bc_decomposition_pc, bc_decomposition_sel, bc_decomposition_sel_overflow_correction_needed, bc_decomposition_sel_packed, bc_hashing_bytecode_id, bc_hashing_incremental_hash, bc_hashing_latch, bc_hashing_output_hash, bc_hashing_packed_field, bc_hashing_pc_index, bc_hashing_sel, bc_hashing_start, bc_retrieval_address, bc_retrieval_artifact_hash, bc_retrieval_block_number, bc_retrieval_bytecode_id, bc_retrieval_current_class_id, bc_retrieval_deployer_addr, bc_retrieval_deployer_protocol_contract_address, bc_retrieval_err, bc_retrieval_incoming_viewing_key_x, bc_retrieval_incoming_viewing_key_y, bc_retrieval_init_hash, bc_retrieval_nullifier_exists, bc_retrieval_nullifier_key_x, bc_retrieval_nullifier_key_y, bc_retrieval_nullifier_tree_root, bc_retrieval_original_class_id, bc_retrieval_outer_nullifier_domain_separator, bc_retrieval_outgoing_viewing_key_x, bc_retrieval_outgoing_viewing_key_y, bc_retrieval_private_function_root, bc_retrieval_public_bytecode_commitment, bc_retrieval_public_data_tree_root, bc_retrieval_salt, bc_retrieval_sel, bc_retrieval_siloed_address, bc_retrieval_tagging_key_x, bc_retrieval_tagging_key_y, bitwise_acc_ia, bitwise_acc_ib, bitwise_acc_ic, bitwise_ctr, bitwise_ctr_inv, bitwise_ctr_min_one_inv, bitwise_ia_byte, bitwise_ib_byte, bitwise_ic_byte, bitwise_last, bitwise_op_id, bitwise_sel, bitwise_start, bitwise_tag, class_id_derivation_artifact_hash, class_id_derivation_class_id, class_id_derivation_private_function_root, class_id_derivation_public_bytecode_commitment, class_id_derivation_sel, class_id_derivation_temp_constant_for_lookup, context_stack_context_id, context_stack_contract_address, context_stack_is_static, context_stack_msg_sender, context_stack_parent_calldata_offset_addr, context_stack_parent_calldata_size_addr, context_stack_pc, ecc_add_op, ecc_double_op, ecc_inv_2_p_y, ecc_inv_x_diff, ecc_inv_y_diff, ecc_lambda, ecc_p_is_inf, ecc_p_x, ecc_p_y, ecc_q_is_inf, ecc_q_x, ecc_q_y, ecc_r_is_inf, ecc_r_x, ecc_r_y, ecc_result_infinity, ecc_sel, ecc_x_match, ecc_y_match, execution_addressing_error_idx, execution_addressing_error_kind, execution_base_address_tag, execution_base_address_val, execution_bytecode_id, execution_clk, execution_context_id, execution_contract_address, execution_ex_opcode, execution_indirect, execution_is_static, execution_last, execution_last_child_returndata_offset_addr, execution_last_child_returndata_size_addr, execution_last_child_success, execution_msg_sender, execution_op1, execution_op1_after_relative, execution_op2, execution_op2_after_relative, execution_op3, execution_op3_after_relative, execution_op4, execution_op4_after_relative, execution_parent_calldata_offset_addr, execution_parent_calldata_size_addr, execution_pc, execution_rop1, execution_rop2, execution_rop3, execution_rop4, execution_sel, execution_sel_addressing_error, execution_sel_op1_is_address, execution_sel_op2_is_address, execution_sel_op3_is_address, execution_sel_op4_is_address, ff_gt_a, ff_gt_a_hi, ff_gt_a_lo, ff_gt_b, ff_gt_b_hi, ff_gt_b_lo, ff_gt_borrow, ff_gt_cmp_rng_ctr, ff_gt_cmp_rng_ctr_inv, ff_gt_constant_128, ff_gt_p_a_borrow, ff_gt_p_b_borrow, ff_gt_p_sub_a_hi, ff_gt_p_sub_a_lo, ff_gt_p_sub_b_hi, ff_gt_p_sub_b_lo, ff_gt_res_hi, ff_gt_res_lo, ff_gt_result, ff_gt_sel, ff_gt_sel_gt, ff_gt_sel_shift_rng, instr_fetching_bd0, instr_fetching_bd1, instr_fetching_bd10, instr_fetching_bd11, instr_fetching_bd12, instr_fetching_bd13, instr_fetching_bd14, instr_fetching_bd15, instr_fetching_bd16, instr_fetching_bd17, instr_fetching_bd18, instr_fetching_bd19, instr_fetching_bd2, instr_fetching_bd20, instr_fetching_bd21, instr_fetching_bd22, instr_fetching_bd23, instr_fetching_bd24, instr_fetching_bd25, instr_fetching_bd26, instr_fetching_bd27, instr_fetching_bd28, instr_fetching_bd29, instr_fetching_bd3, instr_fetching_bd30, instr_fetching_bd31, instr_fetching_bd32, instr_fetching_bd33, instr_fetching_bd34, instr_fetching_bd35, instr_fetching_bd36, instr_fetching_bd4, instr_fetching_bd5, instr_fetching_bd6, instr_fetching_bd7, instr_fetching_bd8, instr_fetching_bd9, instr_fetching_bytecode_id, instr_fetching_bytecode_size, instr_fetching_bytes_to_read, instr_fetching_exec_opcode, instr_fetching_indirect, instr_fetching_instr_abs_diff, instr_fetching_instr_out_of_range, instr_fetching_instr_size, instr_fetching_op1, instr_fetching_op2, instr_fetching_op3, instr_fetching_op4, instr_fetching_op5, instr_fetching_op6, instr_fetching_op7, instr_fetching_opcode_out_of_range, instr_fetching_parsing_err, instr_fetching_pc, instr_fetching_pc_abs_diff, instr_fetching_pc_out_of_range, instr_fetching_pc_size_in_bits, instr_fetching_sel, instr_fetching_sel_has_tag, instr_fetching_sel_op_dc_0, instr_fetching_sel_op_dc_1, instr_fetching_sel_op_dc_10, instr_fetching_sel_op_dc_11, instr_fetching_sel_op_dc_12, instr_fetching_sel_op_dc_13, instr_fetching_sel_op_dc_14, instr_fetching_sel_op_dc_15, instr_fetching_sel_op_dc_16, instr_fetching_sel_op_dc_17, instr_fetching_sel_op_dc_2, instr_fetching_sel_op_dc_3, instr_fetching_sel_op_dc_4, instr_fetching_sel_op_dc_5, instr_fetching_sel_op_dc_6, instr_fetching_sel_op_dc_7, instr_fetching_sel_op_dc_8, instr_fetching_sel_op_dc_9, instr_fetching_sel_pc_in_range, instr_fetching_sel_tag_is_op2, instr_fetching_tag_out_of_range, instr_fetching_tag_value, memory_address, memory_rw, memory_sel, memory_space_id, memory_tag, memory_value, merkle_check_constant_2, merkle_check_end, merkle_check_index, merkle_check_index_is_even, merkle_check_path_len, merkle_check_read_left_node, merkle_check_read_node, merkle_check_read_output_hash, merkle_check_read_right_node, merkle_check_read_root, merkle_check_remaining_path_len_inv, merkle_check_sel, merkle_check_sibling, merkle_check_start, merkle_check_write, merkle_check_write_left_node, merkle_check_write_node, merkle_check_write_output_hash, merkle_check_write_right_node, merkle_check_write_root, nullifier_check_exists, nullifier_check_intermediate_root, nullifier_check_leaf_not_exists, nullifier_check_low_leaf_hash, nullifier_check_low_leaf_index, nullifier_check_low_leaf_next_index, nullifier_check_low_leaf_next_nullifier, nullifier_check_low_leaf_nullifier, nullifier_check_new_leaf_hash, nullifier_check_next_nullifier_inv, nullifier_check_next_nullifier_is_nonzero, nullifier_check_nullifier, nullifier_check_nullifier_low_leaf_nullifier_diff_inv, nullifier_check_one, nullifier_check_root, nullifier_check_sel, nullifier_check_tree_height, nullifier_check_tree_size_before_write, nullifier_check_updated_low_leaf_hash, nullifier_check_write, nullifier_check_write_low_leaf_next_index, nullifier_check_write_low_leaf_next_nullifier, nullifier_check_write_root, poseidon2_hash_a_0, poseidon2_hash_a_1, poseidon2_hash_a_2, poseidon2_hash_a_3, poseidon2_hash_b_0, poseidon2_hash_b_1, poseidon2_hash_b_2, poseidon2_hash_b_3, poseidon2_hash_end, poseidon2_hash_input_0, poseidon2_hash_input_1, poseidon2_hash_input_2, poseidon2_hash_input_len, poseidon2_hash_num_perm_rounds_rem, poseidon2_hash_num_perm_rounds_rem_inv, poseidon2_hash_output, poseidon2_hash_padding, poseidon2_hash_sel, poseidon2_hash_start, poseidon2_perm_B_10_0, poseidon2_perm_B_10_1, poseidon2_perm_B_10_2, poseidon2_perm_B_10_3, poseidon2_perm_B_11_0, poseidon2_perm_B_11_1, poseidon2_perm_B_11_2, poseidon2_perm_B_11_3, poseidon2_perm_B_12_0, poseidon2_perm_B_12_1, poseidon2_perm_B_12_2, poseidon2_perm_B_12_3, poseidon2_perm_B_13_0, poseidon2_perm_B_13_1, poseidon2_perm_B_13_2, poseidon2_perm_B_13_3, poseidon2_perm_B_14_0, poseidon2_perm_B_14_1, poseidon2_perm_B_14_2, poseidon2_perm_B_14_3, poseidon2_perm_B_15_0, poseidon2_perm_B_15_1, poseidon2_perm_B_15_2, poseidon2_perm_B_15_3, poseidon2_perm_B_16_0, poseidon2_perm_B_16_1, poseidon2_perm_B_16_2, poseidon2_perm_B_16_3, poseidon2_perm_B_17_0, poseidon2_perm_B_17_1, poseidon2_perm_B_17_2, poseidon2_perm_B_17_3, poseidon2_perm_B_18_0, poseidon2_perm_B_18_1, poseidon2_perm_B_18_2, poseidon2_perm_B_18_3, poseidon2_perm_B_19_0, poseidon2_perm_B_19_1, poseidon2_perm_B_19_2, poseidon2_perm_B_19_3, poseidon2_perm_B_20_0, poseidon2_perm_B_20_1, poseidon2_perm_B_20_2, poseidon2_perm_B_20_3, poseidon2_perm_B_21_0, poseidon2_perm_B_21_1, poseidon2_perm_B_21_2, poseidon2_perm_B_21_3, poseidon2_perm_B_22_0, poseidon2_perm_B_22_1, poseidon2_perm_B_22_2, poseidon2_perm_B_22_3, poseidon2_perm_B_23_0, poseidon2_perm_B_23_1, poseidon2_perm_B_23_2, poseidon2_perm_B_23_3, poseidon2_perm_B_24_0, poseidon2_perm_B_24_1, poseidon2_perm_B_24_2, poseidon2_perm_B_24_3, poseidon2_perm_B_25_0, poseidon2_perm_B_25_1, poseidon2_perm_B_25_2, poseidon2_perm_B_25_3, poseidon2_perm_B_26_0, poseidon2_perm_B_26_1, poseidon2_perm_B_26_2, poseidon2_perm_B_26_3, poseidon2_perm_B_27_0, poseidon2_perm_B_27_1, poseidon2_perm_B_27_2, poseidon2_perm_B_27_3, poseidon2_perm_B_28_0, poseidon2_perm_B_28_1, poseidon2_perm_B_28_2, poseidon2_perm_B_28_3, poseidon2_perm_B_29_0, poseidon2_perm_B_29_1, poseidon2_perm_B_29_2, poseidon2_perm_B_29_3, poseidon2_perm_B_30_0, poseidon2_perm_B_30_1, poseidon2_perm_B_30_2, poseidon2_perm_B_30_3, poseidon2_perm_B_31_0, poseidon2_perm_B_31_1, poseidon2_perm_B_31_2, poseidon2_perm_B_31_3, poseidon2_perm_B_32_0, poseidon2_perm_B_32_1, poseidon2_perm_B_32_2, poseidon2_perm_B_32_3, poseidon2_perm_B_33_0, poseidon2_perm_B_33_1, poseidon2_perm_B_33_2, poseidon2_perm_B_33_3, poseidon2_perm_B_34_0, poseidon2_perm_B_34_1, poseidon2_perm_B_34_2, poseidon2_perm_B_34_3, poseidon2_perm_B_35_0, poseidon2_perm_B_35_1, poseidon2_perm_B_35_2, poseidon2_perm_B_35_3, poseidon2_perm_B_36_0, poseidon2_perm_B_36_1, poseidon2_perm_B_36_2, poseidon2_perm_B_36_3, poseidon2_perm_B_37_0, poseidon2_perm_B_37_1, poseidon2_perm_B_37_2, poseidon2_perm_B_37_3, poseidon2_perm_B_38_0, poseidon2_perm_B_38_1, poseidon2_perm_B_38_2, poseidon2_perm_B_38_3, poseidon2_perm_B_39_0, poseidon2_perm_B_39_1, poseidon2_perm_B_39_2, poseidon2_perm_B_39_3, poseidon2_perm_B_40_0, poseidon2_perm_B_40_1, poseidon2_perm_B_40_2, poseidon2_perm_B_40_3, poseidon2_perm_B_41_0, poseidon2_perm_B_41_1, poseidon2_perm_B_41_2, poseidon2_perm_B_41_3, poseidon2_perm_B_42_0, poseidon2_perm_B_42_1, poseidon2_perm_B_42_2, poseidon2_perm_B_42_3, poseidon2_perm_B_43_0, poseidon2_perm_B_43_1, poseidon2_perm_B_43_2, poseidon2_perm_B_43_3, poseidon2_perm_B_44_0, poseidon2_perm_B_44_1, poseidon2_perm_B_44_2, poseidon2_perm_B_44_3, poseidon2_perm_B_45_0, poseidon2_perm_B_45_1, poseidon2_perm_B_45_2, poseidon2_perm_B_45_3, poseidon2_perm_B_46_0, poseidon2_perm_B_46_1, poseidon2_perm_B_46_2, poseidon2_perm_B_46_3, poseidon2_perm_B_47_0, poseidon2_perm_B_47_1, poseidon2_perm_B_47_2, poseidon2_perm_B_47_3, poseidon2_perm_B_48_0, poseidon2_perm_B_48_1, poseidon2_perm_B_48_2, poseidon2_perm_B_48_3, poseidon2_perm_B_49_0, poseidon2_perm_B_49_1, poseidon2_perm_B_49_2, poseidon2_perm_B_49_3, poseidon2_perm_B_4_0, poseidon2_perm_B_4_1, poseidon2_perm_B_4_2, poseidon2_perm_B_4_3, poseidon2_perm_B_50_0, poseidon2_perm_B_50_1, poseidon2_perm_B_50_2, poseidon2_perm_B_50_3, poseidon2_perm_B_51_0, poseidon2_perm_B_51_1, poseidon2_perm_B_51_2, poseidon2_perm_B_51_3, poseidon2_perm_B_52_0, poseidon2_perm_B_52_1, poseidon2_perm_B_52_2, poseidon2_perm_B_52_3, poseidon2_perm_B_53_0, poseidon2_perm_B_53_1, poseidon2_perm_B_53_2, poseidon2_perm_B_53_3, poseidon2_perm_B_54_0, poseidon2_perm_B_54_1, poseidon2_perm_B_54_2, poseidon2_perm_B_54_3, poseidon2_perm_B_55_0, poseidon2_perm_B_55_1, poseidon2_perm_B_55_2, poseidon2_perm_B_55_3, poseidon2_perm_B_56_0, poseidon2_perm_B_56_1, poseidon2_perm_B_56_2, poseidon2_perm_B_56_3, poseidon2_perm_B_57_0, poseidon2_perm_B_57_1, poseidon2_perm_B_57_2, poseidon2_perm_B_57_3, poseidon2_perm_B_58_0, poseidon2_perm_B_58_1, poseidon2_perm_B_58_2, poseidon2_perm_B_58_3, poseidon2_perm_B_59_0, poseidon2_perm_B_59_1, poseidon2_perm_B_59_2, poseidon2_perm_B_59_3, poseidon2_perm_B_5_0, poseidon2_perm_B_5_1, poseidon2_perm_B_5_2, poseidon2_perm_B_5_3, poseidon2_perm_B_6_0, poseidon2_perm_B_6_1, poseidon2_perm_B_6_2, poseidon2_perm_B_6_3, poseidon2_perm_B_7_0, poseidon2_perm_B_7_1, poseidon2_perm_B_7_2, poseidon2_perm_B_7_3, poseidon2_perm_B_8_0, poseidon2_perm_B_8_1, poseidon2_perm_B_8_2, poseidon2_perm_B_8_3, poseidon2_perm_B_9_0, poseidon2_perm_B_9_1, poseidon2_perm_B_9_2, poseidon2_perm_B_9_3, poseidon2_perm_EXT_LAYER_4, poseidon2_perm_EXT_LAYER_5, poseidon2_perm_EXT_LAYER_6, poseidon2_perm_EXT_LAYER_7, poseidon2_perm_T_0_4, poseidon2_perm_T_0_5, poseidon2_perm_T_0_6, poseidon2_perm_T_0_7, poseidon2_perm_T_1_4, poseidon2_perm_T_1_5, poseidon2_perm_T_1_6, poseidon2_perm_T_1_7, poseidon2_perm_T_2_4, poseidon2_perm_T_2_5, poseidon2_perm_T_2_6, poseidon2_perm_T_2_7, poseidon2_perm_T_3_4, poseidon2_perm_T_3_5, poseidon2_perm_T_3_6, poseidon2_perm_T_3_7, poseidon2_perm_T_60_4, poseidon2_perm_T_60_5, poseidon2_perm_T_60_6, poseidon2_perm_T_60_7, poseidon2_perm_T_61_4, poseidon2_perm_T_61_5, poseidon2_perm_T_61_6, poseidon2_perm_T_61_7, poseidon2_perm_T_62_4, poseidon2_perm_T_62_5, poseidon2_perm_T_62_6, poseidon2_perm_T_62_7, poseidon2_perm_T_63_4, poseidon2_perm_T_63_5, poseidon2_perm_T_63_6, poseidon2_perm_T_63_7, poseidon2_perm_a_0, poseidon2_perm_a_1, poseidon2_perm_a_2, poseidon2_perm_a_3, poseidon2_perm_b_0, poseidon2_perm_b_1, poseidon2_perm_b_2, poseidon2_perm_b_3, poseidon2_perm_sel, public_data_read_leaf_not_exists, public_data_read_low_leaf_hash, public_data_read_low_leaf_index, public_data_read_low_leaf_next_index, public_data_read_low_leaf_next_slot, public_data_read_low_leaf_slot, public_data_read_low_leaf_value, public_data_read_next_slot_inv, public_data_read_next_slot_is_nonzero, public_data_read_one, public_data_read_root, public_data_read_sel, public_data_read_slot, public_data_read_slot_low_leaf_slot_diff_inv, public_data_read_tree_height, public_data_read_value, range_check_dyn_diff, range_check_dyn_rng_chk_bits, range_check_dyn_rng_chk_pow_2, range_check_is_lte_u112, range_check_is_lte_u128, range_check_is_lte_u16, range_check_is_lte_u32, range_check_is_lte_u48, range_check_is_lte_u64, range_check_is_lte_u80, range_check_is_lte_u96, range_check_rng_chk_bits, range_check_sel, range_check_sel_r0_16_bit_rng_lookup, range_check_sel_r1_16_bit_rng_lookup, range_check_sel_r2_16_bit_rng_lookup, range_check_sel_r3_16_bit_rng_lookup, range_check_sel_r4_16_bit_rng_lookup, range_check_sel_r5_16_bit_rng_lookup, range_check_sel_r6_16_bit_rng_lookup, range_check_u16_r0, range_check_u16_r1, range_check_u16_r2, range_check_u16_r3, range_check_u16_r4, range_check_u16_r5, range_check_u16_r6, range_check_u16_r7, range_check_value, scalar_mul_bit, scalar_mul_bit_idx, scalar_mul_bit_radix, scalar_mul_end, scalar_mul_not_end, scalar_mul_point_inf, scalar_mul_point_x, scalar_mul_point_y, scalar_mul_res_inf, scalar_mul_res_x, scalar_mul_res_y, scalar_mul_scalar, scalar_mul_sel, scalar_mul_should_add, scalar_mul_start, scalar_mul_temp_inf, scalar_mul_temp_x, scalar_mul_temp_y, sha256_a, sha256_a_and_b, sha256_a_and_b_xor_a_and_c, sha256_a_and_c, sha256_a_rotr_13, sha256_a_rotr_2, sha256_a_rotr_22, sha256_a_rotr_2_xor_a_rotr_13, sha256_and_sel, sha256_b, sha256_b_and_c, sha256_c, sha256_ch, sha256_clk, sha256_computed_w_lhs, sha256_computed_w_rhs, sha256_d, sha256_e, sha256_e_and_f, sha256_e_rotr_11, sha256_e_rotr_25, sha256_e_rotr_6, sha256_e_rotr_6_xor_e_rotr_11, sha256_f, sha256_g, sha256_h, sha256_helper_w0, sha256_helper_w1, sha256_helper_w10, sha256_helper_w11, sha256_helper_w12, sha256_helper_w13, sha256_helper_w14, sha256_helper_w15, sha256_helper_w2, sha256_helper_w3, sha256_helper_w4, sha256_helper_w5, sha256_helper_w6, sha256_helper_w7, sha256_helper_w8, sha256_helper_w9, sha256_init_a, sha256_init_b, sha256_init_c, sha256_init_d, sha256_init_e, sha256_init_f, sha256_init_g, sha256_init_h, sha256_input_offset, sha256_is_input_round, sha256_latch, sha256_lhs_a_13, sha256_lhs_a_2, sha256_lhs_a_22, sha256_lhs_e_11, sha256_lhs_e_25, sha256_lhs_e_6, sha256_lhs_w_10, sha256_lhs_w_17, sha256_lhs_w_18, sha256_lhs_w_19, sha256_lhs_w_3, sha256_lhs_w_7, sha256_maj, sha256_next_a_lhs, sha256_next_a_rhs, sha256_next_e_lhs, sha256_next_e_rhs, sha256_not_e, sha256_not_e_and_g, sha256_output_a_lhs, sha256_output_a_rhs, sha256_output_b_lhs, sha256_output_b_rhs, sha256_output_c_lhs, sha256_output_c_rhs, sha256_output_d_lhs, sha256_output_d_rhs, sha256_output_e_lhs, sha256_output_e_rhs, sha256_output_f_lhs, sha256_output_f_rhs, sha256_output_g_lhs, sha256_output_g_rhs, sha256_output_h_lhs, sha256_output_h_rhs, sha256_output_offset, sha256_perform_round, sha256_rhs_a_13, sha256_rhs_a_2, sha256_rhs_a_22, sha256_rhs_e_11, sha256_rhs_e_25, sha256_rhs_e_6, sha256_rhs_w_10, sha256_rhs_w_17, sha256_rhs_w_18, sha256_rhs_w_19, sha256_rhs_w_3, sha256_rhs_w_7, sha256_round_constant, sha256_round_count, sha256_rounds_remaining, sha256_rounds_remaining_inv, sha256_s_0, sha256_s_1, sha256_sel, sha256_start, sha256_state_offset, sha256_w, sha256_w_15_rotr_18, sha256_w_15_rotr_7, sha256_w_15_rotr_7_xor_w_15_rotr_18, sha256_w_15_rshift_3, sha256_w_2_rotr_17, sha256_w_2_rotr_17_xor_w_2_rotr_19, sha256_w_2_rotr_19, sha256_w_2_rshift_10, sha256_w_s_0, sha256_w_s_1, sha256_xor_sel, to_radix_acc, to_radix_acc_under_p, to_radix_end, to_radix_exponent, to_radix_found, to_radix_is_unsafe_limb, to_radix_limb, to_radix_limb_eq_p, to_radix_limb_index, to_radix_limb_lt_p, to_radix_limb_p_diff, to_radix_limb_radix_diff, to_radix_not_end, to_radix_not_padding_limb, to_radix_p_limb, to_radix_radix, to_radix_rem_inverse, to_radix_safe_limbs, to_radix_safety_diff_inverse, to_radix_sel, to_radix_start, to_radix_value, update_check_address, update_check_block_number, update_check_block_number_bit_size, update_check_block_number_is_lt_block_of_change, update_check_block_of_change_subtraction, update_check_current_class_id, update_check_deployer_protocol_contract_address, update_check_hash_not_zero, update_check_original_class_id, update_check_public_data_tree_root, update_check_public_leaf_index_domain_separator, update_check_sel, update_check_shared_mutable_hash_slot, update_check_shared_mutable_leaf_slot, update_check_shared_mutable_slot, update_check_update_block_of_change, update_check_update_hash, update_check_update_hash_inv, update_check_update_hi_metadata, update_check_update_hi_metadata_bit_size, update_check_update_post_class_id_is_zero, update_check_update_post_class_inv, update_check_update_pre_class_id_is_zero, update_check_update_pre_class_inv, update_check_update_preimage_metadata, update_check_update_preimage_post_class_id, update_check_update_preimage_pre_class_id, update_check_updated_class_ids_slot, lookup_poseidon2_hash_poseidon2_perm_counts, lookup_to_radix_limb_range_counts, lookup_to_radix_limb_less_than_radix_range_counts, lookup_to_radix_fetch_safe_limbs_counts, lookup_to_radix_fetch_p_limb_counts, lookup_to_radix_limb_p_diff_range_counts, lookup_scalar_mul_to_radix_counts, lookup_scalar_mul_double_counts, lookup_scalar_mul_add_counts, lookup_address_derivation_salted_initialization_hash_poseidon2_0_counts, lookup_address_derivation_salted_initialization_hash_poseidon2_1_counts, lookup_address_derivation_partial_address_poseidon2_counts, lookup_address_derivation_public_keys_hash_poseidon2_0_counts, lookup_address_derivation_public_keys_hash_poseidon2_1_counts, lookup_address_derivation_public_keys_hash_poseidon2_2_counts, lookup_address_derivation_public_keys_hash_poseidon2_3_counts, lookup_address_derivation_public_keys_hash_poseidon2_4_counts, lookup_address_derivation_preaddress_poseidon2_counts, lookup_address_derivation_preaddress_scalar_mul_counts, lookup_address_derivation_address_ecadd_counts, lookup_bc_decomposition_bytes_are_bytes_counts, lookup_bc_decomposition_abs_diff_is_u16_counts, lookup_bc_hashing_get_packed_field_counts, lookup_bc_hashing_iv_is_len_counts, lookup_bc_hashing_poseidon2_hash_counts, lookup_range_check_dyn_rng_chk_pow_2_counts, lookup_range_check_dyn_diff_is_u16_counts, lookup_range_check_r0_is_u16_counts, lookup_range_check_r1_is_u16_counts, lookup_range_check_r2_is_u16_counts, lookup_range_check_r3_is_u16_counts, lookup_range_check_r4_is_u16_counts, lookup_range_check_r5_is_u16_counts, lookup_range_check_r6_is_u16_counts, lookup_range_check_r7_is_u16_counts, lookup_merkle_check_merkle_poseidon2_read_counts, lookup_merkle_check_merkle_poseidon2_write_counts, lookup_ff_gt_a_lo_range_counts, lookup_ff_gt_a_hi_range_counts, lookup_public_data_read_low_leaf_poseidon2_0_counts, lookup_public_data_read_low_leaf_poseidon2_1_counts, lookup_public_data_read_low_leaf_membership_counts, lookup_public_data_read_low_leaf_slot_validation_counts, lookup_public_data_read_low_leaf_next_slot_validation_counts, lookup_update_check_shared_mutable_slot_poseidon2_counts, lookup_update_check_shared_mutable_leaf_slot_poseidon2_counts, lookup_update_check_update_hash_public_data_read_counts, lookup_update_check_update_hash_poseidon2_counts, lookup_update_check_update_hi_metadata_range_counts, lookup_update_check_update_lo_metadata_range_counts, lookup_update_check_block_of_change_cmp_range_counts, lookup_nullifier_check_low_leaf_poseidon2_counts, lookup_nullifier_check_updated_low_leaf_poseidon2_counts, lookup_nullifier_check_low_leaf_merkle_check_counts, lookup_nullifier_check_low_leaf_nullifier_validation_counts, lookup_nullifier_check_low_leaf_next_nullifier_validation_counts, lookup_nullifier_check_new_leaf_poseidon2_counts, lookup_nullifier_check_new_leaf_merkle_check_counts, lookup_bc_retrieval_silo_deployment_nullifier_poseidon2_counts, lookup_bc_retrieval_deployment_nullifier_read_counts, lookup_bc_retrieval_address_derivation_counts, lookup_bc_retrieval_update_check_counts, lookup_bc_retrieval_class_id_derivation_counts, lookup_bc_retrieval_bytecode_hash_is_correct_counts, lookup_instr_fetching_pc_abs_diff_positive_counts, lookup_instr_fetching_instr_abs_diff_positive_counts, lookup_instr_fetching_tag_value_validation_counts, lookup_instr_fetching_bytecode_size_from_bc_dec_counts, lookup_instr_fetching_bytes_from_bc_dec_counts, lookup_instr_fetching_wire_instruction_info_counts, lookup_class_id_derivation_class_id_poseidon2_0_counts, lookup_class_id_derivation_class_id_poseidon2_1_counts, lookup_bitwise_integral_tag_length_counts, lookup_bitwise_byte_operations_counts, lookup_sha256_round_constant_counts -#define AVM2_DERIVED_WITNESS_ENTITIES lookup_poseidon2_hash_poseidon2_perm_inv, lookup_to_radix_limb_range_inv, lookup_to_radix_limb_less_than_radix_range_inv, lookup_to_radix_fetch_safe_limbs_inv, lookup_to_radix_fetch_p_limb_inv, lookup_to_radix_limb_p_diff_range_inv, lookup_scalar_mul_to_radix_inv, lookup_scalar_mul_double_inv, lookup_scalar_mul_add_inv, lookup_address_derivation_salted_initialization_hash_poseidon2_0_inv, lookup_address_derivation_salted_initialization_hash_poseidon2_1_inv, lookup_address_derivation_partial_address_poseidon2_inv, lookup_address_derivation_public_keys_hash_poseidon2_0_inv, lookup_address_derivation_public_keys_hash_poseidon2_1_inv, lookup_address_derivation_public_keys_hash_poseidon2_2_inv, lookup_address_derivation_public_keys_hash_poseidon2_3_inv, lookup_address_derivation_public_keys_hash_poseidon2_4_inv, lookup_address_derivation_preaddress_poseidon2_inv, lookup_address_derivation_preaddress_scalar_mul_inv, lookup_address_derivation_address_ecadd_inv, lookup_bc_decomposition_bytes_are_bytes_inv, lookup_bc_decomposition_abs_diff_is_u16_inv, lookup_bc_hashing_get_packed_field_inv, lookup_bc_hashing_iv_is_len_inv, lookup_bc_hashing_poseidon2_hash_inv, lookup_range_check_dyn_rng_chk_pow_2_inv, lookup_range_check_dyn_diff_is_u16_inv, lookup_range_check_r0_is_u16_inv, lookup_range_check_r1_is_u16_inv, lookup_range_check_r2_is_u16_inv, lookup_range_check_r3_is_u16_inv, lookup_range_check_r4_is_u16_inv, lookup_range_check_r5_is_u16_inv, lookup_range_check_r6_is_u16_inv, lookup_range_check_r7_is_u16_inv, lookup_merkle_check_merkle_poseidon2_read_inv, lookup_merkle_check_merkle_poseidon2_write_inv, lookup_ff_gt_a_lo_range_inv, lookup_ff_gt_a_hi_range_inv, lookup_public_data_read_low_leaf_poseidon2_0_inv, lookup_public_data_read_low_leaf_poseidon2_1_inv, lookup_public_data_read_low_leaf_membership_inv, lookup_public_data_read_low_leaf_slot_validation_inv, lookup_public_data_read_low_leaf_next_slot_validation_inv, lookup_update_check_shared_mutable_slot_poseidon2_inv, lookup_update_check_shared_mutable_leaf_slot_poseidon2_inv, lookup_update_check_update_hash_public_data_read_inv, lookup_update_check_update_hash_poseidon2_inv, lookup_update_check_update_hi_metadata_range_inv, lookup_update_check_update_lo_metadata_range_inv, lookup_update_check_block_of_change_cmp_range_inv, lookup_nullifier_check_low_leaf_poseidon2_inv, lookup_nullifier_check_updated_low_leaf_poseidon2_inv, lookup_nullifier_check_low_leaf_merkle_check_inv, lookup_nullifier_check_low_leaf_nullifier_validation_inv, lookup_nullifier_check_low_leaf_next_nullifier_validation_inv, lookup_nullifier_check_new_leaf_poseidon2_inv, lookup_nullifier_check_new_leaf_merkle_check_inv, lookup_bc_retrieval_silo_deployment_nullifier_poseidon2_inv, lookup_bc_retrieval_deployment_nullifier_read_inv, lookup_bc_retrieval_address_derivation_inv, lookup_bc_retrieval_update_check_inv, lookup_bc_retrieval_class_id_derivation_inv, lookup_bc_retrieval_bytecode_hash_is_correct_inv, lookup_instr_fetching_pc_abs_diff_positive_inv, lookup_instr_fetching_instr_abs_diff_positive_inv, lookup_instr_fetching_tag_value_validation_inv, lookup_instr_fetching_bytecode_size_from_bc_dec_inv, lookup_instr_fetching_bytes_from_bc_dec_inv, lookup_instr_fetching_wire_instruction_info_inv, lookup_class_id_derivation_class_id_poseidon2_0_inv, lookup_class_id_derivation_class_id_poseidon2_1_inv, lookup_bitwise_integral_tag_length_inv, lookup_bitwise_byte_operations_inv, lookup_sha256_round_constant_inv -#define AVM2_SHIFTED_ENTITIES bc_decomposition_bytes_shift, bc_decomposition_bytes_pc_plus_1_shift, bc_decomposition_bytes_pc_plus_10_shift, bc_decomposition_bytes_pc_plus_11_shift, bc_decomposition_bytes_pc_plus_12_shift, bc_decomposition_bytes_pc_plus_13_shift, bc_decomposition_bytes_pc_plus_14_shift, bc_decomposition_bytes_pc_plus_15_shift, bc_decomposition_bytes_pc_plus_16_shift, bc_decomposition_bytes_pc_plus_17_shift, bc_decomposition_bytes_pc_plus_18_shift, bc_decomposition_bytes_pc_plus_19_shift, bc_decomposition_bytes_pc_plus_2_shift, bc_decomposition_bytes_pc_plus_20_shift, bc_decomposition_bytes_pc_plus_21_shift, bc_decomposition_bytes_pc_plus_22_shift, bc_decomposition_bytes_pc_plus_23_shift, bc_decomposition_bytes_pc_plus_24_shift, bc_decomposition_bytes_pc_plus_25_shift, bc_decomposition_bytes_pc_plus_26_shift, bc_decomposition_bytes_pc_plus_27_shift, bc_decomposition_bytes_pc_plus_28_shift, bc_decomposition_bytes_pc_plus_29_shift, bc_decomposition_bytes_pc_plus_3_shift, bc_decomposition_bytes_pc_plus_30_shift, bc_decomposition_bytes_pc_plus_31_shift, bc_decomposition_bytes_pc_plus_32_shift, bc_decomposition_bytes_pc_plus_33_shift, bc_decomposition_bytes_pc_plus_34_shift, bc_decomposition_bytes_pc_plus_35_shift, bc_decomposition_bytes_pc_plus_4_shift, bc_decomposition_bytes_pc_plus_5_shift, bc_decomposition_bytes_pc_plus_6_shift, bc_decomposition_bytes_pc_plus_7_shift, bc_decomposition_bytes_pc_plus_8_shift, bc_decomposition_bytes_pc_plus_9_shift, bc_decomposition_bytes_remaining_shift, bc_decomposition_id_shift, bc_decomposition_pc_shift, bc_decomposition_sel_shift, bc_hashing_bytecode_id_shift, bc_hashing_incremental_hash_shift, bc_hashing_pc_index_shift, bc_hashing_sel_shift, bc_hashing_start_shift, bitwise_acc_ia_shift, bitwise_acc_ib_shift, bitwise_acc_ic_shift, bitwise_ctr_shift, bitwise_op_id_shift, execution_sel_shift, ff_gt_a_hi_shift, ff_gt_a_lo_shift, ff_gt_b_hi_shift, ff_gt_b_lo_shift, ff_gt_cmp_rng_ctr_shift, ff_gt_p_sub_a_hi_shift, ff_gt_p_sub_a_lo_shift, ff_gt_p_sub_b_hi_shift, ff_gt_p_sub_b_lo_shift, ff_gt_sel_shift, ff_gt_sel_gt_shift, merkle_check_index_shift, merkle_check_path_len_shift, merkle_check_read_node_shift, merkle_check_read_root_shift, merkle_check_sel_shift, merkle_check_start_shift, merkle_check_write_shift, merkle_check_write_node_shift, merkle_check_write_root_shift, poseidon2_hash_a_0_shift, poseidon2_hash_a_1_shift, poseidon2_hash_a_2_shift, poseidon2_hash_a_3_shift, poseidon2_hash_input_0_shift, poseidon2_hash_input_1_shift, poseidon2_hash_input_2_shift, poseidon2_hash_num_perm_rounds_rem_shift, poseidon2_hash_output_shift, poseidon2_hash_sel_shift, poseidon2_hash_start_shift, scalar_mul_bit_idx_shift, scalar_mul_point_inf_shift, scalar_mul_point_x_shift, scalar_mul_point_y_shift, scalar_mul_res_inf_shift, scalar_mul_res_x_shift, scalar_mul_res_y_shift, scalar_mul_scalar_shift, scalar_mul_sel_shift, scalar_mul_start_shift, scalar_mul_temp_inf_shift, scalar_mul_temp_x_shift, scalar_mul_temp_y_shift, sha256_a_shift, sha256_b_shift, sha256_c_shift, sha256_d_shift, sha256_e_shift, sha256_f_shift, sha256_g_shift, sha256_h_shift, sha256_helper_w0_shift, sha256_helper_w1_shift, sha256_helper_w10_shift, sha256_helper_w11_shift, sha256_helper_w12_shift, sha256_helper_w13_shift, sha256_helper_w14_shift, sha256_helper_w15_shift, sha256_helper_w2_shift, sha256_helper_w3_shift, sha256_helper_w4_shift, sha256_helper_w5_shift, sha256_helper_w6_shift, sha256_helper_w7_shift, sha256_helper_w8_shift, sha256_helper_w9_shift, sha256_rounds_remaining_shift, sha256_sel_shift, sha256_start_shift, to_radix_acc_shift, to_radix_acc_under_p_shift, to_radix_exponent_shift, to_radix_limb_shift, to_radix_limb_eq_p_shift, to_radix_limb_index_shift, to_radix_limb_lt_p_shift, to_radix_not_padding_limb_shift, to_radix_radix_shift, to_radix_safe_limbs_shift, to_radix_sel_shift, to_radix_start_shift, to_radix_value_shift -#define AVM2_TO_BE_SHIFTED(e) e.bc_decomposition_bytes, e.bc_decomposition_bytes_pc_plus_1, e.bc_decomposition_bytes_pc_plus_10, e.bc_decomposition_bytes_pc_plus_11, e.bc_decomposition_bytes_pc_plus_12, e.bc_decomposition_bytes_pc_plus_13, e.bc_decomposition_bytes_pc_plus_14, e.bc_decomposition_bytes_pc_plus_15, e.bc_decomposition_bytes_pc_plus_16, e.bc_decomposition_bytes_pc_plus_17, e.bc_decomposition_bytes_pc_plus_18, e.bc_decomposition_bytes_pc_plus_19, e.bc_decomposition_bytes_pc_plus_2, e.bc_decomposition_bytes_pc_plus_20, e.bc_decomposition_bytes_pc_plus_21, e.bc_decomposition_bytes_pc_plus_22, e.bc_decomposition_bytes_pc_plus_23, e.bc_decomposition_bytes_pc_plus_24, e.bc_decomposition_bytes_pc_plus_25, e.bc_decomposition_bytes_pc_plus_26, e.bc_decomposition_bytes_pc_plus_27, e.bc_decomposition_bytes_pc_plus_28, e.bc_decomposition_bytes_pc_plus_29, e.bc_decomposition_bytes_pc_plus_3, e.bc_decomposition_bytes_pc_plus_30, e.bc_decomposition_bytes_pc_plus_31, e.bc_decomposition_bytes_pc_plus_32, e.bc_decomposition_bytes_pc_plus_33, e.bc_decomposition_bytes_pc_plus_34, e.bc_decomposition_bytes_pc_plus_35, e.bc_decomposition_bytes_pc_plus_4, e.bc_decomposition_bytes_pc_plus_5, e.bc_decomposition_bytes_pc_plus_6, e.bc_decomposition_bytes_pc_plus_7, e.bc_decomposition_bytes_pc_plus_8, e.bc_decomposition_bytes_pc_plus_9, e.bc_decomposition_bytes_remaining, e.bc_decomposition_id, e.bc_decomposition_pc, e.bc_decomposition_sel, e.bc_hashing_bytecode_id, e.bc_hashing_incremental_hash, e.bc_hashing_pc_index, e.bc_hashing_sel, e.bc_hashing_start, e.bitwise_acc_ia, e.bitwise_acc_ib, e.bitwise_acc_ic, e.bitwise_ctr, e.bitwise_op_id, e.execution_sel, e.ff_gt_a_hi, e.ff_gt_a_lo, e.ff_gt_b_hi, e.ff_gt_b_lo, e.ff_gt_cmp_rng_ctr, e.ff_gt_p_sub_a_hi, e.ff_gt_p_sub_a_lo, e.ff_gt_p_sub_b_hi, e.ff_gt_p_sub_b_lo, e.ff_gt_sel, e.ff_gt_sel_gt, e.merkle_check_index, e.merkle_check_path_len, e.merkle_check_read_node, e.merkle_check_read_root, e.merkle_check_sel, e.merkle_check_start, e.merkle_check_write, e.merkle_check_write_node, e.merkle_check_write_root, e.poseidon2_hash_a_0, e.poseidon2_hash_a_1, e.poseidon2_hash_a_2, e.poseidon2_hash_a_3, e.poseidon2_hash_input_0, e.poseidon2_hash_input_1, e.poseidon2_hash_input_2, e.poseidon2_hash_num_perm_rounds_rem, e.poseidon2_hash_output, e.poseidon2_hash_sel, e.poseidon2_hash_start, e.scalar_mul_bit_idx, e.scalar_mul_point_inf, e.scalar_mul_point_x, e.scalar_mul_point_y, e.scalar_mul_res_inf, e.scalar_mul_res_x, e.scalar_mul_res_y, e.scalar_mul_scalar, e.scalar_mul_sel, e.scalar_mul_start, e.scalar_mul_temp_inf, e.scalar_mul_temp_x, e.scalar_mul_temp_y, e.sha256_a, e.sha256_b, e.sha256_c, e.sha256_d, e.sha256_e, e.sha256_f, e.sha256_g, e.sha256_h, e.sha256_helper_w0, e.sha256_helper_w1, e.sha256_helper_w10, e.sha256_helper_w11, e.sha256_helper_w12, e.sha256_helper_w13, e.sha256_helper_w14, e.sha256_helper_w15, e.sha256_helper_w2, e.sha256_helper_w3, e.sha256_helper_w4, e.sha256_helper_w5, e.sha256_helper_w6, e.sha256_helper_w7, e.sha256_helper_w8, e.sha256_helper_w9, e.sha256_rounds_remaining, e.sha256_sel, e.sha256_start, e.to_radix_acc, e.to_radix_acc_under_p, e.to_radix_exponent, e.to_radix_limb, e.to_radix_limb_eq_p, e.to_radix_limb_index, e.to_radix_limb_lt_p, e.to_radix_not_padding_limb, e.to_radix_radix, e.to_radix_safe_limbs, e.to_radix_sel, e.to_radix_start, e.to_radix_value -#define AVM2_ALL_ENTITIES AVM2_PRECOMPUTED_ENTITIES, AVM2_WIRE_ENTITIES, AVM2_DERIVED_WITNESS_ENTITIES, AVM2_SHIFTED_ENTITIES +#define AVM2_PRECOMPUTED_ENTITIES_E(e) e precomputed_bitwise_input_a, e precomputed_bitwise_input_b, e precomputed_bitwise_op_id, e precomputed_bitwise_output, e precomputed_clk, e precomputed_exec_opcode, e precomputed_first_row, e precomputed_instr_size, e precomputed_integral_tag_length, e precomputed_opcode_out_of_range, e precomputed_p_decomposition_limb, e precomputed_p_decomposition_limb_index, e precomputed_p_decomposition_radix, e precomputed_power_of_2, e precomputed_sel_bitwise, e precomputed_sel_has_tag, e precomputed_sel_integral_tag, e precomputed_sel_mem_tag_out_of_range, e precomputed_sel_op_dc_0, e precomputed_sel_op_dc_1, e precomputed_sel_op_dc_10, e precomputed_sel_op_dc_11, e precomputed_sel_op_dc_12, e precomputed_sel_op_dc_13, e precomputed_sel_op_dc_14, e precomputed_sel_op_dc_15, e precomputed_sel_op_dc_16, e precomputed_sel_op_dc_17, e precomputed_sel_op_dc_2, e precomputed_sel_op_dc_3, e precomputed_sel_op_dc_4, e precomputed_sel_op_dc_5, e precomputed_sel_op_dc_6, e precomputed_sel_op_dc_7, e precomputed_sel_op_dc_8, e precomputed_sel_op_dc_9, e precomputed_sel_p_decomposition, e precomputed_sel_range_16, e precomputed_sel_range_8, e precomputed_sel_sha256_compression, e precomputed_sel_tag_is_op2, e precomputed_sel_to_radix_safe_limbs, e precomputed_sha256_compression_round_constant, e precomputed_to_radix_safe_limbs, e precomputed_zero +#define AVM2_WIRE_ENTITIES_E(e) e execution_input, e address_derivation_address, e address_derivation_address_y, e address_derivation_class_id, e address_derivation_deployer_addr, e address_derivation_g1_x, e address_derivation_g1_y, e address_derivation_incoming_viewing_key_x, e address_derivation_incoming_viewing_key_y, e address_derivation_init_hash, e address_derivation_nullifier_key_x, e address_derivation_nullifier_key_y, e address_derivation_outgoing_viewing_key_x, e address_derivation_outgoing_viewing_key_y, e address_derivation_partial_address, e address_derivation_partial_address_domain_separator, e address_derivation_preaddress, e address_derivation_preaddress_domain_separator, e address_derivation_preaddress_public_key_x, e address_derivation_preaddress_public_key_y, e address_derivation_public_keys_hash, e address_derivation_public_keys_hash_domain_separator, e address_derivation_salt, e address_derivation_salted_init_hash, e address_derivation_sel, e address_derivation_tagging_key_x, e address_derivation_tagging_key_y, e alu_ia, e alu_ib, e alu_ic, e alu_op, e alu_sel_op_add, e bc_decomposition_abs_diff, e bc_decomposition_bytes, e bc_decomposition_bytes_pc_plus_1, e bc_decomposition_bytes_pc_plus_10, e bc_decomposition_bytes_pc_plus_11, e bc_decomposition_bytes_pc_plus_12, e bc_decomposition_bytes_pc_plus_13, e bc_decomposition_bytes_pc_plus_14, e bc_decomposition_bytes_pc_plus_15, e bc_decomposition_bytes_pc_plus_16, e bc_decomposition_bytes_pc_plus_17, e bc_decomposition_bytes_pc_plus_18, e bc_decomposition_bytes_pc_plus_19, e bc_decomposition_bytes_pc_plus_2, e bc_decomposition_bytes_pc_plus_20, e bc_decomposition_bytes_pc_plus_21, e bc_decomposition_bytes_pc_plus_22, e bc_decomposition_bytes_pc_plus_23, e bc_decomposition_bytes_pc_plus_24, e bc_decomposition_bytes_pc_plus_25, e bc_decomposition_bytes_pc_plus_26, e bc_decomposition_bytes_pc_plus_27, e bc_decomposition_bytes_pc_plus_28, e bc_decomposition_bytes_pc_plus_29, e bc_decomposition_bytes_pc_plus_3, e bc_decomposition_bytes_pc_plus_30, e bc_decomposition_bytes_pc_plus_31, e bc_decomposition_bytes_pc_plus_32, e bc_decomposition_bytes_pc_plus_33, e bc_decomposition_bytes_pc_plus_34, e bc_decomposition_bytes_pc_plus_35, e bc_decomposition_bytes_pc_plus_36, e bc_decomposition_bytes_pc_plus_4, e bc_decomposition_bytes_pc_plus_5, e bc_decomposition_bytes_pc_plus_6, e bc_decomposition_bytes_pc_plus_7, e bc_decomposition_bytes_pc_plus_8, e bc_decomposition_bytes_pc_plus_9, e bc_decomposition_bytes_rem_inv, e bc_decomposition_bytes_rem_min_one_inv, e bc_decomposition_bytes_remaining, e bc_decomposition_bytes_to_read, e bc_decomposition_id, e bc_decomposition_last_of_contract, e bc_decomposition_packed_field, e bc_decomposition_pc, e bc_decomposition_sel, e bc_decomposition_sel_overflow_correction_needed, e bc_decomposition_sel_packed, e bc_hashing_bytecode_id, e bc_hashing_incremental_hash, e bc_hashing_latch, e bc_hashing_output_hash, e bc_hashing_packed_field, e bc_hashing_pc_index, e bc_hashing_sel, e bc_hashing_start, e bc_retrieval_address, e bc_retrieval_artifact_hash, e bc_retrieval_block_number, e bc_retrieval_bytecode_id, e bc_retrieval_current_class_id, e bc_retrieval_deployer_addr, e bc_retrieval_deployer_protocol_contract_address, e bc_retrieval_err, e bc_retrieval_incoming_viewing_key_x, e bc_retrieval_incoming_viewing_key_y, e bc_retrieval_init_hash, e bc_retrieval_nullifier_exists, e bc_retrieval_nullifier_key_x, e bc_retrieval_nullifier_key_y, e bc_retrieval_nullifier_tree_root, e bc_retrieval_original_class_id, e bc_retrieval_outer_nullifier_domain_separator, e bc_retrieval_outgoing_viewing_key_x, e bc_retrieval_outgoing_viewing_key_y, e bc_retrieval_private_function_root, e bc_retrieval_public_bytecode_commitment, e bc_retrieval_public_data_tree_root, e bc_retrieval_salt, e bc_retrieval_sel, e bc_retrieval_siloed_address, e bc_retrieval_tagging_key_x, e bc_retrieval_tagging_key_y, e bitwise_acc_ia, e bitwise_acc_ib, e bitwise_acc_ic, e bitwise_ctr, e bitwise_ctr_inv, e bitwise_ctr_min_one_inv, e bitwise_ia_byte, e bitwise_ib_byte, e bitwise_ic_byte, e bitwise_last, e bitwise_op_id, e bitwise_sel, e bitwise_start, e bitwise_tag, e class_id_derivation_artifact_hash, e class_id_derivation_class_id, e class_id_derivation_private_function_root, e class_id_derivation_public_bytecode_commitment, e class_id_derivation_sel, e class_id_derivation_temp_constant_for_lookup, e context_stack_context_id, e context_stack_contract_address, e context_stack_is_static, e context_stack_msg_sender, e context_stack_parent_calldata_offset_addr, e context_stack_parent_calldata_size_addr, e context_stack_pc, e ecc_add_op, e ecc_double_op, e ecc_inv_2_p_y, e ecc_inv_x_diff, e ecc_inv_y_diff, e ecc_lambda, e ecc_p_is_inf, e ecc_p_x, e ecc_p_y, e ecc_q_is_inf, e ecc_q_x, e ecc_q_y, e ecc_r_is_inf, e ecc_r_x, e ecc_r_y, e ecc_result_infinity, e ecc_sel, e ecc_x_match, e ecc_y_match, e execution_addressing_error_idx, e execution_addressing_error_kind, e execution_base_address_tag, e execution_base_address_val, e execution_bytecode_id, e execution_clk, e execution_context_id, e execution_contract_address, e execution_ex_opcode, e execution_indirect, e execution_is_static, e execution_last, e execution_last_child_returndata_offset_addr, e execution_last_child_returndata_size_addr, e execution_last_child_success, e execution_msg_sender, e execution_op1, e execution_op1_after_relative, e execution_op2, e execution_op2_after_relative, e execution_op3, e execution_op3_after_relative, e execution_op4, e execution_op4_after_relative, e execution_parent_calldata_offset_addr, e execution_parent_calldata_size_addr, e execution_pc, e execution_rop1, e execution_rop2, e execution_rop3, e execution_rop4, e execution_sel, e execution_sel_addressing_error, e execution_sel_op1_is_address, e execution_sel_op2_is_address, e execution_sel_op3_is_address, e execution_sel_op4_is_address, e ff_gt_a, e ff_gt_a_hi, e ff_gt_a_lo, e ff_gt_b, e ff_gt_b_hi, e ff_gt_b_lo, e ff_gt_borrow, e ff_gt_cmp_rng_ctr, e ff_gt_cmp_rng_ctr_inv, e ff_gt_constant_128, e ff_gt_p_a_borrow, e ff_gt_p_b_borrow, e ff_gt_p_sub_a_hi, e ff_gt_p_sub_a_lo, e ff_gt_p_sub_b_hi, e ff_gt_p_sub_b_lo, e ff_gt_res_hi, e ff_gt_res_lo, e ff_gt_result, e ff_gt_sel, e ff_gt_sel_gt, e ff_gt_sel_shift_rng, e instr_fetching_bd0, e instr_fetching_bd1, e instr_fetching_bd10, e instr_fetching_bd11, e instr_fetching_bd12, e instr_fetching_bd13, e instr_fetching_bd14, e instr_fetching_bd15, e instr_fetching_bd16, e instr_fetching_bd17, e instr_fetching_bd18, e instr_fetching_bd19, e instr_fetching_bd2, e instr_fetching_bd20, e instr_fetching_bd21, e instr_fetching_bd22, e instr_fetching_bd23, e instr_fetching_bd24, e instr_fetching_bd25, e instr_fetching_bd26, e instr_fetching_bd27, e instr_fetching_bd28, e instr_fetching_bd29, e instr_fetching_bd3, e instr_fetching_bd30, e instr_fetching_bd31, e instr_fetching_bd32, e instr_fetching_bd33, e instr_fetching_bd34, e instr_fetching_bd35, e instr_fetching_bd36, e instr_fetching_bd4, e instr_fetching_bd5, e instr_fetching_bd6, e instr_fetching_bd7, e instr_fetching_bd8, e instr_fetching_bd9, e instr_fetching_bytecode_id, e instr_fetching_bytecode_size, e instr_fetching_bytes_to_read, e instr_fetching_exec_opcode, e instr_fetching_indirect, e instr_fetching_instr_abs_diff, e instr_fetching_instr_out_of_range, e instr_fetching_instr_size, e instr_fetching_op1, e instr_fetching_op2, e instr_fetching_op3, e instr_fetching_op4, e instr_fetching_op5, e instr_fetching_op6, e instr_fetching_op7, e instr_fetching_opcode_out_of_range, e instr_fetching_parsing_err, e instr_fetching_pc, e instr_fetching_pc_abs_diff, e instr_fetching_pc_out_of_range, e instr_fetching_pc_size_in_bits, e instr_fetching_sel, e instr_fetching_sel_has_tag, e instr_fetching_sel_op_dc_0, e instr_fetching_sel_op_dc_1, e instr_fetching_sel_op_dc_10, e instr_fetching_sel_op_dc_11, e instr_fetching_sel_op_dc_12, e instr_fetching_sel_op_dc_13, e instr_fetching_sel_op_dc_14, e instr_fetching_sel_op_dc_15, e instr_fetching_sel_op_dc_16, e instr_fetching_sel_op_dc_17, e instr_fetching_sel_op_dc_2, e instr_fetching_sel_op_dc_3, e instr_fetching_sel_op_dc_4, e instr_fetching_sel_op_dc_5, e instr_fetching_sel_op_dc_6, e instr_fetching_sel_op_dc_7, e instr_fetching_sel_op_dc_8, e instr_fetching_sel_op_dc_9, e instr_fetching_sel_pc_in_range, e instr_fetching_sel_tag_is_op2, e instr_fetching_tag_out_of_range, e instr_fetching_tag_value, e memory_address, e memory_rw, e memory_sel, e memory_space_id, e memory_tag, e memory_value, e merkle_check_constant_2, e merkle_check_end, e merkle_check_index, e merkle_check_index_is_even, e merkle_check_path_len, e merkle_check_read_left_node, e merkle_check_read_node, e merkle_check_read_output_hash, e merkle_check_read_right_node, e merkle_check_read_root, e merkle_check_remaining_path_len_inv, e merkle_check_sel, e merkle_check_sibling, e merkle_check_start, e merkle_check_write, e merkle_check_write_left_node, e merkle_check_write_node, e merkle_check_write_output_hash, e merkle_check_write_right_node, e merkle_check_write_root, e nullifier_check_exists, e nullifier_check_intermediate_root, e nullifier_check_leaf_not_exists, e nullifier_check_low_leaf_hash, e nullifier_check_low_leaf_index, e nullifier_check_low_leaf_next_index, e nullifier_check_low_leaf_next_nullifier, e nullifier_check_low_leaf_nullifier, e nullifier_check_new_leaf_hash, e nullifier_check_next_nullifier_inv, e nullifier_check_next_nullifier_is_nonzero, e nullifier_check_nullifier, e nullifier_check_nullifier_low_leaf_nullifier_diff_inv, e nullifier_check_one, e nullifier_check_root, e nullifier_check_sel, e nullifier_check_tree_height, e nullifier_check_tree_size_before_write, e nullifier_check_updated_low_leaf_hash, e nullifier_check_write, e nullifier_check_write_low_leaf_next_index, e nullifier_check_write_low_leaf_next_nullifier, e nullifier_check_write_root, e poseidon2_hash_a_0, e poseidon2_hash_a_1, e poseidon2_hash_a_2, e poseidon2_hash_a_3, e poseidon2_hash_b_0, e poseidon2_hash_b_1, e poseidon2_hash_b_2, e poseidon2_hash_b_3, e poseidon2_hash_end, e poseidon2_hash_input_0, e poseidon2_hash_input_1, e poseidon2_hash_input_2, e poseidon2_hash_input_len, e poseidon2_hash_num_perm_rounds_rem, e poseidon2_hash_num_perm_rounds_rem_inv, e poseidon2_hash_output, e poseidon2_hash_padding, e poseidon2_hash_sel, e poseidon2_hash_start, e poseidon2_perm_B_10_0, e poseidon2_perm_B_10_1, e poseidon2_perm_B_10_2, e poseidon2_perm_B_10_3, e poseidon2_perm_B_11_0, e poseidon2_perm_B_11_1, e poseidon2_perm_B_11_2, e poseidon2_perm_B_11_3, e poseidon2_perm_B_12_0, e poseidon2_perm_B_12_1, e poseidon2_perm_B_12_2, e poseidon2_perm_B_12_3, e poseidon2_perm_B_13_0, e poseidon2_perm_B_13_1, e poseidon2_perm_B_13_2, e poseidon2_perm_B_13_3, e poseidon2_perm_B_14_0, e poseidon2_perm_B_14_1, e poseidon2_perm_B_14_2, e poseidon2_perm_B_14_3, e poseidon2_perm_B_15_0, e poseidon2_perm_B_15_1, e poseidon2_perm_B_15_2, e poseidon2_perm_B_15_3, e poseidon2_perm_B_16_0, e poseidon2_perm_B_16_1, e poseidon2_perm_B_16_2, e poseidon2_perm_B_16_3, e poseidon2_perm_B_17_0, e poseidon2_perm_B_17_1, e poseidon2_perm_B_17_2, e poseidon2_perm_B_17_3, e poseidon2_perm_B_18_0, e poseidon2_perm_B_18_1, e poseidon2_perm_B_18_2, e poseidon2_perm_B_18_3, e poseidon2_perm_B_19_0, e poseidon2_perm_B_19_1, e poseidon2_perm_B_19_2, e poseidon2_perm_B_19_3, e poseidon2_perm_B_20_0, e poseidon2_perm_B_20_1, e poseidon2_perm_B_20_2, e poseidon2_perm_B_20_3, e poseidon2_perm_B_21_0, e poseidon2_perm_B_21_1, e poseidon2_perm_B_21_2, e poseidon2_perm_B_21_3, e poseidon2_perm_B_22_0, e poseidon2_perm_B_22_1, e poseidon2_perm_B_22_2, e poseidon2_perm_B_22_3, e poseidon2_perm_B_23_0, e poseidon2_perm_B_23_1, e poseidon2_perm_B_23_2, e poseidon2_perm_B_23_3, e poseidon2_perm_B_24_0, e poseidon2_perm_B_24_1, e poseidon2_perm_B_24_2, e poseidon2_perm_B_24_3, e poseidon2_perm_B_25_0, e poseidon2_perm_B_25_1, e poseidon2_perm_B_25_2, e poseidon2_perm_B_25_3, e poseidon2_perm_B_26_0, e poseidon2_perm_B_26_1, e poseidon2_perm_B_26_2, e poseidon2_perm_B_26_3, e poseidon2_perm_B_27_0, e poseidon2_perm_B_27_1, e poseidon2_perm_B_27_2, e poseidon2_perm_B_27_3, e poseidon2_perm_B_28_0, e poseidon2_perm_B_28_1, e poseidon2_perm_B_28_2, e poseidon2_perm_B_28_3, e poseidon2_perm_B_29_0, e poseidon2_perm_B_29_1, e poseidon2_perm_B_29_2, e poseidon2_perm_B_29_3, e poseidon2_perm_B_30_0, e poseidon2_perm_B_30_1, e poseidon2_perm_B_30_2, e poseidon2_perm_B_30_3, e poseidon2_perm_B_31_0, e poseidon2_perm_B_31_1, e poseidon2_perm_B_31_2, e poseidon2_perm_B_31_3, e poseidon2_perm_B_32_0, e poseidon2_perm_B_32_1, e poseidon2_perm_B_32_2, e poseidon2_perm_B_32_3, e poseidon2_perm_B_33_0, e poseidon2_perm_B_33_1, e poseidon2_perm_B_33_2, e poseidon2_perm_B_33_3, e poseidon2_perm_B_34_0, e poseidon2_perm_B_34_1, e poseidon2_perm_B_34_2, e poseidon2_perm_B_34_3, e poseidon2_perm_B_35_0, e poseidon2_perm_B_35_1, e poseidon2_perm_B_35_2, e poseidon2_perm_B_35_3, e poseidon2_perm_B_36_0, e poseidon2_perm_B_36_1, e poseidon2_perm_B_36_2, e poseidon2_perm_B_36_3, e poseidon2_perm_B_37_0, e poseidon2_perm_B_37_1, e poseidon2_perm_B_37_2, e poseidon2_perm_B_37_3, e poseidon2_perm_B_38_0, e poseidon2_perm_B_38_1, e poseidon2_perm_B_38_2, e poseidon2_perm_B_38_3, e poseidon2_perm_B_39_0, e poseidon2_perm_B_39_1, e poseidon2_perm_B_39_2, e poseidon2_perm_B_39_3, e poseidon2_perm_B_40_0, e poseidon2_perm_B_40_1, e poseidon2_perm_B_40_2, e poseidon2_perm_B_40_3, e poseidon2_perm_B_41_0, e poseidon2_perm_B_41_1, e poseidon2_perm_B_41_2, e poseidon2_perm_B_41_3, e poseidon2_perm_B_42_0, e poseidon2_perm_B_42_1, e poseidon2_perm_B_42_2, e poseidon2_perm_B_42_3, e poseidon2_perm_B_43_0, e poseidon2_perm_B_43_1, e poseidon2_perm_B_43_2, e poseidon2_perm_B_43_3, e poseidon2_perm_B_44_0, e poseidon2_perm_B_44_1, e poseidon2_perm_B_44_2, e poseidon2_perm_B_44_3, e poseidon2_perm_B_45_0, e poseidon2_perm_B_45_1, e poseidon2_perm_B_45_2, e poseidon2_perm_B_45_3, e poseidon2_perm_B_46_0, e poseidon2_perm_B_46_1, e poseidon2_perm_B_46_2, e poseidon2_perm_B_46_3, e poseidon2_perm_B_47_0, e poseidon2_perm_B_47_1, e poseidon2_perm_B_47_2, e poseidon2_perm_B_47_3, e poseidon2_perm_B_48_0, e poseidon2_perm_B_48_1, e poseidon2_perm_B_48_2, e poseidon2_perm_B_48_3, e poseidon2_perm_B_49_0, e poseidon2_perm_B_49_1, e poseidon2_perm_B_49_2, e poseidon2_perm_B_49_3, e poseidon2_perm_B_4_0, e poseidon2_perm_B_4_1, e poseidon2_perm_B_4_2, e poseidon2_perm_B_4_3, e poseidon2_perm_B_50_0, e poseidon2_perm_B_50_1, e poseidon2_perm_B_50_2, e poseidon2_perm_B_50_3, e poseidon2_perm_B_51_0, e poseidon2_perm_B_51_1, e poseidon2_perm_B_51_2, e poseidon2_perm_B_51_3, e poseidon2_perm_B_52_0, e poseidon2_perm_B_52_1, e poseidon2_perm_B_52_2, e poseidon2_perm_B_52_3, e poseidon2_perm_B_53_0, e poseidon2_perm_B_53_1, e poseidon2_perm_B_53_2, e poseidon2_perm_B_53_3, e poseidon2_perm_B_54_0, e poseidon2_perm_B_54_1, e poseidon2_perm_B_54_2, e poseidon2_perm_B_54_3, e poseidon2_perm_B_55_0, e poseidon2_perm_B_55_1, e poseidon2_perm_B_55_2, e poseidon2_perm_B_55_3, e poseidon2_perm_B_56_0, e poseidon2_perm_B_56_1, e poseidon2_perm_B_56_2, e poseidon2_perm_B_56_3, e poseidon2_perm_B_57_0, e poseidon2_perm_B_57_1, e poseidon2_perm_B_57_2, e poseidon2_perm_B_57_3, e poseidon2_perm_B_58_0, e poseidon2_perm_B_58_1, e poseidon2_perm_B_58_2, e poseidon2_perm_B_58_3, e poseidon2_perm_B_59_0, e poseidon2_perm_B_59_1, e poseidon2_perm_B_59_2, e poseidon2_perm_B_59_3, e poseidon2_perm_B_5_0, e poseidon2_perm_B_5_1, e poseidon2_perm_B_5_2, e poseidon2_perm_B_5_3, e poseidon2_perm_B_6_0, e poseidon2_perm_B_6_1, e poseidon2_perm_B_6_2, e poseidon2_perm_B_6_3, e poseidon2_perm_B_7_0, e poseidon2_perm_B_7_1, e poseidon2_perm_B_7_2, e poseidon2_perm_B_7_3, e poseidon2_perm_B_8_0, e poseidon2_perm_B_8_1, e poseidon2_perm_B_8_2, e poseidon2_perm_B_8_3, e poseidon2_perm_B_9_0, e poseidon2_perm_B_9_1, e poseidon2_perm_B_9_2, e poseidon2_perm_B_9_3, e poseidon2_perm_EXT_LAYER_4, e poseidon2_perm_EXT_LAYER_5, e poseidon2_perm_EXT_LAYER_6, e poseidon2_perm_EXT_LAYER_7, e poseidon2_perm_T_0_4, e poseidon2_perm_T_0_5, e poseidon2_perm_T_0_6, e poseidon2_perm_T_0_7, e poseidon2_perm_T_1_4, e poseidon2_perm_T_1_5, e poseidon2_perm_T_1_6, e poseidon2_perm_T_1_7, e poseidon2_perm_T_2_4, e poseidon2_perm_T_2_5, e poseidon2_perm_T_2_6, e poseidon2_perm_T_2_7, e poseidon2_perm_T_3_4, e poseidon2_perm_T_3_5, e poseidon2_perm_T_3_6, e poseidon2_perm_T_3_7, e poseidon2_perm_T_60_4, e poseidon2_perm_T_60_5, e poseidon2_perm_T_60_6, e poseidon2_perm_T_60_7, e poseidon2_perm_T_61_4, e poseidon2_perm_T_61_5, e poseidon2_perm_T_61_6, e poseidon2_perm_T_61_7, e poseidon2_perm_T_62_4, e poseidon2_perm_T_62_5, e poseidon2_perm_T_62_6, e poseidon2_perm_T_62_7, e poseidon2_perm_T_63_4, e poseidon2_perm_T_63_5, e poseidon2_perm_T_63_6, e poseidon2_perm_T_63_7, e poseidon2_perm_a_0, e poseidon2_perm_a_1, e poseidon2_perm_a_2, e poseidon2_perm_a_3, e poseidon2_perm_b_0, e poseidon2_perm_b_1, e poseidon2_perm_b_2, e poseidon2_perm_b_3, e poseidon2_perm_sel, e public_data_read_leaf_not_exists, e public_data_read_low_leaf_hash, e public_data_read_low_leaf_index, e public_data_read_low_leaf_next_index, e public_data_read_low_leaf_next_slot, e public_data_read_low_leaf_slot, e public_data_read_low_leaf_value, e public_data_read_next_slot_inv, e public_data_read_next_slot_is_nonzero, e public_data_read_one, e public_data_read_root, e public_data_read_sel, e public_data_read_slot, e public_data_read_slot_low_leaf_slot_diff_inv, e public_data_read_tree_height, e public_data_read_value, e range_check_dyn_diff, e range_check_dyn_rng_chk_bits, e range_check_dyn_rng_chk_pow_2, e range_check_is_lte_u112, e range_check_is_lte_u128, e range_check_is_lte_u16, e range_check_is_lte_u32, e range_check_is_lte_u48, e range_check_is_lte_u64, e range_check_is_lte_u80, e range_check_is_lte_u96, e range_check_rng_chk_bits, e range_check_sel, e range_check_sel_r0_16_bit_rng_lookup, e range_check_sel_r1_16_bit_rng_lookup, e range_check_sel_r2_16_bit_rng_lookup, e range_check_sel_r3_16_bit_rng_lookup, e range_check_sel_r4_16_bit_rng_lookup, e range_check_sel_r5_16_bit_rng_lookup, e range_check_sel_r6_16_bit_rng_lookup, e range_check_u16_r0, e range_check_u16_r1, e range_check_u16_r2, e range_check_u16_r3, e range_check_u16_r4, e range_check_u16_r5, e range_check_u16_r6, e range_check_u16_r7, e range_check_value, e scalar_mul_bit, e scalar_mul_bit_idx, e scalar_mul_bit_radix, e scalar_mul_end, e scalar_mul_not_end, e scalar_mul_point_inf, e scalar_mul_point_x, e scalar_mul_point_y, e scalar_mul_res_inf, e scalar_mul_res_x, e scalar_mul_res_y, e scalar_mul_scalar, e scalar_mul_sel, e scalar_mul_should_add, e scalar_mul_start, e scalar_mul_temp_inf, e scalar_mul_temp_x, e scalar_mul_temp_y, e sha256_a, e sha256_a_and_b, e sha256_a_and_b_xor_a_and_c, e sha256_a_and_c, e sha256_a_rotr_13, e sha256_a_rotr_2, e sha256_a_rotr_22, e sha256_a_rotr_2_xor_a_rotr_13, e sha256_and_sel, e sha256_b, e sha256_b_and_c, e sha256_c, e sha256_ch, e sha256_clk, e sha256_computed_w_lhs, e sha256_computed_w_rhs, e sha256_d, e sha256_e, e sha256_e_and_f, e sha256_e_rotr_11, e sha256_e_rotr_25, e sha256_e_rotr_6, e sha256_e_rotr_6_xor_e_rotr_11, e sha256_f, e sha256_g, e sha256_h, e sha256_helper_w0, e sha256_helper_w1, e sha256_helper_w10, e sha256_helper_w11, e sha256_helper_w12, e sha256_helper_w13, e sha256_helper_w14, e sha256_helper_w15, e sha256_helper_w2, e sha256_helper_w3, e sha256_helper_w4, e sha256_helper_w5, e sha256_helper_w6, e sha256_helper_w7, e sha256_helper_w8, e sha256_helper_w9, e sha256_init_a, e sha256_init_b, e sha256_init_c, e sha256_init_d, e sha256_init_e, e sha256_init_f, e sha256_init_g, e sha256_init_h, e sha256_input_offset, e sha256_is_input_round, e sha256_latch, e sha256_lhs_a_13, e sha256_lhs_a_2, e sha256_lhs_a_22, e sha256_lhs_e_11, e sha256_lhs_e_25, e sha256_lhs_e_6, e sha256_lhs_w_10, e sha256_lhs_w_17, e sha256_lhs_w_18, e sha256_lhs_w_19, e sha256_lhs_w_3, e sha256_lhs_w_7, e sha256_maj, e sha256_next_a_lhs, e sha256_next_a_rhs, e sha256_next_e_lhs, e sha256_next_e_rhs, e sha256_not_e, e sha256_not_e_and_g, e sha256_output_a_lhs, e sha256_output_a_rhs, e sha256_output_b_lhs, e sha256_output_b_rhs, e sha256_output_c_lhs, e sha256_output_c_rhs, e sha256_output_d_lhs, e sha256_output_d_rhs, e sha256_output_e_lhs, e sha256_output_e_rhs, e sha256_output_f_lhs, e sha256_output_f_rhs, e sha256_output_g_lhs, e sha256_output_g_rhs, e sha256_output_h_lhs, e sha256_output_h_rhs, e sha256_output_offset, e sha256_perform_round, e sha256_rhs_a_13, e sha256_rhs_a_2, e sha256_rhs_a_22, e sha256_rhs_e_11, e sha256_rhs_e_25, e sha256_rhs_e_6, e sha256_rhs_w_10, e sha256_rhs_w_17, e sha256_rhs_w_18, e sha256_rhs_w_19, e sha256_rhs_w_3, e sha256_rhs_w_7, e sha256_round_constant, e sha256_round_count, e sha256_rounds_remaining, e sha256_rounds_remaining_inv, e sha256_s_0, e sha256_s_1, e sha256_sel, e sha256_start, e sha256_state_offset, e sha256_w, e sha256_w_15_rotr_18, e sha256_w_15_rotr_7, e sha256_w_15_rotr_7_xor_w_15_rotr_18, e sha256_w_15_rshift_3, e sha256_w_2_rotr_17, e sha256_w_2_rotr_17_xor_w_2_rotr_19, e sha256_w_2_rotr_19, e sha256_w_2_rshift_10, e sha256_w_s_0, e sha256_w_s_1, e sha256_xor_sel, e to_radix_acc, e to_radix_acc_under_p, e to_radix_end, e to_radix_exponent, e to_radix_found, e to_radix_is_unsafe_limb, e to_radix_limb, e to_radix_limb_eq_p, e to_radix_limb_index, e to_radix_limb_lt_p, e to_radix_limb_p_diff, e to_radix_limb_radix_diff, e to_radix_not_end, e to_radix_not_padding_limb, e to_radix_p_limb, e to_radix_radix, e to_radix_rem_inverse, e to_radix_safe_limbs, e to_radix_safety_diff_inverse, e to_radix_sel, e to_radix_start, e to_radix_value, e update_check_address, e update_check_block_number, e update_check_block_number_bit_size, e update_check_block_number_is_lt_block_of_change, e update_check_block_of_change_subtraction, e update_check_current_class_id, e update_check_deployer_protocol_contract_address, e update_check_hash_not_zero, e update_check_original_class_id, e update_check_public_data_tree_root, e update_check_public_leaf_index_domain_separator, e update_check_sel, e update_check_shared_mutable_hash_slot, e update_check_shared_mutable_leaf_slot, e update_check_shared_mutable_slot, e update_check_update_block_of_change, e update_check_update_hash, e update_check_update_hash_inv, e update_check_update_hi_metadata, e update_check_update_hi_metadata_bit_size, e update_check_update_post_class_id_is_zero, e update_check_update_post_class_inv, e update_check_update_pre_class_id_is_zero, e update_check_update_pre_class_inv, e update_check_update_preimage_metadata, e update_check_update_preimage_post_class_id, e update_check_update_preimage_pre_class_id, e update_check_updated_class_ids_slot, e lookup_poseidon2_hash_poseidon2_perm_counts, e lookup_to_radix_limb_range_counts, e lookup_to_radix_limb_less_than_radix_range_counts, e lookup_to_radix_fetch_safe_limbs_counts, e lookup_to_radix_fetch_p_limb_counts, e lookup_to_radix_limb_p_diff_range_counts, e lookup_scalar_mul_to_radix_counts, e lookup_scalar_mul_double_counts, e lookup_scalar_mul_add_counts, e lookup_address_derivation_salted_initialization_hash_poseidon2_0_counts, e lookup_address_derivation_salted_initialization_hash_poseidon2_1_counts, e lookup_address_derivation_partial_address_poseidon2_counts, e lookup_address_derivation_public_keys_hash_poseidon2_0_counts, e lookup_address_derivation_public_keys_hash_poseidon2_1_counts, e lookup_address_derivation_public_keys_hash_poseidon2_2_counts, e lookup_address_derivation_public_keys_hash_poseidon2_3_counts, e lookup_address_derivation_public_keys_hash_poseidon2_4_counts, e lookup_address_derivation_preaddress_poseidon2_counts, e lookup_address_derivation_preaddress_scalar_mul_counts, e lookup_address_derivation_address_ecadd_counts, e lookup_bc_decomposition_bytes_are_bytes_counts, e lookup_bc_decomposition_abs_diff_is_u16_counts, e lookup_bc_hashing_get_packed_field_counts, e lookup_bc_hashing_iv_is_len_counts, e lookup_bc_hashing_poseidon2_hash_counts, e lookup_range_check_dyn_rng_chk_pow_2_counts, e lookup_range_check_dyn_diff_is_u16_counts, e lookup_range_check_r0_is_u16_counts, e lookup_range_check_r1_is_u16_counts, e lookup_range_check_r2_is_u16_counts, e lookup_range_check_r3_is_u16_counts, e lookup_range_check_r4_is_u16_counts, e lookup_range_check_r5_is_u16_counts, e lookup_range_check_r6_is_u16_counts, e lookup_range_check_r7_is_u16_counts, e lookup_merkle_check_merkle_poseidon2_read_counts, e lookup_merkle_check_merkle_poseidon2_write_counts, e lookup_ff_gt_a_lo_range_counts, e lookup_ff_gt_a_hi_range_counts, e lookup_public_data_read_low_leaf_poseidon2_0_counts, e lookup_public_data_read_low_leaf_poseidon2_1_counts, e lookup_public_data_read_low_leaf_membership_counts, e lookup_public_data_read_low_leaf_slot_validation_counts, e lookup_public_data_read_low_leaf_next_slot_validation_counts, e lookup_update_check_shared_mutable_slot_poseidon2_counts, e lookup_update_check_shared_mutable_leaf_slot_poseidon2_counts, e lookup_update_check_update_hash_public_data_read_counts, e lookup_update_check_update_hash_poseidon2_counts, e lookup_update_check_update_hi_metadata_range_counts, e lookup_update_check_update_lo_metadata_range_counts, e lookup_update_check_block_of_change_cmp_range_counts, e lookup_nullifier_check_low_leaf_poseidon2_counts, e lookup_nullifier_check_updated_low_leaf_poseidon2_counts, e lookup_nullifier_check_low_leaf_merkle_check_counts, e lookup_nullifier_check_low_leaf_nullifier_validation_counts, e lookup_nullifier_check_low_leaf_next_nullifier_validation_counts, e lookup_nullifier_check_new_leaf_poseidon2_counts, e lookup_nullifier_check_new_leaf_merkle_check_counts, e lookup_bc_retrieval_silo_deployment_nullifier_poseidon2_counts, e lookup_bc_retrieval_deployment_nullifier_read_counts, e lookup_bc_retrieval_address_derivation_counts, e lookup_bc_retrieval_update_check_counts, e lookup_bc_retrieval_class_id_derivation_counts, e lookup_bc_retrieval_bytecode_hash_is_correct_counts, e lookup_instr_fetching_pc_abs_diff_positive_counts, e lookup_instr_fetching_instr_abs_diff_positive_counts, e lookup_instr_fetching_tag_value_validation_counts, e lookup_instr_fetching_bytecode_size_from_bc_dec_counts, e lookup_instr_fetching_bytes_from_bc_dec_counts, e lookup_instr_fetching_wire_instruction_info_counts, e lookup_class_id_derivation_class_id_poseidon2_0_counts, e lookup_class_id_derivation_class_id_poseidon2_1_counts, e lookup_bitwise_integral_tag_length_counts, e lookup_bitwise_byte_operations_counts, e lookup_sha256_round_constant_counts +#define AVM2_DERIVED_WITNESS_ENTITIES_E(e) e lookup_poseidon2_hash_poseidon2_perm_inv, e lookup_to_radix_limb_range_inv, e lookup_to_radix_limb_less_than_radix_range_inv, e lookup_to_radix_fetch_safe_limbs_inv, e lookup_to_radix_fetch_p_limb_inv, e lookup_to_radix_limb_p_diff_range_inv, e lookup_scalar_mul_to_radix_inv, e lookup_scalar_mul_double_inv, e lookup_scalar_mul_add_inv, e lookup_address_derivation_salted_initialization_hash_poseidon2_0_inv, e lookup_address_derivation_salted_initialization_hash_poseidon2_1_inv, e lookup_address_derivation_partial_address_poseidon2_inv, e lookup_address_derivation_public_keys_hash_poseidon2_0_inv, e lookup_address_derivation_public_keys_hash_poseidon2_1_inv, e lookup_address_derivation_public_keys_hash_poseidon2_2_inv, e lookup_address_derivation_public_keys_hash_poseidon2_3_inv, e lookup_address_derivation_public_keys_hash_poseidon2_4_inv, e lookup_address_derivation_preaddress_poseidon2_inv, e lookup_address_derivation_preaddress_scalar_mul_inv, e lookup_address_derivation_address_ecadd_inv, e lookup_bc_decomposition_bytes_are_bytes_inv, e lookup_bc_decomposition_abs_diff_is_u16_inv, e lookup_bc_hashing_get_packed_field_inv, e lookup_bc_hashing_iv_is_len_inv, e lookup_bc_hashing_poseidon2_hash_inv, e lookup_range_check_dyn_rng_chk_pow_2_inv, e lookup_range_check_dyn_diff_is_u16_inv, e lookup_range_check_r0_is_u16_inv, e lookup_range_check_r1_is_u16_inv, e lookup_range_check_r2_is_u16_inv, e lookup_range_check_r3_is_u16_inv, e lookup_range_check_r4_is_u16_inv, e lookup_range_check_r5_is_u16_inv, e lookup_range_check_r6_is_u16_inv, e lookup_range_check_r7_is_u16_inv, e lookup_merkle_check_merkle_poseidon2_read_inv, e lookup_merkle_check_merkle_poseidon2_write_inv, e lookup_ff_gt_a_lo_range_inv, e lookup_ff_gt_a_hi_range_inv, e lookup_public_data_read_low_leaf_poseidon2_0_inv, e lookup_public_data_read_low_leaf_poseidon2_1_inv, e lookup_public_data_read_low_leaf_membership_inv, e lookup_public_data_read_low_leaf_slot_validation_inv, e lookup_public_data_read_low_leaf_next_slot_validation_inv, e lookup_update_check_shared_mutable_slot_poseidon2_inv, e lookup_update_check_shared_mutable_leaf_slot_poseidon2_inv, e lookup_update_check_update_hash_public_data_read_inv, e lookup_update_check_update_hash_poseidon2_inv, e lookup_update_check_update_hi_metadata_range_inv, e lookup_update_check_update_lo_metadata_range_inv, e lookup_update_check_block_of_change_cmp_range_inv, e lookup_nullifier_check_low_leaf_poseidon2_inv, e lookup_nullifier_check_updated_low_leaf_poseidon2_inv, e lookup_nullifier_check_low_leaf_merkle_check_inv, e lookup_nullifier_check_low_leaf_nullifier_validation_inv, e lookup_nullifier_check_low_leaf_next_nullifier_validation_inv, e lookup_nullifier_check_new_leaf_poseidon2_inv, e lookup_nullifier_check_new_leaf_merkle_check_inv, e lookup_bc_retrieval_silo_deployment_nullifier_poseidon2_inv, e lookup_bc_retrieval_deployment_nullifier_read_inv, e lookup_bc_retrieval_address_derivation_inv, e lookup_bc_retrieval_update_check_inv, e lookup_bc_retrieval_class_id_derivation_inv, e lookup_bc_retrieval_bytecode_hash_is_correct_inv, e lookup_instr_fetching_pc_abs_diff_positive_inv, e lookup_instr_fetching_instr_abs_diff_positive_inv, e lookup_instr_fetching_tag_value_validation_inv, e lookup_instr_fetching_bytecode_size_from_bc_dec_inv, e lookup_instr_fetching_bytes_from_bc_dec_inv, e lookup_instr_fetching_wire_instruction_info_inv, e lookup_class_id_derivation_class_id_poseidon2_0_inv, e lookup_class_id_derivation_class_id_poseidon2_1_inv, e lookup_bitwise_integral_tag_length_inv, e lookup_bitwise_byte_operations_inv, e lookup_sha256_round_constant_inv +#define AVM2_SHIFTED_ENTITIES_E(e) e bc_decomposition_bytes_shift, e bc_decomposition_bytes_pc_plus_1_shift, e bc_decomposition_bytes_pc_plus_10_shift, e bc_decomposition_bytes_pc_plus_11_shift, e bc_decomposition_bytes_pc_plus_12_shift, e bc_decomposition_bytes_pc_plus_13_shift, e bc_decomposition_bytes_pc_plus_14_shift, e bc_decomposition_bytes_pc_plus_15_shift, e bc_decomposition_bytes_pc_plus_16_shift, e bc_decomposition_bytes_pc_plus_17_shift, e bc_decomposition_bytes_pc_plus_18_shift, e bc_decomposition_bytes_pc_plus_19_shift, e bc_decomposition_bytes_pc_plus_2_shift, e bc_decomposition_bytes_pc_plus_20_shift, e bc_decomposition_bytes_pc_plus_21_shift, e bc_decomposition_bytes_pc_plus_22_shift, e bc_decomposition_bytes_pc_plus_23_shift, e bc_decomposition_bytes_pc_plus_24_shift, e bc_decomposition_bytes_pc_plus_25_shift, e bc_decomposition_bytes_pc_plus_26_shift, e bc_decomposition_bytes_pc_plus_27_shift, e bc_decomposition_bytes_pc_plus_28_shift, e bc_decomposition_bytes_pc_plus_29_shift, e bc_decomposition_bytes_pc_plus_3_shift, e bc_decomposition_bytes_pc_plus_30_shift, e bc_decomposition_bytes_pc_plus_31_shift, e bc_decomposition_bytes_pc_plus_32_shift, e bc_decomposition_bytes_pc_plus_33_shift, e bc_decomposition_bytes_pc_plus_34_shift, e bc_decomposition_bytes_pc_plus_35_shift, e bc_decomposition_bytes_pc_plus_4_shift, e bc_decomposition_bytes_pc_plus_5_shift, e bc_decomposition_bytes_pc_plus_6_shift, e bc_decomposition_bytes_pc_plus_7_shift, e bc_decomposition_bytes_pc_plus_8_shift, e bc_decomposition_bytes_pc_plus_9_shift, e bc_decomposition_bytes_remaining_shift, e bc_decomposition_id_shift, e bc_decomposition_pc_shift, e bc_decomposition_sel_shift, e bc_hashing_bytecode_id_shift, e bc_hashing_incremental_hash_shift, e bc_hashing_pc_index_shift, e bc_hashing_sel_shift, e bc_hashing_start_shift, e bitwise_acc_ia_shift, e bitwise_acc_ib_shift, e bitwise_acc_ic_shift, e bitwise_ctr_shift, e bitwise_op_id_shift, e execution_sel_shift, e ff_gt_a_hi_shift, e ff_gt_a_lo_shift, e ff_gt_b_hi_shift, e ff_gt_b_lo_shift, e ff_gt_cmp_rng_ctr_shift, e ff_gt_p_sub_a_hi_shift, e ff_gt_p_sub_a_lo_shift, e ff_gt_p_sub_b_hi_shift, e ff_gt_p_sub_b_lo_shift, e ff_gt_sel_shift, e ff_gt_sel_gt_shift, e merkle_check_index_shift, e merkle_check_path_len_shift, e merkle_check_read_node_shift, e merkle_check_read_root_shift, e merkle_check_sel_shift, e merkle_check_start_shift, e merkle_check_write_shift, e merkle_check_write_node_shift, e merkle_check_write_root_shift, e poseidon2_hash_a_0_shift, e poseidon2_hash_a_1_shift, e poseidon2_hash_a_2_shift, e poseidon2_hash_a_3_shift, e poseidon2_hash_input_0_shift, e poseidon2_hash_input_1_shift, e poseidon2_hash_input_2_shift, e poseidon2_hash_num_perm_rounds_rem_shift, e poseidon2_hash_output_shift, e poseidon2_hash_sel_shift, e poseidon2_hash_start_shift, e scalar_mul_bit_idx_shift, e scalar_mul_point_inf_shift, e scalar_mul_point_x_shift, e scalar_mul_point_y_shift, e scalar_mul_res_inf_shift, e scalar_mul_res_x_shift, e scalar_mul_res_y_shift, e scalar_mul_scalar_shift, e scalar_mul_sel_shift, e scalar_mul_start_shift, e scalar_mul_temp_inf_shift, e scalar_mul_temp_x_shift, e scalar_mul_temp_y_shift, e sha256_a_shift, e sha256_b_shift, e sha256_c_shift, e sha256_d_shift, e sha256_e_shift, e sha256_f_shift, e sha256_g_shift, e sha256_h_shift, e sha256_helper_w0_shift, e sha256_helper_w1_shift, e sha256_helper_w10_shift, e sha256_helper_w11_shift, e sha256_helper_w12_shift, e sha256_helper_w13_shift, e sha256_helper_w14_shift, e sha256_helper_w15_shift, e sha256_helper_w2_shift, e sha256_helper_w3_shift, e sha256_helper_w4_shift, e sha256_helper_w5_shift, e sha256_helper_w6_shift, e sha256_helper_w7_shift, e sha256_helper_w8_shift, e sha256_helper_w9_shift, e sha256_rounds_remaining_shift, e sha256_sel_shift, e sha256_start_shift, e to_radix_acc_shift, e to_radix_acc_under_p_shift, e to_radix_exponent_shift, e to_radix_limb_shift, e to_radix_limb_eq_p_shift, e to_radix_limb_index_shift, e to_radix_limb_lt_p_shift, e to_radix_not_padding_limb_shift, e to_radix_radix_shift, e to_radix_safe_limbs_shift, e to_radix_sel_shift, e to_radix_start_shift, e to_radix_value_shift +#define AVM2_TO_BE_SHIFTED_E(e) e bc_decomposition_bytes, e bc_decomposition_bytes_pc_plus_1, e bc_decomposition_bytes_pc_plus_10, e bc_decomposition_bytes_pc_plus_11, e bc_decomposition_bytes_pc_plus_12, e bc_decomposition_bytes_pc_plus_13, e bc_decomposition_bytes_pc_plus_14, e bc_decomposition_bytes_pc_plus_15, e bc_decomposition_bytes_pc_plus_16, e bc_decomposition_bytes_pc_plus_17, e bc_decomposition_bytes_pc_plus_18, e bc_decomposition_bytes_pc_plus_19, e bc_decomposition_bytes_pc_plus_2, e bc_decomposition_bytes_pc_plus_20, e bc_decomposition_bytes_pc_plus_21, e bc_decomposition_bytes_pc_plus_22, e bc_decomposition_bytes_pc_plus_23, e bc_decomposition_bytes_pc_plus_24, e bc_decomposition_bytes_pc_plus_25, e bc_decomposition_bytes_pc_plus_26, e bc_decomposition_bytes_pc_plus_27, e bc_decomposition_bytes_pc_plus_28, e bc_decomposition_bytes_pc_plus_29, e bc_decomposition_bytes_pc_plus_3, e bc_decomposition_bytes_pc_plus_30, e bc_decomposition_bytes_pc_plus_31, e bc_decomposition_bytes_pc_plus_32, e bc_decomposition_bytes_pc_plus_33, e bc_decomposition_bytes_pc_plus_34, e bc_decomposition_bytes_pc_plus_35, e bc_decomposition_bytes_pc_plus_4, e bc_decomposition_bytes_pc_plus_5, e bc_decomposition_bytes_pc_plus_6, e bc_decomposition_bytes_pc_plus_7, e bc_decomposition_bytes_pc_plus_8, e bc_decomposition_bytes_pc_plus_9, e bc_decomposition_bytes_remaining, e bc_decomposition_id, e bc_decomposition_pc, e bc_decomposition_sel, e bc_hashing_bytecode_id, e bc_hashing_incremental_hash, e bc_hashing_pc_index, e bc_hashing_sel, e bc_hashing_start, e bitwise_acc_ia, e bitwise_acc_ib, e bitwise_acc_ic, e bitwise_ctr, e bitwise_op_id, e execution_sel, e ff_gt_a_hi, e ff_gt_a_lo, e ff_gt_b_hi, e ff_gt_b_lo, e ff_gt_cmp_rng_ctr, e ff_gt_p_sub_a_hi, e ff_gt_p_sub_a_lo, e ff_gt_p_sub_b_hi, e ff_gt_p_sub_b_lo, e ff_gt_sel, e ff_gt_sel_gt, e merkle_check_index, e merkle_check_path_len, e merkle_check_read_node, e merkle_check_read_root, e merkle_check_sel, e merkle_check_start, e merkle_check_write, e merkle_check_write_node, e merkle_check_write_root, e poseidon2_hash_a_0, e poseidon2_hash_a_1, e poseidon2_hash_a_2, e poseidon2_hash_a_3, e poseidon2_hash_input_0, e poseidon2_hash_input_1, e poseidon2_hash_input_2, e poseidon2_hash_num_perm_rounds_rem, e poseidon2_hash_output, e poseidon2_hash_sel, e poseidon2_hash_start, e scalar_mul_bit_idx, e scalar_mul_point_inf, e scalar_mul_point_x, e scalar_mul_point_y, e scalar_mul_res_inf, e scalar_mul_res_x, e scalar_mul_res_y, e scalar_mul_scalar, e scalar_mul_sel, e scalar_mul_start, e scalar_mul_temp_inf, e scalar_mul_temp_x, e scalar_mul_temp_y, e sha256_a, e sha256_b, e sha256_c, e sha256_d, e sha256_e, e sha256_f, e sha256_g, e sha256_h, e sha256_helper_w0, e sha256_helper_w1, e sha256_helper_w10, e sha256_helper_w11, e sha256_helper_w12, e sha256_helper_w13, e sha256_helper_w14, e sha256_helper_w15, e sha256_helper_w2, e sha256_helper_w3, e sha256_helper_w4, e sha256_helper_w5, e sha256_helper_w6, e sha256_helper_w7, e sha256_helper_w8, e sha256_helper_w9, e sha256_rounds_remaining, e sha256_sel, e sha256_start, e to_radix_acc, e to_radix_acc_under_p, e to_radix_exponent, e to_radix_limb, e to_radix_limb_eq_p, e to_radix_limb_index, e to_radix_limb_lt_p, e to_radix_not_padding_limb, e to_radix_radix, e to_radix_safe_limbs, e to_radix_sel, e to_radix_start, e to_radix_value +#define AVM2_ALL_ENTITIES_E(e) AVM2_PRECOMPUTED_ENTITIES_E(e), AVM2_WIRE_ENTITIES_E(e), AVM2_DERIVED_WITNESS_ENTITIES_E(e), AVM2_SHIFTED_ENTITIES_E(e) + +#define AVM2_PRECOMPUTED_ENTITIES AVM2_PRECOMPUTED_ENTITIES_E() +#define AVM2_WIRE_ENTITIES AVM2_WIRE_ENTITIES_E() +#define AVM2_DERIVED_WITNESS_ENTITIES AVM2_DERIVED_WITNESS_ENTITIES_E() +#define AVM2_SHIFTED_ENTITIES AVM2_SHIFTED_ENTITIES_E() + #define AVM2_UNSHIFTED_ENTITIES AVM2_PRECOMPUTED_ENTITIES, AVM2_WIRE_ENTITIES, AVM2_DERIVED_WITNESS_ENTITIES #define AVM2_WITNESS_ENTITIES AVM2_WIRE_ENTITIES, AVM2_DERIVED_WITNESS_ENTITIES +#define AVM2_ALL_ENTITIES AVM2_ALL_ENTITIES_E() -#define AVM2_TO_BE_SHIFTED_COLUMNS Column::bc_decomposition_bytes, Column::bc_decomposition_bytes_pc_plus_1, Column::bc_decomposition_bytes_pc_plus_10, Column::bc_decomposition_bytes_pc_plus_11, Column::bc_decomposition_bytes_pc_plus_12, Column::bc_decomposition_bytes_pc_plus_13, Column::bc_decomposition_bytes_pc_plus_14, Column::bc_decomposition_bytes_pc_plus_15, Column::bc_decomposition_bytes_pc_plus_16, Column::bc_decomposition_bytes_pc_plus_17, Column::bc_decomposition_bytes_pc_plus_18, Column::bc_decomposition_bytes_pc_plus_19, Column::bc_decomposition_bytes_pc_plus_2, Column::bc_decomposition_bytes_pc_plus_20, Column::bc_decomposition_bytes_pc_plus_21, Column::bc_decomposition_bytes_pc_plus_22, Column::bc_decomposition_bytes_pc_plus_23, Column::bc_decomposition_bytes_pc_plus_24, Column::bc_decomposition_bytes_pc_plus_25, Column::bc_decomposition_bytes_pc_plus_26, Column::bc_decomposition_bytes_pc_plus_27, Column::bc_decomposition_bytes_pc_plus_28, Column::bc_decomposition_bytes_pc_plus_29, Column::bc_decomposition_bytes_pc_plus_3, Column::bc_decomposition_bytes_pc_plus_30, Column::bc_decomposition_bytes_pc_plus_31, Column::bc_decomposition_bytes_pc_plus_32, Column::bc_decomposition_bytes_pc_plus_33, Column::bc_decomposition_bytes_pc_plus_34, Column::bc_decomposition_bytes_pc_plus_35, Column::bc_decomposition_bytes_pc_plus_4, Column::bc_decomposition_bytes_pc_plus_5, Column::bc_decomposition_bytes_pc_plus_6, Column::bc_decomposition_bytes_pc_plus_7, Column::bc_decomposition_bytes_pc_plus_8, Column::bc_decomposition_bytes_pc_plus_9, Column::bc_decomposition_bytes_remaining, Column::bc_decomposition_id, Column::bc_decomposition_pc, Column::bc_decomposition_sel, Column::bc_hashing_bytecode_id, Column::bc_hashing_incremental_hash, Column::bc_hashing_pc_index, Column::bc_hashing_sel, Column::bc_hashing_start, Column::bitwise_acc_ia, Column::bitwise_acc_ib, Column::bitwise_acc_ic, Column::bitwise_ctr, Column::bitwise_op_id, Column::execution_sel, Column::ff_gt_a_hi, Column::ff_gt_a_lo, Column::ff_gt_b_hi, Column::ff_gt_b_lo, Column::ff_gt_cmp_rng_ctr, Column::ff_gt_p_sub_a_hi, Column::ff_gt_p_sub_a_lo, Column::ff_gt_p_sub_b_hi, Column::ff_gt_p_sub_b_lo, Column::ff_gt_sel, Column::ff_gt_sel_gt, Column::merkle_check_index, Column::merkle_check_path_len, Column::merkle_check_read_node, Column::merkle_check_read_root, Column::merkle_check_sel, Column::merkle_check_start, Column::merkle_check_write, Column::merkle_check_write_node, Column::merkle_check_write_root, Column::poseidon2_hash_a_0, Column::poseidon2_hash_a_1, Column::poseidon2_hash_a_2, Column::poseidon2_hash_a_3, Column::poseidon2_hash_input_0, Column::poseidon2_hash_input_1, Column::poseidon2_hash_input_2, Column::poseidon2_hash_num_perm_rounds_rem, Column::poseidon2_hash_output, Column::poseidon2_hash_sel, Column::poseidon2_hash_start, Column::scalar_mul_bit_idx, Column::scalar_mul_point_inf, Column::scalar_mul_point_x, Column::scalar_mul_point_y, Column::scalar_mul_res_inf, Column::scalar_mul_res_x, Column::scalar_mul_res_y, Column::scalar_mul_scalar, Column::scalar_mul_sel, Column::scalar_mul_start, Column::scalar_mul_temp_inf, Column::scalar_mul_temp_x, Column::scalar_mul_temp_y, Column::sha256_a, Column::sha256_b, Column::sha256_c, Column::sha256_d, Column::sha256_e, Column::sha256_f, Column::sha256_g, Column::sha256_h, Column::sha256_helper_w0, Column::sha256_helper_w1, Column::sha256_helper_w10, Column::sha256_helper_w11, Column::sha256_helper_w12, Column::sha256_helper_w13, Column::sha256_helper_w14, Column::sha256_helper_w15, Column::sha256_helper_w2, Column::sha256_helper_w3, Column::sha256_helper_w4, Column::sha256_helper_w5, Column::sha256_helper_w6, Column::sha256_helper_w7, Column::sha256_helper_w8, Column::sha256_helper_w9, Column::sha256_rounds_remaining, Column::sha256_sel, Column::sha256_start, Column::to_radix_acc, Column::to_radix_acc_under_p, Column::to_radix_exponent, Column::to_radix_limb, Column::to_radix_limb_eq_p, Column::to_radix_limb_index, Column::to_radix_limb_lt_p, Column::to_radix_not_padding_limb, Column::to_radix_radix, Column::to_radix_safe_limbs, Column::to_radix_sel, Column::to_radix_start, Column::to_radix_value -#define AVM2_SHIFTED_COLUMNS ColumnAndShifts::bc_decomposition_bytes_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_1_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_10_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_11_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_12_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_13_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_14_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_15_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_16_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_17_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_18_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_19_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_2_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_20_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_21_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_22_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_23_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_24_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_25_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_26_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_27_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_28_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_29_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_3_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_30_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_31_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_32_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_33_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_34_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_35_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_4_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_5_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_6_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_7_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_8_shift, ColumnAndShifts::bc_decomposition_bytes_pc_plus_9_shift, ColumnAndShifts::bc_decomposition_bytes_remaining_shift, ColumnAndShifts::bc_decomposition_id_shift, ColumnAndShifts::bc_decomposition_pc_shift, ColumnAndShifts::bc_decomposition_sel_shift, ColumnAndShifts::bc_hashing_bytecode_id_shift, ColumnAndShifts::bc_hashing_incremental_hash_shift, ColumnAndShifts::bc_hashing_pc_index_shift, ColumnAndShifts::bc_hashing_sel_shift, ColumnAndShifts::bc_hashing_start_shift, ColumnAndShifts::bitwise_acc_ia_shift, ColumnAndShifts::bitwise_acc_ib_shift, ColumnAndShifts::bitwise_acc_ic_shift, ColumnAndShifts::bitwise_ctr_shift, ColumnAndShifts::bitwise_op_id_shift, ColumnAndShifts::execution_sel_shift, ColumnAndShifts::ff_gt_a_hi_shift, ColumnAndShifts::ff_gt_a_lo_shift, ColumnAndShifts::ff_gt_b_hi_shift, ColumnAndShifts::ff_gt_b_lo_shift, ColumnAndShifts::ff_gt_cmp_rng_ctr_shift, ColumnAndShifts::ff_gt_p_sub_a_hi_shift, ColumnAndShifts::ff_gt_p_sub_a_lo_shift, ColumnAndShifts::ff_gt_p_sub_b_hi_shift, ColumnAndShifts::ff_gt_p_sub_b_lo_shift, ColumnAndShifts::ff_gt_sel_shift, ColumnAndShifts::ff_gt_sel_gt_shift, ColumnAndShifts::merkle_check_index_shift, ColumnAndShifts::merkle_check_path_len_shift, ColumnAndShifts::merkle_check_read_node_shift, ColumnAndShifts::merkle_check_read_root_shift, ColumnAndShifts::merkle_check_sel_shift, ColumnAndShifts::merkle_check_start_shift, ColumnAndShifts::merkle_check_write_shift, ColumnAndShifts::merkle_check_write_node_shift, ColumnAndShifts::merkle_check_write_root_shift, ColumnAndShifts::poseidon2_hash_a_0_shift, ColumnAndShifts::poseidon2_hash_a_1_shift, ColumnAndShifts::poseidon2_hash_a_2_shift, ColumnAndShifts::poseidon2_hash_a_3_shift, ColumnAndShifts::poseidon2_hash_input_0_shift, ColumnAndShifts::poseidon2_hash_input_1_shift, ColumnAndShifts::poseidon2_hash_input_2_shift, ColumnAndShifts::poseidon2_hash_num_perm_rounds_rem_shift, ColumnAndShifts::poseidon2_hash_output_shift, ColumnAndShifts::poseidon2_hash_sel_shift, ColumnAndShifts::poseidon2_hash_start_shift, ColumnAndShifts::scalar_mul_bit_idx_shift, ColumnAndShifts::scalar_mul_point_inf_shift, ColumnAndShifts::scalar_mul_point_x_shift, ColumnAndShifts::scalar_mul_point_y_shift, ColumnAndShifts::scalar_mul_res_inf_shift, ColumnAndShifts::scalar_mul_res_x_shift, ColumnAndShifts::scalar_mul_res_y_shift, ColumnAndShifts::scalar_mul_scalar_shift, ColumnAndShifts::scalar_mul_sel_shift, ColumnAndShifts::scalar_mul_start_shift, ColumnAndShifts::scalar_mul_temp_inf_shift, ColumnAndShifts::scalar_mul_temp_x_shift, ColumnAndShifts::scalar_mul_temp_y_shift, ColumnAndShifts::sha256_a_shift, ColumnAndShifts::sha256_b_shift, ColumnAndShifts::sha256_c_shift, ColumnAndShifts::sha256_d_shift, ColumnAndShifts::sha256_e_shift, ColumnAndShifts::sha256_f_shift, ColumnAndShifts::sha256_g_shift, ColumnAndShifts::sha256_h_shift, ColumnAndShifts::sha256_helper_w0_shift, ColumnAndShifts::sha256_helper_w1_shift, ColumnAndShifts::sha256_helper_w10_shift, ColumnAndShifts::sha256_helper_w11_shift, ColumnAndShifts::sha256_helper_w12_shift, ColumnAndShifts::sha256_helper_w13_shift, ColumnAndShifts::sha256_helper_w14_shift, ColumnAndShifts::sha256_helper_w15_shift, ColumnAndShifts::sha256_helper_w2_shift, ColumnAndShifts::sha256_helper_w3_shift, ColumnAndShifts::sha256_helper_w4_shift, ColumnAndShifts::sha256_helper_w5_shift, ColumnAndShifts::sha256_helper_w6_shift, ColumnAndShifts::sha256_helper_w7_shift, ColumnAndShifts::sha256_helper_w8_shift, ColumnAndShifts::sha256_helper_w9_shift, ColumnAndShifts::sha256_rounds_remaining_shift, ColumnAndShifts::sha256_sel_shift, ColumnAndShifts::sha256_start_shift, ColumnAndShifts::to_radix_acc_shift, ColumnAndShifts::to_radix_acc_under_p_shift, ColumnAndShifts::to_radix_exponent_shift, ColumnAndShifts::to_radix_limb_shift, ColumnAndShifts::to_radix_limb_eq_p_shift, ColumnAndShifts::to_radix_limb_index_shift, ColumnAndShifts::to_radix_limb_lt_p_shift, ColumnAndShifts::to_radix_not_padding_limb_shift, ColumnAndShifts::to_radix_radix_shift, ColumnAndShifts::to_radix_safe_limbs_shift, ColumnAndShifts::to_radix_sel_shift, ColumnAndShifts::to_radix_start_shift, ColumnAndShifts::to_radix_value_shift +#define AVM2_TO_BE_SHIFTED_COLUMNS AVM2_TO_BE_SHIFTED_E(Column::) +#define AVM2_SHIFTED_COLUMNS AVM2_SHIFTED_ENTITIES_E(ColumnAndShifts::) // clang-format on // All columns minus shifts. @@ -45,4 +51,4 @@ inline const std::vector& COLUMN_NAMES = []() { return vec; }(); -} // namespace bb::avm2 \ No newline at end of file +} // namespace bb::avm2 diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_address_derivation.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_address_derivation.hpp index 7284b666a2a2..68616b1dd7e9 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_address_derivation.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_address_derivation.hpp @@ -46,15 +46,16 @@ class lookup_address_derivation_salted_initialization_hash_poseidon2_0_settings template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._address_derivation_sel() == 1 || in._poseidon2_hash_start() == 1); + return (in.get(ColumnAndShifts::address_derivation_sel) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_start) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._address_derivation_sel()); - const auto is_table_entry = View(in._poseidon2_hash_start()); + const auto is_operation = View(in.get(ColumnAndShifts::address_derivation_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_start)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -70,18 +71,19 @@ class lookup_address_derivation_salted_initialization_hash_poseidon2_0_settings template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_address_derivation_salted_initialization_hash_poseidon2_0_inv(), - in._lookup_address_derivation_salted_initialization_hash_poseidon2_0_counts(), - in._address_derivation_sel(), - in._poseidon2_hash_start(), - in._address_derivation_partial_address_domain_separator(), - in._address_derivation_salt(), - in._address_derivation_init_hash(), - in._address_derivation_salted_init_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple( + in.get(ColumnAndShifts::lookup_address_derivation_salted_initialization_hash_poseidon2_0_inv), + in.get(ColumnAndShifts::lookup_address_derivation_salted_initialization_hash_poseidon2_0_counts), + in.get(ColumnAndShifts::address_derivation_sel), + in.get(ColumnAndShifts::poseidon2_hash_start), + in.get(ColumnAndShifts::address_derivation_partial_address_domain_separator), + in.get(ColumnAndShifts::address_derivation_salt), + in.get(ColumnAndShifts::address_derivation_init_hash), + in.get(ColumnAndShifts::address_derivation_salted_init_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -147,15 +149,16 @@ class lookup_address_derivation_salted_initialization_hash_poseidon2_1_settings template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._address_derivation_sel() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::address_derivation_sel) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._address_derivation_sel()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::address_derivation_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -171,18 +174,19 @@ class lookup_address_derivation_salted_initialization_hash_poseidon2_1_settings template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_address_derivation_salted_initialization_hash_poseidon2_1_inv(), - in._lookup_address_derivation_salted_initialization_hash_poseidon2_1_counts(), - in._address_derivation_sel(), - in._poseidon2_hash_end(), - in._address_derivation_deployer_addr(), - in._precomputed_zero(), - in._precomputed_zero(), - in._address_derivation_salted_init_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple( + in.get(ColumnAndShifts::lookup_address_derivation_salted_initialization_hash_poseidon2_1_inv), + in.get(ColumnAndShifts::lookup_address_derivation_salted_initialization_hash_poseidon2_1_counts), + in.get(ColumnAndShifts::address_derivation_sel), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::address_derivation_deployer_addr), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::address_derivation_salted_init_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -248,15 +252,16 @@ class lookup_address_derivation_partial_address_poseidon2_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._address_derivation_sel() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::address_derivation_sel) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._address_derivation_sel()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::address_derivation_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -272,18 +277,19 @@ class lookup_address_derivation_partial_address_poseidon2_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_address_derivation_partial_address_poseidon2_inv(), - in._lookup_address_derivation_partial_address_poseidon2_counts(), - in._address_derivation_sel(), - in._poseidon2_hash_end(), - in._address_derivation_partial_address_domain_separator(), - in._address_derivation_class_id(), - in._address_derivation_salted_init_hash(), - in._address_derivation_partial_address(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple( + in.get(ColumnAndShifts::lookup_address_derivation_partial_address_poseidon2_inv), + in.get(ColumnAndShifts::lookup_address_derivation_partial_address_poseidon2_counts), + in.get(ColumnAndShifts::address_derivation_sel), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::address_derivation_partial_address_domain_separator), + in.get(ColumnAndShifts::address_derivation_class_id), + in.get(ColumnAndShifts::address_derivation_salted_init_hash), + in.get(ColumnAndShifts::address_derivation_partial_address), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -348,15 +354,16 @@ class lookup_address_derivation_public_keys_hash_poseidon2_0_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._address_derivation_sel() == 1 || in._poseidon2_hash_start() == 1); + return (in.get(ColumnAndShifts::address_derivation_sel) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_start) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._address_derivation_sel()); - const auto is_table_entry = View(in._poseidon2_hash_start()); + const auto is_operation = View(in.get(ColumnAndShifts::address_derivation_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_start)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -372,18 +379,19 @@ class lookup_address_derivation_public_keys_hash_poseidon2_0_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_address_derivation_public_keys_hash_poseidon2_0_inv(), - in._lookup_address_derivation_public_keys_hash_poseidon2_0_counts(), - in._address_derivation_sel(), - in._poseidon2_hash_start(), - in._address_derivation_public_keys_hash_domain_separator(), - in._address_derivation_nullifier_key_x(), - in._address_derivation_nullifier_key_y(), - in._address_derivation_public_keys_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple( + in.get(ColumnAndShifts::lookup_address_derivation_public_keys_hash_poseidon2_0_inv), + in.get(ColumnAndShifts::lookup_address_derivation_public_keys_hash_poseidon2_0_counts), + in.get(ColumnAndShifts::address_derivation_sel), + in.get(ColumnAndShifts::poseidon2_hash_start), + in.get(ColumnAndShifts::address_derivation_public_keys_hash_domain_separator), + in.get(ColumnAndShifts::address_derivation_nullifier_key_x), + in.get(ColumnAndShifts::address_derivation_nullifier_key_y), + in.get(ColumnAndShifts::address_derivation_public_keys_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -448,15 +456,16 @@ class lookup_address_derivation_public_keys_hash_poseidon2_1_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._address_derivation_sel() == 1 || in._poseidon2_hash_sel() == 1); + return (in.get(ColumnAndShifts::address_derivation_sel) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._address_derivation_sel()); - const auto is_table_entry = View(in._poseidon2_hash_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::address_derivation_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -472,18 +481,19 @@ class lookup_address_derivation_public_keys_hash_poseidon2_1_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_address_derivation_public_keys_hash_poseidon2_1_inv(), - in._lookup_address_derivation_public_keys_hash_poseidon2_1_counts(), - in._address_derivation_sel(), - in._poseidon2_hash_sel(), - in._precomputed_zero(), - in._address_derivation_incoming_viewing_key_x(), - in._address_derivation_incoming_viewing_key_y(), - in._address_derivation_public_keys_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple( + in.get(ColumnAndShifts::lookup_address_derivation_public_keys_hash_poseidon2_1_inv), + in.get(ColumnAndShifts::lookup_address_derivation_public_keys_hash_poseidon2_1_counts), + in.get(ColumnAndShifts::address_derivation_sel), + in.get(ColumnAndShifts::poseidon2_hash_sel), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::address_derivation_incoming_viewing_key_x), + in.get(ColumnAndShifts::address_derivation_incoming_viewing_key_y), + in.get(ColumnAndShifts::address_derivation_public_keys_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -548,15 +558,16 @@ class lookup_address_derivation_public_keys_hash_poseidon2_2_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._address_derivation_sel() == 1 || in._poseidon2_hash_sel() == 1); + return (in.get(ColumnAndShifts::address_derivation_sel) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._address_derivation_sel()); - const auto is_table_entry = View(in._poseidon2_hash_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::address_derivation_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -572,18 +583,19 @@ class lookup_address_derivation_public_keys_hash_poseidon2_2_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_address_derivation_public_keys_hash_poseidon2_2_inv(), - in._lookup_address_derivation_public_keys_hash_poseidon2_2_counts(), - in._address_derivation_sel(), - in._poseidon2_hash_sel(), - in._precomputed_zero(), - in._address_derivation_outgoing_viewing_key_x(), - in._address_derivation_outgoing_viewing_key_y(), - in._address_derivation_public_keys_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple( + in.get(ColumnAndShifts::lookup_address_derivation_public_keys_hash_poseidon2_2_inv), + in.get(ColumnAndShifts::lookup_address_derivation_public_keys_hash_poseidon2_2_counts), + in.get(ColumnAndShifts::address_derivation_sel), + in.get(ColumnAndShifts::poseidon2_hash_sel), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::address_derivation_outgoing_viewing_key_x), + in.get(ColumnAndShifts::address_derivation_outgoing_viewing_key_y), + in.get(ColumnAndShifts::address_derivation_public_keys_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -648,15 +660,16 @@ class lookup_address_derivation_public_keys_hash_poseidon2_3_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._address_derivation_sel() == 1 || in._poseidon2_hash_sel() == 1); + return (in.get(ColumnAndShifts::address_derivation_sel) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._address_derivation_sel()); - const auto is_table_entry = View(in._poseidon2_hash_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::address_derivation_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -672,18 +685,19 @@ class lookup_address_derivation_public_keys_hash_poseidon2_3_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_address_derivation_public_keys_hash_poseidon2_3_inv(), - in._lookup_address_derivation_public_keys_hash_poseidon2_3_counts(), - in._address_derivation_sel(), - in._poseidon2_hash_sel(), - in._precomputed_zero(), - in._address_derivation_tagging_key_x(), - in._address_derivation_tagging_key_y(), - in._address_derivation_public_keys_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple( + in.get(ColumnAndShifts::lookup_address_derivation_public_keys_hash_poseidon2_3_inv), + in.get(ColumnAndShifts::lookup_address_derivation_public_keys_hash_poseidon2_3_counts), + in.get(ColumnAndShifts::address_derivation_sel), + in.get(ColumnAndShifts::poseidon2_hash_sel), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::address_derivation_tagging_key_x), + in.get(ColumnAndShifts::address_derivation_tagging_key_y), + in.get(ColumnAndShifts::address_derivation_public_keys_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -748,15 +762,16 @@ class lookup_address_derivation_public_keys_hash_poseidon2_4_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._address_derivation_sel() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::address_derivation_sel) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._address_derivation_sel()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::address_derivation_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -772,18 +787,19 @@ class lookup_address_derivation_public_keys_hash_poseidon2_4_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_address_derivation_public_keys_hash_poseidon2_4_inv(), - in._lookup_address_derivation_public_keys_hash_poseidon2_4_counts(), - in._address_derivation_sel(), - in._poseidon2_hash_end(), - in._precomputed_zero(), - in._precomputed_zero(), - in._precomputed_zero(), - in._address_derivation_public_keys_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple( + in.get(ColumnAndShifts::lookup_address_derivation_public_keys_hash_poseidon2_4_inv), + in.get(ColumnAndShifts::lookup_address_derivation_public_keys_hash_poseidon2_4_counts), + in.get(ColumnAndShifts::address_derivation_sel), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::address_derivation_public_keys_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -848,15 +864,16 @@ class lookup_address_derivation_preaddress_poseidon2_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._address_derivation_sel() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::address_derivation_sel) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._address_derivation_sel()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::address_derivation_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -872,18 +889,18 @@ class lookup_address_derivation_preaddress_poseidon2_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_address_derivation_preaddress_poseidon2_inv(), - in._lookup_address_derivation_preaddress_poseidon2_counts(), - in._address_derivation_sel(), - in._poseidon2_hash_end(), - in._address_derivation_preaddress_domain_separator(), - in._address_derivation_public_keys_hash(), - in._address_derivation_partial_address(), - in._address_derivation_preaddress(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_address_derivation_preaddress_poseidon2_inv), + in.get(ColumnAndShifts::lookup_address_derivation_preaddress_poseidon2_counts), + in.get(ColumnAndShifts::address_derivation_sel), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::address_derivation_preaddress_domain_separator), + in.get(ColumnAndShifts::address_derivation_public_keys_hash), + in.get(ColumnAndShifts::address_derivation_partial_address), + in.get(ColumnAndShifts::address_derivation_preaddress), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -950,15 +967,15 @@ class lookup_address_derivation_preaddress_scalar_mul_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._address_derivation_sel() == 1 || in._scalar_mul_start() == 1); + return (in.get(ColumnAndShifts::address_derivation_sel) == 1 || in.get(ColumnAndShifts::scalar_mul_start) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._address_derivation_sel()); - const auto is_table_entry = View(in._scalar_mul_start()); + const auto is_operation = View(in.get(ColumnAndShifts::address_derivation_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::scalar_mul_start)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -974,24 +991,24 @@ class lookup_address_derivation_preaddress_scalar_mul_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_address_derivation_preaddress_scalar_mul_inv(), - in._lookup_address_derivation_preaddress_scalar_mul_counts(), - in._address_derivation_sel(), - in._scalar_mul_start(), - in._address_derivation_preaddress(), - in._address_derivation_g1_x(), - in._address_derivation_g1_y(), - in._precomputed_zero(), - in._address_derivation_preaddress_public_key_x(), - in._address_derivation_preaddress_public_key_y(), - in._precomputed_zero(), - in._scalar_mul_scalar(), - in._scalar_mul_point_x(), - in._scalar_mul_point_y(), - in._scalar_mul_point_inf(), - in._scalar_mul_res_x(), - in._scalar_mul_res_y(), - in._scalar_mul_res_inf()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_address_derivation_preaddress_scalar_mul_inv), + in.get(ColumnAndShifts::lookup_address_derivation_preaddress_scalar_mul_counts), + in.get(ColumnAndShifts::address_derivation_sel), + in.get(ColumnAndShifts::scalar_mul_start), + in.get(ColumnAndShifts::address_derivation_preaddress), + in.get(ColumnAndShifts::address_derivation_g1_x), + in.get(ColumnAndShifts::address_derivation_g1_y), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::address_derivation_preaddress_public_key_x), + in.get(ColumnAndShifts::address_derivation_preaddress_public_key_y), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::scalar_mul_scalar), + in.get(ColumnAndShifts::scalar_mul_point_x), + in.get(ColumnAndShifts::scalar_mul_point_y), + in.get(ColumnAndShifts::scalar_mul_point_inf), + in.get(ColumnAndShifts::scalar_mul_res_x), + in.get(ColumnAndShifts::scalar_mul_res_y), + in.get(ColumnAndShifts::scalar_mul_res_inf)); } }; @@ -1060,15 +1077,15 @@ class lookup_address_derivation_address_ecadd_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._address_derivation_sel() == 1 || in._ecc_sel() == 1); + return (in.get(ColumnAndShifts::address_derivation_sel) == 1 || in.get(ColumnAndShifts::ecc_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._address_derivation_sel()); - const auto is_table_entry = View(in._ecc_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::address_derivation_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::ecc_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -1084,28 +1101,28 @@ class lookup_address_derivation_address_ecadd_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_address_derivation_address_ecadd_inv(), - in._lookup_address_derivation_address_ecadd_counts(), - in._address_derivation_sel(), - in._ecc_sel(), - in._address_derivation_preaddress_public_key_x(), - in._address_derivation_preaddress_public_key_y(), - in._precomputed_zero(), - in._address_derivation_incoming_viewing_key_x(), - in._address_derivation_incoming_viewing_key_y(), - in._precomputed_zero(), - in._address_derivation_address(), - in._address_derivation_address_y(), - in._precomputed_zero(), - in._ecc_p_x(), - in._ecc_p_y(), - in._ecc_p_is_inf(), - in._ecc_q_x(), - in._ecc_q_y(), - in._ecc_q_is_inf(), - in._ecc_r_x(), - in._ecc_r_y(), - in._ecc_r_is_inf()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_address_derivation_address_ecadd_inv), + in.get(ColumnAndShifts::lookup_address_derivation_address_ecadd_counts), + in.get(ColumnAndShifts::address_derivation_sel), + in.get(ColumnAndShifts::ecc_sel), + in.get(ColumnAndShifts::address_derivation_preaddress_public_key_x), + in.get(ColumnAndShifts::address_derivation_preaddress_public_key_y), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::address_derivation_incoming_viewing_key_x), + in.get(ColumnAndShifts::address_derivation_incoming_viewing_key_y), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::address_derivation_address), + in.get(ColumnAndShifts::address_derivation_address_y), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::ecc_p_x), + in.get(ColumnAndShifts::ecc_p_y), + in.get(ColumnAndShifts::ecc_p_is_inf), + in.get(ColumnAndShifts::ecc_q_x), + in.get(ColumnAndShifts::ecc_q_y), + in.get(ColumnAndShifts::ecc_q_is_inf), + in.get(ColumnAndShifts::ecc_r_x), + in.get(ColumnAndShifts::ecc_r_y), + in.get(ColumnAndShifts::ecc_r_is_inf)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bc_decomposition.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bc_decomposition.hpp index 5206cc787f74..2082332dd83c 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bc_decomposition.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bc_decomposition.hpp @@ -38,15 +38,16 @@ class lookup_bc_decomposition_bytes_are_bytes_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._bc_decomposition_sel() == 1 || in._precomputed_sel_range_8() == 1); + return (in.get(ColumnAndShifts::bc_decomposition_sel) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_8) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._bc_decomposition_sel()); - const auto is_table_entry = View(in._precomputed_sel_range_8()); + const auto is_operation = View(in.get(ColumnAndShifts::bc_decomposition_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_8)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -62,12 +63,12 @@ class lookup_bc_decomposition_bytes_are_bytes_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_bc_decomposition_bytes_are_bytes_inv(), - in._lookup_bc_decomposition_bytes_are_bytes_counts(), - in._bc_decomposition_sel(), - in._precomputed_sel_range_8(), - in._bc_decomposition_bytes(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_bc_decomposition_bytes_are_bytes_inv), + in.get(ColumnAndShifts::lookup_bc_decomposition_bytes_are_bytes_counts), + in.get(ColumnAndShifts::bc_decomposition_sel), + in.get(ColumnAndShifts::precomputed_sel_range_8), + in.get(ColumnAndShifts::bc_decomposition_bytes), + in.get(ColumnAndShifts::precomputed_clk)); } }; @@ -123,15 +124,16 @@ class lookup_bc_decomposition_abs_diff_is_u16_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._bc_decomposition_sel() == 1 || in._precomputed_sel_range_16() == 1); + return (in.get(ColumnAndShifts::bc_decomposition_sel) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_16) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._bc_decomposition_sel()); - const auto is_table_entry = View(in._precomputed_sel_range_16()); + const auto is_operation = View(in.get(ColumnAndShifts::bc_decomposition_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_16)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -147,12 +149,12 @@ class lookup_bc_decomposition_abs_diff_is_u16_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_bc_decomposition_abs_diff_is_u16_inv(), - in._lookup_bc_decomposition_abs_diff_is_u16_counts(), - in._bc_decomposition_sel(), - in._precomputed_sel_range_16(), - in._bc_decomposition_abs_diff(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_bc_decomposition_abs_diff_is_u16_inv), + in.get(ColumnAndShifts::lookup_bc_decomposition_abs_diff_is_u16_counts), + in.get(ColumnAndShifts::bc_decomposition_sel), + in.get(ColumnAndShifts::precomputed_sel_range_16), + in.get(ColumnAndShifts::bc_decomposition_abs_diff), + in.get(ColumnAndShifts::precomputed_clk)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bc_hashing.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bc_hashing.hpp index dbc0796debc6..5342d5880b92 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bc_hashing.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bc_hashing.hpp @@ -44,15 +44,16 @@ class lookup_bc_hashing_get_packed_field_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._bc_hashing_sel() == 1 || in._bc_decomposition_sel_packed() == 1); + return (in.get(ColumnAndShifts::bc_hashing_sel) == 1 || + in.get(ColumnAndShifts::bc_decomposition_sel_packed) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._bc_hashing_sel()); - const auto is_table_entry = View(in._bc_decomposition_sel_packed()); + const auto is_operation = View(in.get(ColumnAndShifts::bc_hashing_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::bc_decomposition_sel_packed)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -68,16 +69,16 @@ class lookup_bc_hashing_get_packed_field_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_bc_hashing_get_packed_field_inv(), - in._lookup_bc_hashing_get_packed_field_counts(), - in._bc_hashing_sel(), - in._bc_decomposition_sel_packed(), - in._bc_hashing_pc_index(), - in._bc_hashing_bytecode_id(), - in._bc_hashing_packed_field(), - in._bc_decomposition_pc(), - in._bc_decomposition_id(), - in._bc_decomposition_packed_field()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_bc_hashing_get_packed_field_inv), + in.get(ColumnAndShifts::lookup_bc_hashing_get_packed_field_counts), + in.get(ColumnAndShifts::bc_hashing_sel), + in.get(ColumnAndShifts::bc_decomposition_sel_packed), + in.get(ColumnAndShifts::bc_hashing_pc_index), + in.get(ColumnAndShifts::bc_hashing_bytecode_id), + in.get(ColumnAndShifts::bc_hashing_packed_field), + in.get(ColumnAndShifts::bc_decomposition_pc), + in.get(ColumnAndShifts::bc_decomposition_id), + in.get(ColumnAndShifts::bc_decomposition_packed_field)); } }; @@ -139,15 +140,16 @@ class lookup_bc_hashing_iv_is_len_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._bc_hashing_start() == 1 || in._bc_decomposition_sel_packed() == 1); + return (in.get(ColumnAndShifts::bc_hashing_start) == 1 || + in.get(ColumnAndShifts::bc_decomposition_sel_packed) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._bc_hashing_start()); - const auto is_table_entry = View(in._bc_decomposition_sel_packed()); + const auto is_operation = View(in.get(ColumnAndShifts::bc_hashing_start)); + const auto is_table_entry = View(in.get(ColumnAndShifts::bc_decomposition_sel_packed)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -163,16 +165,16 @@ class lookup_bc_hashing_iv_is_len_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_bc_hashing_iv_is_len_inv(), - in._lookup_bc_hashing_iv_is_len_counts(), - in._bc_hashing_start(), - in._bc_decomposition_sel_packed(), - in._bc_hashing_pc_index(), - in._bc_hashing_bytecode_id(), - in._bc_hashing_incremental_hash(), - in._bc_decomposition_pc(), - in._bc_decomposition_id(), - in._bc_decomposition_bytes_remaining()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_bc_hashing_iv_is_len_inv), + in.get(ColumnAndShifts::lookup_bc_hashing_iv_is_len_counts), + in.get(ColumnAndShifts::bc_hashing_start), + in.get(ColumnAndShifts::bc_decomposition_sel_packed), + in.get(ColumnAndShifts::bc_hashing_pc_index), + in.get(ColumnAndShifts::bc_hashing_bytecode_id), + in.get(ColumnAndShifts::bc_hashing_incremental_hash), + in.get(ColumnAndShifts::bc_decomposition_pc), + in.get(ColumnAndShifts::bc_decomposition_id), + in.get(ColumnAndShifts::bc_decomposition_bytes_remaining)); } }; @@ -233,15 +235,15 @@ class lookup_bc_hashing_poseidon2_hash_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._bc_hashing_sel() == 1 || in._poseidon2_hash_sel() == 1); + return (in.get(ColumnAndShifts::bc_hashing_sel) == 1 || in.get(ColumnAndShifts::poseidon2_hash_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._bc_hashing_sel()); - const auto is_table_entry = View(in._poseidon2_hash_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::bc_hashing_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -257,16 +259,16 @@ class lookup_bc_hashing_poseidon2_hash_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_bc_hashing_poseidon2_hash_inv(), - in._lookup_bc_hashing_poseidon2_hash_counts(), - in._bc_hashing_sel(), - in._poseidon2_hash_sel(), - in._bc_hashing_packed_field(), - in._bc_hashing_incremental_hash(), - in._bc_hashing_output_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_bc_hashing_poseidon2_hash_inv), + in.get(ColumnAndShifts::lookup_bc_hashing_poseidon2_hash_counts), + in.get(ColumnAndShifts::bc_hashing_sel), + in.get(ColumnAndShifts::poseidon2_hash_sel), + in.get(ColumnAndShifts::bc_hashing_packed_field), + in.get(ColumnAndShifts::bc_hashing_incremental_hash), + in.get(ColumnAndShifts::bc_hashing_output_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bc_retrieval.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bc_retrieval.hpp index 0b049ef18e10..32ce95f18432 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bc_retrieval.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bc_retrieval.hpp @@ -46,15 +46,15 @@ class lookup_bc_retrieval_silo_deployment_nullifier_poseidon2_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._bc_retrieval_sel() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::bc_retrieval_sel) == 1 || in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._bc_retrieval_sel()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::bc_retrieval_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -70,18 +70,19 @@ class lookup_bc_retrieval_silo_deployment_nullifier_poseidon2_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_bc_retrieval_silo_deployment_nullifier_poseidon2_inv(), - in._lookup_bc_retrieval_silo_deployment_nullifier_poseidon2_counts(), - in._bc_retrieval_sel(), - in._poseidon2_hash_end(), - in._bc_retrieval_outer_nullifier_domain_separator(), - in._bc_retrieval_deployer_protocol_contract_address(), - in._bc_retrieval_address(), - in._bc_retrieval_siloed_address(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple( + in.get(ColumnAndShifts::lookup_bc_retrieval_silo_deployment_nullifier_poseidon2_inv), + in.get(ColumnAndShifts::lookup_bc_retrieval_silo_deployment_nullifier_poseidon2_counts), + in.get(ColumnAndShifts::bc_retrieval_sel), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::bc_retrieval_outer_nullifier_domain_separator), + in.get(ColumnAndShifts::bc_retrieval_deployer_protocol_contract_address), + in.get(ColumnAndShifts::bc_retrieval_address), + in.get(ColumnAndShifts::bc_retrieval_siloed_address), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -144,15 +145,15 @@ class lookup_bc_retrieval_deployment_nullifier_read_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._bc_retrieval_sel() == 1 || in._nullifier_check_sel() == 1); + return (in.get(ColumnAndShifts::bc_retrieval_sel) == 1 || in.get(ColumnAndShifts::nullifier_check_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._bc_retrieval_sel()); - const auto is_table_entry = View(in._nullifier_check_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::bc_retrieval_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::nullifier_check_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -168,16 +169,16 @@ class lookup_bc_retrieval_deployment_nullifier_read_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_bc_retrieval_deployment_nullifier_read_inv(), - in._lookup_bc_retrieval_deployment_nullifier_read_counts(), - in._bc_retrieval_sel(), - in._nullifier_check_sel(), - in._bc_retrieval_nullifier_exists(), - in._bc_retrieval_siloed_address(), - in._bc_retrieval_nullifier_tree_root(), - in._nullifier_check_exists(), - in._nullifier_check_nullifier(), - in._nullifier_check_root()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_bc_retrieval_deployment_nullifier_read_inv), + in.get(ColumnAndShifts::lookup_bc_retrieval_deployment_nullifier_read_counts), + in.get(ColumnAndShifts::bc_retrieval_sel), + in.get(ColumnAndShifts::nullifier_check_sel), + in.get(ColumnAndShifts::bc_retrieval_nullifier_exists), + in.get(ColumnAndShifts::bc_retrieval_siloed_address), + in.get(ColumnAndShifts::bc_retrieval_nullifier_tree_root), + in.get(ColumnAndShifts::nullifier_check_exists), + in.get(ColumnAndShifts::nullifier_check_nullifier), + in.get(ColumnAndShifts::nullifier_check_root)); } }; @@ -260,15 +261,15 @@ class lookup_bc_retrieval_address_derivation_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._bc_retrieval_sel() == 1 || in._address_derivation_sel() == 1); + return (in.get(ColumnAndShifts::bc_retrieval_sel) == 1 || in.get(ColumnAndShifts::address_derivation_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._bc_retrieval_sel()); - const auto is_table_entry = View(in._address_derivation_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::bc_retrieval_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::address_derivation_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -284,36 +285,36 @@ class lookup_bc_retrieval_address_derivation_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_bc_retrieval_address_derivation_inv(), - in._lookup_bc_retrieval_address_derivation_counts(), - in._bc_retrieval_sel(), - in._address_derivation_sel(), - in._bc_retrieval_address(), - in._bc_retrieval_salt(), - in._bc_retrieval_deployer_addr(), - in._bc_retrieval_original_class_id(), - in._bc_retrieval_init_hash(), - in._bc_retrieval_nullifier_key_x(), - in._bc_retrieval_nullifier_key_y(), - in._bc_retrieval_incoming_viewing_key_x(), - in._bc_retrieval_incoming_viewing_key_y(), - in._bc_retrieval_outgoing_viewing_key_x(), - in._bc_retrieval_outgoing_viewing_key_y(), - in._bc_retrieval_tagging_key_x(), - in._bc_retrieval_tagging_key_y(), - in._address_derivation_address(), - in._address_derivation_salt(), - in._address_derivation_deployer_addr(), - in._address_derivation_class_id(), - in._address_derivation_init_hash(), - in._address_derivation_nullifier_key_x(), - in._address_derivation_nullifier_key_y(), - in._address_derivation_incoming_viewing_key_x(), - in._address_derivation_incoming_viewing_key_y(), - in._address_derivation_outgoing_viewing_key_x(), - in._address_derivation_outgoing_viewing_key_y(), - in._address_derivation_tagging_key_x(), - in._address_derivation_tagging_key_y()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_bc_retrieval_address_derivation_inv), + in.get(ColumnAndShifts::lookup_bc_retrieval_address_derivation_counts), + in.get(ColumnAndShifts::bc_retrieval_sel), + in.get(ColumnAndShifts::address_derivation_sel), + in.get(ColumnAndShifts::bc_retrieval_address), + in.get(ColumnAndShifts::bc_retrieval_salt), + in.get(ColumnAndShifts::bc_retrieval_deployer_addr), + in.get(ColumnAndShifts::bc_retrieval_original_class_id), + in.get(ColumnAndShifts::bc_retrieval_init_hash), + in.get(ColumnAndShifts::bc_retrieval_nullifier_key_x), + in.get(ColumnAndShifts::bc_retrieval_nullifier_key_y), + in.get(ColumnAndShifts::bc_retrieval_incoming_viewing_key_x), + in.get(ColumnAndShifts::bc_retrieval_incoming_viewing_key_y), + in.get(ColumnAndShifts::bc_retrieval_outgoing_viewing_key_x), + in.get(ColumnAndShifts::bc_retrieval_outgoing_viewing_key_y), + in.get(ColumnAndShifts::bc_retrieval_tagging_key_x), + in.get(ColumnAndShifts::bc_retrieval_tagging_key_y), + in.get(ColumnAndShifts::address_derivation_address), + in.get(ColumnAndShifts::address_derivation_salt), + in.get(ColumnAndShifts::address_derivation_deployer_addr), + in.get(ColumnAndShifts::address_derivation_class_id), + in.get(ColumnAndShifts::address_derivation_init_hash), + in.get(ColumnAndShifts::address_derivation_nullifier_key_x), + in.get(ColumnAndShifts::address_derivation_nullifier_key_y), + in.get(ColumnAndShifts::address_derivation_incoming_viewing_key_x), + in.get(ColumnAndShifts::address_derivation_incoming_viewing_key_y), + in.get(ColumnAndShifts::address_derivation_outgoing_viewing_key_x), + in.get(ColumnAndShifts::address_derivation_outgoing_viewing_key_y), + in.get(ColumnAndShifts::address_derivation_tagging_key_x), + in.get(ColumnAndShifts::address_derivation_tagging_key_y)); } }; @@ -379,15 +380,15 @@ class lookup_bc_retrieval_update_check_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._bc_retrieval_sel() == 1 || in._update_check_sel() == 1); + return (in.get(ColumnAndShifts::bc_retrieval_sel) == 1 || in.get(ColumnAndShifts::update_check_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._bc_retrieval_sel()); - const auto is_table_entry = View(in._update_check_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::bc_retrieval_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::update_check_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -403,20 +404,20 @@ class lookup_bc_retrieval_update_check_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_bc_retrieval_update_check_inv(), - in._lookup_bc_retrieval_update_check_counts(), - in._bc_retrieval_sel(), - in._update_check_sel(), - in._bc_retrieval_address(), - in._bc_retrieval_current_class_id(), - in._bc_retrieval_original_class_id(), - in._bc_retrieval_public_data_tree_root(), - in._bc_retrieval_block_number(), - in._update_check_address(), - in._update_check_current_class_id(), - in._update_check_original_class_id(), - in._update_check_public_data_tree_root(), - in._update_check_block_number()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_bc_retrieval_update_check_inv), + in.get(ColumnAndShifts::lookup_bc_retrieval_update_check_counts), + in.get(ColumnAndShifts::bc_retrieval_sel), + in.get(ColumnAndShifts::update_check_sel), + in.get(ColumnAndShifts::bc_retrieval_address), + in.get(ColumnAndShifts::bc_retrieval_current_class_id), + in.get(ColumnAndShifts::bc_retrieval_original_class_id), + in.get(ColumnAndShifts::bc_retrieval_public_data_tree_root), + in.get(ColumnAndShifts::bc_retrieval_block_number), + in.get(ColumnAndShifts::update_check_address), + in.get(ColumnAndShifts::update_check_current_class_id), + in.get(ColumnAndShifts::update_check_original_class_id), + in.get(ColumnAndShifts::update_check_public_data_tree_root), + in.get(ColumnAndShifts::update_check_block_number)); } }; @@ -480,15 +481,16 @@ class lookup_bc_retrieval_class_id_derivation_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._bc_retrieval_sel() == 1 || in._class_id_derivation_sel() == 1); + return (in.get(ColumnAndShifts::bc_retrieval_sel) == 1 || + in.get(ColumnAndShifts::class_id_derivation_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._bc_retrieval_sel()); - const auto is_table_entry = View(in._class_id_derivation_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::bc_retrieval_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::class_id_derivation_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -504,18 +506,18 @@ class lookup_bc_retrieval_class_id_derivation_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_bc_retrieval_class_id_derivation_inv(), - in._lookup_bc_retrieval_class_id_derivation_counts(), - in._bc_retrieval_sel(), - in._class_id_derivation_sel(), - in._bc_retrieval_current_class_id(), - in._bc_retrieval_artifact_hash(), - in._bc_retrieval_private_function_root(), - in._bc_retrieval_public_bytecode_commitment(), - in._class_id_derivation_class_id(), - in._class_id_derivation_artifact_hash(), - in._class_id_derivation_private_function_root(), - in._class_id_derivation_public_bytecode_commitment()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_bc_retrieval_class_id_derivation_inv), + in.get(ColumnAndShifts::lookup_bc_retrieval_class_id_derivation_counts), + in.get(ColumnAndShifts::bc_retrieval_sel), + in.get(ColumnAndShifts::class_id_derivation_sel), + in.get(ColumnAndShifts::bc_retrieval_current_class_id), + in.get(ColumnAndShifts::bc_retrieval_artifact_hash), + in.get(ColumnAndShifts::bc_retrieval_private_function_root), + in.get(ColumnAndShifts::bc_retrieval_public_bytecode_commitment), + in.get(ColumnAndShifts::class_id_derivation_class_id), + in.get(ColumnAndShifts::class_id_derivation_artifact_hash), + in.get(ColumnAndShifts::class_id_derivation_private_function_root), + in.get(ColumnAndShifts::class_id_derivation_public_bytecode_commitment)); } }; @@ -573,15 +575,15 @@ class lookup_bc_retrieval_bytecode_hash_is_correct_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._bc_retrieval_sel() == 1 || in._bc_hashing_latch() == 1); + return (in.get(ColumnAndShifts::bc_retrieval_sel) == 1 || in.get(ColumnAndShifts::bc_hashing_latch) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._bc_retrieval_sel()); - const auto is_table_entry = View(in._bc_hashing_latch()); + const auto is_operation = View(in.get(ColumnAndShifts::bc_retrieval_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::bc_hashing_latch)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -597,14 +599,14 @@ class lookup_bc_retrieval_bytecode_hash_is_correct_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_bc_retrieval_bytecode_hash_is_correct_inv(), - in._lookup_bc_retrieval_bytecode_hash_is_correct_counts(), - in._bc_retrieval_sel(), - in._bc_hashing_latch(), - in._bc_retrieval_bytecode_id(), - in._bc_retrieval_public_bytecode_commitment(), - in._bc_hashing_bytecode_id(), - in._bc_hashing_output_hash()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_bc_retrieval_bytecode_hash_is_correct_inv), + in.get(ColumnAndShifts::lookup_bc_retrieval_bytecode_hash_is_correct_counts), + in.get(ColumnAndShifts::bc_retrieval_sel), + in.get(ColumnAndShifts::bc_hashing_latch), + in.get(ColumnAndShifts::bc_retrieval_bytecode_id), + in.get(ColumnAndShifts::bc_retrieval_public_bytecode_commitment), + in.get(ColumnAndShifts::bc_hashing_bytecode_id), + in.get(ColumnAndShifts::bc_hashing_output_hash)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bitwise.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bitwise.hpp index 237aac67c255..69e7cb0451cc 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bitwise.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_bitwise.hpp @@ -39,15 +39,16 @@ class lookup_bitwise_integral_tag_length_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._bitwise_start() == 1 || in._precomputed_sel_integral_tag() == 1); + return (in.get(ColumnAndShifts::bitwise_start) == 1 || + in.get(ColumnAndShifts::precomputed_sel_integral_tag) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._bitwise_start()); - const auto is_table_entry = View(in._precomputed_sel_integral_tag()); + const auto is_operation = View(in.get(ColumnAndShifts::bitwise_start)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_integral_tag)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -63,14 +64,14 @@ class lookup_bitwise_integral_tag_length_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_bitwise_integral_tag_length_inv(), - in._lookup_bitwise_integral_tag_length_counts(), - in._bitwise_start(), - in._precomputed_sel_integral_tag(), - in._bitwise_tag(), - in._bitwise_ctr(), - in._precomputed_clk(), - in._precomputed_integral_tag_length()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_bitwise_integral_tag_length_inv), + in.get(ColumnAndShifts::lookup_bitwise_integral_tag_length_counts), + in.get(ColumnAndShifts::bitwise_start), + in.get(ColumnAndShifts::precomputed_sel_integral_tag), + in.get(ColumnAndShifts::bitwise_tag), + in.get(ColumnAndShifts::bitwise_ctr), + in.get(ColumnAndShifts::precomputed_clk), + in.get(ColumnAndShifts::precomputed_integral_tag_length)); } }; @@ -132,15 +133,15 @@ class lookup_bitwise_byte_operations_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._bitwise_sel() == 1 || in._precomputed_sel_bitwise() == 1); + return (in.get(ColumnAndShifts::bitwise_sel) == 1 || in.get(ColumnAndShifts::precomputed_sel_bitwise) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._bitwise_sel()); - const auto is_table_entry = View(in._precomputed_sel_bitwise()); + const auto is_operation = View(in.get(ColumnAndShifts::bitwise_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_bitwise)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -156,18 +157,18 @@ class lookup_bitwise_byte_operations_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_bitwise_byte_operations_inv(), - in._lookup_bitwise_byte_operations_counts(), - in._bitwise_sel(), - in._precomputed_sel_bitwise(), - in._bitwise_op_id(), - in._bitwise_ia_byte(), - in._bitwise_ib_byte(), - in._bitwise_ic_byte(), - in._precomputed_bitwise_op_id(), - in._precomputed_bitwise_input_a(), - in._precomputed_bitwise_input_b(), - in._precomputed_bitwise_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_bitwise_byte_operations_inv), + in.get(ColumnAndShifts::lookup_bitwise_byte_operations_counts), + in.get(ColumnAndShifts::bitwise_sel), + in.get(ColumnAndShifts::precomputed_sel_bitwise), + in.get(ColumnAndShifts::bitwise_op_id), + in.get(ColumnAndShifts::bitwise_ia_byte), + in.get(ColumnAndShifts::bitwise_ib_byte), + in.get(ColumnAndShifts::bitwise_ic_byte), + in.get(ColumnAndShifts::precomputed_bitwise_op_id), + in.get(ColumnAndShifts::precomputed_bitwise_input_a), + in.get(ColumnAndShifts::precomputed_bitwise_input_b), + in.get(ColumnAndShifts::precomputed_bitwise_output)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_class_id_derivation.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_class_id_derivation.hpp index 6dcbde607bb9..0ff059de8681 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_class_id_derivation.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_class_id_derivation.hpp @@ -46,15 +46,16 @@ class lookup_class_id_derivation_class_id_poseidon2_0_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._class_id_derivation_sel() == 1 || in._poseidon2_hash_start() == 1); + return (in.get(ColumnAndShifts::class_id_derivation_sel) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_start) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._class_id_derivation_sel()); - const auto is_table_entry = View(in._poseidon2_hash_start()); + const auto is_operation = View(in.get(ColumnAndShifts::class_id_derivation_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_start)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -70,18 +71,18 @@ class lookup_class_id_derivation_class_id_poseidon2_0_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_class_id_derivation_class_id_poseidon2_0_inv(), - in._lookup_class_id_derivation_class_id_poseidon2_0_counts(), - in._class_id_derivation_sel(), - in._poseidon2_hash_start(), - in._class_id_derivation_temp_constant_for_lookup(), - in._class_id_derivation_artifact_hash(), - in._class_id_derivation_private_function_root(), - in._class_id_derivation_class_id(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_class_id_derivation_class_id_poseidon2_0_inv), + in.get(ColumnAndShifts::lookup_class_id_derivation_class_id_poseidon2_0_counts), + in.get(ColumnAndShifts::class_id_derivation_sel), + in.get(ColumnAndShifts::poseidon2_hash_start), + in.get(ColumnAndShifts::class_id_derivation_temp_constant_for_lookup), + in.get(ColumnAndShifts::class_id_derivation_artifact_hash), + in.get(ColumnAndShifts::class_id_derivation_private_function_root), + in.get(ColumnAndShifts::class_id_derivation_class_id), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -146,15 +147,16 @@ class lookup_class_id_derivation_class_id_poseidon2_1_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._class_id_derivation_sel() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::class_id_derivation_sel) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._class_id_derivation_sel()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::class_id_derivation_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -170,18 +172,18 @@ class lookup_class_id_derivation_class_id_poseidon2_1_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_class_id_derivation_class_id_poseidon2_1_inv(), - in._lookup_class_id_derivation_class_id_poseidon2_1_counts(), - in._class_id_derivation_sel(), - in._poseidon2_hash_end(), - in._class_id_derivation_public_bytecode_commitment(), - in._precomputed_zero(), - in._precomputed_zero(), - in._class_id_derivation_class_id(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_class_id_derivation_class_id_poseidon2_1_inv), + in.get(ColumnAndShifts::lookup_class_id_derivation_class_id_poseidon2_1_counts), + in.get(ColumnAndShifts::class_id_derivation_sel), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::class_id_derivation_public_bytecode_commitment), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::class_id_derivation_class_id), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_ff_gt.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_ff_gt.hpp index 36f792b5ab42..e3d6566e8b68 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_ff_gt.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_ff_gt.hpp @@ -40,15 +40,15 @@ class lookup_ff_gt_a_lo_range_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._ff_gt_sel() == 1 || in._range_check_sel() == 1); + return (in.get(ColumnAndShifts::ff_gt_sel) == 1 || in.get(ColumnAndShifts::range_check_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._ff_gt_sel()); - const auto is_table_entry = View(in._range_check_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::ff_gt_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::range_check_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -64,14 +64,14 @@ class lookup_ff_gt_a_lo_range_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_ff_gt_a_lo_range_inv(), - in._lookup_ff_gt_a_lo_range_counts(), - in._ff_gt_sel(), - in._range_check_sel(), - in._ff_gt_a_lo(), - in._ff_gt_constant_128(), - in._range_check_value(), - in._range_check_rng_chk_bits()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_ff_gt_a_lo_range_inv), + in.get(ColumnAndShifts::lookup_ff_gt_a_lo_range_counts), + in.get(ColumnAndShifts::ff_gt_sel), + in.get(ColumnAndShifts::range_check_sel), + in.get(ColumnAndShifts::ff_gt_a_lo), + in.get(ColumnAndShifts::ff_gt_constant_128), + in.get(ColumnAndShifts::range_check_value), + in.get(ColumnAndShifts::range_check_rng_chk_bits)); } }; @@ -128,15 +128,15 @@ class lookup_ff_gt_a_hi_range_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._ff_gt_sel() == 1 || in._range_check_sel() == 1); + return (in.get(ColumnAndShifts::ff_gt_sel) == 1 || in.get(ColumnAndShifts::range_check_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._ff_gt_sel()); - const auto is_table_entry = View(in._range_check_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::ff_gt_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::range_check_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -152,14 +152,14 @@ class lookup_ff_gt_a_hi_range_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_ff_gt_a_hi_range_inv(), - in._lookup_ff_gt_a_hi_range_counts(), - in._ff_gt_sel(), - in._range_check_sel(), - in._ff_gt_a_hi(), - in._ff_gt_constant_128(), - in._range_check_value(), - in._range_check_rng_chk_bits()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_ff_gt_a_hi_range_inv), + in.get(ColumnAndShifts::lookup_ff_gt_a_hi_range_counts), + in.get(ColumnAndShifts::ff_gt_sel), + in.get(ColumnAndShifts::range_check_sel), + in.get(ColumnAndShifts::ff_gt_a_hi), + in.get(ColumnAndShifts::ff_gt_constant_128), + in.get(ColumnAndShifts::range_check_value), + in.get(ColumnAndShifts::range_check_rng_chk_bits)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_instr_fetching.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_instr_fetching.hpp index 065af0ed7bba..a14ec01e6220 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_instr_fetching.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_instr_fetching.hpp @@ -40,15 +40,15 @@ class lookup_instr_fetching_pc_abs_diff_positive_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._instr_fetching_sel() == 1 || in._range_check_sel() == 1); + return (in.get(ColumnAndShifts::instr_fetching_sel) == 1 || in.get(ColumnAndShifts::range_check_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._instr_fetching_sel()); - const auto is_table_entry = View(in._range_check_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::instr_fetching_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::range_check_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -64,14 +64,14 @@ class lookup_instr_fetching_pc_abs_diff_positive_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_instr_fetching_pc_abs_diff_positive_inv(), - in._lookup_instr_fetching_pc_abs_diff_positive_counts(), - in._instr_fetching_sel(), - in._range_check_sel(), - in._instr_fetching_pc_abs_diff(), - in._instr_fetching_pc_size_in_bits(), - in._range_check_value(), - in._range_check_rng_chk_bits()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_instr_fetching_pc_abs_diff_positive_inv), + in.get(ColumnAndShifts::lookup_instr_fetching_pc_abs_diff_positive_counts), + in.get(ColumnAndShifts::instr_fetching_sel), + in.get(ColumnAndShifts::range_check_sel), + in.get(ColumnAndShifts::instr_fetching_pc_abs_diff), + in.get(ColumnAndShifts::instr_fetching_pc_size_in_bits), + in.get(ColumnAndShifts::range_check_value), + in.get(ColumnAndShifts::range_check_rng_chk_bits)); } }; @@ -128,15 +128,16 @@ class lookup_instr_fetching_instr_abs_diff_positive_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._instr_fetching_sel() == 1 || in._precomputed_sel_range_8() == 1); + return (in.get(ColumnAndShifts::instr_fetching_sel) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_8) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._instr_fetching_sel()); - const auto is_table_entry = View(in._precomputed_sel_range_8()); + const auto is_operation = View(in.get(ColumnAndShifts::instr_fetching_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_8)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -152,12 +153,12 @@ class lookup_instr_fetching_instr_abs_diff_positive_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_instr_fetching_instr_abs_diff_positive_inv(), - in._lookup_instr_fetching_instr_abs_diff_positive_counts(), - in._instr_fetching_sel(), - in._precomputed_sel_range_8(), - in._instr_fetching_instr_abs_diff(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_instr_fetching_instr_abs_diff_positive_inv), + in.get(ColumnAndShifts::lookup_instr_fetching_instr_abs_diff_positive_counts), + in.get(ColumnAndShifts::instr_fetching_sel), + in.get(ColumnAndShifts::precomputed_sel_range_8), + in.get(ColumnAndShifts::instr_fetching_instr_abs_diff), + in.get(ColumnAndShifts::precomputed_clk)); } }; @@ -216,15 +217,16 @@ class lookup_instr_fetching_tag_value_validation_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._instr_fetching_sel_has_tag() == 1 || in._precomputed_sel_range_8() == 1); + return (in.get(ColumnAndShifts::instr_fetching_sel_has_tag) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_8) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._instr_fetching_sel_has_tag()); - const auto is_table_entry = View(in._precomputed_sel_range_8()); + const auto is_operation = View(in.get(ColumnAndShifts::instr_fetching_sel_has_tag)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_8)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -240,14 +242,14 @@ class lookup_instr_fetching_tag_value_validation_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_instr_fetching_tag_value_validation_inv(), - in._lookup_instr_fetching_tag_value_validation_counts(), - in._instr_fetching_sel_has_tag(), - in._precomputed_sel_range_8(), - in._instr_fetching_tag_value(), - in._instr_fetching_tag_out_of_range(), - in._precomputed_clk(), - in._precomputed_sel_mem_tag_out_of_range()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_instr_fetching_tag_value_validation_inv), + in.get(ColumnAndShifts::lookup_instr_fetching_tag_value_validation_counts), + in.get(ColumnAndShifts::instr_fetching_sel_has_tag), + in.get(ColumnAndShifts::precomputed_sel_range_8), + in.get(ColumnAndShifts::instr_fetching_tag_value), + in.get(ColumnAndShifts::instr_fetching_tag_out_of_range), + in.get(ColumnAndShifts::precomputed_clk), + in.get(ColumnAndShifts::precomputed_sel_mem_tag_out_of_range)); } }; @@ -310,15 +312,15 @@ class lookup_instr_fetching_bytecode_size_from_bc_dec_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._instr_fetching_sel() == 1 || in._bc_decomposition_sel() == 1); + return (in.get(ColumnAndShifts::instr_fetching_sel) == 1 || in.get(ColumnAndShifts::bc_decomposition_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._instr_fetching_sel()); - const auto is_table_entry = View(in._bc_decomposition_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::instr_fetching_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::bc_decomposition_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -334,16 +336,16 @@ class lookup_instr_fetching_bytecode_size_from_bc_dec_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_instr_fetching_bytecode_size_from_bc_dec_inv(), - in._lookup_instr_fetching_bytecode_size_from_bc_dec_counts(), - in._instr_fetching_sel(), - in._bc_decomposition_sel(), - in._instr_fetching_bytecode_id(), - in._precomputed_zero(), - in._instr_fetching_bytecode_size(), - in._bc_decomposition_id(), - in._bc_decomposition_pc(), - in._bc_decomposition_bytes_remaining()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_instr_fetching_bytecode_size_from_bc_dec_inv), + in.get(ColumnAndShifts::lookup_instr_fetching_bytecode_size_from_bc_dec_counts), + in.get(ColumnAndShifts::instr_fetching_sel), + in.get(ColumnAndShifts::bc_decomposition_sel), + in.get(ColumnAndShifts::instr_fetching_bytecode_id), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::instr_fetching_bytecode_size), + in.get(ColumnAndShifts::bc_decomposition_id), + in.get(ColumnAndShifts::bc_decomposition_pc), + in.get(ColumnAndShifts::bc_decomposition_bytes_remaining)); } }; @@ -460,15 +462,16 @@ class lookup_instr_fetching_bytes_from_bc_dec_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._instr_fetching_sel_pc_in_range() == 1 || in._bc_decomposition_sel() == 1); + return (in.get(ColumnAndShifts::instr_fetching_sel_pc_in_range) == 1 || + in.get(ColumnAndShifts::bc_decomposition_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._instr_fetching_sel_pc_in_range()); - const auto is_table_entry = View(in._bc_decomposition_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::instr_fetching_sel_pc_in_range)); + const auto is_table_entry = View(in.get(ColumnAndShifts::bc_decomposition_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -484,90 +487,90 @@ class lookup_instr_fetching_bytes_from_bc_dec_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_instr_fetching_bytes_from_bc_dec_inv(), - in._lookup_instr_fetching_bytes_from_bc_dec_counts(), - in._instr_fetching_sel_pc_in_range(), - in._bc_decomposition_sel(), - in._instr_fetching_bytecode_id(), - in._instr_fetching_pc(), - in._instr_fetching_bytes_to_read(), - in._instr_fetching_bd0(), - in._instr_fetching_bd1(), - in._instr_fetching_bd2(), - in._instr_fetching_bd3(), - in._instr_fetching_bd4(), - in._instr_fetching_bd5(), - in._instr_fetching_bd6(), - in._instr_fetching_bd7(), - in._instr_fetching_bd8(), - in._instr_fetching_bd9(), - in._instr_fetching_bd10(), - in._instr_fetching_bd11(), - in._instr_fetching_bd12(), - in._instr_fetching_bd13(), - in._instr_fetching_bd14(), - in._instr_fetching_bd15(), - in._instr_fetching_bd16(), - in._instr_fetching_bd17(), - in._instr_fetching_bd18(), - in._instr_fetching_bd19(), - in._instr_fetching_bd20(), - in._instr_fetching_bd21(), - in._instr_fetching_bd22(), - in._instr_fetching_bd23(), - in._instr_fetching_bd24(), - in._instr_fetching_bd25(), - in._instr_fetching_bd26(), - in._instr_fetching_bd27(), - in._instr_fetching_bd28(), - in._instr_fetching_bd29(), - in._instr_fetching_bd30(), - in._instr_fetching_bd31(), - in._instr_fetching_bd32(), - in._instr_fetching_bd33(), - in._instr_fetching_bd34(), - in._instr_fetching_bd35(), - in._instr_fetching_bd36(), - in._bc_decomposition_id(), - in._bc_decomposition_pc(), - in._bc_decomposition_bytes_to_read(), - in._bc_decomposition_bytes(), - in._bc_decomposition_bytes_pc_plus_1(), - in._bc_decomposition_bytes_pc_plus_2(), - in._bc_decomposition_bytes_pc_plus_3(), - in._bc_decomposition_bytes_pc_plus_4(), - in._bc_decomposition_bytes_pc_plus_5(), - in._bc_decomposition_bytes_pc_plus_6(), - in._bc_decomposition_bytes_pc_plus_7(), - in._bc_decomposition_bytes_pc_plus_8(), - in._bc_decomposition_bytes_pc_plus_9(), - in._bc_decomposition_bytes_pc_plus_10(), - in._bc_decomposition_bytes_pc_plus_11(), - in._bc_decomposition_bytes_pc_plus_12(), - in._bc_decomposition_bytes_pc_plus_13(), - in._bc_decomposition_bytes_pc_plus_14(), - in._bc_decomposition_bytes_pc_plus_15(), - in._bc_decomposition_bytes_pc_plus_16(), - in._bc_decomposition_bytes_pc_plus_17(), - in._bc_decomposition_bytes_pc_plus_18(), - in._bc_decomposition_bytes_pc_plus_19(), - in._bc_decomposition_bytes_pc_plus_20(), - in._bc_decomposition_bytes_pc_plus_21(), - in._bc_decomposition_bytes_pc_plus_22(), - in._bc_decomposition_bytes_pc_plus_23(), - in._bc_decomposition_bytes_pc_plus_24(), - in._bc_decomposition_bytes_pc_plus_25(), - in._bc_decomposition_bytes_pc_plus_26(), - in._bc_decomposition_bytes_pc_plus_27(), - in._bc_decomposition_bytes_pc_plus_28(), - in._bc_decomposition_bytes_pc_plus_29(), - in._bc_decomposition_bytes_pc_plus_30(), - in._bc_decomposition_bytes_pc_plus_31(), - in._bc_decomposition_bytes_pc_plus_32(), - in._bc_decomposition_bytes_pc_plus_33(), - in._bc_decomposition_bytes_pc_plus_34(), - in._bc_decomposition_bytes_pc_plus_35(), - in._bc_decomposition_bytes_pc_plus_36()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_instr_fetching_bytes_from_bc_dec_inv), + in.get(ColumnAndShifts::lookup_instr_fetching_bytes_from_bc_dec_counts), + in.get(ColumnAndShifts::instr_fetching_sel_pc_in_range), + in.get(ColumnAndShifts::bc_decomposition_sel), + in.get(ColumnAndShifts::instr_fetching_bytecode_id), + in.get(ColumnAndShifts::instr_fetching_pc), + in.get(ColumnAndShifts::instr_fetching_bytes_to_read), + in.get(ColumnAndShifts::instr_fetching_bd0), + in.get(ColumnAndShifts::instr_fetching_bd1), + in.get(ColumnAndShifts::instr_fetching_bd2), + in.get(ColumnAndShifts::instr_fetching_bd3), + in.get(ColumnAndShifts::instr_fetching_bd4), + in.get(ColumnAndShifts::instr_fetching_bd5), + in.get(ColumnAndShifts::instr_fetching_bd6), + in.get(ColumnAndShifts::instr_fetching_bd7), + in.get(ColumnAndShifts::instr_fetching_bd8), + in.get(ColumnAndShifts::instr_fetching_bd9), + in.get(ColumnAndShifts::instr_fetching_bd10), + in.get(ColumnAndShifts::instr_fetching_bd11), + in.get(ColumnAndShifts::instr_fetching_bd12), + in.get(ColumnAndShifts::instr_fetching_bd13), + in.get(ColumnAndShifts::instr_fetching_bd14), + in.get(ColumnAndShifts::instr_fetching_bd15), + in.get(ColumnAndShifts::instr_fetching_bd16), + in.get(ColumnAndShifts::instr_fetching_bd17), + in.get(ColumnAndShifts::instr_fetching_bd18), + in.get(ColumnAndShifts::instr_fetching_bd19), + in.get(ColumnAndShifts::instr_fetching_bd20), + in.get(ColumnAndShifts::instr_fetching_bd21), + in.get(ColumnAndShifts::instr_fetching_bd22), + in.get(ColumnAndShifts::instr_fetching_bd23), + in.get(ColumnAndShifts::instr_fetching_bd24), + in.get(ColumnAndShifts::instr_fetching_bd25), + in.get(ColumnAndShifts::instr_fetching_bd26), + in.get(ColumnAndShifts::instr_fetching_bd27), + in.get(ColumnAndShifts::instr_fetching_bd28), + in.get(ColumnAndShifts::instr_fetching_bd29), + in.get(ColumnAndShifts::instr_fetching_bd30), + in.get(ColumnAndShifts::instr_fetching_bd31), + in.get(ColumnAndShifts::instr_fetching_bd32), + in.get(ColumnAndShifts::instr_fetching_bd33), + in.get(ColumnAndShifts::instr_fetching_bd34), + in.get(ColumnAndShifts::instr_fetching_bd35), + in.get(ColumnAndShifts::instr_fetching_bd36), + in.get(ColumnAndShifts::bc_decomposition_id), + in.get(ColumnAndShifts::bc_decomposition_pc), + in.get(ColumnAndShifts::bc_decomposition_bytes_to_read), + in.get(ColumnAndShifts::bc_decomposition_bytes), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_1), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_2), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_3), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_4), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_5), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_6), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_7), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_8), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_9), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_10), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_11), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_12), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_13), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_14), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_15), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_16), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_17), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_18), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_19), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_20), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_21), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_22), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_23), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_24), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_25), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_26), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_27), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_28), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_29), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_30), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_31), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_32), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_33), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_34), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_35), + in.get(ColumnAndShifts::bc_decomposition_bytes_pc_plus_36)); } }; @@ -647,15 +650,16 @@ class lookup_instr_fetching_wire_instruction_info_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._instr_fetching_sel_pc_in_range() == 1 || in._precomputed_sel_range_8() == 1); + return (in.get(ColumnAndShifts::instr_fetching_sel_pc_in_range) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_8) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._instr_fetching_sel_pc_in_range()); - const auto is_table_entry = View(in._precomputed_sel_range_8()); + const auto is_operation = View(in.get(ColumnAndShifts::instr_fetching_sel_pc_in_range)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_8)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -671,58 +675,58 @@ class lookup_instr_fetching_wire_instruction_info_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_instr_fetching_wire_instruction_info_inv(), - in._lookup_instr_fetching_wire_instruction_info_counts(), - in._instr_fetching_sel_pc_in_range(), - in._precomputed_sel_range_8(), - in._instr_fetching_bd0(), - in._instr_fetching_opcode_out_of_range(), - in._instr_fetching_exec_opcode(), - in._instr_fetching_instr_size(), - in._instr_fetching_sel_has_tag(), - in._instr_fetching_sel_tag_is_op2(), - in._instr_fetching_sel_op_dc_0(), - in._instr_fetching_sel_op_dc_1(), - in._instr_fetching_sel_op_dc_2(), - in._instr_fetching_sel_op_dc_3(), - in._instr_fetching_sel_op_dc_4(), - in._instr_fetching_sel_op_dc_5(), - in._instr_fetching_sel_op_dc_6(), - in._instr_fetching_sel_op_dc_7(), - in._instr_fetching_sel_op_dc_8(), - in._instr_fetching_sel_op_dc_9(), - in._instr_fetching_sel_op_dc_10(), - in._instr_fetching_sel_op_dc_11(), - in._instr_fetching_sel_op_dc_12(), - in._instr_fetching_sel_op_dc_13(), - in._instr_fetching_sel_op_dc_14(), - in._instr_fetching_sel_op_dc_15(), - in._instr_fetching_sel_op_dc_16(), - in._instr_fetching_sel_op_dc_17(), - in._precomputed_clk(), - in._precomputed_opcode_out_of_range(), - in._precomputed_exec_opcode(), - in._precomputed_instr_size(), - in._precomputed_sel_has_tag(), - in._precomputed_sel_tag_is_op2(), - in._precomputed_sel_op_dc_0(), - in._precomputed_sel_op_dc_1(), - in._precomputed_sel_op_dc_2(), - in._precomputed_sel_op_dc_3(), - in._precomputed_sel_op_dc_4(), - in._precomputed_sel_op_dc_5(), - in._precomputed_sel_op_dc_6(), - in._precomputed_sel_op_dc_7(), - in._precomputed_sel_op_dc_8(), - in._precomputed_sel_op_dc_9(), - in._precomputed_sel_op_dc_10(), - in._precomputed_sel_op_dc_11(), - in._precomputed_sel_op_dc_12(), - in._precomputed_sel_op_dc_13(), - in._precomputed_sel_op_dc_14(), - in._precomputed_sel_op_dc_15(), - in._precomputed_sel_op_dc_16(), - in._precomputed_sel_op_dc_17()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_instr_fetching_wire_instruction_info_inv), + in.get(ColumnAndShifts::lookup_instr_fetching_wire_instruction_info_counts), + in.get(ColumnAndShifts::instr_fetching_sel_pc_in_range), + in.get(ColumnAndShifts::precomputed_sel_range_8), + in.get(ColumnAndShifts::instr_fetching_bd0), + in.get(ColumnAndShifts::instr_fetching_opcode_out_of_range), + in.get(ColumnAndShifts::instr_fetching_exec_opcode), + in.get(ColumnAndShifts::instr_fetching_instr_size), + in.get(ColumnAndShifts::instr_fetching_sel_has_tag), + in.get(ColumnAndShifts::instr_fetching_sel_tag_is_op2), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_0), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_1), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_2), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_3), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_4), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_5), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_6), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_7), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_8), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_9), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_10), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_11), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_12), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_13), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_14), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_15), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_16), + in.get(ColumnAndShifts::instr_fetching_sel_op_dc_17), + in.get(ColumnAndShifts::precomputed_clk), + in.get(ColumnAndShifts::precomputed_opcode_out_of_range), + in.get(ColumnAndShifts::precomputed_exec_opcode), + in.get(ColumnAndShifts::precomputed_instr_size), + in.get(ColumnAndShifts::precomputed_sel_has_tag), + in.get(ColumnAndShifts::precomputed_sel_tag_is_op2), + in.get(ColumnAndShifts::precomputed_sel_op_dc_0), + in.get(ColumnAndShifts::precomputed_sel_op_dc_1), + in.get(ColumnAndShifts::precomputed_sel_op_dc_2), + in.get(ColumnAndShifts::precomputed_sel_op_dc_3), + in.get(ColumnAndShifts::precomputed_sel_op_dc_4), + in.get(ColumnAndShifts::precomputed_sel_op_dc_5), + in.get(ColumnAndShifts::precomputed_sel_op_dc_6), + in.get(ColumnAndShifts::precomputed_sel_op_dc_7), + in.get(ColumnAndShifts::precomputed_sel_op_dc_8), + in.get(ColumnAndShifts::precomputed_sel_op_dc_9), + in.get(ColumnAndShifts::precomputed_sel_op_dc_10), + in.get(ColumnAndShifts::precomputed_sel_op_dc_11), + in.get(ColumnAndShifts::precomputed_sel_op_dc_12), + in.get(ColumnAndShifts::precomputed_sel_op_dc_13), + in.get(ColumnAndShifts::precomputed_sel_op_dc_14), + in.get(ColumnAndShifts::precomputed_sel_op_dc_15), + in.get(ColumnAndShifts::precomputed_sel_op_dc_16), + in.get(ColumnAndShifts::precomputed_sel_op_dc_17)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_merkle_check.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_merkle_check.hpp index 26122bacb9bb..10ae91f626d1 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_merkle_check.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_merkle_check.hpp @@ -48,15 +48,15 @@ class lookup_merkle_check_merkle_poseidon2_read_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._merkle_check_sel() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::merkle_check_sel) == 1 || in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._merkle_check_sel()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::merkle_check_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -72,20 +72,20 @@ class lookup_merkle_check_merkle_poseidon2_read_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_merkle_check_merkle_poseidon2_read_inv(), - in._lookup_merkle_check_merkle_poseidon2_read_counts(), - in._merkle_check_sel(), - in._poseidon2_hash_end(), - in._merkle_check_read_left_node(), - in._merkle_check_read_right_node(), - in._precomputed_zero(), - in._merkle_check_constant_2(), - in._merkle_check_read_output_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_input_len(), - in._poseidon2_hash_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_merkle_check_merkle_poseidon2_read_inv), + in.get(ColumnAndShifts::lookup_merkle_check_merkle_poseidon2_read_counts), + in.get(ColumnAndShifts::merkle_check_sel), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::merkle_check_read_left_node), + in.get(ColumnAndShifts::merkle_check_read_right_node), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::merkle_check_constant_2), + in.get(ColumnAndShifts::merkle_check_read_output_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_input_len), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -151,15 +151,15 @@ class lookup_merkle_check_merkle_poseidon2_write_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._merkle_check_write() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::merkle_check_write) == 1 || in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._merkle_check_write()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::merkle_check_write)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -175,20 +175,20 @@ class lookup_merkle_check_merkle_poseidon2_write_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_merkle_check_merkle_poseidon2_write_inv(), - in._lookup_merkle_check_merkle_poseidon2_write_counts(), - in._merkle_check_write(), - in._poseidon2_hash_end(), - in._merkle_check_write_left_node(), - in._merkle_check_write_right_node(), - in._precomputed_zero(), - in._merkle_check_constant_2(), - in._merkle_check_write_output_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_input_len(), - in._poseidon2_hash_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_merkle_check_merkle_poseidon2_write_inv), + in.get(ColumnAndShifts::lookup_merkle_check_merkle_poseidon2_write_counts), + in.get(ColumnAndShifts::merkle_check_write), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::merkle_check_write_left_node), + in.get(ColumnAndShifts::merkle_check_write_right_node), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::merkle_check_constant_2), + in.get(ColumnAndShifts::merkle_check_write_output_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_input_len), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_nullifier_check.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_nullifier_check.hpp index 9f176b64d8c6..4457b186855e 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_nullifier_check.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_nullifier_check.hpp @@ -46,15 +46,15 @@ class lookup_nullifier_check_low_leaf_poseidon2_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._nullifier_check_sel() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::nullifier_check_sel) == 1 || in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._nullifier_check_sel()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::nullifier_check_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -70,18 +70,18 @@ class lookup_nullifier_check_low_leaf_poseidon2_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_nullifier_check_low_leaf_poseidon2_inv(), - in._lookup_nullifier_check_low_leaf_poseidon2_counts(), - in._nullifier_check_sel(), - in._poseidon2_hash_end(), - in._nullifier_check_low_leaf_nullifier(), - in._nullifier_check_low_leaf_next_nullifier(), - in._nullifier_check_low_leaf_next_index(), - in._nullifier_check_low_leaf_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_nullifier_check_low_leaf_poseidon2_inv), + in.get(ColumnAndShifts::lookup_nullifier_check_low_leaf_poseidon2_counts), + in.get(ColumnAndShifts::nullifier_check_sel), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::nullifier_check_low_leaf_nullifier), + in.get(ColumnAndShifts::nullifier_check_low_leaf_next_nullifier), + in.get(ColumnAndShifts::nullifier_check_low_leaf_next_index), + in.get(ColumnAndShifts::nullifier_check_low_leaf_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -145,15 +145,16 @@ class lookup_nullifier_check_updated_low_leaf_poseidon2_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._nullifier_check_write() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::nullifier_check_write) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._nullifier_check_write()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::nullifier_check_write)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -169,18 +170,18 @@ class lookup_nullifier_check_updated_low_leaf_poseidon2_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_nullifier_check_updated_low_leaf_poseidon2_inv(), - in._lookup_nullifier_check_updated_low_leaf_poseidon2_counts(), - in._nullifier_check_write(), - in._poseidon2_hash_end(), - in._nullifier_check_low_leaf_nullifier(), - in._nullifier_check_write_low_leaf_next_nullifier(), - in._nullifier_check_write_low_leaf_next_index(), - in._nullifier_check_updated_low_leaf_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_nullifier_check_updated_low_leaf_poseidon2_inv), + in.get(ColumnAndShifts::lookup_nullifier_check_updated_low_leaf_poseidon2_counts), + in.get(ColumnAndShifts::nullifier_check_write), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::nullifier_check_low_leaf_nullifier), + in.get(ColumnAndShifts::nullifier_check_write_low_leaf_next_nullifier), + in.get(ColumnAndShifts::nullifier_check_write_low_leaf_next_index), + in.get(ColumnAndShifts::nullifier_check_updated_low_leaf_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -248,15 +249,15 @@ class lookup_nullifier_check_low_leaf_merkle_check_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._nullifier_check_sel() == 1 || in._merkle_check_start() == 1); + return (in.get(ColumnAndShifts::nullifier_check_sel) == 1 || in.get(ColumnAndShifts::merkle_check_start) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._nullifier_check_sel()); - const auto is_table_entry = View(in._merkle_check_start()); + const auto is_operation = View(in.get(ColumnAndShifts::nullifier_check_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::merkle_check_start)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -272,24 +273,24 @@ class lookup_nullifier_check_low_leaf_merkle_check_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_nullifier_check_low_leaf_merkle_check_inv(), - in._lookup_nullifier_check_low_leaf_merkle_check_counts(), - in._nullifier_check_sel(), - in._merkle_check_start(), - in._nullifier_check_write(), - in._nullifier_check_low_leaf_hash(), - in._nullifier_check_updated_low_leaf_hash(), - in._nullifier_check_low_leaf_index(), - in._nullifier_check_tree_height(), - in._nullifier_check_root(), - in._nullifier_check_intermediate_root(), - in._merkle_check_write(), - in._merkle_check_read_node(), - in._merkle_check_write_node(), - in._merkle_check_index(), - in._merkle_check_path_len(), - in._merkle_check_read_root(), - in._merkle_check_write_root()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_nullifier_check_low_leaf_merkle_check_inv), + in.get(ColumnAndShifts::lookup_nullifier_check_low_leaf_merkle_check_counts), + in.get(ColumnAndShifts::nullifier_check_sel), + in.get(ColumnAndShifts::merkle_check_start), + in.get(ColumnAndShifts::nullifier_check_write), + in.get(ColumnAndShifts::nullifier_check_low_leaf_hash), + in.get(ColumnAndShifts::nullifier_check_updated_low_leaf_hash), + in.get(ColumnAndShifts::nullifier_check_low_leaf_index), + in.get(ColumnAndShifts::nullifier_check_tree_height), + in.get(ColumnAndShifts::nullifier_check_root), + in.get(ColumnAndShifts::nullifier_check_intermediate_root), + in.get(ColumnAndShifts::merkle_check_write), + in.get(ColumnAndShifts::merkle_check_read_node), + in.get(ColumnAndShifts::merkle_check_write_node), + in.get(ColumnAndShifts::merkle_check_index), + in.get(ColumnAndShifts::merkle_check_path_len), + in.get(ColumnAndShifts::merkle_check_read_root), + in.get(ColumnAndShifts::merkle_check_write_root)); } }; @@ -350,15 +351,16 @@ class lookup_nullifier_check_low_leaf_nullifier_validation_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._nullifier_check_leaf_not_exists() == 1 || in._ff_gt_sel_gt() == 1); + return (in.get(ColumnAndShifts::nullifier_check_leaf_not_exists) == 1 || + in.get(ColumnAndShifts::ff_gt_sel_gt) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._nullifier_check_leaf_not_exists()); - const auto is_table_entry = View(in._ff_gt_sel_gt()); + const auto is_operation = View(in.get(ColumnAndShifts::nullifier_check_leaf_not_exists)); + const auto is_table_entry = View(in.get(ColumnAndShifts::ff_gt_sel_gt)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -374,16 +376,17 @@ class lookup_nullifier_check_low_leaf_nullifier_validation_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_nullifier_check_low_leaf_nullifier_validation_inv(), - in._lookup_nullifier_check_low_leaf_nullifier_validation_counts(), - in._nullifier_check_leaf_not_exists(), - in._ff_gt_sel_gt(), - in._nullifier_check_nullifier(), - in._nullifier_check_low_leaf_nullifier(), - in._nullifier_check_one(), - in._ff_gt_a(), - in._ff_gt_b(), - in._ff_gt_result()); + return std::forward_as_tuple( + in.get(ColumnAndShifts::lookup_nullifier_check_low_leaf_nullifier_validation_inv), + in.get(ColumnAndShifts::lookup_nullifier_check_low_leaf_nullifier_validation_counts), + in.get(ColumnAndShifts::nullifier_check_leaf_not_exists), + in.get(ColumnAndShifts::ff_gt_sel_gt), + in.get(ColumnAndShifts::nullifier_check_nullifier), + in.get(ColumnAndShifts::nullifier_check_low_leaf_nullifier), + in.get(ColumnAndShifts::nullifier_check_one), + in.get(ColumnAndShifts::ff_gt_a), + in.get(ColumnAndShifts::ff_gt_b), + in.get(ColumnAndShifts::ff_gt_result)); } }; @@ -444,15 +447,16 @@ class lookup_nullifier_check_low_leaf_next_nullifier_validation_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._nullifier_check_next_nullifier_is_nonzero() == 1 || in._ff_gt_sel_gt() == 1); + return (in.get(ColumnAndShifts::nullifier_check_next_nullifier_is_nonzero) == 1 || + in.get(ColumnAndShifts::ff_gt_sel_gt) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._nullifier_check_next_nullifier_is_nonzero()); - const auto is_table_entry = View(in._ff_gt_sel_gt()); + const auto is_operation = View(in.get(ColumnAndShifts::nullifier_check_next_nullifier_is_nonzero)); + const auto is_table_entry = View(in.get(ColumnAndShifts::ff_gt_sel_gt)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -468,16 +472,17 @@ class lookup_nullifier_check_low_leaf_next_nullifier_validation_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_nullifier_check_low_leaf_next_nullifier_validation_inv(), - in._lookup_nullifier_check_low_leaf_next_nullifier_validation_counts(), - in._nullifier_check_next_nullifier_is_nonzero(), - in._ff_gt_sel_gt(), - in._nullifier_check_low_leaf_next_nullifier(), - in._nullifier_check_nullifier(), - in._nullifier_check_one(), - in._ff_gt_a(), - in._ff_gt_b(), - in._ff_gt_result()); + return std::forward_as_tuple( + in.get(ColumnAndShifts::lookup_nullifier_check_low_leaf_next_nullifier_validation_inv), + in.get(ColumnAndShifts::lookup_nullifier_check_low_leaf_next_nullifier_validation_counts), + in.get(ColumnAndShifts::nullifier_check_next_nullifier_is_nonzero), + in.get(ColumnAndShifts::ff_gt_sel_gt), + in.get(ColumnAndShifts::nullifier_check_low_leaf_next_nullifier), + in.get(ColumnAndShifts::nullifier_check_nullifier), + in.get(ColumnAndShifts::nullifier_check_one), + in.get(ColumnAndShifts::ff_gt_a), + in.get(ColumnAndShifts::ff_gt_b), + in.get(ColumnAndShifts::ff_gt_result)); } }; @@ -542,15 +547,16 @@ class lookup_nullifier_check_new_leaf_poseidon2_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._nullifier_check_write() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::nullifier_check_write) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._nullifier_check_write()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::nullifier_check_write)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -566,18 +572,18 @@ class lookup_nullifier_check_new_leaf_poseidon2_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_nullifier_check_new_leaf_poseidon2_inv(), - in._lookup_nullifier_check_new_leaf_poseidon2_counts(), - in._nullifier_check_write(), - in._poseidon2_hash_end(), - in._nullifier_check_nullifier(), - in._nullifier_check_low_leaf_next_nullifier(), - in._nullifier_check_low_leaf_next_index(), - in._nullifier_check_new_leaf_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_nullifier_check_new_leaf_poseidon2_inv), + in.get(ColumnAndShifts::lookup_nullifier_check_new_leaf_poseidon2_counts), + in.get(ColumnAndShifts::nullifier_check_write), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::nullifier_check_nullifier), + in.get(ColumnAndShifts::nullifier_check_low_leaf_next_nullifier), + in.get(ColumnAndShifts::nullifier_check_low_leaf_next_index), + in.get(ColumnAndShifts::nullifier_check_new_leaf_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -641,15 +647,16 @@ class lookup_nullifier_check_new_leaf_merkle_check_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._nullifier_check_write() == 1 || in._merkle_check_start() == 1); + return (in.get(ColumnAndShifts::nullifier_check_write) == 1 || + in.get(ColumnAndShifts::merkle_check_start) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._nullifier_check_write()); - const auto is_table_entry = View(in._merkle_check_start()); + const auto is_operation = View(in.get(ColumnAndShifts::nullifier_check_write)); + const auto is_table_entry = View(in.get(ColumnAndShifts::merkle_check_start)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -665,24 +672,24 @@ class lookup_nullifier_check_new_leaf_merkle_check_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_nullifier_check_new_leaf_merkle_check_inv(), - in._lookup_nullifier_check_new_leaf_merkle_check_counts(), - in._nullifier_check_write(), - in._merkle_check_start(), - in._nullifier_check_one(), - in._precomputed_zero(), - in._nullifier_check_new_leaf_hash(), - in._nullifier_check_tree_size_before_write(), - in._nullifier_check_tree_height(), - in._nullifier_check_intermediate_root(), - in._nullifier_check_write_root(), - in._merkle_check_write(), - in._merkle_check_read_node(), - in._merkle_check_write_node(), - in._merkle_check_index(), - in._merkle_check_path_len(), - in._merkle_check_read_root(), - in._merkle_check_write_root()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_nullifier_check_new_leaf_merkle_check_inv), + in.get(ColumnAndShifts::lookup_nullifier_check_new_leaf_merkle_check_counts), + in.get(ColumnAndShifts::nullifier_check_write), + in.get(ColumnAndShifts::merkle_check_start), + in.get(ColumnAndShifts::nullifier_check_one), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::nullifier_check_new_leaf_hash), + in.get(ColumnAndShifts::nullifier_check_tree_size_before_write), + in.get(ColumnAndShifts::nullifier_check_tree_height), + in.get(ColumnAndShifts::nullifier_check_intermediate_root), + in.get(ColumnAndShifts::nullifier_check_write_root), + in.get(ColumnAndShifts::merkle_check_write), + in.get(ColumnAndShifts::merkle_check_read_node), + in.get(ColumnAndShifts::merkle_check_write_node), + in.get(ColumnAndShifts::merkle_check_index), + in.get(ColumnAndShifts::merkle_check_path_len), + in.get(ColumnAndShifts::merkle_check_read_root), + in.get(ColumnAndShifts::merkle_check_write_root)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_poseidon2_hash.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_poseidon2_hash.hpp index 3a24a08b6677..b45793c3f081 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_poseidon2_hash.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_poseidon2_hash.hpp @@ -44,15 +44,15 @@ class lookup_poseidon2_hash_poseidon2_perm_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._poseidon2_hash_sel() == 1 || in._poseidon2_perm_sel() == 1); + return (in.get(ColumnAndShifts::poseidon2_hash_sel) == 1 || in.get(ColumnAndShifts::poseidon2_perm_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._poseidon2_hash_sel()); - const auto is_table_entry = View(in._poseidon2_perm_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::poseidon2_hash_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_perm_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -68,26 +68,26 @@ class lookup_poseidon2_hash_poseidon2_perm_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_poseidon2_hash_poseidon2_perm_inv(), - in._lookup_poseidon2_hash_poseidon2_perm_counts(), - in._poseidon2_hash_sel(), - in._poseidon2_perm_sel(), - in._poseidon2_hash_a_0(), - in._poseidon2_hash_a_1(), - in._poseidon2_hash_a_2(), - in._poseidon2_hash_a_3(), - in._poseidon2_hash_b_0(), - in._poseidon2_hash_b_1(), - in._poseidon2_hash_b_2(), - in._poseidon2_hash_b_3(), - in._poseidon2_perm_a_0(), - in._poseidon2_perm_a_1(), - in._poseidon2_perm_a_2(), - in._poseidon2_perm_a_3(), - in._poseidon2_perm_b_0(), - in._poseidon2_perm_b_1(), - in._poseidon2_perm_b_2(), - in._poseidon2_perm_b_3()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_poseidon2_hash_poseidon2_perm_inv), + in.get(ColumnAndShifts::lookup_poseidon2_hash_poseidon2_perm_counts), + in.get(ColumnAndShifts::poseidon2_hash_sel), + in.get(ColumnAndShifts::poseidon2_perm_sel), + in.get(ColumnAndShifts::poseidon2_hash_a_0), + in.get(ColumnAndShifts::poseidon2_hash_a_1), + in.get(ColumnAndShifts::poseidon2_hash_a_2), + in.get(ColumnAndShifts::poseidon2_hash_a_3), + in.get(ColumnAndShifts::poseidon2_hash_b_0), + in.get(ColumnAndShifts::poseidon2_hash_b_1), + in.get(ColumnAndShifts::poseidon2_hash_b_2), + in.get(ColumnAndShifts::poseidon2_hash_b_3), + in.get(ColumnAndShifts::poseidon2_perm_a_0), + in.get(ColumnAndShifts::poseidon2_perm_a_1), + in.get(ColumnAndShifts::poseidon2_perm_a_2), + in.get(ColumnAndShifts::poseidon2_perm_a_3), + in.get(ColumnAndShifts::poseidon2_perm_b_0), + in.get(ColumnAndShifts::poseidon2_perm_b_1), + in.get(ColumnAndShifts::poseidon2_perm_b_2), + in.get(ColumnAndShifts::poseidon2_perm_b_3)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_public_data_read.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_public_data_read.hpp index 9d2358c4cc77..f8e8cfd5f257 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_public_data_read.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_public_data_read.hpp @@ -46,15 +46,16 @@ class lookup_public_data_read_low_leaf_poseidon2_0_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._public_data_read_sel() == 1 || in._poseidon2_hash_start() == 1); + return (in.get(ColumnAndShifts::public_data_read_sel) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_start) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._public_data_read_sel()); - const auto is_table_entry = View(in._poseidon2_hash_start()); + const auto is_operation = View(in.get(ColumnAndShifts::public_data_read_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_start)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -70,18 +71,18 @@ class lookup_public_data_read_low_leaf_poseidon2_0_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_public_data_read_low_leaf_poseidon2_0_inv(), - in._lookup_public_data_read_low_leaf_poseidon2_0_counts(), - in._public_data_read_sel(), - in._poseidon2_hash_start(), - in._public_data_read_low_leaf_slot(), - in._public_data_read_low_leaf_value(), - in._public_data_read_low_leaf_next_index(), - in._public_data_read_low_leaf_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_public_data_read_low_leaf_poseidon2_0_inv), + in.get(ColumnAndShifts::lookup_public_data_read_low_leaf_poseidon2_0_counts), + in.get(ColumnAndShifts::public_data_read_sel), + in.get(ColumnAndShifts::poseidon2_hash_start), + in.get(ColumnAndShifts::public_data_read_low_leaf_slot), + in.get(ColumnAndShifts::public_data_read_low_leaf_value), + in.get(ColumnAndShifts::public_data_read_low_leaf_next_index), + in.get(ColumnAndShifts::public_data_read_low_leaf_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -146,15 +147,15 @@ class lookup_public_data_read_low_leaf_poseidon2_1_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._public_data_read_sel() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::public_data_read_sel) == 1 || in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._public_data_read_sel()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::public_data_read_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -170,18 +171,18 @@ class lookup_public_data_read_low_leaf_poseidon2_1_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_public_data_read_low_leaf_poseidon2_1_inv(), - in._lookup_public_data_read_low_leaf_poseidon2_1_counts(), - in._public_data_read_sel(), - in._poseidon2_hash_end(), - in._public_data_read_low_leaf_next_slot(), - in._precomputed_zero(), - in._precomputed_zero(), - in._public_data_read_low_leaf_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_public_data_read_low_leaf_poseidon2_1_inv), + in.get(ColumnAndShifts::lookup_public_data_read_low_leaf_poseidon2_1_counts), + in.get(ColumnAndShifts::public_data_read_sel), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::public_data_read_low_leaf_next_slot), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::public_data_read_low_leaf_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -246,15 +247,15 @@ class lookup_public_data_read_low_leaf_membership_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._public_data_read_sel() == 1 || in._merkle_check_start() == 1); + return (in.get(ColumnAndShifts::public_data_read_sel) == 1 || in.get(ColumnAndShifts::merkle_check_start) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._public_data_read_sel()); - const auto is_table_entry = View(in._merkle_check_start()); + const auto is_operation = View(in.get(ColumnAndShifts::public_data_read_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::merkle_check_start)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -270,18 +271,18 @@ class lookup_public_data_read_low_leaf_membership_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_public_data_read_low_leaf_membership_inv(), - in._lookup_public_data_read_low_leaf_membership_counts(), - in._public_data_read_sel(), - in._merkle_check_start(), - in._public_data_read_low_leaf_hash(), - in._public_data_read_low_leaf_index(), - in._public_data_read_tree_height(), - in._public_data_read_root(), - in._merkle_check_read_node(), - in._merkle_check_index(), - in._merkle_check_path_len(), - in._merkle_check_read_root()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_public_data_read_low_leaf_membership_inv), + in.get(ColumnAndShifts::lookup_public_data_read_low_leaf_membership_counts), + in.get(ColumnAndShifts::public_data_read_sel), + in.get(ColumnAndShifts::merkle_check_start), + in.get(ColumnAndShifts::public_data_read_low_leaf_hash), + in.get(ColumnAndShifts::public_data_read_low_leaf_index), + in.get(ColumnAndShifts::public_data_read_tree_height), + in.get(ColumnAndShifts::public_data_read_root), + in.get(ColumnAndShifts::merkle_check_read_node), + in.get(ColumnAndShifts::merkle_check_index), + in.get(ColumnAndShifts::merkle_check_path_len), + in.get(ColumnAndShifts::merkle_check_read_root)); } }; @@ -342,15 +343,16 @@ class lookup_public_data_read_low_leaf_slot_validation_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._public_data_read_leaf_not_exists() == 1 || in._ff_gt_sel_gt() == 1); + return (in.get(ColumnAndShifts::public_data_read_leaf_not_exists) == 1 || + in.get(ColumnAndShifts::ff_gt_sel_gt) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._public_data_read_leaf_not_exists()); - const auto is_table_entry = View(in._ff_gt_sel_gt()); + const auto is_operation = View(in.get(ColumnAndShifts::public_data_read_leaf_not_exists)); + const auto is_table_entry = View(in.get(ColumnAndShifts::ff_gt_sel_gt)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -366,16 +368,16 @@ class lookup_public_data_read_low_leaf_slot_validation_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_public_data_read_low_leaf_slot_validation_inv(), - in._lookup_public_data_read_low_leaf_slot_validation_counts(), - in._public_data_read_leaf_not_exists(), - in._ff_gt_sel_gt(), - in._public_data_read_slot(), - in._public_data_read_low_leaf_slot(), - in._public_data_read_one(), - in._ff_gt_a(), - in._ff_gt_b(), - in._ff_gt_result()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_public_data_read_low_leaf_slot_validation_inv), + in.get(ColumnAndShifts::lookup_public_data_read_low_leaf_slot_validation_counts), + in.get(ColumnAndShifts::public_data_read_leaf_not_exists), + in.get(ColumnAndShifts::ff_gt_sel_gt), + in.get(ColumnAndShifts::public_data_read_slot), + in.get(ColumnAndShifts::public_data_read_low_leaf_slot), + in.get(ColumnAndShifts::public_data_read_one), + in.get(ColumnAndShifts::ff_gt_a), + in.get(ColumnAndShifts::ff_gt_b), + in.get(ColumnAndShifts::ff_gt_result)); } }; @@ -436,15 +438,16 @@ class lookup_public_data_read_low_leaf_next_slot_validation_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._public_data_read_next_slot_is_nonzero() == 1 || in._ff_gt_sel_gt() == 1); + return (in.get(ColumnAndShifts::public_data_read_next_slot_is_nonzero) == 1 || + in.get(ColumnAndShifts::ff_gt_sel_gt) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._public_data_read_next_slot_is_nonzero()); - const auto is_table_entry = View(in._ff_gt_sel_gt()); + const auto is_operation = View(in.get(ColumnAndShifts::public_data_read_next_slot_is_nonzero)); + const auto is_table_entry = View(in.get(ColumnAndShifts::ff_gt_sel_gt)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -460,16 +463,17 @@ class lookup_public_data_read_low_leaf_next_slot_validation_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_public_data_read_low_leaf_next_slot_validation_inv(), - in._lookup_public_data_read_low_leaf_next_slot_validation_counts(), - in._public_data_read_next_slot_is_nonzero(), - in._ff_gt_sel_gt(), - in._public_data_read_low_leaf_next_slot(), - in._public_data_read_slot(), - in._public_data_read_one(), - in._ff_gt_a(), - in._ff_gt_b(), - in._ff_gt_result()); + return std::forward_as_tuple( + in.get(ColumnAndShifts::lookup_public_data_read_low_leaf_next_slot_validation_inv), + in.get(ColumnAndShifts::lookup_public_data_read_low_leaf_next_slot_validation_counts), + in.get(ColumnAndShifts::public_data_read_next_slot_is_nonzero), + in.get(ColumnAndShifts::ff_gt_sel_gt), + in.get(ColumnAndShifts::public_data_read_low_leaf_next_slot), + in.get(ColumnAndShifts::public_data_read_slot), + in.get(ColumnAndShifts::public_data_read_one), + in.get(ColumnAndShifts::ff_gt_a), + in.get(ColumnAndShifts::ff_gt_b), + in.get(ColumnAndShifts::ff_gt_result)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_range_check.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_range_check.hpp index 06afc18abcb2..3568266923f0 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_range_check.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_range_check.hpp @@ -40,15 +40,15 @@ class lookup_range_check_dyn_rng_chk_pow_2_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._range_check_sel() == 1 || in._precomputed_sel_range_8() == 1); + return (in.get(ColumnAndShifts::range_check_sel) == 1 || in.get(ColumnAndShifts::precomputed_sel_range_8) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._range_check_sel()); - const auto is_table_entry = View(in._precomputed_sel_range_8()); + const auto is_operation = View(in.get(ColumnAndShifts::range_check_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_8)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -64,14 +64,14 @@ class lookup_range_check_dyn_rng_chk_pow_2_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_range_check_dyn_rng_chk_pow_2_inv(), - in._lookup_range_check_dyn_rng_chk_pow_2_counts(), - in._range_check_sel(), - in._precomputed_sel_range_8(), - in._range_check_dyn_rng_chk_bits(), - in._range_check_dyn_rng_chk_pow_2(), - in._precomputed_clk(), - in._precomputed_power_of_2()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_range_check_dyn_rng_chk_pow_2_inv), + in.get(ColumnAndShifts::lookup_range_check_dyn_rng_chk_pow_2_counts), + in.get(ColumnAndShifts::range_check_sel), + in.get(ColumnAndShifts::precomputed_sel_range_8), + in.get(ColumnAndShifts::range_check_dyn_rng_chk_bits), + in.get(ColumnAndShifts::range_check_dyn_rng_chk_pow_2), + in.get(ColumnAndShifts::precomputed_clk), + in.get(ColumnAndShifts::precomputed_power_of_2)); } }; @@ -127,15 +127,16 @@ class lookup_range_check_dyn_diff_is_u16_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._range_check_sel() == 1 || in._precomputed_sel_range_16() == 1); + return (in.get(ColumnAndShifts::range_check_sel) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_16) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._range_check_sel()); - const auto is_table_entry = View(in._precomputed_sel_range_16()); + const auto is_operation = View(in.get(ColumnAndShifts::range_check_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_16)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -151,12 +152,12 @@ class lookup_range_check_dyn_diff_is_u16_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_range_check_dyn_diff_is_u16_inv(), - in._lookup_range_check_dyn_diff_is_u16_counts(), - in._range_check_sel(), - in._precomputed_sel_range_16(), - in._range_check_dyn_diff(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_range_check_dyn_diff_is_u16_inv), + in.get(ColumnAndShifts::lookup_range_check_dyn_diff_is_u16_counts), + in.get(ColumnAndShifts::range_check_sel), + in.get(ColumnAndShifts::precomputed_sel_range_16), + in.get(ColumnAndShifts::range_check_dyn_diff), + in.get(ColumnAndShifts::precomputed_clk)); } }; @@ -212,15 +213,16 @@ class lookup_range_check_r0_is_u16_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._range_check_sel_r0_16_bit_rng_lookup() == 1 || in._precomputed_sel_range_16() == 1); + return (in.get(ColumnAndShifts::range_check_sel_r0_16_bit_rng_lookup) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_16) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._range_check_sel_r0_16_bit_rng_lookup()); - const auto is_table_entry = View(in._precomputed_sel_range_16()); + const auto is_operation = View(in.get(ColumnAndShifts::range_check_sel_r0_16_bit_rng_lookup)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_16)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -236,12 +238,12 @@ class lookup_range_check_r0_is_u16_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_range_check_r0_is_u16_inv(), - in._lookup_range_check_r0_is_u16_counts(), - in._range_check_sel_r0_16_bit_rng_lookup(), - in._precomputed_sel_range_16(), - in._range_check_u16_r0(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_range_check_r0_is_u16_inv), + in.get(ColumnAndShifts::lookup_range_check_r0_is_u16_counts), + in.get(ColumnAndShifts::range_check_sel_r0_16_bit_rng_lookup), + in.get(ColumnAndShifts::precomputed_sel_range_16), + in.get(ColumnAndShifts::range_check_u16_r0), + in.get(ColumnAndShifts::precomputed_clk)); } }; @@ -296,15 +298,16 @@ class lookup_range_check_r1_is_u16_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._range_check_sel_r1_16_bit_rng_lookup() == 1 || in._precomputed_sel_range_16() == 1); + return (in.get(ColumnAndShifts::range_check_sel_r1_16_bit_rng_lookup) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_16) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._range_check_sel_r1_16_bit_rng_lookup()); - const auto is_table_entry = View(in._precomputed_sel_range_16()); + const auto is_operation = View(in.get(ColumnAndShifts::range_check_sel_r1_16_bit_rng_lookup)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_16)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -320,12 +323,12 @@ class lookup_range_check_r1_is_u16_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_range_check_r1_is_u16_inv(), - in._lookup_range_check_r1_is_u16_counts(), - in._range_check_sel_r1_16_bit_rng_lookup(), - in._precomputed_sel_range_16(), - in._range_check_u16_r1(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_range_check_r1_is_u16_inv), + in.get(ColumnAndShifts::lookup_range_check_r1_is_u16_counts), + in.get(ColumnAndShifts::range_check_sel_r1_16_bit_rng_lookup), + in.get(ColumnAndShifts::precomputed_sel_range_16), + in.get(ColumnAndShifts::range_check_u16_r1), + in.get(ColumnAndShifts::precomputed_clk)); } }; @@ -380,15 +383,16 @@ class lookup_range_check_r2_is_u16_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._range_check_sel_r2_16_bit_rng_lookup() == 1 || in._precomputed_sel_range_16() == 1); + return (in.get(ColumnAndShifts::range_check_sel_r2_16_bit_rng_lookup) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_16) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._range_check_sel_r2_16_bit_rng_lookup()); - const auto is_table_entry = View(in._precomputed_sel_range_16()); + const auto is_operation = View(in.get(ColumnAndShifts::range_check_sel_r2_16_bit_rng_lookup)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_16)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -404,12 +408,12 @@ class lookup_range_check_r2_is_u16_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_range_check_r2_is_u16_inv(), - in._lookup_range_check_r2_is_u16_counts(), - in._range_check_sel_r2_16_bit_rng_lookup(), - in._precomputed_sel_range_16(), - in._range_check_u16_r2(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_range_check_r2_is_u16_inv), + in.get(ColumnAndShifts::lookup_range_check_r2_is_u16_counts), + in.get(ColumnAndShifts::range_check_sel_r2_16_bit_rng_lookup), + in.get(ColumnAndShifts::precomputed_sel_range_16), + in.get(ColumnAndShifts::range_check_u16_r2), + in.get(ColumnAndShifts::precomputed_clk)); } }; @@ -464,15 +468,16 @@ class lookup_range_check_r3_is_u16_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._range_check_sel_r3_16_bit_rng_lookup() == 1 || in._precomputed_sel_range_16() == 1); + return (in.get(ColumnAndShifts::range_check_sel_r3_16_bit_rng_lookup) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_16) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._range_check_sel_r3_16_bit_rng_lookup()); - const auto is_table_entry = View(in._precomputed_sel_range_16()); + const auto is_operation = View(in.get(ColumnAndShifts::range_check_sel_r3_16_bit_rng_lookup)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_16)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -488,12 +493,12 @@ class lookup_range_check_r3_is_u16_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_range_check_r3_is_u16_inv(), - in._lookup_range_check_r3_is_u16_counts(), - in._range_check_sel_r3_16_bit_rng_lookup(), - in._precomputed_sel_range_16(), - in._range_check_u16_r3(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_range_check_r3_is_u16_inv), + in.get(ColumnAndShifts::lookup_range_check_r3_is_u16_counts), + in.get(ColumnAndShifts::range_check_sel_r3_16_bit_rng_lookup), + in.get(ColumnAndShifts::precomputed_sel_range_16), + in.get(ColumnAndShifts::range_check_u16_r3), + in.get(ColumnAndShifts::precomputed_clk)); } }; @@ -548,15 +553,16 @@ class lookup_range_check_r4_is_u16_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._range_check_sel_r4_16_bit_rng_lookup() == 1 || in._precomputed_sel_range_16() == 1); + return (in.get(ColumnAndShifts::range_check_sel_r4_16_bit_rng_lookup) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_16) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._range_check_sel_r4_16_bit_rng_lookup()); - const auto is_table_entry = View(in._precomputed_sel_range_16()); + const auto is_operation = View(in.get(ColumnAndShifts::range_check_sel_r4_16_bit_rng_lookup)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_16)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -572,12 +578,12 @@ class lookup_range_check_r4_is_u16_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_range_check_r4_is_u16_inv(), - in._lookup_range_check_r4_is_u16_counts(), - in._range_check_sel_r4_16_bit_rng_lookup(), - in._precomputed_sel_range_16(), - in._range_check_u16_r4(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_range_check_r4_is_u16_inv), + in.get(ColumnAndShifts::lookup_range_check_r4_is_u16_counts), + in.get(ColumnAndShifts::range_check_sel_r4_16_bit_rng_lookup), + in.get(ColumnAndShifts::precomputed_sel_range_16), + in.get(ColumnAndShifts::range_check_u16_r4), + in.get(ColumnAndShifts::precomputed_clk)); } }; @@ -632,15 +638,16 @@ class lookup_range_check_r5_is_u16_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._range_check_sel_r5_16_bit_rng_lookup() == 1 || in._precomputed_sel_range_16() == 1); + return (in.get(ColumnAndShifts::range_check_sel_r5_16_bit_rng_lookup) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_16) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._range_check_sel_r5_16_bit_rng_lookup()); - const auto is_table_entry = View(in._precomputed_sel_range_16()); + const auto is_operation = View(in.get(ColumnAndShifts::range_check_sel_r5_16_bit_rng_lookup)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_16)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -656,12 +663,12 @@ class lookup_range_check_r5_is_u16_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_range_check_r5_is_u16_inv(), - in._lookup_range_check_r5_is_u16_counts(), - in._range_check_sel_r5_16_bit_rng_lookup(), - in._precomputed_sel_range_16(), - in._range_check_u16_r5(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_range_check_r5_is_u16_inv), + in.get(ColumnAndShifts::lookup_range_check_r5_is_u16_counts), + in.get(ColumnAndShifts::range_check_sel_r5_16_bit_rng_lookup), + in.get(ColumnAndShifts::precomputed_sel_range_16), + in.get(ColumnAndShifts::range_check_u16_r5), + in.get(ColumnAndShifts::precomputed_clk)); } }; @@ -716,15 +723,16 @@ class lookup_range_check_r6_is_u16_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._range_check_sel_r6_16_bit_rng_lookup() == 1 || in._precomputed_sel_range_16() == 1); + return (in.get(ColumnAndShifts::range_check_sel_r6_16_bit_rng_lookup) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_16) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._range_check_sel_r6_16_bit_rng_lookup()); - const auto is_table_entry = View(in._precomputed_sel_range_16()); + const auto is_operation = View(in.get(ColumnAndShifts::range_check_sel_r6_16_bit_rng_lookup)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_16)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -740,12 +748,12 @@ class lookup_range_check_r6_is_u16_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_range_check_r6_is_u16_inv(), - in._lookup_range_check_r6_is_u16_counts(), - in._range_check_sel_r6_16_bit_rng_lookup(), - in._precomputed_sel_range_16(), - in._range_check_u16_r6(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_range_check_r6_is_u16_inv), + in.get(ColumnAndShifts::lookup_range_check_r6_is_u16_counts), + in.get(ColumnAndShifts::range_check_sel_r6_16_bit_rng_lookup), + in.get(ColumnAndShifts::precomputed_sel_range_16), + in.get(ColumnAndShifts::range_check_u16_r6), + in.get(ColumnAndShifts::precomputed_clk)); } }; @@ -800,15 +808,16 @@ class lookup_range_check_r7_is_u16_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._range_check_sel() == 1 || in._precomputed_sel_range_16() == 1); + return (in.get(ColumnAndShifts::range_check_sel) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_16) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._range_check_sel()); - const auto is_table_entry = View(in._precomputed_sel_range_16()); + const auto is_operation = View(in.get(ColumnAndShifts::range_check_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_16)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -824,12 +833,12 @@ class lookup_range_check_r7_is_u16_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_range_check_r7_is_u16_inv(), - in._lookup_range_check_r7_is_u16_counts(), - in._range_check_sel(), - in._precomputed_sel_range_16(), - in._range_check_u16_r7(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_range_check_r7_is_u16_inv), + in.get(ColumnAndShifts::lookup_range_check_r7_is_u16_counts), + in.get(ColumnAndShifts::range_check_sel), + in.get(ColumnAndShifts::precomputed_sel_range_16), + in.get(ColumnAndShifts::range_check_u16_r7), + in.get(ColumnAndShifts::precomputed_clk)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_scalar_mul.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_scalar_mul.hpp index 6273bdd2af3a..1acc519949e9 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_scalar_mul.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_scalar_mul.hpp @@ -46,15 +46,15 @@ class lookup_scalar_mul_to_radix_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._scalar_mul_sel() == 1 || in._to_radix_sel() == 1); + return (in.get(ColumnAndShifts::scalar_mul_sel) == 1 || in.get(ColumnAndShifts::to_radix_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._scalar_mul_sel()); - const auto is_table_entry = View(in._to_radix_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::scalar_mul_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::to_radix_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -70,18 +70,18 @@ class lookup_scalar_mul_to_radix_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_scalar_mul_to_radix_inv(), - in._lookup_scalar_mul_to_radix_counts(), - in._scalar_mul_sel(), - in._to_radix_sel(), - in._scalar_mul_scalar(), - in._scalar_mul_bit(), - in._scalar_mul_bit_idx(), - in._scalar_mul_bit_radix(), - in._to_radix_value(), - in._to_radix_limb(), - in._to_radix_limb_index(), - in._to_radix_radix()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_scalar_mul_to_radix_inv), + in.get(ColumnAndShifts::lookup_scalar_mul_to_radix_counts), + in.get(ColumnAndShifts::scalar_mul_sel), + in.get(ColumnAndShifts::to_radix_sel), + in.get(ColumnAndShifts::scalar_mul_scalar), + in.get(ColumnAndShifts::scalar_mul_bit), + in.get(ColumnAndShifts::scalar_mul_bit_idx), + in.get(ColumnAndShifts::scalar_mul_bit_radix), + in.get(ColumnAndShifts::to_radix_value), + in.get(ColumnAndShifts::to_radix_limb), + in.get(ColumnAndShifts::to_radix_limb_index), + in.get(ColumnAndShifts::to_radix_radix)); } }; @@ -144,15 +144,15 @@ class lookup_scalar_mul_double_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._scalar_mul_not_end() == 1 || in._ecc_sel() == 1); + return (in.get(ColumnAndShifts::scalar_mul_not_end) == 1 || in.get(ColumnAndShifts::ecc_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._scalar_mul_not_end()); - const auto is_table_entry = View(in._ecc_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::scalar_mul_not_end)); + const auto is_table_entry = View(in.get(ColumnAndShifts::ecc_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -168,28 +168,28 @@ class lookup_scalar_mul_double_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_scalar_mul_double_inv(), - in._lookup_scalar_mul_double_counts(), - in._scalar_mul_not_end(), - in._ecc_sel(), - in._scalar_mul_temp_x(), - in._scalar_mul_temp_y(), - in._scalar_mul_temp_inf(), - in._scalar_mul_temp_x_shift(), - in._scalar_mul_temp_y_shift(), - in._scalar_mul_temp_inf_shift(), - in._scalar_mul_temp_x_shift(), - in._scalar_mul_temp_y_shift(), - in._scalar_mul_temp_inf_shift(), - in._ecc_r_x(), - in._ecc_r_y(), - in._ecc_r_is_inf(), - in._ecc_p_x(), - in._ecc_p_y(), - in._ecc_p_is_inf(), - in._ecc_q_x(), - in._ecc_q_y(), - in._ecc_q_is_inf()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_scalar_mul_double_inv), + in.get(ColumnAndShifts::lookup_scalar_mul_double_counts), + in.get(ColumnAndShifts::scalar_mul_not_end), + in.get(ColumnAndShifts::ecc_sel), + in.get(ColumnAndShifts::scalar_mul_temp_x), + in.get(ColumnAndShifts::scalar_mul_temp_y), + in.get(ColumnAndShifts::scalar_mul_temp_inf), + in.get(ColumnAndShifts::scalar_mul_temp_x_shift), + in.get(ColumnAndShifts::scalar_mul_temp_y_shift), + in.get(ColumnAndShifts::scalar_mul_temp_inf_shift), + in.get(ColumnAndShifts::scalar_mul_temp_x_shift), + in.get(ColumnAndShifts::scalar_mul_temp_y_shift), + in.get(ColumnAndShifts::scalar_mul_temp_inf_shift), + in.get(ColumnAndShifts::ecc_r_x), + in.get(ColumnAndShifts::ecc_r_y), + in.get(ColumnAndShifts::ecc_r_is_inf), + in.get(ColumnAndShifts::ecc_p_x), + in.get(ColumnAndShifts::ecc_p_y), + in.get(ColumnAndShifts::ecc_p_is_inf), + in.get(ColumnAndShifts::ecc_q_x), + in.get(ColumnAndShifts::ecc_q_y), + in.get(ColumnAndShifts::ecc_q_is_inf)); } }; @@ -252,15 +252,15 @@ class lookup_scalar_mul_add_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._scalar_mul_should_add() == 1 || in._ecc_sel() == 1); + return (in.get(ColumnAndShifts::scalar_mul_should_add) == 1 || in.get(ColumnAndShifts::ecc_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._scalar_mul_should_add()); - const auto is_table_entry = View(in._ecc_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::scalar_mul_should_add)); + const auto is_table_entry = View(in.get(ColumnAndShifts::ecc_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -276,28 +276,28 @@ class lookup_scalar_mul_add_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_scalar_mul_add_inv(), - in._lookup_scalar_mul_add_counts(), - in._scalar_mul_should_add(), - in._ecc_sel(), - in._scalar_mul_res_x(), - in._scalar_mul_res_y(), - in._scalar_mul_res_inf(), - in._scalar_mul_res_x_shift(), - in._scalar_mul_res_y_shift(), - in._scalar_mul_res_inf_shift(), - in._scalar_mul_temp_x(), - in._scalar_mul_temp_y(), - in._scalar_mul_temp_inf(), - in._ecc_r_x(), - in._ecc_r_y(), - in._ecc_r_is_inf(), - in._ecc_p_x(), - in._ecc_p_y(), - in._ecc_p_is_inf(), - in._ecc_q_x(), - in._ecc_q_y(), - in._ecc_q_is_inf()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_scalar_mul_add_inv), + in.get(ColumnAndShifts::lookup_scalar_mul_add_counts), + in.get(ColumnAndShifts::scalar_mul_should_add), + in.get(ColumnAndShifts::ecc_sel), + in.get(ColumnAndShifts::scalar_mul_res_x), + in.get(ColumnAndShifts::scalar_mul_res_y), + in.get(ColumnAndShifts::scalar_mul_res_inf), + in.get(ColumnAndShifts::scalar_mul_res_x_shift), + in.get(ColumnAndShifts::scalar_mul_res_y_shift), + in.get(ColumnAndShifts::scalar_mul_res_inf_shift), + in.get(ColumnAndShifts::scalar_mul_temp_x), + in.get(ColumnAndShifts::scalar_mul_temp_y), + in.get(ColumnAndShifts::scalar_mul_temp_inf), + in.get(ColumnAndShifts::ecc_r_x), + in.get(ColumnAndShifts::ecc_r_y), + in.get(ColumnAndShifts::ecc_r_is_inf), + in.get(ColumnAndShifts::ecc_p_x), + in.get(ColumnAndShifts::ecc_p_y), + in.get(ColumnAndShifts::ecc_p_is_inf), + in.get(ColumnAndShifts::ecc_q_x), + in.get(ColumnAndShifts::ecc_q_y), + in.get(ColumnAndShifts::ecc_q_is_inf)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_sha256.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_sha256.hpp index efabb5787647..bde2575ff6c6 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_sha256.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_sha256.hpp @@ -40,15 +40,16 @@ class lookup_sha256_round_constant_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._sha256_perform_round() == 1 || in._precomputed_sel_sha256_compression() == 1); + return (in.get(ColumnAndShifts::sha256_perform_round) == 1 || + in.get(ColumnAndShifts::precomputed_sel_sha256_compression) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._sha256_perform_round()); - const auto is_table_entry = View(in._precomputed_sel_sha256_compression()); + const auto is_operation = View(in.get(ColumnAndShifts::sha256_perform_round)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_sha256_compression)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -64,14 +65,14 @@ class lookup_sha256_round_constant_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_sha256_round_constant_inv(), - in._lookup_sha256_round_constant_counts(), - in._sha256_perform_round(), - in._precomputed_sel_sha256_compression(), - in._sha256_round_count(), - in._sha256_round_constant(), - in._precomputed_clk(), - in._precomputed_sha256_compression_round_constant()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_sha256_round_constant_inv), + in.get(ColumnAndShifts::lookup_sha256_round_constant_counts), + in.get(ColumnAndShifts::sha256_perform_round), + in.get(ColumnAndShifts::precomputed_sel_sha256_compression), + in.get(ColumnAndShifts::sha256_round_count), + in.get(ColumnAndShifts::sha256_round_constant), + in.get(ColumnAndShifts::precomputed_clk), + in.get(ColumnAndShifts::precomputed_sha256_compression_round_constant)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_to_radix.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_to_radix.hpp index 0b5de70cb909..d1a4151fadbd 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_to_radix.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_to_radix.hpp @@ -36,15 +36,15 @@ class lookup_to_radix_limb_range_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._to_radix_sel() == 1 || in._precomputed_sel_range_8() == 1); + return (in.get(ColumnAndShifts::to_radix_sel) == 1 || in.get(ColumnAndShifts::precomputed_sel_range_8) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._to_radix_sel()); - const auto is_table_entry = View(in._precomputed_sel_range_8()); + const auto is_operation = View(in.get(ColumnAndShifts::to_radix_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_8)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -60,12 +60,12 @@ class lookup_to_radix_limb_range_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_to_radix_limb_range_inv(), - in._lookup_to_radix_limb_range_counts(), - in._to_radix_sel(), - in._precomputed_sel_range_8(), - in._to_radix_limb(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_to_radix_limb_range_inv), + in.get(ColumnAndShifts::lookup_to_radix_limb_range_counts), + in.get(ColumnAndShifts::to_radix_sel), + in.get(ColumnAndShifts::precomputed_sel_range_8), + in.get(ColumnAndShifts::to_radix_limb), + in.get(ColumnAndShifts::precomputed_clk)); } }; @@ -120,15 +120,15 @@ class lookup_to_radix_limb_less_than_radix_range_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._to_radix_sel() == 1 || in._precomputed_sel_range_8() == 1); + return (in.get(ColumnAndShifts::to_radix_sel) == 1 || in.get(ColumnAndShifts::precomputed_sel_range_8) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._to_radix_sel()); - const auto is_table_entry = View(in._precomputed_sel_range_8()); + const auto is_operation = View(in.get(ColumnAndShifts::to_radix_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_8)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -144,12 +144,12 @@ class lookup_to_radix_limb_less_than_radix_range_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_to_radix_limb_less_than_radix_range_inv(), - in._lookup_to_radix_limb_less_than_radix_range_counts(), - in._to_radix_sel(), - in._precomputed_sel_range_8(), - in._to_radix_limb_radix_diff(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_to_radix_limb_less_than_radix_range_inv), + in.get(ColumnAndShifts::lookup_to_radix_limb_less_than_radix_range_counts), + in.get(ColumnAndShifts::to_radix_sel), + in.get(ColumnAndShifts::precomputed_sel_range_8), + in.get(ColumnAndShifts::to_radix_limb_radix_diff), + in.get(ColumnAndShifts::precomputed_clk)); } }; @@ -208,15 +208,16 @@ class lookup_to_radix_fetch_safe_limbs_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._to_radix_start() == 1 || in._precomputed_sel_to_radix_safe_limbs() == 1); + return (in.get(ColumnAndShifts::to_radix_start) == 1 || + in.get(ColumnAndShifts::precomputed_sel_to_radix_safe_limbs) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._to_radix_start()); - const auto is_table_entry = View(in._precomputed_sel_to_radix_safe_limbs()); + const auto is_operation = View(in.get(ColumnAndShifts::to_radix_start)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_to_radix_safe_limbs)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -232,14 +233,14 @@ class lookup_to_radix_fetch_safe_limbs_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_to_radix_fetch_safe_limbs_inv(), - in._lookup_to_radix_fetch_safe_limbs_counts(), - in._to_radix_start(), - in._precomputed_sel_to_radix_safe_limbs(), - in._to_radix_radix(), - in._to_radix_safe_limbs(), - in._precomputed_clk(), - in._precomputed_to_radix_safe_limbs()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_to_radix_fetch_safe_limbs_inv), + in.get(ColumnAndShifts::lookup_to_radix_fetch_safe_limbs_counts), + in.get(ColumnAndShifts::to_radix_start), + in.get(ColumnAndShifts::precomputed_sel_to_radix_safe_limbs), + in.get(ColumnAndShifts::to_radix_radix), + in.get(ColumnAndShifts::to_radix_safe_limbs), + in.get(ColumnAndShifts::precomputed_clk), + in.get(ColumnAndShifts::precomputed_to_radix_safe_limbs)); } }; @@ -299,15 +300,16 @@ class lookup_to_radix_fetch_p_limb_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._to_radix_not_padding_limb() == 1 || in._precomputed_sel_p_decomposition() == 1); + return (in.get(ColumnAndShifts::to_radix_not_padding_limb) == 1 || + in.get(ColumnAndShifts::precomputed_sel_p_decomposition) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._to_radix_not_padding_limb()); - const auto is_table_entry = View(in._precomputed_sel_p_decomposition()); + const auto is_operation = View(in.get(ColumnAndShifts::to_radix_not_padding_limb)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_p_decomposition)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -323,16 +325,16 @@ class lookup_to_radix_fetch_p_limb_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_to_radix_fetch_p_limb_inv(), - in._lookup_to_radix_fetch_p_limb_counts(), - in._to_radix_not_padding_limb(), - in._precomputed_sel_p_decomposition(), - in._to_radix_radix(), - in._to_radix_limb_index(), - in._to_radix_p_limb(), - in._precomputed_p_decomposition_radix(), - in._precomputed_p_decomposition_limb_index(), - in._precomputed_p_decomposition_limb()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_to_radix_fetch_p_limb_inv), + in.get(ColumnAndShifts::lookup_to_radix_fetch_p_limb_counts), + in.get(ColumnAndShifts::to_radix_not_padding_limb), + in.get(ColumnAndShifts::precomputed_sel_p_decomposition), + in.get(ColumnAndShifts::to_radix_radix), + in.get(ColumnAndShifts::to_radix_limb_index), + in.get(ColumnAndShifts::to_radix_p_limb), + in.get(ColumnAndShifts::precomputed_p_decomposition_radix), + in.get(ColumnAndShifts::precomputed_p_decomposition_limb_index), + in.get(ColumnAndShifts::precomputed_p_decomposition_limb)); } }; @@ -387,15 +389,16 @@ class lookup_to_radix_limb_p_diff_range_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._to_radix_not_padding_limb() == 1 || in._precomputed_sel_range_8() == 1); + return (in.get(ColumnAndShifts::to_radix_not_padding_limb) == 1 || + in.get(ColumnAndShifts::precomputed_sel_range_8) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._to_radix_not_padding_limb()); - const auto is_table_entry = View(in._precomputed_sel_range_8()); + const auto is_operation = View(in.get(ColumnAndShifts::to_radix_not_padding_limb)); + const auto is_table_entry = View(in.get(ColumnAndShifts::precomputed_sel_range_8)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -411,12 +414,12 @@ class lookup_to_radix_limb_p_diff_range_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_to_radix_limb_p_diff_range_inv(), - in._lookup_to_radix_limb_p_diff_range_counts(), - in._to_radix_not_padding_limb(), - in._precomputed_sel_range_8(), - in._to_radix_limb_p_diff(), - in._precomputed_clk()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_to_radix_limb_p_diff_range_inv), + in.get(ColumnAndShifts::lookup_to_radix_limb_p_diff_range_counts), + in.get(ColumnAndShifts::to_radix_not_padding_limb), + in.get(ColumnAndShifts::precomputed_sel_range_8), + in.get(ColumnAndShifts::to_radix_limb_p_diff), + in.get(ColumnAndShifts::precomputed_clk)); } }; diff --git a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_update_check.hpp b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_update_check.hpp index add756658732..d1936ca195dd 100644 --- a/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_update_check.hpp +++ b/barretenberg/cpp/src/barretenberg/vm2/generated/relations/lookups_update_check.hpp @@ -46,15 +46,15 @@ class lookup_update_check_shared_mutable_slot_poseidon2_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._update_check_sel() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::update_check_sel) == 1 || in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._update_check_sel()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::update_check_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -70,18 +70,18 @@ class lookup_update_check_shared_mutable_slot_poseidon2_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_update_check_shared_mutable_slot_poseidon2_inv(), - in._lookup_update_check_shared_mutable_slot_poseidon2_counts(), - in._update_check_sel(), - in._poseidon2_hash_end(), - in._update_check_updated_class_ids_slot(), - in._update_check_address(), - in._precomputed_zero(), - in._update_check_shared_mutable_slot(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_update_check_shared_mutable_slot_poseidon2_inv), + in.get(ColumnAndShifts::lookup_update_check_shared_mutable_slot_poseidon2_counts), + in.get(ColumnAndShifts::update_check_sel), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::update_check_updated_class_ids_slot), + in.get(ColumnAndShifts::update_check_address), + in.get(ColumnAndShifts::precomputed_zero), + in.get(ColumnAndShifts::update_check_shared_mutable_slot), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -146,15 +146,15 @@ class lookup_update_check_shared_mutable_leaf_slot_poseidon2_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._update_check_sel() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::update_check_sel) == 1 || in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._update_check_sel()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::update_check_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -170,18 +170,19 @@ class lookup_update_check_shared_mutable_leaf_slot_poseidon2_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_update_check_shared_mutable_leaf_slot_poseidon2_inv(), - in._lookup_update_check_shared_mutable_leaf_slot_poseidon2_counts(), - in._update_check_sel(), - in._poseidon2_hash_end(), - in._update_check_public_leaf_index_domain_separator(), - in._update_check_deployer_protocol_contract_address(), - in._update_check_shared_mutable_hash_slot(), - in._update_check_shared_mutable_leaf_slot(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple( + in.get(ColumnAndShifts::lookup_update_check_shared_mutable_leaf_slot_poseidon2_inv), + in.get(ColumnAndShifts::lookup_update_check_shared_mutable_leaf_slot_poseidon2_counts), + in.get(ColumnAndShifts::update_check_sel), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::update_check_public_leaf_index_domain_separator), + in.get(ColumnAndShifts::update_check_deployer_protocol_contract_address), + in.get(ColumnAndShifts::update_check_shared_mutable_hash_slot), + in.get(ColumnAndShifts::update_check_shared_mutable_leaf_slot), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -244,15 +245,15 @@ class lookup_update_check_update_hash_public_data_read_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._update_check_sel() == 1 || in._public_data_read_sel() == 1); + return (in.get(ColumnAndShifts::update_check_sel) == 1 || in.get(ColumnAndShifts::public_data_read_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._update_check_sel()); - const auto is_table_entry = View(in._public_data_read_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::update_check_sel)); + const auto is_table_entry = View(in.get(ColumnAndShifts::public_data_read_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -268,16 +269,16 @@ class lookup_update_check_update_hash_public_data_read_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_update_check_update_hash_public_data_read_inv(), - in._lookup_update_check_update_hash_public_data_read_counts(), - in._update_check_sel(), - in._public_data_read_sel(), - in._update_check_update_hash(), - in._update_check_shared_mutable_leaf_slot(), - in._update_check_public_data_tree_root(), - in._public_data_read_value(), - in._public_data_read_slot(), - in._public_data_read_root()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_update_check_update_hash_public_data_read_inv), + in.get(ColumnAndShifts::lookup_update_check_update_hash_public_data_read_counts), + in.get(ColumnAndShifts::update_check_sel), + in.get(ColumnAndShifts::public_data_read_sel), + in.get(ColumnAndShifts::update_check_update_hash), + in.get(ColumnAndShifts::update_check_shared_mutable_leaf_slot), + in.get(ColumnAndShifts::update_check_public_data_tree_root), + in.get(ColumnAndShifts::public_data_read_value), + in.get(ColumnAndShifts::public_data_read_slot), + in.get(ColumnAndShifts::public_data_read_root)); } }; @@ -342,15 +343,16 @@ class lookup_update_check_update_hash_poseidon2_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._update_check_hash_not_zero() == 1 || in._poseidon2_hash_end() == 1); + return (in.get(ColumnAndShifts::update_check_hash_not_zero) == 1 || + in.get(ColumnAndShifts::poseidon2_hash_end) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._update_check_hash_not_zero()); - const auto is_table_entry = View(in._poseidon2_hash_end()); + const auto is_operation = View(in.get(ColumnAndShifts::update_check_hash_not_zero)); + const auto is_table_entry = View(in.get(ColumnAndShifts::poseidon2_hash_end)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -366,18 +368,18 @@ class lookup_update_check_update_hash_poseidon2_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_update_check_update_hash_poseidon2_inv(), - in._lookup_update_check_update_hash_poseidon2_counts(), - in._update_check_hash_not_zero(), - in._poseidon2_hash_end(), - in._update_check_update_preimage_metadata(), - in._update_check_update_preimage_pre_class_id(), - in._update_check_update_preimage_post_class_id(), - in._update_check_update_hash(), - in._poseidon2_hash_input_0(), - in._poseidon2_hash_input_1(), - in._poseidon2_hash_input_2(), - in._poseidon2_hash_output()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_update_check_update_hash_poseidon2_inv), + in.get(ColumnAndShifts::lookup_update_check_update_hash_poseidon2_counts), + in.get(ColumnAndShifts::update_check_hash_not_zero), + in.get(ColumnAndShifts::poseidon2_hash_end), + in.get(ColumnAndShifts::update_check_update_preimage_metadata), + in.get(ColumnAndShifts::update_check_update_preimage_pre_class_id), + in.get(ColumnAndShifts::update_check_update_preimage_post_class_id), + in.get(ColumnAndShifts::update_check_update_hash), + in.get(ColumnAndShifts::poseidon2_hash_input_0), + in.get(ColumnAndShifts::poseidon2_hash_input_1), + in.get(ColumnAndShifts::poseidon2_hash_input_2), + in.get(ColumnAndShifts::poseidon2_hash_output)); } }; @@ -435,15 +437,16 @@ class lookup_update_check_update_hi_metadata_range_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._update_check_hash_not_zero() == 1 || in._range_check_sel() == 1); + return (in.get(ColumnAndShifts::update_check_hash_not_zero) == 1 || + in.get(ColumnAndShifts::range_check_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._update_check_hash_not_zero()); - const auto is_table_entry = View(in._range_check_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::update_check_hash_not_zero)); + const auto is_table_entry = View(in.get(ColumnAndShifts::range_check_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -459,14 +462,14 @@ class lookup_update_check_update_hi_metadata_range_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_update_check_update_hi_metadata_range_inv(), - in._lookup_update_check_update_hi_metadata_range_counts(), - in._update_check_hash_not_zero(), - in._range_check_sel(), - in._update_check_update_hi_metadata(), - in._update_check_update_hi_metadata_bit_size(), - in._range_check_value(), - in._range_check_rng_chk_bits()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_update_check_update_hi_metadata_range_inv), + in.get(ColumnAndShifts::lookup_update_check_update_hi_metadata_range_counts), + in.get(ColumnAndShifts::update_check_hash_not_zero), + in.get(ColumnAndShifts::range_check_sel), + in.get(ColumnAndShifts::update_check_update_hi_metadata), + in.get(ColumnAndShifts::update_check_update_hi_metadata_bit_size), + in.get(ColumnAndShifts::range_check_value), + in.get(ColumnAndShifts::range_check_rng_chk_bits)); } }; @@ -525,15 +528,16 @@ class lookup_update_check_update_lo_metadata_range_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._update_check_hash_not_zero() == 1 || in._range_check_sel() == 1); + return (in.get(ColumnAndShifts::update_check_hash_not_zero) == 1 || + in.get(ColumnAndShifts::range_check_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._update_check_hash_not_zero()); - const auto is_table_entry = View(in._range_check_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::update_check_hash_not_zero)); + const auto is_table_entry = View(in.get(ColumnAndShifts::range_check_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -549,14 +553,14 @@ class lookup_update_check_update_lo_metadata_range_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_update_check_update_lo_metadata_range_inv(), - in._lookup_update_check_update_lo_metadata_range_counts(), - in._update_check_hash_not_zero(), - in._range_check_sel(), - in._update_check_update_block_of_change(), - in._update_check_block_number_bit_size(), - in._range_check_value(), - in._range_check_rng_chk_bits()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_update_check_update_lo_metadata_range_inv), + in.get(ColumnAndShifts::lookup_update_check_update_lo_metadata_range_counts), + in.get(ColumnAndShifts::update_check_hash_not_zero), + in.get(ColumnAndShifts::range_check_sel), + in.get(ColumnAndShifts::update_check_update_block_of_change), + in.get(ColumnAndShifts::update_check_block_number_bit_size), + in.get(ColumnAndShifts::range_check_value), + in.get(ColumnAndShifts::range_check_rng_chk_bits)); } }; @@ -615,15 +619,16 @@ class lookup_update_check_block_of_change_cmp_range_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._update_check_hash_not_zero() == 1 || in._range_check_sel() == 1); + return (in.get(ColumnAndShifts::update_check_hash_not_zero) == 1 || + in.get(ColumnAndShifts::range_check_sel) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._update_check_hash_not_zero()); - const auto is_table_entry = View(in._range_check_sel()); + const auto is_operation = View(in.get(ColumnAndShifts::update_check_hash_not_zero)); + const auto is_table_entry = View(in.get(ColumnAndShifts::range_check_sel)); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -639,14 +644,14 @@ class lookup_update_check_block_of_change_cmp_range_settings { template static inline auto get_entities(AllEntities&& in) { - return std::forward_as_tuple(in._lookup_update_check_block_of_change_cmp_range_inv(), - in._lookup_update_check_block_of_change_cmp_range_counts(), - in._update_check_hash_not_zero(), - in._range_check_sel(), - in._update_check_block_of_change_subtraction(), - in._update_check_block_number_bit_size(), - in._range_check_value(), - in._range_check_rng_chk_bits()); + return std::forward_as_tuple(in.get(ColumnAndShifts::lookup_update_check_block_of_change_cmp_range_inv), + in.get(ColumnAndShifts::lookup_update_check_block_of_change_cmp_range_counts), + in.get(ColumnAndShifts::update_check_hash_not_zero), + in.get(ColumnAndShifts::range_check_sel), + in.get(ColumnAndShifts::update_check_block_of_change_subtraction), + in.get(ColumnAndShifts::update_check_block_number_bit_size), + in.get(ColumnAndShifts::range_check_value), + in.get(ColumnAndShifts::range_check_rng_chk_bits)); } }; diff --git a/bb-pilcom/bb-pil-backend/templates/columns.hpp.hbs b/bb-pilcom/bb-pil-backend/templates/columns.hpp.hbs index 760473cd7e2b..1782391baa05 100644 --- a/bb-pilcom/bb-pil-backend/templates/columns.hpp.hbs +++ b/bb-pilcom/bb-pil-backend/templates/columns.hpp.hbs @@ -7,19 +7,25 @@ namespace bb::{{snakeCase name}} { -// The entities that will be used in the flavor. // clang-format off -#define {{shoutySnakeCase name}}_PRECOMPUTED_ENTITIES {{#each fixed as |item|}}{{#if @index}}, {{/if}}{{item}}{{/each}} -#define {{shoutySnakeCase name}}_WIRE_ENTITIES {{#each witness_without_inverses as |item|}}{{#if @index}}, {{/if}}{{item}}{{/each}} -#define {{shoutySnakeCase name}}_DERIVED_WITNESS_ENTITIES {{#each inverses as |item|}}{{#if @index}}, {{/if}}{{item}}{{/each}} -#define {{shoutySnakeCase name}}_SHIFTED_ENTITIES {{#each shifted as |item|}}{{#if @index}}, {{/if}}{{item}}{{/each}} -#define {{shoutySnakeCase name}}_TO_BE_SHIFTED(e) {{#each to_be_shifted as |item|}}{{#if @index}}, {{/if}}e.{{item}}{{/each}} -#define {{shoutySnakeCase name}}_ALL_ENTITIES {{#if (len fixed)}}{{shoutySnakeCase name}}_PRECOMPUTED_ENTITIES{{/if}}{{#if (len witness_without_inverses)}}, {{shoutySnakeCase name}}_WIRE_ENTITIES{{/if}}{{#if (len lookups)}}, {{shoutySnakeCase name}}_DERIVED_WITNESS_ENTITIES{{/if}}{{#if (len shifted)}}, {{shoutySnakeCase name}}_SHIFTED_ENTITIES{{/if}} +#define {{shoutySnakeCase name}}_PRECOMPUTED_ENTITIES_E(e) {{#each fixed as |item|}}{{#if @index}}, {{/if}}e {{item}}{{/each}} +#define {{shoutySnakeCase name}}_WIRE_ENTITIES_E(e) {{#each witness_without_inverses as |item|}}{{#if @index}}, {{/if}}e {{item}}{{/each}} +#define {{shoutySnakeCase name}}_DERIVED_WITNESS_ENTITIES_E(e) {{#each inverses as |item|}}{{#if @index}}, {{/if}}e {{item}}{{/each}} +#define {{shoutySnakeCase name}}_SHIFTED_ENTITIES_E(e) {{#each shifted as |item|}}{{#if @index}}, {{/if}}e {{item}}{{/each}} +#define {{shoutySnakeCase name}}_TO_BE_SHIFTED_E(e) {{#each to_be_shifted as |item|}}{{#if @index}}, {{/if}}e {{item}}{{/each}} +#define {{shoutySnakeCase name}}_ALL_ENTITIES_E(e) {{#if (len fixed)}}{{shoutySnakeCase name}}_PRECOMPUTED_ENTITIES_E(e){{/if}}{{#if (len witness_without_inverses)}}, {{shoutySnakeCase name}}_WIRE_ENTITIES_E(e){{/if}}{{#if (len lookups)}}, {{shoutySnakeCase name}}_DERIVED_WITNESS_ENTITIES_E(e){{/if}}{{#if (len shifted)}}, {{shoutySnakeCase name}}_SHIFTED_ENTITIES_E(e){{/if}} + +#define {{shoutySnakeCase name}}_PRECOMPUTED_ENTITIES {{shoutySnakeCase name}}_PRECOMPUTED_ENTITIES_E() +#define {{shoutySnakeCase name}}_WIRE_ENTITIES {{shoutySnakeCase name}}_WIRE_ENTITIES_E() +#define {{shoutySnakeCase name}}_DERIVED_WITNESS_ENTITIES {{shoutySnakeCase name}}_DERIVED_WITNESS_ENTITIES_E() +#define {{shoutySnakeCase name}}_SHIFTED_ENTITIES {{shoutySnakeCase name}}_SHIFTED_ENTITIES_E() + #define {{shoutySnakeCase name}}_UNSHIFTED_ENTITIES {{shoutySnakeCase name}}_PRECOMPUTED_ENTITIES, {{shoutySnakeCase name}}_WIRE_ENTITIES, {{shoutySnakeCase name}}_DERIVED_WITNESS_ENTITIES #define {{shoutySnakeCase name}}_WITNESS_ENTITIES {{shoutySnakeCase name}}_WIRE_ENTITIES, {{shoutySnakeCase name}}_DERIVED_WITNESS_ENTITIES +#define {{shoutySnakeCase name}}_ALL_ENTITIES {{shoutySnakeCase name}}_ALL_ENTITIES_E() -#define {{shoutySnakeCase name}}_TO_BE_SHIFTED_COLUMNS {{#each to_be_shifted as |item|}}{{#if @index}}, {{/if}}Column::{{item}}{{/each}} -#define {{shoutySnakeCase name}}_SHIFTED_COLUMNS {{#each shifted as |item|}}{{#if @index}}, {{/if}}ColumnAndShifts::{{item}}{{/each}} +#define {{shoutySnakeCase name}}_TO_BE_SHIFTED_COLUMNS {{shoutySnakeCase name}}_TO_BE_SHIFTED_E(Column::) +#define {{shoutySnakeCase name}}_SHIFTED_COLUMNS {{shoutySnakeCase name}}_SHIFTED_ENTITIES_E(ColumnAndShifts::) // clang-format on // All columns minus shifts. @@ -45,4 +51,4 @@ inline const std::vector& COLUMN_NAMES = []() { return vec; }(); -} // namespace bb::{{snakeCase name}} \ No newline at end of file +} // namespace bb::{{snakeCase name}} diff --git a/bb-pilcom/bb-pil-backend/templates/lookup.hpp.hbs b/bb-pilcom/bb-pil-backend/templates/lookup.hpp.hbs index 53f069d5d064..36e73ae767a1 100644 --- a/bb-pilcom/bb-pil-backend/templates/lookup.hpp.hbs +++ b/bb-pilcom/bb-pil-backend/templates/lookup.hpp.hbs @@ -45,15 +45,15 @@ class {{lookup_name}}_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._{{lhs_selector}}() == 1 || in._{{rhs_selector}}() == 1); + return (in.get(ColumnAndShifts::{{lhs_selector}}) == 1 || in.get(ColumnAndShifts::{{rhs_selector}}) == 1); } template static inline auto compute_inverse_exists(const AllEntities& in) { using View = typename Accumulator::View; - const auto is_operation = View(in._{{lhs_selector}}()); - const auto is_table_entry = View(in._{{rhs_selector}}()); + const auto is_operation = View(in.get(ColumnAndShifts::{{lhs_selector}})); + const auto is_table_entry = View(in.get(ColumnAndShifts::{{rhs_selector}})); return (is_operation + is_table_entry - is_operation * is_table_entry); } @@ -70,15 +70,15 @@ class {{lookup_name}}_settings { template static inline auto get_entities(AllEntities&& in) { return std::forward_as_tuple( - in._{{inverses_col}}(), - in._{{counts_col}}(), - in._{{lhs_selector}}(), - in._{{rhs_selector}}(), + in.get(ColumnAndShifts::{{inverses_col}}), + in.get(ColumnAndShifts::{{counts_col}}), + in.get(ColumnAndShifts::{{lhs_selector}}), + in.get(ColumnAndShifts::{{rhs_selector}}), {{#each lhs_cols as |col|}} - in._{{col}}(), - {{/each}} + in.get(ColumnAndShifts::{{col}}){{#unless @last}},{{/unless}} + {{/each}}, {{#each rhs_cols as |col|}} - in._{{col}}(){{#unless @last}},{{/unless}} + in.get(ColumnAndShifts::{{col}}){{#unless @last}},{{/unless}} {{/each}} ); } diff --git a/bb-pilcom/bb-pil-backend/templates/permutation.hpp.hbs b/bb-pilcom/bb-pil-backend/templates/permutation.hpp.hbs index 500e4af17d6b..f204f9308b6a 100644 --- a/bb-pilcom/bb-pil-backend/templates/permutation.hpp.hbs +++ b/bb-pilcom/bb-pil-backend/templates/permutation.hpp.hbs @@ -28,14 +28,14 @@ class {{perm_name}}_settings { template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { - return (in._{{lhs_selector}}() == 1 || in._{{rhs_selector}}() == 1); + return (in.get(ColumnAndShifts::{{lhs_selector}}) == 1 || in.get(ColumnAndShifts::{{rhs_selector}}) == 1); } template static inline auto get_const_entities(const AllEntities& in) { return std::forward_as_tuple( {{#each perm_entities as |ent|}} - in._{{ent}}(){{#unless @last}},{{/unless}} + in.get(ColumnAndShifts::{{ent}}){{#unless @last}},{{/unless}} {{/each}} ); } @@ -44,7 +44,7 @@ class {{perm_name}}_settings { { return std::forward_as_tuple( {{#each perm_entities as |ent|}} - in._{{ent}}(){{#unless @last}},{{/unless}} + in.get(ColumnAndShifts::{{ent}}){{#unless @last}},{{/unless}} {{/each}} ); }