\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 r353824 = -1.0;
double r353825 = 1.0;
double r353826 = /* ERROR: no complex support in C */;
double r353827 = r353826 * r353826;
double r353828 = r353827 * r353826;
double r353829 = r353828 * r353826;
double r353830 = r353829 * r353826;
double r353831 = r353830 * r353826;
double r353832 = 6.0;
double r353833 = 0.0;
double r353834 = /* ERROR: no complex support in C */;
double r353835 = r353834 * r353826;
double r353836 = r353835 * r353826;
double r353837 = r353836 * r353826;
double r353838 = r353837 * r353826;
double r353839 = r353838 * r353826;
double r353840 = r353831 + r353839;
double r353841 = 15.0;
double r353842 = /* ERROR: no complex support in C */;
double r353843 = r353842 * r353826;
double r353844 = r353843 * r353826;
double r353845 = r353844 * r353826;
double r353846 = r353845 * r353826;
double r353847 = r353840 + r353846;
double r353848 = 20.0;
double r353849 = /* ERROR: no complex support in C */;
double r353850 = r353849 * r353826;
double r353851 = r353850 * r353826;
double r353852 = r353851 * r353826;
double r353853 = r353847 + r353852;
double r353854 = r353853 + r353844;
double r353855 = r353854 + r353835;
double r353856 = /* ERROR: no complex support in C */;
double r353857 = r353855 + r353856;
double r353858 = /* ERROR: no complex support in C */;
return r353858;
}
double f() {
double r353859 = -1.0;
double r353860 = 0.0;
double r353861 = /* ERROR: no complex support in C */;
double r353862 = /* ERROR: no complex support in C */;
return r353862;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019146 +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))))