\Im(\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.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.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.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.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0.0 i\right)\right))
\Im(\left(\left(\left(\left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) + \left(6 + 0.0 i\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(-1 + 1 i\right) + \left(6 + 0.0 i\right)\right) \cdot \left(\left(-1 + 1 i\right) \cdot \left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right)\right)\right) + \left(\left(-1 + 1 i\right) \cdot \left(\left(20 + 0.0 i\right) + \left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right)\right)\right) \cdot \left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right)\right)\right) + \left(1 + 0.0 i\right)\right))
double f() {
double r23236 = -1.0;
double r23237 = 1.0;
double r23238 = /* ERROR: no complex support in C */;
double r23239 = r23238 * r23238;
double r23240 = r23239 * r23238;
double r23241 = r23240 * r23238;
double r23242 = r23241 * r23238;
double r23243 = r23242 * r23238;
double r23244 = 6.0;
double r23245 = 0.0;
double r23246 = /* ERROR: no complex support in C */;
double r23247 = r23246 * r23238;
double r23248 = r23247 * r23238;
double r23249 = r23248 * r23238;
double r23250 = r23249 * r23238;
double r23251 = r23250 * r23238;
double r23252 = r23243 + r23251;
double r23253 = 15.0;
double r23254 = /* ERROR: no complex support in C */;
double r23255 = r23254 * r23238;
double r23256 = r23255 * r23238;
double r23257 = r23256 * r23238;
double r23258 = r23257 * r23238;
double r23259 = r23252 + r23258;
double r23260 = 20.0;
double r23261 = /* ERROR: no complex support in C */;
double r23262 = r23261 * r23238;
double r23263 = r23262 * r23238;
double r23264 = r23263 * r23238;
double r23265 = r23259 + r23264;
double r23266 = r23265 + r23256;
double r23267 = r23266 + r23247;
double r23268 = /* ERROR: no complex support in C */;
double r23269 = r23267 + r23268;
double r23270 = /* ERROR: no complex support in C */;
return r23270;
}
double f() {
double r23271 = 15.0;
double r23272 = 0.0;
double r23273 = /* ERROR: no complex support in C */;
double r23274 = -1.0;
double r23275 = 1.0;
double r23276 = /* ERROR: no complex support in C */;
double r23277 = r23273 * r23276;
double r23278 = 6.0;
double r23279 = /* ERROR: no complex support in C */;
double r23280 = r23277 + r23279;
double r23281 = r23280 * r23276;
double r23282 = r23276 + r23279;
double r23283 = r23276 * r23276;
double r23284 = r23276 * r23283;
double r23285 = r23282 * r23284;
double r23286 = 20.0;
double r23287 = /* ERROR: no complex support in C */;
double r23288 = r23287 + r23277;
double r23289 = r23276 * r23288;
double r23290 = r23285 + r23289;
double r23291 = r23290 * r23283;
double r23292 = r23281 + r23291;
double r23293 = /* ERROR: no complex support in C */;
double r23294 = r23292 + r23293;
double r23295 = /* ERROR: no complex support in C */;
return r23295;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019195
(FPCore ()
:name "3.9.1 imaginary part (p56)"
(im (+ (+ (+ (+ (+ (+ (* (* (* (* (* (complex -1.0 1.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (* (* (* (* (* (complex 6.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (* (* (* (complex 15.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (* (* (complex 20.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (* (complex 15.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (complex 6.0 0.0) (complex -1.0 1.0))) (complex 1.0 0.0))))