\Re(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(\left(6 + 0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(\left(15 + 0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(20 + 0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(15 + 0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0 i\right)\right))
\Re(\left(-1 + 0 i\right))
double f() {
double r705149 = -1.0;
double r705150 = 1.0;
double r705151 = /* ERROR: no complex support in C */;
double r705152 = r705151 * r705151;
double r705153 = r705152 * r705151;
double r705154 = r705153 * r705151;
double r705155 = r705154 * r705151;
double r705156 = r705155 * r705151;
double r705157 = 6.0;
double r705158 = 0.0;
double r705159 = /* ERROR: no complex support in C */;
double r705160 = r705159 * r705151;
double r705161 = r705160 * r705151;
double r705162 = r705161 * r705151;
double r705163 = r705162 * r705151;
double r705164 = r705163 * r705151;
double r705165 = r705156 + r705164;
double r705166 = 15.0;
double r705167 = /* ERROR: no complex support in C */;
double r705168 = r705167 * r705151;
double r705169 = r705168 * r705151;
double r705170 = r705169 * r705151;
double r705171 = r705170 * r705151;
double r705172 = r705165 + r705171;
double r705173 = 20.0;
double r705174 = /* ERROR: no complex support in C */;
double r705175 = r705174 * r705151;
double r705176 = r705175 * r705151;
double r705177 = r705176 * r705151;
double r705178 = r705172 + r705177;
double r705179 = r705178 + r705169;
double r705180 = r705179 + r705160;
double r705181 = /* ERROR: no complex support in C */;
double r705182 = r705180 + r705181;
double r705183 = /* ERROR: no complex support in C */;
return r705183;
}
double f() {
double r705184 = -1.0;
double r705185 = 0.0;
double r705186 = /* ERROR: no complex support in C */;
double r705187 = /* ERROR: no complex support in C */;
return r705187;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019141 +o rules:numerics
(FPCore ()
:name "3.9.1 real part (p56)"
(re (+.c (+.c (+.c (+.c (+.c (+.c (*.c (*.c (*.c (*.c (*.c (complex -1 1) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (*.c (*.c (*.c (*.c (*.c (complex 6 0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (*.c (*.c (complex 15 0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (*.c (complex 20 0) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (complex 15 0) (complex -1 1)) (complex -1 1))) (*.c (complex 6 0) (complex -1 1))) (complex 1 0))))