double f() {
double r1936374 = -1.0;
double r1936375 = 1.0;
double r1936376 = /* ERROR: no complex support in C */;
double r1936377 = r1936376 * r1936376;
double r1936378 = r1936377 * r1936376;
double r1936379 = r1936378 * r1936376;
double r1936380 = r1936379 * r1936376;
double r1936381 = r1936380 * r1936376;
double r1936382 = 6.0;
double r1936383 = 0.0;
double r1936384 = /* ERROR: no complex support in C */;
double r1936385 = r1936384 * r1936376;
double r1936386 = r1936385 * r1936376;
double r1936387 = r1936386 * r1936376;
double r1936388 = r1936387 * r1936376;
double r1936389 = r1936388 * r1936376;
double r1936390 = r1936381 + r1936389;
double r1936391 = 15.0;
double r1936392 = /* ERROR: no complex support in C */;
double r1936393 = r1936392 * r1936376;
double r1936394 = r1936393 * r1936376;
double r1936395 = r1936394 * r1936376;
double r1936396 = r1936395 * r1936376;
double r1936397 = r1936390 + r1936396;
double r1936398 = 20.0;
double r1936399 = /* ERROR: no complex support in C */;
double r1936400 = r1936399 * r1936376;
double r1936401 = r1936400 * r1936376;
double r1936402 = r1936401 * r1936376;
double r1936403 = r1936397 + r1936402;
double r1936404 = r1936403 + r1936394;
double r1936405 = r1936404 + r1936385;
double r1936406 = /* ERROR: no complex support in C */;
double r1936407 = r1936405 + r1936406;
double r1936408 = /* ERROR: no complex support in C */;
return r1936408;
}
double f() {
double r1936409 = -5.0;
double r1936410 = -24.0;
double r1936411 = /* ERROR: no complex support in C */;
double r1936412 = 24.0;
double r1936413 = /* ERROR: no complex support in C */;
double r1936414 = 0.0;
double r1936415 = 8.0;
double r1936416 = /* ERROR: no complex support in C */;
double r1936417 = r1936413 + r1936416;
double r1936418 = 40.0;
double r1936419 = /* ERROR: no complex support in C */;
double r1936420 = -60.0;
double r1936421 = /* ERROR: no complex support in C */;
double r1936422 = r1936419 + r1936421;
double r1936423 = r1936417 + r1936422;
double r1936424 = r1936411 + r1936423;
double r1936425 = /* ERROR: no complex support in C */;
return r1936425;
}
\Im(\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) + \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) + \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) + \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) + \left(\left(15 + 0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(6 + 0 i\right) \cdot \left(-1 + 1 i\right)\right) + \left(1 + 0 i\right)\right))
\Im(\left(\left(-5 + -24 i\right) + \left(\left(\left(24 + -24 i\right) + \left(0 + 8 i\right)\right) + \left(\left(40 + 40 i\right) + \left(-60 + 0 i\right)\right)\right)\right))
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019102
(FPCore ()
:name "3.9.1 imaginary part (p56)"
(im (+.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))))