From 062380745c6e5836d6ee6f5006bf18a7641894e6 Mon Sep 17 00:00:00 2001 From: Facundo Date: Thu, 4 Jul 2024 12:54:29 +0100 Subject: [PATCH] chore(avm): migrate lookups and permutations (#7335) --- .../generated/avm/incl_main_tag_err.hpp | 95 +------------------ .../generated/avm/incl_mem_tag_err.hpp | 95 +------------------ .../generated/avm/kernel_output_lookup.hpp | 95 +------------------ .../generated/avm/lookup_byte_lengths.hpp | 95 +------------------ .../generated/avm/lookup_byte_operations.hpp | 95 +------------------ .../generated/avm/lookup_div_u16_0.hpp | 95 +------------------ .../generated/avm/lookup_div_u16_1.hpp | 95 +------------------ .../generated/avm/lookup_div_u16_2.hpp | 95 +------------------ .../generated/avm/lookup_div_u16_3.hpp | 95 +------------------ .../generated/avm/lookup_div_u16_4.hpp | 95 +------------------ .../generated/avm/lookup_div_u16_5.hpp | 95 +------------------ .../generated/avm/lookup_div_u16_6.hpp | 95 +------------------ .../generated/avm/lookup_div_u16_7.hpp | 95 +------------------ .../generated/avm/lookup_into_kernel.hpp | 95 +------------------ .../generated/avm/lookup_mem_rng_chk_hi.hpp | 95 +------------------ .../generated/avm/lookup_mem_rng_chk_lo.hpp | 95 +------------------ .../generated/avm/lookup_mem_rng_chk_mid.hpp | 95 +------------------ .../generated/avm/lookup_opcode_gas.hpp | 95 +------------------ .../generated/avm/lookup_pow_2_0.hpp | 95 +------------------ .../generated/avm/lookup_pow_2_1.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_0.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_1.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_10.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_11.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_12.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_13.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_14.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_2.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_3.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_4.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_5.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_6.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_7.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_8.hpp | 95 +------------------ .../relations/generated/avm/lookup_u16_9.hpp | 95 +------------------ .../relations/generated/avm/lookup_u8_0.hpp | 95 +------------------ .../relations/generated/avm/lookup_u8_1.hpp | 95 +------------------ .../relations/generated/avm/perm_main_alu.hpp | 47 +-------- .../relations/generated/avm/perm_main_bin.hpp | 47 +-------- .../generated/avm/perm_main_conv.hpp | 47 +-------- .../generated/avm/perm_main_mem_a.hpp | 47 +-------- .../generated/avm/perm_main_mem_b.hpp | 47 +-------- .../generated/avm/perm_main_mem_c.hpp | 47 +-------- .../generated/avm/perm_main_mem_d.hpp | 47 +-------- .../avm/perm_main_mem_ind_addr_a.hpp | 47 +-------- .../avm/perm_main_mem_ind_addr_b.hpp | 47 +-------- .../avm/perm_main_mem_ind_addr_c.hpp | 47 +-------- .../avm/perm_main_mem_ind_addr_d.hpp | 47 +-------- .../generated/avm/perm_main_pedersen.hpp | 47 +-------- .../generated/avm/perm_main_pos2_perm.hpp | 47 +-------- .../generated/avm/range_check_da_gas_hi.hpp | 95 +------------------ .../generated/avm/range_check_da_gas_lo.hpp | 95 +------------------ .../generated/avm/range_check_l2_gas_hi.hpp | 95 +------------------ .../generated/avm/range_check_l2_gas_lo.hpp | 95 +------------------ 54 files changed, 54 insertions(+), 4452 deletions(-) diff --git a/cpp/src/barretenberg/relations/generated/avm/incl_main_tag_err.hpp b/cpp/src/barretenberg/relations/generated/avm/incl_main_tag_err.hpp index c9caae3a4..6504fe11f 100644 --- a/cpp/src/barretenberg/relations/generated/avm/incl_main_tag_err.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/incl_main_tag_err.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class incl_main_tag_err_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.mem_tag_err == 1 || in.main_tag_err == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class incl_main_tag_err_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.incl_main_tag_err, in.incl_main_tag_err_counts, in.mem_tag_err, @@ -141,16 +56,8 @@ class incl_main_tag_err_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.incl_main_tag_err, in.incl_main_tag_err_counts, in.mem_tag_err, @@ -164,4 +71,4 @@ template using incl_main_tag_err_relation = GenericLookupRelation; template using incl_main_tag_err = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/incl_mem_tag_err.hpp b/cpp/src/barretenberg/relations/generated/avm/incl_mem_tag_err.hpp index abbdf2617..b790c7ec1 100644 --- a/cpp/src/barretenberg/relations/generated/avm/incl_mem_tag_err.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/incl_mem_tag_err.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class incl_mem_tag_err_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_tag_err == 1 || in.mem_tag_err == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,44 +46,14 @@ class incl_mem_tag_err_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple( in.incl_mem_tag_err, in.incl_mem_tag_err_counts, in.main_tag_err, in.mem_tag_err, in.main_clk, in.mem_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple( in.incl_mem_tag_err, in.incl_mem_tag_err_counts, in.main_tag_err, in.mem_tag_err, in.main_clk, in.mem_clk); } @@ -155,4 +62,4 @@ class incl_mem_tag_err_lookup_settings { template using incl_mem_tag_err_relation = GenericLookupRelation; template using incl_mem_tag_err = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/kernel_output_lookup.hpp b/cpp/src/barretenberg/relations/generated/avm/kernel_output_lookup.hpp index d2eda9e27..5d41006a5 100644 --- a/cpp/src/barretenberg/relations/generated/avm/kernel_output_lookup.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/kernel_output_lookup.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class kernel_output_lookup_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 4; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_q_kernel_output_lookup == 1 || in.kernel_q_public_input_kernel_out_add_to_table == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class kernel_output_lookup_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.kernel_output_lookup, in.kernel_output_lookup_counts, in.main_sel_q_kernel_output_lookup, @@ -147,16 +62,8 @@ class kernel_output_lookup_lookup_settings { in.kernel_kernel_metadata_out); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.kernel_output_lookup, in.kernel_output_lookup_counts, in.main_sel_q_kernel_output_lookup, @@ -176,4 +83,4 @@ template using kernel_output_lookup_relation = GenericLookupRelation; template using kernel_output_lookup = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_byte_lengths.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_byte_lengths.hpp index bf8caeffe..7dbde65e4 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_byte_lengths.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_byte_lengths.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_byte_lengths_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 2; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.binary_start == 1 || in.byte_lookup_sel_bin == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_byte_lengths_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_byte_lengths, in.lookup_byte_lengths_counts, in.binary_start, @@ -143,16 +58,8 @@ class lookup_byte_lengths_lookup_settings { in.byte_lookup_table_byte_lengths); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_byte_lengths, in.lookup_byte_lengths_counts, in.binary_start, @@ -168,4 +75,4 @@ template using lookup_byte_lengths_relation = GenericLookupRelation; template using lookup_byte_lengths = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_byte_operations.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_byte_operations.hpp index 94b514151..7e3b35390 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_byte_operations.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_byte_operations.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_byte_operations_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 4; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.binary_sel_bin == 1 || in.byte_lookup_sel_bin == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_byte_operations_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_byte_operations, in.lookup_byte_operations_counts, in.binary_sel_bin, @@ -147,16 +62,8 @@ class lookup_byte_operations_lookup_settings { in.byte_lookup_table_output); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_byte_operations, in.lookup_byte_operations_counts, in.binary_sel_bin, @@ -176,4 +83,4 @@ template using lookup_byte_operations_relation = GenericLookupRelation; template using lookup_byte_operations = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_0.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_0.hpp index 405c7068d..722ae7e44 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_0.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_0.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_div_u16_0_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_div_rng_chk == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_div_u16_0_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_0, in.lookup_div_u16_0_counts, in.alu_sel_div_rng_chk, @@ -141,16 +56,8 @@ class lookup_div_u16_0_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_0, in.lookup_div_u16_0_counts, in.alu_sel_div_rng_chk, @@ -163,4 +70,4 @@ class lookup_div_u16_0_lookup_settings { template using lookup_div_u16_0_relation = GenericLookupRelation; template using lookup_div_u16_0 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_1.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_1.hpp index 2a66fac35..8e47192db 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_1.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_1.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_div_u16_1_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_div_rng_chk == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_div_u16_1_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_1, in.lookup_div_u16_1_counts, in.alu_sel_div_rng_chk, @@ -141,16 +56,8 @@ class lookup_div_u16_1_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_1, in.lookup_div_u16_1_counts, in.alu_sel_div_rng_chk, @@ -163,4 +70,4 @@ class lookup_div_u16_1_lookup_settings { template using lookup_div_u16_1_relation = GenericLookupRelation; template using lookup_div_u16_1 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_2.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_2.hpp index 02d12a785..cf15ed785 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_2.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_2.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_div_u16_2_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_div_rng_chk == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_div_u16_2_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_2, in.lookup_div_u16_2_counts, in.alu_sel_div_rng_chk, @@ -141,16 +56,8 @@ class lookup_div_u16_2_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_2, in.lookup_div_u16_2_counts, in.alu_sel_div_rng_chk, @@ -163,4 +70,4 @@ class lookup_div_u16_2_lookup_settings { template using lookup_div_u16_2_relation = GenericLookupRelation; template using lookup_div_u16_2 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_3.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_3.hpp index 438d59d1d..cbd1af827 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_3.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_3.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_div_u16_3_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_div_rng_chk == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_div_u16_3_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_3, in.lookup_div_u16_3_counts, in.alu_sel_div_rng_chk, @@ -141,16 +56,8 @@ class lookup_div_u16_3_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_3, in.lookup_div_u16_3_counts, in.alu_sel_div_rng_chk, @@ -163,4 +70,4 @@ class lookup_div_u16_3_lookup_settings { template using lookup_div_u16_3_relation = GenericLookupRelation; template using lookup_div_u16_3 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_4.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_4.hpp index 7dd1c7cac..7df49f051 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_4.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_4.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_div_u16_4_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_div_rng_chk == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_div_u16_4_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_4, in.lookup_div_u16_4_counts, in.alu_sel_div_rng_chk, @@ -141,16 +56,8 @@ class lookup_div_u16_4_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_4, in.lookup_div_u16_4_counts, in.alu_sel_div_rng_chk, @@ -163,4 +70,4 @@ class lookup_div_u16_4_lookup_settings { template using lookup_div_u16_4_relation = GenericLookupRelation; template using lookup_div_u16_4 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_5.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_5.hpp index cf3b6d8c7..a58751eb6 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_5.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_5.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_div_u16_5_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_div_rng_chk == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_div_u16_5_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_5, in.lookup_div_u16_5_counts, in.alu_sel_div_rng_chk, @@ -141,16 +56,8 @@ class lookup_div_u16_5_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_5, in.lookup_div_u16_5_counts, in.alu_sel_div_rng_chk, @@ -163,4 +70,4 @@ class lookup_div_u16_5_lookup_settings { template using lookup_div_u16_5_relation = GenericLookupRelation; template using lookup_div_u16_5 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_6.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_6.hpp index d78115f53..51e4c73a5 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_6.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_6.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_div_u16_6_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_div_rng_chk == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_div_u16_6_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_6, in.lookup_div_u16_6_counts, in.alu_sel_div_rng_chk, @@ -141,16 +56,8 @@ class lookup_div_u16_6_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_6, in.lookup_div_u16_6_counts, in.alu_sel_div_rng_chk, @@ -163,4 +70,4 @@ class lookup_div_u16_6_lookup_settings { template using lookup_div_u16_6_relation = GenericLookupRelation; template using lookup_div_u16_6 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_7.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_7.hpp index 3ddb1cc48..657221da6 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_7.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_7.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_div_u16_7_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_div_rng_chk == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_div_u16_7_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_7, in.lookup_div_u16_7_counts, in.alu_sel_div_rng_chk, @@ -141,16 +56,8 @@ class lookup_div_u16_7_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_div_u16_7, in.lookup_div_u16_7_counts, in.alu_sel_div_rng_chk, @@ -163,4 +70,4 @@ class lookup_div_u16_7_lookup_settings { template using lookup_div_u16_7_relation = GenericLookupRelation; template using lookup_div_u16_7 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_into_kernel.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_into_kernel.hpp index 0dc497d42..dbd8cc056 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_into_kernel.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_into_kernel.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_into_kernel_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 2; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_q_kernel_lookup == 1 || in.kernel_q_public_input_kernel_add_to_table == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_into_kernel_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_into_kernel, in.lookup_into_kernel_counts, in.main_sel_q_kernel_lookup, @@ -143,16 +58,8 @@ class lookup_into_kernel_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_into_kernel, in.lookup_into_kernel_counts, in.main_sel_q_kernel_lookup, @@ -168,4 +75,4 @@ template using lookup_into_kernel_relation = GenericLookupRelation; template using lookup_into_kernel = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_hi.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_hi.hpp index 7557705c5..933d2272d 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_hi.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_hi.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_mem_rng_chk_hi_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.mem_sel_rng_chk == 1 || in.main_sel_rng_8 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_mem_rng_chk_hi_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_mem_rng_chk_hi, in.lookup_mem_rng_chk_hi_counts, in.mem_sel_rng_chk, @@ -141,16 +56,8 @@ class lookup_mem_rng_chk_hi_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_mem_rng_chk_hi, in.lookup_mem_rng_chk_hi_counts, in.mem_sel_rng_chk, @@ -164,4 +71,4 @@ template using lookup_mem_rng_chk_hi_relation = GenericLookupRelation; template using lookup_mem_rng_chk_hi = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_lo.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_lo.hpp index ebe9884b8..e61714cab 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_lo.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_lo.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_mem_rng_chk_lo_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.mem_sel_rng_chk == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_mem_rng_chk_lo_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_mem_rng_chk_lo, in.lookup_mem_rng_chk_lo_counts, in.mem_sel_rng_chk, @@ -141,16 +56,8 @@ class lookup_mem_rng_chk_lo_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_mem_rng_chk_lo, in.lookup_mem_rng_chk_lo_counts, in.mem_sel_rng_chk, @@ -164,4 +71,4 @@ template using lookup_mem_rng_chk_lo_relation = GenericLookupRelation; template using lookup_mem_rng_chk_lo = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_mid.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_mid.hpp index 45b8a5f03..6e0ce0b98 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_mid.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_mid.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_mem_rng_chk_mid_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.mem_sel_rng_chk == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_mem_rng_chk_mid_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_mem_rng_chk_mid, in.lookup_mem_rng_chk_mid_counts, in.mem_sel_rng_chk, @@ -141,16 +56,8 @@ class lookup_mem_rng_chk_mid_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_mem_rng_chk_mid, in.lookup_mem_rng_chk_mid_counts, in.mem_sel_rng_chk, @@ -164,4 +71,4 @@ template using lookup_mem_rng_chk_mid_relation = GenericLookupRelation; template using lookup_mem_rng_chk_mid = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_opcode_gas.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_opcode_gas.hpp index 1a164fc17..64d11a5bd 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_opcode_gas.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_opcode_gas.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_opcode_gas_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 3; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_gas_accounting_active == 1 || in.gas_sel_gas_cost == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_opcode_gas_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_opcode_gas, in.lookup_opcode_gas_counts, in.main_sel_gas_accounting_active, @@ -145,16 +60,8 @@ class lookup_opcode_gas_lookup_settings { in.gas_da_gas_fixed_table); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_opcode_gas, in.lookup_opcode_gas_counts, in.main_sel_gas_accounting_active, @@ -172,4 +79,4 @@ template using lookup_opcode_gas_relation = GenericLookupRelation; template using lookup_opcode_gas = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_0.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_0.hpp index 7ec3d3283..1f1c342cd 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_0.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_0.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_pow_2_0_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 2; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_shift_which == 1 || in.main_sel_rng_8 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_pow_2_0_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_pow_2_0, in.lookup_pow_2_0_counts, in.alu_sel_shift_which, @@ -143,16 +58,8 @@ class lookup_pow_2_0_lookup_settings { in.powers_power_of_2); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_pow_2_0, in.lookup_pow_2_0_counts, in.alu_sel_shift_which, @@ -167,4 +74,4 @@ class lookup_pow_2_0_lookup_settings { template using lookup_pow_2_0_relation = GenericLookupRelation; template using lookup_pow_2_0 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_1.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_1.hpp index 4101469c9..b8949612d 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_1.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_1.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_pow_2_1_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 2; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_shift_which == 1 || in.main_sel_rng_8 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_pow_2_1_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_pow_2_1, in.lookup_pow_2_1_counts, in.alu_sel_shift_which, @@ -143,16 +58,8 @@ class lookup_pow_2_1_lookup_settings { in.powers_power_of_2); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_pow_2_1, in.lookup_pow_2_1_counts, in.alu_sel_shift_which, @@ -167,4 +74,4 @@ class lookup_pow_2_1_lookup_settings { template using lookup_pow_2_1_relation = GenericLookupRelation; template using lookup_pow_2_1 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_0.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_0.hpp index 9fd20ef02..c8486d70f 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_0.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_0.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_0_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_0_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_0, in.lookup_u16_0_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_0_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_0, in.lookup_u16_0_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_0_lookup_settings { template using lookup_u16_0_relation = GenericLookupRelation; template using lookup_u16_0 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_1.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_1.hpp index 5ba1b374b..a7195014b 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_1.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_1.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_1_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_1_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_1, in.lookup_u16_1_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_1_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_1, in.lookup_u16_1_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_1_lookup_settings { template using lookup_u16_1_relation = GenericLookupRelation; template using lookup_u16_1 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_10.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_10.hpp index 44de0ae6a..5d9340e18 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_10.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_10.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_10_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_10_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_10, in.lookup_u16_10_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_10_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_10, in.lookup_u16_10_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_10_lookup_settings { template using lookup_u16_10_relation = GenericLookupRelation; template using lookup_u16_10 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_11.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_11.hpp index d415ae204..cf7473b5c 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_11.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_11.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_11_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_11_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_11, in.lookup_u16_11_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_11_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_11, in.lookup_u16_11_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_11_lookup_settings { template using lookup_u16_11_relation = GenericLookupRelation; template using lookup_u16_11 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_12.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_12.hpp index 2fc33c33f..e0edca8a9 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_12.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_12.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_12_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_12_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_12, in.lookup_u16_12_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_12_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_12, in.lookup_u16_12_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_12_lookup_settings { template using lookup_u16_12_relation = GenericLookupRelation; template using lookup_u16_12 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_13.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_13.hpp index 1c9f92c36..8255f13cf 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_13.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_13.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_13_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_13_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_13, in.lookup_u16_13_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_13_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_13, in.lookup_u16_13_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_13_lookup_settings { template using lookup_u16_13_relation = GenericLookupRelation; template using lookup_u16_13 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_14.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_14.hpp index 3907fb353..a4857ab02 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_14.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_14.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_14_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_14_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_14, in.lookup_u16_14_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_14_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_14, in.lookup_u16_14_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_14_lookup_settings { template using lookup_u16_14_relation = GenericLookupRelation; template using lookup_u16_14 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_2.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_2.hpp index 7301b0fac..aea3c986c 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_2.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_2.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_2_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_2_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_2, in.lookup_u16_2_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_2_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_2, in.lookup_u16_2_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_2_lookup_settings { template using lookup_u16_2_relation = GenericLookupRelation; template using lookup_u16_2 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_3.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_3.hpp index 86170a20a..828351e0b 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_3.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_3.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_3_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_3_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_3, in.lookup_u16_3_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_3_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_3, in.lookup_u16_3_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_3_lookup_settings { template using lookup_u16_3_relation = GenericLookupRelation; template using lookup_u16_3 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_4.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_4.hpp index 877440f08..157c0225b 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_4.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_4.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_4_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_4_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_4, in.lookup_u16_4_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_4_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_4, in.lookup_u16_4_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_4_lookup_settings { template using lookup_u16_4_relation = GenericLookupRelation; template using lookup_u16_4 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_5.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_5.hpp index 07bac6f53..930117b7e 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_5.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_5.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_5_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_5_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_5, in.lookup_u16_5_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_5_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_5, in.lookup_u16_5_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_5_lookup_settings { template using lookup_u16_5_relation = GenericLookupRelation; template using lookup_u16_5 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_6.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_6.hpp index a3db62cea..ec75af309 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_6.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_6.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_6_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_6_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_6, in.lookup_u16_6_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_6_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_6, in.lookup_u16_6_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_6_lookup_settings { template using lookup_u16_6_relation = GenericLookupRelation; template using lookup_u16_6 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_7.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_7.hpp index 563060550..6aec3db35 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_7.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_7.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_7_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_7_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_7, in.lookup_u16_7_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_7_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_7, in.lookup_u16_7_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_7_lookup_settings { template using lookup_u16_7_relation = GenericLookupRelation; template using lookup_u16_7 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_8.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_8.hpp index f5191fcd3..46e991f15 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_8.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_8.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_8_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_8_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_8, in.lookup_u16_8_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_8_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_8, in.lookup_u16_8_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_8_lookup_settings { template using lookup_u16_8_relation = GenericLookupRelation; template using lookup_u16_8 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_9.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_9.hpp index d1337b15f..36a1ca274 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u16_9.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u16_9.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u16_9_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u16_9_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_9, in.lookup_u16_9_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u16_9_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u16_9, in.lookup_u16_9_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u16_9_lookup_settings { template using lookup_u16_9_relation = GenericLookupRelation; template using lookup_u16_9 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u8_0.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u8_0.hpp index c35487160..3f1626db1 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u8_0.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u8_0.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u8_0_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_8 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u8_0_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u8_0, in.lookup_u8_0_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u8_0_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u8_0, in.lookup_u8_0_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u8_0_lookup_settings { template using lookup_u8_0_relation = GenericLookupRelation; template using lookup_u8_0 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/lookup_u8_1.hpp b/cpp/src/barretenberg/relations/generated/avm/lookup_u8_1.hpp index 41cf78b99..a7ce90bc8 100644 --- a/cpp/src/barretenberg/relations/generated/avm/lookup_u8_1.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/lookup_u8_1.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class lookup_u8_1_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.alu_sel_rng_chk_lookup == 1 || in.main_sel_rng_8 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class lookup_u8_1_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.lookup_u8_1, in.lookup_u8_1_counts, in.alu_sel_rng_chk_lookup, @@ -141,16 +56,8 @@ class lookup_u8_1_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.lookup_u8_1, in.lookup_u8_1_counts, in.alu_sel_rng_chk_lookup, @@ -163,4 +70,4 @@ class lookup_u8_1_lookup_settings { template using lookup_u8_1_relation = GenericLookupRelation; template using lookup_u8_1 = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/perm_main_alu.hpp b/cpp/src/barretenberg/relations/generated/avm/perm_main_alu.hpp index 1b1a70a81..3fd922604 100644 --- a/cpp/src/barretenberg/relations/generated/avm/perm_main_alu.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/perm_main_alu.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" @@ -14,38 +12,13 @@ class perm_main_alu_permutation_settings { // This constant defines how many columns are bundled together to form each set. constexpr static size_t COLUMNS_PER_SET = 16; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial at this index. Otherwise the - * value needs to be set to zero. - * - * @details If this is true then permutation takes place in this row - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_alu == 1 || in.alu_sel_alu == 1); } - /** - * @brief Get all the entities for the permutation when we don't need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.perm_main_alu, in.main_sel_alu, in.main_sel_alu, @@ -84,26 +57,8 @@ class perm_main_alu_permutation_settings { in.alu_in_tag); } - /** - * @brief Get all the entities for the permutation when need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.perm_main_alu, in.main_sel_alu, in.main_sel_alu, @@ -147,4 +102,4 @@ template using perm_main_alu_relation = GenericPermutationRelation; template using perm_main_alu = GenericPermutation; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/perm_main_bin.hpp b/cpp/src/barretenberg/relations/generated/avm/perm_main_bin.hpp index ebcd77a04..ed038c33a 100644 --- a/cpp/src/barretenberg/relations/generated/avm/perm_main_bin.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/perm_main_bin.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" @@ -14,38 +12,13 @@ class perm_main_bin_permutation_settings { // This constant defines how many columns are bundled together to form each set. constexpr static size_t COLUMNS_PER_SET = 6; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial at this index. Otherwise the - * value needs to be set to zero. - * - * @details If this is true then permutation takes place in this row - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_bin == 1 || in.binary_start == 1); } - /** - * @brief Get all the entities for the permutation when we don't need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.perm_main_bin, in.main_sel_bin, in.main_sel_bin, @@ -64,26 +37,8 @@ class perm_main_bin_permutation_settings { in.binary_in_tag); } - /** - * @brief Get all the entities for the permutation when need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.perm_main_bin, in.main_sel_bin, in.main_sel_bin, @@ -107,4 +62,4 @@ template using perm_main_bin_relation = GenericPermutationRelation; template using perm_main_bin = GenericPermutation; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/perm_main_conv.hpp b/cpp/src/barretenberg/relations/generated/avm/perm_main_conv.hpp index 3890911bd..061fb8c39 100644 --- a/cpp/src/barretenberg/relations/generated/avm/perm_main_conv.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/perm_main_conv.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" @@ -14,38 +12,13 @@ class perm_main_conv_permutation_settings { // This constant defines how many columns are bundled together to form each set. constexpr static size_t COLUMNS_PER_SET = 4; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial at this index. Otherwise the - * value needs to be set to zero. - * - * @details If this is true then permutation takes place in this row - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_op_radix_le == 1 || in.conversion_sel_to_radix_le == 1); } - /** - * @brief Get all the entities for the permutation when we don't need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.perm_main_conv, in.main_sel_op_radix_le, in.main_sel_op_radix_le, @@ -60,26 +33,8 @@ class perm_main_conv_permutation_settings { in.conversion_num_limbs); } - /** - * @brief Get all the entities for the permutation when need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.perm_main_conv, in.main_sel_op_radix_le, in.main_sel_op_radix_le, @@ -99,4 +54,4 @@ template using perm_main_conv_relation = GenericPermutationRelation; template using perm_main_conv = GenericPermutation; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_a.hpp b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_a.hpp index 867dd008f..fe1c96709 100644 --- a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_a.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_a.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" @@ -14,38 +12,13 @@ class perm_main_mem_a_permutation_settings { // This constant defines how many columns are bundled together to form each set. constexpr static size_t COLUMNS_PER_SET = 9; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial at this index. Otherwise the - * value needs to be set to zero. - * - * @details If this is true then permutation takes place in this row - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_mem_op_a == 1 || in.mem_sel_op_a == 1); } - /** - * @brief Get all the entities for the permutation when we don't need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_a, in.main_sel_mem_op_a, in.main_sel_mem_op_a, @@ -70,26 +43,8 @@ class perm_main_mem_a_permutation_settings { in.mem_sel_op_cmov); } - /** - * @brief Get all the entities for the permutation when need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_a, in.main_sel_mem_op_a, in.main_sel_mem_op_a, @@ -119,4 +74,4 @@ template using perm_main_mem_a_relation = GenericPermutationRelation; template using perm_main_mem_a = GenericPermutation; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_b.hpp b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_b.hpp index c724cbebb..8899945f4 100644 --- a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_b.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_b.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" @@ -14,38 +12,13 @@ class perm_main_mem_b_permutation_settings { // This constant defines how many columns are bundled together to form each set. constexpr static size_t COLUMNS_PER_SET = 9; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial at this index. Otherwise the - * value needs to be set to zero. - * - * @details If this is true then permutation takes place in this row - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_mem_op_b == 1 || in.mem_sel_op_b == 1); } - /** - * @brief Get all the entities for the permutation when we don't need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_b, in.main_sel_mem_op_b, in.main_sel_mem_op_b, @@ -70,26 +43,8 @@ class perm_main_mem_b_permutation_settings { in.mem_sel_op_cmov); } - /** - * @brief Get all the entities for the permutation when need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_b, in.main_sel_mem_op_b, in.main_sel_mem_op_b, @@ -119,4 +74,4 @@ template using perm_main_mem_b_relation = GenericPermutationRelation; template using perm_main_mem_b = GenericPermutation; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_c.hpp b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_c.hpp index 532d2fbdd..69b3ca8ea 100644 --- a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_c.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_c.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" @@ -14,38 +12,13 @@ class perm_main_mem_c_permutation_settings { // This constant defines how many columns are bundled together to form each set. constexpr static size_t COLUMNS_PER_SET = 7; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial at this index. Otherwise the - * value needs to be set to zero. - * - * @details If this is true then permutation takes place in this row - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_mem_op_c == 1 || in.mem_sel_op_c == 1); } - /** - * @brief Get all the entities for the permutation when we don't need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_c, in.main_sel_mem_op_c, in.main_sel_mem_op_c, @@ -66,26 +39,8 @@ class perm_main_mem_c_permutation_settings { in.mem_w_in_tag); } - /** - * @brief Get all the entities for the permutation when need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_c, in.main_sel_mem_op_c, in.main_sel_mem_op_c, @@ -111,4 +66,4 @@ template using perm_main_mem_c_relation = GenericPermutationRelation; template using perm_main_mem_c = GenericPermutation; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_d.hpp b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_d.hpp index 3112f97cd..081ae644b 100644 --- a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_d.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_d.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" @@ -14,38 +12,13 @@ class perm_main_mem_d_permutation_settings { // This constant defines how many columns are bundled together to form each set. constexpr static size_t COLUMNS_PER_SET = 8; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial at this index. Otherwise the - * value needs to be set to zero. - * - * @details If this is true then permutation takes place in this row - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_mem_op_d == 1 || in.mem_sel_op_d == 1); } - /** - * @brief Get all the entities for the permutation when we don't need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_d, in.main_sel_mem_op_d, in.main_sel_mem_op_d, @@ -68,26 +41,8 @@ class perm_main_mem_d_permutation_settings { in.mem_sel_op_cmov); } - /** - * @brief Get all the entities for the permutation when need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_d, in.main_sel_mem_op_d, in.main_sel_mem_op_d, @@ -115,4 +70,4 @@ template using perm_main_mem_d_relation = GenericPermutationRelation; template using perm_main_mem_d = GenericPermutation; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_a.hpp b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_a.hpp index 3d0de9cf3..5f8b6ae97 100644 --- a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_a.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_a.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" @@ -14,38 +12,13 @@ class perm_main_mem_ind_addr_a_permutation_settings { // This constant defines how many columns are bundled together to form each set. constexpr static size_t COLUMNS_PER_SET = 4; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial at this index. Otherwise the - * value needs to be set to zero. - * - * @details If this is true then permutation takes place in this row - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_resolve_ind_addr_a == 1 || in.mem_sel_resolve_ind_addr_a == 1); } - /** - * @brief Get all the entities for the permutation when we don't need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_ind_addr_a, in.main_sel_resolve_ind_addr_a, in.main_sel_resolve_ind_addr_a, @@ -60,26 +33,8 @@ class perm_main_mem_ind_addr_a_permutation_settings { in.mem_val); } - /** - * @brief Get all the entities for the permutation when need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_ind_addr_a, in.main_sel_resolve_ind_addr_a, in.main_sel_resolve_ind_addr_a, @@ -101,4 +56,4 @@ using perm_main_mem_ind_addr_a_relation = template using perm_main_mem_ind_addr_a = GenericPermutation; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_b.hpp b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_b.hpp index eec199f39..c79bc802a 100644 --- a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_b.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_b.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" @@ -14,38 +12,13 @@ class perm_main_mem_ind_addr_b_permutation_settings { // This constant defines how many columns are bundled together to form each set. constexpr static size_t COLUMNS_PER_SET = 4; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial at this index. Otherwise the - * value needs to be set to zero. - * - * @details If this is true then permutation takes place in this row - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_resolve_ind_addr_b == 1 || in.mem_sel_resolve_ind_addr_b == 1); } - /** - * @brief Get all the entities for the permutation when we don't need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_ind_addr_b, in.main_sel_resolve_ind_addr_b, in.main_sel_resolve_ind_addr_b, @@ -60,26 +33,8 @@ class perm_main_mem_ind_addr_b_permutation_settings { in.mem_val); } - /** - * @brief Get all the entities for the permutation when need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_ind_addr_b, in.main_sel_resolve_ind_addr_b, in.main_sel_resolve_ind_addr_b, @@ -101,4 +56,4 @@ using perm_main_mem_ind_addr_b_relation = template using perm_main_mem_ind_addr_b = GenericPermutation; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_c.hpp b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_c.hpp index 7367fc905..3be1b96d4 100644 --- a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_c.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_c.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" @@ -14,38 +12,13 @@ class perm_main_mem_ind_addr_c_permutation_settings { // This constant defines how many columns are bundled together to form each set. constexpr static size_t COLUMNS_PER_SET = 4; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial at this index. Otherwise the - * value needs to be set to zero. - * - * @details If this is true then permutation takes place in this row - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_resolve_ind_addr_c == 1 || in.mem_sel_resolve_ind_addr_c == 1); } - /** - * @brief Get all the entities for the permutation when we don't need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_ind_addr_c, in.main_sel_resolve_ind_addr_c, in.main_sel_resolve_ind_addr_c, @@ -60,26 +33,8 @@ class perm_main_mem_ind_addr_c_permutation_settings { in.mem_val); } - /** - * @brief Get all the entities for the permutation when need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_ind_addr_c, in.main_sel_resolve_ind_addr_c, in.main_sel_resolve_ind_addr_c, @@ -101,4 +56,4 @@ using perm_main_mem_ind_addr_c_relation = template using perm_main_mem_ind_addr_c = GenericPermutation; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_d.hpp b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_d.hpp index 6515b55c4..310c85078 100644 --- a/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_d.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_d.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" @@ -14,38 +12,13 @@ class perm_main_mem_ind_addr_d_permutation_settings { // This constant defines how many columns are bundled together to form each set. constexpr static size_t COLUMNS_PER_SET = 4; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial at this index. Otherwise the - * value needs to be set to zero. - * - * @details If this is true then permutation takes place in this row - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_resolve_ind_addr_d == 1 || in.mem_sel_resolve_ind_addr_d == 1); } - /** - * @brief Get all the entities for the permutation when we don't need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_ind_addr_d, in.main_sel_resolve_ind_addr_d, in.main_sel_resolve_ind_addr_d, @@ -60,26 +33,8 @@ class perm_main_mem_ind_addr_d_permutation_settings { in.mem_val); } - /** - * @brief Get all the entities for the permutation when need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.perm_main_mem_ind_addr_d, in.main_sel_resolve_ind_addr_d, in.main_sel_resolve_ind_addr_d, @@ -101,4 +56,4 @@ using perm_main_mem_ind_addr_d_relation = template using perm_main_mem_ind_addr_d = GenericPermutation; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/perm_main_pedersen.hpp b/cpp/src/barretenberg/relations/generated/avm/perm_main_pedersen.hpp index f59fdd920..0b94b48c5 100644 --- a/cpp/src/barretenberg/relations/generated/avm/perm_main_pedersen.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/perm_main_pedersen.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" @@ -14,38 +12,13 @@ class perm_main_pedersen_permutation_settings { // This constant defines how many columns are bundled together to form each set. constexpr static size_t COLUMNS_PER_SET = 2; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial at this index. Otherwise the - * value needs to be set to zero. - * - * @details If this is true then permutation takes place in this row - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_op_pedersen == 1 || in.pedersen_sel_pedersen == 1); } - /** - * @brief Get all the entities for the permutation when we don't need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.perm_main_pedersen, in.main_sel_op_pedersen, in.main_sel_op_pedersen, @@ -56,26 +29,8 @@ class perm_main_pedersen_permutation_settings { in.pedersen_input); } - /** - * @brief Get all the entities for the permutation when need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.perm_main_pedersen, in.main_sel_op_pedersen, in.main_sel_op_pedersen, @@ -91,4 +46,4 @@ template using perm_main_pedersen_relation = GenericPermutationRelation; template using perm_main_pedersen = GenericPermutation; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/perm_main_pos2_perm.hpp b/cpp/src/barretenberg/relations/generated/avm/perm_main_pos2_perm.hpp index dab9abe74..2a4f91d68 100644 --- a/cpp/src/barretenberg/relations/generated/avm/perm_main_pos2_perm.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/perm_main_pos2_perm.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" @@ -14,38 +12,13 @@ class perm_main_pos2_perm_permutation_settings { // This constant defines how many columns are bundled together to form each set. constexpr static size_t COLUMNS_PER_SET = 3; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial at this index. Otherwise the - * value needs to be set to zero. - * - * @details If this is true then permutation takes place in this row - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_op_poseidon2 == 1 || in.poseidon2_sel_poseidon_perm == 1); } - /** - * @brief Get all the entities for the permutation when we don't need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.perm_main_pos2_perm, in.main_sel_op_poseidon2, in.main_sel_op_poseidon2, @@ -58,26 +31,8 @@ class perm_main_pos2_perm_permutation_settings { in.poseidon2_output); } - /** - * @brief Get all the entities for the permutation when need to update them - * - * @details The entities are returned as a tuple of references in the following order: - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that switches on the subrelation of the permutation relation that ensures correctness of - * the inverse polynomial - * - The entity/polynomial that enables adding a tuple-generated value from the first set to the logderivative sum - * subrelation - * - The entity/polynomial that enables adding a tuple-generated value from the second set to the logderivative sum - * subrelation - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the first set (N.B. ORDER IS IMPORTANT!) - * - A sequence of COLUMNS_PER_SET entities/polynomials that represent the second set (N.B. ORDER IS IMPORTANT!) - * - * @return All the entities needed for the permutation - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.perm_main_pos2_perm, in.main_sel_op_poseidon2, in.main_sel_op_poseidon2, @@ -95,4 +50,4 @@ template using perm_main_pos2_perm_relation = GenericPermutationRelation; template using perm_main_pos2_perm = GenericPermutation; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_hi.hpp b/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_hi.hpp index b3c732c4e..c0ec53d58 100644 --- a/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_hi.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_hi.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class range_check_da_gas_hi_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_gas_accounting_active == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class range_check_da_gas_hi_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.range_check_da_gas_hi, in.range_check_da_gas_hi_counts, in.main_sel_gas_accounting_active, @@ -141,16 +56,8 @@ class range_check_da_gas_hi_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.range_check_da_gas_hi, in.range_check_da_gas_hi_counts, in.main_sel_gas_accounting_active, @@ -164,4 +71,4 @@ template using range_check_da_gas_hi_relation = GenericLookupRelation; template using range_check_da_gas_hi = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_lo.hpp b/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_lo.hpp index 0167a2e4e..2847c5751 100644 --- a/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_lo.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_lo.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class range_check_da_gas_lo_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_gas_accounting_active == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class range_check_da_gas_lo_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.range_check_da_gas_lo, in.range_check_da_gas_lo_counts, in.main_sel_gas_accounting_active, @@ -141,16 +56,8 @@ class range_check_da_gas_lo_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.range_check_da_gas_lo, in.range_check_da_gas_lo_counts, in.main_sel_gas_accounting_active, @@ -164,4 +71,4 @@ template using range_check_da_gas_lo_relation = GenericLookupRelation; template using range_check_da_gas_lo = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_hi.hpp b/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_hi.hpp index 81a3f1e0b..5e0bda1a6 100644 --- a/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_hi.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_hi.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class range_check_l2_gas_hi_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_gas_accounting_active == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class range_check_l2_gas_hi_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.range_check_l2_gas_hi, in.range_check_l2_gas_hi_counts, in.main_sel_gas_accounting_active, @@ -141,16 +56,8 @@ class range_check_l2_gas_hi_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.range_check_l2_gas_hi, in.range_check_l2_gas_hi_counts, in.main_sel_gas_accounting_active, @@ -164,4 +71,4 @@ template using range_check_l2_gas_hi_relation = GenericLookupRelation; template using range_check_l2_gas_hi = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file diff --git a/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_lo.hpp b/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_lo.hpp index ca2165657..f32e89580 100644 --- a/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_lo.hpp +++ b/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_lo.hpp @@ -1,5 +1,3 @@ - - #pragma once #include "barretenberg/relations/generic_lookup/generic_lookup_relation.hpp" @@ -25,81 +23,20 @@ namespace bb { */ class range_check_l2_gas_lo_lookup_settings { public: - /** - * @brief The number of read terms (how many lookups we perform) in each row - * - */ static constexpr size_t READ_TERMS = 1; - /** - * @brief The number of write terms (how many additions to the lookup table we make) in each row - * - */ static constexpr size_t WRITE_TERMS = 1; - - /** - * @brief The type of READ_TERM used for each read index (basic and scaled) - * - */ static constexpr size_t READ_TERM_TYPES[READ_TERMS] = { 0 }; - - /** - * @brief They type of WRITE_TERM used for each write index - * - */ static constexpr size_t WRITE_TERM_TYPES[WRITE_TERMS] = { 0 }; - - /** - * @brief How many values represent a single lookup object. This value is used by the automatic read term - * implementation in the relation in case the lookup is a basic or scaled tuple and in the write term if it's a - * basic tuple - * - */ static constexpr size_t LOOKUP_TUPLE_SIZE = 1; - - /** - * @brief The polynomial degree of the relation telling us if the inverse polynomial value needs to be computed - * - */ static constexpr size_t INVERSE_EXISTS_POLYNOMIAL_DEGREE = 4; - - /** - * @brief The degree of the read term if implemented arbitrarily. This value is not used by basic and scaled read - * terms, but will cause compilation error if not defined - * - */ static constexpr size_t READ_TERM_DEGREE = 0; - - /** - * @brief The degree of the write term if implemented arbitrarily. This value is not used by the basic write - * term, but will cause compilation error if not defined - * - */ - static constexpr size_t WRITE_TERM_DEGREE = 0; - /** - * @brief If this method returns true on a row of values, then the inverse polynomial exists at this index. - * Otherwise the value needs to be set to zero. - * - * @details If this is true then the lookup takes place in this row - * - */ - template static inline auto inverse_polynomial_is_computed_at_row(const AllEntities& in) { return (in.main_sel_gas_accounting_active == 1 || in.main_sel_rng_16 == 1); } - /** - * @brief Subprocedure for computing the value deciding if the inverse polynomial value needs to be checked in this - * row - * - * @tparam Accumulator Type specified by the lookup relation - * @tparam AllEntities Values/Univariates of all entities row - * @param in Value/Univariate of all entities at row/edge - * @return Accumulator - */ - template static inline auto compute_inverse_exists(const AllEntities& in) { @@ -109,30 +46,8 @@ class range_check_l2_gas_lo_lookup_settings { return (is_operation + is_table_entry - is_operation * is_table_entry); } - /** - * @brief Get all the entities for the lookup when need to update them - * - * @details The generic structure of this tuple is described in ./generic_lookup_relation.hpp . The following is - description for the current case: - The entities are returned as a tuple of references in the following order (this is for ): - * - The entity/polynomial used to store the product of the inverse values - * - The entity/polynomial that specifies how many times the lookup table entry at this row has been looked up - * - READ_TERMS entities/polynomials that enable individual lookup operations - * - The entity/polynomial that enables adding an entry to the lookup table in this row - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the basic tuple being looked up as the first read term - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the previous accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the shifts in the second read term (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing the current accumulators in the second read term - (scaled tuple) - * - LOOKUP_TUPLE_SIZE entities/polynomials representing basic tuples added to the table - * - * @return All the entities needed for the lookup - */ - template static inline auto get_const_entities(const AllEntities& in) { - return std::forward_as_tuple(in.range_check_l2_gas_lo, in.range_check_l2_gas_lo_counts, in.main_sel_gas_accounting_active, @@ -141,16 +56,8 @@ class range_check_l2_gas_lo_lookup_settings { in.main_clk); } - /** - * @brief Get all the entities for the lookup when we only need to read them - * @details Same as in get_const_entities, but nonconst - * - * @return All the entities needed for the lookup - */ - template static inline auto get_nonconst_entities(AllEntities& in) { - return std::forward_as_tuple(in.range_check_l2_gas_lo, in.range_check_l2_gas_lo_counts, in.main_sel_gas_accounting_active, @@ -164,4 +71,4 @@ template using range_check_l2_gas_lo_relation = GenericLookupRelation; template using range_check_l2_gas_lo = GenericLookup; -} // namespace bb +} // namespace bb \ No newline at end of file