\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 r4204 = 1.0;
double r4205 = -r4204;
double r4206 = 2.0;
double r4207 = r4205 / r4206;
double r4208 = 3.0;
double r4209 = sqrt(r4208);
double r4210 = r4209 / r4206;
double r4211 = /* ERROR: no complex support in C */;
double r4212 = r4211 * r4211;
double r4213 = r4212 * r4211;
double r4214 = r4213 * r4211;
double r4215 = -r4206;
double r4216 = 0.0;
double r4217 = /* ERROR: no complex support in C */;
double r4218 = r4217 * r4211;
double r4219 = r4218 * r4211;
double r4220 = r4219 * r4211;
double r4221 = r4214 + r4220;
double r4222 = 5.0;
double r4223 = /* ERROR: no complex support in C */;
double r4224 = r4223 * r4211;
double r4225 = r4224 * r4211;
double r4226 = r4221 + r4225;
double r4227 = 4.0;
double r4228 = /* ERROR: no complex support in C */;
double r4229 = r4228 * r4211;
double r4230 = r4226 + r4229;
double r4231 = 7.0;
double r4232 = /* ERROR: no complex support in C */;
double r4233 = r4230 + r4232;
double r4234 = /* ERROR: no complex support in C */;
return r4234;
}
double f() {
double r4235 = 1.0;
double r4236 = -r4235;
double r4237 = 2.0;
double r4238 = r4236 / r4237;
double r4239 = 3.0;
double r4240 = sqrt(r4239);
double r4241 = r4240 / r4237;
double r4242 = /* ERROR: no complex support in C */;
double r4243 = r4242 * r4242;
double r4244 = r4243 * r4242;
double r4245 = r4244 * r4242;
double r4246 = -r4237;
double r4247 = 0.0;
double r4248 = /* ERROR: no complex support in C */;
double r4249 = r4248 * r4242;
double r4250 = r4249 * r4242;
double r4251 = r4250 * r4242;
double r4252 = r4245 + r4251;
double r4253 = 5.0;
double r4254 = /* ERROR: no complex support in C */;
double r4255 = r4254 * r4242;
double r4256 = r4255 * r4242;
double r4257 = r4252 + r4256;
double r4258 = 4.0;
double r4259 = /* ERROR: no complex support in C */;
double r4260 = r4259 * r4242;
double r4261 = r4257 + r4260;
double r4262 = 7.0;
double r4263 = /* ERROR: no complex support in C */;
double r4264 = r4261 + r4263;
double r4265 = /* ERROR: no complex support in C */;
return r4265;
}
Initial program 0
Final simplification0
herbie shell --seed 2020045
(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))))