28 const auto ff_gt_IS_GT = in.get(C::ff_gt_sel_gt) * in.get(C::ff_gt_result);
31 using View =
typename std::tuple_element_t<0, ContainerOverSubrelations>::View;
32 auto tmp =
static_cast<View
>(in.get(C::ff_gt_sel)) * (
FF(1) -
static_cast<View
>(in.get(C::ff_gt_sel)));
36 using View =
typename std::tuple_element_t<1, ContainerOverSubrelations>::View;
37 auto tmp =
static_cast<View
>(in.get(C::ff_gt_result)) * (
FF(1) -
static_cast<View
>(in.get(C::ff_gt_result)));
41 using View =
typename std::tuple_element_t<2, ContainerOverSubrelations>::View;
42 auto tmp =
static_cast<View
>(in.get(C::ff_gt_sel_gt)) * (
FF(1) -
static_cast<View
>(in.get(C::ff_gt_sel_gt)));
46 using View =
typename std::tuple_element_t<3, ContainerOverSubrelations>::View;
47 auto tmp =
static_cast<View
>(in.get(C::ff_gt_sel_dec)) * (
FF(1) -
static_cast<View
>(in.get(C::ff_gt_sel_dec)));
51 using View =
typename std::tuple_element_t<4, ContainerOverSubrelations>::View;
53 static_cast<View
>(in.get(C::ff_gt_sel)) * (
FF(128) -
static_cast<View
>(in.get(C::ff_gt_constant_128)));
57 using View =
typename std::tuple_element_t<5, ContainerOverSubrelations>::View;
58 auto tmp =
CView(ff_gt_SEL_START) * (
static_cast<View
>(in.get(C::ff_gt_a)) -
59 (
static_cast<View
>(in.get(C::ff_gt_a_lo)) +
60 CView(ff_gt_POW_128) *
static_cast<View
>(in.get(C::ff_gt_a_hi))));
64 using View =
typename std::tuple_element_t<6, ContainerOverSubrelations>::View;
66 static_cast<View
>(in.get(C::ff_gt_p_a_borrow)) * (
FF(1) -
static_cast<View
>(in.get(C::ff_gt_p_a_borrow)));
70 using View =
typename std::tuple_element_t<7, ContainerOverSubrelations>::View;
71 auto tmp =
CView(ff_gt_SEL_START) * (
static_cast<View
>(in.get(C::ff_gt_p_sub_a_lo)) -
72 (((
CView(ff_gt_P_LO) -
static_cast<View
>(in.get(C::ff_gt_a_lo))) -
FF(1)) +
73 static_cast<View
>(in.get(C::ff_gt_p_a_borrow)) *
CView(ff_gt_POW_128)));
77 using View =
typename std::tuple_element_t<8, ContainerOverSubrelations>::View;
78 auto tmp =
CView(ff_gt_SEL_START) * (
static_cast<View
>(in.get(C::ff_gt_p_sub_a_hi)) -
79 ((
CView(ff_gt_P_HI) -
static_cast<View
>(in.get(C::ff_gt_a_hi))) -
80 static_cast<View
>(in.get(C::ff_gt_p_a_borrow))));
84 using View =
typename std::tuple_element_t<9, ContainerOverSubrelations>::View;
86 static_cast<View
>(in.get(C::ff_gt_sel_gt)) *
87 (
static_cast<View
>(in.get(C::ff_gt_b)) - (
static_cast<View
>(in.get(C::ff_gt_b_lo)) +
88 CView(ff_gt_POW_128) *
static_cast<View
>(in.get(C::ff_gt_b_hi))));
92 using View =
typename std::tuple_element_t<10, ContainerOverSubrelations>::View;
94 static_cast<View
>(in.get(C::ff_gt_p_b_borrow)) * (
FF(1) -
static_cast<View
>(in.get(C::ff_gt_p_b_borrow)));
98 using View =
typename std::tuple_element_t<11, ContainerOverSubrelations>::View;
99 auto tmp =
static_cast<View
>(in.get(C::ff_gt_sel_gt)) *
100 (
static_cast<View
>(in.get(C::ff_gt_p_sub_b_lo)) -
101 (((
CView(ff_gt_P_LO) -
static_cast<View
>(in.get(C::ff_gt_b_lo))) -
FF(1)) +
102 static_cast<View
>(in.get(C::ff_gt_p_b_borrow)) *
CView(ff_gt_POW_128)));
106 using View =
typename std::tuple_element_t<12, ContainerOverSubrelations>::View;
107 auto tmp =
static_cast<View
>(in.get(C::ff_gt_sel_gt)) *
108 (
static_cast<View
>(in.get(C::ff_gt_p_sub_b_hi)) -
109 ((
CView(ff_gt_P_HI) -
static_cast<View
>(in.get(C::ff_gt_b_hi))) -
110 static_cast<View
>(in.get(C::ff_gt_p_b_borrow))));
114 using View =
typename std::tuple_element_t<13, ContainerOverSubrelations>::View;
116 static_cast<View
>(in.get(C::ff_gt_sel_gt)) *
117 (
static_cast<View
>(in.get(C::ff_gt_res_lo)) -
122 using View =
typename std::tuple_element_t<14, ContainerOverSubrelations>::View;
124 static_cast<View
>(in.get(C::ff_gt_sel_gt)) *
125 (
static_cast<View
>(in.get(C::ff_gt_res_hi)) -
130 using View =
typename std::tuple_element_t<15, ContainerOverSubrelations>::View;
132 static_cast<View
>(in.get(C::ff_gt_sel_gt)) * (
static_cast<View
>(in.get(C::ff_gt_cmp_rng_ctr)) -
FF(4));
136 using View =
typename std::tuple_element_t<16, ContainerOverSubrelations>::View;
138 static_cast<View
>(in.get(C::ff_gt_sel_dec)) * (
static_cast<View
>(in.get(C::ff_gt_cmp_rng_ctr)) -
FF(1));
142 using View =
typename std::tuple_element_t<17, ContainerOverSubrelations>::View;
143 auto tmp =
static_cast<View
>(in.get(C::ff_gt_cmp_rng_ctr)) *
144 ((
static_cast<View
>(in.get(C::ff_gt_cmp_rng_ctr)) -
FF(1)) -
145 static_cast<View
>(in.get(C::ff_gt_cmp_rng_ctr_shift)));
149 using View =
typename std::tuple_element_t<18, ContainerOverSubrelations>::View;
150 auto tmp =
static_cast<View
>(in.get(C::ff_gt_sel_shift_rng)) *
151 (
FF(1) -
static_cast<View
>(in.get(C::ff_gt_sel_shift_rng)));
155 using View =
typename std::tuple_element_t<19, ContainerOverSubrelations>::View;
156 auto tmp = (
static_cast<View
>(in.get(C::ff_gt_cmp_rng_ctr)) *
157 ((
FF(1) -
static_cast<View
>(in.get(C::ff_gt_sel_shift_rng))) *
158 (
FF(1) -
static_cast<View
>(in.get(C::ff_gt_cmp_rng_ctr_inv))) +
159 static_cast<View
>(in.get(C::ff_gt_cmp_rng_ctr_inv))) -
160 static_cast<View
>(in.get(C::ff_gt_sel_shift_rng)));
164 using View =
typename std::tuple_element_t<20, ContainerOverSubrelations>::View;
165 auto tmp = (
static_cast<View
>(in.get(C::ff_gt_a_lo_shift)) -
static_cast<View
>(in.get(C::ff_gt_p_sub_a_lo))) *
166 static_cast<View
>(in.get(C::ff_gt_sel_shift_rng));
170 using View =
typename std::tuple_element_t<21, ContainerOverSubrelations>::View;
171 auto tmp = (
static_cast<View
>(in.get(C::ff_gt_a_hi_shift)) -
static_cast<View
>(in.get(C::ff_gt_p_sub_a_hi))) *
172 static_cast<View
>(in.get(C::ff_gt_sel_shift_rng));
176 using View =
typename std::tuple_element_t<22, ContainerOverSubrelations>::View;
177 auto tmp = (
static_cast<View
>(in.get(C::ff_gt_p_sub_a_lo_shift)) -
static_cast<View
>(in.get(C::ff_gt_b_lo))) *
178 static_cast<View
>(in.get(C::ff_gt_sel_shift_rng));
182 using View =
typename std::tuple_element_t<23, ContainerOverSubrelations>::View;
183 auto tmp = (
static_cast<View
>(in.get(C::ff_gt_p_sub_a_hi_shift)) -
static_cast<View
>(in.get(C::ff_gt_b_hi))) *
184 static_cast<View
>(in.get(C::ff_gt_sel_shift_rng));
188 using View =
typename std::tuple_element_t<24, ContainerOverSubrelations>::View;
189 auto tmp = (
static_cast<View
>(in.get(C::ff_gt_b_lo_shift)) -
static_cast<View
>(in.get(C::ff_gt_p_sub_b_lo))) *
190 static_cast<View
>(in.get(C::ff_gt_sel_shift_rng));
194 using View =
typename std::tuple_element_t<25, ContainerOverSubrelations>::View;
195 auto tmp = (
static_cast<View
>(in.get(C::ff_gt_b_hi_shift)) -
static_cast<View
>(in.get(C::ff_gt_p_sub_b_hi))) *
196 static_cast<View
>(in.get(C::ff_gt_sel_shift_rng));
200 using View =
typename std::tuple_element_t<26, ContainerOverSubrelations>::View;
201 auto tmp = (
static_cast<View
>(in.get(C::ff_gt_p_sub_b_lo_shift)) -
static_cast<View
>(in.get(C::ff_gt_res_lo))) *
202 static_cast<View
>(in.get(C::ff_gt_sel_shift_rng));
206 using View =
typename std::tuple_element_t<27, ContainerOverSubrelations>::View;
207 auto tmp = (
static_cast<View
>(in.get(C::ff_gt_p_sub_b_hi_shift)) -
static_cast<View
>(in.get(C::ff_gt_res_hi))) *
208 static_cast<View
>(in.get(C::ff_gt_sel_shift_rng));
212 using View =
typename std::tuple_element_t<28, ContainerOverSubrelations>::View;
214 ((
static_cast<View
>(in.get(C::ff_gt_sel_shift_rng)) +
static_cast<View
>(in.get(C::ff_gt_sel_gt_shift)) +
215 static_cast<View
>(in.get(C::ff_gt_sel_dec_shift))) -
216 static_cast<View
>(in.get(C::ff_gt_sel_shift)));