\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 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))
0
double f() {
double r16778 = -1.0;
double r16779 = 1.0;
double r16780 = /* ERROR: no complex support in C */;
double r16781 = r16780 * r16780;
double r16782 = r16781 * r16780;
double r16783 = r16782 * r16780;
double r16784 = r16783 * r16780;
double r16785 = r16784 * r16780;
double r16786 = 6.0;
double r16787 = 0.0;
double r16788 = /* ERROR: no complex support in C */;
double r16789 = r16788 * r16780;
double r16790 = r16789 * r16780;
double r16791 = r16790 * r16780;
double r16792 = r16791 * r16780;
double r16793 = r16792 * r16780;
double r16794 = r16785 + r16793;
double r16795 = 15.0;
double r16796 = /* ERROR: no complex support in C */;
double r16797 = r16796 * r16780;
double r16798 = r16797 * r16780;
double r16799 = r16798 * r16780;
double r16800 = r16799 * r16780;
double r16801 = r16794 + r16800;
double r16802 = 20.0;
double r16803 = /* ERROR: no complex support in C */;
double r16804 = r16803 * r16780;
double r16805 = r16804 * r16780;
double r16806 = r16805 * r16780;
double r16807 = r16801 + r16806;
double r16808 = r16807 + r16798;
double r16809 = r16808 + r16789;
double r16810 = /* ERROR: no complex support in C */;
double r16811 = r16809 + r16810;
double r16812 = /* ERROR: no complex support in C */;
return r16812;
}
double f() {
double r16813 = 0.0;
return r16813;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019133 +o rules:numerics
(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))))