\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 r25236 = 1.0;
double r25237 = -r25236;
double r25238 = 2.0;
double r25239 = r25237 / r25238;
double r25240 = 3.0;
double r25241 = sqrt(r25240);
double r25242 = r25241 / r25238;
double r25243 = /* ERROR: no complex support in C */;
double r25244 = r25243 * r25243;
double r25245 = r25244 * r25243;
double r25246 = r25245 * r25243;
double r25247 = -r25238;
double r25248 = 0.0;
double r25249 = /* ERROR: no complex support in C */;
double r25250 = r25249 * r25243;
double r25251 = r25250 * r25243;
double r25252 = r25251 * r25243;
double r25253 = r25246 + r25252;
double r25254 = 5.0;
double r25255 = /* ERROR: no complex support in C */;
double r25256 = r25255 * r25243;
double r25257 = r25256 * r25243;
double r25258 = r25253 + r25257;
double r25259 = 4.0;
double r25260 = /* ERROR: no complex support in C */;
double r25261 = r25260 * r25243;
double r25262 = r25258 + r25261;
double r25263 = 7.0;
double r25264 = /* ERROR: no complex support in C */;
double r25265 = r25262 + r25264;
double r25266 = /* ERROR: no complex support in C */;
return r25266;
}
double f() {
double r25267 = 1.0;
double r25268 = -r25267;
double r25269 = 2.0;
double r25270 = r25268 / r25269;
double r25271 = 3.0;
double r25272 = sqrt(r25271);
double r25273 = r25272 / r25269;
double r25274 = /* ERROR: no complex support in C */;
double r25275 = r25274 * r25274;
double r25276 = r25275 * r25274;
double r25277 = r25276 * r25274;
double r25278 = -r25269;
double r25279 = 0.0;
double r25280 = /* ERROR: no complex support in C */;
double r25281 = r25280 * r25274;
double r25282 = r25281 * r25274;
double r25283 = r25282 * r25274;
double r25284 = r25277 + r25283;
double r25285 = 5.0;
double r25286 = /* ERROR: no complex support in C */;
double r25287 = r25286 * r25274;
double r25288 = r25287 * r25274;
double r25289 = r25284 + r25288;
double r25290 = 4.0;
double r25291 = /* ERROR: no complex support in C */;
double r25292 = r25291 * r25274;
double r25293 = r25289 + r25292;
double r25294 = 7.0;
double r25295 = /* ERROR: no complex support in C */;
double r25296 = r25293 + r25295;
double r25297 = /* ERROR: no complex support in C */;
return r25297;
}
Initial program 61.9
Final simplification61.9
herbie shell --seed 2020060 +o rules:numerics
(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))))