8#include "../columns.hpp"
17 static constexpr std::string_view
NAME =
"LOOKUP_RANGE_CHECK_DYN_RNG_CHK_POW_2";
22 static constexpr Column COUNTS = Column::lookup_range_check_dyn_rng_chk_pow_2_counts;
23 static constexpr Column INVERSES = Column::lookup_range_check_dyn_rng_chk_pow_2_inv;
24 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
25 ColumnAndShifts::range_check_dyn_rng_chk_bits, ColumnAndShifts::range_check_dyn_rng_chk_pow_2
27 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = {
28 ColumnAndShifts::precomputed_clk, ColumnAndShifts::precomputed_power_of_2
33template <
typename FF_>
40 static constexpr std::string_view
NAME =
"LOOKUP_RANGE_CHECK_DYN_DIFF_IS_U16";
45 static constexpr Column COUNTS = Column::lookup_range_check_dyn_diff_is_u16_counts;
46 static constexpr Column INVERSES = Column::lookup_range_check_dyn_diff_is_u16_inv;
47 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
48 ColumnAndShifts::range_check_dyn_diff
50 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = { ColumnAndShifts::precomputed_clk };
54template <
typename FF_>
61 static constexpr std::string_view
NAME =
"LOOKUP_RANGE_CHECK_R0_IS_U16";
66 static constexpr Column COUNTS = Column::lookup_range_check_r0_is_u16_counts;
68 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
69 ColumnAndShifts::range_check_u16_r0
71 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = { ColumnAndShifts::precomputed_clk };
75template <
typename FF_>
81 static constexpr std::string_view
NAME =
"LOOKUP_RANGE_CHECK_R1_IS_U16";
86 static constexpr Column COUNTS = Column::lookup_range_check_r1_is_u16_counts;
88 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
89 ColumnAndShifts::range_check_u16_r1
91 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = { ColumnAndShifts::precomputed_clk };
95template <
typename FF_>
101 static constexpr std::string_view
NAME =
"LOOKUP_RANGE_CHECK_R2_IS_U16";
106 static constexpr Column COUNTS = Column::lookup_range_check_r2_is_u16_counts;
108 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
109 ColumnAndShifts::range_check_u16_r2
111 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = { ColumnAndShifts::precomputed_clk };
115template <
typename FF_>
121 static constexpr std::string_view
NAME =
"LOOKUP_RANGE_CHECK_R3_IS_U16";
126 static constexpr Column COUNTS = Column::lookup_range_check_r3_is_u16_counts;
128 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
129 ColumnAndShifts::range_check_u16_r3
131 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = { ColumnAndShifts::precomputed_clk };
135template <
typename FF_>
141 static constexpr std::string_view
NAME =
"LOOKUP_RANGE_CHECK_R4_IS_U16";
146 static constexpr Column COUNTS = Column::lookup_range_check_r4_is_u16_counts;
148 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
149 ColumnAndShifts::range_check_u16_r4
151 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = { ColumnAndShifts::precomputed_clk };
155template <
typename FF_>
161 static constexpr std::string_view
NAME =
"LOOKUP_RANGE_CHECK_R5_IS_U16";
166 static constexpr Column COUNTS = Column::lookup_range_check_r5_is_u16_counts;
168 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
169 ColumnAndShifts::range_check_u16_r5
171 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = { ColumnAndShifts::precomputed_clk };
175template <
typename FF_>
181 static constexpr std::string_view
NAME =
"LOOKUP_RANGE_CHECK_R6_IS_U16";
186 static constexpr Column COUNTS = Column::lookup_range_check_r6_is_u16_counts;
188 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
189 ColumnAndShifts::range_check_u16_r6
191 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = { ColumnAndShifts::precomputed_clk };
195template <
typename FF_>
201 static constexpr std::string_view
NAME =
"LOOKUP_RANGE_CHECK_R7_IS_U16";
206 static constexpr Column COUNTS = Column::lookup_range_check_r7_is_u16_counts;
208 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
SRC_COLUMNS = {
209 ColumnAndShifts::range_check_u16_r7
211 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE>
DST_COLUMNS = { ColumnAndShifts::precomputed_clk };
215template <
typename FF_>
This file contains the template for the generic lookup that can be specialized to enforce various loo...
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr Column INVERSES
static constexpr Column SRC_SELECTOR
static constexpr std::string_view NAME
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr std::string_view RELATION_NAME
static constexpr Column COUNTS
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column DST_SELECTOR
static constexpr Column DST_SELECTOR
static constexpr std::string_view RELATION_NAME
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr Column SRC_SELECTOR
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column INVERSES
static constexpr Column COUNTS
static constexpr std::string_view NAME
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr std::string_view NAME
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr Column COUNTS
static constexpr std::string_view RELATION_NAME
static constexpr Column INVERSES
static constexpr Column SRC_SELECTOR
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr Column DST_SELECTOR
static constexpr Column COUNTS
static constexpr Column INVERSES
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column SRC_SELECTOR
static constexpr std::string_view RELATION_NAME
static constexpr std::string_view NAME
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr Column DST_SELECTOR
static constexpr std::string_view RELATION_NAME
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column COUNTS
static constexpr Column INVERSES
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr Column SRC_SELECTOR
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr std::string_view NAME
static constexpr Column DST_SELECTOR
static constexpr Column INVERSES
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr Column DST_SELECTOR
static constexpr std::string_view NAME
static constexpr Column SRC_SELECTOR
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr Column COUNTS
static constexpr std::string_view RELATION_NAME
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr std::string_view NAME
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr Column COUNTS
static constexpr std::string_view RELATION_NAME
static constexpr Column DST_SELECTOR
static constexpr Column INVERSES
static constexpr Column SRC_SELECTOR
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column SRC_SELECTOR
static constexpr std::string_view RELATION_NAME
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr std::string_view NAME
static constexpr Column DST_SELECTOR
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column INVERSES
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr Column COUNTS
static constexpr std::string_view RELATION_NAME
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr std::string_view NAME
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr Column INVERSES
static constexpr Column SRC_SELECTOR
static constexpr Column COUNTS
static constexpr Column DST_SELECTOR
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column DST_SELECTOR
static constexpr size_t LOOKUP_TUPLE_SIZE
static constexpr Column INVERSES
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr Column SRC_SELECTOR
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS
static constexpr Column COUNTS
static constexpr std::string_view RELATION_NAME
static constexpr std::string_view NAME