\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 r29203 = 1.0;
double r29204 = -r29203;
double r29205 = 2.0;
double r29206 = r29204 / r29205;
double r29207 = 3.0;
double r29208 = sqrt(r29207);
double r29209 = r29208 / r29205;
double r29210 = /* ERROR: no complex support in C */;
double r29211 = r29210 * r29210;
double r29212 = r29211 * r29210;
double r29213 = r29212 * r29210;
double r29214 = -r29205;
double r29215 = 0.0;
double r29216 = /* ERROR: no complex support in C */;
double r29217 = r29216 * r29210;
double r29218 = r29217 * r29210;
double r29219 = r29218 * r29210;
double r29220 = r29213 + r29219;
double r29221 = 5.0;
double r29222 = /* ERROR: no complex support in C */;
double r29223 = r29222 * r29210;
double r29224 = r29223 * r29210;
double r29225 = r29220 + r29224;
double r29226 = 4.0;
double r29227 = /* ERROR: no complex support in C */;
double r29228 = r29227 * r29210;
double r29229 = r29225 + r29228;
double r29230 = 7.0;
double r29231 = /* ERROR: no complex support in C */;
double r29232 = r29229 + r29231;
double r29233 = /* ERROR: no complex support in C */;
return r29233;
}
double f() {
double r29234 = 1.0;
double r29235 = -r29234;
double r29236 = 2.0;
double r29237 = r29235 / r29236;
double r29238 = 3.0;
double r29239 = sqrt(r29238);
double r29240 = r29239 / r29236;
double r29241 = /* ERROR: no complex support in C */;
double r29242 = r29241 * r29241;
double r29243 = r29242 * r29241;
double r29244 = r29243 * r29241;
double r29245 = -r29236;
double r29246 = 0.0;
double r29247 = /* ERROR: no complex support in C */;
double r29248 = r29247 * r29241;
double r29249 = r29248 * r29241;
double r29250 = r29249 * r29241;
double r29251 = r29244 + r29250;
double r29252 = 5.0;
double r29253 = /* ERROR: no complex support in C */;
double r29254 = r29253 * r29241;
double r29255 = r29254 * r29241;
double r29256 = r29251 + r29255;
double r29257 = 4.0;
double r29258 = /* ERROR: no complex support in C */;
double r29259 = r29258 * r29241;
double r29260 = r29256 + r29259;
double r29261 = 7.0;
double r29262 = /* ERROR: no complex support in C */;
double r29263 = r29260 + r29262;
double r29264 = /* ERROR: no complex support in C */;
return r29264;
}
Initial program 61.9
Final simplification61.9
herbie shell --seed 2020046 +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))))