\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 r16204 = 1.0;
double r16205 = -r16204;
double r16206 = 2.0;
double r16207 = r16205 / r16206;
double r16208 = 3.0;
double r16209 = sqrt(r16208);
double r16210 = r16209 / r16206;
double r16211 = /* ERROR: no complex support in C */;
double r16212 = r16211 * r16211;
double r16213 = r16212 * r16211;
double r16214 = r16213 * r16211;
double r16215 = -r16206;
double r16216 = 0.0;
double r16217 = /* ERROR: no complex support in C */;
double r16218 = r16217 * r16211;
double r16219 = r16218 * r16211;
double r16220 = r16219 * r16211;
double r16221 = r16214 + r16220;
double r16222 = 5.0;
double r16223 = /* ERROR: no complex support in C */;
double r16224 = r16223 * r16211;
double r16225 = r16224 * r16211;
double r16226 = r16221 + r16225;
double r16227 = 4.0;
double r16228 = /* ERROR: no complex support in C */;
double r16229 = r16228 * r16211;
double r16230 = r16226 + r16229;
double r16231 = 7.0;
double r16232 = /* ERROR: no complex support in C */;
double r16233 = r16230 + r16232;
double r16234 = /* ERROR: no complex support in C */;
return r16234;
}
double f() {
double r16235 = 1.0;
double r16236 = -r16235;
double r16237 = 2.0;
double r16238 = r16236 / r16237;
double r16239 = 3.0;
double r16240 = sqrt(r16239);
double r16241 = r16240 / r16237;
double r16242 = /* ERROR: no complex support in C */;
double r16243 = r16242 * r16242;
double r16244 = r16243 * r16242;
double r16245 = r16244 * r16242;
double r16246 = -r16237;
double r16247 = 0.0;
double r16248 = /* ERROR: no complex support in C */;
double r16249 = r16248 * r16242;
double r16250 = r16249 * r16242;
double r16251 = r16250 * r16242;
double r16252 = r16245 + r16251;
double r16253 = 5.0;
double r16254 = /* ERROR: no complex support in C */;
double r16255 = r16254 * r16242;
double r16256 = r16255 * r16242;
double r16257 = r16252 + r16256;
double r16258 = 4.0;
double r16259 = /* ERROR: no complex support in C */;
double r16260 = r16259 * r16242;
double r16261 = r16257 + r16260;
double r16262 = 7.0;
double r16263 = /* ERROR: no complex support in C */;
double r16264 = r16261 + r16263;
double r16265 = /* ERROR: no complex support in C */;
return r16265;
}
Initial program 0
Final simplification0
herbie shell --seed 2020047
(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))))