\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))
\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))
double f() {
double r2468944 = -1.0;
double r2468945 = 1.0;
double r2468946 = /* ERROR: no complex support in C */;
double r2468947 = r2468946 * r2468946;
double r2468948 = r2468947 * r2468946;
double r2468949 = r2468948 * r2468946;
double r2468950 = r2468949 * r2468946;
double r2468951 = r2468950 * r2468946;
double r2468952 = 6.0;
double r2468953 = 0.0;
double r2468954 = /* ERROR: no complex support in C */;
double r2468955 = r2468954 * r2468946;
double r2468956 = r2468955 * r2468946;
double r2468957 = r2468956 * r2468946;
double r2468958 = r2468957 * r2468946;
double r2468959 = r2468958 * r2468946;
double r2468960 = r2468951 + r2468959;
double r2468961 = 15.0;
double r2468962 = /* ERROR: no complex support in C */;
double r2468963 = r2468962 * r2468946;
double r2468964 = r2468963 * r2468946;
double r2468965 = r2468964 * r2468946;
double r2468966 = r2468965 * r2468946;
double r2468967 = r2468960 + r2468966;
double r2468968 = 20.0;
double r2468969 = /* ERROR: no complex support in C */;
double r2468970 = r2468969 * r2468946;
double r2468971 = r2468970 * r2468946;
double r2468972 = r2468971 * r2468946;
double r2468973 = r2468967 + r2468972;
double r2468974 = r2468973 + r2468964;
double r2468975 = r2468974 + r2468955;
double r2468976 = /* ERROR: no complex support in C */;
double r2468977 = r2468975 + r2468976;
double r2468978 = /* ERROR: no complex support in C */;
return r2468978;
}
double f() {
double r2468979 = -5.0;
double r2468980 = -24.0;
double r2468981 = /* ERROR: no complex support in C */;
double r2468982 = 24.0;
double r2468983 = /* ERROR: no complex support in C */;
double r2468984 = 0.0;
double r2468985 = 8.0;
double r2468986 = /* ERROR: no complex support in C */;
double r2468987 = r2468983 + r2468986;
double r2468988 = 40.0;
double r2468989 = /* ERROR: no complex support in C */;
double r2468990 = -60.0;
double r2468991 = /* ERROR: no complex support in C */;
double r2468992 = r2468989 + r2468991;
double r2468993 = r2468987 + r2468992;
double r2468994 = r2468981 + r2468993;
double r2468995 = /* ERROR: no complex support in C */;
return r2468995;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019128 +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))))