\Im(\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))\Im(\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 r39234 = 1.0;
double r39235 = -r39234;
double r39236 = 2.0;
double r39237 = r39235 / r39236;
double r39238 = 3.0;
double r39239 = sqrt(r39238);
double r39240 = r39239 / r39236;
double r39241 = /* ERROR: no complex support in C */;
double r39242 = r39241 * r39241;
double r39243 = r39242 * r39241;
double r39244 = r39243 * r39241;
double r39245 = -r39236;
double r39246 = 0.0;
double r39247 = /* ERROR: no complex support in C */;
double r39248 = r39247 * r39241;
double r39249 = r39248 * r39241;
double r39250 = r39249 * r39241;
double r39251 = r39244 + r39250;
double r39252 = 5.0;
double r39253 = /* ERROR: no complex support in C */;
double r39254 = r39253 * r39241;
double r39255 = r39254 * r39241;
double r39256 = r39251 + r39255;
double r39257 = 4.0;
double r39258 = /* ERROR: no complex support in C */;
double r39259 = r39258 * r39241;
double r39260 = r39256 + r39259;
double r39261 = 7.0;
double r39262 = /* ERROR: no complex support in C */;
double r39263 = r39260 + r39262;
double r39264 = /* ERROR: no complex support in C */;
return r39264;
}
double f() {
double r39265 = 1.0;
double r39266 = -r39265;
double r39267 = 2.0;
double r39268 = r39266 / r39267;
double r39269 = 3.0;
double r39270 = sqrt(r39269);
double r39271 = r39270 / r39267;
double r39272 = /* ERROR: no complex support in C */;
double r39273 = r39272 * r39272;
double r39274 = r39273 * r39272;
double r39275 = r39274 * r39272;
double r39276 = -r39267;
double r39277 = 0.0;
double r39278 = /* ERROR: no complex support in C */;
double r39279 = r39278 * r39272;
double r39280 = r39279 * r39272;
double r39281 = r39280 * r39272;
double r39282 = r39275 + r39281;
double r39283 = 5.0;
double r39284 = /* ERROR: no complex support in C */;
double r39285 = r39284 * r39272;
double r39286 = r39285 * r39272;
double r39287 = r39282 + r39286;
double r39288 = 4.0;
double r39289 = /* ERROR: no complex support in C */;
double r39290 = r39289 * r39272;
double r39291 = r39287 + r39290;
double r39292 = 7.0;
double r39293 = /* ERROR: no complex support in C */;
double r39294 = r39291 + r39293;
double r39295 = /* ERROR: no complex support in C */;
return r39295;
}
Initial program 0
Final simplification0
herbie shell --seed 2020036
(FPCore ()
:name "3.9.2 imaginary part (p56)"
:precision binary64
(im (+ (+ (+ (+ (* (* (* (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))))