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;
41 (
static_cast<View
>(in.get(C::bitwise_start_keccak)) +
static_cast<View
>(in.get(C::bitwise_start_sha256))) *
42 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_start)));
46 using View =
typename std::tuple_element_t<4, ContainerOverSubrelations>::View;
47 auto tmp =
static_cast<View
>(in.get(C::bitwise_sel_tag_ff_err)) *
48 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_sel_tag_ff_err)));
52 using View =
typename std::tuple_element_t<5, ContainerOverSubrelations>::View;
53 auto tmp =
static_cast<View
>(in.get(C::bitwise_sel_tag_mismatch_err)) *
54 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_sel_tag_mismatch_err)));
58 using View =
typename std::tuple_element_t<6, ContainerOverSubrelations>::View;
59 auto tmp = (
static_cast<View
>(in.get(C::bitwise_err)) -
60 (
FF(1) - (
FF(1) -
static_cast<View
>(in.get(C::bitwise_sel_tag_mismatch_err))) *
61 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_sel_tag_ff_err)))));
65 using View =
typename std::tuple_element_t<7, ContainerOverSubrelations>::View;
66 auto tmp =
static_cast<View
>(in.get(C::bitwise_last)) * (
FF(1) -
static_cast<View
>(in.get(C::bitwise_last)));
70 using View =
typename std::tuple_element_t<8, ContainerOverSubrelations>::View;
71 auto tmp =
static_cast<View
>(in.get(C::bitwise_err)) * (
static_cast<View
>(in.get(C::bitwise_last)) -
FF(1));
75 using View =
typename std::tuple_element_t<9, ContainerOverSubrelations>::View;
76 auto tmp =
static_cast<View
>(in.get(C::bitwise_start)) *
77 (
static_cast<View
>(in.get(C::bitwise_tag_c)) -
static_cast<View
>(in.get(C::bitwise_tag_a)));
81 using View =
typename std::tuple_element_t<10, ContainerOverSubrelations>::View;
82 auto tmp =
static_cast<View
>(in.get(C::bitwise_start)) *
83 ((
CView(bitwise_TAG_A_DIFF) * (
static_cast<View
>(in.get(C::bitwise_sel_tag_ff_err)) *
84 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_tag_a_inv))) +
85 static_cast<View
>(in.get(C::bitwise_tag_a_inv))) -
87 static_cast<View
>(in.get(C::bitwise_sel_tag_ff_err)));
91 using View =
typename std::tuple_element_t<11, ContainerOverSubrelations>::View;
92 auto tmp =
static_cast<View
>(in.get(C::bitwise_start)) *
93 (
CView(bitwise_TAG_AB_DIFF) * ((
FF(1) -
static_cast<View
>(in.get(C::bitwise_sel_tag_mismatch_err))) *
94 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_tag_ab_diff_inv))) +
95 static_cast<View
>(in.get(C::bitwise_tag_ab_diff_inv))) -
96 static_cast<View
>(in.get(C::bitwise_sel_tag_mismatch_err)));
100 using View =
typename std::tuple_element_t<12, ContainerOverSubrelations>::View;
101 auto tmp = (
static_cast<View
>(in.get(C::bitwise_op_id_shift)) -
static_cast<View
>(in.get(C::bitwise_op_id))) *
102 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_last)));
106 using View =
typename std::tuple_element_t<13, ContainerOverSubrelations>::View;
108 static_cast<View
>(in.get(C::bitwise_sel)) *
109 ((
static_cast<View
>(in.get(C::bitwise_ctr_shift)) -
static_cast<View
>(in.get(C::bitwise_ctr))) +
FF(1)) *
110 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_last)));
114 using View =
typename std::tuple_element_t<14, ContainerOverSubrelations>::View;
116 (
static_cast<View
>(in.get(C::bitwise_ctr)) * ((
FF(1) -
static_cast<View
>(in.get(C::bitwise_sel))) *
117 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_ctr_inv))) +
118 static_cast<View
>(in.get(C::bitwise_ctr_inv))) -
119 static_cast<View
>(in.get(C::bitwise_sel)));
123 using View =
typename std::tuple_element_t<15, ContainerOverSubrelations>::View;
124 auto tmp =
static_cast<View
>(in.get(C::bitwise_sel)) *
125 (((
static_cast<View
>(in.get(C::bitwise_ctr)) -
FF(1)) *
126 (
static_cast<View
>(in.get(C::bitwise_last)) *
127 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_ctr_min_one_inv))) +
128 static_cast<View
>(in.get(C::bitwise_ctr_min_one_inv))) +
129 static_cast<View
>(in.get(C::bitwise_last))) -
134 using View =
typename std::tuple_element_t<16, ContainerOverSubrelations>::View;
135 auto tmp =
static_cast<View
>(in.get(C::bitwise_last)) *
136 (
static_cast<View
>(in.get(C::bitwise_acc_ia)) -
static_cast<View
>(in.get(C::bitwise_ia_byte)));
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_ib)) -
static_cast<View
>(in.get(C::bitwise_ib_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_ic)) -
static_cast<View
>(in.get(C::bitwise_ic_byte)));
152 using View =
typename std::tuple_element_t<19, ContainerOverSubrelations>::View;
153 auto tmp = ((
static_cast<View
>(in.get(C::bitwise_acc_ia)) -
static_cast<View
>(in.get(C::bitwise_ia_byte))) -
154 FF(256) *
static_cast<View
>(in.get(C::bitwise_acc_ia_shift))) *
155 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_last)));
159 using View =
typename std::tuple_element_t<20, ContainerOverSubrelations>::View;
160 auto tmp = ((
static_cast<View
>(in.get(C::bitwise_acc_ib)) -
static_cast<View
>(in.get(C::bitwise_ib_byte))) -
161 FF(256) *
static_cast<View
>(in.get(C::bitwise_acc_ib_shift))) *
162 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_last)));
166 using View =
typename std::tuple_element_t<21, ContainerOverSubrelations>::View;
167 auto tmp = ((
static_cast<View
>(in.get(C::bitwise_acc_ic)) -
static_cast<View
>(in.get(C::bitwise_ic_byte))) -
168 FF(256) *
static_cast<View
>(in.get(C::bitwise_acc_ic_shift))) *
169 (
FF(1) -
static_cast<View
>(in.get(C::bitwise_last)));
173 using View =
typename std::tuple_element_t<22, ContainerOverSubrelations>::View;
174 auto tmp = (
static_cast<View
>(in.get(C::bitwise_sel_get_ctr)) -
175 static_cast<View
>(in.get(C::bitwise_start)) * (
FF(1) -
static_cast<View
>(in.get(C::bitwise_err))));