diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/incl_main_tag_err.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/incl_main_tag_err.hpp index 6504fe11f26..6cfb74059d9 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/incl_main_tag_err.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/incl_main_tag_err.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class incl_main_tag_err_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -68,7 +54,10 @@ class incl_main_tag_err_lookup_settings { }; template -using incl_main_tag_err_relation = GenericLookupRelation; +class incl_main_tag_err_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "incl_main_tag_err"; +}; template using incl_main_tag_err = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/incl_mem_tag_err.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/incl_mem_tag_err.hpp index b790c7ec113..a3c55ff966b 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/incl_mem_tag_err.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/incl_mem_tag_err.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class incl_mem_tag_err_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -59,7 +45,11 @@ class incl_mem_tag_err_lookup_settings { } }; -template using incl_mem_tag_err_relation = GenericLookupRelation; +template +class incl_mem_tag_err_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "incl_mem_tag_err"; +}; template using incl_mem_tag_err = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/kernel_output_lookup.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/kernel_output_lookup.hpp index 5d41006a5c4..d432d46bc2c 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/kernel_output_lookup.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/kernel_output_lookup.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class kernel_output_lookup_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -80,7 +66,10 @@ class kernel_output_lookup_lookup_settings { }; template -using kernel_output_lookup_relation = GenericLookupRelation; +class kernel_output_lookup_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "kernel_output_lookup"; +}; template using kernel_output_lookup = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_byte_lengths.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_byte_lengths.hpp index 7dbde65e4e8..093c0f5b6ea 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_byte_lengths.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_byte_lengths.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_byte_lengths_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -72,7 +58,10 @@ class lookup_byte_lengths_lookup_settings { }; template -using lookup_byte_lengths_relation = GenericLookupRelation; +class lookup_byte_lengths_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_byte_lengths"; +}; template using lookup_byte_lengths = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_byte_operations.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_byte_operations.hpp index 7e3b35390f2..0961460086e 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_byte_operations.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_byte_operations.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_byte_operations_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -80,7 +66,10 @@ class lookup_byte_operations_lookup_settings { }; template -using lookup_byte_operations_relation = GenericLookupRelation; +class lookup_byte_operations_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_byte_operations"; +}; template using lookup_byte_operations = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_0.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_0.hpp index 722ae7e4486..99c91af7b93 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_0.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_0.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_div_u16_0_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,11 @@ class lookup_div_u16_0_lookup_settings { } }; -template using lookup_div_u16_0_relation = GenericLookupRelation; +template +class lookup_div_u16_0_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_div_u16_0"; +}; template using lookup_div_u16_0 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_1.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_1.hpp index 8e47192dbe9..d95c608d0b9 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_1.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_1.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_div_u16_1_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,11 @@ class lookup_div_u16_1_lookup_settings { } }; -template using lookup_div_u16_1_relation = GenericLookupRelation; +template +class lookup_div_u16_1_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_div_u16_1"; +}; template using lookup_div_u16_1 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_2.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_2.hpp index cf15ed785e0..b1b9036f498 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_2.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_2.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_div_u16_2_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,11 @@ class lookup_div_u16_2_lookup_settings { } }; -template using lookup_div_u16_2_relation = GenericLookupRelation; +template +class lookup_div_u16_2_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_div_u16_2"; +}; template using lookup_div_u16_2 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_3.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_3.hpp index cbd1af82710..56680df40c0 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_3.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_3.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_div_u16_3_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,11 @@ class lookup_div_u16_3_lookup_settings { } }; -template using lookup_div_u16_3_relation = GenericLookupRelation; +template +class lookup_div_u16_3_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_div_u16_3"; +}; template using lookup_div_u16_3 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_4.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_4.hpp index 7df49f05139..5c02f3c52ca 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_4.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_4.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_div_u16_4_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,11 @@ class lookup_div_u16_4_lookup_settings { } }; -template using lookup_div_u16_4_relation = GenericLookupRelation; +template +class lookup_div_u16_4_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_div_u16_4"; +}; template using lookup_div_u16_4 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_5.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_5.hpp index a58751eb66f..b8923c750e5 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_5.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_5.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_div_u16_5_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,11 @@ class lookup_div_u16_5_lookup_settings { } }; -template using lookup_div_u16_5_relation = GenericLookupRelation; +template +class lookup_div_u16_5_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_div_u16_5"; +}; template using lookup_div_u16_5 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_6.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_6.hpp index 51e4c73a501..a6486bb05ac 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_6.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_6.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_div_u16_6_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,11 @@ class lookup_div_u16_6_lookup_settings { } }; -template using lookup_div_u16_6_relation = GenericLookupRelation; +template +class lookup_div_u16_6_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_div_u16_6"; +}; template using lookup_div_u16_6 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_7.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_7.hpp index 657221da61e..c52978bade9 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_7.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_div_u16_7.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_div_u16_7_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,11 @@ class lookup_div_u16_7_lookup_settings { } }; -template using lookup_div_u16_7_relation = GenericLookupRelation; +template +class lookup_div_u16_7_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_div_u16_7"; +}; template using lookup_div_u16_7 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_into_kernel.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_into_kernel.hpp index dbd8cc05603..4fe44d760c5 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_into_kernel.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_into_kernel.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_into_kernel_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -72,7 +58,10 @@ class lookup_into_kernel_lookup_settings { }; template -using lookup_into_kernel_relation = GenericLookupRelation; +class lookup_into_kernel_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_into_kernel"; +}; template using lookup_into_kernel = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_hi.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_hi.hpp index 933d2272d27..b0db8e3f3a8 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_hi.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_hi.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_mem_rng_chk_hi_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -68,7 +54,10 @@ class lookup_mem_rng_chk_hi_lookup_settings { }; template -using lookup_mem_rng_chk_hi_relation = GenericLookupRelation; +class lookup_mem_rng_chk_hi_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_mem_rng_chk_hi"; +}; template using lookup_mem_rng_chk_hi = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_lo.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_lo.hpp index e61714cabb2..7a0dca83ce3 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_lo.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_lo.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_mem_rng_chk_lo_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -68,7 +54,10 @@ class lookup_mem_rng_chk_lo_lookup_settings { }; template -using lookup_mem_rng_chk_lo_relation = GenericLookupRelation; +class lookup_mem_rng_chk_lo_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_mem_rng_chk_lo"; +}; template using lookup_mem_rng_chk_lo = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_mid.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_mid.hpp index 6e0ce0b9803..e44547863c6 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_mid.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_mem_rng_chk_mid.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_mem_rng_chk_mid_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -68,7 +54,10 @@ class lookup_mem_rng_chk_mid_lookup_settings { }; template -using lookup_mem_rng_chk_mid_relation = GenericLookupRelation; +class lookup_mem_rng_chk_mid_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_mem_rng_chk_mid"; +}; template using lookup_mem_rng_chk_mid = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_opcode_gas.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_opcode_gas.hpp index 64d11a5bdc3..a62f68e5b4f 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_opcode_gas.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_opcode_gas.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_opcode_gas_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -76,7 +62,10 @@ class lookup_opcode_gas_lookup_settings { }; template -using lookup_opcode_gas_relation = GenericLookupRelation; +class lookup_opcode_gas_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_opcode_gas"; +}; template using lookup_opcode_gas = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_0.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_0.hpp index 1f1c342cd81..e9e73ca0b9d 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_0.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_0.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_pow_2_0_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -71,7 +57,11 @@ class lookup_pow_2_0_lookup_settings { } }; -template using lookup_pow_2_0_relation = GenericLookupRelation; +template +class lookup_pow_2_0_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_pow_2_0"; +}; template using lookup_pow_2_0 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_1.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_1.hpp index b8949612dd7..55a5eec29b7 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_1.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_pow_2_1.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_pow_2_1_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -71,7 +57,11 @@ class lookup_pow_2_1_lookup_settings { } }; -template using lookup_pow_2_1_relation = GenericLookupRelation; +template +class lookup_pow_2_1_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_pow_2_1"; +}; template using lookup_pow_2_1 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_0.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_0.hpp index c8486d70f07..70a2e3ac66e 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_0.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_0.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_0_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,10 @@ class lookup_u16_0_lookup_settings { } }; -template using lookup_u16_0_relation = GenericLookupRelation; +template class lookup_u16_0_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_0"; +}; template using lookup_u16_0 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_1.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_1.hpp index a7195014b59..e391e04bc72 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_1.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_1.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_1_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,10 @@ class lookup_u16_1_lookup_settings { } }; -template using lookup_u16_1_relation = GenericLookupRelation; +template class lookup_u16_1_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_1"; +}; template using lookup_u16_1 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_10.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_10.hpp index 5d9340e18ad..1b30139552c 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_10.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_10.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_10_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,11 @@ class lookup_u16_10_lookup_settings { } }; -template using lookup_u16_10_relation = GenericLookupRelation; +template +class lookup_u16_10_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_10"; +}; template using lookup_u16_10 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_11.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_11.hpp index cf7473b5cfa..860588384db 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_11.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_11.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_11_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,11 @@ class lookup_u16_11_lookup_settings { } }; -template using lookup_u16_11_relation = GenericLookupRelation; +template +class lookup_u16_11_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_11"; +}; template using lookup_u16_11 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_12.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_12.hpp index e0edca8a9ab..0acfe46bc14 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_12.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_12.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_12_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,11 @@ class lookup_u16_12_lookup_settings { } }; -template using lookup_u16_12_relation = GenericLookupRelation; +template +class lookup_u16_12_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_12"; +}; template using lookup_u16_12 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_13.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_13.hpp index 8255f13cf85..87eaa2d6bb1 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_13.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_13.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_13_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,11 @@ class lookup_u16_13_lookup_settings { } }; -template using lookup_u16_13_relation = GenericLookupRelation; +template +class lookup_u16_13_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_13"; +}; template using lookup_u16_13 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_14.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_14.hpp index a4857ab021e..ea9a74cc8d1 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_14.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_14.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_14_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,11 @@ class lookup_u16_14_lookup_settings { } }; -template using lookup_u16_14_relation = GenericLookupRelation; +template +class lookup_u16_14_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_14"; +}; template using lookup_u16_14 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_2.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_2.hpp index aea3c986c9f..35a34762d1b 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_2.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_2.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_2_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,10 @@ class lookup_u16_2_lookup_settings { } }; -template using lookup_u16_2_relation = GenericLookupRelation; +template class lookup_u16_2_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_2"; +}; template using lookup_u16_2 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_3.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_3.hpp index 828351e0b5e..50284c84860 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_3.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_3.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_3_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,10 @@ class lookup_u16_3_lookup_settings { } }; -template using lookup_u16_3_relation = GenericLookupRelation; +template class lookup_u16_3_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_3"; +}; template using lookup_u16_3 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_4.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_4.hpp index 157c0225baa..b5cd10a6670 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_4.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_4.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_4_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,10 @@ class lookup_u16_4_lookup_settings { } }; -template using lookup_u16_4_relation = GenericLookupRelation; +template class lookup_u16_4_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_4"; +}; template using lookup_u16_4 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_5.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_5.hpp index 930117b7e8b..1f313268b6e 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_5.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_5.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_5_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,10 @@ class lookup_u16_5_lookup_settings { } }; -template using lookup_u16_5_relation = GenericLookupRelation; +template class lookup_u16_5_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_5"; +}; template using lookup_u16_5 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_6.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_6.hpp index ec75af30931..c4aef86a50c 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_6.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_6.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_6_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,10 @@ class lookup_u16_6_lookup_settings { } }; -template using lookup_u16_6_relation = GenericLookupRelation; +template class lookup_u16_6_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_6"; +}; template using lookup_u16_6 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_7.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_7.hpp index 6aec3db35c2..b1496c4403a 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_7.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_7.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_7_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,10 @@ class lookup_u16_7_lookup_settings { } }; -template using lookup_u16_7_relation = GenericLookupRelation; +template class lookup_u16_7_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_7"; +}; template using lookup_u16_7 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_8.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_8.hpp index 46e991f15ee..e2080cc7190 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_8.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_8.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_8_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,10 @@ class lookup_u16_8_lookup_settings { } }; -template using lookup_u16_8_relation = GenericLookupRelation; +template class lookup_u16_8_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_8"; +}; template using lookup_u16_8 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_9.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_9.hpp index 36a1ca2745b..40b258e5942 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_9.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u16_9.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u16_9_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,10 @@ class lookup_u16_9_lookup_settings { } }; -template using lookup_u16_9_relation = GenericLookupRelation; +template class lookup_u16_9_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u16_9"; +}; template using lookup_u16_9 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u8_0.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u8_0.hpp index 3f1626db1bd..568ecd3731d 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u8_0.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u8_0.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u8_0_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,10 @@ class lookup_u8_0_lookup_settings { } }; -template using lookup_u8_0_relation = GenericLookupRelation; +template class lookup_u8_0_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u8_0"; +}; template using lookup_u8_0 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u8_1.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u8_1.hpp index a7ce90bc8bf..3b78d561e68 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u8_1.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/lookup_u8_1.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class lookup_u8_1_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -67,7 +53,10 @@ class lookup_u8_1_lookup_settings { } }; -template using lookup_u8_1_relation = GenericLookupRelation; +template class lookup_u8_1_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "lookup_u8_1"; +}; template using lookup_u8_1 = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_alu.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_alu.hpp index 3fd9226043b..c96e000c2da 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_alu.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_alu.hpp @@ -99,7 +99,10 @@ class perm_main_alu_permutation_settings { }; template -using perm_main_alu_relation = GenericPermutationRelation; +class perm_main_alu_relation : public GenericPermutationRelation { + public: + static constexpr const char* NAME = "perm_main_alu"; +}; template using perm_main_alu = GenericPermutation; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_bin.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_bin.hpp index ed038c33a50..42c820a4b84 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_bin.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_bin.hpp @@ -59,7 +59,10 @@ class perm_main_bin_permutation_settings { }; template -using perm_main_bin_relation = GenericPermutationRelation; +class perm_main_bin_relation : public GenericPermutationRelation { + public: + static constexpr const char* NAME = "perm_main_bin"; +}; template using perm_main_bin = GenericPermutation; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_conv.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_conv.hpp index 061fb8c398a..20b6d13e322 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_conv.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_conv.hpp @@ -51,7 +51,10 @@ class perm_main_conv_permutation_settings { }; template -using perm_main_conv_relation = GenericPermutationRelation; +class perm_main_conv_relation : public GenericPermutationRelation { + public: + static constexpr const char* NAME = "perm_main_conv"; +}; template using perm_main_conv = GenericPermutation; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_a.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_a.hpp index fe1c96709ff..2efb6d21b31 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_a.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_a.hpp @@ -71,7 +71,10 @@ class perm_main_mem_a_permutation_settings { }; template -using perm_main_mem_a_relation = GenericPermutationRelation; +class perm_main_mem_a_relation : public GenericPermutationRelation { + public: + static constexpr const char* NAME = "perm_main_mem_a"; +}; template using perm_main_mem_a = GenericPermutation; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_b.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_b.hpp index 8899945f4fe..0f7a88a66f1 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_b.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_b.hpp @@ -71,7 +71,10 @@ class perm_main_mem_b_permutation_settings { }; template -using perm_main_mem_b_relation = GenericPermutationRelation; +class perm_main_mem_b_relation : public GenericPermutationRelation { + public: + static constexpr const char* NAME = "perm_main_mem_b"; +}; template using perm_main_mem_b = GenericPermutation; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_c.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_c.hpp index 69b3ca8ea89..f1888c7ce18 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_c.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_c.hpp @@ -63,7 +63,10 @@ class perm_main_mem_c_permutation_settings { }; template -using perm_main_mem_c_relation = GenericPermutationRelation; +class perm_main_mem_c_relation : public GenericPermutationRelation { + public: + static constexpr const char* NAME = "perm_main_mem_c"; +}; template using perm_main_mem_c = GenericPermutation; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_d.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_d.hpp index 081ae644bfb..2cb433eed79 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_d.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_d.hpp @@ -67,7 +67,10 @@ class perm_main_mem_d_permutation_settings { }; template -using perm_main_mem_d_relation = GenericPermutationRelation; +class perm_main_mem_d_relation : public GenericPermutationRelation { + public: + static constexpr const char* NAME = "perm_main_mem_d"; +}; template using perm_main_mem_d = GenericPermutation; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_a.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_a.hpp index 5f8b6ae9705..5d6267e60a9 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_a.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_a.hpp @@ -51,8 +51,11 @@ class perm_main_mem_ind_addr_a_permutation_settings { }; template -using perm_main_mem_ind_addr_a_relation = - GenericPermutationRelation; +class perm_main_mem_ind_addr_a_relation + : public GenericPermutationRelation { + public: + static constexpr const char* NAME = "perm_main_mem_ind_addr_a"; +}; template using perm_main_mem_ind_addr_a = GenericPermutation; diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_b.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_b.hpp index c79bc802aa5..708696d3343 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_b.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_b.hpp @@ -51,8 +51,11 @@ class perm_main_mem_ind_addr_b_permutation_settings { }; template -using perm_main_mem_ind_addr_b_relation = - GenericPermutationRelation; +class perm_main_mem_ind_addr_b_relation + : public GenericPermutationRelation { + public: + static constexpr const char* NAME = "perm_main_mem_ind_addr_b"; +}; template using perm_main_mem_ind_addr_b = GenericPermutation; diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_c.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_c.hpp index 3be1b96d43a..011cee0cdba 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_c.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_c.hpp @@ -51,8 +51,11 @@ class perm_main_mem_ind_addr_c_permutation_settings { }; template -using perm_main_mem_ind_addr_c_relation = - GenericPermutationRelation; +class perm_main_mem_ind_addr_c_relation + : public GenericPermutationRelation { + public: + static constexpr const char* NAME = "perm_main_mem_ind_addr_c"; +}; template using perm_main_mem_ind_addr_c = GenericPermutation; diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_d.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_d.hpp index 310c85078ec..0db50634041 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_d.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_mem_ind_addr_d.hpp @@ -51,8 +51,11 @@ class perm_main_mem_ind_addr_d_permutation_settings { }; template -using perm_main_mem_ind_addr_d_relation = - GenericPermutationRelation; +class perm_main_mem_ind_addr_d_relation + : public GenericPermutationRelation { + public: + static constexpr const char* NAME = "perm_main_mem_ind_addr_d"; +}; template using perm_main_mem_ind_addr_d = GenericPermutation; diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_pedersen.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_pedersen.hpp index 0b94b48c597..16e141e8481 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_pedersen.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_pedersen.hpp @@ -43,7 +43,10 @@ class perm_main_pedersen_permutation_settings { }; template -using perm_main_pedersen_relation = GenericPermutationRelation; +class perm_main_pedersen_relation : public GenericPermutationRelation { + public: + static constexpr const char* NAME = "perm_main_pedersen"; +}; template using perm_main_pedersen = GenericPermutation; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_pos2_perm.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_pos2_perm.hpp index 2a4f91d6811..e79de4c0020 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_pos2_perm.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/perm_main_pos2_perm.hpp @@ -47,7 +47,10 @@ class perm_main_pos2_perm_permutation_settings { }; template -using perm_main_pos2_perm_relation = GenericPermutationRelation; +class perm_main_pos2_perm_relation : public GenericPermutationRelation { + public: + static constexpr const char* NAME = "perm_main_pos2_perm"; +}; template using perm_main_pos2_perm = GenericPermutation; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_hi.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_hi.hpp index c0ec53d582e..47629f26071 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_hi.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_hi.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class range_check_da_gas_hi_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -68,7 +54,10 @@ class range_check_da_gas_hi_lookup_settings { }; template -using range_check_da_gas_hi_relation = GenericLookupRelation; +class range_check_da_gas_hi_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "range_check_da_gas_hi"; +}; template using range_check_da_gas_hi = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_lo.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_lo.hpp index 2847c57513a..f006e63ecb4 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_lo.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_da_gas_lo.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class range_check_da_gas_lo_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -68,7 +54,10 @@ class range_check_da_gas_lo_lookup_settings { }; template -using range_check_da_gas_lo_relation = GenericLookupRelation; +class range_check_da_gas_lo_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "range_check_da_gas_lo"; +}; template using range_check_da_gas_lo = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_hi.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_hi.hpp index 5e0bda1a605..b0009a37bee 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_hi.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_hi.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class range_check_l2_gas_hi_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -68,7 +54,10 @@ class range_check_l2_gas_hi_lookup_settings { }; template -using range_check_l2_gas_hi_relation = GenericLookupRelation; +class range_check_l2_gas_hi_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "range_check_l2_gas_hi"; +}; template using range_check_l2_gas_hi = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_lo.hpp b/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_lo.hpp index f32e8958047..e55a6539853 100644 --- a/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_lo.hpp +++ b/barretenberg/cpp/src/barretenberg/relations/generated/avm/range_check_l2_gas_lo.hpp @@ -7,20 +7,6 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ class range_check_l2_gas_lo_lookup_settings { public: static constexpr size_t READ_TERMS = 1; @@ -68,7 +54,10 @@ class range_check_l2_gas_lo_lookup_settings { }; template -using range_check_l2_gas_lo_relation = GenericLookupRelation; +class range_check_l2_gas_lo_relation : public GenericLookupRelation { + public: + static constexpr const char* NAME = "range_check_l2_gas_lo"; +}; template using range_check_l2_gas_lo = GenericLookup; } // namespace bb \ No newline at end of file diff --git a/barretenberg/cpp/src/barretenberg/vm/generated/avm_flavor.hpp b/barretenberg/cpp/src/barretenberg/vm/generated/avm_flavor.hpp index 249a45ec54d..fedb4c60bcd 100644 --- a/barretenberg/cpp/src/barretenberg/vm/generated/avm_flavor.hpp +++ b/barretenberg/cpp/src/barretenberg/vm/generated/avm_flavor.hpp @@ -12,8 +12,6 @@ #include "barretenberg/polynomials/polynomial.hpp" #include "barretenberg/transcript/transcript.hpp" -#include "barretenberg/vm/avm_trace/stats.hpp" - // Relations #include "barretenberg/relations/generated/avm/alu.hpp" #include "barretenberg/relations/generated/avm/binary.hpp" @@ -85,6 +83,9 @@ #include "barretenberg/relations/generated/avm/range_check_l2_gas_lo.hpp" #include "barretenberg/relations/generic_permutation/generic_permutation_relation.hpp" +// Metaprogramming to concatenate tuple types. +template using tuple_cat_t = decltype(std::tuple_cat(std::declval()...)); + namespace bb { class AvmFlavor { @@ -110,7 +111,7 @@ class AvmFlavor { // the unshifted and one for the shifted static constexpr size_t NUM_ALL_ENTITIES = 452; - using Relations = std::tuple< + using MainRelations = std::tuple< // Relations Avm_vm::alu, Avm_vm::binary, @@ -123,7 +124,9 @@ class AvmFlavor { Avm_vm::pedersen, Avm_vm::poseidon2, Avm_vm::powers, - Avm_vm::sha256, + Avm_vm::sha256>; + + using LookupRelations = std::tuple< // Lookups perm_main_alu_relation, perm_main_bin_relation, @@ -180,6 +183,8 @@ class AvmFlavor { lookup_div_u16_6_relation, lookup_div_u16_7_relation>; + using Relations = tuple_cat_t; + static constexpr size_t MAX_PARTIAL_RELATION_LENGTH = compute_max_partial_relation_length(); // BATCHED_RELATION_PARTIAL_LENGTH = algebraic degree of sumcheck relation *after* multiplying by the `pow_zeta` @@ -850,174 +855,6 @@ class AvmFlavor { mem_tsp, mem_val }; } - - void compute_logderivative_inverses(const RelationParameters& relation_parameters) - { - ProverPolynomials prover_polynomials = ProverPolynomials(*this); - - AVM_TRACK_TIME("compute_logderivative_inverse/perm_main_alu_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/perm_main_bin_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/perm_main_conv_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/perm_main_pos2_perm_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/perm_main_pedersen_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/perm_main_mem_a_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/perm_main_mem_b_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/perm_main_mem_c_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/perm_main_mem_d_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/perm_main_mem_ind_addr_a_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/perm_main_mem_ind_addr_b_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/perm_main_mem_ind_addr_c_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/perm_main_mem_ind_addr_d_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_byte_lengths_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_byte_operations_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_opcode_gas_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/range_check_l2_gas_hi_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/range_check_l2_gas_lo_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/range_check_da_gas_hi_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/range_check_da_gas_lo_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/kernel_output_lookup_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_into_kernel_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/incl_main_tag_err_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/incl_mem_tag_err_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_mem_rng_chk_lo_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_mem_rng_chk_mid_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_mem_rng_chk_hi_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_pow_2_0_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_pow_2_1_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u8_0_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u8_1_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_0_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_1_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_2_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_3_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_4_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_5_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_6_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_7_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_8_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_9_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_10_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_11_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_12_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_13_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_u16_14_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_div_u16_0_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_div_u16_1_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_div_u16_2_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_div_u16_3_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_div_u16_4_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_div_u16_5_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_div_u16_6_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - AVM_TRACK_TIME("compute_logderivative_inverse/lookup_div_u16_7_ms", - (bb::compute_logderivative_inverse>( - prover_polynomials, relation_parameters, this->circuit_size))); - } }; using VerificationKey = VerificationKey_, VerifierCommitmentKey>; diff --git a/barretenberg/cpp/src/barretenberg/vm/generated/avm_prover.cpp b/barretenberg/cpp/src/barretenberg/vm/generated/avm_prover.cpp index a94bdc5ee95..23762777a9f 100644 --- a/barretenberg/cpp/src/barretenberg/vm/generated/avm_prover.cpp +++ b/barretenberg/cpp/src/barretenberg/vm/generated/avm_prover.cpp @@ -9,11 +9,34 @@ #include "barretenberg/relations/permutation_relation.hpp" #include "barretenberg/sumcheck/sumcheck.hpp" +#include "barretenberg/vm/avm_trace/stats.hpp" + namespace bb { using Flavor = AvmFlavor; using FF = Flavor::FF; +namespace { + +// Loops through LookupRelations and calculates the logderivatives. +// Metaprogramming is used to loop through the relations, because they are types. +template +void compute_logderivative_rel(const RelationParameters& relation_parameters, + PP& prover_polynomials, + size_t circuit_size) +{ + using Relation = std::tuple_element_t; + AVM_TRACK_TIME( + Relation::NAME + std::string("_ms"), + (compute_logderivative_inverse(prover_polynomials, relation_parameters, circuit_size))); + + if constexpr (relation_idx + 1 < std::tuple_size_v) { + compute_logderivative_rel(relation_parameters, prover_polynomials, circuit_size); + } +} + +} // namespace + /** * Create AvmProver from proving key, witness and manifest. * @@ -69,7 +92,8 @@ void AvmProver::execute_log_derivative_inverse_round() relation_parameters.beta = beta; relation_parameters.gamma = gamm; - key->compute_logderivative_inverses(relation_parameters); + auto prover_polynomials = ProverPolynomials(*key); + compute_logderivative_rel(relation_parameters, prover_polynomials, key->circuit_size); // Commit to all logderivative inverse polynomials for (auto [commitment, key_poly] : zip_view(witness_commitments.get_derived(), key->get_derived())) { diff --git a/bb-pilcom/bb-pil-backend/templates/flavor.hpp.hbs b/bb-pilcom/bb-pil-backend/templates/flavor.hpp.hbs index ad77f8537f2..6c879c84fb8 100644 --- a/bb-pilcom/bb-pil-backend/templates/flavor.hpp.hbs +++ b/bb-pilcom/bb-pil-backend/templates/flavor.hpp.hbs @@ -12,8 +12,6 @@ #include "barretenberg/polynomials/polynomial.hpp" #include "barretenberg/flavor/flavor.hpp" -#include "barretenberg/vm/{{snakeCase name}}_trace/stats.hpp" - // Relations {{#each relation_file_names as |r|}} #include "barretenberg/relations/generated/{{snakeCase ../name}}/{{r}}.hpp" @@ -25,6 +23,9 @@ #include "barretenberg/relations/generated/{{snakeCase ../name}}/{{r}}.hpp" {{/each}} +// Metaprogramming to concatenate tuple types. +template using tuple_cat_t = decltype(std::tuple_cat(std::declval()...)); + namespace bb { class {{name}}Flavor { @@ -49,13 +50,18 @@ class {{name}}Flavor { // We have two copies of the witness entities, so we subtract the number of fixed ones (they have no shift), one for the unshifted and one for the shifted static constexpr size_t NUM_ALL_ENTITIES = {{len all_cols_and_shifts}}; - using Relations = std::tuple< + using MainRelations = std::tuple< // Relations - {{#each relation_file_names as |item|}}{{#if @index}},{{/if}}{{../name}}_vm::{{item}}{{/each}}, + {{#each relation_file_names as |item|}}{{#if @index}},{{/if}}{{../name}}_vm::{{item}}{{/each}} + >; + + using LookupRelations = std::tuple< // Lookups {{#each lookups as |item|}}{{#if @index}},{{/if}}{{item}}_relation{{/each}} >; + using Relations = tuple_cat_t; + static constexpr size_t MAX_PARTIAL_RELATION_LENGTH = compute_max_partial_relation_length(); // BATCHED_RELATION_PARTIAL_LENGTH = algebraic degree of sumcheck relation *after* multiplying by the `pow_zeta` @@ -152,15 +158,6 @@ class {{name}}Flavor { RefVector get_to_be_shifted() { return { {{#each to_be_shifted as |item|}}{{#if @index}},{{/if}}{{item}}{{/each}} }; } - - void compute_logderivative_inverses(const RelationParameters& relation_parameters) - { - ProverPolynomials prover_polynomials = ProverPolynomials(*this); - - {{#each lookups as |item|}} - AVM_TRACK_TIME("compute_logderivative_inverse/{{item}}_ms", (bb::compute_logderivative_inverse<{{../name}}Flavor, {{item}}_relation>(prover_polynomials, relation_parameters, this->circuit_size))); - {{/each}} - } }; using VerificationKey = VerificationKey_, VerifierCommitmentKey>; diff --git a/bb-pilcom/bb-pil-backend/templates/lookup.hpp.hbs b/bb-pilcom/bb-pil-backend/templates/lookup.hpp.hbs index 0ad04440e50..938d996f3e3 100644 --- a/bb-pilcom/bb-pil-backend/templates/lookup.hpp.hbs +++ b/bb-pilcom/bb-pil-backend/templates/lookup.hpp.hbs @@ -7,21 +7,7 @@ namespace bb { -/** - * @brief This class contains an example of how to set LookupSettings classes used by the - * GenericLookupRelationImpl class to specify a scaled lookup - * - * @details To create your own lookup: - * 1) Create a copy of this class and rename it - * 2) Update all the values with the ones needed for your lookup - * 3) Update "DECLARE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" and "DEFINE_LOOKUP_IMPLEMENTATIONS_FOR_ALL_SETTINGS" to - * include the new settings - * 4) Add the relation with the chosen settings to Relations in the flavor (for example,"` - * using Relations = std::tuple>;)` - * - */ - class {{lookup_name}}_lookup_settings { +class {{lookup_name}}_lookup_settings { public: static constexpr size_t READ_TERMS = {{read_terms}}; static constexpr size_t WRITE_TERMS = {{write_terms}}; @@ -65,7 +51,10 @@ namespace bb { } }; -template using {{lookup_name}}_relation = GenericLookupRelation<{{lookup_name}}_lookup_settings, FF_>; +template class {{lookup_name}}_relation : public GenericLookupRelation<{{lookup_name}}_lookup_settings, FF_> { + public: + static constexpr const char* NAME = "{{lookup_name}}"; +}; template using {{lookup_name}} = GenericLookup<{{lookup_name}}_lookup_settings, FF_>; } // namespace bb \ No newline at end of file diff --git a/bb-pilcom/bb-pil-backend/templates/permutation.hpp.hbs b/bb-pilcom/bb-pil-backend/templates/permutation.hpp.hbs index add6336de4e..33cb51d73cc 100644 --- a/bb-pilcom/bb-pil-backend/templates/permutation.hpp.hbs +++ b/bb-pilcom/bb-pil-backend/templates/permutation.hpp.hbs @@ -36,8 +36,10 @@ class {{perm_name}}_permutation_settings { } }; -template -using {{perm_name}}_relation = GenericPermutationRelation<{{perm_name}}_permutation_settings, FF_>; +template class {{perm_name}}_relation : public GenericPermutationRelation<{{perm_name}}_permutation_settings, FF_> { + public: + static constexpr const char* NAME = "{{perm_name}}"; +}; template using {{perm_name}} = GenericPermutation<{{perm_name}}_permutation_settings, FF_>; } // namespace bb \ No newline at end of file diff --git a/bb-pilcom/bb-pil-backend/templates/prover.cpp.hbs b/bb-pilcom/bb-pil-backend/templates/prover.cpp.hbs index fe5eb6ac631..32474b361e4 100644 --- a/bb-pilcom/bb-pil-backend/templates/prover.cpp.hbs +++ b/bb-pilcom/bb-pil-backend/templates/prover.cpp.hbs @@ -9,11 +9,34 @@ #include "barretenberg/relations/permutation_relation.hpp" #include "barretenberg/sumcheck/sumcheck.hpp" +#include "barretenberg/vm/{{snakeCase name}}_trace/stats.hpp" + namespace bb { using Flavor = {{name}}Flavor; using FF = Flavor::FF; +namespace { + +// Loops through LookupRelations and calculates the logderivatives. +// Metaprogramming is used to loop through the relations, because they are types. +template +void compute_logderivative_rel(const RelationParameters& relation_parameters, + PP& prover_polynomials, + size_t circuit_size) +{ + using Relation = std::tuple_element_t; + AVM_TRACK_TIME( + Relation::NAME + std::string("_ms"), + (compute_logderivative_inverse(prover_polynomials, relation_parameters, circuit_size))); + + if constexpr (relation_idx + 1 < std::tuple_size_v) { + compute_logderivative_rel(relation_parameters, prover_polynomials, circuit_size); + } +} + +} // namespace + /** * Create {{name}}Prover from proving key, witness and manifest. * @@ -70,7 +93,8 @@ void {{name}}Prover::execute_log_derivative_inverse_round() relation_parameters.beta = beta; relation_parameters.gamma = gamm; - key->compute_logderivative_inverses(relation_parameters); + auto prover_polynomials = ProverPolynomials(*key); + compute_logderivative_rel(relation_parameters, prover_polynomials, key->circuit_size); // Commit to all logderivative inverse polynomials for (auto [commitment, key_poly] : zip_view(witness_commitments.get_derived(), key->get_derived())) {