\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(-1 + 1 i\right) \cdot \left(\left(\left(-1 + 1 i\right) \cdot \left(\left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) + \left(15 + 0.0 i\right)\right)\right) + \left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(\left(-1 + 1 i\right) + \left(6 + 0.0 i\right)\right)\right)\right)\right)\right)\right) + \left(\left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) + \left(1 + 0.0 i\right)\right)\right))
double f() {
double r16390 = -1.0;
double r16391 = 1.0;
double r16392 = /* ERROR: no complex support in C */;
double r16393 = r16392 * r16392;
double r16394 = r16393 * r16392;
double r16395 = r16394 * r16392;
double r16396 = r16395 * r16392;
double r16397 = r16396 * r16392;
double r16398 = 6.0;
double r16399 = 0.0;
double r16400 = /* ERROR: no complex support in C */;
double r16401 = r16400 * r16392;
double r16402 = r16401 * r16392;
double r16403 = r16402 * r16392;
double r16404 = r16403 * r16392;
double r16405 = r16404 * r16392;
double r16406 = r16397 + r16405;
double r16407 = 15.0;
double r16408 = /* ERROR: no complex support in C */;
double r16409 = r16408 * r16392;
double r16410 = r16409 * r16392;
double r16411 = r16410 * r16392;
double r16412 = r16411 * r16392;
double r16413 = r16406 + r16412;
double r16414 = 20.0;
double r16415 = /* ERROR: no complex support in C */;
double r16416 = r16415 * r16392;
double r16417 = r16416 * r16392;
double r16418 = r16417 * r16392;
double r16419 = r16413 + r16418;
double r16420 = r16419 + r16410;
double r16421 = r16420 + r16401;
double r16422 = /* ERROR: no complex support in C */;
double r16423 = r16421 + r16422;
double r16424 = /* ERROR: no complex support in C */;
return r16424;
}
double f() {
double r16425 = -1.0;
double r16426 = 1.0;
double r16427 = /* ERROR: no complex support in C */;
double r16428 = 20.0;
double r16429 = 0.0;
double r16430 = /* ERROR: no complex support in C */;
double r16431 = r16430 * r16427;
double r16432 = 15.0;
double r16433 = /* ERROR: no complex support in C */;
double r16434 = r16431 + r16433;
double r16435 = r16427 * r16434;
double r16436 = r16427 * r16427;
double r16437 = r16433 * r16427;
double r16438 = 6.0;
double r16439 = /* ERROR: no complex support in C */;
double r16440 = r16427 + r16439;
double r16441 = r16436 * r16440;
double r16442 = r16437 + r16441;
double r16443 = r16436 * r16442;
double r16444 = r16435 + r16443;
double r16445 = r16427 * r16444;
double r16446 = r16439 * r16427;
double r16447 = /* ERROR: no complex support in C */;
double r16448 = r16446 + r16447;
double r16449 = r16445 + r16448;
double r16450 = /* ERROR: no complex support in C */;
return r16450;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2020044
(FPCore ()
:name "3.9.1 imaginary part (p56)"
:precision binary64
(im (+ (+ (+ (+ (+ (+ (* (* (* (* (* (complex -1 1) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (* (* (* (* (* (complex 6 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (* (* (complex 15 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (* (complex 20 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (complex 15 0.0) (complex -1 1)) (complex -1 1))) (* (complex 6 0.0) (complex -1 1))) (complex 1 0.0))))