\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.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.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.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0.0 i\right)\right))\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.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.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.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0.0 i\right)\right))double f() {
double r36975 = 1.0;
double r36976 = -r36975;
double r36977 = 2.0;
double r36978 = r36976 / r36977;
double r36979 = 3.0;
double r36980 = sqrt(r36979);
double r36981 = r36980 / r36977;
double r36982 = /* ERROR: no complex support in C */;
double r36983 = r36982 * r36982;
double r36984 = r36983 * r36982;
double r36985 = r36984 * r36982;
double r36986 = -r36977;
double r36987 = 0.0;
double r36988 = /* ERROR: no complex support in C */;
double r36989 = r36988 * r36982;
double r36990 = r36989 * r36982;
double r36991 = r36990 * r36982;
double r36992 = r36985 + r36991;
double r36993 = 5.0;
double r36994 = /* ERROR: no complex support in C */;
double r36995 = r36994 * r36982;
double r36996 = r36995 * r36982;
double r36997 = r36992 + r36996;
double r36998 = 4.0;
double r36999 = /* ERROR: no complex support in C */;
double r37000 = r36999 * r36982;
double r37001 = r36997 + r37000;
double r37002 = 7.0;
double r37003 = /* ERROR: no complex support in C */;
double r37004 = r37001 + r37003;
double r37005 = /* ERROR: no complex support in C */;
return r37005;
}
double f() {
double r37006 = 1.0;
double r37007 = -r37006;
double r37008 = 2.0;
double r37009 = r37007 / r37008;
double r37010 = 3.0;
double r37011 = sqrt(r37010);
double r37012 = r37011 / r37008;
double r37013 = /* ERROR: no complex support in C */;
double r37014 = r37013 * r37013;
double r37015 = r37014 * r37013;
double r37016 = r37015 * r37013;
double r37017 = -r37008;
double r37018 = 0.0;
double r37019 = /* ERROR: no complex support in C */;
double r37020 = r37019 * r37013;
double r37021 = r37020 * r37013;
double r37022 = r37021 * r37013;
double r37023 = r37016 + r37022;
double r37024 = 5.0;
double r37025 = /* ERROR: no complex support in C */;
double r37026 = r37025 * r37013;
double r37027 = r37026 * r37013;
double r37028 = r37023 + r37027;
double r37029 = 4.0;
double r37030 = /* ERROR: no complex support in C */;
double r37031 = r37030 * r37013;
double r37032 = r37028 + r37031;
double r37033 = 7.0;
double r37034 = /* ERROR: no complex support in C */;
double r37035 = r37032 + r37034;
double r37036 = /* ERROR: no complex support in C */;
return r37036;
}
Initial program 61.9
Final simplification61.9
herbie shell --seed 2020035
(FPCore ()
:name "3.9.2 real part (p56)"
:precision binary64
(re (+ (+ (+ (+ (* (* (* (complex (/ (- 1) 2) (/ (sqrt 3) 2)) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (* (* (* (complex (- 2) 0.0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (* (* (complex 5 0.0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (* (complex 4 0.0) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (complex 7 0.0))))