30 using View =
typename std::tuple_element_t<1, ContainerOverSubrelations>::View;
31 auto tmp =
static_cast<View
>(in.get(C::keccak_memory_start_read)) *
32 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_start_read)));
36 using View =
typename std::tuple_element_t<2, ContainerOverSubrelations>::View;
37 auto tmp =
static_cast<View
>(in.get(C::keccak_memory_start_write)) *
38 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_start_write)));
42 using View =
typename std::tuple_element_t<3, ContainerOverSubrelations>::View;
43 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_start_read)) +
44 static_cast<View
>(in.get(C::keccak_memory_start_write))) *
45 (
static_cast<View
>(in.get(C::keccak_memory_ctr)) -
FF(1));
49 using View =
typename std::tuple_element_t<4, ContainerOverSubrelations>::View;
51 static_cast<View
>(in.get(C::keccak_memory_start_read)) *
static_cast<View
>(in.get(C::keccak_memory_rw));
55 using View =
typename std::tuple_element_t<5, ContainerOverSubrelations>::View;
56 auto tmp =
static_cast<View
>(in.get(C::keccak_memory_start_write)) *
57 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_rw)));
61 using View =
typename std::tuple_element_t<6, ContainerOverSubrelations>::View;
62 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_ctr)) *
63 ((
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_sel))) *
64 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_ctr_inv))) +
65 static_cast<View
>(in.get(C::keccak_memory_ctr_inv))) -
66 static_cast<View
>(in.get(C::keccak_memory_sel)));
70 using View =
typename std::tuple_element_t<7, ContainerOverSubrelations>::View;
71 auto tmp =
static_cast<View
>(in.get(C::keccak_memory_ctr_end)) *
72 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_ctr_end)));
76 using View =
typename std::tuple_element_t<8, ContainerOverSubrelations>::View;
77 auto tmp =
static_cast<View
>(in.get(C::keccak_memory_sel)) *
78 (((
CView(constants_AVM_KECCAKF1600_STATE_SIZE) -
static_cast<View
>(in.get(C::keccak_memory_ctr))) *
79 (
static_cast<View
>(in.get(C::keccak_memory_ctr_end)) *
80 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_state_size_min_ctr_inv))) +
81 static_cast<View
>(in.get(C::keccak_memory_state_size_min_ctr_inv))) +
82 static_cast<View
>(in.get(C::keccak_memory_ctr_end))) -
87 using View =
typename std::tuple_element_t<9, ContainerOverSubrelations>::View;
88 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_last)) -
89 (
FF(1) - (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_ctr_end))) *
90 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_single_tag_error)))));
94 using View =
typename std::tuple_element_t<10, ContainerOverSubrelations>::View;
96 static_cast<View
>(in.get(C::keccak_memory_sel)) *
97 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
98 ((
static_cast<View
>(in.get(C::keccak_memory_ctr_shift)) -
static_cast<View
>(in.get(C::keccak_memory_ctr))) -
103 using View =
typename std::tuple_element_t<11, ContainerOverSubrelations>::View;
104 auto tmp =
static_cast<View
>(in.get(C::keccak_memory_single_tag_error)) *
105 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_single_tag_error)));
109 using View =
typename std::tuple_element_t<12, ContainerOverSubrelations>::View;
110 auto tmp =
static_cast<View
>(in.get(C::keccak_memory_rw)) *
111 static_cast<View
>(in.get(C::keccak_memory_single_tag_error));
115 using View =
typename std::tuple_element_t<13, ContainerOverSubrelations>::View;
116 auto tmp =
static_cast<View
>(in.get(C::keccak_memory_last)) *
117 (
static_cast<View
>(in.get(C::keccak_memory_tag_error)) -
118 static_cast<View
>(in.get(C::keccak_memory_single_tag_error)));
122 using View =
typename std::tuple_element_t<14, ContainerOverSubrelations>::View;
123 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
124 (
static_cast<View
>(in.get(C::keccak_memory_tag_error)) -
125 static_cast<View
>(in.get(C::keccak_memory_tag_error_shift)));
129 using View =
typename std::tuple_element_t<15, ContainerOverSubrelations>::View;
130 auto tmp =
static_cast<View
>(in.get(C::keccak_memory_sel)) *
131 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
132 ((
static_cast<View
>(in.get(C::keccak_memory_addr)) +
FF(1)) -
133 static_cast<View
>(in.get(C::keccak_memory_addr_shift)));
137 using View =
typename std::tuple_element_t<16, ContainerOverSubrelations>::View;
138 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
139 (
static_cast<View
>(in.get(C::keccak_memory_space_id)) -
140 static_cast<View
>(in.get(C::keccak_memory_space_id_shift)));
144 using View =
typename std::tuple_element_t<17, ContainerOverSubrelations>::View;
146 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
147 (
static_cast<View
>(in.get(C::keccak_memory_clk_shift)) -
static_cast<View
>(in.get(C::keccak_memory_clk)));
151 using View =
typename std::tuple_element_t<18, ContainerOverSubrelations>::View;
153 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
154 (
static_cast<View
>(in.get(C::keccak_memory_rw_shift)) -
static_cast<View
>(in.get(C::keccak_memory_rw)));
158 using View =
typename std::tuple_element_t<19, ContainerOverSubrelations>::View;
159 auto tmp =
static_cast<View
>(in.get(C::keccak_memory_sel)) *
160 (
CView(keccak_memory_TAG_MIN_U64) *
161 ((
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_single_tag_error))) *
162 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_tag_min_u64_inv))) +
163 static_cast<View
>(in.get(C::keccak_memory_tag_min_u64_inv))) -
164 static_cast<View
>(in.get(C::keccak_memory_single_tag_error)));
168 using View =
typename std::tuple_element_t<20, ContainerOverSubrelations>::View;
169 auto tmp =
static_cast<View
>(in.get(C::keccak_memory_single_tag_error)) *
170 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_single_tag_error)));
174 using View =
typename std::tuple_element_t<21, ContainerOverSubrelations>::View;
175 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val01)) -
176 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
177 static_cast<View
>(in.get(C::keccak_memory_val00_shift)));
181 using View =
typename std::tuple_element_t<22, ContainerOverSubrelations>::View;
182 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val02)) -
183 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
184 static_cast<View
>(in.get(C::keccak_memory_val01_shift)));
188 using View =
typename std::tuple_element_t<23, ContainerOverSubrelations>::View;
189 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val03)) -
190 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
191 static_cast<View
>(in.get(C::keccak_memory_val02_shift)));
195 using View =
typename std::tuple_element_t<24, ContainerOverSubrelations>::View;
196 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val04)) -
197 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
198 static_cast<View
>(in.get(C::keccak_memory_val03_shift)));
202 using View =
typename std::tuple_element_t<25, ContainerOverSubrelations>::View;
203 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val10)) -
204 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
205 static_cast<View
>(in.get(C::keccak_memory_val04_shift)));
209 using View =
typename std::tuple_element_t<26, ContainerOverSubrelations>::View;
210 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val11)) -
211 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
212 static_cast<View
>(in.get(C::keccak_memory_val10_shift)));
216 using View =
typename std::tuple_element_t<27, ContainerOverSubrelations>::View;
217 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val12)) -
218 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
219 static_cast<View
>(in.get(C::keccak_memory_val11_shift)));
223 using View =
typename std::tuple_element_t<28, ContainerOverSubrelations>::View;
224 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val13)) -
225 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
226 static_cast<View
>(in.get(C::keccak_memory_val12_shift)));
230 using View =
typename std::tuple_element_t<29, ContainerOverSubrelations>::View;
231 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val14)) -
232 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
233 static_cast<View
>(in.get(C::keccak_memory_val13_shift)));
237 using View =
typename std::tuple_element_t<30, ContainerOverSubrelations>::View;
238 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val20)) -
239 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
240 static_cast<View
>(in.get(C::keccak_memory_val14_shift)));
244 using View =
typename std::tuple_element_t<31, ContainerOverSubrelations>::View;
245 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val21)) -
246 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
247 static_cast<View
>(in.get(C::keccak_memory_val20_shift)));
251 using View =
typename std::tuple_element_t<32, ContainerOverSubrelations>::View;
252 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val22)) -
253 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
254 static_cast<View
>(in.get(C::keccak_memory_val21_shift)));
258 using View =
typename std::tuple_element_t<33, ContainerOverSubrelations>::View;
259 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val23)) -
260 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
261 static_cast<View
>(in.get(C::keccak_memory_val22_shift)));
265 using View =
typename std::tuple_element_t<34, ContainerOverSubrelations>::View;
266 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val24)) -
267 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
268 static_cast<View
>(in.get(C::keccak_memory_val23_shift)));
272 using View =
typename std::tuple_element_t<35, ContainerOverSubrelations>::View;
273 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val30)) -
274 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
275 static_cast<View
>(in.get(C::keccak_memory_val24_shift)));
279 using View =
typename std::tuple_element_t<36, ContainerOverSubrelations>::View;
280 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val31)) -
281 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
282 static_cast<View
>(in.get(C::keccak_memory_val30_shift)));
286 using View =
typename std::tuple_element_t<37, ContainerOverSubrelations>::View;
287 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val32)) -
288 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
289 static_cast<View
>(in.get(C::keccak_memory_val31_shift)));
293 using View =
typename std::tuple_element_t<38, ContainerOverSubrelations>::View;
294 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val33)) -
295 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
296 static_cast<View
>(in.get(C::keccak_memory_val32_shift)));
300 using View =
typename std::tuple_element_t<39, ContainerOverSubrelations>::View;
301 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val34)) -
302 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
303 static_cast<View
>(in.get(C::keccak_memory_val33_shift)));
307 using View =
typename std::tuple_element_t<40, ContainerOverSubrelations>::View;
308 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val40)) -
309 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
310 static_cast<View
>(in.get(C::keccak_memory_val34_shift)));
314 using View =
typename std::tuple_element_t<41, ContainerOverSubrelations>::View;
315 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val41)) -
316 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
317 static_cast<View
>(in.get(C::keccak_memory_val40_shift)));
321 using View =
typename std::tuple_element_t<42, ContainerOverSubrelations>::View;
322 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val42)) -
323 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
324 static_cast<View
>(in.get(C::keccak_memory_val41_shift)));
328 using View =
typename std::tuple_element_t<43, ContainerOverSubrelations>::View;
329 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val43)) -
330 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
331 static_cast<View
>(in.get(C::keccak_memory_val42_shift)));
335 using View =
typename std::tuple_element_t<44, ContainerOverSubrelations>::View;
336 auto tmp = (
static_cast<View
>(in.get(C::keccak_memory_val44)) -
337 (
FF(1) -
static_cast<View
>(in.get(C::keccak_memory_last))) *
338 static_cast<View
>(in.get(C::keccak_memory_val43_shift)));
342 using View =
typename std::tuple_element_t<45, ContainerOverSubrelations>::View;
344 static_cast<View
>(in.get(C::keccak_memory_sel)) *
345 (
static_cast<View
>(in.get(C::keccak_memory_num_rounds)) -
CView(constants_AVM_KECCAKF1600_NUM_ROUNDS));