\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(-1 + 0 i\right))
double f() {
double r1127896 = -1.0;
double r1127897 = 1.0;
double r1127898 = /* ERROR: no complex support in C */;
double r1127899 = r1127898 * r1127898;
double r1127900 = r1127899 * r1127898;
double r1127901 = r1127900 * r1127898;
double r1127902 = r1127901 * r1127898;
double r1127903 = r1127902 * r1127898;
double r1127904 = 6.0;
double r1127905 = 0.0;
double r1127906 = /* ERROR: no complex support in C */;
double r1127907 = r1127906 * r1127898;
double r1127908 = r1127907 * r1127898;
double r1127909 = r1127908 * r1127898;
double r1127910 = r1127909 * r1127898;
double r1127911 = r1127910 * r1127898;
double r1127912 = r1127903 + r1127911;
double r1127913 = 15.0;
double r1127914 = /* ERROR: no complex support in C */;
double r1127915 = r1127914 * r1127898;
double r1127916 = r1127915 * r1127898;
double r1127917 = r1127916 * r1127898;
double r1127918 = r1127917 * r1127898;
double r1127919 = r1127912 + r1127918;
double r1127920 = 20.0;
double r1127921 = /* ERROR: no complex support in C */;
double r1127922 = r1127921 * r1127898;
double r1127923 = r1127922 * r1127898;
double r1127924 = r1127923 * r1127898;
double r1127925 = r1127919 + r1127924;
double r1127926 = r1127925 + r1127916;
double r1127927 = r1127926 + r1127907;
double r1127928 = /* ERROR: no complex support in C */;
double r1127929 = r1127927 + r1127928;
double r1127930 = /* ERROR: no complex support in C */;
return r1127930;
}
double f() {
double r1127931 = -1.0;
double r1127932 = 0.0;
double r1127933 = /* ERROR: no complex support in C */;
double r1127934 = /* ERROR: no complex support in C */;
return r1127934;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019138
(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))))