\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(\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))
double f() {
double r14378 = -1.0;
double r14379 = 1.0;
double r14380 = /* ERROR: no complex support in C */;
double r14381 = r14380 * r14380;
double r14382 = r14381 * r14380;
double r14383 = r14382 * r14380;
double r14384 = r14383 * r14380;
double r14385 = r14384 * r14380;
double r14386 = 6.0;
double r14387 = 0.0;
double r14388 = /* ERROR: no complex support in C */;
double r14389 = r14388 * r14380;
double r14390 = r14389 * r14380;
double r14391 = r14390 * r14380;
double r14392 = r14391 * r14380;
double r14393 = r14392 * r14380;
double r14394 = r14385 + r14393;
double r14395 = 15.0;
double r14396 = /* ERROR: no complex support in C */;
double r14397 = r14396 * r14380;
double r14398 = r14397 * r14380;
double r14399 = r14398 * r14380;
double r14400 = r14399 * r14380;
double r14401 = r14394 + r14400;
double r14402 = 20.0;
double r14403 = /* ERROR: no complex support in C */;
double r14404 = r14403 * r14380;
double r14405 = r14404 * r14380;
double r14406 = r14405 * r14380;
double r14407 = r14401 + r14406;
double r14408 = r14407 + r14398;
double r14409 = r14408 + r14389;
double r14410 = /* ERROR: no complex support in C */;
double r14411 = r14409 + r14410;
double r14412 = /* ERROR: no complex support in C */;
return r14412;
}
double f() {
double r14413 = -1.0;
double r14414 = 1.0;
double r14415 = /* ERROR: no complex support in C */;
double r14416 = r14415 * r14415;
double r14417 = r14416 * r14415;
double r14418 = r14417 * r14415;
double r14419 = r14418 * r14415;
double r14420 = r14419 * r14415;
double r14421 = 6.0;
double r14422 = 0.0;
double r14423 = /* ERROR: no complex support in C */;
double r14424 = r14423 * r14415;
double r14425 = r14424 * r14415;
double r14426 = r14425 * r14415;
double r14427 = r14426 * r14415;
double r14428 = r14427 * r14415;
double r14429 = r14420 + r14428;
double r14430 = 15.0;
double r14431 = /* ERROR: no complex support in C */;
double r14432 = r14431 * r14415;
double r14433 = r14432 * r14415;
double r14434 = r14433 * r14415;
double r14435 = r14434 * r14415;
double r14436 = r14429 + r14435;
double r14437 = 20.0;
double r14438 = /* ERROR: no complex support in C */;
double r14439 = r14438 * r14415;
double r14440 = r14439 * r14415;
double r14441 = r14440 * r14415;
double r14442 = r14436 + r14441;
double r14443 = r14442 + r14433;
double r14444 = r14443 + r14424;
double r14445 = /* ERROR: no complex support in C */;
double r14446 = r14444 + r14445;
double r14447 = /* ERROR: no complex support in C */;
return r14447;
}
Initial program 0
Final simplification0
herbie shell --seed 2020057 +o rules:numerics
(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))))