28 using View =
typename std::tuple_element_t<1, ContainerOverSubrelations>::View;
29 auto tmp =
static_cast<View
>(in.get(C::bitwise_start)) * (
FF(1) -
static_cast<View
>(in.get(C::bitwise_start)));
33 using View =
typename std::tuple_element_t<2, ContainerOverSubrelations>::View;
34 auto tmp =
static_cast<View
>(in.get(C::bitwise_start_keccak)) *
35 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_start_keccak)));
39 using View =
typename std::tuple_element_t<3, ContainerOverSubrelations>::View;
40 auto tmp =
static_cast<View
>(in.get(C::bitwise_start_sha256)) *
41 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_start_sha256)));
45 using View =
typename std::tuple_element_t<4, ContainerOverSubrelations>::View;
47 (
static_cast<View
>(in.get(C::bitwise_start_keccak)) +
static_cast<View
>(in.get(C::bitwise_start_sha256))) *
48 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_start)));
52 using View =
typename std::tuple_element_t<5, ContainerOverSubrelations>::View;
53 auto tmp =
static_cast<View
>(in.get(C::bitwise_sel_tag_ff_err)) *
54 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_sel_tag_ff_err)));
58 using View =
typename std::tuple_element_t<6, ContainerOverSubrelations>::View;
59 auto tmp =
static_cast<View
>(in.get(C::bitwise_sel_tag_mismatch_err)) *
60 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_sel_tag_mismatch_err)));
64 using View =
typename std::tuple_element_t<7, ContainerOverSubrelations>::View;
65 auto tmp = (
static_cast<View
>(in.get(C::bitwise_err)) -
66 (
FF(1) - (
FF(1) -
static_cast<View
>(in.get(C::bitwise_sel_tag_mismatch_err))) *
67 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_sel_tag_ff_err)))));
71 using View =
typename std::tuple_element_t<8, ContainerOverSubrelations>::View;
72 auto tmp =
static_cast<View
>(in.get(C::bitwise_last)) * (
FF(1) -
static_cast<View
>(in.get(C::bitwise_last)));
76 using View =
typename std::tuple_element_t<9, ContainerOverSubrelations>::View;
77 auto tmp =
static_cast<View
>(in.get(C::bitwise_err)) * (
static_cast<View
>(in.get(C::bitwise_last)) -
FF(1));
81 using View =
typename std::tuple_element_t<10, ContainerOverSubrelations>::View;
82 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::bitwise_err))) *
static_cast<View
>(in.get(C::bitwise_start)) *
83 (
static_cast<View
>(in.get(C::bitwise_tag_c)) -
static_cast<View
>(in.get(C::bitwise_tag_a)));
87 using View =
typename std::tuple_element_t<11, ContainerOverSubrelations>::View;
88 auto tmp =
static_cast<View
>(in.get(C::bitwise_start)) *
89 ((
CView(bitwise_TAG_A_DIFF) * (
static_cast<View
>(in.get(C::bitwise_sel_tag_ff_err)) *
90 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_tag_a_inv))) +
91 static_cast<View
>(in.get(C::bitwise_tag_a_inv))) -
93 static_cast<View
>(in.get(C::bitwise_sel_tag_ff_err)));
97 using View =
typename std::tuple_element_t<12, ContainerOverSubrelations>::View;
98 auto tmp =
static_cast<View
>(in.get(C::bitwise_start)) *
99 (
CView(bitwise_TAG_AB_DIFF) * ((
FF(1) -
static_cast<View
>(in.get(C::bitwise_sel_tag_mismatch_err))) *
100 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_tag_ab_diff_inv))) +
101 static_cast<View
>(in.get(C::bitwise_tag_ab_diff_inv))) -
102 static_cast<View
>(in.get(C::bitwise_sel_tag_mismatch_err)));
106 using View =
typename std::tuple_element_t<13, ContainerOverSubrelations>::View;
107 auto tmp = (
static_cast<View
>(in.get(C::bitwise_op_id_shift)) -
static_cast<View
>(in.get(C::bitwise_op_id))) *
108 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_last)));
112 using View =
typename std::tuple_element_t<14, ContainerOverSubrelations>::View;
114 static_cast<View
>(in.get(C::bitwise_sel)) *
115 ((
static_cast<View
>(in.get(C::bitwise_ctr_shift)) -
static_cast<View
>(in.get(C::bitwise_ctr))) +
FF(1)) *
116 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_last)));
120 using View =
typename std::tuple_element_t<15, ContainerOverSubrelations>::View;
122 (
static_cast<View
>(in.get(C::bitwise_ctr)) * ((
FF(1) -
static_cast<View
>(in.get(C::bitwise_sel))) *
123 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_ctr_inv))) +
124 static_cast<View
>(in.get(C::bitwise_ctr_inv))) -
125 static_cast<View
>(in.get(C::bitwise_sel)));
129 using View =
typename std::tuple_element_t<16, ContainerOverSubrelations>::View;
130 auto tmp =
static_cast<View
>(in.get(C::bitwise_sel)) *
131 (((
static_cast<View
>(in.get(C::bitwise_ctr)) -
FF(1)) *
132 (
static_cast<View
>(in.get(C::bitwise_last)) *
133 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_ctr_min_one_inv))) +
134 static_cast<View
>(in.get(C::bitwise_ctr_min_one_inv))) +
135 static_cast<View
>(in.get(C::bitwise_last))) -
140 using View =
typename std::tuple_element_t<17, ContainerOverSubrelations>::View;
141 auto tmp =
static_cast<View
>(in.get(C::bitwise_last)) *
142 (
static_cast<View
>(in.get(C::bitwise_acc_ia)) -
static_cast<View
>(in.get(C::bitwise_ia_byte)));
146 using View =
typename std::tuple_element_t<18, ContainerOverSubrelations>::View;
147 auto tmp =
static_cast<View
>(in.get(C::bitwise_last)) *
148 (
static_cast<View
>(in.get(C::bitwise_acc_ib)) -
static_cast<View
>(in.get(C::bitwise_ib_byte)));
152 using View =
typename std::tuple_element_t<19, ContainerOverSubrelations>::View;
153 auto tmp =
static_cast<View
>(in.get(C::bitwise_last)) *
154 (
static_cast<View
>(in.get(C::bitwise_acc_ic)) -
static_cast<View
>(in.get(C::bitwise_ic_byte)));
158 using View =
typename std::tuple_element_t<20, ContainerOverSubrelations>::View;
159 auto tmp = ((
static_cast<View
>(in.get(C::bitwise_acc_ia)) -
static_cast<View
>(in.get(C::bitwise_ia_byte))) -
160 FF(256) *
static_cast<View
>(in.get(C::bitwise_acc_ia_shift))) *
161 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_last)));
165 using View =
typename std::tuple_element_t<21, ContainerOverSubrelations>::View;
166 auto tmp = ((
static_cast<View
>(in.get(C::bitwise_acc_ib)) -
static_cast<View
>(in.get(C::bitwise_ib_byte))) -
167 FF(256) *
static_cast<View
>(in.get(C::bitwise_acc_ib_shift))) *
168 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_last)));
172 using View =
typename std::tuple_element_t<22, ContainerOverSubrelations>::View;
173 auto tmp = ((
static_cast<View
>(in.get(C::bitwise_acc_ic)) -
static_cast<View
>(in.get(C::bitwise_ic_byte))) -
174 FF(256) *
static_cast<View
>(in.get(C::bitwise_acc_ic_shift))) *
175 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_last)));
179 using View =
typename std::tuple_element_t<23, ContainerOverSubrelations>::View;
180 auto tmp = (
static_cast<View
>(in.get(C::bitwise_sel_get_ctr)) -
181 static_cast<View
>(in.get(C::bitwise_start)) * (
FF(1) -
static_cast<View
>(in.get(C::bitwise_err))));