\Re(\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))
\Re(\left(-1 + 0 i\right))
double f() {
double r630854 = -1.0;
double r630855 = 1.0;
double r630856 = /* ERROR: no complex support in C */;
double r630857 = r630856 * r630856;
double r630858 = r630857 * r630856;
double r630859 = r630858 * r630856;
double r630860 = r630859 * r630856;
double r630861 = r630860 * r630856;
double r630862 = 6.0;
double r630863 = 0.0;
double r630864 = /* ERROR: no complex support in C */;
double r630865 = r630864 * r630856;
double r630866 = r630865 * r630856;
double r630867 = r630866 * r630856;
double r630868 = r630867 * r630856;
double r630869 = r630868 * r630856;
double r630870 = r630861 + r630869;
double r630871 = 15.0;
double r630872 = /* ERROR: no complex support in C */;
double r630873 = r630872 * r630856;
double r630874 = r630873 * r630856;
double r630875 = r630874 * r630856;
double r630876 = r630875 * r630856;
double r630877 = r630870 + r630876;
double r630878 = 20.0;
double r630879 = /* ERROR: no complex support in C */;
double r630880 = r630879 * r630856;
double r630881 = r630880 * r630856;
double r630882 = r630881 * r630856;
double r630883 = r630877 + r630882;
double r630884 = r630883 + r630874;
double r630885 = r630884 + r630865;
double r630886 = /* ERROR: no complex support in C */;
double r630887 = r630885 + r630886;
double r630888 = /* ERROR: no complex support in C */;
return r630888;
}
double f() {
double r630889 = -1.0;
double r630890 = 0.0;
double r630891 = /* ERROR: no complex support in C */;
double r630892 = /* ERROR: no complex support in C */;
return r630892;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019149 +o rules:numerics
(FPCore ()
:name "3.9.1 real part (p56)"
(re (+.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))))