\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 r39178 = 1.0;
double r39179 = -r39178;
double r39180 = 2.0;
double r39181 = r39179 / r39180;
double r39182 = 3.0;
double r39183 = sqrt(r39182);
double r39184 = r39183 / r39180;
double r39185 = /* ERROR: no complex support in C */;
double r39186 = r39185 * r39185;
double r39187 = r39186 * r39185;
double r39188 = r39187 * r39185;
double r39189 = -r39180;
double r39190 = 0.0;
double r39191 = /* ERROR: no complex support in C */;
double r39192 = r39191 * r39185;
double r39193 = r39192 * r39185;
double r39194 = r39193 * r39185;
double r39195 = r39188 + r39194;
double r39196 = 5.0;
double r39197 = /* ERROR: no complex support in C */;
double r39198 = r39197 * r39185;
double r39199 = r39198 * r39185;
double r39200 = r39195 + r39199;
double r39201 = 4.0;
double r39202 = /* ERROR: no complex support in C */;
double r39203 = r39202 * r39185;
double r39204 = r39200 + r39203;
double r39205 = 7.0;
double r39206 = /* ERROR: no complex support in C */;
double r39207 = r39204 + r39206;
double r39208 = /* ERROR: no complex support in C */;
return r39208;
}
double f() {
double r39209 = 1.0;
double r39210 = -r39209;
double r39211 = 2.0;
double r39212 = r39210 / r39211;
double r39213 = 3.0;
double r39214 = sqrt(r39213);
double r39215 = r39214 / r39211;
double r39216 = /* ERROR: no complex support in C */;
double r39217 = r39216 * r39216;
double r39218 = r39217 * r39216;
double r39219 = r39218 * r39216;
double r39220 = -r39211;
double r39221 = 0.0;
double r39222 = /* ERROR: no complex support in C */;
double r39223 = r39222 * r39216;
double r39224 = r39223 * r39216;
double r39225 = r39224 * r39216;
double r39226 = r39219 + r39225;
double r39227 = 5.0;
double r39228 = /* ERROR: no complex support in C */;
double r39229 = r39228 * r39216;
double r39230 = r39229 * r39216;
double r39231 = r39226 + r39230;
double r39232 = 4.0;
double r39233 = /* ERROR: no complex support in C */;
double r39234 = r39233 * r39216;
double r39235 = r39231 + r39234;
double r39236 = 7.0;
double r39237 = /* ERROR: no complex support in C */;
double r39238 = r39235 + r39237;
double r39239 = /* ERROR: no complex support in C */;
return r39239;
}
Initial program 0
Final simplification0
herbie shell --seed 2020033
(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))))