\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 r2284861 = -1.0;
double r2284862 = 1.0;
double r2284863 = /* ERROR: no complex support in C */;
double r2284864 = r2284863 * r2284863;
double r2284865 = r2284864 * r2284863;
double r2284866 = r2284865 * r2284863;
double r2284867 = r2284866 * r2284863;
double r2284868 = r2284867 * r2284863;
double r2284869 = 6.0;
double r2284870 = 0.0;
double r2284871 = /* ERROR: no complex support in C */;
double r2284872 = r2284871 * r2284863;
double r2284873 = r2284872 * r2284863;
double r2284874 = r2284873 * r2284863;
double r2284875 = r2284874 * r2284863;
double r2284876 = r2284875 * r2284863;
double r2284877 = r2284868 + r2284876;
double r2284878 = 15.0;
double r2284879 = /* ERROR: no complex support in C */;
double r2284880 = r2284879 * r2284863;
double r2284881 = r2284880 * r2284863;
double r2284882 = r2284881 * r2284863;
double r2284883 = r2284882 * r2284863;
double r2284884 = r2284877 + r2284883;
double r2284885 = 20.0;
double r2284886 = /* ERROR: no complex support in C */;
double r2284887 = r2284886 * r2284863;
double r2284888 = r2284887 * r2284863;
double r2284889 = r2284888 * r2284863;
double r2284890 = r2284884 + r2284889;
double r2284891 = r2284890 + r2284881;
double r2284892 = r2284891 + r2284872;
double r2284893 = /* ERROR: no complex support in C */;
double r2284894 = r2284892 + r2284893;
double r2284895 = /* ERROR: no complex support in C */;
return r2284895;
}
double f() {
double r2284896 = -5.0;
double r2284897 = -24.0;
double r2284898 = /* ERROR: no complex support in C */;
double r2284899 = 24.0;
double r2284900 = /* ERROR: no complex support in C */;
double r2284901 = 0.0;
double r2284902 = 8.0;
double r2284903 = /* ERROR: no complex support in C */;
double r2284904 = r2284900 + r2284903;
double r2284905 = 40.0;
double r2284906 = /* ERROR: no complex support in C */;
double r2284907 = -60.0;
double r2284908 = /* ERROR: no complex support in C */;
double r2284909 = r2284906 + r2284908;
double r2284910 = r2284904 + r2284909;
double r2284911 = r2284898 + r2284910;
double r2284912 = /* ERROR: no complex support in C */;
return r2284912;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019104 +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))))