\Re(\left(\left(\left(\left(\left(\left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) + \left(\left(\left(\left(\left(-2\right) + 0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(\left(5 + 0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(4 + 0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0 i\right)\right))\Re(\left(\left(\frac{11}{2} + \left(\frac{\sqrt{3}}{-2} + \frac{\sqrt{3}}{-1}\right) i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{-2} i\right) + \left(5 + \sqrt{3} \cdot 2 i\right)\right))double f() {
double r340023 = 1.0;
double r340024 = -r340023;
double r340025 = 2.0;
double r340026 = r340024 / r340025;
double r340027 = 3.0;
double r340028 = sqrt(r340027);
double r340029 = r340028 / r340025;
double r340030 = /* ERROR: no complex support in C */;
double r340031 = r340030 * r340030;
double r340032 = r340031 * r340030;
double r340033 = r340032 * r340030;
double r340034 = -r340025;
double r340035 = 0.0;
double r340036 = /* ERROR: no complex support in C */;
double r340037 = r340036 * r340030;
double r340038 = r340037 * r340030;
double r340039 = r340038 * r340030;
double r340040 = r340033 + r340039;
double r340041 = 5.0;
double r340042 = /* ERROR: no complex support in C */;
double r340043 = r340042 * r340030;
double r340044 = r340043 * r340030;
double r340045 = r340040 + r340044;
double r340046 = 4.0;
double r340047 = /* ERROR: no complex support in C */;
double r340048 = r340047 * r340030;
double r340049 = r340045 + r340048;
double r340050 = 7.0;
double r340051 = /* ERROR: no complex support in C */;
double r340052 = r340049 + r340051;
double r340053 = /* ERROR: no complex support in C */;
return r340053;
}
double f() {
double r340054 = 5.5;
double r340055 = 3.0;
double r340056 = sqrt(r340055);
double r340057 = -2.0;
double r340058 = r340056 / r340057;
double r340059 = -1.0;
double r340060 = r340056 / r340059;
double r340061 = r340058 + r340060;
double r340062 = /* ERROR: no complex support in C */;
double r340063 = -0.5;
double r340064 = /* ERROR: no complex support in C */;
double r340065 = r340062 * r340064;
double r340066 = 5.0;
double r340067 = 2.0;
double r340068 = r340056 * r340067;
double r340069 = /* ERROR: no complex support in C */;
double r340070 = r340065 + r340069;
double r340071 = /* ERROR: no complex support in C */;
return r340071;
}
Initial program 61.9
Simplified0
Final simplification0
herbie shell --seed 2019138 +o rules:numerics
(FPCore ()
:name "3.9.2 real part (p56)"
(re (+.c (+.c (+.c (+.c (*.c (*.c (*.c (complex (/ (- 1) 2) (/ (sqrt 3) 2)) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (*.c (*.c (*.c (complex (- 2) 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (*.c (complex 5 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (complex 4 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (complex 7 0))))